Fixed property trees in detail dialogs not showing any props
This commit is contained in:
@@ -0,0 +1,78 @@
|
||||
<template lang="html">
|
||||
<tree-node-list
|
||||
v-if="model"
|
||||
:children="children"
|
||||
:group="group"
|
||||
:organize="organize"
|
||||
:start-expanded="expanded"
|
||||
:root="model.root"
|
||||
@selected="e => $emit('selected', e)"
|
||||
@move-within-root="moveWithinRoot"
|
||||
@move-between-roots="moveBetweenRoots"
|
||||
/>
|
||||
</template>
|
||||
|
||||
<script lang="js">
|
||||
import { docsToForest, getFilter } from '/imports/api/parenting/parentingFunctions';
|
||||
import TreeNodeList from '/imports/client/ui/components/tree/TreeNodeList.vue';
|
||||
import { moveBetweenRoots, moveWithinRoot } from '/imports/api/parenting/organizeMethods';
|
||||
import { getCollectionByName } from '/imports/api/parenting/parentingFunctions';
|
||||
|
||||
export default {
|
||||
components: {
|
||||
TreeNodeList,
|
||||
},
|
||||
props: {
|
||||
// The document for which we are finding children
|
||||
model: {
|
||||
type: Object,
|
||||
default: undefined,
|
||||
},
|
||||
organize: Boolean,
|
||||
group: {
|
||||
type: String,
|
||||
default: 'creatureProperties'
|
||||
},
|
||||
collection: {
|
||||
type: String,
|
||||
default: 'creatureProperties'
|
||||
},
|
||||
expanded: Boolean,
|
||||
},
|
||||
meteor: {
|
||||
children() {
|
||||
const collection = getCollectionByName(this.collection);
|
||||
const docs = collection.find({
|
||||
removed: { $ne: true },
|
||||
...getFilter.descendants(this.model),
|
||||
}, {
|
||||
sort: { left: 1 }
|
||||
}).fetch();
|
||||
this.$emit('length', docs.length);
|
||||
|
||||
return docsToForest(docs);
|
||||
},
|
||||
},
|
||||
methods: {
|
||||
moveWithinRoot({ doc, newPosition }) {
|
||||
moveWithinRoot.callAsync({
|
||||
docRef: {
|
||||
id: doc._id,
|
||||
collection: this.collection,
|
||||
},
|
||||
newPosition,
|
||||
});
|
||||
},
|
||||
moveBetweenRoots({ doc, newPosition, newRootRef }) {
|
||||
moveBetweenRoots.callAsync({
|
||||
docRef: {
|
||||
id: doc._id,
|
||||
collection: this.collection,
|
||||
},
|
||||
newPosition,
|
||||
newRootRef,
|
||||
});
|
||||
},
|
||||
},
|
||||
};
|
||||
</script>
|
||||
@@ -167,10 +167,11 @@
|
||||
style="width: 100%"
|
||||
class="pa-2 no-hover"
|
||||
>
|
||||
<creature-properties-tree
|
||||
<descendant-properties-tree
|
||||
style="width: 100%;"
|
||||
organize
|
||||
:root="{collection, id: model._id}"
|
||||
:model="model"
|
||||
:root="model.root"
|
||||
:collection="collection"
|
||||
@selected="e => $emit('select-sub-property', e)"
|
||||
/>
|
||||
@@ -225,7 +226,7 @@ import InlineComputationField from '/imports/client/ui/properties/forms/shared/I
|
||||
import FormSection, { FormSections } from '/imports/client/ui/properties/forms/shared/FormSection.vue';
|
||||
import propertyFormIndex from '/imports/client/ui/properties/forms/shared/propertyFormIndex';
|
||||
import IconColorMenu from '/imports/client/ui/properties/forms/shared/IconColorMenu.vue';
|
||||
import CreaturePropertiesTree from '/imports/client/ui/creature/creatureProperties/CreaturePropertiesTree.vue';
|
||||
import DescendantPropertiesTree from '/imports/client/ui/creature/creatureProperties/DescendantPropertiesTree.vue';
|
||||
import OutlinedInput from '/imports/client/ui/properties/viewers/shared/OutlinedInput.vue';
|
||||
import { getSuggestedChildren } from '/imports/constants/PROPERTIES';
|
||||
import PROPERTIES from '/imports/constants/PROPERTIES';
|
||||
@@ -243,7 +244,7 @@ export default {
|
||||
FormSection,
|
||||
FormSections,
|
||||
IconColorMenu,
|
||||
CreaturePropertiesTree,
|
||||
DescendantPropertiesTree,
|
||||
OutlinedInput,
|
||||
...propertyFormIndex,
|
||||
},
|
||||
|
||||
@@ -134,9 +134,9 @@
|
||||
name="Child properties"
|
||||
:cols="{cols: 12}"
|
||||
>
|
||||
<creature-properties-tree
|
||||
<descendant-properties-tree
|
||||
style="width: 100%;"
|
||||
:root="{collection, id: model._id}"
|
||||
:model="model"
|
||||
:collection="collection"
|
||||
@length="childrenLength = $event"
|
||||
@selected="selectSubProperty"
|
||||
@@ -155,14 +155,14 @@ import CreaturePropertiesTree from '/imports/client/ui/creature/creatureProperti
|
||||
import PropertyField from '/imports/client/ui/properties/viewers/shared/PropertyField.vue';
|
||||
import { getPropertyName } from '/imports/constants/PROPERTIES';
|
||||
import CreatureProperties from '/imports/api/creature/creatureProperties/CreatureProperties';
|
||||
import TreeNodeView from '/imports/client/ui/properties/treeNodeViews/TreeNodeView.vue';
|
||||
import DescendantPropertiesTree from '/imports/client/ui/creature/creatureProperties/DescendantPropertiesTree.vue';
|
||||
|
||||
export default {
|
||||
components: {
|
||||
...propertyViewerIndex,
|
||||
CreaturePropertiesTree,
|
||||
PropertyField,
|
||||
TreeNodeView,
|
||||
DescendantPropertiesTree,
|
||||
},
|
||||
props: {
|
||||
model: {
|
||||
|
||||
Reference in New Issue
Block a user