"use strict";

function _jade_template_fn(locals) {
  locals = locals || {};;;
  var result_of_with = function ($attrs, $helpers, JSON, String, inputText) {
    var h = require('panel').h;
    var __vjadeSafeCode = function __vjadeSafeCode(code) {
      return code || String(code);
    };
    return {
      value: h("div", {
        "class": {
          'mp-tag-selector-container': true
        }
      }, function () {
        var __jade_nodes = [];
        __jade_nodes = __jade_nodes.concat(h("mp-tag-input", {
          "attrs": {
            'display-tags': $attrs["display-tags"],
            error: $attrs["error"],
            'min-tags': $attrs["min-tags"],
            saving: $attrs["saving"],
            'search-text': $helpers.searchText(),
            tags: JSON.stringify($helpers.getSelectedTagAttrs())
          },
          "style": {
            'max-height': $attrs["max-tag-input-height"]
          },
          "on": {
            change: $helpers.handleInputChange,
            keydown: $helpers.handleKeyDown
          },
          "class": {
            'input-el': true
          }
        }));
        __jade_nodes = __jade_nodes.concat(h("div", {
          "class": {
            'mp-tag-selector-hr': true
          }
        }));
        __jade_nodes = __jade_nodes.concat(h("mp-items-menu", {
          "attrs": {
            'empty-message': $helpers.emptyText(),
            progressive: true,
            'search-filter': inputText,
            sections: JSON.stringify($helpers.getMenuSections())
          },
          "style": {
            'max-height': $attrs["max-tag-items-height"]
          },
          "props": {
            keydownProxyEl: $helpers.getKeydownProxyEl()
          },
          "on": {
            clickItem: function clickItem(ev) {
              return $helpers.addTag(ev.detail);
            }
          }
        }));
        __jade_nodes = __jade_nodes.concat(!$attrs['read-only'] ? function () {
          var __jade_nodes = [];
          __jade_nodes = __jade_nodes.concat($helpers.showCreateButton() ? function () {
            var __jade_nodes = [];
            __jade_nodes = __jade_nodes.concat(h("mp-button-bar", {
              "attrs": {
                color: "grey"
              },
              "on": {
                click: function click() {
                  return $helpers.addNewTag(inputText);
                }
              },
              "class": {
                'create-btn': true
              }
            }, function () {
              var __jade_nodes = [];
              __jade_nodes = __jade_nodes.concat(h("div", {
                "class": {
                  'mp-tag-selector-create-tag-btn': true
                }
              }, function () {
                var __jade_nodes = [];
                __jade_nodes = __jade_nodes.concat(h("div", {
                  "class": {
                    'mp-tag-selector-copy': true
                  }
                }, [__vjadeSafeCode($helpers.createNewText())]));
                __jade_nodes = __jade_nodes.concat(h("div", {
                  "class": {
                    'mp-tag-selector-label-name': true
                  }
                }, [__vjadeSafeCode(inputText)]));;
                return __jade_nodes;
              }.call(this).filter(Boolean)));;
              return __jade_nodes;
            }.call(this).filter(Boolean)));;
            return __jade_nodes;
          }.call(this) : function () {
            var __jade_nodes = [];
            __jade_nodes = __jade_nodes.concat(h("mp-button-bar", {
              "attrs": {
                color: "blue",
                disabled: $attrs["saving"],
                title: "Save Tags (Alt+Enter)"
              },
              "on": {
                click: $helpers.saveTags
              },
              "class": {
                'save-btn': true
              }
            }, function () {
              var __jade_nodes = [];
              __jade_nodes = __jade_nodes.concat($attrs["saving"] ? function () {
                var __jade_nodes = [];
                __jade_nodes = __jade_nodes.concat(h("mp-spinner", {
                  "attrs": {
                    color: "white"
                  }
                }));;
                return __jade_nodes;
              }.call(this) : function () {
                var __jade_nodes = [];
                __jade_nodes = __jade_nodes.concat("Save");;
                return __jade_nodes;
              }.call(this));;
              return __jade_nodes;
            }.call(this).filter(Boolean)));;
            return __jade_nodes;
          }.call(this));;
          return __jade_nodes;
        }.call(this) : undefined);;
        return __jade_nodes;
      }.call(this).filter(Boolean))
    };
  }.call(this, "$attrs" in locals ? locals.$attrs : typeof $attrs !== "undefined" ? $attrs : undefined, "$helpers" in locals ? locals.$helpers : typeof $helpers !== "undefined" ? $helpers : undefined, "JSON" in locals ? locals.JSON : typeof JSON !== "undefined" ? JSON : undefined, "String" in locals ? locals.String : typeof String !== "undefined" ? String : undefined, "inputText" in locals ? locals.inputText : typeof inputText !== "undefined" ? inputText : undefined);
  if (result_of_with) return result_of_with.value;
}
module.exports = _jade_template_fn;