diff --git a/src/components/formItems/MultipleTagsSelect.vue b/src/components/formItems/MultipleTagsSelect.vue
index 0f70281..e435264 100644
--- a/src/components/formItems/MultipleTagsSelect.vue
+++ b/src/components/formItems/MultipleTagsSelect.vue
@@ -10,15 +10,15 @@
variant="outline-secondary" class="d-block rounded-0"
>
- {{ tag.text }}
+ {{ tag }}
- -
+
-
@@ -94,12 +94,13 @@ export default {
computed: {
...mapGetters([
+ 'nodesDepartsOptions',
+ 'tagsOptions',
+ 'nodebook',
'mode',
'nodeDepartId',
'search',
- 'nodebook',
- 'nodesDepartsOptions',
- 'tagsOptions'
+ 'tags'
]),
show () {
@@ -125,6 +126,13 @@ export default {
set (value) {
this.$store.commit('SET_SEARCH', value)
}
+ },
+
+ activeTags: {
+ get () { return this.tags },
+ set (value) {
+ this.$store.commit('UPDATE_TAGS', value)
+ }
}
}
}
diff --git a/src/store/modules/library.js b/src/store/modules/library.js
index 9516a5b..211315e 100644
--- a/src/store/modules/library.js
+++ b/src/store/modules/library.js
@@ -24,7 +24,8 @@ export default {
// LibraryOptions state
mode: undefined,
nodeDepartId: undefined,
- search: ''
+ search: '',
+ tags: []
},
mutations: {
@@ -62,7 +63,11 @@ export default {
// ╰─╯╵ ╵ ╶┴╴╰─╯╵╰╯╶─╯
'SET_TAGS_OPTIONS' (state, tags) {
- state.tagsOptions = tags.map(tag => ({ value: tag.id, text: tag.name }))
+ state.tagsOptions = Array.from(new Set(tags.map(tag => tag.name)))
+ },
+
+ 'UPDATE_TAGS' (state, tags) {
+ state.tags = tags
},
'SET_MODE' (state, mode) {
@@ -145,10 +150,10 @@ export default {
// ╰─╯╵ ╵ ╶┴╴╰─╯╵╰╯╶─╯
'GET_ALL_TAGS' ({ state, commit }) {
- if (state.tags !== undefined) return state.tags
+ if (state.tagsOptions.length) return state.tagsOptions
return api.query(AllTags).then(data => {
commit('SET_TAGS_OPTIONS', data.tags)
- return state.tags
+ return state.tagsOptions
})
},
@@ -177,6 +182,7 @@ export default {
mode: state => state.mode,
nodeDepartId: state => state.nodeDepartId,
search: state => state.search,
+ tags: state => state.tags,
// LibraryOptions options
tagsOptions: state => state.tagsOptions,