diff options
| author | Hunternif | 2019-04-10 23:16:27 +0700 |
|---|---|---|
| committer | Hunternif | 2019-04-11 02:30:55 +0700 |
| commit | 34a310311b190baa6a54e599cf5a5d51226e3950 (patch) | |
| tree | 4fd42b5a42253cf330c5008063783dfc87f8a30b /client/js/models | |
| parent | 8904d6c9d83af79c67f4dc8da56bba844298782f (diff) | |
client/tag_input: When adding new tags, infer category via syntax "category:tag"
Diffstat (limited to 'client/js/models')
| -rw-r--r-- | client/js/models/tag_list.js | 13 |
1 files changed, 8 insertions, 5 deletions
diff --git a/client/js/models/tag_list.js b/client/js/models/tag_list.js index d87b694..c55662a 100644 --- a/client/js/models/tag_list.js +++ b/client/js/models/tag_list.js @@ -35,17 +35,20 @@ class TagList extends AbstractList { } addByName(tagName, addImplications) { - if (this.isTaggedWith(tagName)) { - return Promise.resolve(); - } - const tag = new Tag(); tag.names = [tagName]; + return this.addByTag(tag, addImplications); + } + + addByTag(tag, addImplications) { + if (this.isTaggedWith(tag.names[0])) { + return Promise.resolve(); + } this.add(tag); if (addImplications !== false) { - return Tag.get(tagName).then(actualTag => { + return Tag.get(tag.names[0]).then(actualTag => { return Promise.all( actualTag.implications.map( relation => this.addByName(relation.names[0], true))); |