Browse Source

Add color palette and allow selection

John R. Supplee 4 years ago
parent
commit
6d9928ea8f
2 changed files with 16 additions and 0 deletions
  1. 3 0
      client/components/main/globalSearch.jade
  2. 13 0
      client/components/main/globalSearch.js

+ 3 - 0
client/components/main/globalSearch.jade

@@ -34,6 +34,9 @@ template(name="globalSearch")
         .global-search-instructions
           +viewer
             = searchInstructions
+          .palette-colors: each label in labelColors
+            span.card-label.palette-color.js-palette-color(class="card-label-{{label.color}}")
+              = label.name
 
 template(name="globalSearchViewChangePopup")
   if currentUser

+ 13 - 0
client/components/main/globalSearch.js

@@ -355,6 +355,14 @@ BlazeComponent.extendComponent({
     return text;
   },
 
+  labelColors() {
+    return Boards.simpleSchema()._schema['labels.$.color'].allowedValues.map(
+      color => {
+        return { color, name: TAPi18n.__(`color-${color}`) };
+      },
+    );
+  },
+
   events() {
     return [
       {
@@ -362,6 +370,11 @@ BlazeComponent.extendComponent({
           evt.preventDefault();
           this.searchAllBoards(evt.target.searchQuery.value);
         },
+        'click .js-palette-color'(evt) {
+          this.query.set(
+            `${this.query.get()} label:"${evt.currentTarget.textContent}"`,
+          );
+        },
       },
     ];
   },