Inventory items can now be equipped

This commit is contained in:
Thaum Rystra
2020-05-18 23:03:34 +02:00
parent fe11c9ec23
commit 4352ca5f0d
8 changed files with 127 additions and 48 deletions

View File

@@ -0,0 +1,20 @@
<template lang="html">
<div class="layout row align-center justify-start">
<property-icon
class="mr-2"
:type="model.type"
:class="selected && 'primary--text'"
/>
<div class="text-no-wrap text-truncate">
{{ title }}
</div>
</div>
</template>
<script>
import treeNodeViewMixin from '/imports/ui/properties/treeNodeViews/treeNodeViewMixin.js';
export default {
mixins: [treeNodeViewMixin],
}
</script>

View File

@@ -0,0 +1,27 @@
<template lang="html">
<div class="layout row align-center justify-start">
<v-icon
class="mr-2"
:class="selected && 'primary--text'"
>
{{ model.equipped ? 'check_box' : 'check_box_outline_blank' }}
</v-icon>
<div
class="text-no-wrap text-truncate"
:class="model.equipped && 'body-2'"
>
{{ title }}
</div>
</div>
</template>
<script>
import treeNodeViewMixin from '/imports/ui/properties/treeNodeViews/treeNodeViewMixin.js';
export default {
mixins: [treeNodeViewMixin],
}
</script>
<style lang="css" scoped>
</style>

View File

@@ -0,0 +1,6 @@
import DefaultTreeNode from '/imports/ui/properties/treeNodeViews/DefaultTreeNode.vue';
import ItemTreeNode from '/imports/ui/properties/treeNodeViews/ItemTreeNode.vue';
export default {
default: DefaultTreeNode,
item: ItemTreeNode,
}

View File

@@ -0,0 +1,24 @@
import PROPERTIES from '/imports/constants/PROPERTIES.js';
import PropertyIcon from '/imports/ui/properties/shared/PropertyIcon.vue';
export default {
components: {
PropertyIcon,
},
props: {
model: {
type: Object,
default: () => ({}),
},
selected: Boolean,
},
computed: {
title(){
let model = this.model;
if (!model) return;
if (model.name) return model.name;
let prop = PROPERTIES[model.type]
return prop && prop.name;
}
}
}