define(['@microsoft/load-themed-styles', 'vue', '@microsoft/sp-http', '@microsoft/sp-webpart-base', '@microsoft/sp-core-library'], function (loadThemedStyles, VueConstructor__default, spHttp, spWebpartBase, spCoreLibrary) {

    var VueConstructor__default__default = 'default' in VueConstructor__default ? VueConstructor__default['default'] : VueConstructor__default;

    var imageHandler = {
        imageHandler: function (extendedProperty, size, videoAllowed) {
            if (videoAllowed === void 0) { videoAllowed = true; }
            if (extendedProperty.pictureV3 && extendedProperty.pictureV3.original === extendedProperty.picture)
                return extendedProperty.pictureV3[size];
            if (extendedProperty.picture)
                return extendedProperty.picture;
            if (videoAllowed && extendedProperty.videoImage) {
                if (extendedProperty.videoImageV3 && extendedProperty.videoImageV3.original === extendedProperty.videoImage) {
                    // find bestMatch. Note for video images, we might not always have the exact size we request due to oembed pictures
                    // return extendedProperty.videoImageV3[size];
                    var bestSize = 1000000;
                    var sizes = Object.keys(extendedProperty.videoImageV3);
                    for (var i = 0; i < sizes.length; i++) {
                        if (sizes[i] * 1 >= size && sizes[i] * 1 < 1000000)
                            bestSize = sizes[i] * 1;
                    }
                    if (bestSize == 1000000)
                        bestSize = "original";
                    return extendedProperty.videoImageV3[bestSize];
                }
                else
                    return extendedProperty.videoImage;
            }
            if (videoAllowed && extendedProperty.videoImage && extendedProperty.videoImageV3 && extendedProperty.videoImageV3.original === extendedProperty.videoImage)
                return extendedProperty.videoImageV3[size];
            // if (videoAllowed && extendedProperty.videoImage) return extendedProperty.videoImage;
            return null;
        }
    };

    function detectGpuSupport () {
        var attributes = {
            alpha: false,
            antialias: false,
            depth: false,
            failIfMajorPerformanceCaveat: true,
            stencil: false
        };
        var canvas = document.createElement("canvas");
        var gl = canvas.getContext("webgl", attributes) || canvas.getContext("experimental-webgl", attributes);
        if (!gl || !(gl instanceof WebGLRenderingContext)) {
            return false;
        }
        return true;
    }

    var localStorageService = {
        setItem: function (key, value) {
            if (value == null) {
                value = null;
            }
            window.localStorage.setItem(getKey(key), value);
        },
        removeItem: function (key) {
            window.localStorage.removeItem(getKey(key));
        },
        getItem: function (key) {
            return window.localStorage.getItem(getKey(key));
        }
    };
    // helper functions
    function getKey(key) {
        if (key.indexOf("wiz") < 0)
            return "wiz" + key;
        return key;
    }

    function normalizeComponent(template, style, script, scopeId, isFunctionalTemplate, moduleIdentifier
    /* server only */
    , shadowMode, createInjector, createInjectorSSR, createInjectorShadow) {
      if (typeof shadowMode !== 'boolean') {
        createInjectorSSR = createInjector;
        createInjector = shadowMode;
        shadowMode = false;
      } // Vue.extend constructor export interop.


      var options = typeof script === 'function' ? script.options : script; // render functions

      if (template && template.render) {
        options.render = template.render;
        options.staticRenderFns = template.staticRenderFns;
        options._compiled = true; // functional template

        if (isFunctionalTemplate) {
          options.functional = true;
        }
      } // scopedId


      if (scopeId) {
        options._scopeId = scopeId;
      }

      var hook;

      if (moduleIdentifier) {
        // server build
        hook = function hook(context) {
          // 2.3 injection
          context = context || // cached call
          this.$vnode && this.$vnode.ssrContext || // stateful
          this.parent && this.parent.$vnode && this.parent.$vnode.ssrContext; // functional
          // 2.2 with runInNewContext: true

          if (!context && typeof __VUE_SSR_CONTEXT__ !== 'undefined') {
            context = __VUE_SSR_CONTEXT__;
          } // inject component styles


          if (style) {
            style.call(this, createInjectorSSR(context));
          } // register component module identifier for async chunk inference


          if (context && context._registeredComponents) {
            context._registeredComponents.add(moduleIdentifier);
          }
        }; // used by ssr in case component is cached and beforeCreate
        // never gets called


        options._ssrRegister = hook;
      } else if (style) {
        hook = shadowMode ? function (context) {
          style.call(this, createInjectorShadow(context, this.$root.$options.shadowRoot));
        } : function (context) {
          style.call(this, createInjector(context));
        };
      }

      if (hook) {
        if (options.functional) {
          // register for functional component in vue file
          var originalRender = options.render;

          options.render = function renderWithStyleInjection(h, context) {
            hook.call(context);
            return originalRender(h, context);
          };
        } else {
          // inject component registration as beforeCreate hook
          var existing = options.beforeCreate;
          options.beforeCreate = existing ? [].concat(existing, hook) : [hook];
        }
      }

      return script;
    }

    function _defineProperty(obj, key, value) {
      if (key in obj) {
        Object.defineProperty(obj, key, {
          value: value,
          enumerable: true,
          configurable: true,
          writable: true
        });
      } else {
        obj[key] = value;
      }

      return obj;
    }

    function _extends() {
      _extends = Object.assign || function (target) {
        for (var i = 1; i < arguments.length; i++) {
          var source = arguments[i];

          for (var key in source) {
            if (Object.prototype.hasOwnProperty.call(source, key)) {
              target[key] = source[key];
            }
          }
        }

        return target;
      };

      return _extends.apply(this, arguments);
    }

    function type () {
      for (var _len = arguments.length, types = new Array(_len), _key = 0; _key < _len; _key++) {
        types[_key] = arguments[_key];
      }

      types.push('');
      return {
        props: {
          type: {
            type: String,
            default: '',
            validator: function validator(value) {
              return types.indexOf(value) !== -1;
            }
          }
        }
      };
    }

    var disabled = {
      props: {
        disabled: {
          type: Boolean,
          default: false
        }
      }
    };

    var icon = {
      props: {
        icon: String
      },
      computed: {
        iconClass: function iconClass() {
          return _defineProperty({}, "ms-Icon--".concat(this.icon), !!this.icon);
        }
      }
    };

    var script = {
      name: 'ou-button',
      mixins: [type('primary', 'hero', 'compound', 'small', 'default'), disabled, icon],
      props: {
        description: String
      },
      computed: {
        buttonClass: function buttonClass() {
          var _ref;

          return _ref = {}, _defineProperty(_ref, "ms-Button--".concat(this.type), !!this.type), _defineProperty(_ref, 'is-disabled', this.disabled), _ref;
        }
      },
      methods: {
        clickEvent: function clickEvent() {
          if (!this.disabled) {
            this.$emit('click');
          }
        }
      }
    };

    /* script */
    const __vue_script__ = script;

    /* template */
    var __vue_render__ = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('button',{staticClass:"ms-Button",class:_vm.buttonClass,on:{"click":_vm.clickEvent}},[(_vm.icon && _vm.type == 'hero')?_c('span',{staticClass:"ms-Button-icon"},[_c('i',{staticClass:"ms-Icon",class:_vm.iconClass})]):_vm._e(),_vm._v(" "),_c('span',{staticClass:"ms-Button-label"},[_vm._t("default")],2),_vm._v(" "),(_vm.description && _vm.type == 'compound')?_c('span',{staticClass:"ms-Button-description"},[_vm._v("\n    "+_vm._s(_vm.description)+"\n  ")]):_vm._e()])};
    var __vue_staticRenderFns__ = [];

      /* style */
      const __vue_inject_styles__ = undefined;
      /* scoped */
      const __vue_scope_id__ = undefined;
      /* module identifier */
      const __vue_module_identifier__ = undefined;
      /* functional template */
      const __vue_is_functional_template__ = false;
      /* style inject */
      
      /* style inject SSR */
      
      /* style inject shadow dom */
      

      
      var button = normalizeComponent(
        { render: __vue_render__, staticRenderFns: __vue_staticRenderFns__ },
        __vue_inject_styles__,
        __vue_script__,
        __vue_scope_id__,
        __vue_is_functional_template__,
        __vue_module_identifier__,
        false,
        undefined,
        undefined,
        undefined
      );

    var script$1 = {
      loadStyles: loadThemedStyles.loadStyles,
      extends: button
    };

    /* script */
    const __vue_script__$1 = script$1;

    /* template */

      /* style */
      const __vue_inject_styles__$1 = function (inject) {
        if (!inject) return
        inject("data-v-3e4e6252_0", { source: ".ms-Button[data-v-3e4e6252]{box-sizing:border-box;margin:0;padding:0;-webkit-box-shadow:none;-moz-box-shadow:none;box-shadow:none;font-family:\"Segoe UI WestEuropean\",\"Segoe UI\",-apple-system,BlinkMacSystemFont,Roboto,\"Helvetica Neue\",sans-serif;-webkit-font-smoothing:antialiased;color:\"[theme:neutralPrimary, default: #333333]\";font-size:14px;font-weight:400;background-color:\"[theme:neutralLighter, default: #f4f4f4]\";border:1px solid \"[theme:neutralLighter, default: #f4f4f4]\";cursor:pointer;display:inline-block;height:32px;min-width:80px;padding:4px 20px 6px}.ms-Button.is-hidden[data-v-3e4e6252]{display:none}.ms-Button[data-v-3e4e6252]:hover{background-color:\"[theme:neutralLight, default: #eaeaea]\";border-color:\"[theme:neutralLight, default: #eaeaea]\"}.ms-Button:hover .ms-Button-label[data-v-3e4e6252]{color:\"[theme:black, default: #000000]\"}@media screen and (-ms-high-contrast:active){.ms-Button[data-v-3e4e6252]:hover{color:#1aebff;border-color:#1aebff}}@media screen and (-ms-high-contrast:black-on-white){.ms-Button[data-v-3e4e6252]:hover{color:#37006e;border-color:#37006e}}.ms-Button[data-v-3e4e6252]:focus{background-color:\"[theme:neutralLight, default: #eaeaea]\";border-color:\"[theme:themePrimary, default: #0078d7]\";outline:1px solid transparent}.ms-Button:focus .ms-Button-label[data-v-3e4e6252]{color:\"[theme:black, default: #000000]\"}.ms-Button[data-v-3e4e6252]:active{background-color:\"[theme:themePrimary, default: #0078d7]\";border-color:\"[theme:themePrimary, default: #0078d7]\"}.ms-Button:active .ms-Button-label[data-v-3e4e6252]{color:\"[theme:white, default: #ffffff]\"}.ms-Button.is-disabled[data-v-3e4e6252],.ms-Button[data-v-3e4e6252]:disabled{background-color:\"[theme:neutralLighter, default: #f4f4f4]\";border-color:\"[theme:neutralLighter, default: #f4f4f4]\";cursor:default}.ms-Button.is-disabled .ms-Button-label[data-v-3e4e6252],.ms-Button:disabled .ms-Button-label[data-v-3e4e6252]{color:\"[theme:neutralTertiary, default: #a6a6a6]\"}.ms-Button.is-disabled[data-v-3e4e6252]:focus,.ms-Button.is-disabled[data-v-3e4e6252]:hover,.ms-Button[data-v-3e4e6252]:disabled:focus,.ms-Button[data-v-3e4e6252]:disabled:hover{outline:0}.ms-Button-label[data-v-3e4e6252]{color:\"[theme:neutralPrimary, default: #333333]\";font-weight:600;font-size:14px}.ms-Button-description[data-v-3e4e6252],.ms-Button-icon[data-v-3e4e6252]{display:none}.ms-Button.ms-Button--primary[data-v-3e4e6252]{background-color:\"[theme:themePrimary, default: #0078d7]\";border-color:\"[theme:themePrimary, default: #0078d7]\"}.ms-Button.ms-Button--primary .ms-Button-label[data-v-3e4e6252]{color:\"[theme:white, default: #ffffff]\"}.ms-Button.ms-Button--primary[data-v-3e4e6252]:hover{background-color:\"[theme:themeDark, default: #005a9e]\";border-color:\"[theme:themeDark, default: #005a9e]\"}.ms-Button.ms-Button--primary[data-v-3e4e6252]:focus{background-color:\"[theme:themeDark, default: #005a9e]\";border-color:\"[theme:themeDarker, default: #004578]\"}.ms-Button.ms-Button--primary[data-v-3e4e6252]:active{background-color:\"[theme:themePrimary, default: #0078d7]\";border-color:\"[theme:themePrimary, default: #0078d7]\"}.ms-Button.ms-Button--primary.is-disabled[data-v-3e4e6252],.ms-Button.ms-Button--primary[data-v-3e4e6252]:disabled{background-color:\"[theme:neutralLighter, default: #f4f4f4]\";border-color:\"[theme:neutralLighter, default: #f4f4f4]\"}.ms-Button.ms-Button--primary.is-disabled .ms-Button-label[data-v-3e4e6252],.ms-Button.ms-Button--primary:disabled .ms-Button-label[data-v-3e4e6252]{color:\"[theme:neutralTertiary, default: #a6a6a6]\"}.ms-Button.ms-Button--small[data-v-3e4e6252]{min-width:60px;min-height:24px;height:auto;padding-top:0;padding-bottom:4px}.ms-Button.ms-Button--small .ms-Button-label[data-v-3e4e6252]{font-weight:400;font-size:12px}.ms-Button.ms-Button--hero[data-v-3e4e6252]{align-items:center;background-color:transparent;border:0;padding:0;position:relative}.ms-Button.ms-Button--hero .ms-Button-icon[data-v-3e4e6252]{color:\"[theme:themePrimary, default: #0078d7]\";display:inline-block;font-size:12px;margin-right:4px;padding-top:5px;text-align:center}.ms-Button.ms-Button--hero .ms-Button-icon .ms-Icon[data-v-3e4e6252]{border-radius:18px;border:1px solid \"[theme:themePrimary, default: #0078d7]\";font-size:12px;height:18px;line-height:18px;width:18px}.ms-Button.ms-Button--hero .ms-Button-label[data-v-3e4e6252]{color:\"[theme:themePrimary, default: #0078d7]\";font-size:21px;font-weight:100;position:relative;text-decoration:none;vertical-align:top}.ms-Button.ms-Button--hero:focus .ms-Button-icon[data-v-3e4e6252],.ms-Button.ms-Button--hero:hover .ms-Button-icon[data-v-3e4e6252]{color:\"[theme:themeDark, default: #005a9e]\"}.ms-Button.ms-Button--hero:focus .ms-Button-icon .ms-Icon[data-v-3e4e6252],.ms-Button.ms-Button--hero:hover .ms-Button-icon .ms-Icon[data-v-3e4e6252]{border:1px solid \"[theme:themeDark, default: #005a9e]\"}.ms-Button.ms-Button--hero:focus .ms-Button-label[data-v-3e4e6252],.ms-Button.ms-Button--hero:hover .ms-Button-label[data-v-3e4e6252]{color:\"[theme:themeDarker, default: #004578]\"}.ms-Button.ms-Button--hero:active .ms-Button-icon[data-v-3e4e6252]{color:\"[theme:themePrimary, default: #0078d7]\"}.ms-Button.ms-Button--hero:active .ms-Button-icon .ms-Icon[data-v-3e4e6252]{border:1px solid \"[theme:themePrimary, default: #0078d7]\"}.ms-Button.ms-Button--hero:active .ms-Button-label[data-v-3e4e6252]{color:\"[theme:themePrimary, default: #0078d7]\"}.ms-Button.ms-Button--hero.is-disabled .ms-Button-icon[data-v-3e4e6252],.ms-Button.ms-Button--hero:disabled .ms-Button-icon[data-v-3e4e6252]{color:\"[theme:neutralTertiaryAlt, default: #c8c8c8]\"}.ms-Button.ms-Button--hero.is-disabled .ms-Button-icon .ms-Icon[data-v-3e4e6252],.ms-Button.ms-Button--hero:disabled .ms-Button-icon .ms-Icon[data-v-3e4e6252]{border:1px solid \"[theme:neutralTertiaryAlt, default: #c8c8c8]\"}.ms-Button.ms-Button--hero.is-disabled .ms-Button-label[data-v-3e4e6252],.ms-Button.ms-Button--hero:disabled .ms-Button-label[data-v-3e4e6252]{color:\"[theme:neutralTertiary, default: #a6a6a6]\"}.ms-Button.ms-Button--compound[data-v-3e4e6252]{display:block;height:auto;max-width:280px;min-height:72px;padding:20px}.ms-Button.ms-Button--compound .ms-Button-label[data-v-3e4e6252]{display:block;font-weight:600;position:relative;text-align:left;margin-top:-5px}.ms-Button.ms-Button--compound .ms-Button-description[data-v-3e4e6252]{color:\"[theme:neutralSecondary, default: #666666]\";display:block;font-weight:400;font-size:12px;position:relative;text-align:left;top:3px}.ms-Button.ms-Button--compound:hover .ms-Button-description[data-v-3e4e6252]{color:\"[theme:neutralDark, default: #212121]\"}.ms-Button.ms-Button--compound[data-v-3e4e6252]:focus{border-color:\"[theme:themePrimary, default: #0078d7]\";background-color:\"[theme:neutralLighter, default: #f4f4f4]\"}.ms-Button.ms-Button--compound:focus .ms-Button-label[data-v-3e4e6252]{color:\"[theme:neutralPrimary, default: #333333]\"}.ms-Button.ms-Button--compound:focus .ms-Button-description[data-v-3e4e6252]{color:\"[theme:neutralSecondary, default: #666666]\"}.ms-Button.ms-Button--compound[data-v-3e4e6252]:active{background-color:\"[theme:themePrimary, default: #0078d7]\"}.ms-Button.ms-Button--compound:active .ms-Button-description[data-v-3e4e6252],.ms-Button.ms-Button--compound:active .ms-Button-label[data-v-3e4e6252]{color:\"[theme:white, default: #ffffff]\"}.ms-Button.ms-Button--compound.is-disabled .ms-Button-description[data-v-3e4e6252],.ms-Button.ms-Button--compound.is-disabled .ms-Button-label[data-v-3e4e6252],.ms-Button.ms-Button--compound:disabled .ms-Button-description[data-v-3e4e6252],.ms-Button.ms-Button--compound:disabled .ms-Button-label[data-v-3e4e6252]{color:\"[theme:neutralTertiary, default: #a6a6a6]\"}.ms-Button.ms-Button--compound.is-disabled[data-v-3e4e6252]:active,.ms-Button.ms-Button--compound.is-disabled[data-v-3e4e6252]:focus,.ms-Button.ms-Button--compound[data-v-3e4e6252]:disabled:active,.ms-Button.ms-Button--compound[data-v-3e4e6252]:disabled:focus{border-color:\"[theme:neutralLighter, default: #f4f4f4]\";background-color:\"[theme:neutralLighter, default: #f4f4f4]\"}.ms-Button.ms-Button--compound.is-disabled:active .ms-Button-description[data-v-3e4e6252],.ms-Button.ms-Button--compound.is-disabled:active .ms-Button-label[data-v-3e4e6252],.ms-Button.ms-Button--compound.is-disabled:focus .ms-Button-description[data-v-3e4e6252],.ms-Button.ms-Button--compound.is-disabled:focus .ms-Button-label[data-v-3e4e6252],.ms-Button.ms-Button--compound:disabled:active .ms-Button-description[data-v-3e4e6252],.ms-Button.ms-Button--compound:disabled:active .ms-Button-label[data-v-3e4e6252],.ms-Button.ms-Button--compound:disabled:focus .ms-Button-description[data-v-3e4e6252],.ms-Button.ms-Button--compound:disabled:focus .ms-Button-label[data-v-3e4e6252]{color:\"[theme:neutralTertiary, default: #a6a6a6]\"}", map: undefined, media: undefined });

      };
      /* scoped */
      const __vue_scope_id__$1 = "data-v-3e4e6252";
      /* module identifier */
      const __vue_module_identifier__$1 = undefined;
      /* functional template */
      const __vue_is_functional_template__$1 = undefined;
      /* style inject */
      const __vue_create_injector__ = function(context){ 
                    return function(scopeId, data)
                    {
                        if(window['wizstyle-'+scopeId])
                            return;
                        if(__vue_script__$1.loadStyles)
                            __vue_script__$1.loadStyles(data.source);
                        window['wizstyle-'+scopeId]=true;
                    }
                };
      /* style inject SSR */
      
      /* style inject shadow dom */
      

      
      var uiButton = normalizeComponent(
        {},
        __vue_inject_styles__$1,
        __vue_script__$1,
        __vue_scope_id__$1,
        __vue_is_functional_template__$1,
        __vue_module_identifier__$1,
        false,
        __vue_create_injector__,
        undefined,
        undefined
      );

    var script$2 = {
      name: 'ou-callout',
      mixins: [type('actionText', 'OOBE', 'peek')],
      props: {
        position: {
          type: String,
          default: 'right',
          validator: function validator(value) {
            return ['right', 'left', 'top', 'bottom'].indexOf(value) !== -1;
          }
        },
        showClose: {
          type: Boolean,
          default: false
        },
        title: String,
        content: String
      },
      data: function data() {
        return {
          calloutInstance: null
        };
      },
      computed: {
        calloutClass: function calloutClass() {
          var _ref;

          return _ref = {}, _defineProperty(_ref, "ms-Callout--".concat(this.type), !!this.type), _defineProperty(_ref, 'ms-Callout--close', this.showClose), _ref;
        }
      },
      mounted: function mounted() {
        this.calloutInstance = new this.$fabric.Callout(this.$refs.callout, this.$refs.calloutTrigger, this.position);
      }
    };

    /* script */
    const __vue_script__$2 = script$2;

    /* template */
    var __vue_render__$1 = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',[_c('div',{ref:"callout",staticClass:"ms-Callout is-hidden",class:_vm.calloutClass},[_c('div',{staticClass:"ms-Callout-main"},[(_vm.showClose)?_c('button',{staticClass:"ms-Callout-close"},[_c('i',{staticClass:"ms-Icon ms-Icon--Clear"})]):_vm._e(),_vm._v(" "),_c('div',{staticClass:"ms-Callout-header"},[_c('p',{staticClass:"ms-Callout-title"},[_vm._v(_vm._s(_vm.title))])]),_vm._v(" "),_c('div',{staticClass:"ms-Callout-inner"},[_c('div',{staticClass:"ms-Callout-content"},[(_vm.content)?_c('p',{staticClass:"ms-Callout-subText"},[_vm._v(_vm._s(_vm.content))]):_vm._t("content")],2),_vm._v(" "),_c('div',{staticClass:"ms-Callout-actions"},[_vm._t("actions")],2)])])]),_vm._v(" "),_c('span',{ref:"calloutTrigger"},[_vm._t("default")],2)])};
    var __vue_staticRenderFns__$1 = [];

      /* style */
      const __vue_inject_styles__$2 = undefined;
      /* scoped */
      const __vue_scope_id__$2 = undefined;
      /* module identifier */
      const __vue_module_identifier__$2 = undefined;
      /* functional template */
      const __vue_is_functional_template__$2 = false;
      /* style inject */
      
      /* style inject SSR */
      
      /* style inject shadow dom */
      

      
      var callout = normalizeComponent(
        { render: __vue_render__$1, staticRenderFns: __vue_staticRenderFns__$1 },
        __vue_inject_styles__$2,
        __vue_script__$2,
        __vue_scope_id__$2,
        __vue_is_functional_template__$2,
        __vue_module_identifier__$2,
        false,
        undefined,
        undefined,
        undefined
      );

    var CONTEXT_STATE_CLASS = "is-open";
    var MODAL_STATE_POSITIONED = "is-positioned";
    var CONTEXT_HOST_MAIN_CLASS = "ms-ContextualHost-main";
    var CONTEXT_HOST_BEAK_CLASS = "ms-ContextualHost-beak";
    var ARROW_LEFT_CLASS = "ms-ContextualHost--arrowLeft";
    var ARROW_TOP_CLASS = "ms-ContextualHost--arrowTop";
    var ARROW_BOTTOM_CLASS = "ms-ContextualHost--arrowBottom";
    var ARROW_RIGHT_CLASS = "ms-ContextualHost--arrowRight";
    var MODIFIER_BASE = "ms-ContextualHost--";
    var ARROW_SIZE = 28;
    var ARROW_OFFSET = 8;

    var ContextualHost = function () {
      function ContextualHost(content, direction, targetElement, hasArrow, modifiers, matchTargetWidth, disposalCallback) {
        if (hasArrow === void 0) {
          hasArrow = true;
        }

        this._resizeAction = this._resizeAction.bind(this);
        this._dismissAction = this._dismissAction.bind(this);
        this._handleKeyUpDismiss = this._handleKeyUpDismiss.bind(this);
        this._matchTargetWidth = matchTargetWidth || false;
        this._direction = direction;
        this._container = this.createContainer();
        this._contextualHost = this._container;
        this._contextualHostMain = this._contextualHost.getElementsByClassName(CONTEXT_HOST_MAIN_CLASS)[0];

        this._contextualHostMain.appendChild(content);

        this._hasArrow = hasArrow;
        this._arrow = this._container.getElementsByClassName(CONTEXT_HOST_BEAK_CLASS)[0];
        this._targetElement = targetElement;

        this._openModal();

        this._setResizeDisposal();

        if (disposalCallback) {
          this._disposalCallback = disposalCallback;
        }

        if (modifiers) {
          for (var i = 0; i < modifiers.length; i++) {
            this._container.classList.add(MODIFIER_BASE + modifiers[i]);
          }
        }

        if (!ContextualHost.hosts) {
          ContextualHost.hosts = [];
        }

        ContextualHost.hosts.push(this);
      }

      ContextualHost.prototype.disposeModal = function () {
        if (ContextualHost.hosts.length > 0) {
          window.removeEventListener("resize", this._resizeAction, false);
          document.removeEventListener("click", this._dismissAction, true);
          document.removeEventListener("keyup", this._handleKeyUpDismiss, true);

          this._container.parentNode.removeChild(this._container);

          if (this._disposalCallback) {
            this._disposalCallback();
          }

          var index = ContextualHost.hosts.indexOf(this);
          ContextualHost.hosts.splice(index, 1);
          var i = ContextualHost.hosts.length;

          while (i--) {
            ContextualHost.hosts[i].disposeModal();
            ContextualHost.hosts.splice(i, 1);
          }
        }
      };

      ContextualHost.prototype.setChildren = function (value) {
        if (!this._children) {
          this._children = [];
        }

        this._children.push(value);
      };

      ContextualHost.prototype.contains = function (value) {
        return this._container.contains(value);
      };

      ContextualHost.prototype.createContainer = function () {
        var ContextualHost0 = document.createElement("div");
        ContextualHost0.setAttribute("class", "ms-ContextualHost");
        ContextualHost0.innerHTML += " ";
        var ContextualHost0c1 = document.createElement("div");
        ContextualHost0c1.setAttribute("class", CONTEXT_HOST_MAIN_CLASS);
        ContextualHost0c1.innerHTML += " ";
        ContextualHost0.appendChild(ContextualHost0c1);
        ContextualHost0.innerHTML += " ";
        var ContextualHost0c3 = document.createElement("div");
        ContextualHost0c3.setAttribute("class", CONTEXT_HOST_BEAK_CLASS);
        ContextualHost0.appendChild(ContextualHost0c3);
        ContextualHost0.innerHTML += "";
        return ContextualHost0;
      };

      ContextualHost.prototype._openModal = function () {
        var _this = this;

        this._copyModalToBody();

        this._saveModalSize();

        this._findAvailablePosition();

        this._showModal();

        setTimeout(function () {
          _this._setDismissClick();
        }, 100);
      };

      ContextualHost.prototype._findAvailablePosition = function () {
        var _posOk;

        switch (this._direction) {
          case "left":
            _posOk = this._positionOk(this._tryPosModalLeft.bind(this), this._tryPosModalRight.bind(this), this._tryPosModalBottom.bind(this), this._tryPosModalTop.bind(this));

            this._setPosition(_posOk);

            break;

          case "right":
            _posOk = this._positionOk(this._tryPosModalRight.bind(this), this._tryPosModalLeft.bind(this), this._tryPosModalBottom.bind(this), this._tryPosModalTop.bind(this));

            this._setPosition(_posOk);

            break;

          case "top":
            _posOk = this._positionOk(this._tryPosModalTop.bind(this), this._tryPosModalBottom.bind(this));

            this._setPosition(_posOk);

            break;

          case "bottom":
            _posOk = this._positionOk(this._tryPosModalBottom.bind(this), this._tryPosModalTop.bind(this));

            this._setPosition(_posOk);

            break;

          default:
            this._setPosition();

        }
      };

      ContextualHost.prototype._showModal = function () {
        this._container.classList.add(CONTEXT_STATE_CLASS);
      };

      ContextualHost.prototype._positionOk = function (pos1, pos2, pos3, pos4) {
        var _posOk;

        _posOk = pos1();

        if (!_posOk) {
          _posOk = pos2();

          if (!_posOk && pos3) {
            _posOk = pos3();

            if (!_posOk && pos4) {
              _posOk = pos4();
            }
          }
        }

        return _posOk;
      };

      ContextualHost.prototype._calcLeft = function (mWidth, teWidth, teLeft) {
        var mHalfWidth = mWidth / 2;
        var teHalf = teWidth / 2;
        var mHLeft = teLeft + teHalf - mHalfWidth;
        mHLeft = mHLeft < mHalfWidth ? teLeft : mHLeft;
        return mHLeft;
      };

      ContextualHost.prototype._calcTop = function (mHeight, teHeight, teTop) {
        var mHalfWidth = mHeight / 2;
        var teHalf = teHeight / 2;
        var mHLeft = teTop + teHalf - mHalfWidth;
        mHLeft = mHLeft < mHalfWidth ? teTop : mHLeft;
        return mHLeft;
      };

      ContextualHost.prototype._setPosition = function (curDirection) {
        var teBR = this._targetElement.getBoundingClientRect();

        var teLeft = teBR.left;
        var teRight = teBR.right;
        var teTop = teBR.top;
        var teWidth = teBR.width;
        var teHeight = teBR.height;
        var mHLeft;
        var mHTop;
        var mWidth = "";
        var arrowTop;
        var arrowLeft;
        var windowX = window.scrollX ? window.scrollX : 0;
        var windowY = window.scrollY ? window.scrollY : 0;
        var arrowSpace = this._hasArrow ? ARROW_SIZE : 0;

        if (this._matchTargetWidth) {
          mWidth = "width: " + this._modalWidth + "px;";
        }

        switch (curDirection) {
          case "left":
            mHLeft = teLeft - this._modalWidth - arrowSpace;
            mHTop = this._calcTop(this._modalHeight, teHeight, teTop);
            mHTop += window.scrollY ? window.scrollY : 0;

            this._container.setAttribute("style", "top: " + mHTop + "px; left: " + mHLeft + "px;" + mWidth);

            this._container.classList.add(MODAL_STATE_POSITIONED);

            if (this._hasArrow) {
              this._container.classList.add(ARROW_RIGHT_CLASS);

              arrowTop = teTop + windowY - mHTop + ARROW_OFFSET;

              this._arrow.setAttribute("style", "top: " + arrowTop + "px;");
            }

            break;

          case "right":
            mHTop = this._calcTop(this._modalHeight, teHeight, teTop);
            mHTop += windowY;
            mHLeft = teRight + arrowSpace;

            this._container.setAttribute("style", "top: " + mHTop + "px; left: " + mHLeft + "px;" + mWidth);

            this._container.classList.add(MODAL_STATE_POSITIONED);

            if (this._hasArrow) {
              arrowTop = windowY + teTop - mHTop + ARROW_OFFSET;

              this._arrow.setAttribute("style", "top: " + arrowTop + "px;");

              this._container.classList.add(ARROW_LEFT_CLASS);
            }

            break;

          case "top":
            mHLeft = this._calcLeft(this._modalWidth, this._teWidth, teLeft);
            mHTop = teTop - this._modalHeight - arrowSpace;
            mHTop += windowY;

            this._container.setAttribute("style", "top: " + mHTop + "px; left: " + mHLeft + "px;" + mWidth);

            this._container.classList.add(MODAL_STATE_POSITIONED);

            if (this._hasArrow) {
              arrowTop = this._modalHeight - arrowSpace / 2;
              arrowLeft = Math.max(windowX + teLeft - mHLeft + (teWidth - arrowSpace) / 2, ARROW_OFFSET);

              this._arrow.setAttribute("style", "top: " + arrowTop + "px; left: " + arrowLeft + "px;");

              this._container.classList.add(ARROW_BOTTOM_CLASS);
            }

            break;

          case "bottom":
            mHLeft = mHLeft = this._calcLeft(this._modalWidth, this._teWidth, teLeft);
            mHTop = teTop + teHeight + arrowSpace;
            mHTop += window.scrollY ? window.scrollY : 0;

            this._container.setAttribute("style", "top: " + mHTop + "px; left: " + mHLeft + "px;" + mWidth);

            this._container.classList.add(MODAL_STATE_POSITIONED);

            if (this._hasArrow) {
              arrowLeft = Math.max(windowX + teLeft - mHLeft + (teWidth - arrowSpace) / 2, ARROW_OFFSET);

              this._arrow.setAttribute("style", "left: " + arrowLeft + "px;");

              this._container.classList.add(ARROW_TOP_CLASS);
            }

            break;

          default:
            this._container.setAttribute("style", "top: 50%; left: 50%; transform: translateX(-50%) translateY(-50%);");

        }
      };

      ContextualHost.prototype._tryPosModalLeft = function () {
        var teLeft = this._targetElement.getBoundingClientRect().left;

        if (teLeft < this._modalWidth) {
          return false;
        } else {
          return "left";
        }
      };

      ContextualHost.prototype._tryPosModalRight = function () {
        var teRight = this._targetElement.getBoundingClientRect().right;

        var w = Math.max(document.documentElement.clientWidth, window.innerWidth || 0);

        if (w - teRight < this._modalWidth) {
          return false;
        } else {
          return "right";
        }
      };

      ContextualHost.prototype._tryPosModalBottom = function () {
        var teBottom = window.innerHeight - this._targetElement.getBoundingClientRect().bottom;

        if (teBottom < this._modalHeight) {
          return false;
        } else {
          return "bottom";
        }
      };

      ContextualHost.prototype._tryPosModalTop = function () {
        var teTop = this._targetElement.getBoundingClientRect().top;

        if (teTop < this._modalHeight) {
          return false;
        } else {
          return "top";
        }
      };

      ContextualHost.prototype._copyModalToBody = function () {
        document.body.appendChild(this._container);
      };

      ContextualHost.prototype._saveModalSize = function () {
        var _modalStyles = window.getComputedStyle(this._container);

        this._container.setAttribute("style", "opacity: 0; z-index: -1");

        this._container.classList.add(MODAL_STATE_POSITIONED);

        this._container.classList.add(CONTEXT_STATE_CLASS);

        if (this._matchTargetWidth) {
          var teStyles = window.getComputedStyle(this._targetElement);
          this._modalWidth = this._targetElement.getBoundingClientRect().width + (parseInt(teStyles.marginLeft, 10) + parseInt(teStyles.marginLeft, 10));
        } else {
          this._modalWidth = this._container.getBoundingClientRect().width + (parseInt(_modalStyles.marginLeft, 10) + parseInt(_modalStyles.marginRight, 10));

          this._container.setAttribute("style", "");
        }

        this._modalHeight = this._container.getBoundingClientRect().height + (parseInt(_modalStyles.marginTop, 10) + parseInt(_modalStyles.marginBottom, 10));

        this._container.classList.remove(MODAL_STATE_POSITIONED);

        this._container.classList.remove(CONTEXT_STATE_CLASS);

        this._teWidth = this._targetElement.getBoundingClientRect().width;
        this._teHeight = this._targetElement.getBoundingClientRect().height;
      };

      ContextualHost.prototype._dismissAction = function (e) {
        if (!this._container.contains(e.target) && e.target !== this._container) {
          if (this._children !== undefined) {
            var isChild_1 = false;

            this._children.map(function (child) {
              if (child !== undefined) {
                isChild_1 = child.contains(e.target);
              }
            });

            if (!isChild_1) {
              this.disposeModal();
            }
          } else {
            this.disposeModal();
          }
        }
      };

      ContextualHost.prototype._setDismissClick = function () {
        document.addEventListener("click", this._dismissAction, true);
        document.addEventListener("keyup", this._handleKeyUpDismiss, true);
      };

      ContextualHost.prototype._handleKeyUpDismiss = function (e) {
        if (e.keyCode === 32 || e.keyCode === 27) {
          this._dismissAction(e);
        }
      };

      ContextualHost.prototype._resizeAction = function () {
        this.disposeModal();
      };

      ContextualHost.prototype._setResizeDisposal = function () {
        window.addEventListener("resize", this._resizeAction, false);
      };

      return ContextualHost;
    }();

    var STATE_HIDDEN = "is-hidden";
    var CLOSE_BUTTON_CLASS = ".ms-Callout-close";
    var MODIFIER_OOBE_CLASS = "ms-Callout--OOBE";

    var Callout = function () {
      function Callout(container, addTarget, position) {
        this._container = container;
        this._addTarget = addTarget;
        this._position = position;
        this._closeButton = container.querySelector(CLOSE_BUTTON_CLASS);

        this._setOpener();
      }

      Callout.prototype._setOpener = function () {
        this._addTarget.addEventListener("click", this._clickHandler.bind(this), true);

        this._addTarget.addEventListener("keyup", this._keyupHandler.bind(this), true);
      };

      Callout.prototype._openContextMenu = function () {
        var modifiers = [];

        if (this._hasModifier(MODIFIER_OOBE_CLASS)) {
          modifiers.push("primaryArrow");
        }

        this._container.classList.remove(STATE_HIDDEN);

        this._contextualHost = new ContextualHost(this._container, this._position, this._addTarget, true, modifiers);

        if (this._closeButton) {
          this._closeButton.addEventListener("click", this._closeHandler.bind(this), false);
        }
      };

      Callout.prototype._hasModifier = function (modifierClass) {
        return this._container.classList.contains(modifierClass);
      };

      Callout.prototype._closeHandler = function (e) {
        if (this._contextualHost != null) {
          this._contextualHost.disposeModal();
        }

        this._closeButton.removeEventListener("click", this._closeHandler.bind(this), false);

        this._addTarget.removeEventListener("click", this._clickHandler.bind(this), true);

        this._addTarget.removeEventListener("keyup", this._keyupHandler.bind(this), true);
      };

      Callout.prototype._clickHandler = function (e) {
        this._openContextMenu();
      };

      Callout.prototype._keyupHandler = function (event) {
        if (event.keyCode === 32) {
          event.stopPropagation();
          event.preventDefault();

          this._openContextMenu();
        } else {
          this._closeHandler(event);
        }
      };

      return Callout;
    }();

    var script$3 = {
      loadStyles: loadThemedStyles.loadStyles,
      beforeMount: function beforeMount() {
        this.$fabric = {
          Callout: Callout
        };
      },
      mounted: function mounted() {
        var _this = this;

        this.$refs.calloutTrigger.addEventListener("click", function () {
          var contextualHostElm = _this.$refs.callout.parentElement.parentElement;
          contextualHostElm.setAttribute(_this.$options._scopeId, "");

          for (var i = 0; i < contextualHostElm.children.length; i++) {
            contextualHostElm.children[i].setAttribute(_this.$options._scopeId, "");
          }

          _this.calloutInstance._contextualHost._openModal(); // recalculate position

        });
      },
      extends: callout
    };

    /* script */
    const __vue_script__$3 = script$3;

    /* template */

      /* style */
      const __vue_inject_styles__$3 = function (inject) {
        if (!inject) return
        inject("data-v-081530f0_0", { source: "@charset \"UTF-8\";.ms-Callout[data-v-081530f0]{font-family:\"Segoe UI WestEuropean\",\"Segoe UI\",-apple-system,BlinkMacSystemFont,Roboto,\"Helvetica Neue\",sans-serif;-webkit-font-smoothing:antialiased;width:288px}.ms-Callout.is-hidden[data-v-081530f0]{display:none}.ms-Callout-header[data-v-081530f0]{z-index:105;padding-top:24px;padding-bottom:12px;padding-left:28px;padding-right:28px}.ms-Callout-title[data-v-081530f0]{margin:0;font-weight:300;font-size:21px}.ms-Callout-subText[data-v-081530f0]{margin:0;font-weight:300;color:\"[theme:neutralPrimary, default: #333333]\";font-size:12px}.ms-Callout-close[data-v-081530f0]{margin:0;border:0;background:0 0;cursor:pointer;position:absolute;top:12px;right:12px;padding:8px;width:32px;height:32px;font-size:14px;color:\"[theme:neutralSecondary, default: #666666]\";z-index:110}.ms-Callout-link[data-v-081530f0]{font-size:14px}.ms-Callout-inner[data-v-081530f0]{height:100%;padding-top:0;padding-bottom:12px;padding-left:28px;padding-right:28px}.ms-Callout-actions[data-v-081530f0]{position:relative;margin-top:20px;width:100%;white-space:nowrap}.ms-Callout-actions .ms-CommandButton.ms-CommandButton--inline[data-v-081530f0]{height:27px;line-height:27px}.ms-Callout-actions .ms-CommandButton.ms-CommandButton--inline .ms-CommandButton-button[data-v-081530f0]{height:27px;line-height:27px}.ms-Callout-actions .ms-CommandButton.ms-CommandButton--inline .ms-CommandButton-label[data-v-081530f0]{line-height:27px}.ms-Callout-actions .ms-CommandButton.ms-CommandButton--inline .ms-CommandButton-icon[data-v-081530f0]{line-height:27px}.ms-Callout-actions .ms-CommandButton.ms-CommandButton--inline:focus .ms-Button[data-v-081530f0],.ms-Callout-actions .ms-CommandButton.ms-CommandButton--inline:hover .ms-Button[data-v-081530f0]{color:\"[theme:themePrimary, default: #0078d7]\"}.ms-Callout-actions .ms-Callout-button[data-v-081530f0]{margin-right:12px}.ms-Callout.ms-Callout--OOBE .ms-Callout-header[data-v-081530f0]{padding:28px 24px;background-color:\"[theme:themePrimary, default: #0078d7]\"}.ms-Callout.ms-Callout--OOBE .ms-Callout-title[data-v-081530f0]{font-weight:100;font-size:28px;color:\"[theme:white, default: #ffffff]\"}.ms-Callout.ms-Callout--OOBE .ms-Callout-inner[data-v-081530f0]{padding-top:20px}.ms-Callout.ms-Callout--OOBE .ms-Callout-subText[data-v-081530f0]{font-size:14px}.ms-Callout.ms-Callout--actionText .ms-Callout-actions[data-v-081530f0]{border-top:1px solid \"[theme:neutralLight, default: #eaeaea]\";padding-top:12px}.ms-Callout.ms-Callout--actionText .ms-Callout-inner[data-v-081530f0]{padding-bottom:12px}.ms-Callout.ms-Callout--peek .ms-Callout-header[data-v-081530f0]{padding-bottom:0}.ms-Callout.ms-Callout--peek .ms-Callout-title[data-v-081530f0]{font-size:14px}.ms-Callout.ms-Callout--peek .ms-Callout-actions[data-v-081530f0]{margin-top:12px;margin-bottom:-4px}.ms-ContextualHost[data-v-081530f0]{font-family:\"Segoe UI WestEuropean\",\"Segoe UI\",-apple-system,BlinkMacSystemFont,Roboto,\"Helvetica Neue\",sans-serif;-webkit-font-smoothing:antialiased;z-index:10;margin:16px auto;position:relative;min-width:10px;display:none;background-color:\"[theme:white, default: #ffffff]\";box-shadow:0 0 5px 0 rgba(0,0,0,.4)}.ms-ContextualHost.is-positioned[data-v-081530f0]{position:absolute;margin:0}.ms-ContextualHost.is-open[data-v-081530f0]{display:inline-block}.ms-ContextualHost-beak[data-v-081530f0]{box-shadow:0 0 15px -5px \"[theme:neutralPrimaryAlt, default: #3c3c3c]\";position:absolute;width:28px;height:28px;background:\"[theme:white, default: #ffffff]\";border:1px solid \"[theme:neutralLight, default: #eaeaea]\";box-sizing:border-box;top:-6px;display:none;-webkit-transform:rotate(45deg);transform:rotate(45deg);z-index:0;outline:1px solid transparent}.ms-ContextualHost.ms-ContextualHost--arrowLeft .ms-ContextualHost-beak[data-v-081530f0],.ms-ContextualHost.ms-ContextualHost--arrowRight .ms-ContextualHost-beak[data-v-081530f0]{top:40px;display:none}.ms-ContextualHost.ms-ContextualHost--arrowLeft .ms-ContextualHost-beak[data-v-081530f0]{left:-10px}.ms-ContextualHost.ms-ContextualHost--arrowRight .ms-ContextualHost-beak[data-v-081530f0]{right:-10px}.ms-ContextualHost.ms-ContextualHost--arrowTop .ms-ContextualHost-beak[data-v-081530f0]{display:block;top:-10px}.ms-ContextualHost.ms-ContextualHost--arrowBottom .ms-ContextualHost-beak[data-v-081530f0]{display:block;bottom:-10px}.ms-ContextualHost-main[data-v-081530f0]{position:relative;background-color:\"[theme:white, default: #ffffff]\";box-sizing:border-box;outline:1px solid transparent;z-index:5;min-height:10px}.ms-ContextualHost-close[data-v-081530f0]{margin:0;border:0;background:0 0;cursor:pointer;position:absolute;top:12px;right:12px;padding:8px;width:32px;height:32px;font-size:14px;color:\"[theme:neutralSecondary, default: #666666]\";z-index:10}.ms-ContextualHost.ms-ContextualHost--close .ms-ContextualHost-title[data-v-081530f0]{margin-right:20px}.ms-ContextualHost.ms-ContextualHost--primaryArrow .ms-ContextualHost-beak[data-v-081530f0]{background-color:\"[theme:themePrimary, default: #0078d7]\"}@media (min-width:480px){.ms-ContextualHost[data-v-081530f0]{margin:16px}.ms-ContextualHost.is-positioned[data-v-081530f0]{margin:0}.ms-ContextualHost.ms-ContextualHost--arrowLeft .ms-ContextualHost-beak[data-v-081530f0],.ms-ContextualHost.ms-ContextualHost--arrowRight .ms-ContextualHost-beak[data-v-081530f0]{display:block}}@font-face{font-family:FabricMDL2Icons-a13498cf;src:url(https://spoprod-a.akamaihd.net/files/fabric/assets/icons/fabric-icons-a13498cf.woff) format(\"woff\")}.ms-Icon[data-v-081530f0]{display:inline-block;font-style:normal;font-weight:400}.ms-Icon.ms-Icon--Clear[data-v-081530f0]::before{font-family:FabricMDL2Icons-a13498cf;content:\"\"}", map: undefined, media: undefined });

      };
      /* scoped */
      const __vue_scope_id__$3 = "data-v-081530f0";
      /* module identifier */
      const __vue_module_identifier__$3 = undefined;
      /* functional template */
      const __vue_is_functional_template__$3 = undefined;
      /* style inject */
      const __vue_create_injector__$1 = function(context){ 
                    return function(scopeId, data)
                    {
                        if(window['wizstyle-'+scopeId])
                            return;
                        if(__vue_script__$3.loadStyles)
                            __vue_script__$3.loadStyles(data.source);
                        window['wizstyle-'+scopeId]=true;
                    }
                };
      /* style inject SSR */
      
      /* style inject shadow dom */
      

      
      var uiCallout = normalizeComponent(
        {},
        __vue_inject_styles__$3,
        __vue_script__$3,
        __vue_scope_id__$3,
        __vue_is_functional_template__$3,
        __vue_module_identifier__$3,
        false,
        __vue_create_injector__$1,
        undefined,
        undefined
      );

    //
    var script$4 = {
      name: 'ou-checkbox',
      mixins: [disabled],
      props: {
        value: Boolean
      },
      data: function data() {
        return {
          checkboxInstance: null
        };
      },
      watch: {
        value: function value() {
          this.setCheck();
        }
      },
      mounted: function mounted() {
        this.checkboxInstance = new this.$fabric.CheckBox(this.$refs.checkbox);
        this.setCheck();
      },
      methods: {
        toggle: function toggle() {
          this.$emit('input', this.checkboxInstance.getValue());
        },
        setCheck: function setCheck() {
          this.value && !this.disabled ? this.checkboxInstance.check() : this.checkboxInstance.unCheck();
        }
      }
    };

    /* script */
    const __vue_script__$4 = script$4;

    /* template */
    var __vue_render__$2 = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{ref:"checkbox",staticClass:"ms-CheckBox"},[_c('input',{staticClass:"ms-CheckBox-input",attrs:{"tabindex":"-1","type":"checkbox"},on:{"click":_vm.toggle}}),_vm._v(" "),_c('label',{staticClass:"ms-CheckBox-field",class:{ 'is-disabled': _vm.disabled },attrs:{"role":"checkbox","tabindex":"0","aria-checked":"false","name":"checkbox"}},[_c('span',{staticClass:"ms-Label"},[_vm._t("default")],2)])])};
    var __vue_staticRenderFns__$2 = [];

      /* style */
      const __vue_inject_styles__$4 = undefined;
      /* scoped */
      const __vue_scope_id__$4 = undefined;
      /* module identifier */
      const __vue_module_identifier__$4 = undefined;
      /* functional template */
      const __vue_is_functional_template__$4 = false;
      /* style inject */
      
      /* style inject SSR */
      
      /* style inject shadow dom */
      

      
      var checkbox = normalizeComponent(
        { render: __vue_render__$2, staticRenderFns: __vue_staticRenderFns__$2 },
        __vue_inject_styles__$4,
        __vue_script__$4,
        __vue_scope_id__$4,
        __vue_is_functional_template__$4,
        __vue_module_identifier__$4,
        false,
        undefined,
        undefined,
        undefined
      );

    var CheckBox = function () {
      function CheckBox(container) {
        this._container = container;
        this._choiceField = this._container.querySelector(".ms-CheckBox-field");
        this._choiceInput = this._container.querySelector(".ms-CheckBox-input");

        if (this._choiceInput.checked) {
          this._choiceField.setAttribute("aria-checked", "true");
        }

        if (this._choiceField.getAttribute("aria-checked") === "true") {
          this._choiceField.classList.add("is-checked");
        }

        this._addListeners();
      }

      CheckBox.prototype.getValue = function () {
        return this._choiceField.getAttribute("aria-checked") === "true" ? true : false;
      };

      CheckBox.prototype.toggle = function () {
        if (this.getValue()) {
          this.unCheck();
        } else {
          this.check();
        }

        this._choiceInput.click();
      };

      CheckBox.prototype.check = function () {
        this._choiceField.setAttribute("aria-checked", "true");

        this._choiceField.classList.add("is-checked");
      };

      CheckBox.prototype.unCheck = function () {
        this._choiceField.setAttribute("aria-checked", "false");

        this._choiceField.classList.remove("is-checked");
      };

      CheckBox.prototype.removeListeners = function () {
        this._choiceField.removeEventListener("focus", this._FocusHandler.bind(this));

        this._choiceField.removeEventListener("blur", this._BlurHandler.bind(this));

        this._choiceField.removeEventListener("click", this._ClickHandler.bind(this));

        this._choiceField.removeEventListener("keydown", this._KeydownHandler.bind(this));
      };

      CheckBox.prototype._addListeners = function (events) {
        var ignore = events && events.ignore;

        if (!ignore || !(ignore.indexOf("focus") > -1)) {
          this._choiceField.addEventListener("focus", this._FocusHandler.bind(this), false);
        }

        if (!ignore || !(ignore.indexOf("blur") > -1)) {
          this._choiceField.addEventListener("blur", this._BlurHandler.bind(this), false);
        }

        if (!ignore || !(ignore.indexOf("click") > -1)) {
          this._choiceField.addEventListener("click", this._ClickHandler.bind(this), false);
        }

        if (!ignore || !(ignore.indexOf("keydown") > -1)) {
          this._choiceField.addEventListener("keydown", this._KeydownHandler.bind(this), false);
        }
      };

      CheckBox.prototype._FocusHandler = function () {
        this._choiceField.classList.add("in-focus");
      };

      CheckBox.prototype._BlurHandler = function () {
        this._choiceField.classList.remove("in-focus");
      };

      CheckBox.prototype._ClickHandler = function (event) {
        event.stopPropagation();
        event.preventDefault();

        if (!this._choiceField.classList.contains("is-disabled")) {
          this.toggle();
        }
      };

      CheckBox.prototype._KeydownHandler = function (event) {
        if (event.keyCode === 32) {
          event.stopPropagation();
          event.preventDefault();

          if (!this._choiceField.classList.contains("is-disabled")) {
            this.toggle();
          }
        }
      };

      return CheckBox;
    }();

    var script$5 = {
      loadStyles: loadThemedStyles.loadStyles,
      beforeMount: function beforeMount() {
        this.$fabric = {
          CheckBox: CheckBox
        };
      },
      extends: checkbox,
      mounted: function mounted() {
        if (this.value) {
          this.checkboxInstance.check();
        }
      }
    };

    /* script */
    const __vue_script__$5 = script$5;

    /* template */

      /* style */
      const __vue_inject_styles__$5 = function (inject) {
        if (!inject) return
        inject("data-v-a3afd76a_0", { source: "@charset \"UTF-8\";.ms-CheckBox[data-v-a3afd76a]{box-sizing:border-box;color:\"[theme:neutralPrimary, default: #333333]\";font-family:\"Segoe UI WestEuropean\",\"Segoe UI\",-apple-system,BlinkMacSystemFont,Roboto,\"Helvetica Neue\",sans-serif;font-size:14px;font-weight:400;min-height:36px;position:relative}.ms-CheckBox .ms-Label[data-v-a3afd76a]{font-size:14px;padding:0 0 0 26px;cursor:pointer;display:inline-block}.ms-CheckBox-input[data-v-a3afd76a]{position:absolute;opacity:0}.ms-CheckBox-field[data-v-a3afd76a]::before{content:\"\";display:inline-block;border:2px solid \"[theme:neutralTertiary, default: #a6a6a6]\";width:20px;height:20px;cursor:pointer;font-weight:400;position:absolute;box-sizing:border-box;transition-property:background,border,border-color;transition-duration:.2s;transition-timing-function:cubic-bezier(.4,0,.23,1)}.ms-CheckBox-field[data-v-a3afd76a]::after{content:\"\";font-family:FabricMDL2Icons;display:none;position:absolute;font-weight:900;background-color:transparent;font-size:13px;top:0;color:\"[theme:white, default: #ffffff]\";line-height:20px;width:20px;text-align:center}@media screen and (-ms-high-contrast:active){.ms-CheckBox-field[data-v-a3afd76a]::after{color:\"[theme:black, default: #000000]\"}}@media screen and (-ms-high-contrast:black-on-white){.ms-CheckBox-field[data-v-a3afd76a]::after{color:\"[theme:white, default: #ffffff]\"}}.ms-CheckBox-field[data-v-a3afd76a]{display:inline-block;cursor:pointer;margin-top:8px;position:relative;outline:0;vertical-align:top}.ms-CheckBox-field[data-v-a3afd76a]:focus::before,.ms-CheckBox-field[data-v-a3afd76a]:hover::before{border-color:\"[theme:neutralSecondaryAlt, default: #767676]\"}.ms-CheckBox-field:focus .ms-Label[data-v-a3afd76a],.ms-CheckBox-field:hover .ms-Label[data-v-a3afd76a]{color:\"[theme:black, default: #000000]\"}.ms-CheckBox-field.is-disabled[data-v-a3afd76a]{cursor:default}.ms-CheckBox-field.is-disabled[data-v-a3afd76a]::before{background-color:\"[theme:neutralTertiaryAlt, default: #c8c8c8]\";border-color:\"[theme:neutralTertiaryAlt, default: #c8c8c8]\";color:\"[theme:neutralTertiaryAlt, default: #c8c8c8]\"}@media screen and (-ms-high-contrast:active){.ms-CheckBox-field.is-disabled[data-v-a3afd76a]::before{border-color:#0f0}}@media screen and (-ms-high-contrast:black-on-white){.ms-CheckBox-field.is-disabled[data-v-a3afd76a]::before{border-color:#600000}}.ms-CheckBox-field.is-disabled .ms-Label[data-v-a3afd76a]{color:\"[theme:neutralTertiary, default: #a6a6a6]\"}@media screen and (-ms-high-contrast:active){.ms-CheckBox-field.is-disabled .ms-Label[data-v-a3afd76a]{color:#0f0}}@media screen and (-ms-high-contrast:black-on-white){.ms-CheckBox-field.is-disabled .ms-Label[data-v-a3afd76a]{color:#600000}}.ms-CheckBox-field.in-focus[data-v-a3afd76a]::before{border-color:\"[theme:neutralSecondaryAlt, default: #767676]\"}.ms-CheckBox-field.in-focus.is-disabled[data-v-a3afd76a]::before{border-color:\"[theme:neutralTertiaryAlt, default: #c8c8c8]\"}.ms-CheckBox-field.in-focus.is-checked[data-v-a3afd76a]::before{border-color:\"[theme:themeDarkAlt, default: #106ebe]\"}.ms-CheckBox-field.is-checked[data-v-a3afd76a]::before{border:10px solid \"[theme:themePrimary, default: #0078d7]\";background-color:\"[theme:themePrimary, default: #0078d7]\"}@media screen and (-ms-high-contrast:active){.ms-CheckBox-field.is-checked[data-v-a3afd76a]::before{border-color:#1aebff}}@media screen and (-ms-high-contrast:black-on-white){.ms-CheckBox-field.is-checked[data-v-a3afd76a]::before{border-color:#37006e}}.ms-CheckBox-field.is-checked[data-v-a3afd76a]::after{display:block}.ms-CheckBox-field.is-checked[data-v-a3afd76a]:focus::before,.ms-CheckBox-field.is-checked[data-v-a3afd76a]:hover::before{border-color:\"[theme:themeDarkAlt, default: #106ebe]\"}@font-face{font-family:FabricMDL2Icons-a13498cf;src:url(https://spoprod-a.akamaihd.net/files/fabric/assets/icons/fabric-icons-a13498cf.woff) format(\"woff\")}.ms-CheckBox-field.is-checked[data-v-a3afd76a]::after{font-family:FabricMDL2Icons-a13498cf!important}.ms-CheckBox-field.is-disabled.is-checked[data-v-a3afd76a]::before{background-color:\"[theme:neutralTertiaryAlt, default:#c8c8c8]\";border-color:\"[theme:neutralTertiaryAlt, default:#c8c8c8]\"}", map: undefined, media: undefined });

      };
      /* scoped */
      const __vue_scope_id__$5 = "data-v-a3afd76a";
      /* module identifier */
      const __vue_module_identifier__$5 = undefined;
      /* functional template */
      const __vue_is_functional_template__$5 = undefined;
      /* style inject */
      const __vue_create_injector__$2 = function(context){ 
                    return function(scopeId, data)
                    {
                        if(window['wizstyle-'+scopeId])
                            return;
                        if(__vue_script__$5.loadStyles)
                            __vue_script__$5.loadStyles(data.source);
                        window['wizstyle-'+scopeId]=true;
                    }
                };
      /* style inject SSR */
      
      /* style inject shadow dom */
      

      
      var uiCheckbox = normalizeComponent(
        {},
        __vue_inject_styles__$5,
        __vue_script__$5,
        __vue_scope_id__$5,
        __vue_is_functional_template__$5,
        __vue_module_identifier__$5,
        false,
        __vue_create_injector__$2,
        undefined,
        undefined
      );

    //
    var script$6 = {
      name: 'ou-choice-field',
      mixins: [disabled],
      inject: ['eventHub'],
      props: {
        value: [String, Number]
      },
      created: function created() {
        this.eventHub.$on('setChoiceField', this.setChoiceField);
      },
      beforeDestroy: function beforeDestroy() {
        this.eventHub.$off('setChoiceField', this.setChoiceField);
      },
      methods: {
        updateParentValue: function updateParentValue() {
          if (!this.disabled) {
            this.eventHub.$emit('updateValue', this.value);
          }
        },
        setChoiceField: function setChoiceField(value) {
          if (this.disabled) {
            return;
          }

          if (this.value == value) {
            this.$refs.radioLabel.classList.add('is-checked');
          } else {
            this.$refs.radioLabel.classList.remove('is-checked');
          }
        }
      }
    };

    /* script */
    const __vue_script__$6 = script$6;

    /* template */
    var __vue_render__$3 = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('li',{staticClass:"ms-RadioButton"},[_c('input',{staticClass:"ms-RadioButton-input",attrs:{"tabindex":"-1","type":"radio"}}),_vm._v(" "),_c('label',{ref:"radioLabel",staticClass:"ms-RadioButton-field",class:{ 'is-disabled': _vm.disabled },attrs:{"role":"radio","tabindex":"0","aria-checked":"false","name":"choicefieldgroup"},on:{"click":_vm.updateParentValue}},[_c('span',{staticClass:"ms-Label"},[_vm._t("default")],2)])])};
    var __vue_staticRenderFns__$3 = [];

      /* style */
      const __vue_inject_styles__$6 = undefined;
      /* scoped */
      const __vue_scope_id__$6 = undefined;
      /* module identifier */
      const __vue_module_identifier__$6 = undefined;
      /* functional template */
      const __vue_is_functional_template__$6 = false;
      /* style inject */
      
      /* style inject SSR */
      
      /* style inject shadow dom */
      

      
      var ChoiceField = normalizeComponent(
        { render: __vue_render__$3, staticRenderFns: __vue_staticRenderFns__$3 },
        __vue_inject_styles__$6,
        __vue_script__$6,
        __vue_scope_id__$6,
        __vue_is_functional_template__$6,
        __vue_module_identifier__$6,
        false,
        undefined,
        undefined,
        undefined
      );

    var script$7 = {
      extends: ChoiceField,
      created: function created() {
        this.$options._scopeId = this.$parent.$options._scopeId;
      }
    };

    /* script */
    const __vue_script__$7 = script$7;

    /* template */

      /* style */
      const __vue_inject_styles__$7 = undefined;
      /* scoped */
      const __vue_scope_id__$7 = undefined;
      /* module identifier */
      const __vue_module_identifier__$7 = undefined;
      /* functional template */
      const __vue_is_functional_template__$7 = undefined;
      /* style inject */
      
      /* style inject SSR */
      
      /* style inject shadow dom */
      

      
      var uiChoiceField = normalizeComponent(
        {},
        __vue_inject_styles__$7,
        __vue_script__$7,
        __vue_scope_id__$7,
        __vue_is_functional_template__$7,
        __vue_module_identifier__$7,
        false,
        undefined,
        undefined,
        undefined
      );

    var eventHub = {
      data: function data() {
        return {
          eventHub: new VueConstructor__default__default()
        };
      },
      provide: function provide() {
        return {
          eventHub: this.eventHub
        };
      }
    };

    //
    var script$8 = {
      name: 'ou-choice-field-group',
      mixins: [eventHub],
      props: {
        value: [String, Number]
      },
      watch: {
        value: function value() {
          this.setChoiceFields();
        }
      },
      created: function created() {
        this.eventHub.$on('updateValue', this.updateValue);
      },
      beforeDestroy: function beforeDestroy() {
        this.eventHub.$off('updateValue', this.updateValue);
      },
      mounted: function mounted() {
        this.setChoiceFields();
        new this.$fabric.ChoiceFieldGroup(this.$refs.choiceFieldGroup);
      },
      methods: {
        updateValue: function updateValue(value) {
          this.$emit('input', value);
        },
        setChoiceFields: function setChoiceFields() {
          if (typeof this.value != 'undefined') {
            this.eventHub.$emit('setChoiceField', this.value);
          }
        }
      }
    };

    /* script */
    const __vue_script__$8 = script$8;

    /* template */
    var __vue_render__$4 = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{ref:"choiceFieldGroup",staticClass:"ms-ChoiceFieldGroup",attrs:{"id":"choicefieldgroup","role":"radiogroup"}},[_c('div',{staticClass:"ms-ChoiceFieldGroup-title"},[_vm._t("title")],2),_vm._v(" "),_c('ul',{staticClass:"ms-ChoiceFieldGroup-list"},[_vm._t("default")],2)])};
    var __vue_staticRenderFns__$4 = [];

      /* style */
      const __vue_inject_styles__$8 = undefined;
      /* scoped */
      const __vue_scope_id__$8 = undefined;
      /* module identifier */
      const __vue_module_identifier__$8 = undefined;
      /* functional template */
      const __vue_is_functional_template__$8 = false;
      /* style inject */
      
      /* style inject SSR */
      
      /* style inject shadow dom */
      

      
      var ChoiceFieldGroup = normalizeComponent(
        { render: __vue_render__$4, staticRenderFns: __vue_staticRenderFns__$4 },
        __vue_inject_styles__$8,
        __vue_script__$8,
        __vue_scope_id__$8,
        __vue_is_functional_template__$8,
        __vue_module_identifier__$8,
        false,
        undefined,
        undefined,
        undefined
      );

    var RadioButton = function () {
      function RadioButton(container) {
        this._container = container;
        this._choiceField = this._container.querySelector(".ms-RadioButton-field");
        this._choiceInput = this._container.querySelector(".ms-RadioButton-input");

        if (this._choiceField.getAttribute("aria-checked") === "true") {
          this._choiceField.classList.add("is-checked");
        }

        this._addListeners();
      }

      RadioButton.prototype.getValue = function () {
        return this._choiceField.getAttribute("aria-checked") === "true" ? true : false;
      };

      RadioButton.prototype.toggle = function () {
        if (this.getValue()) {
          this.unCheck();
        } else {
          this.check();
        }
      };

      RadioButton.prototype.check = function () {
        this._choiceField.setAttribute("aria-checked", "true");

        this._choiceField.classList.add("is-checked");

        this._choiceInput.checked = true;
      };

      RadioButton.prototype.unCheck = function () {
        this._choiceField.setAttribute("aria-checked", "false");

        this._choiceField.classList.remove("is-checked");

        this._choiceInput.checked = false;
      };

      RadioButton.prototype.removeListeners = function () {
        this._choiceField.removeEventListener("focus", this._FocusHandler.bind(this));

        this._choiceField.removeEventListener("blur", this._BlurHandler.bind(this));

        this._choiceField.removeEventListener("click", this._RadioClickHandler.bind(this));

        this._choiceField.addEventListener("keydown", this._RadioKeydownHandler.bind(this));
      };

      RadioButton.prototype._addListeners = function () {
        this._choiceField.addEventListener("focus", this._FocusHandler.bind(this), false);

        this._choiceField.addEventListener("blur", this._BlurHandler.bind(this), false);

        this._choiceField.addEventListener("click", this._RadioClickHandler.bind(this), false);

        this._choiceField.addEventListener("keydown", this._RadioKeydownHandler.bind(this), false);
      };

      RadioButton.prototype._RadioClickHandler = function (event) {
        event.stopPropagation();
        event.preventDefault();

        if (!this._choiceField.classList.contains("is-disabled")) {
          this._dispatchSelectEvent();
        }
      };

      RadioButton.prototype._dispatchSelectEvent = function () {
        var objDict = {
          bubbles: true,
          cancelable: true,
          detail: {
            name: this._choiceField.getAttribute("name"),
            item: this
          }
        };

        this._choiceField.dispatchEvent(new CustomEvent("msChoicefield", objDict));
      };

      RadioButton.prototype._RadioKeydownHandler = function (event) {
        if (event.keyCode === 32) {
          event.stopPropagation();
          event.preventDefault();

          if (!this._choiceField.classList.contains("is-disabled")) {
            this._dispatchSelectEvent();
          }
        }
      };

      RadioButton.prototype._FocusHandler = function () {
        this._choiceField.classList.add("in-focus");
      };

      RadioButton.prototype._BlurHandler = function () {
        this._choiceField.classList.remove("in-focus");
      };

      return RadioButton;
    }();

    var ChoiceFieldGroup$1 = function () {
      function ChoiceFieldGroup(container) {
        this._choiceFieldGroup = container;
        this._choiceFieldComponents = [];

        this._initalSetup();

        this._addListeners();
      }

      ChoiceFieldGroup.prototype.removeListeners = function () {
        this._choiceFieldGroup.removeEventListener("msChoicefield", this._ChoiceFieldHandler.bind(this));
      };

      ChoiceFieldGroup.prototype._initalSetup = function () {
        var choiceFieldElements = this._choiceFieldGroup.querySelectorAll(".ms-RadioButton");

        for (var i = 0; i < choiceFieldElements.length; i++) {
          this._choiceFieldComponents[i] = new RadioButton(choiceFieldElements[i]);
        }
      };

      ChoiceFieldGroup.prototype._addListeners = function () {
        document.addEventListener("msChoicefield", this._ChoiceFieldHandler.bind(this), false);
      };

      ChoiceFieldGroup.prototype._ChoiceFieldHandler = function (event) {
        var name = event.detail.name;
        var selectedChoice = event.detail.item;

        if (this._choiceFieldGroup.id === name) {
          for (var i = 0; i < this._choiceFieldComponents.length; i++) {
            this._choiceFieldComponents[i].unCheck();
          }

          selectedChoice.check();
        }
      };

      return ChoiceFieldGroup;
    }();

    var script$9 = {
      loadStyles: loadThemedStyles.loadStyles,
      beforeMount: function beforeMount() {
        this.$fabric = {
          ChoiceFieldGroup: ChoiceFieldGroup$1
        };
      },
      extends: ChoiceFieldGroup
    };

    /* script */
    const __vue_script__$9 = script$9;

    /* template */

      /* style */
      const __vue_inject_styles__$9 = function (inject) {
        if (!inject) return
        inject("data-v-fcb13a6e_0", { source: ".ms-RadioButton[data-v-fcb13a6e]{font-family:\"Segoe UI WestEuropean\",\"Segoe UI\",-apple-system,BlinkMacSystemFont,Roboto,\"Helvetica Neue\",sans-serif;-webkit-font-smoothing:antialiased;box-sizing:border-box;color:\"[theme:neutralPrimary, default: #333333]\";font-size:14px;font-weight:400;min-height:36px;position:relative}.ms-RadioButton .ms-Label[data-v-fcb13a6e]{font-size:14px;padding:0 0 0 26px;cursor:pointer;display:inline-block}.ms-RadioButton-input[data-v-fcb13a6e]{position:absolute;opacity:0}.ms-RadioButton-field[data-v-fcb13a6e]::before{content:\"\";display:inline-block;border:2px solid \"[theme:neutralTertiary, default: #a6a6a6]\";width:20px;height:20px;cursor:pointer;font-weight:400;position:absolute;box-sizing:border-box;transition-property:border-color;transition-duration:.2s;transition-timing-function:cubic-bezier(.4,0,.23,1);border-radius:50%}.ms-RadioButton-field[data-v-fcb13a6e]::after{content:\"\";width:0;height:0;border-radius:50%;position:absolute;top:8px;left:8px;bottom:0;right:0;transition-property:top,left,width,height;transition-duration:150ms;transition-timing-function:cubic-bezier(.4,0,.23,1);box-sizing:border-box}@media screen and (-ms-high-contrast:active){.ms-RadioButton-field[data-v-fcb13a6e]::after{color:#0f0}}@media screen and (-ms-high-contrast:black-on-white){.ms-RadioButton-field[data-v-fcb13a6e]::after{color:#600000}}.ms-RadioButton-field[data-v-fcb13a6e]{display:inline-block;cursor:pointer;margin-top:8px;position:relative;outline:0;vertical-align:top}.ms-RadioButton-field[data-v-fcb13a6e]:focus::before,.ms-RadioButton-field[data-v-fcb13a6e]:hover::before{border-color:\"[theme:neutralSecondaryAlt, default: #767676]\"}.ms-RadioButton-field:focus .ms-Label[data-v-fcb13a6e],.ms-RadioButton-field:hover .ms-Label[data-v-fcb13a6e]{color:\"[theme:black, default: #000000]\"}.ms-RadioButton-field.is-disabled[data-v-fcb13a6e]{cursor:default}.ms-RadioButton-field.is-disabled[data-v-fcb13a6e]::before{background-color:\"[theme:neutralTertiaryAlt, default: #c8c8c8]\";border-color:\"[theme:neutralTertiaryAlt, default: #c8c8c8]\";color:\"[theme:neutralTertiaryAlt, default: #c8c8c8]\"}@media screen and (-ms-high-contrast:active){.ms-RadioButton-field.is-disabled[data-v-fcb13a6e]::before{border-color:#0f0}}@media screen and (-ms-high-contrast:black-on-white){.ms-RadioButton-field.is-disabled[data-v-fcb13a6e]::before{border-color:#600000}}.ms-RadioButton-field.is-disabled .ms-Label[data-v-fcb13a6e]{color:\"[theme:neutralTertiary, default: #a6a6a6]\"}@media screen and (-ms-high-contrast:active){.ms-RadioButton-field.is-disabled .ms-Label[data-v-fcb13a6e]{color:#0f0}}@media screen and (-ms-high-contrast:black-on-white){.ms-RadioButton-field.is-disabled .ms-Label[data-v-fcb13a6e]{color:#600000}}.ms-RadioButton-field.is-disabled[data-v-fcb13a6e]:focus::before,.ms-RadioButton-field.is-disabled[data-v-fcb13a6e]:hover::before{border-color:\"[theme:neutralTertiaryAlt, default: #c8c8c8]\"}.ms-RadioButton-field.in-focus[data-v-fcb13a6e]::before{border-color:\"[theme:neutralSecondaryAlt, default: #767676]\"}.ms-RadioButton-field.is-checked[data-v-fcb13a6e]::before{border:2px solid \"[theme:themePrimary, default: #0078d7]\";background-color:transparent}@media screen and (-ms-high-contrast:active){.ms-RadioButton-field.is-checked[data-v-fcb13a6e]::before{border-color:#1aebff}}@media screen and (-ms-high-contrast:black-on-white){.ms-RadioButton-field.is-checked[data-v-fcb13a6e]::before{border-color:#37006e}}.ms-RadioButton-field.is-checked[data-v-fcb13a6e]::after{background-color:\"[theme:themePrimary, default: #0078d7]\";top:5px;left:5px;width:10px;height:10px}@media screen and (-ms-high-contrast:active){.ms-RadioButton-field.is-checked[data-v-fcb13a6e]::after{background-color:#1aebff}}@media screen and (-ms-high-contrast:black-on-white){.ms-RadioButton-field.is-checked[data-v-fcb13a6e]::after{background-color:#37006e}}.ms-RadioButton-field.is-checked[data-v-fcb13a6e]:focus::before,.ms-RadioButton-field.is-checked[data-v-fcb13a6e]:hover::before{border-color:\"[theme:themePrimary, default: #0078d7]\"}.ms-RadioButton-field.is-checked.in-focus[data-v-fcb13a6e]::before{border-color:\"[theme:themePrimary, default: #0078d7]\"}.ms-ChoiceFieldGroup[data-v-fcb13a6e]{font-family:\"Segoe UI WestEuropean\",\"Segoe UI\",-apple-system,BlinkMacSystemFont,Roboto,\"Helvetica Neue\",sans-serif;-webkit-font-smoothing:antialiased;margin-bottom:4px}.ms-ChoiceFieldGroup .ms-ChoiceFieldGroup-list[data-v-fcb13a6e]{padding:0;margin:0;list-style:none}", map: undefined, media: undefined });

      };
      /* scoped */
      const __vue_scope_id__$9 = "data-v-fcb13a6e";
      /* module identifier */
      const __vue_module_identifier__$9 = undefined;
      /* functional template */
      const __vue_is_functional_template__$9 = undefined;
      /* style inject */
      const __vue_create_injector__$3 = function(context){ 
                    return function(scopeId, data)
                    {
                        if(window['wizstyle-'+scopeId])
                            return;
                        if(__vue_script__$9.loadStyles)
                            __vue_script__$9.loadStyles(data.source);
                        window['wizstyle-'+scopeId]=true;
                    }
                };
      /* style inject SSR */
      
      /* style inject shadow dom */
      

      
      var uiChoiceFieldGroup = normalizeComponent(
        {},
        __vue_inject_styles__$9,
        __vue_script__$9,
        __vue_scope_id__$9,
        __vue_is_functional_template__$9,
        __vue_module_identifier__$9,
        false,
        __vue_create_injector__$3,
        undefined,
        undefined
      );

    var script$a = {
      name: 'ou-contextual-menu',
      mixins: [type('multiselect'), eventHub],
      props: {
        value: {
          type: Array,
          default: function _default() {
            return [];
          }
        }
      },
      computed: {
        contextualMenuClass: function contextualMenuClass() {
          return _defineProperty({}, "ms-ContextualMenu--".concat(this.type), !!this.type);
        }
      },
      watch: {
        value: function value() {
          this.setChildrenValue();
        }
      },
      created: function created() {
        this.eventHub.$on('updateValue', this.updateValue);
      },
      data: function data() {
        return {
          contextualMenuInstance: null
        };
      },
      mounted: function mounted() {
        this.setChildrenValue();
        this.contextualMenuInstance = new this.$fabric.ContextualMenu(this.$refs.contextualMenu, this.$refs.contextualMenuTrigger);
      },
      beforeDestroy: function beforeDestroy() {
        this.eventHub.$off('updateValue', this.updateValue);
      },
      methods: {
        setChildrenValue: function setChildrenValue() {
          if (this.type == 'multiselect') {
            this.eventHub.$emit('setSelected', this.value);
          }
        },
        updateValue: function updateValue(value) {
          if (this.type != 'multiselect') {
            return;
          }

          var newValue;

          if (this.value.indexOf(value) !== -1) {
            newValue = this.value.filter(function (item) {
              return item !== value;
            });
          } else {
            newValue = this.value.concat(value);
          }

          this.$emit('input', newValue);
        }
      }
    };

    /* script */
    const __vue_script__$a = script$a;

    /* template */
    var __vue_render__$5 = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{staticClass:"inline-block"},[_c('span',{ref:"contextualMenuTrigger",staticClass:"inline-block"},[_vm._t("default")],2),_vm._v(" "),_c('ul',{ref:"contextualMenu",staticClass:"ms-ContextualMenu is-hidden",class:_vm.contextualMenuClass},[_vm._t("list")],2)])};
    var __vue_staticRenderFns__$5 = [];

      /* style */
      const __vue_inject_styles__$a = function (inject) {
        if (!inject) return
        inject("data-v-3132f7cc_0", { source: ".inline-block[data-v-3132f7cc]{display:inline-block}", map: undefined, media: undefined });

      };
      /* scoped */
      const __vue_scope_id__$a = "data-v-3132f7cc";
      /* module identifier */
      const __vue_module_identifier__$a = undefined;
      /* functional template */
      const __vue_is_functional_template__$a = false;
      /* style inject */
      const __vue_create_injector__$4 = function(context){ 
                    return function(scopeId, data)
                    {
                        if(window['wizstyle-'+scopeId])
                            return;
                        if(__vue_script__$a.loadStyles)
                            __vue_script__$a.loadStyles(data.source);
                        window['wizstyle-'+scopeId]=true;
                    }
                };
      /* style inject SSR */
      
      /* style inject shadow dom */
      

      
      var ContextualMenu = normalizeComponent(
        { render: __vue_render__$5, staticRenderFns: __vue_staticRenderFns__$5 },
        __vue_inject_styles__$a,
        __vue_script__$a,
        __vue_scope_id__$a,
        __vue_is_functional_template__$a,
        __vue_module_identifier__$a,
        false,
        __vue_create_injector__$4,
        undefined,
        undefined
      );

    var MODAL_POSITION = "bottom";
    var SUBMENU_POSITION = "right";

    var ContextualMenu$1 = function () {
      function ContextualMenu(container, hostTarget, position) {
        this._container = container;
        this._hostTarget = hostTarget;
        this._position = position ? position : MODAL_POSITION;
        this._isOpen = false;

        this._setOpener(hostTarget);

        this._init();
      }

      ContextualMenu.prototype.getHost = function () {
        return this._host;
      };

      ContextualMenu.prototype._init = function () {
        this._container.addEventListener("click", this._onContextualMenuClick.bind(this), true);

        document.addEventListener("click", this._onDocumentClick.bind(this), false);
      };

      ContextualMenu.prototype._onDocumentClick = function (event) {
        if (event.target instanceof HTMLElement) {
          var target = event.target;
          var classList = target.classList;

          if (!this._hostTarget.contains(target) && !classList.contains("ms-ContextualMenu-link")) {
            this._isOpen = false;
          }
        }
      };

      ContextualMenu.prototype._onContextualMenuClick = function (event) {
        var target = event.target;
        var classList = target.classList;

        if (classList.contains("ms-ContextualMenu-link") && !classList.contains("is-disabled")) {
          if (this._container.classList.contains("ms-ContextualMenu--multiselect")) {
            this._multiSelect(target);
          } else {
            this._singleSelect(target);

            if (!target.parentElement.classList.contains("ms-ContextualMenu-item--hasMenu")) {
              this._host.disposeModal();

              this._isOpen = false;
            }
          }
        }
      };

      ContextualMenu.prototype._multiSelect = function (target) {
        if (target.classList.contains("is-selected")) {
          target.classList.remove("is-selected");
        } else {
          target.classList.add("is-selected");
        }
      };

      ContextualMenu.prototype._singleSelect = function (target) {
        var selecteds = this._container.querySelectorAll(".is-selected");

        var i = selecteds.length;

        while (i--) {
          selecteds[i].classList.remove("is-selected");
        }

        target.classList.add("is-selected");
      };

      ContextualMenu.prototype._toggleMenu = function (event) {
        !this._isOpen ? this._openContextMenu(event) : this._host.disposeModal();
        this._isOpen = !this._isOpen;
      };

      ContextualMenu.prototype._setOpener = function (hostTarget) {
        var _this = this;

        hostTarget.addEventListener("click", function (event) {
          event.preventDefault();

          _this._toggleMenu(event);
        });
      };

      ContextualMenu.prototype._openContextMenu = function (event) {
        this._createModalHostView(this._container, this._position, this._hostTarget);

        this._checkForSubmenus(this._container);
      };

      ContextualMenu.prototype._checkForSubmenus = function (container) {
        var _this = this;

        var submenus = container.querySelectorAll(".ms-ContextualMenu-item.ms-ContextualMenu-item--hasMenu");
        var i = submenus.length;

        if (submenus.length) {
          var _loop_1 = function _loop_1() {
            var button = submenus[i].querySelector(".ms-ContextualMenu-link");
            var menu = submenus[i].querySelector(".ms-ContextualMenu");

            if (menu) {
              var contextualMenu_1 = new ContextualMenu(menu, button, SUBMENU_POSITION);
              menu.addEventListener("hostAdded", function () {
                _this._host.setChildren(contextualMenu_1.getHost());
              });
            }
          };

          while (i--) {
            _loop_1();
          }
        }
      };

      ContextualMenu.prototype._createModalHostView = function (container, position, hostTarget) {
        container.classList.remove("is-hidden");
        this._host = new ContextualHost(container, position, hostTarget, false);
        var event = document.createEvent("Event");
        event.initEvent("hostAdded", true, true);
        container.dispatchEvent(event);
      };

      return ContextualMenu;
    }();

    var script$b = {
      loadStyles: loadThemedStyles.loadStyles,
      beforeMount: function beforeMount() {
        this.$fabric = {
          ContextualMenu: ContextualMenu$1
        };
      },
      mounted: function mounted() {
        var _this = this;

        this.$refs.contextualMenuTrigger.addEventListener("click", function () {
          var setScopeIdForContextualHost = function setScopeIdForContextualHost(contextualhost) {
            contextualhost.setAttribute(_this.$options._scopeId, "");
            Array.prototype.slice.call(contextualhost.children).map(function (c) {
              return c.setAttribute(_this.$options._scopeId, "");
            }); // Array.from(contextualhost.children).map(c=>c.setAttribute(this.$options._scopeId,""));
            // if contextmenu is out of window to the right - we change left to right orientation.

            if (_this.isOutOfViewport(contextualhost).right) {
              contextualhost.style.left = "auto";
              contextualhost.style.right = "10px";
            }
          }; // set scopeId for contextualhost


          setScopeIdForContextualHost(_this.$refs.contextualMenu.parentElement.parentElement); // scopeId for menuItems

          var menuItems = _this.$refs.contextualMenu.querySelectorAll("[class^='ms-ContextualMenu']");

          Array.prototype.slice.call(menuItems).map(function (menuItem) {
            return menuItem.setAttribute(_this.$options._scopeId, "");
          }); // Array.from(menuItems).map(menuItem=>menuItem.setAttribute(this.$options._scopeId, ""));

          var subItems = _this.contextualMenuInstance._container.querySelectorAll(".ms-ContextualMenu-item.ms-ContextualMenu-item--hasMenu"); // Array.from(subItems).map((subItem)=>{


          Array.prototype.slice.call(menuItems).map(function (subItem) {
            subItem.addEventListener("click", function () {
              var contextualMenuElmInsideHost = document.querySelector(".ms-ContextualHost:not([".concat(_this.$options._scopeId, "]) [").concat(_this.$options._scopeId, "]"));
              if (contextualMenuElmInsideHost && contextualMenuElmInsideHost.parentElement.parentElement) setScopeIdForContextualHost(contextualMenuElmInsideHost.parentElement.parentElement);
              if (ContextualHost.hosts[ContextualHost.hosts.length - 1]) ContextualHost.hosts[ContextualHost.hosts.length - 1]._openModal();
            });
          });
        });
      },
      methods: {
        isOutOfViewport: function isOutOfViewport(elem) {
          // Get element bounding
          var bounding = elem.getBoundingClientRect(); // Check if it is out of the viewport on each side

          var out = {};
          out.top = bounding.top < 0;
          out.left = bounding.left < 0;
          out.bottom = bounding.bottom > (window.innerHeight || document.documentElement.clientHeight);
          out.right = bounding.right > (window.innerWidth || document.documentElement.clientWidth);
          out.any = out.top || out.left || out.bottom || out.right;
          out.all = out.top && out.left && out.bottom && out.right;
          return out;
        }
      },
      extends: ContextualMenu
    };

    /* script */
    const __vue_script__$b = script$b;

    /* template */

      /* style */
      const __vue_inject_styles__$b = function (inject) {
        if (!inject) return
        inject("data-v-e7ea7062_0", { source: "@charset \"UTF-8\";.ms-ContextualMenu[data-v-e7ea7062]{font-family:\"Segoe UI WestEuropean\",\"Segoe UI\",-apple-system,BlinkMacSystemFont,Roboto,\"Helvetica Neue\",sans-serif;-webkit-font-smoothing:antialiased;box-sizing:border-box;margin:0;padding:0;-webkit-box-shadow:none;-moz-box-shadow:none;box-shadow:none;color:\"[theme:neutralPrimary, default: #333333]\";font-size:14px;font-weight:400;display:block;min-width:180px;max-width:220px;list-style-type:none;position:relative;background-color:\"[theme:white, default: #ffffff]\"}.ms-ContextualMenu.is-hidden[data-v-e7ea7062]{display:none}.ms-ContextualMenu-item[data-v-e7ea7062]{position:relative}.ms-ContextualMenu-link[data-v-e7ea7062]{box-sizing:border-box;text-decoration:none;color:\"[theme:neutralPrimary, default: #333333]\";border:1px solid transparent;cursor:pointer;display:block;height:36px;overflow:hidden;line-height:34px;padding:0 16px 0 25px;position:relative;text-overflow:ellipsis;white-space:nowrap}.ms-ContextualMenu-link[data-v-e7ea7062]:active,.ms-ContextualMenu-link[data-v-e7ea7062]:focus,.ms-ContextualMenu-link[data-v-e7ea7062]:hover{background-color:\"[theme:neutralLighter, default: #f4f4f4]\";color:\"[theme:neutralDark, default: #212121]\"}.ms-ContextualMenu-link:active .ms-ContextualMenu-subMenuIcon[data-v-e7ea7062],.ms-ContextualMenu-link:focus .ms-ContextualMenu-subMenuIcon[data-v-e7ea7062],.ms-ContextualMenu-link:hover .ms-ContextualMenu-subMenuIcon[data-v-e7ea7062]{color:\"[theme:neutralDark, default: #212121]\"}.ms-ContextualMenu-link[data-v-e7ea7062]:focus{outline:transparent;border:1px solid \"[theme:neutralSecondary, default: #666666]\"}.ms-ContextualMenu-link.is-selected[data-v-e7ea7062]{background-color:\"[theme:neutralQuaternaryAlt, default: #dadada]\";color:\"[theme:black, default: #000000]\";font-weight:600}.ms-ContextualMenu-link.is-selected~.ms-ContextualMenu-subMenuIcon[data-v-e7ea7062]{color:\"[theme:black, default: #000000]\"}.ms-ContextualMenu-link.is-selected[data-v-e7ea7062]:hover{background-color:\"[theme:neutralQuaternary, default: #d0d0d0]\"}.ms-ContextualMenu-link.is-disabled[data-v-e7ea7062]{color:\"[theme:neutralTertiary, default: #a6a6a6]\";background-color:\"[theme:white, default: #ffffff]\";pointer-events:none}.ms-ContextualMenu-link.is-disabled[data-v-e7ea7062]:active,.ms-ContextualMenu-link.is-disabled[data-v-e7ea7062]:focus{border-color:\"[theme:white, default: #ffffff]\"}.ms-ContextualMenu-link.is-disabled .ms-Icon[data-v-e7ea7062]{color:\"[theme:neutralTertiary, default: #a6a6a6]\";pointer-events:none;cursor:default}.ms-ContextualMenu-item.ms-ContextualMenu-item--divider[data-v-e7ea7062]{cursor:default;display:block;height:1px;background-color:\"[theme:neutralLight, default: #eaeaea]\";position:relative}.ms-ContextualMenu-item.ms-ContextualMenu-item--header[data-v-e7ea7062]{color:\"[theme:themePrimary, default: #0078d7]\";font-size:12px;text-transform:uppercase;height:36px;line-height:36px;padding:0 18px}.ms-ContextualMenu-item.ms-ContextualMenu-item--hasMenu .ms-ContextualMenu[data-v-e7ea7062]{position:absolute;top:-1px;left:178px}.ms-ContextualMenu-caretRight[data-v-e7ea7062],.ms-ContextualMenu-subMenuIcon[data-v-e7ea7062]{color:\"[theme:neutralPrimary, default: #333333]\";font-size:8px;font-weight:600;width:24px;height:36px;line-height:36px;position:absolute;text-align:center;top:0;right:0;z-index:1;pointer-events:none}.ms-ContextualMenu.ms-ContextualMenu--multiselect .ms-ContextualMenu-item.ms-ContextualMenu-item--header[data-v-e7ea7062]{padding:0 16px 0 26px}.ms-ContextualMenu.ms-ContextualMenu--multiselect .ms-ContextualMenu-link.is-selected[data-v-e7ea7062]{background-color:\"[theme:white, default: #ffffff]\";font-weight:600;color:\"[theme:neutralPrimary, default: #333333]\"}.ms-ContextualMenu.ms-ContextualMenu--multiselect .ms-ContextualMenu-link.is-selected[data-v-e7ea7062]::after{-moz-osx-font-smoothing:grayscale;-webkit-font-smoothing:antialiased;display:inline-block;font-family:FabricMDL2Icons;font-style:normal;font-weight:400;speak:none;color:\"[theme:neutralPrimary, default: #333333]\";content:\"\";font-size:10px;font-weight:800;height:36px;line-height:36px;position:absolute;left:7px}.ms-ContextualMenu.ms-ContextualMenu--multiselect .ms-ContextualMenu-link.is-selected[data-v-e7ea7062]:focus,.ms-ContextualMenu.ms-ContextualMenu--multiselect .ms-ContextualMenu-link.is-selected[data-v-e7ea7062]:hover{color:\"[theme:neutralDark, default: #212121]\";background-color:\"[theme:neutralLighter, default: #f4f4f4]\"}.ms-ContextualMenu.ms-ContextualMenu--multiselect .ms-ContextualMenu-link.is-selected[data-v-e7ea7062]:focus::after,.ms-ContextualMenu.ms-ContextualMenu--multiselect .ms-ContextualMenu-link.is-selected[data-v-e7ea7062]:hover::after{color:\"[theme:neutralDark, default: #212121]\"}.ms-ContextualMenu.ms-ContextualMenu--multiselect .ms-ContextualMenu-link.is-selected[data-v-e7ea7062]:active{color:\"[theme:black, default: #000000]\";background-color:\"[theme:neutralQuaternary, default: #d0d0d0]\"}.ms-ContextualMenu.ms-ContextualMenu--multiselect .ms-ContextualMenu-link.is-selected[data-v-e7ea7062]:active::after{color:\"[theme:black, default: #000000]\"}.ms-ContextualMenu.ms-ContextualMenu--hasChecks .ms-ContextualMenu-link[data-v-e7ea7062],.ms-ContextualMenu.ms-ContextualMenu--hasIcons .ms-ContextualMenu-link[data-v-e7ea7062]{padding-left:40px}.ms-ContextualMenu.ms-ContextualMenu--hasChecks .ms-Icon[data-v-e7ea7062],.ms-ContextualMenu.ms-ContextualMenu--hasIcons .ms-Icon[data-v-e7ea7062]{position:absolute;top:50%;transform:translateY(-50%);width:40px;text-align:center}.ms-ContextualMenu.ms-ContextualMenu--hasIcons[data-v-e7ea7062]{width:220px}.ms-ContextualHost[data-v-e7ea7062]{font-family:\"Segoe UI WestEuropean\",\"Segoe UI\",-apple-system,BlinkMacSystemFont,Roboto,\"Helvetica Neue\",sans-serif;-webkit-font-smoothing:antialiased;z-index:10;margin:16px auto;position:relative;min-width:10px;display:none;background-color:\"[theme:white, default: #ffffff]\";box-shadow:0 0 5px 0 rgba(0,0,0,.4)}.ms-ContextualHost.is-positioned[data-v-e7ea7062]{position:absolute;margin:0}.ms-ContextualHost.is-open[data-v-e7ea7062]{display:inline-block}.ms-ContextualHost-beak[data-v-e7ea7062]{box-shadow:0 0 15px -5px \"[theme:neutralPrimaryAlt, default: #3c3c3c]\";position:absolute;width:28px;height:28px;background:\"[theme:white, default: #ffffff]\";border:1px solid \"[theme:neutralLight, default: #eaeaea]\";box-sizing:border-box;top:-6px;display:none;-webkit-transform:rotate(45deg);transform:rotate(45deg);z-index:0;outline:1px solid transparent}.ms-ContextualHost.ms-ContextualHost--arrowLeft .ms-ContextualHost-beak[data-v-e7ea7062],.ms-ContextualHost.ms-ContextualHost--arrowRight .ms-ContextualHost-beak[data-v-e7ea7062]{top:40px;display:none}.ms-ContextualHost.ms-ContextualHost--arrowLeft .ms-ContextualHost-beak[data-v-e7ea7062]{left:-10px}.ms-ContextualHost.ms-ContextualHost--arrowRight .ms-ContextualHost-beak[data-v-e7ea7062]{right:-10px}.ms-ContextualHost.ms-ContextualHost--arrowTop .ms-ContextualHost-beak[data-v-e7ea7062]{display:block;top:-10px}.ms-ContextualHost.ms-ContextualHost--arrowBottom .ms-ContextualHost-beak[data-v-e7ea7062]{display:block;bottom:-10px}.ms-ContextualHost-main[data-v-e7ea7062]{position:relative;background-color:\"[theme:white, default: #ffffff]\";box-sizing:border-box;outline:1px solid transparent;z-index:5;min-height:10px}.ms-ContextualHost-close[data-v-e7ea7062]{margin:0;border:0;background:0 0;cursor:pointer;position:absolute;top:12px;right:12px;padding:8px;width:32px;height:32px;font-size:14px;color:\"[theme:neutralSecondary, default: #666666]\";z-index:10}.ms-ContextualHost.ms-ContextualHost--close .ms-ContextualHost-title[data-v-e7ea7062]{margin-right:20px}.ms-ContextualHost.ms-ContextualHost--primaryArrow .ms-ContextualHost-beak[data-v-e7ea7062]{background-color:\"[theme:themePrimary, default: #0078d7]\"}@media (min-width:480px){.ms-ContextualHost[data-v-e7ea7062]{margin:16px}.ms-ContextualHost.is-positioned[data-v-e7ea7062]{margin:0}.ms-ContextualHost.ms-ContextualHost--arrowLeft .ms-ContextualHost-beak[data-v-e7ea7062],.ms-ContextualHost.ms-ContextualHost--arrowRight .ms-ContextualHost-beak[data-v-e7ea7062]{display:block}}@font-face{font-family:FabricMDL2Icons-a13498cf;src:url(https://spoprod-a.akamaihd.net/files/fabric/assets/icons/fabric-icons-a13498cf.woff) format(\"woff\")}.ms-Icon[data-v-e7ea7062]{display:inline-block;font-style:normal;font-weight:400}.ms-Icon.ms-Icon--ChevronRight[data-v-e7ea7062]::before{font-family:FabricMDL2Icons-a13498cf;content:\"\"}.ms-ContextualMenu-link.is-selected[data-v-e7ea7062]::after{display:inline-block;font-style:normal;font-weight:400;font-family:FabricMDL2Icons-a13498cf!important;content:\"\"!important}", map: undefined, media: undefined });

      };
      /* scoped */
      const __vue_scope_id__$b = "data-v-e7ea7062";
      /* module identifier */
      const __vue_module_identifier__$b = undefined;
      /* functional template */
      const __vue_is_functional_template__$b = undefined;
      /* style inject */
      const __vue_create_injector__$5 = function(context){ 
                    return function(scopeId, data)
                    {
                        if(window['wizstyle-'+scopeId])
                            return;
                        if(__vue_script__$b.loadStyles)
                            __vue_script__$b.loadStyles(data.source);
                        window['wizstyle-'+scopeId]=true;
                    }
                };
      /* style inject SSR */
      
      /* style inject shadow dom */
      

      
      var uiContextualMenu = normalizeComponent(
        {},
        __vue_inject_styles__$b,
        __vue_script__$b,
        __vue_scope_id__$b,
        __vue_is_functional_template__$b,
        __vue_module_identifier__$b,
        false,
        __vue_create_injector__$5,
        undefined,
        undefined
      );

    var script$c = {
      name: 'ou-contextual-menu-item',
      mixins: [type('divider', 'header', 'hasMenu'), disabled],
      inject: ['eventHub'],
      data: function data() {
        return {
          selected: false
        };
      },
      props: {
        name: String,
        value: [String, Number]
      },
      computed: {
        hasLink: function hasLink() {
          return this.type == 'hasMenu' || this.type == '';
        },
        hasMenu: function hasMenu() {
          return this.type == 'hasMenu';
        },
        contextualMenuItemClass: function contextualMenuItemClass() {
          return _defineProperty({}, "ms-ContextualMenu-item--".concat(this.type), !!this.type);
        },
        contextualMenuLinkClass: function contextualMenuLinkClass() {
          return {
            'is-disabled': this.disabled,
            'is-selected': this.selected
          };
        }
      },
      created: function created() {
        this.eventHub.$on('setSelected', this.setSelected);
      },
      beforeDestroy: function beforeDestroy() {
        this.eventHub.$off('setSelected', this.setSelected);
      },
      methods: {
        clickEvent: function clickEvent() {
          if (this.value) {
            this.eventHub.$emit('updateValue', this.value);
          } else if (!this.type && !this.disabled) {
            this.$emit('click');
          }
        },
        setSelected: function setSelected(values) {
          if (values.indexOf(this.value) !== -1) {
            this.selected = true;
          } else {
            this.selected = false;
          }
        }
      }
    };

    /* script */
    const __vue_script__$c = script$c;

    /* template */
    var __vue_render__$6 = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('li',{staticClass:"ms-ContextualMenu-item",class:_vm.contextualMenuItemClass},[(_vm.type == 'header')?_c('span',[_vm._v(_vm._s(_vm.name))]):_vm._e(),_vm._v(" "),(_vm.hasLink)?_c('a',{staticClass:"ms-ContextualMenu-link",class:_vm.contextualMenuLinkClass,on:{"click":_vm.clickEvent}},[_vm._v("\n    "+_vm._s(_vm.name)+"\n  ")]):_vm._e(),_vm._v(" "),(_vm.hasMenu)?_c('i',{staticClass:"ms-ContextualMenu-subMenuIcon ms-Icon ms-Icon--ChevronRight"}):_vm._e(),_vm._v(" "),(_vm.hasMenu)?_c('ul',{staticClass:"ms-ContextualMenu is-hidden"},[_vm._t("default")],2):_vm._e()])};
    var __vue_staticRenderFns__$6 = [];

      /* style */
      const __vue_inject_styles__$c = undefined;
      /* scoped */
      const __vue_scope_id__$c = undefined;
      /* module identifier */
      const __vue_module_identifier__$c = undefined;
      /* functional template */
      const __vue_is_functional_template__$c = false;
      /* style inject */
      
      /* style inject SSR */
      
      /* style inject shadow dom */
      

      
      var ContextualMenuItem = normalizeComponent(
        { render: __vue_render__$6, staticRenderFns: __vue_staticRenderFns__$6 },
        __vue_inject_styles__$c,
        __vue_script__$c,
        __vue_scope_id__$c,
        __vue_is_functional_template__$c,
        __vue_module_identifier__$c,
        false,
        undefined,
        undefined,
        undefined
      );

    var script$d = {
      extends: ContextualMenuItem
    };

    /* script */
    const __vue_script__$d = script$d;

    /* template */

      /* style */
      const __vue_inject_styles__$d = undefined;
      /* scoped */
      const __vue_scope_id__$d = undefined;
      /* module identifier */
      const __vue_module_identifier__$d = undefined;
      /* functional template */
      const __vue_is_functional_template__$d = undefined;
      /* style inject */
      
      /* style inject SSR */
      
      /* style inject shadow dom */
      

      
      var uiContextualMenuItem = normalizeComponent(
        {},
        __vue_inject_styles__$d,
        __vue_script__$d,
        __vue_scope_id__$d,
        __vue_is_functional_template__$d,
        __vue_module_identifier__$d,
        false,
        undefined,
        undefined,
        undefined
      );

    //
    //
    //
    //
    //
    //
    //
    //
    //
    //
    //
    //
    //
    //
    //
    //
    //
    //
    //
    //
    //
    //
    var script$e = {
      name: 'ou-command-bar',
      mounted: function mounted() {
        new this.$fabric.CommandBar(this.$refs.commandBar);
      }
    };

    /* script */
    const __vue_script__$e = script$e;

    /* template */
    var __vue_render__$7 = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{ref:"commandBar",staticClass:"ms-CommandBar"},[_c('div',{staticClass:"ms-CommandBar-sideCommands"},[_vm._t("side")],2),_vm._v(" "),_c('div',{staticClass:"ms-CommandBar-mainArea"},[_vm._t("main"),_vm._v(" "),_vm._m(0)],2)])};
    var __vue_staticRenderFns__$7 = [function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{staticClass:"ms-CommandButton ms-CommandBar-overflowButton ms-CommandButton--noLabel"},[_c('button',{staticClass:"ms-CommandButton-button"},[_c('span',{staticClass:"ms-CommandButton-icon"},[_c('i',{staticClass:"ms-Icon ms-Icon--More"})]),_vm._v(" "),_c('span',{staticClass:"ms-CommandButton-label"})]),_vm._v(" "),_c('ul',{staticClass:"ms-ContextualMenu is-opened ms-ContextualMenu--hasIcons"},[_c('li',{staticClass:"ms-ContextualMenu-item"},[_c('a',{staticClass:"ms-ContextualMenu-link"}),_vm._v(" "),_c('i',{staticClass:"ms-Icon ms-Icon--folder"})])])])}];

      /* style */
      const __vue_inject_styles__$e = undefined;
      /* scoped */
      const __vue_scope_id__$e = undefined;
      /* module identifier */
      const __vue_module_identifier__$e = undefined;
      /* functional template */
      const __vue_is_functional_template__$e = false;
      /* style inject */
      
      /* style inject SSR */
      
      /* style inject shadow dom */
      

      
      var commandbar = normalizeComponent(
        { render: __vue_render__$7, staticRenderFns: __vue_staticRenderFns__$7 },
        __vue_inject_styles__$e,
        __vue_script__$e,
        __vue_scope_id__$e,
        __vue_is_functional_template__$e,
        __vue_module_identifier__$e,
        false,
        undefined,
        undefined,
        undefined
      );

    var SB_FIELD = ".ms-SearchBox-field";
    var SB_CLEAR_BUTTON = ".ms-SearchBox-clear";
    var SB_EXIT_BUTTON = ".ms-SearchBox-exit";
    var SB_HAS_TEXT = "has-text";
    var SB_IS_ACTIVE = "is-active";
    var SB_IS_ANIMATED = "is-animated";

    var SearchBox = function () {
      function SearchBox(container) {
        var _this = this;

        this._container = container;

        this._saveDOMRefs(this._container);

        this._boundExpandSearchHandler = this._expandSearchHandler.bind(this);
        this._boundEnableClose = this._enableClose.bind(this);
        this._boundCollapseSearchBox = this._collapseSearchBox.bind(this);
        this._boundClearSearchBox = this._clearSearchBox.bind(this);
        this._boundHandleBlur = this._handleBlur.bind(this);
        this._boundExitSearchBox = this._exitSearchBox.bind(this);

        this._setHasText();

        this._setFocusAction(this._container);

        this._setClearButtonAction();

        this._setBlurAction();

        this._clearOnly = false;
        setTimeout(function () {
          _this._checkState();

          _this._addAnimation();
        }, 10);
      }

      SearchBox.prototype.setCollapsedListeners = function () {
        this._disposeListeners();

        this._searchBox.addEventListener("click", this._boundExpandSearchHandler, false);

        this._searchBoxField.addEventListener("focus", this._boundExpandSearchHandler, true);
      };

      SearchBox.prototype.getInputField = function () {
        return this._searchBoxField;
      };

      SearchBox.prototype._saveDOMRefs = function (context) {
        this._searchBox = context;
        this._searchBoxField = this._searchBox.querySelector(SB_FIELD);
        this._searchBoxClearButton = this._searchBox.querySelector(SB_CLEAR_BUTTON);
        this._searchBoxExitButton = this._searchBox.querySelector(SB_EXIT_BUTTON);
      };

      SearchBox.prototype._disposeListeners = function () {
        this._searchBox.removeEventListener("click", this._boundExpandSearchHandler);

        this._searchBoxField.removeEventListener("focus", this._boundExpandSearchHandler);
      };

      SearchBox.prototype._exitSearchBox = function (event) {
        event.stopPropagation();
        event.target.blur();

        this._clearSearchBox();

        this._collapseSearchBox();

        this._searchBox.removeEventListener("keyup", this._boundEnableClose);

        this.setCollapsedListeners();
      };

      SearchBox.prototype._collapseSearchBox = function () {
        this._searchBox.classList.remove("is-active");

        var event = document.createEvent("Event");
        event.initEvent("searchCollapse", true, true);

        this._searchBoxField.dispatchEvent(event);
      };

      SearchBox.prototype._expandSearchHandler = function () {
        this._disposeListeners();

        this._searchBox.classList.add("is-active");

        this._searchBoxField.focus();
      };

      SearchBox.prototype._enableClose = function () {
        this._setHasText();
      };

      SearchBox.prototype._setHasText = function () {
        if (this._searchBoxField.value.length > 0) {
          this._searchBox.classList.add(SB_HAS_TEXT);
        } else {
          this._searchBox.classList.remove(SB_HAS_TEXT);
        }
      };

      SearchBox.prototype._setFocusAction = function (context) {
        var _this = this;

        this._searchBoxField.addEventListener("focus", function () {
          _this._setHasText();

          _this._searchBox.addEventListener("keyup", _this._boundEnableClose, false);

          _this._searchBox.classList.add(SB_IS_ACTIVE);

          _this._searchBox.classList.add(SB_IS_ACTIVE);
        }, true);
      };

      SearchBox.prototype._clearSearchBox = function (event) {
        var _this = this;

        this._clearOnly = true;
        this._searchBoxField.value = "";

        this._setHasText();

        setTimeout(function () {
          _this._clearOnly = false;
        }, 10);
      };

      SearchBox.prototype._setClearButtonAction = function () {
        var _this = this;

        if (this._searchBoxExitButton) {
          this._searchBoxExitButton.addEventListener("click", this._boundExitSearchBox, false);
        }

        this._searchBoxClearButton.addEventListener("mousedown", this._boundClearSearchBox, false);

        this._searchBoxClearButton.addEventListener("keydown", function (e) {
          var keyCode = e.keyCode;

          if (keyCode === 13) {
            _this._clearSearchBox(e);
          }
        }, false);
      };

      SearchBox.prototype._handleBlur = function (event) {
        var _this = this;

        console.log("_handleBlur");
        if (this._searchBox.classList.contains("ignoreBlur")) return;

        if (!this._clearOnly) {
          this._searchBox.removeEventListener("keyup", this._boundEnableClose);

          setTimeout(function () {
            if (!_this._searchBox.contains(document.activeElement)) {
              _this._clearSearchBox();

              _this._collapseSearchBox();

              _this.setCollapsedListeners();
            }
          }, 10);
        } else {
          this._searchBoxField.focus();
        }

        this._clearOnly = false;
      };

      SearchBox.prototype._setBlurAction = function () {
        this._searchBoxField.addEventListener("blur", this._boundHandleBlur, true);

        this._searchBoxClearButton.addEventListener("blur", this._boundHandleBlur, true);
      };

      SearchBox.prototype._checkState = function () {
        if (this._searchBox.classList.contains("is-collapsed")) {
          this.setCollapsedListeners();
        }
      };

      SearchBox.prototype._addAnimation = function () {
        this._container.classList.add(SB_IS_ANIMATED);
      };

      return SearchBox;
    }();

    var CONTEXT_CLASS = ".ms-ContextualMenu";
    var CB_SPLIT_CLASS = ".ms-CommandButton-splitIcon";
    var CB_BUTTON_CLASS = ".ms-CommandButton-button";
    var MODAL_POSITION$1 = "bottom";

    var CommandButton = function () {
      function CommandButton(container, contextMenu) {
        this._container = container;
        this._command = this._container;
        this._commandButton = this._command.querySelector(CB_BUTTON_CLASS);
        this._splitButton = this._command.querySelector(CB_SPLIT_CLASS);

        if (contextMenu) {
          this._contextualMenu = contextMenu;
        } else {
          this._contextualMenu = this._container.querySelector(CONTEXT_CLASS);
        }

        this._checkForMenu();
      }

      CommandButton.prototype._createModalHostView = function () {
        this._modalHostView = new ContextualHost(this._contextualMenu, MODAL_POSITION$1, this._command, false);
      };

      CommandButton.prototype._setClick = function () {
        if (this._splitButton) {
          this._splitButton.addEventListener("click", this._createModalHostView.bind(this), false);
        } else {
          this._commandButton.addEventListener("click", this._createModalHostView.bind(this), false);
        }
      };

      CommandButton.prototype._checkForMenu = function () {
        if (this._contextualMenu) {
          this._setClick();
        }
      };

      return CommandButton;
    }();

    var CONTEXTUAL_MENU = ".ms-ContextualMenu";
    var CONTEXTUAL_MENU_ITEM = ".ms-ContextualMenu-item";
    var CONTEXTUAL_MENU_LINK = ".ms-ContextualMenu-link";
    var CB_SEARCH_BOX = ".ms-SearchBox";
    var CB_MAIN_AREA = ".ms-CommandBar-mainArea";
    var CB_SIDE_COMMAND_AREA = ".ms-CommandBar-sideCommands";
    var CB_ITEM_OVERFLOW = ".ms-CommandBar-overflowButton";
    var CB_NO_LABEL_CLASS = "ms-CommandButton--noLabel";
    var SEARCH_BOX_CLOSE = ".ms-SearchBox-closeField";
    var COMMAND_BUTTON = ".ms-CommandButton";
    var COMMAND_BUTTON_LABEL = ".ms-CommandButton-label";
    var ICON = ".ms-Icon";
    var OVERFLOW_WIDTH = 40;
    var OVERFLOW_LEFT_RIGHT_PADDING = 30;

    var CommandBar = function () {
      function CommandBar(container) {
        this.responsiveSizes = {
          "sm-min": 320,
          "md-min": 480,
          "lg-min": 640,
          "xl-min": 1024,
          "xxl-min": 1366,
          "xxxl-min": 1920
        };
        this.visibleCommands = [];
        this.commandWidths = [];
        this.overflowCommands = [];
        this.itemCollection = [];
        this._sideAreaCollection = [];
        this.breakpoint = "sm";
        this._container = container;
        this.responsiveSizes["sm-max"] = this.responsiveSizes["md-min"] - 1;
        this.responsiveSizes["md-max"] = this.responsiveSizes["lg-min"] - 1;
        this.responsiveSizes["lg-max"] = this.responsiveSizes["xl-min"] - 1;
        this.responsiveSizes["xl-max"] = this.responsiveSizes["xxl-min"] - 1;
        this.responsiveSizes["xxl-max"] = this.responsiveSizes["xxxl-min"] - 1;

        this._setElements();

        this._setBreakpoint();

        if (this._elements.overflowCommand) {
          this._initOverflow();
        }

        this._setUIState();
      }

      CommandBar.prototype._runsSearchBox = function (state) {
        if (state === void 0) {
          state = "add";
        }

        this._changeSearchState("is-collapsed", state);
      };

      CommandBar.prototype._runOverflow = function () {
        if (this._elements.overflowCommand) {
          this._saveCommandWidths();

          this._redrawMenu();

          this._updateCommands();

          this._drawCommands();

          this._checkOverflow();
        }
      };

      CommandBar.prototype._initOverflow = function () {
        this._createContextualRef();

        this._createItemCollection(this.itemCollection, CB_MAIN_AREA);

        this._createItemCollection(this._sideAreaCollection, CB_SIDE_COMMAND_AREA);

        this._saveCommandWidths();

        this._updateCommands();

        this._drawCommands();

        this._setWindowEvent();

        this._checkOverflow();
      };

      CommandBar.prototype._hasClass = function (element, cls) {
        return (" " + element.className + " ").indexOf(" " + cls + " ") > -1;
      };

      CommandBar.prototype._onSearchExpand = function () {
        if (this.breakpoint === "lg") {
          this._container.classList.add("search-expanded");

          this._doResize();
        }
      };

      CommandBar.prototype._onSearchCollapse = function () {
        if (this.breakpoint === "lg") {
          this._container.classList.remove("search-expanded");

          this._doResize();
        }
      };

      CommandBar.prototype._getScreenSize = function () {
        var w = window;
        var wSize = {
          x: 0,
          y: 0
        };
        var d = document,
            e = d.documentElement,
            g = d.getElementsByTagName("body")[0];
        wSize.x = w.innerWidth || e.clientWidth || g.clientWidth;
        wSize.y = w.innerHeight || e.clientHeight || g.clientHeight;
        return wSize;
      };

      CommandBar.prototype._setBreakpoint = function () {
        var screenSize = this._getScreenSize().x;

        switch (true) {
          case screenSize <= this.responsiveSizes["sm-max"]:
            this.breakpoint = "sm";
            break;

          case screenSize >= this.responsiveSizes["md-min"] && screenSize <= this.responsiveSizes["md-max"]:
            this.breakpoint = "md";
            break;

          case screenSize >= this.responsiveSizes["lg-min"] && screenSize <= this.responsiveSizes["lg-max"]:
            this.breakpoint = "lg";
            break;

          case screenSize >= this.responsiveSizes["xl-min"] && screenSize <= this.responsiveSizes["xl-max"]:
            this.breakpoint = "xl";
            break;

          case screenSize >= this.responsiveSizes["xxl-min"] && screenSize <= this.responsiveSizes["xxl-max"]:
            this.breakpoint = "xxl";
            break;

          case screenSize >= this.responsiveSizes["xxxl-min"]:
            this.breakpoint = "xxxl";
            break;
        }
      };

      CommandBar.prototype._createSearchInstance = function () {
        if (this._elements.searchBox) {
          return new SearchBox(this._elements.searchBox);
        } else {
          return false;
        }
      };

      CommandBar.prototype._changeSearchState = function (state, action) {
        if (this._elements.searchBox) {
          switch (action) {
            case "remove":
              this._elements.searchBox.classList.remove(state);

              break;

            case "add":
              this._elements.searchBox.classList.add(state);

              break;
          }
        }
      };

      CommandBar.prototype._setElements = function () {
        var _this = this;

        this._elements = {
          mainArea: this._container.querySelector(CB_MAIN_AREA)
        };

        if (this._container.querySelector(CB_SIDE_COMMAND_AREA)) {
          this._elements.sideCommandArea = this._container.querySelector(CB_SIDE_COMMAND_AREA);
        }

        if (this._container.querySelector(CB_ITEM_OVERFLOW)) {
          this._elements.overflowCommand = this._container.querySelector(CB_ITEM_OVERFLOW);
          this._elements.contextMenu = this._container.querySelector(CB_ITEM_OVERFLOW).querySelector(CONTEXTUAL_MENU);
        }

        if (this._container.querySelector(CB_MAIN_AREA + " " + CB_SEARCH_BOX)) {
          this._elements.searchBox = this._container.querySelector(CB_MAIN_AREA + " " + CB_SEARCH_BOX);
          this._elements.searchBoxClose = this._container.querySelector(SEARCH_BOX_CLOSE);
          this.searchBoxInstance = this._createSearchInstance();
          this.searchBoxInstance.getInputField().addEventListener("focus", function () {
            _this._onSearchExpand();
          }, false);
          this.searchBoxInstance.getInputField().addEventListener("searchCollapse", function () {
            _this._onSearchCollapse();
          }, false);
        }
      };

      CommandBar.prototype._createItemCollection = function (iCollection, areaClass) {
        var item,
            label,
            iconClasses,
            splitClasses,
            items = this._container.querySelectorAll(areaClass + " > " + COMMAND_BUTTON + ":not(" + CB_ITEM_OVERFLOW + ")");

        this._commandButtonInstance = new CommandButton(this._elements.overflowCommand);

        for (var i = 0; i < items.length; i++) {
          item = items[i];
          label = item.querySelector(COMMAND_BUTTON_LABEL).textContent;
          var icon = item.querySelector(ICON);

          if (icon) {
            iconClasses = icon.className;
            splitClasses = iconClasses.split(" ");

            for (var o = 0; o < splitClasses.length; o++) {
              if (splitClasses[o].indexOf(ICON.replace(".", "") + "--") > -1) {
                icon = splitClasses[o];
                break;
              }
            }
          }

          iCollection.push({
            item: item,
            label: label,
            icon: icon,
            isCollapsed: item.classList.contains(CB_NO_LABEL_CLASS) ? true : false,
            commandButtonRef: new CommandButton(item)
          });
        }

        return;
      };

      CommandBar.prototype._createContextualRef = function () {
        this.contextualItemContainerRef = this._elements.contextMenu.querySelector(CONTEXTUAL_MENU_ITEM).cloneNode(true);
        this.contextualItemLink = this._elements.contextMenu.querySelector(CONTEXTUAL_MENU_LINK).cloneNode(false);
        this.contextualItemIcon = this._elements.contextMenu.querySelector(".ms-Icon").cloneNode(false);
        this._elements.contextMenu.innerHTML = "";
      };

      CommandBar.prototype._getElementWidth = function (element) {
        var width, styles;

        if (element.offsetParent === null) {
          element.setAttribute("style", "position: absolute; opacity: 0; display: block;");
        }

        width = element.getBoundingClientRect().width;
        styles = window.getComputedStyle(element);
        width += parseInt(styles.marginLeft, 10) + parseInt(styles.marginRight, 10);
        element.setAttribute("style", "");
        return width;
      };

      CommandBar.prototype._saveCommandWidths = function () {
        for (var i = 0; i < this.itemCollection.length; i++) {
          var item = this.itemCollection[i].item;

          var width = this._getElementWidth(item);

          this.commandWidths[i] = width;
        }
      };

      CommandBar.prototype._updateCommands = function () {
        var searchCommandWidth = 0;

        var mainAreaWidth = this._elements.mainArea.getBoundingClientRect().width;

        if (this._elements.searchBox) {
          searchCommandWidth = this._getElementWidth(this._elements.searchBox);
        }

        var offset = searchCommandWidth + OVERFLOW_WIDTH + OVERFLOW_LEFT_RIGHT_PADDING;
        var totalAreaWidth = mainAreaWidth - offset;
        this.visibleCommands = [];
        this.overflowCommands = [];
        var totalWidths = 0;

        for (var i = 0; i < this.itemCollection.length; i++) {
          totalWidths += this.commandWidths[i];

          if (totalWidths < totalAreaWidth) {
            this.visibleCommands.push(this.itemCollection[i]);
          } else {
            this.overflowCommands.push(this.itemCollection[i]);
          }
        }
      };

      CommandBar.prototype._drawCommands = function () {
        this._elements.contextMenu.innerHTML = "";

        for (var i = 0; i < this.overflowCommands.length; i++) {
          this.overflowCommands[i].item.classList.add("is-hidden");
          var newCItem = this.contextualItemContainerRef.cloneNode(false);
          var newClink = this.contextualItemLink.cloneNode(false);
          var iconClass = this.overflowCommands[i].icon;
          newClink.innerText = this.overflowCommands[i].label;
          newCItem.appendChild(newClink);

          if (iconClass) {
            var newIcon = this.contextualItemIcon.cloneNode(false);
            newIcon.className = ICON.replace(".", "") + " " + iconClass;
            newCItem.appendChild(newIcon);
          }

          this._elements.contextMenu.appendChild(newCItem);
        }

        for (var x = 0; x < this.visibleCommands.length; x++) {
          this.visibleCommands[x].item.classList.remove("is-hidden");
        }
      };

      CommandBar.prototype._setWindowEvent = function () {
        var _this = this;

        window.addEventListener("resize", function () {
          _this._doResize();
        }, false);
      };

      CommandBar.prototype._processCollapsedClasses = function (type) {
        for (var i = 0; i < this.itemCollection.length; i++) {
          var thisItem = this.itemCollection[i];

          if (!thisItem.isCollapsed) {
            if (type === "add") {
              thisItem.item.classList.add(CB_NO_LABEL_CLASS);
            } else {
              thisItem.item.classList.remove(CB_NO_LABEL_CLASS);
            }
          }
        }

        for (var i = 0; i < this._sideAreaCollection.length; i++) {
          var thisItem = this._sideAreaCollection[i];

          if (!thisItem.isCollapsed) {
            if (type === "add") {
              thisItem.item.classList.add(CB_NO_LABEL_CLASS);
            } else {
              thisItem.item.classList.remove(CB_NO_LABEL_CLASS);
            }
          }
        }
      };

      CommandBar.prototype._setUIState = function () {
        switch (this.breakpoint) {
          case "sm":
            this._runsSearchBox();

            this._processCollapsedClasses("add");

            this._runOverflow();

            break;

          case "md":
            this._runsSearchBox();

            this._processCollapsedClasses("add");

            this._runOverflow();

            break;

          case "lg":
            this._runsSearchBox();

            this._processCollapsedClasses("remove");

            this._runOverflow();

            break;

          case "xl":
            this._runsSearchBox("remove");

            this._processCollapsedClasses("remove");

            this._runOverflow();

            break;

          default:
            this._runsSearchBox("remove");

            this._processCollapsedClasses("remove");

            this._runOverflow();

            break;
        }
      };

      CommandBar.prototype._checkOverflow = function () {
        if (this.overflowCommands.length > 0) {
          this._elements.overflowCommand.classList.remove("is-hidden");
        } else {
          this._elements.overflowCommand.classList.add("is-hidden");

          if (this.activeCommand === this._elements.overflowCommand) {
            this._elements.contextMenu.classList.remove("is-open");
          }
        }
      };

      CommandBar.prototype._redrawMenu = function () {
        var left;

        if (this._hasClass(this._elements.contextMenu, "is-open")) {
          left = this.activeCommand.getBoundingClientRect().left;

          this._drawOverflowMenu(left);
        }
      };

      CommandBar.prototype._drawOverflowMenu = function (left) {
        this._elements.contextMenu.setAttribute("style", "left: " + left + "px; transform: translateX(-50%)");
      };

      CommandBar.prototype._doResize = function () {
        this._setBreakpoint();

        this._setUIState();
      };

      return CommandBar;
    }();

    var script$f = {
      loadStyles: loadThemedStyles.loadStyles,
      beforeMount: function beforeMount() {
        this.$fabric = {
          CommandBar: CommandBar
        };
      },
      extends: commandbar
    };

    /* script */
    const __vue_script__$f = script$f;

    /* template */

      /* style */
      const __vue_inject_styles__$f = function (inject) {
        if (!inject) return
        inject("data-v-458a6beb_0", { source: "@charset \"UTF-8\";.ms-CommandBar{font-family:\"Segoe UI WestEuropean\",\"Segoe UI\",-apple-system,BlinkMacSystemFont,Roboto,\"Helvetica Neue\",sans-serif;-webkit-font-smoothing:antialiased;background-color:\"[theme:neutralLighter, default: #f4f4f4]\";height:40px;white-space:nowrap;padding-left:0;border:0;position:relative}.ms-CommandBar:focus{outline:0}.ms-CommandBar .ms-CommandButton--actionButton{border-right:1px solid \"[theme:neutralLight, default: #eaeaea]\"}.ms-CommandBar .ms-Button{height:100%}.ms-CommandBar .ms-Button.ms-Button--noLabel .ms-Button-icon{padding-right:0}.ms-CommandBar .ms-Button.is-hidden{display:none}.ms-CommandBar .ms-SearchBox,.ms-CommandBar .ms-SearchBox-field,.ms-CommandBar .ms-SearchBox-label{height:100%}.ms-CommandBar .ms-SearchBox{display:inline-block;vertical-align:top;transition:margin-right 267ms}.ms-CommandBar .ms-SearchBox.ms-SearchBox--commandBar.is-collapsed.is-active{width:220px}@media only screen and (max-width:639px){.ms-CommandBar .ms-SearchBox.ms-SearchBox--commandBar.is-collapsed.is-active{width:100%;position:absolute;left:0;right:0;z-index:10}}.ms-CommandBar .ms-CommandBar-overflowButton .ms-CommandButton-button{font-size:18px;padding:0 11px}@media only screen and (min-width:1024px){.ms-CommandBar .ms-SearchBox{margin-right:24px}}@media only screen and (max-width:639px){.ms-CommandBar{height:44px}}@media only screen and (min-width:640px){.ms-CommandBar.search-expanded .ms-SearchBox{margin-right:8px}.ms-CommandBar .ms-SearchBox.ms-SearchBox--commandBar.is-collapsed{transition:none}}.ms-CommandBar-mainArea{overflow-x:hidden;display:block;height:100%;overflow:hidden}.ms-CommandBar-sideCommands{float:right;text-align:right;width:auto;padding-right:4px;height:100%}.ms-CommandBar-sideCommands .ms-Button:last-child{margin-right:0}@media only screen and (min-width:640px){.ms-CommandBar-sideCommands{min-width:128px}}@media only screen and (min-width:1024px){.ms-CommandBar-sideCommands{padding-right:20px}}.ms-CommandButton{font-family:\"Segoe UI WestEuropean\",\"Segoe UI\",-apple-system,BlinkMacSystemFont,Roboto,\"Helvetica Neue\",sans-serif;-webkit-font-smoothing:antialiased;display:inline-block;position:relative;vertical-align:top}.ms-CommandButton.is-hidden{display:none}.ms-CommandButton.is-disabled .ms-CommandButton-button,.ms-CommandButton:disabled .ms-CommandButton-button{cursor:default}.ms-CommandButton.is-disabled .ms-CommandButton-button:hover,.ms-CommandButton:disabled .ms-CommandButton-button:hover{background-color:\"[theme:themeLighterAlt, default: #eff6fc]\"}.ms-CommandButton.is-disabled .ms-CommandButton-button .ms-CommandButton-label,.ms-CommandButton:disabled .ms-CommandButton-button .ms-CommandButton-label{color:\"[theme:neutralTertiary, default: #a6a6a6]\"}.ms-CommandButton.is-disabled .ms-CommandButton-button .ms-CommandButton-icon,.ms-CommandButton:disabled .ms-CommandButton-button .ms-CommandButton-icon{color:\"[theme:neutralTertiary, default: #a6a6a6]\"}.ms-CommandButton .ms-ContextualMenu{display:none}.ms-CommandButton-button,.ms-CommandButton-splitIcon{box-sizing:border-box;margin:0;padding:0;-webkit-box-shadow:none;-moz-box-shadow:none;box-shadow:none;color:\"[theme:neutralPrimary, default: #333333]\";font-size:14px;font-weight:400;cursor:pointer;display:inline-block;height:40px;line-height:40px;outline:1px solid transparent;padding:0 8px;position:relative;vertical-align:top;background:0 0}.ms-CommandButton-button:hover,.ms-CommandButton-splitIcon:hover{background-color:\"[theme:neutralLight, default: #eaeaea]\"}.ms-CommandButton-button:hover .ms-CommandButton-label,.ms-CommandButton-splitIcon:hover .ms-CommandButton-label{color:\"[theme:neutralDark, default: #212121]\"}.ms-CommandButton-button:active,.ms-CommandButton-splitIcon:active{background-color:\"[theme:neutralLight, default: #eaeaea]\"}.ms-CommandButton-button:focus::before,.ms-CommandButton-splitIcon:focus::before{top:3px;left:3px;right:3px;bottom:3px;border:1px solid \"[theme:neutralPrimary, default: #333333]\";position:absolute;z-index:10;content:\"\";outline:0}.ms-CommandButton-button:focus,.ms-CommandButton-splitIcon:focus{outline:0}@media only screen and (max-width:639px){.ms-CommandButton-button,.ms-CommandButton-splitIcon{height:44px}.ms-CommandButton-button .ms-CommandButton-icon,.ms-CommandButton-splitIcon .ms-CommandButton-icon{font-size:20px}.ms-CommandButton-button .ms-CommandButton-label,.ms-CommandButton-splitIcon .ms-CommandButton-label{line-height:44px}}.ms-CommandButton-button{border:0;margin:0}.ms-CommandButton+.ms-CommandButton{margin-left:8px}@media only screen and (max-width:639px){.ms-CommandButton+.ms-CommandButton{margin-left:4px}}.ms-CommandButton-icon{display:inline-block;margin-right:8px;position:relative;font-size:16px;min-width:16px;height:100%}.ms-CommandButton-icon .ms-Icon{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.ms-CommandButton-label{font-size:14px;font-weight:400;color:\"[theme:neutralPrimary, default: #333333]\";line-height:40px;height:100%;display:inline-block;vertical-align:top}.ms-CommandButton-label:hover{color:\"[theme:neutralDark, default: #212121]\"}.ms-CommandButton-dropdownIcon,.ms-CommandButton-splitIcon{display:inline-block;position:relative;color:\"[theme:neutralPrimary, default: #333333]\";font-size:12px;font-weight:300;min-width:12px;height:100%;vertical-align:top;margin-left:8px}.ms-CommandButton-dropdownIcon .ms-Icon,.ms-CommandButton-splitIcon .ms-Icon{line-height:normal;padding-top:16px}.ms-CommandButton-dropdownIcon:focus::before,.ms-CommandButton-splitIcon:focus::before{top:3px;left:3px;right:3px;bottom:3px;border:1px solid \"[theme:neutralPrimary, default: #333333]\";position:absolute;z-index:10;content:\"\";outline:0}@media only screen and (max-width:639px){.ms-CommandButton-dropdownIcon,.ms-CommandButton-splitIcon{display:none}}.ms-CommandButton-splitIcon{margin-left:-2px;width:27px;border:0}.ms-CommandButton-splitIcon .ms-Icon{margin-left:-1px;position:relative;padding-top:16px}.ms-CommandButton-splitIcon .ms-Icon::after{position:absolute;content:\" \";width:1px;height:16px;top:12px;left:-8px;border-left:1px solid \"[theme:neutralTertiaryAlt, default: #c8c8c8]\"}.ms-CommandButton.ms-CommandButton--noLabel .ms-CommandButton-icon{margin-right:0}.ms-CommandButton.ms-CommandButton--noLabel .ms-CommandButton-label{display:none}.ms-CommandButton.ms-CommandButton--noLabel .ms-CommandButton-button{padding:0 12px}.ms-CommandButton.ms-CommandButton--inline .ms-CommandButton-button{background:0 0}.ms-CommandButton.ms-CommandButton--actionButton .ms-CommandButton-button{width:50px;height:40px}.ms-CommandButton.ms-CommandButton--actionButton .ms-CommandButton-icon{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);width:16px;height:16px;padding-right:0}.ms-CommandButton.ms-CommandButton--pivot.is-active::before{content:\"\";height:2px;position:absolute;left:0;right:0;background-color:\"[theme:themePrimary, default: #0078d7]\";bottom:0;z-index:5}.ms-CommandButton.ms-CommandButton--pivot:hover::before{content:\"\";height:2px;position:absolute;left:0;right:0;background-color:\"[theme:themePrimary, default: #0078d7]\";bottom:0;z-index:5}.ms-CommandButton.ms-CommandButton--pivot .ms-CommandButton-label,.ms-CommandButton.ms-CommandButton--textOnly .ms-CommandButton-label{display:inline-block}@media only screen and (max-width:479px){.ms-CommandButton.ms-CommandButton--pivot .ms-CommandButton-label,.ms-CommandButton.ms-CommandButton--textOnly .ms-CommandButton-label{font-size:16px}}.ms-ContextualMenu{font-family:\"Segoe UI WestEuropean\",\"Segoe UI\",-apple-system,BlinkMacSystemFont,Roboto,\"Helvetica Neue\",sans-serif;-webkit-font-smoothing:antialiased;box-sizing:border-box;margin:0;padding:0;-webkit-box-shadow:none;-moz-box-shadow:none;box-shadow:none;color:\"[theme:neutralPrimary, default: #333333]\";font-size:14px;font-weight:400;display:block;min-width:180px;max-width:220px;list-style-type:none;position:relative;background-color:\"[theme:white, default: #ffffff]\"}.ms-ContextualMenu.is-hidden{display:none}.ms-ContextualMenu-item{position:relative}.ms-ContextualMenu-link{box-sizing:border-box;text-decoration:none;color:\"[theme:neutralPrimary, default: #333333]\";border:1px solid transparent;cursor:pointer;display:block;height:36px;overflow:hidden;line-height:34px;padding:0 16px 0 25px;position:relative;text-overflow:ellipsis;white-space:nowrap}.ms-ContextualMenu-link:active,.ms-ContextualMenu-link:focus,.ms-ContextualMenu-link:hover{background-color:\"[theme:neutralLighter, default: #f4f4f4]\";color:\"[theme:neutralDark, default: #212121]\"}.ms-ContextualMenu-link:active .ms-ContextualMenu-subMenuIcon,.ms-ContextualMenu-link:focus .ms-ContextualMenu-subMenuIcon,.ms-ContextualMenu-link:hover .ms-ContextualMenu-subMenuIcon{color:\"[theme:neutralDark, default: #212121]\"}.ms-ContextualMenu-link:focus{outline:transparent;border:1px solid \"[theme:neutralSecondary, default: #666666]\"}.ms-ContextualMenu-link.is-selected{background-color:\"[theme:neutralQuaternaryAlt, default: #dadada]\";color:\"[theme:black, default: #000000]\";font-weight:600}.ms-ContextualMenu-link.is-selected~.ms-ContextualMenu-subMenuIcon{color:\"[theme:black, default: #000000]\"}.ms-ContextualMenu-link.is-selected:hover{background-color:\"[theme:neutralQuaternary, default: #d0d0d0]\"}.ms-ContextualMenu-link.is-disabled{color:\"[theme:neutralTertiary, default: #a6a6a6]\";background-color:\"[theme:white, default: #ffffff]\";pointer-events:none}.ms-ContextualMenu-link.is-disabled:active,.ms-ContextualMenu-link.is-disabled:focus{border-color:\"[theme:white, default: #ffffff]\"}.ms-ContextualMenu-link.is-disabled .ms-Icon{color:\"[theme:neutralTertiary, default: #a6a6a6]\";pointer-events:none;cursor:default}.ms-ContextualMenu-item.ms-ContextualMenu-item--divider{cursor:default;display:block;height:1px;background-color:\"[theme:neutralLight, default: #eaeaea]\";position:relative}.ms-ContextualMenu-item.ms-ContextualMenu-item--header{color:\"[theme:themePrimary, default: #0078d7]\";font-size:12px;text-transform:uppercase;height:36px;line-height:36px;padding:0 18px}.ms-ContextualMenu-item.ms-ContextualMenu-item--hasMenu .ms-ContextualMenu{position:absolute;top:-1px;left:178px}.ms-ContextualMenu-caretRight,.ms-ContextualMenu-subMenuIcon{color:\"[theme:neutralPrimary, default: #333333]\";font-size:8px;font-weight:600;width:24px;height:36px;line-height:36px;position:absolute;text-align:center;top:0;right:0;z-index:1;pointer-events:none}.ms-ContextualMenu.ms-ContextualMenu--multiselect .ms-ContextualMenu-item.ms-ContextualMenu-item--header{padding:0 16px 0 26px}.ms-ContextualMenu.ms-ContextualMenu--multiselect .ms-ContextualMenu-link.is-selected{background-color:\"[theme:white, default: #ffffff]\";font-weight:600;color:\"[theme:neutralPrimary, default: #333333]\"}.ms-ContextualMenu.ms-ContextualMenu--multiselect .ms-ContextualMenu-link.is-selected::after{-moz-osx-font-smoothing:grayscale;-webkit-font-smoothing:antialiased;display:inline-block;font-family:FabricMDL2Icons;font-style:normal;font-weight:400;speak:none;color:\"[theme:neutralPrimary, default: #333333]\";content:\"\";font-size:10px;font-weight:800;height:36px;line-height:36px;position:absolute;left:7px}.ms-ContextualMenu.ms-ContextualMenu--multiselect .ms-ContextualMenu-link.is-selected:focus,.ms-ContextualMenu.ms-ContextualMenu--multiselect .ms-ContextualMenu-link.is-selected:hover{color:\"[theme:neutralDark, default: #212121]\";background-color:\"[theme:neutralLighter, default: #f4f4f4]\"}.ms-ContextualMenu.ms-ContextualMenu--multiselect .ms-ContextualMenu-link.is-selected:focus::after,.ms-ContextualMenu.ms-ContextualMenu--multiselect .ms-ContextualMenu-link.is-selected:hover::after{color:\"[theme:neutralDark, default: #212121]\"}.ms-ContextualMenu.ms-ContextualMenu--multiselect .ms-ContextualMenu-link.is-selected:active{color:\"[theme:black, default: #000000]\";background-color:\"[theme:neutralQuaternary, default: #d0d0d0]\"}.ms-ContextualMenu.ms-ContextualMenu--multiselect .ms-ContextualMenu-link.is-selected:active::after{color:\"[theme:black, default: #000000]\"}.ms-ContextualMenu.ms-ContextualMenu--hasChecks .ms-ContextualMenu-link,.ms-ContextualMenu.ms-ContextualMenu--hasIcons .ms-ContextualMenu-link{padding-left:40px}.ms-ContextualMenu.ms-ContextualMenu--hasChecks .ms-Icon,.ms-ContextualMenu.ms-ContextualMenu--hasIcons .ms-Icon{position:absolute;top:50%;transform:translateY(-50%);width:40px;text-align:center}.ms-ContextualMenu.ms-ContextualMenu--hasIcons{width:220px}.ms-ContextualHost{font-family:\"Segoe UI WestEuropean\",\"Segoe UI\",-apple-system,BlinkMacSystemFont,Roboto,\"Helvetica Neue\",sans-serif;-webkit-font-smoothing:antialiased;z-index:10;margin:16px auto;position:relative;min-width:10px;display:none;background-color:\"[theme:white, default: #ffffff]\";box-shadow:0 0 5px 0 rgba(0,0,0,.4)}.ms-ContextualHost.is-positioned{position:absolute;margin:0}.ms-ContextualHost.is-open{display:inline-block}.ms-ContextualHost-beak{box-shadow:0 0 15px -5px \"[theme:neutralPrimaryAlt, default: #3c3c3c]\";position:absolute;width:28px;height:28px;background:\"[theme:white, default: #ffffff]\";border:1px solid \"[theme:neutralLight, default: #eaeaea]\";box-sizing:border-box;top:-6px;display:none;-webkit-transform:rotate(45deg);transform:rotate(45deg);z-index:0;outline:1px solid transparent}.ms-ContextualHost.ms-ContextualHost--arrowLeft .ms-ContextualHost-beak,.ms-ContextualHost.ms-ContextualHost--arrowRight .ms-ContextualHost-beak{top:40px;display:none}.ms-ContextualHost.ms-ContextualHost--arrowLeft .ms-ContextualHost-beak{left:-10px}.ms-ContextualHost.ms-ContextualHost--arrowRight .ms-ContextualHost-beak{right:-10px}.ms-ContextualHost.ms-ContextualHost--arrowTop .ms-ContextualHost-beak{display:block;top:-10px}.ms-ContextualHost.ms-ContextualHost--arrowBottom .ms-ContextualHost-beak{display:block;bottom:-10px}.ms-ContextualHost-main{position:relative;background-color:\"[theme:white, default: #ffffff]\";box-sizing:border-box;outline:1px solid transparent;z-index:5;min-height:10px}.ms-ContextualHost-close{margin:0;border:0;background:0 0;cursor:pointer;position:absolute;top:12px;right:12px;padding:8px;width:32px;height:32px;font-size:14px;color:\"[theme:neutralSecondary, default: #666666]\";z-index:10}.ms-ContextualHost.ms-ContextualHost--close .ms-ContextualHost-title{margin-right:20px}.ms-ContextualHost.ms-ContextualHost--primaryArrow .ms-ContextualHost-beak{background-color:\"[theme:themePrimary, default: #0078d7]\"}@media (min-width:480px){.ms-ContextualHost{margin:16px}.ms-ContextualHost.is-positioned{margin:0}.ms-ContextualHost.ms-ContextualHost--arrowLeft .ms-ContextualHost-beak,.ms-ContextualHost.ms-ContextualHost--arrowRight .ms-ContextualHost-beak{display:block}}.inline-block{display:inline-block}@font-face{font-family:FabricMDL2Icons-a13498cf;src:url(https://spoprod-a.akamaihd.net/files/fabric/assets/icons/fabric-icons-a13498cf.woff) format(\"woff\")}.ms-Icon{display:inline-block;font-style:normal;font-weight:400}.ms-Icon.ms-Icon--More::before{font-family:FabricMDL2Icons-a13498cf;content:\"\"}", map: undefined, media: undefined });

      };
      /* scoped */
      const __vue_scope_id__$f = undefined;
      /* module identifier */
      const __vue_module_identifier__$f = undefined;
      /* functional template */
      const __vue_is_functional_template__$f = undefined;
      /* style inject */
      const __vue_create_injector__$6 = function(context){ 
                    return function(scopeId, data)
                    {
                        if(window['wizstyle-'+scopeId])
                            return;
                        if(__vue_script__$f.loadStyles)
                            __vue_script__$f.loadStyles(data.source);
                        window['wizstyle-'+scopeId]=true;
                    }
                };
      /* style inject SSR */
      
      /* style inject shadow dom */
      

      
      var uiCommandBar = normalizeComponent(
        {},
        __vue_inject_styles__$f,
        __vue_script__$f,
        __vue_scope_id__$f,
        __vue_is_functional_template__$f,
        __vue_module_identifier__$f,
        false,
        __vue_create_injector__$6,
        undefined,
        undefined
      );

    var script$g = {
      name: 'ou-command-button',
      mixins: [type('noLabel', 'inline', 'dropdown'), disabled, icon],
      computed: {
        commandButtonClass: function commandButtonClass() {
          var _ref;

          return _ref = {}, _defineProperty(_ref, "ms-CommandButton--".concat(this.type), !!this.type), _defineProperty(_ref, 'is-disabled', this.disabled), _ref;
        }
      },
      methods: {
        clickEvent: function clickEvent() {
          if (!this.disabled) {
            this.$emit('click');
          }
        }
      }
    };

    /* script */
    const __vue_script__$g = script$g;

    /* template */
    var __vue_render__$8 = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{staticClass:"ms-CommandButton",class:_vm.commandButtonClass,on:{"click":_vm.clickEvent}},[_c('button',{staticClass:"ms-CommandButton-button"},[(_vm.icon)?_c('span',{staticClass:"ms-CommandButton-icon ms-fontColor-themePrimary"},[_c('i',{staticClass:"ms-Icon",class:_vm.iconClass})]):_vm._e(),_vm._v(" "),_c('span',{staticClass:"ms-CommandButton-label"},[_vm._t("default")],2),_vm._v(" "),(_vm.type == 'dropdown')?_c('span',{staticClass:"ms-CommandButton-dropdownIcon"},[_c('i',{staticClass:"ms-Icon ms-Icon--ChevronDown"})]):_vm._e()])])};
    var __vue_staticRenderFns__$8 = [];

      /* style */
      const __vue_inject_styles__$g = undefined;
      /* scoped */
      const __vue_scope_id__$g = undefined;
      /* module identifier */
      const __vue_module_identifier__$g = undefined;
      /* functional template */
      const __vue_is_functional_template__$g = false;
      /* style inject */
      
      /* style inject SSR */
      
      /* style inject shadow dom */
      

      
      var commandbutton = normalizeComponent(
        { render: __vue_render__$8, staticRenderFns: __vue_staticRenderFns__$8 },
        __vue_inject_styles__$g,
        __vue_script__$g,
        __vue_scope_id__$g,
        __vue_is_functional_template__$g,
        __vue_module_identifier__$g,
        false,
        undefined,
        undefined,
        undefined
      );

    //
    var script$h = {
      loadStyles: loadThemedStyles.loadStyles,
      computed: {
        hasIcon: function hasIcon() {
          return !!this.$slots['icon'];
        }
      },
      beforeMount: function beforeMount() {
        this.$fabric = {
          CommandButton: CommandButton
        };
      },
      extends: commandbutton
    };

    /* script */
    const __vue_script__$h = script$h;

    /* template */
    var __vue_render__$9 = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{staticClass:"ms-CommandButton",class:_vm.commandButtonClass,on:{"click":_vm.clickEvent}},[_c('button',{staticClass:"ms-CommandButton-button"},[(_vm.hasIcon)?_c('span',{staticClass:"ms-CommandButton-icon ms-fontColor-themePrimary"},[_vm._t("icon")],2):_vm._e(),_vm._v(" "),_c('span',{staticClass:"ms-CommandButton-label"},[_vm._t("default")],2),_vm._v(" "),(_vm.type == 'dropdown')?_c('span',{staticClass:"ms-CommandButton-dropdownIcon"},[_c('i',{staticClass:"ms-Icon ms-Icon--ChevronDown"})]):_vm._e()])])};
    var __vue_staticRenderFns__$9 = [];

      /* style */
      const __vue_inject_styles__$h = function (inject) {
        if (!inject) return
        inject("data-v-07a7d11a_0", { source: ".ms-CommandButton[data-v-07a7d11a]{font-family:\"Segoe UI WestEuropean\",\"Segoe UI\",-apple-system,BlinkMacSystemFont,Roboto,\"Helvetica Neue\",sans-serif;-webkit-font-smoothing:antialiased;display:inline-block;position:relative;vertical-align:top}.ms-CommandButton.is-hidden[data-v-07a7d11a]{display:none}.ms-CommandButton.is-disabled .ms-CommandButton-button[data-v-07a7d11a],.ms-CommandButton:disabled .ms-CommandButton-button[data-v-07a7d11a]{cursor:default}.ms-CommandButton.is-disabled .ms-CommandButton-button[data-v-07a7d11a]:hover,.ms-CommandButton:disabled .ms-CommandButton-button[data-v-07a7d11a]:hover{background-color:\"[theme:themeLighterAlt, default: #eff6fc]\"}.ms-CommandButton.is-disabled .ms-CommandButton-button .ms-CommandButton-label[data-v-07a7d11a],.ms-CommandButton:disabled .ms-CommandButton-button .ms-CommandButton-label[data-v-07a7d11a]{color:\"[theme:neutralTertiary, default: #a6a6a6]\"}.ms-CommandButton.is-disabled .ms-CommandButton-button .ms-CommandButton-icon[data-v-07a7d11a],.ms-CommandButton:disabled .ms-CommandButton-button .ms-CommandButton-icon[data-v-07a7d11a]{color:\"[theme:neutralTertiary, default: #a6a6a6]\"}.ms-CommandButton .ms-ContextualMenu[data-v-07a7d11a]{display:none}.ms-CommandButton-button[data-v-07a7d11a],.ms-CommandButton-splitIcon[data-v-07a7d11a]{box-sizing:border-box;margin:0;padding:0;-webkit-box-shadow:none;-moz-box-shadow:none;box-shadow:none;color:\"[theme:neutralPrimary, default: #333333]\";font-size:14px;font-weight:400;cursor:pointer;display:inline-block;height:40px;line-height:40px;outline:1px solid transparent;padding:0 8px;position:relative;vertical-align:top;background:0 0}.ms-CommandButton-button[data-v-07a7d11a]:hover,.ms-CommandButton-splitIcon[data-v-07a7d11a]:hover{background-color:\"[theme:neutralLight, default: #eaeaea]\"}.ms-CommandButton-button:hover .ms-CommandButton-label[data-v-07a7d11a],.ms-CommandButton-splitIcon:hover .ms-CommandButton-label[data-v-07a7d11a]{color:\"[theme:neutralDark, default: #212121]\"}.ms-CommandButton-button[data-v-07a7d11a]:active,.ms-CommandButton-splitIcon[data-v-07a7d11a]:active{background-color:\"[theme:neutralLight, default: #eaeaea]\"}.ms-CommandButton-button[data-v-07a7d11a]:focus::before,.ms-CommandButton-splitIcon[data-v-07a7d11a]:focus::before{top:3px;left:3px;right:3px;bottom:3px;border:1px solid \"[theme:neutralPrimary, default: #333333]\";position:absolute;z-index:10;content:\"\";outline:0}.ms-CommandButton-button[data-v-07a7d11a]:focus,.ms-CommandButton-splitIcon[data-v-07a7d11a]:focus{outline:0}@media only screen and (max-width:639px){.ms-CommandButton-button[data-v-07a7d11a],.ms-CommandButton-splitIcon[data-v-07a7d11a]{height:44px}.ms-CommandButton-button .ms-CommandButton-icon[data-v-07a7d11a],.ms-CommandButton-splitIcon .ms-CommandButton-icon[data-v-07a7d11a]{font-size:20px}.ms-CommandButton-button .ms-CommandButton-label[data-v-07a7d11a],.ms-CommandButton-splitIcon .ms-CommandButton-label[data-v-07a7d11a]{line-height:44px}}.ms-CommandButton-button[data-v-07a7d11a]{border:0;margin:0}.ms-CommandButton+.ms-CommandButton[data-v-07a7d11a]{margin-left:8px}@media only screen and (max-width:639px){.ms-CommandButton+.ms-CommandButton[data-v-07a7d11a]{margin-left:4px}}.ms-CommandButton-icon[data-v-07a7d11a]{display:inline-block;margin-right:8px;position:relative;font-size:16px;min-width:16px;height:100%}.ms-CommandButton-icon .ms-Icon[data-v-07a7d11a]{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.ms-CommandButton-label[data-v-07a7d11a]{font-size:14px;font-weight:400;color:\"[theme:neutralPrimary, default: #333333]\";line-height:40px;height:100%;display:inline-block;vertical-align:top}.ms-CommandButton-label[data-v-07a7d11a]:hover{color:\"[theme:neutralDark, default: #212121]\"}.ms-CommandButton-dropdownIcon[data-v-07a7d11a],.ms-CommandButton-splitIcon[data-v-07a7d11a]{display:inline-block;position:relative;color:\"[theme:neutralPrimary, default: #333333]\";font-size:12px;font-weight:300;min-width:12px;height:100%;vertical-align:top;margin-left:8px}.ms-CommandButton-dropdownIcon .ms-Icon[data-v-07a7d11a],.ms-CommandButton-splitIcon .ms-Icon[data-v-07a7d11a]{line-height:normal;padding-top:16px}.ms-CommandButton-dropdownIcon[data-v-07a7d11a]:focus::before,.ms-CommandButton-splitIcon[data-v-07a7d11a]:focus::before{top:3px;left:3px;right:3px;bottom:3px;border:1px solid \"[theme:neutralPrimary, default: #333333]\";position:absolute;z-index:10;content:\"\";outline:0}@media only screen and (max-width:639px){.ms-CommandButton-dropdownIcon[data-v-07a7d11a],.ms-CommandButton-splitIcon[data-v-07a7d11a]{display:none}}.ms-CommandButton-splitIcon[data-v-07a7d11a]{margin-left:-2px;width:27px;border:0}.ms-CommandButton-splitIcon .ms-Icon[data-v-07a7d11a]{margin-left:-1px;position:relative;padding-top:16px}.ms-CommandButton-splitIcon .ms-Icon[data-v-07a7d11a]::after{position:absolute;content:\" \";width:1px;height:16px;top:12px;left:-8px;border-left:1px solid \"[theme:neutralTertiaryAlt, default: #c8c8c8]\"}.ms-CommandButton.ms-CommandButton--noLabel .ms-CommandButton-icon[data-v-07a7d11a]{margin-right:0}.ms-CommandButton.ms-CommandButton--noLabel .ms-CommandButton-label[data-v-07a7d11a]{display:none}.ms-CommandButton.ms-CommandButton--noLabel .ms-CommandButton-button[data-v-07a7d11a]{padding:0 12px}.ms-CommandButton.ms-CommandButton--inline .ms-CommandButton-button[data-v-07a7d11a]{background:0 0}.ms-CommandButton.ms-CommandButton--actionButton .ms-CommandButton-button[data-v-07a7d11a]{width:50px;height:40px}.ms-CommandButton.ms-CommandButton--actionButton .ms-CommandButton-icon[data-v-07a7d11a]{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);width:16px;height:16px;padding-right:0}.ms-CommandButton.ms-CommandButton--pivot.is-active[data-v-07a7d11a]::before{content:\"\";height:2px;position:absolute;left:0;right:0;background-color:\"[theme:themePrimary, default: #0078d7]\";bottom:0;z-index:5}.ms-CommandButton.ms-CommandButton--pivot[data-v-07a7d11a]:hover::before{content:\"\";height:2px;position:absolute;left:0;right:0;background-color:\"[theme:themePrimary, default: #0078d7]\";bottom:0;z-index:5}.ms-CommandButton.ms-CommandButton--pivot .ms-CommandButton-label[data-v-07a7d11a],.ms-CommandButton.ms-CommandButton--textOnly .ms-CommandButton-label[data-v-07a7d11a]{display:inline-block}@media only screen and (max-width:479px){.ms-CommandButton.ms-CommandButton--pivot .ms-CommandButton-label[data-v-07a7d11a],.ms-CommandButton.ms-CommandButton--textOnly .ms-CommandButton-label[data-v-07a7d11a]{font-size:16px}}", map: undefined, media: undefined });

      };
      /* scoped */
      const __vue_scope_id__$h = "data-v-07a7d11a";
      /* module identifier */
      const __vue_module_identifier__$h = undefined;
      /* functional template */
      const __vue_is_functional_template__$h = false;
      /* style inject */
      const __vue_create_injector__$7 = function(context){ 
                    return function(scopeId, data)
                    {
                        if(window['wizstyle-'+scopeId])
                            return;
                        if(__vue_script__$h.loadStyles)
                            __vue_script__$h.loadStyles(data.source);
                        window['wizstyle-'+scopeId]=true;
                    }
                };
      /* style inject SSR */
      
      /* style inject shadow dom */
      

      
      var uiCommandButton = normalizeComponent(
        { render: __vue_render__$9, staticRenderFns: __vue_staticRenderFns__$9 },
        __vue_inject_styles__$h,
        __vue_script__$h,
        __vue_scope_id__$h,
        __vue_is_functional_template__$h,
        __vue_module_identifier__$h,
        false,
        __vue_create_injector__$7,
        undefined,
        undefined
      );

    var script$i = {
      name: 'ou-dialog',
      mixins: [type('multiline', 'lgHeader', 'blocking', 'close')],
      props: {
        title: String,
        subText: String,
        value: {
          type: Boolean,
          default: false
        }
      },
      data: function data() {
        return {
          dialogInstance: null
        };
      },
      computed: {
        dialogClass: function dialogClass() {
          return _defineProperty({}, "ms-Dialog--".concat(this.type), !!this.type);
        }
      },
      watch: {
        value: function value(_value) {
          this.setDialogVisibility(_value);
        }
      },
      mounted: function mounted() {
        this.dialogInstance = new this.$fabric.Dialog(this.$refs.dialog);
        this.setDialogVisibility(this.value);
      },
      methods: {
        setDialogVisibility: function setDialogVisibility(value) {
          if (value) {
            this.dialogInstance.open(); // Because the office ui fabric js don't support on_close or on_open event in dialog
            // component, So I have to write some hacking code to change the visible status when
            // click the overlay. Otherwise the visible status can't change, when click the overlay
            // to close the dialog.

            this.bindOverlayCloseEvent();
          } else if (this.isOpen()) {
            // Avoid to destroy overlay element twice, and get errors, so determine if the dialog
            // was opened before close it.
            this.dialogInstance.close();
          }
        },
        bindOverlayCloseEvent: function bindOverlayCloseEvent() {
          var _this = this;

          if (this.dialogInstance._overlay) {
            var overlayElement = this.dialogInstance._overlay.overlayElement;

            var closeOverlay = function closeOverlay() {
              overlayElement.removeEventListener('click', closeOverlay);

              _this.$emit('input', false);
            };

            overlayElement.addEventListener('click', closeOverlay);
          }
        },
        isOpen: function isOpen() {
          // When the dialog is shown, the dialog element add a class name of 'is-open',
          // So use this to determine the dialog if was opened.
          return this.$refs.dialog.classList.contains('is-open');
        },
        closeDialog: function closeDialog(event) {
          this.$emit('input', false); // Because the original close button element have the click event to close the dialog,
          // when I fire the click event, the original click event function will fire behind it,
          // So stop the original click event, when I fire the click event.

          event.stopImmediatePropagation();
        }
      }
    };

    /* script */
    const __vue_script__$i = script$i;

    /* template */
    var __vue_render__$a = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{ref:"dialog",staticClass:"ms-Dialog",class:_vm.dialogClass},[(_vm.type == 'close')?_c('button',{staticClass:"ms-Dialog-button ms-Dialog-buttonClose",on:{"click":_vm.closeDialog}},[_c('i',{staticClass:"ms-Icon ms-Icon--Cancel"})]):_vm._e(),_vm._v(" "),_c('div',{staticClass:"ms-Dialog-title"},[_vm._v(_vm._s(_vm.title))]),_vm._v(" "),_c('div',{staticClass:"ms-Dialog-content"},[_c('p',{staticClass:"ms-Dialog-subText"},[_vm._v(_vm._s(_vm.subText))]),_vm._v(" "),_vm._t("default")],2),_vm._v(" "),_c('div',{staticClass:"ms-Dialog-actions"},[_vm._t("actions")],2)])};
    var __vue_staticRenderFns__$a = [];

      /* style */
      const __vue_inject_styles__$i = undefined;
      /* scoped */
      const __vue_scope_id__$i = undefined;
      /* module identifier */
      const __vue_module_identifier__$i = undefined;
      /* functional template */
      const __vue_is_functional_template__$i = false;
      /* style inject */
      
      /* style inject SSR */
      
      /* style inject shadow dom */
      

      
      var dialog = normalizeComponent(
        { render: __vue_render__$a, staticRenderFns: __vue_staticRenderFns__$a },
        __vue_inject_styles__$i,
        __vue_script__$i,
        __vue_scope_id__$i,
        __vue_is_functional_template__$i,
        __vue_module_identifier__$i,
        false,
        undefined,
        undefined,
        undefined
      );

    var Overlay = function () {
      function Overlay(overlayElement) {
        if (overlayElement) {
          this.overlayElement = overlayElement;
        } else {
          var overlayContainer = document.createElement("div");
          overlayContainer.setAttribute("class", "ms-Overlay");
          this.overlayElement = overlayContainer;
        }

        this.overlayElement.addEventListener("click", this.hide.bind(this), false);
      }

      Overlay.prototype.remove = function () {
        this.overlayElement.parentElement.removeChild(this.overlayElement);
      };

      Overlay.prototype.show = function () {
        this.overlayElement.classList.add("is-visible");
        document.body.classList.add("ms-u-overflowHidden");
      };

      Overlay.prototype.hide = function () {
        this.overlayElement.classList.remove("is-visible");
        document.body.classList.remove("ms-u-overflowHidden");
      };

      return Overlay;
    }();

    var Dialog = function () {
      function Dialog(dialog) {
        this._dialog = dialog;
        this._closeButtonElement = this._dialog.querySelector(".ms-Dialog-buttonClose");
        this._actionButtonElements = this._dialog.querySelectorAll(".ms-Dialog-action");

        if (this._closeButtonElement) {
          this._closeButtonElement.addEventListener("click", this.close.bind(this), false);
        }

        for (var i = 0; i < this._actionButtonElements.length; i++) {
          this._actionButtonElements[i].addEventListener("click", this.close.bind(this), false);
        }
      }

      Dialog.prototype.close = function () {
        this._overlay.remove();

        this._dialog.classList.remove("is-open");

        document.body.classList.remove("ms-u-overflowHidden");

        this._overlay.overlayElement.removeEventListener("click", this.close.bind(this));
      };

      Dialog.prototype.open = function () {
        this._dialog.classList.add("is-open");

        this._overlay = new Overlay();

        if (!this._dialog.classList.contains("ms-Dialog--blocking")) {
          this._overlay.overlayElement.addEventListener("click", this.close.bind(this), false);

          this._overlay.show();

          document.body.classList.add("ms-u-overflowHidden");
        }

        this._dialog.parentElement.appendChild(this._overlay.overlayElement);
      };

      return Dialog;
    }();

    var script$j = {
      loadStyles: loadThemedStyles.loadStyles,
      beforeMount: function beforeMount() {
        this.$fabric = {
          Dialog: Dialog
        };
      },
      props: {
        useDarkOverlay: Boolean
      },
      methods: {
        ensureScopeIdForChilds: function ensureScopeIdForChilds() {
          if (this.dialogInstance && this.dialogInstance._overlay && this.dialogInstance._overlay.overlayElement) {
            this.dialogInstance._overlay.overlayElement.setAttribute(this.$options._scopeId, "");

            if (this.useDarkOverlay) this.dialogInstance._overlay.overlayElement.className += " ms-Overlay--dark";
          }
        },
        ensureOverlayIsClosed: function ensureOverlayIsClosed() {
          if (this.dialogInstance && this.dialogInstance._overlay && this.dialogInstance._overlay.overlayElement.parentElement) this.dialogInstance._overlay.remove();
        }
      },
      mounted: function mounted() {
        this.$nextTick(function () {
          this.ensureScopeIdForChilds();
        });
      },
      watch: {
        value: function value(newVal) {
          this.ensureScopeIdForChilds();
          if (!newVal) this.ensureOverlayIsClosed();
        }
      },
      beforeDestroy: function beforeDestroy() {
        this.ensureOverlayIsClosed();
      },
      extends: dialog
    };

    /* script */
    const __vue_script__$j = script$j;

    /* template */

      /* style */
      const __vue_inject_styles__$j = function (inject) {
        if (!inject) return
        inject("data-v-78142cce_0", { source: "@charset \"UTF-8\";.ms-Dialog[data-v-78142cce]{font-family:\"Segoe UI WestEuropean\",\"Segoe UI\",-apple-system,BlinkMacSystemFont,Roboto,\"Helvetica Neue\",sans-serif;-webkit-font-smoothing:antialiased;box-shadow:0 0 5px 0 rgba(0,0,0,.4);background-color:\"[theme:white, default: #ffffff]\";display:none;height:auto;min-width:220px;max-width:340px;padding:28px 24px;z-index:10;position:fixed;transform:translate(-50%,-50%);left:50%;top:50%}.ms-Dialog.is-open[data-v-78142cce]{display:block}.ms-Dialog-title[data-v-78142cce]{font-size:21px;font-weight:100;margin-bottom:24px}.ms-Dialog-content[data-v-78142cce]{position:relative}.ms-Dialog-subText[data-v-78142cce]{color:\"[theme:neutralPrimary, default: #333333]\";font-size:12px;font-weight:300;line-height:1.5}.ms-Dialog-actions[data-v-78142cce]{margin-top:24px;text-align:right}.ms-Dialog--multiline .ms-Dialog-title[data-v-78142cce]{font-size:28px}.ms-Dialog.ms-Dialog--lgHeader .ms-Dialog-title[data-v-78142cce]{background-color:\"[theme:themePrimary, default: #0078d7]\";color:\"[theme:white, default: #ffffff]\";font-size:28px;font-weight:100;padding:28px 24px;margin-top:-28px;margin-left:-24px;margin-right:-24px}.ms-Dialog-buttonClose[data-v-78142cce]{background:0 0;border:0;cursor:pointer;margin:0;padding:4px;position:absolute;right:12px;top:12px;z-index:10}.ms-Dialog-buttonClose .ms-Icon.ms-Icon--Cancel[data-v-78142cce]{color:\"[theme:neutralSecondary, default: #666666]\";font-size:16px}.ms-Button.ms-Button--compound[data-v-78142cce]:not(:last-child){margin-bottom:20px}.ms-Dialog.ms-Dialog--close:not(.ms-Dialog--lgHeader) .ms-Dialog-title[data-v-78142cce]{margin-right:20px}.ms-Dialog.ms-Dialog--close:not(.ms-Dialog--lgHeader) .ms-Dialog-button.ms-Dialog-buttonClose[data-v-78142cce]{display:block}@media (min-width:480px){.ms-Dialog-main[data-v-78142cce]{width:auto;min-width:288px;max-width:340px}}.ms-Overlay[data-v-78142cce]{font-family:\"Segoe UI WestEuropean\",\"Segoe UI\",-apple-system,BlinkMacSystemFont,Roboto,\"Helvetica Neue\",sans-serif;-webkit-font-smoothing:antialiased;background-color:\"[theme:whiteTranslucent40, default: rgba(255,255,255,.4)]\";position:fixed;bottom:0;left:0;right:0;top:0;z-index:0;display:none}.ms-Overlay.is-visible[data-v-78142cce]{display:block}.ms-Overlay--dark[data-v-78142cce]{background-color:\"[theme:blackTranslucent40, default: rgba(0,0,0,.4)]\"}.ms-u-overflowHidden[data-v-78142cce]{overflow:hidden}@font-face{font-family:FabricMDL2Icons-a13498cf;src:url(https://spoprod-a.akamaihd.net/files/fabric/assets/icons/fabric-icons-a13498cf.woff) format(\"woff\")}.ms-Icon[data-v-78142cce]{display:inline-block;font-style:normal;font-weight:400}.ms-Icon.ms-Icon--Cancel[data-v-78142cce]::before{font-family:FabricMDL2Icons-a13498cf;content:\"\"}", map: undefined, media: undefined });

      };
      /* scoped */
      const __vue_scope_id__$j = "data-v-78142cce";
      /* module identifier */
      const __vue_module_identifier__$j = undefined;
      /* functional template */
      const __vue_is_functional_template__$j = undefined;
      /* style inject */
      const __vue_create_injector__$8 = function(context){ 
                    return function(scopeId, data)
                    {
                        if(window['wizstyle-'+scopeId])
                            return;
                        if(__vue_script__$j.loadStyles)
                            __vue_script__$j.loadStyles(data.source);
                        window['wizstyle-'+scopeId]=true;
                    }
                };
      /* style inject SSR */
      
      /* style inject shadow dom */
      

      
      var uiDialog = normalizeComponent(
        {},
        __vue_inject_styles__$j,
        __vue_script__$j,
        __vue_scope_id__$j,
        __vue_is_functional_template__$j,
        __vue_module_identifier__$j,
        false,
        __vue_create_injector__$8,
        undefined,
        undefined
      );

    //
    var script$k = {
      name: 'ou-dropdown',
      mixins: [disabled, eventHub],
      props: {
        label: String,
        value: [String, Number],
        placeholder: {
          type: String,
          default: 'Please select'
        }
      },
      watch: {
        value: function value() {
          this.setSelectedItem();
        }
      },
      created: function created() {
        this.eventHub.$on('setSelectedStatus', this.setSelectedStatus);
      },
      beforeDestroy: function beforeDestroy() {
        this.eventHub.$off('setSelectedStatus', this.setSelectedStatus);
      },
      mounted: function mounted() {
        new this.$fabric.Dropdown(this.$refs.dropdown);
        this.setDropdownTitle(this.placeholder);
        this.setSelectedItem();
      },
      methods: {
        setDropdownTitle: function setDropdownTitle(title) {
          this.$refs.dropdown.querySelector('.ms-Dropdown-title').textContent = title;
        },
        // Because the office ui js dropdown component don't have selected class to set
        // selected dropdown item, So write some hack code to set dropdown item selected.
        // Maybe next version of office ui js will fix this problem, So this code sould be
        // rewrite.
        setSelectedItem: function setSelectedItem() {
          this.eventHub.$emit('setSelectedItem', this.value);
        },
        setSelectedStatus: function setSelectedStatus(content) {
          var _this = this;

          this.$refs.dropdown.querySelectorAll('.ms-Dropdown-item').forEach(function (item) {
            if (item.textContent.trim() == content.trim()) {
              item.classList.add('is-selected');

              _this.setDropdownTitle(content);
            } else {
              item.classList.remove('is-selected');
            }
          });
        },
        getCurrentSelected: function getCurrentSelected() {
          var dropdownSelect = this.$refs.dropdownSelect;
          this.$emit('input', dropdownSelect.options[dropdownSelect.selectedIndex].value);
        }
      }
    };

    /* script */
    const __vue_script__$k = script$k;

    /* template */
    var __vue_render__$b = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{ref:"dropdown",staticClass:"ms-Dropdown",class:{ 'is-disabled': _vm.disabled }},[(_vm.label)?_c('label',{staticClass:"ms-Label"},[_vm._v(_vm._s(_vm.label))]):_vm._e(),_vm._v(" "),_c('i',{staticClass:"ms-Dropdown-caretDown ms-Icon ms-Icon--ChevronDown"}),_vm._v(" "),_c('select',{ref:"dropdownSelect",staticClass:"ms-Dropdown-select",on:{"change":_vm.getCurrentSelected}},[_vm._t("default")],2)])};
    var __vue_staticRenderFns__$b = [];

      /* style */
      const __vue_inject_styles__$k = undefined;
      /* scoped */
      const __vue_scope_id__$k = undefined;
      /* module identifier */
      const __vue_module_identifier__$k = undefined;
      /* functional template */
      const __vue_is_functional_template__$k = false;
      /* style inject */
      
      /* style inject SSR */
      
      /* style inject shadow dom */
      

      
      var Dropdown = normalizeComponent(
        { render: __vue_render__$b, staticRenderFns: __vue_staticRenderFns__$b },
        __vue_inject_styles__$k,
        __vue_script__$k,
        __vue_scope_id__$k,
        __vue_is_functional_template__$k,
        __vue_module_identifier__$k,
        false,
        undefined,
        undefined,
        undefined
      );

    var PANEL_HOST_CLASS = "ms-PanelHost";

    var PanelHost = function () {
      function PanelHost(layer, callBack) {
        this._layer = layer;
        this._callBack = callBack;

        this._createElements();

        this._renderElements();
      }

      PanelHost.prototype.dismiss = function () {
        this.overlay.hide();
        document.body.removeChild(this.panelHost);
      };

      PanelHost.prototype.update = function (layer, callBack) {
        this.panelHost.replaceChild(layer, this._layer);

        if (callBack) {
          callBack();
        }
      };

      PanelHost.prototype._renderElements = function () {
        document.body.appendChild(this.panelHost);

        if (this._callBack) {
          this._callBack(this._layer);
        }
      };

      PanelHost.prototype._createElements = function () {
        this.panelHost = document.createElement("div");
        this.panelHost.classList.add(PANEL_HOST_CLASS);
        this.panelHost.appendChild(this._layer);
        this.overlay = new Overlay(this._overlayContainer);
        this.overlay.show();
        this.panelHost.appendChild(this.overlay.overlayElement);
      };

      return PanelHost;
    }();

    var ANIMATE_IN_STATE = "animate-in";
    var ANIMATE_OUT_STATE = "animate-out";
    var ANIMATION_END = 400;

    var Panel = function () {
      function Panel(panel, direction, animateOverlay) {
        this._panel = panel;
        this._direction = direction || "right";
        this._animateOverlay = animateOverlay || true;
        this.panelHost = new PanelHost(this._panel, this._animateInPanel);
        this._closeButton = this._panel.querySelector(".ms-PanelAction-close");
        this._clickHandler = this.dismiss.bind(this, null);

        this._setEvents();

        document.body.setAttribute("style", "height: 100%; overflow: hidden;");
      }

      Panel.prototype.dismiss = function (callBack) {
        var _this = this;

        this._panel.classList.add(ANIMATE_OUT_STATE);

        setTimeout(function () {
          _this._panel.classList.remove(ANIMATE_OUT_STATE);

          _this._panel.classList.remove("is-open");

          _this.panelHost.dismiss();

          if (callBack) {
            callBack();
          }

          document.body.setAttribute("style", "");
        }, ANIMATION_END);

        if (this._closeButton !== null) {
          this._closeButton.removeEventListener("click", this._clickHandler);
        }
      };

      Panel.prototype._setEvents = function () {
        this.panelHost.overlay.overlayElement.addEventListener("click", this._clickHandler);

        if (this._closeButton !== null) {
          this._closeButton.addEventListener("click", this._clickHandler);
        }
      };

      Panel.prototype._animateInPanel = function (layer) {
        layer.classList.add(ANIMATE_IN_STATE);
        layer.classList.add("is-open");
        setTimeout(function () {
          layer.classList.remove(ANIMATE_IN_STATE);
        }, ANIMATION_END);
      };

      return Panel;
    }();

    var DROPDOWN_CLASS = "ms-Dropdown";
    var DROPDOWN_TITLE_CLASS = "ms-Dropdown-title";
    var DROPDOWN_LABEL_HELPER = "ms-Dropdown-truncator";
    var DROPDOWN_ITEMS_CLASS = "ms-Dropdown-items";
    var DROPDOWN_ITEM_CLASS = "ms-Dropdown-item";
    var DROPDOWN_SELECT_CLASS_SELECTOR = ".ms-Dropdown-select";
    var PANEL_CLASS = "ms-Panel";
    var IS_OPEN_CLASS = "is-open";
    var IS_DISABLED_CLASS = "is-disabled";
    var IS_SELECTED_CLASS = "is-selected";
    var ANIMATE_IN_CLASS = "animate-in";
    var SMALL_MAX_WIDTH = 479;

    var Dropdown$1 = function () {
      function Dropdown(container) {
        this._container = container;
        this._dropdownLabelHelper = document.createElement("span");

        this._dropdownLabelHelper.classList.add(DROPDOWN_LABEL_HELPER);

        this._dropdownLabelHelper.classList.add(DROPDOWN_TITLE_CLASS);

        this._newDropdownLabel = document.createElement("span");

        this._newDropdownLabel.classList.add(DROPDOWN_TITLE_CLASS);

        this._newDropdown = document.createElement("ul");

        this._newDropdown.classList.add(DROPDOWN_ITEMS_CLASS);

        this._dropdownItems = [];
        this._originalDropdown = container.querySelector(DROPDOWN_SELECT_CLASS_SELECTOR);

        var _originalOptions = this._originalDropdown.querySelectorAll("option");

        this._onCloseDropdown = this._onCloseDropdown.bind(this);
        this._onItemSelection = this._onItemSelection.bind(this);
        this._onOpenDropdown = this._onOpenDropdown.bind(this);

        for (var i = 0; i < _originalOptions.length; ++i) {
          var option = _originalOptions[i];

          if (option.selected) {
            this._newDropdownLabel.innerHTML = option.text;
          }

          var newItem = document.createElement("li");
          newItem.classList.add(DROPDOWN_ITEM_CLASS);

          if (option.disabled) {
            newItem.classList.add(IS_DISABLED_CLASS);
          }

          if (option.selected) {
            newItem.classList.add(IS_SELECTED_CLASS);
          }

          newItem.innerHTML = option.text;
          newItem.addEventListener("click", this._onItemSelection);

          this._newDropdown.appendChild(newItem);

          this._dropdownItems.push({
            oldOption: option,
            newItem: newItem
          });
        }

        container.appendChild(this._newDropdownLabel);
        container.appendChild(this._newDropdown);
        container.appendChild(this._dropdownLabelHelper);

        this._newDropdownLabel.addEventListener("click", this._onOpenDropdown);

        this._checkTruncation();

        this._setWindowEvent();
      }

      Dropdown.prototype._setWindowEvent = function () {
        var _this = this;

        window.addEventListener("resize", function () {
          _this._doResize();

          _this._checkTruncation();
        }, false);
      };

      Dropdown.prototype._checkTruncation = function () {
        var selected = this._newDropdown.querySelector("." + IS_SELECTED_CLASS);

        var origText = selected ? selected.textContent : this._newDropdown.querySelectorAll("." + DROPDOWN_ITEM_CLASS)[0].textContent;
        this._dropdownLabelHelper.textContent = origText;

        if (this._dropdownLabelHelper.offsetHeight > this._newDropdownLabel.offsetHeight) {
          var i = 0;
          var ellipsis = "...";
          var newText = void 0;

          do {
            i--;
            newText = origText.slice(0, i);
            this._dropdownLabelHelper.textContent = newText + ellipsis;
          } while (this._dropdownLabelHelper.offsetHeight > this._newDropdownLabel.offsetHeight);
        }

        this._newDropdownLabel.textContent = this._dropdownLabelHelper.textContent;
      };

      Dropdown.prototype._getScreenSize = function () {
        var w = window;
        var wSize = {
          x: 0,
          y: 0
        };
        var d = document,
            e = d.documentElement,
            g = d.getElementsByTagName("body")[0];
        wSize.x = w.innerWidth || e.clientWidth || g.clientWidth;
        wSize.y = w.innerHeight || e.clientHeight || g.clientHeight;
        return wSize;
      };

      Dropdown.prototype._doResize = function () {
        var isOpen = this._container.classList.contains(IS_OPEN_CLASS);

        if (!isOpen) {
          return;
        }

        var screenSize = this._getScreenSize().x;

        if (screenSize <= SMALL_MAX_WIDTH) {
          this._openDropdownAsPanel();
        } else {
          this._removeDropdownAsPanel();
        }
      };

      Dropdown.prototype._openDropdownAsPanel = function () {
        if (this._panel === undefined) {
          this._panelContainer = document.createElement("div");

          this._panelContainer.classList.add(PANEL_CLASS);

          this._panelContainer.classList.add(DROPDOWN_CLASS);

          this._panelContainer.classList.add(IS_OPEN_CLASS);

          this._panelContainer.classList.add(ANIMATE_IN_CLASS);

          this._panelContainer.appendChild(this._newDropdown);

          this._panel = new Panel(this._panelContainer);
        }
      };

      Dropdown.prototype._removeDropdownAsPanel = function (evt) {
        var _this = this;

        if (this._panel !== undefined) {
          if (evt && evt.target === this._panel.panelHost.overlay.overlayElement) {
            this._container.appendChild(this._newDropdown);
          } else {
            this._panel.dismiss(function () {
              _this._container.appendChild(_this._newDropdown);
            });
          }

          this._panel = undefined;
        }
      };

      Dropdown.prototype._onOpenDropdown = function (evt) {
        var isDisabled = this._container.classList.contains(IS_DISABLED_CLASS);

        var isOpen = this._container.classList.contains(IS_OPEN_CLASS);

        if (!isDisabled && !isOpen) {
          evt.stopPropagation();

          this._closeOtherDropdowns();

          this._container.classList.add(IS_OPEN_CLASS);

          document.addEventListener("click", this._onCloseDropdown);

          var screenSize = this._getScreenSize().x;

          if (screenSize <= SMALL_MAX_WIDTH) {
            this._openDropdownAsPanel();
          }
        }
      };

      Dropdown.prototype._closeOtherDropdowns = function () {
        var dropdowns = document.querySelectorAll("." + DROPDOWN_CLASS + "." + IS_OPEN_CLASS);

        for (var i = 0; i < dropdowns.length; i++) {
          dropdowns[i].classList.remove(IS_OPEN_CLASS);
        }
      };

      Dropdown.prototype._onCloseDropdown = function (evt) {
        this._removeDropdownAsPanel(evt);

        this._container.classList.remove(IS_OPEN_CLASS);

        document.removeEventListener("click", this._onCloseDropdown);
      };

      Dropdown.prototype._onItemSelection = function (evt) {
        var item = evt.target;

        var isDropdownDisabled = this._container.classList.contains(IS_DISABLED_CLASS);

        var isOptionDisabled = item.classList.contains(IS_DISABLED_CLASS);

        if (!isDropdownDisabled && !isOptionDisabled) {
          for (var i = 0; i < this._dropdownItems.length; ++i) {
            if (this._dropdownItems[i].newItem === item) {
              this._dropdownItems[i].newItem.classList.add(IS_SELECTED_CLASS);

              this._dropdownItems[i].oldOption.selected = true;
            } else {
              this._dropdownItems[i].newItem.classList.remove(IS_SELECTED_CLASS);

              this._dropdownItems[i].oldOption.selected = false;
            }
          }

          this._newDropdownLabel.innerHTML = item.textContent;

          this._checkTruncation();

          var changeEvent = document.createEvent("HTMLEvents");
          changeEvent.initEvent("change", false, true);

          this._originalDropdown.dispatchEvent(changeEvent);
        }
      };

      return Dropdown;
    }();

    var script$l = {
      loadStyles: loadThemedStyles.loadStyles,
      beforeMount: function beforeMount() {
        this.$fabric = {
          Dropdown: Dropdown$1
        };
      },
      methods: {
        setSelectedStatus: function setSelectedStatus(content) {
          var this$1 = this;
          Array.prototype.forEach.call(this.$refs.dropdown.querySelectorAll('.ms-Dropdown-item'), function (item) {
            if (item.textContent.trim() == content.trim()) {
              item.classList.add('is-selected');
              this$1.setDropdownTitle(content);
            } else {
              item.classList.remove('is-selected');
            }
          });
        }
      },
      mounted: function mounted() {
        var _this = this;

        var childs = this.$refs.dropdown.querySelectorAll(":not([" + this.$options._scopeId + "])"); //IE vs. Array.From vs. querySelectorAll = no work >.<
        //Array.prototype.slice, does the trick instead 

        Array.prototype.slice.call(childs).map(function (c) {
          return c.setAttribute(_this.$options._scopeId, "");
        }); // Array.from(childs).map(c=>c.setAttribute(this.$options._scopeId, ""));
      },
      extends: Dropdown
    };

    /* script */
    const __vue_script__$l = script$l;

    /* template */

      /* style */
      const __vue_inject_styles__$l = function (inject) {
        if (!inject) return
        inject("data-v-133f0ced_0", { source: "@charset \"UTF-8\";.ms-Dropdown[data-v-133f0ced]{font-family:\"Segoe UI WestEuropean\",\"Segoe UI\",-apple-system,BlinkMacSystemFont,Roboto,\"Helvetica Neue\",sans-serif;-webkit-font-smoothing:antialiased;box-sizing:border-box;margin:0;padding:0;-webkit-box-shadow:none;-moz-box-shadow:none;box-shadow:none;color:\"[theme:neutralPrimary, default: #333333]\";font-size:14px;font-weight:400;margin-bottom:10px;position:relative;outline:0}.ms-Dropdown:active .ms-Dropdown-caretDown[data-v-133f0ced],.ms-Dropdown:active .ms-Dropdown-title[data-v-133f0ced],.ms-Dropdown:focus .ms-Dropdown-caretDown[data-v-133f0ced],.ms-Dropdown:focus .ms-Dropdown-title[data-v-133f0ced],.ms-Dropdown:hover .ms-Dropdown-caretDown[data-v-133f0ced],.ms-Dropdown:hover .ms-Dropdown-title[data-v-133f0ced]{color:\"[theme:black, default: #000000]\"}.ms-Dropdown:active .ms-Dropdown-title[data-v-133f0ced],.ms-Dropdown:hover .ms-Dropdown-title[data-v-133f0ced]{border-color:\"[theme:neutralSecondaryAlt, default: #767676]\"}.ms-Dropdown:focus .ms-Dropdown-title[data-v-133f0ced]{border-color:\"[theme:themePrimary, default: #0078d7]\"}.ms-Dropdown .ms-Label[data-v-133f0ced]{display:inline-block;margin-bottom:8px}.ms-Dropdown.is-disabled .ms-Dropdown-title[data-v-133f0ced]{background-color:\"[theme:neutralLighter, default: #f4f4f4]\";border-color:\"[theme:neutralLighter, default: #f4f4f4]\";color:\"[theme:neutralTertiary, default: #a6a6a6]\";cursor:default}@media screen and (-ms-high-contrast:active){.ms-Dropdown.is-disabled .ms-Dropdown-title[data-v-133f0ced]{border-color:#0f0;color:#0f0}}@media screen and (-ms-high-contrast:black-on-white){.ms-Dropdown.is-disabled .ms-Dropdown-title[data-v-133f0ced]{border-color:#600000;color:#600000}}.ms-Dropdown.is-disabled .ms-Dropdown-caretDown[data-v-133f0ced]{color:\"[theme:neutralTertiary, default: #a6a6a6]\"}@media screen and (-ms-high-contrast:active){.ms-Dropdown.is-disabled .ms-Dropdown-caretDown[data-v-133f0ced]{color:#0f0}}@media screen and (-ms-high-contrast:black-on-white){.ms-Dropdown.is-disabled .ms-Dropdown-caretDown[data-v-133f0ced]{color:#600000}}.ms-Dropdown.is-open .ms-Dropdown-items[data-v-133f0ced]{display:block;position:absolute}.ms-Panel .ms-Dropdown-items[data-v-133f0ced]{box-shadow:none;overflow-y:auto;padding-top:4px;max-height:100%}.ms-Panel .ms-Dropdown-items .ms-Dropdown-item[data-v-133f0ced]{padding:7px 16px;overflow:hidden;text-overflow:ellipsis}.ms-Panel .ms-Dropdown-items[data-v-133f0ced]::before{content:none;border:0}.ms-Dropdown-select[data-v-133f0ced]{display:none}.ms-Dropdown-caretDown[data-v-133f0ced]{color:\"[theme:neutralDark, default: #212121]\";font-size:12px;position:absolute;right:13px;bottom:9px;z-index:1;pointer-events:none}.ms-Dropdown-title[data-v-133f0ced]{box-sizing:border-box;margin:0;padding:0;-webkit-box-shadow:none;-moz-box-shadow:none;box-shadow:none;background:\"[theme:white, default: #ffffff]\";border:1px solid \"[theme:neutralTertiaryAlt, default: #c8c8c8]\";cursor:pointer;display:block;height:32px;padding:5px 32px 0 10px;position:relative;overflow:hidden}.ms-Dropdown-title.ms-Dropdown-truncator[data-v-133f0ced]{height:auto;display:block;position:absolute;visibility:hidden}.ms-Dropdown-items[data-v-133f0ced]{box-sizing:border-box;margin:0;padding:0;-webkit-box-shadow:none;-moz-box-shadow:none;box-shadow:none;box-shadow:0 0 5px 0 rgba(0,0,0,.4);background-color:\"[theme:white, default: #ffffff]\";display:none;list-style-type:none;position:absolute;width:100%;max-height:200px;z-index:400;overflow-y:scroll;top:auto;right:auto;bottom:auto;left:auto;max-width:100%}.ms-Dropdown-items[data-v-133f0ced]::before{content:\"\";position:absolute;z-index:-1;top:0;left:0;right:0;bottom:0;border:1px solid \"[theme:neutralLight, default: #eaeaea]\"}@media screen and (-ms-high-contrast:active){.ms-Dropdown-items[data-v-133f0ced]{border:1px solid \"[theme:white, default: #ffffff]\"}}@media screen and (-ms-high-contrast:black-on-white){.ms-Dropdown-items[data-v-133f0ced]{border:1px solid \"[theme:black, default: #000000]\"}}.ms-Dropdown-item[data-v-133f0ced]{box-sizing:border-box;cursor:pointer;display:block;height:36px;padding:7px 10px;position:relative;border:1px solid transparent;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}@media screen and (-ms-high-contrast:active){.ms-Dropdown-item[data-v-133f0ced]{border-color:\"[theme:black, default: #000000]\"}}@media screen and (-ms-high-contrast:black-on-white){.ms-Dropdown-item[data-v-133f0ced]{border-color:\"[theme:white, default: #ffffff]\"}}.ms-Dropdown-item[data-v-133f0ced]:hover{background-color:\"[theme:neutralLight, default: #eaeaea]\";color:\"[theme:black, default: #000000]\"}@media screen and (-ms-high-contrast:active){.ms-Dropdown-item[data-v-133f0ced]:hover{background-color:#1aebff;border-color:#1aebff;color:\"[theme:black, default: #000000]\"}.ms-Dropdown-item[data-v-133f0ced]:hover:focus{border-color:\"[theme:black, default: #000000]\"}}@media screen and (-ms-high-contrast:black-on-white){.ms-Dropdown-item[data-v-133f0ced]:hover{background-color:#37006e;border-color:#37006e;color:\"[theme:white, default: #ffffff]\"}}.ms-Dropdown-item[data-v-133f0ced]:active{background-color:\"[theme:neutralLight, default: #eaeaea]\";border-color:\"[theme:themePrimary, default: #0078d7]\";color:\"[theme:black, default: #000000]\"}.ms-Dropdown-item.is-disabled[data-v-133f0ced]{background:\"[theme:white, default: #ffffff]\";color:\"[theme:neutralTertiary, default: #a6a6a6]\";cursor:default}.ms-Dropdown-item.is-selected[data-v-133f0ced],.ms-Dropdown-item.ms-Dropdown-item--selected[data-v-133f0ced]{background-color:\"[theme:themeLight, default: #c7e0f4]\";color:\"[theme:black, default: #000000]\"}.ms-Dropdown-item.is-selected[data-v-133f0ced]:hover,.ms-Dropdown-item.ms-Dropdown-item--selected[data-v-133f0ced]:hover{background-color:\"[theme:themeLight, default: #c7e0f4]\"}@media screen and (-ms-high-contrast:active){.ms-Dropdown-item.is-selected[data-v-133f0ced],.ms-Dropdown-item.ms-Dropdown-item--selected[data-v-133f0ced]{background-color:#1aebff;border-color:#1aebff;color:\"[theme:black, default: #000000]\"}.ms-Dropdown-item.is-selected[data-v-133f0ced]:focus,.ms-Dropdown-item.ms-Dropdown-item--selected[data-v-133f0ced]:focus{border-color:\"[theme:black, default: #000000]\"}}@media screen and (-ms-high-contrast:black-on-white){.ms-Dropdown-item.is-selected[data-v-133f0ced],.ms-Dropdown-item.ms-Dropdown-item--selected[data-v-133f0ced]{background-color:#37006e;border-color:#37006e;color:\"[theme:white, default: #ffffff]\"}}@font-face{font-family:FabricMDL2Icons-a13498cf;src:url(https://spoprod-a.akamaihd.net/files/fabric/assets/icons/fabric-icons-a13498cf.woff) format(\"woff\")}.ms-Icon[data-v-133f0ced]{display:inline-block;font-style:normal;font-weight:400}.ms-Icon.ms-Icon--ChevronDown[data-v-133f0ced]::before{font-family:FabricMDL2Icons-a13498cf;content:\"\"}.ms-Panel .ms-Dropdown-items[data-v-133f0ced]{max-height:200px;box-shadow:0 0 5px 0 rgba(0,0,0,.4);overflow-y:scroll;padding-top:0}", map: undefined, media: undefined });

      };
      /* scoped */
      const __vue_scope_id__$l = "data-v-133f0ced";
      /* module identifier */
      const __vue_module_identifier__$l = undefined;
      /* functional template */
      const __vue_is_functional_template__$l = undefined;
      /* style inject */
      const __vue_create_injector__$9 = function(context){ 
                    return function(scopeId, data)
                    {
                        if(window['wizstyle-'+scopeId])
                            return;
                        if(__vue_script__$l.loadStyles)
                            __vue_script__$l.loadStyles(data.source);
                        window['wizstyle-'+scopeId]=true;
                    }
                };
      /* style inject SSR */
      
      /* style inject shadow dom */
      

      
      var uiDropdown = normalizeComponent(
        {},
        __vue_inject_styles__$l,
        __vue_script__$l,
        __vue_scope_id__$l,
        __vue_is_functional_template__$l,
        __vue_module_identifier__$l,
        false,
        __vue_create_injector__$9,
        undefined,
        undefined
      );

    //
    //
    //
    var script$m = {
      name: 'ou-dropdown-item',
      inject: ['eventHub'],
      props: {
        value: [String, Number]
      },
      created: function created() {
        this.eventHub.$on('setSelectedItem', this.setSelectedItem);
      },
      beforeDestroy: function beforeDestroy() {
        this.eventHub.$off('setSelectedItem', this.setSelectedItem);
      },
      methods: {
        setSelectedItem: function setSelectedItem(value) {
          if (value === this.value) {
            this.eventHub.$emit('setSelectedStatus', this.$slots.default[0].text);
          }
        }
      }
    };

    /* script */
    const __vue_script__$m = script$m;

    /* template */
    var __vue_render__$c = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('option',{domProps:{"value":_vm.value}},[_vm._t("default")],2)};
    var __vue_staticRenderFns__$c = [];

      /* style */
      const __vue_inject_styles__$m = undefined;
      /* scoped */
      const __vue_scope_id__$m = undefined;
      /* module identifier */
      const __vue_module_identifier__$m = undefined;
      /* functional template */
      const __vue_is_functional_template__$m = false;
      /* style inject */
      
      /* style inject SSR */
      
      /* style inject shadow dom */
      

      
      var dropdownitem = normalizeComponent(
        { render: __vue_render__$c, staticRenderFns: __vue_staticRenderFns__$c },
        __vue_inject_styles__$m,
        __vue_script__$m,
        __vue_scope_id__$m,
        __vue_is_functional_template__$m,
        __vue_module_identifier__$m,
        false,
        undefined,
        undefined,
        undefined
      );

    var script$n = {
      extends: dropdownitem,
      created: function created() {
        this.$options._scopeId = this.$parent.$options._scopeId;
      }
    };

    /* script */
    const __vue_script__$n = script$n;

    /* template */

      /* style */
      const __vue_inject_styles__$n = undefined;
      /* scoped */
      const __vue_scope_id__$n = undefined;
      /* module identifier */
      const __vue_module_identifier__$n = undefined;
      /* functional template */
      const __vue_is_functional_template__$n = undefined;
      /* style inject */
      
      /* style inject SSR */
      
      /* style inject shadow dom */
      

      
      var uiDropdownItem = normalizeComponent(
        {},
        __vue_inject_styles__$n,
        __vue_script__$n,
        __vue_scope_id__$n,
        __vue_is_functional_template__$n,
        __vue_module_identifier__$n,
        false,
        undefined,
        undefined,
        undefined
      );

    //
    var script$o = {
      name: 'ou-label',
      mixins: [disabled],
      props: {
        required: {
          type: Boolean,
          default: false
        }
      },
      computed: {
        labelClass: function labelClass() {
          return {
            'is-disabled': this.disabled,
            'is-required': this.required
          };
        }
      }
    };

    /* script */
    const __vue_script__$o = script$o;

    /* template */
    var __vue_render__$d = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('label',{staticClass:"ms-Label",class:_vm.labelClass},[_vm._t("default")],2)};
    var __vue_staticRenderFns__$d = [];

      /* style */
      const __vue_inject_styles__$o = undefined;
      /* scoped */
      const __vue_scope_id__$o = undefined;
      /* module identifier */
      const __vue_module_identifier__$o = undefined;
      /* functional template */
      const __vue_is_functional_template__$o = false;
      /* style inject */
      
      /* style inject SSR */
      
      /* style inject shadow dom */
      

      
      var label = normalizeComponent(
        { render: __vue_render__$d, staticRenderFns: __vue_staticRenderFns__$d },
        __vue_inject_styles__$o,
        __vue_script__$o,
        __vue_scope_id__$o,
        __vue_is_functional_template__$o,
        __vue_module_identifier__$o,
        false,
        undefined,
        undefined,
        undefined
      );

    var script$p = {
      loadStyles: loadThemedStyles.loadStyles,
      extends: label
    };

    /* script */
    const __vue_script__$p = script$p;

    /* template */

      /* style */
      const __vue_inject_styles__$p = function (inject) {
        if (!inject) return
        inject("data-v-7c3d3d8b_0", { source: ".ms-Label[data-v-7c3d3d8b]{font-family:\"Segoe UI WestEuropean\",\"Segoe UI\",-apple-system,BlinkMacSystemFont,Roboto,\"Helvetica Neue\",sans-serif;-webkit-font-smoothing:antialiased;box-sizing:border-box;margin:0;padding:0;-webkit-box-shadow:none;-moz-box-shadow:none;box-shadow:none;color:\"[theme:neutralPrimary, default: #333333]\";font-size:12px;font-weight:400;box-sizing:border-box;display:block;padding:5px 0}.ms-Label.is-required[data-v-7c3d3d8b]::after{content:\" *\";color:\"[theme:error, default: #a80000]\"}.ms-Label.is-disabled[data-v-7c3d3d8b]{color:\"[theme:neutralTertiary, default: #a6a6a6]\"}", map: undefined, media: undefined });

      };
      /* scoped */
      const __vue_scope_id__$p = "data-v-7c3d3d8b";
      /* module identifier */
      const __vue_module_identifier__$p = undefined;
      /* functional template */
      const __vue_is_functional_template__$p = undefined;
      /* style inject */
      const __vue_create_injector__$a = function(context){ 
                    return function(scopeId, data)
                    {
                        if(window['wizstyle-'+scopeId])
                            return;
                        if(__vue_script__$p.loadStyles)
                            __vue_script__$p.loadStyles(data.source);
                        window['wizstyle-'+scopeId]=true;
                    }
                };
      /* style inject SSR */
      
      /* style inject shadow dom */
      

      
      var uiLabel = normalizeComponent(
        {},
        __vue_inject_styles__$p,
        __vue_script__$p,
        __vue_scope_id__$p,
        __vue_is_functional_template__$p,
        __vue_module_identifier__$p,
        false,
        __vue_create_injector__$a,
        undefined,
        undefined
      );

    //
    //
    //
    //
    //
    var script$q = {
      name: 'ou-link',
      props: {
        href: String,
        title: String
      },
      methods: {
        clickEvent: function clickEvent() {
          this.$emit('click');
        }
      }
    };

    /* script */
    const __vue_script__$q = script$q;

    /* template */
    var __vue_render__$e = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('a',{staticClass:"ms-Link",attrs:{"href":_vm.href,"title":_vm.title},on:{"click":_vm.clickEvent}},[_vm._t("default")],2)};
    var __vue_staticRenderFns__$e = [];

      /* style */
      const __vue_inject_styles__$q = undefined;
      /* scoped */
      const __vue_scope_id__$q = undefined;
      /* module identifier */
      const __vue_module_identifier__$q = undefined;
      /* functional template */
      const __vue_is_functional_template__$q = false;
      /* style inject */
      
      /* style inject SSR */
      
      /* style inject shadow dom */
      

      
      var link = normalizeComponent(
        { render: __vue_render__$e, staticRenderFns: __vue_staticRenderFns__$e },
        __vue_inject_styles__$q,
        __vue_script__$q,
        __vue_scope_id__$q,
        __vue_is_functional_template__$q,
        __vue_module_identifier__$q,
        false,
        undefined,
        undefined,
        undefined
      );

    var script$r = {
      loadStyles: loadThemedStyles.loadStyles,
      extends: link
    };

    /* script */
    const __vue_script__$r = script$r;

    /* template */

      /* style */
      const __vue_inject_styles__$r = function (inject) {
        if (!inject) return
        inject("data-v-5f8d8729_0", { source: ".ms-Link[data-v-5f8d8729]{font-family:\"Segoe UI WestEuropean\",\"Segoe UI\",-apple-system,BlinkMacSystemFont,Roboto,\"Helvetica Neue\",sans-serif;-webkit-font-smoothing:antialiased;font-size:14px;font-weight:400;color:\"[theme:themePrimary, default: #0078d7]\";text-decoration:none;cursor:pointer;outline:0}.ms-Link[data-v-5f8d8729]:focus,.ms-Link[data-v-5f8d8729]:hover{color:\"[theme:themeDarker, default: #004578]\"}.ms-Link[data-v-5f8d8729]:active{color:\"[theme:themePrimary, default: #0078d7]\"}", map: undefined, media: undefined });

      };
      /* scoped */
      const __vue_scope_id__$r = "data-v-5f8d8729";
      /* module identifier */
      const __vue_module_identifier__$r = undefined;
      /* functional template */
      const __vue_is_functional_template__$r = undefined;
      /* style inject */
      const __vue_create_injector__$b = function(context){ 
                    return function(scopeId, data)
                    {
                        if(window['wizstyle-'+scopeId])
                            return;
                        if(__vue_script__$r.loadStyles)
                            __vue_script__$r.loadStyles(data.source);
                        window['wizstyle-'+scopeId]=true;
                    }
                };
      /* style inject SSR */
      
      /* style inject shadow dom */
      

      
      var uiLink = normalizeComponent(
        {},
        __vue_inject_styles__$r,
        __vue_script__$r,
        __vue_scope_id__$r,
        __vue_is_functional_template__$r,
        __vue_module_identifier__$r,
        false,
        __vue_create_injector__$b,
        undefined,
        undefined
      );

    //
    //
    //
    var script$s = {
      name: 'ou-list'
    };

    /* script */
    const __vue_script__$s = script$s;

    /* template */
    var __vue_render__$f = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('ul',{ref:"list",staticClass:"ms-List"},[_vm._t("default")],2)};
    var __vue_staticRenderFns__$f = [];

      /* style */
      const __vue_inject_styles__$s = undefined;
      /* scoped */
      const __vue_scope_id__$s = undefined;
      /* module identifier */
      const __vue_module_identifier__$s = undefined;
      /* functional template */
      const __vue_is_functional_template__$s = false;
      /* style inject */
      
      /* style inject SSR */
      
      /* style inject shadow dom */
      

      
      var List = normalizeComponent(
        { render: __vue_render__$f, staticRenderFns: __vue_staticRenderFns__$f },
        __vue_inject_styles__$s,
        __vue_script__$s,
        __vue_scope_id__$s,
        __vue_is_functional_template__$s,
        __vue_module_identifier__$s,
        false,
        undefined,
        undefined,
        undefined
      );

    var script$t = {
      loadStyles: loadThemedStyles.loadStyles,
      extends: List
    };

    /* script */
    const __vue_script__$t = script$t;

    /* template */

      /* style */
      const __vue_inject_styles__$t = function (inject) {
        if (!inject) return
        inject("data-v-0dc2df55_0", { source: ".ms-List[data-v-0dc2df55]{font-family:\"Segoe UI WestEuropean\",\"Segoe UI\",-apple-system,BlinkMacSystemFont,Roboto,\"Helvetica Neue\",sans-serif;-webkit-font-smoothing:antialiased;box-sizing:border-box;margin:0;padding:0;-webkit-box-shadow:none;-moz-box-shadow:none;box-shadow:none;color:\"[theme:neutralPrimary, default: #333333]\";font-size:14px;font-weight:400;list-style-type:none}", map: undefined, media: undefined });

      };
      /* scoped */
      const __vue_scope_id__$t = "data-v-0dc2df55";
      /* module identifier */
      const __vue_module_identifier__$t = undefined;
      /* functional template */
      const __vue_is_functional_template__$t = undefined;
      /* style inject */
      const __vue_create_injector__$c = function(context){ 
                    return function(scopeId, data)
                    {
                        if(window['wizstyle-'+scopeId])
                            return;
                        if(__vue_script__$t.loadStyles)
                            __vue_script__$t.loadStyles(data.source);
                        window['wizstyle-'+scopeId]=true;
                    }
                };
      /* style inject SSR */
      
      /* style inject shadow dom */
      

      
      var uiList = normalizeComponent(
        {},
        __vue_inject_styles__$t,
        __vue_script__$t,
        __vue_scope_id__$t,
        __vue_is_functional_template__$t,
        __vue_module_identifier__$t,
        false,
        __vue_create_injector__$c,
        undefined,
        undefined
      );

    //
    //
    //
    var script$u = {
      name: 'ou-list-actions'
    };

    /* script */
    const __vue_script__$u = script$u;

    /* template */
    var __vue_render__$g = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{staticClass:"ms-ListItem-actions"},[_vm._t("default")],2)};
    var __vue_staticRenderFns__$g = [];

      /* style */
      const __vue_inject_styles__$u = undefined;
      /* scoped */
      const __vue_scope_id__$u = undefined;
      /* module identifier */
      const __vue_module_identifier__$u = undefined;
      /* functional template */
      const __vue_is_functional_template__$u = false;
      /* style inject */
      
      /* style inject SSR */
      
      /* style inject shadow dom */
      

      
      var ListActions = normalizeComponent(
        { render: __vue_render__$g, staticRenderFns: __vue_staticRenderFns__$g },
        __vue_inject_styles__$u,
        __vue_script__$u,
        __vue_scope_id__$u,
        __vue_is_functional_template__$u,
        __vue_module_identifier__$u,
        false,
        undefined,
        undefined,
        undefined
      );

    var script$v = {
      extends: ListActions,
      created: function created() {
        this.$options._scopeId = this.$parent.$options._scopeId;
      }
    };

    /* script */
    const __vue_script__$v = script$v;

    /* template */

      /* style */
      const __vue_inject_styles__$v = undefined;
      /* scoped */
      const __vue_scope_id__$v = undefined;
      /* module identifier */
      const __vue_module_identifier__$v = undefined;
      /* functional template */
      const __vue_is_functional_template__$v = undefined;
      /* style inject */
      
      /* style inject SSR */
      
      /* style inject shadow dom */
      

      
      var uiListActions = normalizeComponent(
        {},
        __vue_inject_styles__$v,
        __vue_script__$v,
        __vue_scope_id__$v,
        __vue_is_functional_template__$v,
        __vue_module_identifier__$v,
        false,
        undefined,
        undefined,
        undefined
      );

    //
    var script$w = {
      name: 'ou-list-action-item',
      mixins: [icon],
      methods: {
        clickEvent: function clickEvent() {
          this.$emit('click');
        }
      }
    };

    /* script */
    const __vue_script__$w = script$w;

    /* template */
    var __vue_render__$h = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{staticClass:"ms-ListItem-action",on:{"click":function($event){$event.stopPropagation();return _vm.clickEvent($event)}}},[_c('i',{staticClass:"ms-Icon",class:_vm.iconClass})])};
    var __vue_staticRenderFns__$h = [];

      /* style */
      const __vue_inject_styles__$w = undefined;
      /* scoped */
      const __vue_scope_id__$w = undefined;
      /* module identifier */
      const __vue_module_identifier__$w = undefined;
      /* functional template */
      const __vue_is_functional_template__$w = false;
      /* style inject */
      
      /* style inject SSR */
      
      /* style inject shadow dom */
      

      
      var ListActionItem = normalizeComponent(
        { render: __vue_render__$h, staticRenderFns: __vue_staticRenderFns__$h },
        __vue_inject_styles__$w,
        __vue_script__$w,
        __vue_scope_id__$w,
        __vue_is_functional_template__$w,
        __vue_module_identifier__$w,
        false,
        undefined,
        undefined,
        undefined
      );

    //
    var script$x = {
      extends: ListActionItem,
      created: function created() {
        this.$options._scopeId = this.$parent.$options._scopeId;
      }
    };

    /* script */
    const __vue_script__$x = script$x;

    /* template */
    var __vue_render__$i = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{staticClass:"ms-ListItem-action",on:{"click":function($event){$event.stopPropagation();return _vm.clickEvent($event)}}},[_vm._t("icon")],2)};
    var __vue_staticRenderFns__$i = [];

      /* style */
      const __vue_inject_styles__$x = undefined;
      /* scoped */
      const __vue_scope_id__$x = undefined;
      /* module identifier */
      const __vue_module_identifier__$x = undefined;
      /* functional template */
      const __vue_is_functional_template__$x = false;
      /* style inject */
      
      /* style inject SSR */
      
      /* style inject shadow dom */
      

      
      var uiListActionItem = normalizeComponent(
        { render: __vue_render__$i, staticRenderFns: __vue_staticRenderFns__$i },
        __vue_inject_styles__$x,
        __vue_script__$x,
        __vue_scope_id__$x,
        __vue_is_functional_template__$x,
        __vue_module_identifier__$x,
        false,
        undefined,
        undefined,
        undefined
      );

    var script$y = {
      name: 'ou-list-item',
      mixins: [type('image', 'document')],
      props: {
        isUnread: Boolean,
        isSelectable: Boolean,
        isUnseen: Boolean,
        value: Boolean,
        imageSrc: String,
        primaryText: String,
        secondaryText: String,
        tertiaryText: String,
        metaText: String
      },
      computed: {
        listItemClass: function listItemClass() {
          var _ref;

          return _ref = {}, _defineProperty(_ref, "ms-ListItem--".concat(this.type), !!this.type), _defineProperty(_ref, 'is-selectable', this.isSelectable), _defineProperty(_ref, 'is-selected', this.value), _defineProperty(_ref, 'is-unread', this.isUnread), _defineProperty(_ref, 'is-unseen', this.isUnseen), _ref;
        }
      },
      methods: {
        toggle: function toggle() {
          if (this.isSelectable) {
            this.$emit('input', !this.value);
          }
        },
        clickEvent: function clickEvent() {
          this.$emit('click');
        }
      }
    };

    /* script */
    const __vue_script__$y = script$y;

    /* template */
    var __vue_render__$j = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('li',{ref:"listItem",staticClass:"ms-ListItem",class:_vm.listItemClass,on:{"click":_vm.clickEvent}},[(_vm.type == 'image')?_c('img',{staticClass:"ms-ListItem-image",attrs:{"src":_vm.imageSrc}}):_vm._e(),_vm._v(" "),(_vm.primaryText)?_c('span',{staticClass:"ms-ListItem-primaryText"},[_vm._v(_vm._s(_vm.primaryText))]):_vm._e(),_vm._v(" "),(_vm.secondaryText)?_c('span',{staticClass:"ms-ListItem-secondaryText"},[_vm._v(_vm._s(_vm.secondaryText))]):_vm._e(),_vm._v(" "),(_vm.tertiaryText)?_c('span',{staticClass:"ms-ListItem-tertiaryText"},[_vm._v(_vm._s(_vm.tertiaryText))]):_vm._e(),_vm._v(" "),(_vm.metaText)?_c('span',{staticClass:"ms-ListItem-metaText"},[_vm._v(_vm._s(_vm.metaText))]):_vm._e(),_vm._v(" "),(_vm.isSelectable)?_c('div',{staticClass:"ms-ListItem-selectionTarget",on:{"click":function($event){$event.stopPropagation();return _vm.toggle($event)}}}):_vm._e(),_vm._v(" "),_vm._t("default")],2)};
    var __vue_staticRenderFns__$j = [];

      /* style */
      const __vue_inject_styles__$y = undefined;
      /* scoped */
      const __vue_scope_id__$y = undefined;
      /* module identifier */
      const __vue_module_identifier__$y = undefined;
      /* functional template */
      const __vue_is_functional_template__$y = false;
      /* style inject */
      
      /* style inject SSR */
      
      /* style inject shadow dom */
      

      
      var ListItem = normalizeComponent(
        { render: __vue_render__$j, staticRenderFns: __vue_staticRenderFns__$j },
        __vue_inject_styles__$y,
        __vue_script__$y,
        __vue_scope_id__$y,
        __vue_is_functional_template__$y,
        __vue_module_identifier__$y,
        false,
        undefined,
        undefined,
        undefined
      );

    var script$z = {
      loadStyles: loadThemedStyles.loadStyles,
      extends: ListItem
    };

    /* script */
    const __vue_script__$z = script$z;

    /* template */

      /* style */
      const __vue_inject_styles__$z = function (inject) {
        if (!inject) return
        inject("data-v-29d47ae0_0", { source: "@charset \"UTF-8\";.ms-ListItem[data-v-29d47ae0]{font-family:\"Segoe UI WestEuropean\",\"Segoe UI\",-apple-system,BlinkMacSystemFont,Roboto,\"Helvetica Neue\",sans-serif;-webkit-font-smoothing:antialiased;box-sizing:border-box;margin:0;padding:0;-webkit-box-shadow:none;-moz-box-shadow:none;box-shadow:none;color:\"[theme:neutralPrimary, default: #333333]\";font-size:14px;font-weight:400;padding:9px 28px 3px;position:relative;display:block}.ms-ListItem[data-v-29d47ae0]::after,.ms-ListItem[data-v-29d47ae0]::before{display:table;content:\"\";line-height:0}.ms-ListItem[data-v-29d47ae0]::after{clear:both}.ms-ListItem-primaryText[data-v-29d47ae0],.ms-ListItem-secondaryText[data-v-29d47ae0],.ms-ListItem-tertiaryText[data-v-29d47ae0]{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;display:block}.ms-ListItem-primaryText[data-v-29d47ae0]{color:\"[theme:neutralDark, default: #212121]\";font-weight:300;font-size:21px;padding-right:80px;position:relative;top:-4px}.ms-ListItem-secondaryText[data-v-29d47ae0]{color:\"[theme:neutralPrimary, default: #333333]\";font-weight:400;font-size:14px;line-height:25px;position:relative;top:-7px;padding-right:30px}.ms-ListItem-tertiaryText[data-v-29d47ae0]{color:\"[theme:neutralSecondaryAlt, default: #767676]\";font-weight:300;font-size:14px;position:relative;top:-9px;margin-bottom:-4px;padding-right:30px}.ms-ListItem-metaText[data-v-29d47ae0]{color:\"[theme:neutralPrimary, default: #333333]\";font-weight:300;font-size:11px;position:absolute;right:30px;top:39px}.ms-ListItem-image[data-v-29d47ae0]{float:left;height:70px;margin-left:-8px;margin-right:10px;width:70px;background-color:\"[theme:neutralPrimary, default: #333333]\"}.ms-ListItem-selectionTarget[data-v-29d47ae0]{display:none}.ms-ListItem-actions[data-v-29d47ae0]{max-width:80px;position:absolute;right:30px;text-align:right;top:10px}.ms-ListItem-action[data-v-29d47ae0]{color:\"[theme:neutralTertiary, default: #a6a6a6]\";display:inline-block;font-size:15px;position:relative;text-align:center;top:3px;cursor:pointer;height:16px;width:16px}.ms-ListItem-action .ms-Icon[data-v-29d47ae0]{vertical-align:top}.ms-ListItem-action[data-v-29d47ae0]:hover{color:\"[theme:neutralSecondary, default: #666666]\";outline:1px solid transparent}.ms-ListItem.is-unread[data-v-29d47ae0]{border-left:3px solid \"[theme:themePrimary, default: #0078d7]\";padding-left:27px}.ms-ListItem.is-unread .ms-ListItem-metaText[data-v-29d47ae0],.ms-ListItem.is-unread .ms-ListItem-secondaryText[data-v-29d47ae0]{color:\"[theme:themePrimary, default: #0078d7]\";font-weight:600}.ms-ListItem.is-unseen[data-v-29d47ae0]::after{border-right:10px solid transparent;border-top:10px solid \"[theme:themePrimary, default: #0078d7]\";left:0;position:absolute;top:0}.ms-ListItem.is-selectable .ms-ListItem-selectionTarget[data-v-29d47ae0]{display:block;height:20px;left:6px;position:absolute;top:13px;width:20px}.ms-ListItem.is-selectable .ms-ListItem-image[data-v-29d47ae0]{margin-left:0}.ms-ListItem.is-selectable[data-v-29d47ae0]:hover{background-color:\"[theme:neutralLight, default: #eaeaea]\";cursor:pointer;outline:1px solid transparent}.ms-ListItem.is-selectable[data-v-29d47ae0]:hover::before{-moz-osx-font-smoothing:grayscale;-webkit-font-smoothing:antialiased;display:inline-block;font-family:FabricMDL2Icons;font-style:normal;font-weight:400;speak:none;position:absolute;top:14px;left:7px;height:15px;width:15px;border:1px solid \"[theme:neutralSecondaryAlt, default: #767676]\"}.ms-ListItem.is-selected[data-v-29d47ae0]::before{border:1px solid transparent}.ms-ListItem.is-selected[data-v-29d47ae0]::before,.ms-ListItem.is-selected[data-v-29d47ae0]:hover::before{-moz-osx-font-smoothing:grayscale;-webkit-font-smoothing:antialiased;display:inline-block;font-family:FabricMDL2Icons;font-style:normal;font-weight:400;speak:none;content:\"\";font-size:17px;color:\"[theme:neutralSecondaryAlt, default: #767676]\";position:absolute;top:23px;left:7px;border:0}.ms-ListItem.is-selected[data-v-29d47ae0]:hover{background-color:\"[theme:themeLight, default: #c7e0f4]\";outline:1px solid transparent}.ms-ListItem.ms-ListItem--document[data-v-29d47ae0]{padding:0}.ms-ListItem.ms-ListItem--document .ms-ListItem-itemIcon[data-v-29d47ae0]{width:70px;height:70px;float:left;text-align:center}.ms-ListItem.ms-ListItem--document .ms-ListItem-itemIcon .ms-Icon[data-v-29d47ae0]{font-size:38px;line-height:70px;color:\"[theme:neutralSecondary, default: #666666]\"}.ms-ListItem.ms-ListItem--document .ms-ListItem-primaryText[data-v-29d47ae0]{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:14px;padding-top:15px;padding-right:0;position:static}.ms-ListItem.ms-ListItem--document .ms-ListItem-secondaryText[data-v-29d47ae0]{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:\"[theme:neutralSecondary, default: #666666]\";font-weight:400;font-size:11px;padding-top:6px}@font-face{font-family:FabricMDL2Icons-a13498cf;src:url(https://spoprod-a.akamaihd.net/files/fabric/assets/icons/fabric-icons-a13498cf.woff) format(\"woff\")}.ms-ListItem.is-selected[data-v-29d47ae0]::before,.ms-ListItem.is-selected[data-v-29d47ae0]:hover::before{display:inline-block;font-style:normal;font-weight:400;font-family:FabricMDL2Icons-a13498cf!important;content:\"\"!important}", map: undefined, media: undefined });

      };
      /* scoped */
      const __vue_scope_id__$z = "data-v-29d47ae0";
      /* module identifier */
      const __vue_module_identifier__$z = undefined;
      /* functional template */
      const __vue_is_functional_template__$z = undefined;
      /* style inject */
      const __vue_create_injector__$d = function(context){ 
                    return function(scopeId, data)
                    {
                        if(window['wizstyle-'+scopeId])
                            return;
                        if(__vue_script__$z.loadStyles)
                            __vue_script__$z.loadStyles(data.source);
                        window['wizstyle-'+scopeId]=true;
                    }
                };
      /* style inject SSR */
      
      /* style inject shadow dom */
      

      
      var uiListItem = normalizeComponent(
        {},
        __vue_inject_styles__$z,
        __vue_script__$z,
        __vue_scope_id__$z,
        __vue_is_functional_template__$z,
        __vue_module_identifier__$z,
        false,
        __vue_create_injector__$d,
        undefined,
        undefined
      );

    var script$A = {
      name: 'ou-message-bar',
      mixins: [type('success', 'error', 'blocked', 'warning', 'severeWarning'), icon],
      computed: {
        messageBarClass: function messageBarClass() {
          return _defineProperty({}, "ms-MessageBar--".concat(this.type), !!this.type);
        }
      }
    };

    /* script */
    const __vue_script__$A = script$A;

    /* template */
    var __vue_render__$k = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{staticClass:"ms-MessageBar",class:_vm.messageBarClass},[_c('div',{staticClass:"ms-MessageBar-content"},[(_vm.icon)?_c('div',{staticClass:"ms-MessageBar-icon"},[_c('i',{staticClass:"ms-Icon",class:_vm.iconClass})]):_vm._e(),_vm._v(" "),_c('div',{staticClass:"ms-MessageBar-text"},[_vm._t("default")],2)])])};
    var __vue_staticRenderFns__$k = [];

      /* style */
      const __vue_inject_styles__$A = undefined;
      /* scoped */
      const __vue_scope_id__$A = undefined;
      /* module identifier */
      const __vue_module_identifier__$A = undefined;
      /* functional template */
      const __vue_is_functional_template__$A = false;
      /* style inject */
      
      /* style inject SSR */
      
      /* style inject shadow dom */
      

      
      var MessageBar = normalizeComponent(
        { render: __vue_render__$k, staticRenderFns: __vue_staticRenderFns__$k },
        __vue_inject_styles__$A,
        __vue_script__$A,
        __vue_scope_id__$A,
        __vue_is_functional_template__$A,
        __vue_module_identifier__$A,
        false,
        undefined,
        undefined,
        undefined
      );

    //
    var script$B = {
      loadStyles: loadThemedStyles.loadStyles,
      computed: {
        hasIcon: function hasIcon() {
          return !!this.$slots['icon'];
        }
      },
      extends: MessageBar
    };

    /* script */
    const __vue_script__$B = script$B;

    /* template */
    var __vue_render__$l = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{staticClass:"ms-MessageBar",class:_vm.messageBarClass},[_c('div',{staticClass:"ms-MessageBar-content"},[(_vm.hasIcon)?_c('div',{staticClass:"ms-MessageBar-icon"},[_vm._t("icon")],2):_vm._e(),_vm._v(" "),_c('div',{staticClass:"ms-MessageBar-text"},[_vm._t("default")],2)])])};
    var __vue_staticRenderFns__$l = [];

      /* style */
      const __vue_inject_styles__$B = function (inject) {
        if (!inject) return
        inject("data-v-519832b0_0", { source: ".ms-MessageBar[data-v-519832b0]{font-family:\"Segoe UI WestEuropean\",\"Segoe UI\",-apple-system,BlinkMacSystemFont,Roboto,\"Helvetica Neue\",sans-serif;-webkit-font-smoothing:antialiased;padding:8px;display:table;background-color:\"[theme:infoBackground, default: #f4f4f4]\"}.ms-MessageBar .ms-Link[data-v-519832b0]{font-size:12px}.ms-MessageBar-icon[data-v-519832b0],.ms-MessageBar-text[data-v-519832b0]{display:table-cell;vertical-align:top}.ms-MessageBar-icon[data-v-519832b0]{padding-right:8px;font-size:16px;color:\"[theme:neutralSecondaryAlt, default: #767676]\"}.ms-MessageBar-text[data-v-519832b0]{font-family:\"Segoe UI WestEuropean\",\"Segoe UI\",-apple-system,BlinkMacSystemFont,Roboto,\"Helvetica Neue\",sans-serif;-webkit-font-smoothing:antialiased;font-size:12px;font-weight:400}.ms-MessageBar.ms-MessageBar--warning[data-v-519832b0]{background-color:\"[theme:warningBackground, default: #fff4ce]\"}.ms-MessageBar.ms-MessageBar--severeWarning[data-v-519832b0]{background-color:\"[theme:severeWarningBackground, default: #fed9cc]\"}.ms-MessageBar.ms-MessageBar--severeWarning .ms-MessageBar-icon[data-v-519832b0]{color:\"[theme:severeWarning, default: #d83b01]\"}.ms-MessageBar.ms-MessageBar--error[data-v-519832b0]{background-color:\"[theme:errorBackground, default: #fde7e9]\"}.ms-MessageBar.ms-MessageBar--error .ms-MessageBar-icon[data-v-519832b0]{color:\"[theme:error, default: #a80000]\"}.ms-MessageBar.ms-MessageBar--blocked[data-v-519832b0]{background-color:\"[theme:errorBackground, default: #fde7e9]\"}.ms-MessageBar.ms-MessageBar--blocked .ms-MessageBar-icon[data-v-519832b0]{color:\"[theme:error, default: #a80000]\"}.ms-MessageBar.ms-MessageBar--success[data-v-519832b0]{background-color:\"[theme:successBackground, default: #dff6dd]\"}.ms-MessageBar.ms-MessageBar--success .ms-MessageBar-icon[data-v-519832b0]{color:\"[theme:green, default: #107c10]\"}", map: undefined, media: undefined });

      };
      /* scoped */
      const __vue_scope_id__$B = "data-v-519832b0";
      /* module identifier */
      const __vue_module_identifier__$B = undefined;
      /* functional template */
      const __vue_is_functional_template__$B = false;
      /* style inject */
      const __vue_create_injector__$e = function(context){ 
                    return function(scopeId, data)
                    {
                        if(window['wizstyle-'+scopeId])
                            return;
                        if(__vue_script__$B.loadStyles)
                            __vue_script__$B.loadStyles(data.source);
                        window['wizstyle-'+scopeId]=true;
                    }
                };
      /* style inject SSR */
      
      /* style inject shadow dom */
      

      
      var uiMessagebar = normalizeComponent(
        { render: __vue_render__$l, staticRenderFns: __vue_staticRenderFns__$l },
        __vue_inject_styles__$B,
        __vue_script__$B,
        __vue_scope_id__$B,
        __vue_is_functional_template__$B,
        __vue_module_identifier__$B,
        false,
        __vue_create_injector__$e,
        undefined,
        undefined
      );

    //
    //
    //
    //
    //
    //
    //
    //
    //
    //
    //
    //
    //
    //
    //
    //
    //
    //
    var script$C = {
      name: 'ou-message-banner',
      mounted: function mounted() {
        new this.$fabric.MessageBanner(this.$refs.messageBanner);
      }
    };

    /* script */
    const __vue_script__$C = script$C;

    /* template */
    var __vue_render__$m = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{ref:"messageBanner",staticClass:"ms-MessageBanner"},[_c('div',{staticClass:"ms-MessageBanner-content"},[_c('div',{staticClass:"ms-MessageBanner-text"},[_c('div',{staticClass:"ms-MessageBanner-clipper"},[_vm._t("default")],2)]),_vm._v(" "),_vm._m(0),_vm._v(" "),_c('div',{staticClass:"ms-MessageBanner-action"},[_vm._t("actions")],2)]),_vm._v(" "),_vm._m(1)])};
    var __vue_staticRenderFns__$m = [function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('button',{staticClass:"ms-MessageBanner-expand"},[_c('i',{staticClass:"ms-Icon ms-Icon--ChevronDown"})])},function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('button',{staticClass:"ms-MessageBanner-close"},[_c('i',{staticClass:"ms-Icon ms-Icon--Clear"})])}];

      /* style */
      const __vue_inject_styles__$C = undefined;
      /* scoped */
      const __vue_scope_id__$C = undefined;
      /* module identifier */
      const __vue_module_identifier__$C = undefined;
      /* functional template */
      const __vue_is_functional_template__$C = false;
      /* style inject */
      
      /* style inject SSR */
      
      /* style inject shadow dom */
      

      
      normalizeComponent(
        { render: __vue_render__$m, staticRenderFns: __vue_staticRenderFns__$m },
        __vue_inject_styles__$C,
        __vue_script__$C,
        __vue_scope_id__$C,
        __vue_is_functional_template__$C,
        __vue_module_identifier__$C,
        false,
        undefined,
        undefined,
        undefined
      );

    var MessageBanner = function () {
      function MessageBanner(container) {
        this._textContainerMaxWidth = 700;
        this._bufferElementsWidth = 88;
        this._bufferElementsWidthSmall = 35;
        this.SMALL_BREAK_POINT = 480;
        this.container = container;
        this.init();
      }

      MessageBanner.prototype.init = function () {
        this._cacheDOM();

        this._setListeners();

        this._clientWidth = this._errorBanner.offsetWidth;
        this._initTextWidth = this._clipper.offsetWidth;

        this._onResize();
      };

      MessageBanner.prototype.show = function () {
        this._errorBanner.className = "ms-MessageBanner";
      };

      MessageBanner.prototype.showBanner = function () {
        this.show();
      };

      MessageBanner.prototype.hide = function () {
        if (this._errorBanner.className.indexOf("hide") === -1) {
          this._errorBanner.className += " hide";
          setTimeout(this._hideMessageBanner.bind(this), 500);
        }
      };

      MessageBanner.prototype._hideMessageBanner = function () {
        this._errorBanner.className = "ms-MessageBanner is-hidden";
      };

      MessageBanner.prototype._onResize = function () {
        this._clientWidth = this._errorBanner.offsetWidth;

        if (window.innerWidth >= this.SMALL_BREAK_POINT) {
          this._resizeRegular();
        } else {
          this._resizeSmall();
        }
      };

      MessageBanner.prototype._resizeRegular = function () {
        if (this._clientWidth - this._bufferSize > this._initTextWidth && this._initTextWidth < this._textContainerMaxWidth) {
          this._textWidth = "auto";
          this._chevronButton.className = "ms-MessageBanner-expand";

          this._collapse();
        } else {
          this._textWidth = Math.min(this._clientWidth - this._bufferSize, this._textContainerMaxWidth) + "px";

          if (this._chevronButton.className.indexOf("is-visible") === -1) {
            this._chevronButton.className += " is-visible";
          }
        }

        this._clipper.style.width = this._textWidth;
      };

      MessageBanner.prototype._resizeSmall = function () {
        if (this._clientWidth - (this._bufferElementsWidthSmall + this._closeButton.offsetWidth) > this._initTextWidth) {
          this._textWidth = "auto";

          this._collapse();
        } else {
          this._textWidth = this._clientWidth - (this._bufferElementsWidthSmall + this._closeButton.offsetWidth) + "px";
        }

        this._clipper.style.width = this._textWidth;
      };

      MessageBanner.prototype._cacheDOM = function () {
        this._errorBanner = this.container;
        this._clipper = this.container.querySelector(".ms-MessageBanner-clipper");
        this._chevronButton = this.container.querySelector(".ms-MessageBanner-expand");
        this._actionButton = this.container.querySelector(".ms-MessageBanner-action");
        this._bufferSize = this._actionButton.offsetWidth + this._bufferElementsWidth;
        this._closeButton = this.container.querySelector(".ms-MessageBanner-close");
      };

      MessageBanner.prototype._expand = function () {
        var icon = this._chevronButton.querySelector(".ms-Icon");

        this._errorBanner.className += " is-expanded";
        icon.className = "ms-Icon ms-Icon--DoubleChevronUp";
      };

      MessageBanner.prototype._collapse = function () {
        var icon = this._chevronButton.querySelector(".ms-Icon");

        this._errorBanner.className = "ms-MessageBanner";
        icon.className = "ms-Icon ms-Icon--DoubleChevronDown";
      };

      MessageBanner.prototype._toggleExpansion = function () {
        if (this._errorBanner.className.indexOf("is-expanded") > -1) {
          this._collapse();
        } else {
          this._expand();
        }
      };

      MessageBanner.prototype._setListeners = function () {
        window.addEventListener("resize", this._onResize.bind(this), false);

        this._chevronButton.addEventListener("click", this._toggleExpansion.bind(this), false);

        this._closeButton.addEventListener("click", this.hide.bind(this), false);
      };

      return MessageBanner;
    }();

    //
    var script$D = {
      loadStyles: loadThemedStyles.loadStyles,
      props: {
        value: Boolean
      },
      data: function data() {
        return {
          instance: null
        };
      },
      watch: {
        value: function value() {
          this.setVisibility();
        }
      },
      methods: {
        setVisibility: function setVisibility() {
          var _this = this;

          if (this.value) {
            if (!this.instance) {
              this.instance = new MessageBanner(this.$refs.messageBanner);

              this.instance._closeButton.addEventListener("click", function () {
                console.log("closed");

                _this.$emit('input', false); // this.value = false;

              }, false);
            }

            this.instance.show();
          } else if (this.instance && this.$refs.messageBanner.className.indexOf("is-hidden") < 0) this.instance.hide();
        }
      },
      mounted: function mounted() {
        this.setVisibility();
      }
    };

    /* script */
    const __vue_script__$D = script$D;

    /* template */
    var __vue_render__$n = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{ref:"messageBanner",staticClass:"ms-MessageBanner is-hidden"},[_c('div',{staticClass:"ms-MessageBanner-content"},[_c('div',{staticClass:"ms-MessageBanner-text"},[_c('div',{staticClass:"ms-MessageBanner-clipper"},[_vm._t("default")],2)]),_vm._v(" "),_vm._m(0),_vm._v(" "),_c('div',{staticClass:"ms-MessageBanner-action"},[_vm._t("actions")],2)]),_vm._v(" "),_vm._m(1)])};
    var __vue_staticRenderFns__$n = [function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('button',{staticClass:"ms-MessageBanner-expand"},[_c('i',{staticClass:"ms-Icon ms-Icon--ChevronDown"})])},function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('button',{staticClass:"ms-MessageBanner-close"},[_c('i',{staticClass:"ms-Icon ms-Icon--Clear"})])}];

      /* style */
      const __vue_inject_styles__$D = function (inject) {
        if (!inject) return
        inject("data-v-4979d51c_0", { source: "@charset \"UTF-8\";.ms-u-slideRightIn10[data-v-4979d51c]{-webkit-animation-name:fadeIn-data-v-4979d51c,slideRightIn10-data-v-4979d51c;-moz-animation-name:fadeIn-data-v-4979d51c,slideRightIn10-data-v-4979d51c;-ms-animation-name:fadeIn-data-v-4979d51c,slideRightIn10-data-v-4979d51c;-o-animation-name:fadeIn-data-v-4979d51c,slideRightIn10-data-v-4979d51c;animation-name:fadeIn-data-v-4979d51c,slideRightIn10-data-v-4979d51c;-webkit-animation-duration:367ms;-moz-animation-duration:367ms;-ms-animation-duration:367ms;-o-animation-duration:367ms;-webkit-animation-timing-function:cubic-bezier(.1,.9,.2,1);-moz-animation-timing-function:cubic-bezier(.1,.9,.2,1);-ms-animation-timing-function:cubic-bezier(.1,.9,.2,1);-o-animation-timing-function:cubic-bezier(.1,.9,.2,1);animation-timing-function:cubic-bezier(.1,.9,.2,1);-webkit-animation-fill-mode:both;-moz-animation-fill-mode:both;-ms-animation-fill-mode:both;-o-animation-fill-mode:both;animation-fill-mode:both}@-webkit-keyframes slideRightIn10-data-v-4979d51c{from{-webkit-transform:translate3d(-10px,0,0)}to{-webkit-transform:translate3d(0,0,0)}}@keyframes slideRightIn10-data-v-4979d51c{from{transform:translate3d(-10px,0,0)}to{transform:translate3d(0,0,0)}}.ms-u-slideRightIn20[data-v-4979d51c]{-webkit-animation-name:fadeIn-data-v-4979d51c,slideRightIn20-data-v-4979d51c;-moz-animation-name:fadeIn-data-v-4979d51c,slideRightIn20-data-v-4979d51c;-ms-animation-name:fadeIn-data-v-4979d51c,slideRightIn20-data-v-4979d51c;-o-animation-name:fadeIn-data-v-4979d51c,slideRightIn20-data-v-4979d51c;animation-name:fadeIn-data-v-4979d51c,slideRightIn20-data-v-4979d51c;-webkit-animation-duration:367ms;-moz-animation-duration:367ms;-ms-animation-duration:367ms;-o-animation-duration:367ms;-webkit-animation-timing-function:cubic-bezier(.1,.9,.2,1);-moz-animation-timing-function:cubic-bezier(.1,.9,.2,1);-ms-animation-timing-function:cubic-bezier(.1,.9,.2,1);-o-animation-timing-function:cubic-bezier(.1,.9,.2,1);animation-timing-function:cubic-bezier(.1,.9,.2,1);-webkit-animation-fill-mode:both;-moz-animation-fill-mode:both;-ms-animation-fill-mode:both;-o-animation-fill-mode:both;animation-fill-mode:both}@-webkit-keyframes slideRightIn20-data-v-4979d51c{from{-webkit-transform:translate3d(-20px,0,0)}to{-webkit-transform:translate3d(0,0,0)}}@keyframes slideRightIn20-data-v-4979d51c{from{transform:translate3d(-20px,0,0)}to{transform:translate3d(0,0,0)}}.ms-u-slideRightIn40[data-v-4979d51c]{-webkit-animation-name:fadeIn-data-v-4979d51c,slideRightIn40-data-v-4979d51c;-moz-animation-name:fadeIn-data-v-4979d51c,slideRightIn40-data-v-4979d51c;-ms-animation-name:fadeIn-data-v-4979d51c,slideRightIn40-data-v-4979d51c;-o-animation-name:fadeIn-data-v-4979d51c,slideRightIn40-data-v-4979d51c;animation-name:fadeIn-data-v-4979d51c,slideRightIn40-data-v-4979d51c;-webkit-animation-duration:367ms;-moz-animation-duration:367ms;-ms-animation-duration:367ms;-o-animation-duration:367ms;-webkit-animation-timing-function:cubic-bezier(.1,.9,.2,1);-moz-animation-timing-function:cubic-bezier(.1,.9,.2,1);-ms-animation-timing-function:cubic-bezier(.1,.9,.2,1);-o-animation-timing-function:cubic-bezier(.1,.9,.2,1);animation-timing-function:cubic-bezier(.1,.9,.2,1);-webkit-animation-fill-mode:both;-moz-animation-fill-mode:both;-ms-animation-fill-mode:both;-o-animation-fill-mode:both;animation-fill-mode:both}@-webkit-keyframes slideRightIn40-data-v-4979d51c{from{-webkit-transform:translate3d(-40px,0,0)}to{-webkit-transform:translate3d(0,0,0)}}@keyframes slideRightIn40-data-v-4979d51c{from{transform:translate3d(-40px,0,0)}to{transform:translate3d(0,0,0)}}.ms-u-slideLeftIn10[data-v-4979d51c]{-webkit-animation-name:fadeIn-data-v-4979d51c,slideLeftIn10-data-v-4979d51c;-moz-animation-name:fadeIn-data-v-4979d51c,slideLeftIn10-data-v-4979d51c;-ms-animation-name:fadeIn-data-v-4979d51c,slideLeftIn10-data-v-4979d51c;-o-animation-name:fadeIn-data-v-4979d51c,slideLeftIn10-data-v-4979d51c;animation-name:fadeIn-data-v-4979d51c,slideLeftIn10-data-v-4979d51c;-webkit-animation-duration:367ms;-moz-animation-duration:367ms;-ms-animation-duration:367ms;-o-animation-duration:367ms;-webkit-animation-timing-function:cubic-bezier(.1,.9,.2,1);-moz-animation-timing-function:cubic-bezier(.1,.9,.2,1);-ms-animation-timing-function:cubic-bezier(.1,.9,.2,1);-o-animation-timing-function:cubic-bezier(.1,.9,.2,1);animation-timing-function:cubic-bezier(.1,.9,.2,1);-webkit-animation-fill-mode:both;-moz-animation-fill-mode:both;-ms-animation-fill-mode:both;-o-animation-fill-mode:both;animation-fill-mode:both}@-webkit-keyframes slideLeftIn10-data-v-4979d51c{from{-webkit-transform:translate3d(10px,0,0)}to{-webkit-transform:translate3d(0,0,0)}}@keyframes slideLeftIn10-data-v-4979d51c{from{transform:translate3d(10px,0,0)}to{transform:translate3d(0,0,0)}}.ms-u-slideLeftIn20[data-v-4979d51c]{-webkit-animation-name:fadeIn-data-v-4979d51c,slideLeftIn20-data-v-4979d51c;-moz-animation-name:fadeIn-data-v-4979d51c,slideLeftIn20-data-v-4979d51c;-ms-animation-name:fadeIn-data-v-4979d51c,slideLeftIn20-data-v-4979d51c;-o-animation-name:fadeIn-data-v-4979d51c,slideLeftIn20-data-v-4979d51c;animation-name:fadeIn-data-v-4979d51c,slideLeftIn20-data-v-4979d51c;-webkit-animation-duration:367ms;-moz-animation-duration:367ms;-ms-animation-duration:367ms;-o-animation-duration:367ms;-webkit-animation-timing-function:cubic-bezier(.1,.9,.2,1);-moz-animation-timing-function:cubic-bezier(.1,.9,.2,1);-ms-animation-timing-function:cubic-bezier(.1,.9,.2,1);-o-animation-timing-function:cubic-bezier(.1,.9,.2,1);animation-timing-function:cubic-bezier(.1,.9,.2,1);-webkit-animation-fill-mode:both;-moz-animation-fill-mode:both;-ms-animation-fill-mode:both;-o-animation-fill-mode:both;animation-fill-mode:both}@-webkit-keyframes slideLeftIn20-data-v-4979d51c{from{-webkit-transform:translate3d(20px,0,0)}to{-webkit-transform:translate3d(0,0,0)}}@keyframes slideLeftIn20-data-v-4979d51c{from{transform:translate3d(20px,0,0)}to{transform:translate3d(0,0,0)}}.ms-u-slideLeftIn40[data-v-4979d51c]{-webkit-animation-name:fadeIn-data-v-4979d51c,slideLeftIn40-data-v-4979d51c;-moz-animation-name:fadeIn-data-v-4979d51c,slideLeftIn40-data-v-4979d51c;-ms-animation-name:fadeIn-data-v-4979d51c,slideLeftIn40-data-v-4979d51c;-o-animation-name:fadeIn-data-v-4979d51c,slideLeftIn40-data-v-4979d51c;animation-name:fadeIn-data-v-4979d51c,slideLeftIn40-data-v-4979d51c;-webkit-animation-duration:367ms;-moz-animation-duration:367ms;-ms-animation-duration:367ms;-o-animation-duration:367ms;-webkit-animation-timing-function:cubic-bezier(.1,.9,.2,1);-moz-animation-timing-function:cubic-bezier(.1,.9,.2,1);-ms-animation-timing-function:cubic-bezier(.1,.9,.2,1);-o-animation-timing-function:cubic-bezier(.1,.9,.2,1);animation-timing-function:cubic-bezier(.1,.9,.2,1);-webkit-animation-fill-mode:both;-moz-animation-fill-mode:both;-ms-animation-fill-mode:both;-o-animation-fill-mode:both;animation-fill-mode:both}@-webkit-keyframes slideLeftIn40-data-v-4979d51c{from{-webkit-transform:translate3d(40px,0,0)}to{-webkit-transform:translate3d(0,0,0)}}@keyframes slideLeftIn40-data-v-4979d51c{from{transform:translate3d(40px,0,0)}to{transform:translate3d(0,0,0)}}.ms-u-slideRightIn400[data-v-4979d51c]{-webkit-animation-name:fadeIn-data-v-4979d51c,slideRightIn400-data-v-4979d51c;-moz-animation-name:fadeIn-data-v-4979d51c,slideRightIn400-data-v-4979d51c;-ms-animation-name:fadeIn-data-v-4979d51c,slideRightIn400-data-v-4979d51c;-o-animation-name:fadeIn-data-v-4979d51c,slideRightIn400-data-v-4979d51c;animation-name:fadeIn-data-v-4979d51c,slideRightIn400-data-v-4979d51c;-webkit-animation-duration:367ms;-moz-animation-duration:367ms;-ms-animation-duration:367ms;-o-animation-duration:367ms;-webkit-animation-timing-function:cubic-bezier(.1,.9,.2,1);-moz-animation-timing-function:cubic-bezier(.1,.9,.2,1);-ms-animation-timing-function:cubic-bezier(.1,.9,.2,1);-o-animation-timing-function:cubic-bezier(.1,.9,.2,1);animation-timing-function:cubic-bezier(.1,.9,.2,1);-webkit-animation-fill-mode:both;-moz-animation-fill-mode:both;-ms-animation-fill-mode:both;-o-animation-fill-mode:both;animation-fill-mode:both}@-webkit-keyframes slideRightIn400-data-v-4979d51c{from{-webkit-transform:translate3d(-400px,0,0)}to{-webkit-transform:translate3d(0,0,0)}}@keyframes slideRightIn400-data-v-4979d51c{from{transform:translate3d(-400px,0,0)}to{transform:translate3d(0,0,0)}}.ms-u-slideLeftIn400[data-v-4979d51c]{-webkit-animation-name:fadeIn-data-v-4979d51c,slideLeft400-data-v-4979d51c;-moz-animation-name:fadeIn-data-v-4979d51c,slideLeft400-data-v-4979d51c;-ms-animation-name:fadeIn-data-v-4979d51c,slideLeft400-data-v-4979d51c;-o-animation-name:fadeIn-data-v-4979d51c,slideLeft400-data-v-4979d51c;animation-name:fadeIn-data-v-4979d51c,slideLeft400-data-v-4979d51c;-webkit-animation-duration:367ms;-moz-animation-duration:367ms;-ms-animation-duration:367ms;-o-animation-duration:367ms;-webkit-animation-timing-function:cubic-bezier(.1,.9,.2,1);-moz-animation-timing-function:cubic-bezier(.1,.9,.2,1);-ms-animation-timing-function:cubic-bezier(.1,.9,.2,1);-o-animation-timing-function:cubic-bezier(.1,.9,.2,1);animation-timing-function:cubic-bezier(.1,.9,.2,1);-webkit-animation-fill-mode:both;-moz-animation-fill-mode:both;-ms-animation-fill-mode:both;-o-animation-fill-mode:both;animation-fill-mode:both}@-webkit-keyframes slideLeft400-data-v-4979d51c{from{-webkit-transform:translate3d(400px,0,0)}to{-webkit-transform:translate3d(0,0,0)}}@keyframes slideLeft400-data-v-4979d51c{from{transform:translate3d(400px,0,0)}to{transform:translate3d(0,0,0)}}.ms-u-slideUpIn20[data-v-4979d51c]{-webkit-animation-name:fadeIn-data-v-4979d51c,slideUpIn20-data-v-4979d51c;-moz-animation-name:fadeIn-data-v-4979d51c,slideUpIn20-data-v-4979d51c;-ms-animation-name:fadeIn-data-v-4979d51c,slideUpIn20-data-v-4979d51c;-o-animation-name:fadeIn-data-v-4979d51c,slideUpIn20-data-v-4979d51c;animation-name:fadeIn-data-v-4979d51c,slideUpIn20-data-v-4979d51c;-webkit-animation-duration:367ms;-moz-animation-duration:367ms;-ms-animation-duration:367ms;-o-animation-duration:367ms;-webkit-animation-timing-function:cubic-bezier(.1,.9,.2,1);-moz-animation-timing-function:cubic-bezier(.1,.9,.2,1);-ms-animation-timing-function:cubic-bezier(.1,.9,.2,1);-o-animation-timing-function:cubic-bezier(.1,.9,.2,1);animation-timing-function:cubic-bezier(.1,.9,.2,1);-webkit-animation-fill-mode:both;-moz-animation-fill-mode:both;-ms-animation-fill-mode:both;-o-animation-fill-mode:both;animation-fill-mode:both}@-webkit-keyframes slideUpIn20-data-v-4979d51c{from{-webkit-transform:translate3d(0,20px,0)}to{-webkit-transform:translate3d(0,0,0)}}@keyframes slideUpIn20-data-v-4979d51c{from{transform:translate3d(0,20px,0)}to{transform:translate3d(0,0,0)}}.ms-u-slideUpIn10[data-v-4979d51c]{-webkit-animation-name:fadeIn-data-v-4979d51c,slideUpIn10-data-v-4979d51c;-moz-animation-name:fadeIn-data-v-4979d51c,slideUpIn10-data-v-4979d51c;-ms-animation-name:fadeIn-data-v-4979d51c,slideUpIn10-data-v-4979d51c;-o-animation-name:fadeIn-data-v-4979d51c,slideUpIn10-data-v-4979d51c;animation-name:fadeIn-data-v-4979d51c,slideUpIn10-data-v-4979d51c;-webkit-animation-duration:167ms;-moz-animation-duration:167ms;-ms-animation-duration:167ms;-o-animation-duration:167ms;-webkit-animation-timing-function:cubic-bezier(.1,.25,.75,.9);-moz-animation-timing-function:cubic-bezier(.1,.25,.75,.9);-ms-animation-timing-function:cubic-bezier(.1,.25,.75,.9);-o-animation-timing-function:cubic-bezier(.1,.25,.75,.9);animation-timing-function:cubic-bezier(.1,.25,.75,.9);-webkit-animation-fill-mode:both;-moz-animation-fill-mode:both;-ms-animation-fill-mode:both;-o-animation-fill-mode:both;animation-fill-mode:both}@-webkit-keyframes slideUpIn10-data-v-4979d51c{from{-webkit-transform:translate3d(0,10px,0)}to{-webkit-transform:translate3d(0,0,0)}}@keyframes slideUpIn10-data-v-4979d51c{from{transform:translate3d(0,10px,0)}to{transform:translate3d(0,0,0)}}.ms-u-slideDownIn20[data-v-4979d51c]{-webkit-animation-name:fadeIn-data-v-4979d51c,slideDownIn20-data-v-4979d51c;-moz-animation-name:fadeIn-data-v-4979d51c,slideDownIn20-data-v-4979d51c;-ms-animation-name:fadeIn-data-v-4979d51c,slideDownIn20-data-v-4979d51c;-o-animation-name:fadeIn-data-v-4979d51c,slideDownIn20-data-v-4979d51c;animation-name:fadeIn-data-v-4979d51c,slideDownIn20-data-v-4979d51c;-webkit-animation-duration:367ms;-moz-animation-duration:367ms;-ms-animation-duration:367ms;-o-animation-duration:367ms;-webkit-animation-timing-function:cubic-bezier(.1,.9,.2,1);-moz-animation-timing-function:cubic-bezier(.1,.9,.2,1);-ms-animation-timing-function:cubic-bezier(.1,.9,.2,1);-o-animation-timing-function:cubic-bezier(.1,.9,.2,1);animation-timing-function:cubic-bezier(.1,.9,.2,1);-webkit-animation-fill-mode:both;-moz-animation-fill-mode:both;-ms-animation-fill-mode:both;-o-animation-fill-mode:both;animation-fill-mode:both}@-webkit-keyframes slideDownIn20-data-v-4979d51c{from{-webkit-transform:translate3d(0,-20px,0)}to{-webkit-transform:translate3d(0,0,0)}}@keyframes slideDownIn20-data-v-4979d51c{from{transform:translate3d(0,-20px,0)}to{transform:translate3d(0,0,0)}}.ms-u-slideDownIn10[data-v-4979d51c]{-webkit-animation-name:fadeIn-data-v-4979d51c,slideDownIn10-data-v-4979d51c;-moz-animation-name:fadeIn-data-v-4979d51c,slideDownIn10-data-v-4979d51c;-ms-animation-name:fadeIn-data-v-4979d51c,slideDownIn10-data-v-4979d51c;-o-animation-name:fadeIn-data-v-4979d51c,slideDownIn10-data-v-4979d51c;animation-name:fadeIn-data-v-4979d51c,slideDownIn10-data-v-4979d51c;-webkit-animation-duration:167ms;-moz-animation-duration:167ms;-ms-animation-duration:167ms;-o-animation-duration:167ms;-webkit-animation-timing-function:cubic-bezier(.1,.25,.75,.9);-moz-animation-timing-function:cubic-bezier(.1,.25,.75,.9);-ms-animation-timing-function:cubic-bezier(.1,.25,.75,.9);-o-animation-timing-function:cubic-bezier(.1,.25,.75,.9);animation-timing-function:cubic-bezier(.1,.25,.75,.9);-webkit-animation-fill-mode:both;-moz-animation-fill-mode:both;-ms-animation-fill-mode:both;-o-animation-fill-mode:both;animation-fill-mode:both}@-webkit-keyframes slideDownIn10-data-v-4979d51c{from{-webkit-transform:translate3d(0,-10px,0)}to{-webkit-transform:translate3d(0,0,0)}}@keyframes slideDownIn10-data-v-4979d51c{from{transform:translate3d(0,-10px,0)}to{transform:translate3d(0,0,0)}}.ms-u-slideRightOut40[data-v-4979d51c]{-webkit-animation-name:fadeOut-data-v-4979d51c,slideRightOut40-data-v-4979d51c;-moz-animation-name:fadeOut-data-v-4979d51c,slideRightOut40-data-v-4979d51c;-ms-animation-name:fadeOut-data-v-4979d51c,slideRightOut40-data-v-4979d51c;-o-animation-name:fadeOut-data-v-4979d51c,slideRightOut40-data-v-4979d51c;animation-name:fadeOut-data-v-4979d51c,slideRightOut40-data-v-4979d51c;-webkit-animation-duration:167ms;-moz-animation-duration:167ms;-ms-animation-duration:167ms;-o-animation-duration:167ms;-webkit-animation-timing-function:cubic-bezier(.1,.25,.75,.9);-moz-animation-timing-function:cubic-bezier(.1,.25,.75,.9);-ms-animation-timing-function:cubic-bezier(.1,.25,.75,.9);-o-animation-timing-function:cubic-bezier(.1,.25,.75,.9);animation-timing-function:cubic-bezier(.1,.25,.75,.9);-webkit-animation-fill-mode:both;-moz-animation-fill-mode:both;-ms-animation-fill-mode:both;-o-animation-fill-mode:both;animation-fill-mode:both}@-webkit-keyframes slideRightOut40-data-v-4979d51c{from{-webkit-transform:translate3d(0,0,0)}to{-webkit-transform:translate3d(40px,0,0)}}@keyframes slideRightOut40-data-v-4979d51c{from{transform:translate3d(0,0,0)}to{transform:translate3d(40px,0,0)}}.ms-u-slideLeftOut40[data-v-4979d51c]{-webkit-animation-name:fadeOut-data-v-4979d51c,slideLeftOut40-data-v-4979d51c;-moz-animation-name:fadeOut-data-v-4979d51c,slideLeftOut40-data-v-4979d51c;-ms-animation-name:fadeOut-data-v-4979d51c,slideLeftOut40-data-v-4979d51c;-o-animation-name:fadeOut-data-v-4979d51c,slideLeftOut40-data-v-4979d51c;animation-name:fadeOut-data-v-4979d51c,slideLeftOut40-data-v-4979d51c;-webkit-animation-duration:167ms;-moz-animation-duration:167ms;-ms-animation-duration:167ms;-o-animation-duration:167ms;-webkit-animation-timing-function:cubic-bezier(.1,.25,.75,.9);-moz-animation-timing-function:cubic-bezier(.1,.25,.75,.9);-ms-animation-timing-function:cubic-bezier(.1,.25,.75,.9);-o-animation-timing-function:cubic-bezier(.1,.25,.75,.9);animation-timing-function:cubic-bezier(.1,.25,.75,.9);-webkit-animation-fill-mode:both;-moz-animation-fill-mode:both;-ms-animation-fill-mode:both;-o-animation-fill-mode:both;animation-fill-mode:both}@-webkit-keyframes slideLeftOut40-data-v-4979d51c{from{-webkit-transform:translate3d(0,0,0)}to{-webkit-transform:translate3d(-40px,0,0)}}@keyframes slideLeftOut40-data-v-4979d51c{from{transform:translate3d(0,0,0)}to{transform:translate3d(-40px,0,0)}}.ms-u-slideRightOut400[data-v-4979d51c]{-webkit-animation-name:fadeOut-data-v-4979d51c,slideRightOut400-data-v-4979d51c;-moz-animation-name:fadeOut-data-v-4979d51c,slideRightOut400-data-v-4979d51c;-ms-animation-name:fadeOut-data-v-4979d51c,slideRightOut400-data-v-4979d51c;-o-animation-name:fadeOut-data-v-4979d51c,slideRightOut400-data-v-4979d51c;animation-name:fadeOut-data-v-4979d51c,slideRightOut400-data-v-4979d51c;-webkit-animation-duration:167ms;-moz-animation-duration:167ms;-ms-animation-duration:167ms;-o-animation-duration:167ms;-webkit-animation-timing-function:cubic-bezier(.1,.25,.75,.9);-moz-animation-timing-function:cubic-bezier(.1,.25,.75,.9);-ms-animation-timing-function:cubic-bezier(.1,.25,.75,.9);-o-animation-timing-function:cubic-bezier(.1,.25,.75,.9);animation-timing-function:cubic-bezier(.1,.25,.75,.9);-webkit-animation-fill-mode:both;-moz-animation-fill-mode:both;-ms-animation-fill-mode:both;-o-animation-fill-mode:both;animation-fill-mode:both}@-webkit-keyframes slideRightOut400-data-v-4979d51c{from{-webkit-transform:translate3d(0,0,0)}to{-webkit-transform:translate3d(400px,0,0)}}@keyframes slideRightOut400-data-v-4979d51c{from{transform:translate3d(0,0,0)}to{transform:translate3d(400px,0,0)}}.ms-u-slideLeftOut400[data-v-4979d51c]{-webkit-animation-name:fadeOut-data-v-4979d51c,slideLeftOut400-data-v-4979d51c;-moz-animation-name:fadeOut-data-v-4979d51c,slideLeftOut400-data-v-4979d51c;-ms-animation-name:fadeOut-data-v-4979d51c,slideLeftOut400-data-v-4979d51c;-o-animation-name:fadeOut-data-v-4979d51c,slideLeftOut400-data-v-4979d51c;animation-name:fadeOut-data-v-4979d51c,slideLeftOut400-data-v-4979d51c;-webkit-animation-duration:167ms;-moz-animation-duration:167ms;-ms-animation-duration:167ms;-o-animation-duration:167ms;-webkit-animation-timing-function:cubic-bezier(.1,.25,.75,.9);-moz-animation-timing-function:cubic-bezier(.1,.25,.75,.9);-ms-animation-timing-function:cubic-bezier(.1,.25,.75,.9);-o-animation-timing-function:cubic-bezier(.1,.25,.75,.9);animation-timing-function:cubic-bezier(.1,.25,.75,.9);-webkit-animation-fill-mode:both;-moz-animation-fill-mode:both;-ms-animation-fill-mode:both;-o-animation-fill-mode:both;animation-fill-mode:both}@-webkit-keyframes slideLeftOut400-data-v-4979d51c{from{-webkit-transform:translate3d(0,0,0)}to{-webkit-transform:translate3d(-400px,0,0)}}@keyframes slideLeftOut400-data-v-4979d51c{from{transform:translate3d(0,0,0)}to{transform:translate3d(-400px,0,0)}}.ms-u-slideUpOut20[data-v-4979d51c]{-webkit-animation-name:fadeOut-data-v-4979d51c,slideUpOut20-data-v-4979d51c;-moz-animation-name:fadeOut-data-v-4979d51c,slideUpOut20-data-v-4979d51c;-ms-animation-name:fadeOut-data-v-4979d51c,slideUpOut20-data-v-4979d51c;-o-animation-name:fadeOut-data-v-4979d51c,slideUpOut20-data-v-4979d51c;animation-name:fadeOut-data-v-4979d51c,slideUpOut20-data-v-4979d51c;-webkit-animation-duration:167ms;-moz-animation-duration:167ms;-ms-animation-duration:167ms;-o-animation-duration:167ms;-webkit-animation-timing-function:cubic-bezier(.1,.25,.75,.9);-moz-animation-timing-function:cubic-bezier(.1,.25,.75,.9);-ms-animation-timing-function:cubic-bezier(.1,.25,.75,.9);-o-animation-timing-function:cubic-bezier(.1,.25,.75,.9);animation-timing-function:cubic-bezier(.1,.25,.75,.9);-webkit-animation-fill-mode:both;-moz-animation-fill-mode:both;-ms-animation-fill-mode:both;-o-animation-fill-mode:both;animation-fill-mode:both}@-webkit-keyframes slideUpOut20-data-v-4979d51c{from{-webkit-transform:translate3d(0,0,0)}to{-webkit-transform:translate3d(0,-20px,0)}}@keyframes slideUpOut20-data-v-4979d51c{from{transform:translate3d(0,0,0)}to{transform:translate3d(0,-20px,0)}}.ms-u-slideUpOut10[data-v-4979d51c]{-webkit-animation-name:fadeOut-data-v-4979d51c,slideUpOut10-data-v-4979d51c;-moz-animation-name:fadeOut-data-v-4979d51c,slideUpOut10-data-v-4979d51c;-ms-animation-name:fadeOut-data-v-4979d51c,slideUpOut10-data-v-4979d51c;-o-animation-name:fadeOut-data-v-4979d51c,slideUpOut10-data-v-4979d51c;animation-name:fadeOut-data-v-4979d51c,slideUpOut10-data-v-4979d51c;-webkit-animation-duration:167ms;-moz-animation-duration:167ms;-ms-animation-duration:167ms;-o-animation-duration:167ms;-webkit-animation-timing-function:cubic-bezier(.1,.25,.75,.9);-moz-animation-timing-function:cubic-bezier(.1,.25,.75,.9);-ms-animation-timing-function:cubic-bezier(.1,.25,.75,.9);-o-animation-timing-function:cubic-bezier(.1,.25,.75,.9);animation-timing-function:cubic-bezier(.1,.25,.75,.9);-webkit-animation-fill-mode:both;-moz-animation-fill-mode:both;-ms-animation-fill-mode:both;-o-animation-fill-mode:both;animation-fill-mode:both}@-webkit-keyframes slideUpOut10-data-v-4979d51c{from{-webkit-transform:translate3d(0,0,0)}to{-webkit-transform:translate3d(0,-10px,0)}}@keyframes slideUpOut10-data-v-4979d51c{from{transform:translate3d(0,0,0)}to{transform:translate3d(0,-10px,0)}}.ms-u-slideDownOut20[data-v-4979d51c]{-webkit-animation-name:fadeOut-data-v-4979d51c,slideDownOut20-data-v-4979d51c;-moz-animation-name:fadeOut-data-v-4979d51c,slideDownOut20-data-v-4979d51c;-ms-animation-name:fadeOut-data-v-4979d51c,slideDownOut20-data-v-4979d51c;-o-animation-name:fadeOut-data-v-4979d51c,slideDownOut20-data-v-4979d51c;animation-name:fadeOut-data-v-4979d51c,slideDownOut20-data-v-4979d51c;-webkit-animation-duration:167ms;-moz-animation-duration:167ms;-ms-animation-duration:167ms;-o-animation-duration:167ms;-webkit-animation-timing-function:cubic-bezier(.1,.25,.75,.9);-moz-animation-timing-function:cubic-bezier(.1,.25,.75,.9);-ms-animation-timing-function:cubic-bezier(.1,.25,.75,.9);-o-animation-timing-function:cubic-bezier(.1,.25,.75,.9);animation-timing-function:cubic-bezier(.1,.25,.75,.9);-webkit-animation-fill-mode:both;-moz-animation-fill-mode:both;-ms-animation-fill-mode:both;-o-animation-fill-mode:both;animation-fill-mode:both}@-webkit-keyframes slideDownOut20-data-v-4979d51c{from{-webkit-transform:translate3d(0,0,0)}to{-webkit-transform:translate3d(0,20px,0)}}@keyframes slideDownOut20-data-v-4979d51c{from{transform:translate3d(0,0,0)}to{transform:translate3d(0,20px,0)}}.ms-u-slideDownOut10[data-v-4979d51c]{-webkit-animation-name:fadeOut-data-v-4979d51c,slideDownOut10-data-v-4979d51c;-moz-animation-name:fadeOut-data-v-4979d51c,slideDownOut10-data-v-4979d51c;-ms-animation-name:fadeOut-data-v-4979d51c,slideDownOut10-data-v-4979d51c;-o-animation-name:fadeOut-data-v-4979d51c,slideDownOut10-data-v-4979d51c;animation-name:fadeOut-data-v-4979d51c,slideDownOut10-data-v-4979d51c;-webkit-animation-duration:167ms;-moz-animation-duration:167ms;-ms-animation-duration:167ms;-o-animation-duration:167ms;-webkit-animation-timing-function:cubic-bezier(.1,.25,.75,.9);-moz-animation-timing-function:cubic-bezier(.1,.25,.75,.9);-ms-animation-timing-function:cubic-bezier(.1,.25,.75,.9);-o-animation-timing-function:cubic-bezier(.1,.25,.75,.9);animation-timing-function:cubic-bezier(.1,.25,.75,.9);-webkit-animation-fill-mode:both;-moz-animation-fill-mode:both;-ms-animation-fill-mode:both;-o-animation-fill-mode:both;animation-fill-mode:both}@-webkit-keyframes slideDownOut10-data-v-4979d51c{from{-webkit-transform:translate3d(0,0,0)}to{-webkit-transform:translate3d(0,10px,0)}}@keyframes slideDownOut10-data-v-4979d51c{from{transform:translate3d(0,0,0)}to{transform:translate3d(0,10px,0)}}.ms-u-scaleUpIn100[data-v-4979d51c]{-webkit-animation-name:fadeIn-data-v-4979d51c,scaleUp100-data-v-4979d51c;-moz-animation-name:fadeIn-data-v-4979d51c,scaleUp100-data-v-4979d51c;-ms-animation-name:fadeIn-data-v-4979d51c,scaleUp100-data-v-4979d51c;-o-animation-name:fadeIn-data-v-4979d51c,scaleUp100-data-v-4979d51c;animation-name:fadeIn-data-v-4979d51c,scaleUp100-data-v-4979d51c;-webkit-animation-duration:367ms;-moz-animation-duration:367ms;-ms-animation-duration:367ms;-o-animation-duration:367ms;-webkit-animation-timing-function:cubic-bezier(.1,.9,.2,1);-moz-animation-timing-function:cubic-bezier(.1,.9,.2,1);-ms-animation-timing-function:cubic-bezier(.1,.9,.2,1);-o-animation-timing-function:cubic-bezier(.1,.9,.2,1);animation-timing-function:cubic-bezier(.1,.9,.2,1);-webkit-animation-fill-mode:both;-moz-animation-fill-mode:both;-ms-animation-fill-mode:both;-o-animation-fill-mode:both;animation-fill-mode:both}@-webkit-keyframes scaleUp100-data-v-4979d51c{from{-webkit-transform:scale3d(.98,.98,1)}to{-webkit-transform:scale3d(1,1,1)}}@keyframes scaleUp100-data-v-4979d51c{from{transform:scale3d(.98,.98,1)}to{transform:scale3d(1,1,1)}}.ms-u-scaleDownIn100[data-v-4979d51c]{-webkit-animation-name:fadeIn-data-v-4979d51c,scaleDown100-data-v-4979d51c;-moz-animation-name:fadeIn-data-v-4979d51c,scaleDown100-data-v-4979d51c;-ms-animation-name:fadeIn-data-v-4979d51c,scaleDown100-data-v-4979d51c;-o-animation-name:fadeIn-data-v-4979d51c,scaleDown100-data-v-4979d51c;animation-name:fadeIn-data-v-4979d51c,scaleDown100-data-v-4979d51c;-webkit-animation-duration:367ms;-moz-animation-duration:367ms;-ms-animation-duration:367ms;-o-animation-duration:367ms;-webkit-animation-timing-function:cubic-bezier(.1,.9,.2,1);-moz-animation-timing-function:cubic-bezier(.1,.9,.2,1);-ms-animation-timing-function:cubic-bezier(.1,.9,.2,1);-o-animation-timing-function:cubic-bezier(.1,.9,.2,1);animation-timing-function:cubic-bezier(.1,.9,.2,1);-webkit-animation-fill-mode:both;-moz-animation-fill-mode:both;-ms-animation-fill-mode:both;-o-animation-fill-mode:both;animation-fill-mode:both}@-webkit-keyframes scaleDown100-data-v-4979d51c{from{-webkit-transform:scale3d(1.03,1.03,1)}to{-webkit-transform:scale3d(1,1,1)}}@keyframes scaleDown100-data-v-4979d51c{from{transform:scale3d(1.03,1.03,1)}to{transform:scale3d(1,1,1)}}.ms-u-scaleUpOut103[data-v-4979d51c]{-webkit-animation-name:fadeOut-data-v-4979d51c,scaleUp103-data-v-4979d51c;-moz-animation-name:fadeOut-data-v-4979d51c,scaleUp103-data-v-4979d51c;-ms-animation-name:fadeOut-data-v-4979d51c,scaleUp103-data-v-4979d51c;-o-animation-name:fadeOut-data-v-4979d51c,scaleUp103-data-v-4979d51c;animation-name:fadeOut-data-v-4979d51c,scaleUp103-data-v-4979d51c;-webkit-animation-duration:167ms;-moz-animation-duration:167ms;-ms-animation-duration:167ms;-o-animation-duration:167ms;-webkit-animation-timing-function:cubic-bezier(.1,.25,.75,.9);-moz-animation-timing-function:cubic-bezier(.1,.25,.75,.9);-ms-animation-timing-function:cubic-bezier(.1,.25,.75,.9);-o-animation-timing-function:cubic-bezier(.1,.25,.75,.9);animation-timing-function:cubic-bezier(.1,.25,.75,.9);-webkit-animation-fill-mode:both;-moz-animation-fill-mode:both;-ms-animation-fill-mode:both;-o-animation-fill-mode:both;animation-fill-mode:both}@-webkit-keyframes scaleUp103-data-v-4979d51c{from{-webkit-transform:scale3d(1,1,1)}to{-webkit-transform:scale3d(1.03,1.03,1)}}@keyframes scaleUp103-data-v-4979d51c{from{transform:scale3d(1,1,1)}to{transform:scale3d(1.03,1.03,1)}}.ms-u-scaleDownOut98[data-v-4979d51c]{-webkit-animation-name:fadeOut-data-v-4979d51c,scaleDown98-data-v-4979d51c;-moz-animation-name:fadeOut-data-v-4979d51c,scaleDown98-data-v-4979d51c;-ms-animation-name:fadeOut-data-v-4979d51c,scaleDown98-data-v-4979d51c;-o-animation-name:fadeOut-data-v-4979d51c,scaleDown98-data-v-4979d51c;animation-name:fadeOut-data-v-4979d51c,scaleDown98-data-v-4979d51c;-webkit-animation-duration:167ms;-moz-animation-duration:167ms;-ms-animation-duration:167ms;-o-animation-duration:167ms;-webkit-animation-timing-function:cubic-bezier(.1,.25,.75,.9);-moz-animation-timing-function:cubic-bezier(.1,.25,.75,.9);-ms-animation-timing-function:cubic-bezier(.1,.25,.75,.9);-o-animation-timing-function:cubic-bezier(.1,.25,.75,.9);animation-timing-function:cubic-bezier(.1,.25,.75,.9);-webkit-animation-fill-mode:both;-moz-animation-fill-mode:both;-ms-animation-fill-mode:both;-o-animation-fill-mode:both;animation-fill-mode:both}@-webkit-keyframes scaleDown98-data-v-4979d51c{from{-webkit-transform:scale3d(1,1,1)}to{-webkit-transform:scale3d(.98,.98,1)}}@keyframes scaleDown98-data-v-4979d51c{from{transform:scale3d(1,1,1)}to{transform:scale3d(.98,.98,1)}}.ms-u-fadeIn400[data-v-4979d51c]{-webkit-animation-duration:367ms;-webkit-animation-name:fadeIn-data-v-4979d51c;-webkit-animation-fill-mode:both;animation-duration:367ms;animation-name:fadeIn-data-v-4979d51c;animation-fill-mode:both}.ms-u-fadeIn100[data-v-4979d51c]{-webkit-animation-duration:367ms;-webkit-animation-name:fadeIn-data-v-4979d51c;-webkit-animation-fill-mode:both;animation-duration:367ms;animation-name:fadeIn-data-v-4979d51c;animation-fill-mode:both;-webkit-animation-duration:167ms;animation-duration:167ms}.ms-u-fadeIn200[data-v-4979d51c]{-webkit-animation-duration:367ms;-webkit-animation-name:fadeIn-data-v-4979d51c;-webkit-animation-fill-mode:both;animation-duration:367ms;animation-name:fadeIn-data-v-4979d51c;animation-fill-mode:both;-webkit-animation-duration:267ms;animation-duration:267ms}.ms-u-fadeIn500[data-v-4979d51c]{-webkit-animation-duration:367ms;-webkit-animation-name:fadeIn-data-v-4979d51c;-webkit-animation-fill-mode:both;animation-duration:367ms;animation-name:fadeIn-data-v-4979d51c;animation-fill-mode:both;-webkit-animation-duration:467ms;animation-duration:467ms}@-webkit-keyframes fadeIn-data-v-4979d51c{from{opacity:0;-webkit-animation-timing-function:cubic-bezier(.1,.25,.75,.9)}to{opacity:1}}@keyframes fadeIn-data-v-4979d51c{from{opacity:0;animation-timing-function:cubic-bezier(.1,.25,.75,.9)}to{opacity:1}}.ms-u-fadeOut400[data-v-4979d51c]{-webkit-animation-duration:367ms;-webkit-animation-name:fadeOut-data-v-4979d51c;-webkit-animation-fill-mode:both;animation-duration:367ms;animation-name:fadeOut-data-v-4979d51c;animation-fill-mode:both}.ms-u-fadeOut100[data-v-4979d51c]{-webkit-animation-duration:367ms;-webkit-animation-name:fadeOut-data-v-4979d51c;-webkit-animation-fill-mode:both;animation-duration:367ms;animation-name:fadeOut-data-v-4979d51c;animation-fill-mode:both;-webkit-animation-duration:.1s;animation-duration:.1s}.ms-u-fadeOut200[data-v-4979d51c]{-webkit-animation-duration:367ms;-webkit-animation-name:fadeOut-data-v-4979d51c;-webkit-animation-fill-mode:both;animation-duration:367ms;animation-name:fadeOut-data-v-4979d51c;animation-fill-mode:both;-webkit-animation-duration:167ms;animation-duration:167ms}.ms-u-fadeOut500[data-v-4979d51c]{-webkit-animation-duration:367ms;-webkit-animation-name:fadeOut-data-v-4979d51c;-webkit-animation-fill-mode:both;animation-duration:367ms;animation-name:fadeOut-data-v-4979d51c;animation-fill-mode:both;-webkit-animation-duration:467ms;animation-duration:467ms}@-webkit-keyframes fadeOut-data-v-4979d51c{from{opacity:1;-webkit-animation-timing-function:cubic-bezier(.1,.25,.75,.9)}to{opacity:0}}@keyframes fadeOut-data-v-4979d51c{from{opacity:1;animation-timing-function:cubic-bezier(.1,.25,.75,.9)}to{opacity:0}}.ms-u-rotate90deg[data-v-4979d51c]{-webkit-animation-name:rotate90-data-v-4979d51c;-moz-animation-name:rotate90-data-v-4979d51c;-ms-animation-name:rotate90-data-v-4979d51c;-o-animation-name:rotate90-data-v-4979d51c;animation-name:rotate90-data-v-4979d51c;-webkit-animation-duration:.1s;-moz-animation-duration:.1s;-ms-animation-duration:.1s;-o-animation-duration:.1s;-webkit-animation-timing-function:cubic-bezier(.1,.25,.75,.9);-moz-animation-timing-function:cubic-bezier(.1,.25,.75,.9);-ms-animation-timing-function:cubic-bezier(.1,.25,.75,.9);-o-animation-timing-function:cubic-bezier(.1,.25,.75,.9);animation-timing-function:cubic-bezier(.1,.25,.75,.9);-webkit-animation-fill-mode:both;-moz-animation-fill-mode:both;-ms-animation-fill-mode:both;-o-animation-fill-mode:both;animation-fill-mode:both}@-webkit-keyframes rotate90-data-v-4979d51c{from{-webkit-transform:rotateZ(0)}to{-webkit-transform:rotateZ(90deg)}}@keyframes rotate90-data-v-4979d51c{from{transform:rotateZ(0)}to{transform:rotateZ(90deg)}}.ms-u-rotateN90deg[data-v-4979d51c]{-webkit-animation-name:rotateN90-data-v-4979d51c;-moz-animation-name:rotateN90-data-v-4979d51c;-ms-animation-name:rotateN90-data-v-4979d51c;-o-animation-name:rotateN90-data-v-4979d51c;animation-name:rotateN90-data-v-4979d51c;-webkit-animation-duration:.1s;-moz-animation-duration:.1s;-ms-animation-duration:.1s;-o-animation-duration:.1s;-webkit-animation-timing-function:cubic-bezier(.1,.25,.75,.9);-moz-animation-timing-function:cubic-bezier(.1,.25,.75,.9);-ms-animation-timing-function:cubic-bezier(.1,.25,.75,.9);-o-animation-timing-function:cubic-bezier(.1,.25,.75,.9);animation-timing-function:cubic-bezier(.1,.25,.75,.9);-webkit-animation-fill-mode:both;-moz-animation-fill-mode:both;-ms-animation-fill-mode:both;-o-animation-fill-mode:both;animation-fill-mode:both}@-webkit-keyframes rotateN90-data-v-4979d51c{from{-webkit-transform:rotateZ(90deg)}to{-webkit-transform:rotateZ(0)}}@keyframes rotateN90-data-v-4979d51c{from{transform:rotateZ(90deg)}to{transform:rotateZ(0)}}.ms-u-expandCollapse400[data-v-4979d51c]{-webkit-transition:height 367ms cubic-bezier(.1,.25,.75,.9);transition:height 367ms cubic-bezier(.1,.25,.75,.9)}.ms-u-expandCollapse200[data-v-4979d51c]{-webkit-transition:height 167ms cubic-bezier(.1,.25,.75,.9);transition:height 167ms cubic-bezier(.1,.25,.75,.9)}.ms-u-expandCollapse100[data-v-4979d51c]{-webkit-transition:height .1s cubic-bezier(.1,.25,.75,.9);transition:height .1s cubic-bezier(.1,.25,.75,.9)}.ms-u-delay100[data-v-4979d51c]{-webkit-animation-delay:167ms;animation-delay:167ms}.ms-u-delay200[data-v-4979d51c]{-webkit-animation-delay:267ms;animation-delay:267ms}.ms-MessageBanner[data-v-4979d51c]{font-family:\"Segoe UI WestEuropean\",\"Segoe UI\",-apple-system,BlinkMacSystemFont,Roboto,\"Helvetica Neue\",sans-serif;-webkit-font-smoothing:antialiased;color:\"[theme:neutralPrimary, default: #333333]\";font-size:12px;font-weight:400;position:relative;border-bottom:1px solid \"[theme:neutralSecondaryAlt, default: #767676]\";background-color:\"[theme:themeLighterAlt, default: #eff6fc]\";min-width:320px;width:100%;height:52px;text-align:center;overflow:hidden;-webkit-animation-name:fadeIn-data-v-4979d51c,slideDownIn20-data-v-4979d51c;-moz-animation-name:fadeIn-data-v-4979d51c,slideDownIn20-data-v-4979d51c;-ms-animation-name:fadeIn-data-v-4979d51c,slideDownIn20-data-v-4979d51c;-o-animation-name:fadeIn-data-v-4979d51c,slideDownIn20-data-v-4979d51c;animation-name:fadeIn-data-v-4979d51c,slideDownIn20-data-v-4979d51c;-webkit-animation-duration:367ms;-moz-animation-duration:367ms;-ms-animation-duration:367ms;-o-animation-duration:367ms;-webkit-animation-timing-function:cubic-bezier(.1,.9,.2,1);-moz-animation-timing-function:cubic-bezier(.1,.9,.2,1);-ms-animation-timing-function:cubic-bezier(.1,.9,.2,1);-o-animation-timing-function:cubic-bezier(.1,.9,.2,1);animation-timing-function:cubic-bezier(.1,.9,.2,1);-webkit-animation-fill-mode:both;-moz-animation-fill-mode:both;-ms-animation-fill-mode:both;-o-animation-fill-mode:both;animation-fill-mode:both}.ms-MessageBanner .ms-Icon[data-v-4979d51c]{font-size:16px}.ms-MessageBanner.hide[data-v-4979d51c]{-webkit-animation-name:fadeOut-data-v-4979d51c,slideUpOut20-data-v-4979d51c;-moz-animation-name:fadeOut-data-v-4979d51c,slideUpOut20-data-v-4979d51c;-ms-animation-name:fadeOut-data-v-4979d51c,slideUpOut20-data-v-4979d51c;-o-animation-name:fadeOut-data-v-4979d51c,slideUpOut20-data-v-4979d51c;animation-name:fadeOut-data-v-4979d51c,slideUpOut20-data-v-4979d51c;-webkit-animation-duration:167ms;-moz-animation-duration:167ms;-ms-animation-duration:167ms;-o-animation-duration:167ms;-webkit-animation-timing-function:cubic-bezier(.1,.25,.75,.9);-moz-animation-timing-function:cubic-bezier(.1,.25,.75,.9);-ms-animation-timing-function:cubic-bezier(.1,.25,.75,.9);-o-animation-timing-function:cubic-bezier(.1,.25,.75,.9);animation-timing-function:cubic-bezier(.1,.25,.75,.9);-webkit-animation-fill-mode:both;-moz-animation-fill-mode:both;-ms-animation-fill-mode:both;-o-animation-fill-mode:both;animation-fill-mode:both}.ms-MessageBanner.is-hidden[data-v-4979d51c]{display:none}.ms-MessageBanner-close[data-v-4979d51c],.ms-MessageBanner-expand[data-v-4979d51c]{height:52px;width:40px;cursor:pointer;border:0;background-color:transparent}.ms-MessageBanner-close[data-v-4979d51c]{position:absolute;right:0;top:0;line-height:52px;color:\"[theme:neutralSecondary, default: #666666]\"}.ms-MessageBanner-text[data-v-4979d51c]{display:inline-block;padding:18px 0;margin-left:0;max-width:770px;overflow:hidden;text-align:left}.ms-MessageBanner-expand[data-v-4979d51c]{display:none;vertical-align:top}.ms-MessageBanner-expand.is-visible[data-v-4979d51c]{display:inline-block}.ms-MessageBanner-action[data-v-4979d51c]{display:inline-block;vertical-align:top;margin-top:10px;margin-left:10px;padding-right:36px}.ms-MessageBanner-action .ms-Button[data-v-4979d51c]{color:\"[theme:white, default: #ffffff]\"}.ms-MessageBanner-clipper[data-v-4979d51c]{overflow:hidden;white-space:nowrap;text-overflow:ellipsis;display:inline-block;vertical-align:top}.ms-MessageBanner.is-expanded[data-v-4979d51c]{height:auto}.ms-MessageBanner.is-expanded .ms-MessageBanner-clipper[data-v-4979d51c]{white-space:normal}@media screen and (max-width:479px){.ms-MessageBanner-action[data-v-4979d51c]{margin:0;display:block;text-align:right;padding:0 10px 10px 0}.ms-MessageBanner-text[data-v-4979d51c]{margin-left:-25px;padding:18px 0 10px;min-width:240px}.ms-MessageBanner-expand[data-v-4979d51c]{display:inline-block;padding:0;margin-left:-5px;width:20px}.ms-MessageBanner-expand .ms-Icon[data-v-4979d51c]{color:\"[theme:themePrimary, default: #0078d7]\"}}@font-face{font-family:FabricMDL2Icons-a13498cf;src:url(https://spoprod-a.akamaihd.net/files/fabric/assets/icons/fabric-icons-a13498cf.woff) format(\"woff\")}.ms-Icon[data-v-4979d51c]{display:inline-block;font-style:normal;font-weight:400}.ms-Icon.ms-Icon--Clear[data-v-4979d51c]::before{font-family:FabricMDL2Icons-a13498cf;content:\"\"}", map: undefined, media: undefined });

      };
      /* scoped */
      const __vue_scope_id__$D = "data-v-4979d51c";
      /* module identifier */
      const __vue_module_identifier__$D = undefined;
      /* functional template */
      const __vue_is_functional_template__$D = false;
      /* style inject */
      const __vue_create_injector__$f = function(context){ 
                    return function(scopeId, data)
                    {
                        if(window['wizstyle-'+scopeId])
                            return;
                        if(__vue_script__$D.loadStyles)
                            __vue_script__$D.loadStyles(data.source);
                        window['wizstyle-'+scopeId]=true;
                    }
                };
      /* style inject SSR */
      
      /* style inject shadow dom */
      

      
      var uiMessageBanner = normalizeComponent(
        { render: __vue_render__$n, staticRenderFns: __vue_staticRenderFns__$n },
        __vue_inject_styles__$D,
        __vue_script__$D,
        __vue_scope_id__$D,
        __vue_is_functional_template__$D,
        __vue_module_identifier__$D,
        false,
        __vue_create_injector__$f,
        undefined,
        undefined
      );

    var script$E = {
      name: 'ou-overlay',
      mixins: [type('dark')],
      props: {
        value: Boolean
      },
      data: function data() {
        return {
          overlayInstance: null
        };
      },
      watch: {
        value: function value() {
          this.setOverlayVisibility();
        }
      },
      computed: {
        overlayClass: function overlayClass() {
          return _defineProperty({}, "ms-Overlay--".concat(this.type), !!this.type);
        }
      },
      mounted: function mounted() {
        this.overlayInstance = new this.$fabric.Overlay(this.$refs.overlay);
        this.setOverlayVisibility();
        this.bindOverlayCloseEvent();
      },
      methods: {
        setOverlayVisibility: function setOverlayVisibility() {
          this.value ? this.overlayInstance.show() : this.overlayInstance.hide();
        },
        bindOverlayCloseEvent: function bindOverlayCloseEvent() {
          var _this = this;

          // Because the overlay component don't have callback when overlay closed,
          // So add a click event when click the overlay to set the value to false
          var overlayElement = this.$refs.overlay;

          var closeOverlay = function closeOverlay() {
            _this.$emit('input', false);
          };

          overlayElement.addEventListener('click', closeOverlay);
        }
      }
    };

    /* script */
    const __vue_script__$E = script$E;

    /* template */
    var __vue_render__$o = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{ref:"overlay",staticClass:"ms-Overlay",class:_vm.overlayClass})};
    var __vue_staticRenderFns__$o = [];

      /* style */
      const __vue_inject_styles__$E = undefined;
      /* scoped */
      const __vue_scope_id__$E = undefined;
      /* module identifier */
      const __vue_module_identifier__$E = undefined;
      /* functional template */
      const __vue_is_functional_template__$E = false;
      /* style inject */
      
      /* style inject SSR */
      
      /* style inject shadow dom */
      

      
      var overlay = normalizeComponent(
        { render: __vue_render__$o, staticRenderFns: __vue_staticRenderFns__$o },
        __vue_inject_styles__$E,
        __vue_script__$E,
        __vue_scope_id__$E,
        __vue_is_functional_template__$E,
        __vue_module_identifier__$E,
        false,
        undefined,
        undefined,
        undefined
      );

    var script$F = {
      loadStyles: loadThemedStyles.loadStyles,
      beforeMount: function beforeMount() {
        this.$fabric = {
          Overlay: Overlay
        };
      },
      // watch:{
      //     useDarkOverlay:{
      //         handler(newVal){
      //         },
      //         immediate : true
      //     }
      // },
      // props : {
      //     useDarkOverlay: Boolean
      // },
      extends: overlay
    };

    /* script */
    const __vue_script__$F = script$F;

    /* template */

      /* style */
      const __vue_inject_styles__$F = function (inject) {
        if (!inject) return
        inject("data-v-4b14bf22_0", { source: ".ms-Overlay[data-v-4b14bf22]{font-family:\"Segoe UI WestEuropean\",\"Segoe UI\",-apple-system,BlinkMacSystemFont,Roboto,\"Helvetica Neue\",sans-serif;-webkit-font-smoothing:antialiased;background-color:\"[theme:whiteTranslucent40, default: rgba(255,255,255,.4)]\";position:fixed;bottom:0;left:0;right:0;top:0;z-index:0;display:none}.ms-Overlay.is-visible[data-v-4b14bf22]{display:block}.ms-Overlay--dark[data-v-4b14bf22]{background-color:\"[theme:blackTranslucent40, default: rgba(0,0,0,.4)]\"}.ms-u-overflowHidden[data-v-4b14bf22]{overflow:hidden}", map: undefined, media: undefined });

      };
      /* scoped */
      const __vue_scope_id__$F = "data-v-4b14bf22";
      /* module identifier */
      const __vue_module_identifier__$F = undefined;
      /* functional template */
      const __vue_is_functional_template__$F = undefined;
      /* style inject */
      const __vue_create_injector__$g = function(context){ 
                    return function(scopeId, data)
                    {
                        if(window['wizstyle-'+scopeId])
                            return;
                        if(__vue_script__$F.loadStyles)
                            __vue_script__$F.loadStyles(data.source);
                        window['wizstyle-'+scopeId]=true;
                    }
                };
      /* style inject SSR */
      
      /* style inject shadow dom */
      

      
      var uiOverlay = normalizeComponent(
        {},
        __vue_inject_styles__$F,
        __vue_script__$F,
        __vue_scope_id__$F,
        __vue_is_functional_template__$F,
        __vue_module_identifier__$F,
        false,
        __vue_create_injector__$g,
        undefined,
        undefined
      );

    function size () {
      for (var _len = arguments.length, size = new Array(_len), _key = 0; _key < _len; _key++) {
        size[_key] = arguments[_key];
      }

      size.push('');
      return {
        props: {
          size: {
            type: String,
            default: '',
            validator: function validator(value) {
              return size.indexOf(value) !== -1;
            }
          }
        }
      };
    }

    var script$G = {
      name: 'ou-panel',
      mixins: [size('md', 'lg', 'xl', 'xxl')],
      props: {
        value: Boolean,
        title: String,
        fixed: {
          type: Boolean,
          default: false
        },
        left: {
          type: Boolean,
          default: false
        },
        block: {
          type: Boolean,
          default: false
        }
      },
      data: function data() {
        return {
          panelInstance: null
        };
      },
      watch: {
        value: function value() {
          this.setPanelVisibility();
        }
      },
      computed: {
        panelClass: function panelClass() {
          var _ref;

          return _ref = {}, _defineProperty(_ref, "ms-Panel--".concat(this.size), !!this.size), _defineProperty(_ref, 'ms-Panel--fixed', this.fixed), _defineProperty(_ref, 'ms-Panel--left', this.left), _ref;
        }
      },
      mounted: function mounted() {
        this.setPanelVisibility();
      },
      methods: {
        setPanelVisibility: function setPanelVisibility() {
          if (this.value) {
            this.panelInstance = new this.$fabric.Panel(this.$refs.panel);
            this.bindOverlayCloseEvent();
          } else if (this.panelInstance) {
            this.panelInstance.dismiss();
          }
        },
        // Because the office ui fabric js don't support on_close or on_open event in panel
        // component, So I have to write some hacking code to change the visible status when
        // click the overlay. Otherwise the visible status can't change, when click the overlay
        // to close the panel.
        bindOverlayCloseEvent: function bindOverlayCloseEvent() {
          var overlayElement = this.panelInstance.panelHost.overlay.overlayElement;

          if (this.block) {
            // Remove overlayElement to avoid close panel when click overlay.
            overlayElement.remove();
          } else {
            overlayElement.addEventListener('click', this.closePanel);
          }
        },
        closePanel: function closePanel() {
          this.$emit('input', false); // Because the panel overlay have event to fire dismiss method when click it to
          // close panel. To prevent fire the panel dismiss method again and raise some error,
          // so set the panelInstance to null

          this.panelInstance = null;
        }
      }
    };

    /* script */
    const __vue_script__$G = script$G;

    /* template */
    var __vue_render__$p = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{ref:"panel",staticClass:"ms-Panel",class:_vm.panelClass},[_c('button',{staticClass:"ms-Panel-closeButton ms-PanelAction-close",on:{"click":_vm.closePanel}},[_c('i',{staticClass:"ms-Panel-closeIcon ms-Icon ms-Icon--Cancel"})]),_vm._v(" "),_c('div',{staticClass:"ms-Panel-contentInner"},[_c('p',{staticClass:"ms-Panel-headerText"},[_vm._v(_vm._s(_vm.title))]),_vm._v(" "),_c('div',{staticClass:"ms-Panel-content"},[_vm._t("default")],2)])])};
    var __vue_staticRenderFns__$p = [];

      /* style */
      const __vue_inject_styles__$G = undefined;
      /* scoped */
      const __vue_scope_id__$G = undefined;
      /* module identifier */
      const __vue_module_identifier__$G = undefined;
      /* functional template */
      const __vue_is_functional_template__$G = false;
      /* style inject */
      
      /* style inject SSR */
      
      /* style inject shadow dom */
      

      
      var panel = normalizeComponent(
        { render: __vue_render__$p, staticRenderFns: __vue_staticRenderFns__$p },
        __vue_inject_styles__$G,
        __vue_script__$G,
        __vue_scope_id__$G,
        __vue_is_functional_template__$G,
        __vue_module_identifier__$G,
        false,
        undefined,
        undefined,
        undefined
      );

    var script$H = {
      loadStyles: loadThemedStyles.loadStyles,
      beforeMount: function beforeMount() {
        this.$fabric = {
          Panel: Panel
        };
      },
      watch: {
        value: function value(newVal) {
          if (newVal) {
            this.panelInstance.panelHost.overlay.overlayElement.setAttribute(this.$options._scopeId, "");
          }
        }
      },
      beforeDestroy: function beforeDestroy() {
        if (this.panelInstance != null) this.panelInstance.dismiss();
      },
      extends: panel
    };

    /* script */
    const __vue_script__$H = script$H;

    /* template */

      /* style */
      const __vue_inject_styles__$H = function (inject) {
        if (!inject) return
        inject("data-v-0930174c_0", { source: "@charset \"UTF-8\";.ms-u-slideRightIn10[data-v-0930174c]{-webkit-animation-name:fadeIn-data-v-0930174c,slideRightIn10-data-v-0930174c;-moz-animation-name:fadeIn-data-v-0930174c,slideRightIn10-data-v-0930174c;-ms-animation-name:fadeIn-data-v-0930174c,slideRightIn10-data-v-0930174c;-o-animation-name:fadeIn-data-v-0930174c,slideRightIn10-data-v-0930174c;animation-name:fadeIn-data-v-0930174c,slideRightIn10-data-v-0930174c;-webkit-animation-duration:367ms;-moz-animation-duration:367ms;-ms-animation-duration:367ms;-o-animation-duration:367ms;-webkit-animation-timing-function:cubic-bezier(.1,.9,.2,1);-moz-animation-timing-function:cubic-bezier(.1,.9,.2,1);-ms-animation-timing-function:cubic-bezier(.1,.9,.2,1);-o-animation-timing-function:cubic-bezier(.1,.9,.2,1);animation-timing-function:cubic-bezier(.1,.9,.2,1);-webkit-animation-fill-mode:both;-moz-animation-fill-mode:both;-ms-animation-fill-mode:both;-o-animation-fill-mode:both;animation-fill-mode:both}@-webkit-keyframes slideRightIn10-data-v-0930174c{from{-webkit-transform:translate3d(-10px,0,0)}to{-webkit-transform:translate3d(0,0,0)}}@keyframes slideRightIn10-data-v-0930174c{from{transform:translate3d(-10px,0,0)}to{transform:translate3d(0,0,0)}}.ms-u-slideRightIn20[data-v-0930174c]{-webkit-animation-name:fadeIn-data-v-0930174c,slideRightIn20-data-v-0930174c;-moz-animation-name:fadeIn-data-v-0930174c,slideRightIn20-data-v-0930174c;-ms-animation-name:fadeIn-data-v-0930174c,slideRightIn20-data-v-0930174c;-o-animation-name:fadeIn-data-v-0930174c,slideRightIn20-data-v-0930174c;animation-name:fadeIn-data-v-0930174c,slideRightIn20-data-v-0930174c;-webkit-animation-duration:367ms;-moz-animation-duration:367ms;-ms-animation-duration:367ms;-o-animation-duration:367ms;-webkit-animation-timing-function:cubic-bezier(.1,.9,.2,1);-moz-animation-timing-function:cubic-bezier(.1,.9,.2,1);-ms-animation-timing-function:cubic-bezier(.1,.9,.2,1);-o-animation-timing-function:cubic-bezier(.1,.9,.2,1);animation-timing-function:cubic-bezier(.1,.9,.2,1);-webkit-animation-fill-mode:both;-moz-animation-fill-mode:both;-ms-animation-fill-mode:both;-o-animation-fill-mode:both;animation-fill-mode:both}@-webkit-keyframes slideRightIn20-data-v-0930174c{from{-webkit-transform:translate3d(-20px,0,0)}to{-webkit-transform:translate3d(0,0,0)}}@keyframes slideRightIn20-data-v-0930174c{from{transform:translate3d(-20px,0,0)}to{transform:translate3d(0,0,0)}}.ms-u-slideRightIn40[data-v-0930174c]{-webkit-animation-name:fadeIn-data-v-0930174c,slideRightIn40-data-v-0930174c;-moz-animation-name:fadeIn-data-v-0930174c,slideRightIn40-data-v-0930174c;-ms-animation-name:fadeIn-data-v-0930174c,slideRightIn40-data-v-0930174c;-o-animation-name:fadeIn-data-v-0930174c,slideRightIn40-data-v-0930174c;animation-name:fadeIn-data-v-0930174c,slideRightIn40-data-v-0930174c;-webkit-animation-duration:367ms;-moz-animation-duration:367ms;-ms-animation-duration:367ms;-o-animation-duration:367ms;-webkit-animation-timing-function:cubic-bezier(.1,.9,.2,1);-moz-animation-timing-function:cubic-bezier(.1,.9,.2,1);-ms-animation-timing-function:cubic-bezier(.1,.9,.2,1);-o-animation-timing-function:cubic-bezier(.1,.9,.2,1);animation-timing-function:cubic-bezier(.1,.9,.2,1);-webkit-animation-fill-mode:both;-moz-animation-fill-mode:both;-ms-animation-fill-mode:both;-o-animation-fill-mode:both;animation-fill-mode:both}@-webkit-keyframes slideRightIn40-data-v-0930174c{from{-webkit-transform:translate3d(-40px,0,0)}to{-webkit-transform:translate3d(0,0,0)}}@keyframes slideRightIn40-data-v-0930174c{from{transform:translate3d(-40px,0,0)}to{transform:translate3d(0,0,0)}}.ms-u-slideLeftIn10[data-v-0930174c]{-webkit-animation-name:fadeIn-data-v-0930174c,slideLeftIn10-data-v-0930174c;-moz-animation-name:fadeIn-data-v-0930174c,slideLeftIn10-data-v-0930174c;-ms-animation-name:fadeIn-data-v-0930174c,slideLeftIn10-data-v-0930174c;-o-animation-name:fadeIn-data-v-0930174c,slideLeftIn10-data-v-0930174c;animation-name:fadeIn-data-v-0930174c,slideLeftIn10-data-v-0930174c;-webkit-animation-duration:367ms;-moz-animation-duration:367ms;-ms-animation-duration:367ms;-o-animation-duration:367ms;-webkit-animation-timing-function:cubic-bezier(.1,.9,.2,1);-moz-animation-timing-function:cubic-bezier(.1,.9,.2,1);-ms-animation-timing-function:cubic-bezier(.1,.9,.2,1);-o-animation-timing-function:cubic-bezier(.1,.9,.2,1);animation-timing-function:cubic-bezier(.1,.9,.2,1);-webkit-animation-fill-mode:both;-moz-animation-fill-mode:both;-ms-animation-fill-mode:both;-o-animation-fill-mode:both;animation-fill-mode:both}@-webkit-keyframes slideLeftIn10-data-v-0930174c{from{-webkit-transform:translate3d(10px,0,0)}to{-webkit-transform:translate3d(0,0,0)}}@keyframes slideLeftIn10-data-v-0930174c{from{transform:translate3d(10px,0,0)}to{transform:translate3d(0,0,0)}}.ms-u-slideLeftIn20[data-v-0930174c]{-webkit-animation-name:fadeIn-data-v-0930174c,slideLeftIn20-data-v-0930174c;-moz-animation-name:fadeIn-data-v-0930174c,slideLeftIn20-data-v-0930174c;-ms-animation-name:fadeIn-data-v-0930174c,slideLeftIn20-data-v-0930174c;-o-animation-name:fadeIn-data-v-0930174c,slideLeftIn20-data-v-0930174c;animation-name:fadeIn-data-v-0930174c,slideLeftIn20-data-v-0930174c;-webkit-animation-duration:367ms;-moz-animation-duration:367ms;-ms-animation-duration:367ms;-o-animation-duration:367ms;-webkit-animation-timing-function:cubic-bezier(.1,.9,.2,1);-moz-animation-timing-function:cubic-bezier(.1,.9,.2,1);-ms-animation-timing-function:cubic-bezier(.1,.9,.2,1);-o-animation-timing-function:cubic-bezier(.1,.9,.2,1);animation-timing-function:cubic-bezier(.1,.9,.2,1);-webkit-animation-fill-mode:both;-moz-animation-fill-mode:both;-ms-animation-fill-mode:both;-o-animation-fill-mode:both;animation-fill-mode:both}@-webkit-keyframes slideLeftIn20-data-v-0930174c{from{-webkit-transform:translate3d(20px,0,0)}to{-webkit-transform:translate3d(0,0,0)}}@keyframes slideLeftIn20-data-v-0930174c{from{transform:translate3d(20px,0,0)}to{transform:translate3d(0,0,0)}}.ms-u-slideLeftIn40[data-v-0930174c]{-webkit-animation-name:fadeIn-data-v-0930174c,slideLeftIn40-data-v-0930174c;-moz-animation-name:fadeIn-data-v-0930174c,slideLeftIn40-data-v-0930174c;-ms-animation-name:fadeIn-data-v-0930174c,slideLeftIn40-data-v-0930174c;-o-animation-name:fadeIn-data-v-0930174c,slideLeftIn40-data-v-0930174c;animation-name:fadeIn-data-v-0930174c,slideLeftIn40-data-v-0930174c;-webkit-animation-duration:367ms;-moz-animation-duration:367ms;-ms-animation-duration:367ms;-o-animation-duration:367ms;-webkit-animation-timing-function:cubic-bezier(.1,.9,.2,1);-moz-animation-timing-function:cubic-bezier(.1,.9,.2,1);-ms-animation-timing-function:cubic-bezier(.1,.9,.2,1);-o-animation-timing-function:cubic-bezier(.1,.9,.2,1);animation-timing-function:cubic-bezier(.1,.9,.2,1);-webkit-animation-fill-mode:both;-moz-animation-fill-mode:both;-ms-animation-fill-mode:both;-o-animation-fill-mode:both;animation-fill-mode:both}@-webkit-keyframes slideLeftIn40-data-v-0930174c{from{-webkit-transform:translate3d(40px,0,0)}to{-webkit-transform:translate3d(0,0,0)}}@keyframes slideLeftIn40-data-v-0930174c{from{transform:translate3d(40px,0,0)}to{transform:translate3d(0,0,0)}}.ms-u-slideRightIn400[data-v-0930174c]{-webkit-animation-name:fadeIn-data-v-0930174c,slideRightIn400-data-v-0930174c;-moz-animation-name:fadeIn-data-v-0930174c,slideRightIn400-data-v-0930174c;-ms-animation-name:fadeIn-data-v-0930174c,slideRightIn400-data-v-0930174c;-o-animation-name:fadeIn-data-v-0930174c,slideRightIn400-data-v-0930174c;animation-name:fadeIn-data-v-0930174c,slideRightIn400-data-v-0930174c;-webkit-animation-duration:367ms;-moz-animation-duration:367ms;-ms-animation-duration:367ms;-o-animation-duration:367ms;-webkit-animation-timing-function:cubic-bezier(.1,.9,.2,1);-moz-animation-timing-function:cubic-bezier(.1,.9,.2,1);-ms-animation-timing-function:cubic-bezier(.1,.9,.2,1);-o-animation-timing-function:cubic-bezier(.1,.9,.2,1);animation-timing-function:cubic-bezier(.1,.9,.2,1);-webkit-animation-fill-mode:both;-moz-animation-fill-mode:both;-ms-animation-fill-mode:both;-o-animation-fill-mode:both;animation-fill-mode:both}@-webkit-keyframes slideRightIn400-data-v-0930174c{from{-webkit-transform:translate3d(-400px,0,0)}to{-webkit-transform:translate3d(0,0,0)}}@keyframes slideRightIn400-data-v-0930174c{from{transform:translate3d(-400px,0,0)}to{transform:translate3d(0,0,0)}}.ms-u-slideLeftIn400[data-v-0930174c]{-webkit-animation-name:fadeIn-data-v-0930174c,slideLeft400-data-v-0930174c;-moz-animation-name:fadeIn-data-v-0930174c,slideLeft400-data-v-0930174c;-ms-animation-name:fadeIn-data-v-0930174c,slideLeft400-data-v-0930174c;-o-animation-name:fadeIn-data-v-0930174c,slideLeft400-data-v-0930174c;animation-name:fadeIn-data-v-0930174c,slideLeft400-data-v-0930174c;-webkit-animation-duration:367ms;-moz-animation-duration:367ms;-ms-animation-duration:367ms;-o-animation-duration:367ms;-webkit-animation-timing-function:cubic-bezier(.1,.9,.2,1);-moz-animation-timing-function:cubic-bezier(.1,.9,.2,1);-ms-animation-timing-function:cubic-bezier(.1,.9,.2,1);-o-animation-timing-function:cubic-bezier(.1,.9,.2,1);animation-timing-function:cubic-bezier(.1,.9,.2,1);-webkit-animation-fill-mode:both;-moz-animation-fill-mode:both;-ms-animation-fill-mode:both;-o-animation-fill-mode:both;animation-fill-mode:both}@-webkit-keyframes slideLeft400-data-v-0930174c{from{-webkit-transform:translate3d(400px,0,0)}to{-webkit-transform:translate3d(0,0,0)}}@keyframes slideLeft400-data-v-0930174c{from{transform:translate3d(400px,0,0)}to{transform:translate3d(0,0,0)}}.ms-u-slideUpIn20[data-v-0930174c]{-webkit-animation-name:fadeIn-data-v-0930174c,slideUpIn20-data-v-0930174c;-moz-animation-name:fadeIn-data-v-0930174c,slideUpIn20-data-v-0930174c;-ms-animation-name:fadeIn-data-v-0930174c,slideUpIn20-data-v-0930174c;-o-animation-name:fadeIn-data-v-0930174c,slideUpIn20-data-v-0930174c;animation-name:fadeIn-data-v-0930174c,slideUpIn20-data-v-0930174c;-webkit-animation-duration:367ms;-moz-animation-duration:367ms;-ms-animation-duration:367ms;-o-animation-duration:367ms;-webkit-animation-timing-function:cubic-bezier(.1,.9,.2,1);-moz-animation-timing-function:cubic-bezier(.1,.9,.2,1);-ms-animation-timing-function:cubic-bezier(.1,.9,.2,1);-o-animation-timing-function:cubic-bezier(.1,.9,.2,1);animation-timing-function:cubic-bezier(.1,.9,.2,1);-webkit-animation-fill-mode:both;-moz-animation-fill-mode:both;-ms-animation-fill-mode:both;-o-animation-fill-mode:both;animation-fill-mode:both}@-webkit-keyframes slideUpIn20-data-v-0930174c{from{-webkit-transform:translate3d(0,20px,0)}to{-webkit-transform:translate3d(0,0,0)}}@keyframes slideUpIn20-data-v-0930174c{from{transform:translate3d(0,20px,0)}to{transform:translate3d(0,0,0)}}.ms-u-slideUpIn10[data-v-0930174c]{-webkit-animation-name:fadeIn-data-v-0930174c,slideUpIn10-data-v-0930174c;-moz-animation-name:fadeIn-data-v-0930174c,slideUpIn10-data-v-0930174c;-ms-animation-name:fadeIn-data-v-0930174c,slideUpIn10-data-v-0930174c;-o-animation-name:fadeIn-data-v-0930174c,slideUpIn10-data-v-0930174c;animation-name:fadeIn-data-v-0930174c,slideUpIn10-data-v-0930174c;-webkit-animation-duration:167ms;-moz-animation-duration:167ms;-ms-animation-duration:167ms;-o-animation-duration:167ms;-webkit-animation-timing-function:cubic-bezier(.1,.25,.75,.9);-moz-animation-timing-function:cubic-bezier(.1,.25,.75,.9);-ms-animation-timing-function:cubic-bezier(.1,.25,.75,.9);-o-animation-timing-function:cubic-bezier(.1,.25,.75,.9);animation-timing-function:cubic-bezier(.1,.25,.75,.9);-webkit-animation-fill-mode:both;-moz-animation-fill-mode:both;-ms-animation-fill-mode:both;-o-animation-fill-mode:both;animation-fill-mode:both}@-webkit-keyframes slideUpIn10-data-v-0930174c{from{-webkit-transform:translate3d(0,10px,0)}to{-webkit-transform:translate3d(0,0,0)}}@keyframes slideUpIn10-data-v-0930174c{from{transform:translate3d(0,10px,0)}to{transform:translate3d(0,0,0)}}.ms-u-slideDownIn20[data-v-0930174c]{-webkit-animation-name:fadeIn-data-v-0930174c,slideDownIn20-data-v-0930174c;-moz-animation-name:fadeIn-data-v-0930174c,slideDownIn20-data-v-0930174c;-ms-animation-name:fadeIn-data-v-0930174c,slideDownIn20-data-v-0930174c;-o-animation-name:fadeIn-data-v-0930174c,slideDownIn20-data-v-0930174c;animation-name:fadeIn-data-v-0930174c,slideDownIn20-data-v-0930174c;-webkit-animation-duration:367ms;-moz-animation-duration:367ms;-ms-animation-duration:367ms;-o-animation-duration:367ms;-webkit-animation-timing-function:cubic-bezier(.1,.9,.2,1);-moz-animation-timing-function:cubic-bezier(.1,.9,.2,1);-ms-animation-timing-function:cubic-bezier(.1,.9,.2,1);-o-animation-timing-function:cubic-bezier(.1,.9,.2,1);animation-timing-function:cubic-bezier(.1,.9,.2,1);-webkit-animation-fill-mode:both;-moz-animation-fill-mode:both;-ms-animation-fill-mode:both;-o-animation-fill-mode:both;animation-fill-mode:both}@-webkit-keyframes slideDownIn20-data-v-0930174c{from{-webkit-transform:translate3d(0,-20px,0)}to{-webkit-transform:translate3d(0,0,0)}}@keyframes slideDownIn20-data-v-0930174c{from{transform:translate3d(0,-20px,0)}to{transform:translate3d(0,0,0)}}.ms-u-slideDownIn10[data-v-0930174c]{-webkit-animation-name:fadeIn-data-v-0930174c,slideDownIn10-data-v-0930174c;-moz-animation-name:fadeIn-data-v-0930174c,slideDownIn10-data-v-0930174c;-ms-animation-name:fadeIn-data-v-0930174c,slideDownIn10-data-v-0930174c;-o-animation-name:fadeIn-data-v-0930174c,slideDownIn10-data-v-0930174c;animation-name:fadeIn-data-v-0930174c,slideDownIn10-data-v-0930174c;-webkit-animation-duration:167ms;-moz-animation-duration:167ms;-ms-animation-duration:167ms;-o-animation-duration:167ms;-webkit-animation-timing-function:cubic-bezier(.1,.25,.75,.9);-moz-animation-timing-function:cubic-bezier(.1,.25,.75,.9);-ms-animation-timing-function:cubic-bezier(.1,.25,.75,.9);-o-animation-timing-function:cubic-bezier(.1,.25,.75,.9);animation-timing-function:cubic-bezier(.1,.25,.75,.9);-webkit-animation-fill-mode:both;-moz-animation-fill-mode:both;-ms-animation-fill-mode:both;-o-animation-fill-mode:both;animation-fill-mode:both}@-webkit-keyframes slideDownIn10-data-v-0930174c{from{-webkit-transform:translate3d(0,-10px,0)}to{-webkit-transform:translate3d(0,0,0)}}@keyframes slideDownIn10-data-v-0930174c{from{transform:translate3d(0,-10px,0)}to{transform:translate3d(0,0,0)}}.ms-u-slideRightOut40[data-v-0930174c]{-webkit-animation-name:fadeOut-data-v-0930174c,slideRightOut40-data-v-0930174c;-moz-animation-name:fadeOut-data-v-0930174c,slideRightOut40-data-v-0930174c;-ms-animation-name:fadeOut-data-v-0930174c,slideRightOut40-data-v-0930174c;-o-animation-name:fadeOut-data-v-0930174c,slideRightOut40-data-v-0930174c;animation-name:fadeOut-data-v-0930174c,slideRightOut40-data-v-0930174c;-webkit-animation-duration:167ms;-moz-animation-duration:167ms;-ms-animation-duration:167ms;-o-animation-duration:167ms;-webkit-animation-timing-function:cubic-bezier(.1,.25,.75,.9);-moz-animation-timing-function:cubic-bezier(.1,.25,.75,.9);-ms-animation-timing-function:cubic-bezier(.1,.25,.75,.9);-o-animation-timing-function:cubic-bezier(.1,.25,.75,.9);animation-timing-function:cubic-bezier(.1,.25,.75,.9);-webkit-animation-fill-mode:both;-moz-animation-fill-mode:both;-ms-animation-fill-mode:both;-o-animation-fill-mode:both;animation-fill-mode:both}@-webkit-keyframes slideRightOut40-data-v-0930174c{from{-webkit-transform:translate3d(0,0,0)}to{-webkit-transform:translate3d(40px,0,0)}}@keyframes slideRightOut40-data-v-0930174c{from{transform:translate3d(0,0,0)}to{transform:translate3d(40px,0,0)}}.ms-u-slideLeftOut40[data-v-0930174c]{-webkit-animation-name:fadeOut-data-v-0930174c,slideLeftOut40-data-v-0930174c;-moz-animation-name:fadeOut-data-v-0930174c,slideLeftOut40-data-v-0930174c;-ms-animation-name:fadeOut-data-v-0930174c,slideLeftOut40-data-v-0930174c;-o-animation-name:fadeOut-data-v-0930174c,slideLeftOut40-data-v-0930174c;animation-name:fadeOut-data-v-0930174c,slideLeftOut40-data-v-0930174c;-webkit-animation-duration:167ms;-moz-animation-duration:167ms;-ms-animation-duration:167ms;-o-animation-duration:167ms;-webkit-animation-timing-function:cubic-bezier(.1,.25,.75,.9);-moz-animation-timing-function:cubic-bezier(.1,.25,.75,.9);-ms-animation-timing-function:cubic-bezier(.1,.25,.75,.9);-o-animation-timing-function:cubic-bezier(.1,.25,.75,.9);animation-timing-function:cubic-bezier(.1,.25,.75,.9);-webkit-animation-fill-mode:both;-moz-animation-fill-mode:both;-ms-animation-fill-mode:both;-o-animation-fill-mode:both;animation-fill-mode:both}@-webkit-keyframes slideLeftOut40-data-v-0930174c{from{-webkit-transform:translate3d(0,0,0)}to{-webkit-transform:translate3d(-40px,0,0)}}@keyframes slideLeftOut40-data-v-0930174c{from{transform:translate3d(0,0,0)}to{transform:translate3d(-40px,0,0)}}.ms-u-slideRightOut400[data-v-0930174c]{-webkit-animation-name:fadeOut-data-v-0930174c,slideRightOut400-data-v-0930174c;-moz-animation-name:fadeOut-data-v-0930174c,slideRightOut400-data-v-0930174c;-ms-animation-name:fadeOut-data-v-0930174c,slideRightOut400-data-v-0930174c;-o-animation-name:fadeOut-data-v-0930174c,slideRightOut400-data-v-0930174c;animation-name:fadeOut-data-v-0930174c,slideRightOut400-data-v-0930174c;-webkit-animation-duration:167ms;-moz-animation-duration:167ms;-ms-animation-duration:167ms;-o-animation-duration:167ms;-webkit-animation-timing-function:cubic-bezier(.1,.25,.75,.9);-moz-animation-timing-function:cubic-bezier(.1,.25,.75,.9);-ms-animation-timing-function:cubic-bezier(.1,.25,.75,.9);-o-animation-timing-function:cubic-bezier(.1,.25,.75,.9);animation-timing-function:cubic-bezier(.1,.25,.75,.9);-webkit-animation-fill-mode:both;-moz-animation-fill-mode:both;-ms-animation-fill-mode:both;-o-animation-fill-mode:both;animation-fill-mode:both}@-webkit-keyframes slideRightOut400-data-v-0930174c{from{-webkit-transform:translate3d(0,0,0)}to{-webkit-transform:translate3d(400px,0,0)}}@keyframes slideRightOut400-data-v-0930174c{from{transform:translate3d(0,0,0)}to{transform:translate3d(400px,0,0)}}.ms-u-slideLeftOut400[data-v-0930174c]{-webkit-animation-name:fadeOut-data-v-0930174c,slideLeftOut400-data-v-0930174c;-moz-animation-name:fadeOut-data-v-0930174c,slideLeftOut400-data-v-0930174c;-ms-animation-name:fadeOut-data-v-0930174c,slideLeftOut400-data-v-0930174c;-o-animation-name:fadeOut-data-v-0930174c,slideLeftOut400-data-v-0930174c;animation-name:fadeOut-data-v-0930174c,slideLeftOut400-data-v-0930174c;-webkit-animation-duration:167ms;-moz-animation-duration:167ms;-ms-animation-duration:167ms;-o-animation-duration:167ms;-webkit-animation-timing-function:cubic-bezier(.1,.25,.75,.9);-moz-animation-timing-function:cubic-bezier(.1,.25,.75,.9);-ms-animation-timing-function:cubic-bezier(.1,.25,.75,.9);-o-animation-timing-function:cubic-bezier(.1,.25,.75,.9);animation-timing-function:cubic-bezier(.1,.25,.75,.9);-webkit-animation-fill-mode:both;-moz-animation-fill-mode:both;-ms-animation-fill-mode:both;-o-animation-fill-mode:both;animation-fill-mode:both}@-webkit-keyframes slideLeftOut400-data-v-0930174c{from{-webkit-transform:translate3d(0,0,0)}to{-webkit-transform:translate3d(-400px,0,0)}}@keyframes slideLeftOut400-data-v-0930174c{from{transform:translate3d(0,0,0)}to{transform:translate3d(-400px,0,0)}}.ms-u-slideUpOut20[data-v-0930174c]{-webkit-animation-name:fadeOut-data-v-0930174c,slideUpOut20-data-v-0930174c;-moz-animation-name:fadeOut-data-v-0930174c,slideUpOut20-data-v-0930174c;-ms-animation-name:fadeOut-data-v-0930174c,slideUpOut20-data-v-0930174c;-o-animation-name:fadeOut-data-v-0930174c,slideUpOut20-data-v-0930174c;animation-name:fadeOut-data-v-0930174c,slideUpOut20-data-v-0930174c;-webkit-animation-duration:167ms;-moz-animation-duration:167ms;-ms-animation-duration:167ms;-o-animation-duration:167ms;-webkit-animation-timing-function:cubic-bezier(.1,.25,.75,.9);-moz-animation-timing-function:cubic-bezier(.1,.25,.75,.9);-ms-animation-timing-function:cubic-bezier(.1,.25,.75,.9);-o-animation-timing-function:cubic-bezier(.1,.25,.75,.9);animation-timing-function:cubic-bezier(.1,.25,.75,.9);-webkit-animation-fill-mode:both;-moz-animation-fill-mode:both;-ms-animation-fill-mode:both;-o-animation-fill-mode:both;animation-fill-mode:both}@-webkit-keyframes slideUpOut20-data-v-0930174c{from{-webkit-transform:translate3d(0,0,0)}to{-webkit-transform:translate3d(0,-20px,0)}}@keyframes slideUpOut20-data-v-0930174c{from{transform:translate3d(0,0,0)}to{transform:translate3d(0,-20px,0)}}.ms-u-slideUpOut10[data-v-0930174c]{-webkit-animation-name:fadeOut-data-v-0930174c,slideUpOut10-data-v-0930174c;-moz-animation-name:fadeOut-data-v-0930174c,slideUpOut10-data-v-0930174c;-ms-animation-name:fadeOut-data-v-0930174c,slideUpOut10-data-v-0930174c;-o-animation-name:fadeOut-data-v-0930174c,slideUpOut10-data-v-0930174c;animation-name:fadeOut-data-v-0930174c,slideUpOut10-data-v-0930174c;-webkit-animation-duration:167ms;-moz-animation-duration:167ms;-ms-animation-duration:167ms;-o-animation-duration:167ms;-webkit-animation-timing-function:cubic-bezier(.1,.25,.75,.9);-moz-animation-timing-function:cubic-bezier(.1,.25,.75,.9);-ms-animation-timing-function:cubic-bezier(.1,.25,.75,.9);-o-animation-timing-function:cubic-bezier(.1,.25,.75,.9);animation-timing-function:cubic-bezier(.1,.25,.75,.9);-webkit-animation-fill-mode:both;-moz-animation-fill-mode:both;-ms-animation-fill-mode:both;-o-animation-fill-mode:both;animation-fill-mode:both}@-webkit-keyframes slideUpOut10-data-v-0930174c{from{-webkit-transform:translate3d(0,0,0)}to{-webkit-transform:translate3d(0,-10px,0)}}@keyframes slideUpOut10-data-v-0930174c{from{transform:translate3d(0,0,0)}to{transform:translate3d(0,-10px,0)}}.ms-u-slideDownOut20[data-v-0930174c]{-webkit-animation-name:fadeOut-data-v-0930174c,slideDownOut20-data-v-0930174c;-moz-animation-name:fadeOut-data-v-0930174c,slideDownOut20-data-v-0930174c;-ms-animation-name:fadeOut-data-v-0930174c,slideDownOut20-data-v-0930174c;-o-animation-name:fadeOut-data-v-0930174c,slideDownOut20-data-v-0930174c;animation-name:fadeOut-data-v-0930174c,slideDownOut20-data-v-0930174c;-webkit-animation-duration:167ms;-moz-animation-duration:167ms;-ms-animation-duration:167ms;-o-animation-duration:167ms;-webkit-animation-timing-function:cubic-bezier(.1,.25,.75,.9);-moz-animation-timing-function:cubic-bezier(.1,.25,.75,.9);-ms-animation-timing-function:cubic-bezier(.1,.25,.75,.9);-o-animation-timing-function:cubic-bezier(.1,.25,.75,.9);animation-timing-function:cubic-bezier(.1,.25,.75,.9);-webkit-animation-fill-mode:both;-moz-animation-fill-mode:both;-ms-animation-fill-mode:both;-o-animation-fill-mode:both;animation-fill-mode:both}@-webkit-keyframes slideDownOut20-data-v-0930174c{from{-webkit-transform:translate3d(0,0,0)}to{-webkit-transform:translate3d(0,20px,0)}}@keyframes slideDownOut20-data-v-0930174c{from{transform:translate3d(0,0,0)}to{transform:translate3d(0,20px,0)}}.ms-u-slideDownOut10[data-v-0930174c]{-webkit-animation-name:fadeOut-data-v-0930174c,slideDownOut10-data-v-0930174c;-moz-animation-name:fadeOut-data-v-0930174c,slideDownOut10-data-v-0930174c;-ms-animation-name:fadeOut-data-v-0930174c,slideDownOut10-data-v-0930174c;-o-animation-name:fadeOut-data-v-0930174c,slideDownOut10-data-v-0930174c;animation-name:fadeOut-data-v-0930174c,slideDownOut10-data-v-0930174c;-webkit-animation-duration:167ms;-moz-animation-duration:167ms;-ms-animation-duration:167ms;-o-animation-duration:167ms;-webkit-animation-timing-function:cubic-bezier(.1,.25,.75,.9);-moz-animation-timing-function:cubic-bezier(.1,.25,.75,.9);-ms-animation-timing-function:cubic-bezier(.1,.25,.75,.9);-o-animation-timing-function:cubic-bezier(.1,.25,.75,.9);animation-timing-function:cubic-bezier(.1,.25,.75,.9);-webkit-animation-fill-mode:both;-moz-animation-fill-mode:both;-ms-animation-fill-mode:both;-o-animation-fill-mode:both;animation-fill-mode:both}@-webkit-keyframes slideDownOut10-data-v-0930174c{from{-webkit-transform:translate3d(0,0,0)}to{-webkit-transform:translate3d(0,10px,0)}}@keyframes slideDownOut10-data-v-0930174c{from{transform:translate3d(0,0,0)}to{transform:translate3d(0,10px,0)}}.ms-u-scaleUpIn100[data-v-0930174c]{-webkit-animation-name:fadeIn-data-v-0930174c,scaleUp100-data-v-0930174c;-moz-animation-name:fadeIn-data-v-0930174c,scaleUp100-data-v-0930174c;-ms-animation-name:fadeIn-data-v-0930174c,scaleUp100-data-v-0930174c;-o-animation-name:fadeIn-data-v-0930174c,scaleUp100-data-v-0930174c;animation-name:fadeIn-data-v-0930174c,scaleUp100-data-v-0930174c;-webkit-animation-duration:367ms;-moz-animation-duration:367ms;-ms-animation-duration:367ms;-o-animation-duration:367ms;-webkit-animation-timing-function:cubic-bezier(.1,.9,.2,1);-moz-animation-timing-function:cubic-bezier(.1,.9,.2,1);-ms-animation-timing-function:cubic-bezier(.1,.9,.2,1);-o-animation-timing-function:cubic-bezier(.1,.9,.2,1);animation-timing-function:cubic-bezier(.1,.9,.2,1);-webkit-animation-fill-mode:both;-moz-animation-fill-mode:both;-ms-animation-fill-mode:both;-o-animation-fill-mode:both;animation-fill-mode:both}@-webkit-keyframes scaleUp100-data-v-0930174c{from{-webkit-transform:scale3d(.98,.98,1)}to{-webkit-transform:scale3d(1,1,1)}}@keyframes scaleUp100-data-v-0930174c{from{transform:scale3d(.98,.98,1)}to{transform:scale3d(1,1,1)}}.ms-u-scaleDownIn100[data-v-0930174c]{-webkit-animation-name:fadeIn-data-v-0930174c,scaleDown100-data-v-0930174c;-moz-animation-name:fadeIn-data-v-0930174c,scaleDown100-data-v-0930174c;-ms-animation-name:fadeIn-data-v-0930174c,scaleDown100-data-v-0930174c;-o-animation-name:fadeIn-data-v-0930174c,scaleDown100-data-v-0930174c;animation-name:fadeIn-data-v-0930174c,scaleDown100-data-v-0930174c;-webkit-animation-duration:367ms;-moz-animation-duration:367ms;-ms-animation-duration:367ms;-o-animation-duration:367ms;-webkit-animation-timing-function:cubic-bezier(.1,.9,.2,1);-moz-animation-timing-function:cubic-bezier(.1,.9,.2,1);-ms-animation-timing-function:cubic-bezier(.1,.9,.2,1);-o-animation-timing-function:cubic-bezier(.1,.9,.2,1);animation-timing-function:cubic-bezier(.1,.9,.2,1);-webkit-animation-fill-mode:both;-moz-animation-fill-mode:both;-ms-animation-fill-mode:both;-o-animation-fill-mode:both;animation-fill-mode:both}@-webkit-keyframes scaleDown100-data-v-0930174c{from{-webkit-transform:scale3d(1.03,1.03,1)}to{-webkit-transform:scale3d(1,1,1)}}@keyframes scaleDown100-data-v-0930174c{from{transform:scale3d(1.03,1.03,1)}to{transform:scale3d(1,1,1)}}.ms-u-scaleUpOut103[data-v-0930174c]{-webkit-animation-name:fadeOut-data-v-0930174c,scaleUp103-data-v-0930174c;-moz-animation-name:fadeOut-data-v-0930174c,scaleUp103-data-v-0930174c;-ms-animation-name:fadeOut-data-v-0930174c,scaleUp103-data-v-0930174c;-o-animation-name:fadeOut-data-v-0930174c,scaleUp103-data-v-0930174c;animation-name:fadeOut-data-v-0930174c,scaleUp103-data-v-0930174c;-webkit-animation-duration:167ms;-moz-animation-duration:167ms;-ms-animation-duration:167ms;-o-animation-duration:167ms;-webkit-animation-timing-function:cubic-bezier(.1,.25,.75,.9);-moz-animation-timing-function:cubic-bezier(.1,.25,.75,.9);-ms-animation-timing-function:cubic-bezier(.1,.25,.75,.9);-o-animation-timing-function:cubic-bezier(.1,.25,.75,.9);animation-timing-function:cubic-bezier(.1,.25,.75,.9);-webkit-animation-fill-mode:both;-moz-animation-fill-mode:both;-ms-animation-fill-mode:both;-o-animation-fill-mode:both;animation-fill-mode:both}@-webkit-keyframes scaleUp103-data-v-0930174c{from{-webkit-transform:scale3d(1,1,1)}to{-webkit-transform:scale3d(1.03,1.03,1)}}@keyframes scaleUp103-data-v-0930174c{from{transform:scale3d(1,1,1)}to{transform:scale3d(1.03,1.03,1)}}.ms-u-scaleDownOut98[data-v-0930174c]{-webkit-animation-name:fadeOut-data-v-0930174c,scaleDown98-data-v-0930174c;-moz-animation-name:fadeOut-data-v-0930174c,scaleDown98-data-v-0930174c;-ms-animation-name:fadeOut-data-v-0930174c,scaleDown98-data-v-0930174c;-o-animation-name:fadeOut-data-v-0930174c,scaleDown98-data-v-0930174c;animation-name:fadeOut-data-v-0930174c,scaleDown98-data-v-0930174c;-webkit-animation-duration:167ms;-moz-animation-duration:167ms;-ms-animation-duration:167ms;-o-animation-duration:167ms;-webkit-animation-timing-function:cubic-bezier(.1,.25,.75,.9);-moz-animation-timing-function:cubic-bezier(.1,.25,.75,.9);-ms-animation-timing-function:cubic-bezier(.1,.25,.75,.9);-o-animation-timing-function:cubic-bezier(.1,.25,.75,.9);animation-timing-function:cubic-bezier(.1,.25,.75,.9);-webkit-animation-fill-mode:both;-moz-animation-fill-mode:both;-ms-animation-fill-mode:both;-o-animation-fill-mode:both;animation-fill-mode:both}@-webkit-keyframes scaleDown98-data-v-0930174c{from{-webkit-transform:scale3d(1,1,1)}to{-webkit-transform:scale3d(.98,.98,1)}}@keyframes scaleDown98-data-v-0930174c{from{transform:scale3d(1,1,1)}to{transform:scale3d(.98,.98,1)}}.ms-u-fadeIn400[data-v-0930174c]{-webkit-animation-duration:367ms;-webkit-animation-name:fadeIn-data-v-0930174c;-webkit-animation-fill-mode:both;animation-duration:367ms;animation-name:fadeIn-data-v-0930174c;animation-fill-mode:both}.ms-u-fadeIn100[data-v-0930174c]{-webkit-animation-duration:367ms;-webkit-animation-name:fadeIn-data-v-0930174c;-webkit-animation-fill-mode:both;animation-duration:367ms;animation-name:fadeIn-data-v-0930174c;animation-fill-mode:both;-webkit-animation-duration:167ms;animation-duration:167ms}.ms-u-fadeIn200[data-v-0930174c]{-webkit-animation-duration:367ms;-webkit-animation-name:fadeIn-data-v-0930174c;-webkit-animation-fill-mode:both;animation-duration:367ms;animation-name:fadeIn-data-v-0930174c;animation-fill-mode:both;-webkit-animation-duration:267ms;animation-duration:267ms}.ms-u-fadeIn500[data-v-0930174c]{-webkit-animation-duration:367ms;-webkit-animation-name:fadeIn-data-v-0930174c;-webkit-animation-fill-mode:both;animation-duration:367ms;animation-name:fadeIn-data-v-0930174c;animation-fill-mode:both;-webkit-animation-duration:467ms;animation-duration:467ms}@-webkit-keyframes fadeIn-data-v-0930174c{from{opacity:0;-webkit-animation-timing-function:cubic-bezier(.1,.25,.75,.9)}to{opacity:1}}@keyframes fadeIn-data-v-0930174c{from{opacity:0;animation-timing-function:cubic-bezier(.1,.25,.75,.9)}to{opacity:1}}.ms-u-fadeOut400[data-v-0930174c]{-webkit-animation-duration:367ms;-webkit-animation-name:fadeOut-data-v-0930174c;-webkit-animation-fill-mode:both;animation-duration:367ms;animation-name:fadeOut-data-v-0930174c;animation-fill-mode:both}.ms-u-fadeOut100[data-v-0930174c]{-webkit-animation-duration:367ms;-webkit-animation-name:fadeOut-data-v-0930174c;-webkit-animation-fill-mode:both;animation-duration:367ms;animation-name:fadeOut-data-v-0930174c;animation-fill-mode:both;-webkit-animation-duration:.1s;animation-duration:.1s}.ms-u-fadeOut200[data-v-0930174c]{-webkit-animation-duration:367ms;-webkit-animation-name:fadeOut-data-v-0930174c;-webkit-animation-fill-mode:both;animation-duration:367ms;animation-name:fadeOut-data-v-0930174c;animation-fill-mode:both;-webkit-animation-duration:167ms;animation-duration:167ms}.ms-u-fadeOut500[data-v-0930174c]{-webkit-animation-duration:367ms;-webkit-animation-name:fadeOut-data-v-0930174c;-webkit-animation-fill-mode:both;animation-duration:367ms;animation-name:fadeOut-data-v-0930174c;animation-fill-mode:both;-webkit-animation-duration:467ms;animation-duration:467ms}@-webkit-keyframes fadeOut-data-v-0930174c{from{opacity:1;-webkit-animation-timing-function:cubic-bezier(.1,.25,.75,.9)}to{opacity:0}}@keyframes fadeOut-data-v-0930174c{from{opacity:1;animation-timing-function:cubic-bezier(.1,.25,.75,.9)}to{opacity:0}}.ms-u-rotate90deg[data-v-0930174c]{-webkit-animation-name:rotate90-data-v-0930174c;-moz-animation-name:rotate90-data-v-0930174c;-ms-animation-name:rotate90-data-v-0930174c;-o-animation-name:rotate90-data-v-0930174c;animation-name:rotate90-data-v-0930174c;-webkit-animation-duration:.1s;-moz-animation-duration:.1s;-ms-animation-duration:.1s;-o-animation-duration:.1s;-webkit-animation-timing-function:cubic-bezier(.1,.25,.75,.9);-moz-animation-timing-function:cubic-bezier(.1,.25,.75,.9);-ms-animation-timing-function:cubic-bezier(.1,.25,.75,.9);-o-animation-timing-function:cubic-bezier(.1,.25,.75,.9);animation-timing-function:cubic-bezier(.1,.25,.75,.9);-webkit-animation-fill-mode:both;-moz-animation-fill-mode:both;-ms-animation-fill-mode:both;-o-animation-fill-mode:both;animation-fill-mode:both}@-webkit-keyframes rotate90-data-v-0930174c{from{-webkit-transform:rotateZ(0)}to{-webkit-transform:rotateZ(90deg)}}@keyframes rotate90-data-v-0930174c{from{transform:rotateZ(0)}to{transform:rotateZ(90deg)}}.ms-u-rotateN90deg[data-v-0930174c]{-webkit-animation-name:rotateN90-data-v-0930174c;-moz-animation-name:rotateN90-data-v-0930174c;-ms-animation-name:rotateN90-data-v-0930174c;-o-animation-name:rotateN90-data-v-0930174c;animation-name:rotateN90-data-v-0930174c;-webkit-animation-duration:.1s;-moz-animation-duration:.1s;-ms-animation-duration:.1s;-o-animation-duration:.1s;-webkit-animation-timing-function:cubic-bezier(.1,.25,.75,.9);-moz-animation-timing-function:cubic-bezier(.1,.25,.75,.9);-ms-animation-timing-function:cubic-bezier(.1,.25,.75,.9);-o-animation-timing-function:cubic-bezier(.1,.25,.75,.9);animation-timing-function:cubic-bezier(.1,.25,.75,.9);-webkit-animation-fill-mode:both;-moz-animation-fill-mode:both;-ms-animation-fill-mode:both;-o-animation-fill-mode:both;animation-fill-mode:both}@-webkit-keyframes rotateN90-data-v-0930174c{from{-webkit-transform:rotateZ(90deg)}to{-webkit-transform:rotateZ(0)}}@keyframes rotateN90-data-v-0930174c{from{transform:rotateZ(90deg)}to{transform:rotateZ(0)}}.ms-u-expandCollapse400[data-v-0930174c]{-webkit-transition:height 367ms cubic-bezier(.1,.25,.75,.9);transition:height 367ms cubic-bezier(.1,.25,.75,.9)}.ms-u-expandCollapse200[data-v-0930174c]{-webkit-transition:height 167ms cubic-bezier(.1,.25,.75,.9);transition:height 167ms cubic-bezier(.1,.25,.75,.9)}.ms-u-expandCollapse100[data-v-0930174c]{-webkit-transition:height .1s cubic-bezier(.1,.25,.75,.9);transition:height .1s cubic-bezier(.1,.25,.75,.9)}.ms-u-delay100[data-v-0930174c]{-webkit-animation-delay:167ms;animation-delay:167ms}.ms-u-delay200[data-v-0930174c]{-webkit-animation-delay:267ms;animation-delay:267ms}.ms-Panel[data-v-0930174c]{font-family:\"Segoe UI WestEuropean\",\"Segoe UI\",-apple-system,BlinkMacSystemFont,Roboto,\"Helvetica Neue\",sans-serif;-webkit-font-smoothing:antialiased;background-color:\"[theme:white, default: #ffffff]\";width:100%;max-width:340px;box-shadow:-30px 0 30px -30px rgba(0,0,0,.2);position:absolute;top:0;right:0;bottom:0;z-index:10;display:none;height:100%}.ms-Panel.animate-in[data-v-0930174c]{-webkit-animation-name:fadeIn-data-v-0930174c,slideLeftIn40-data-v-0930174c;-moz-animation-name:fadeIn-data-v-0930174c,slideLeftIn40-data-v-0930174c;-ms-animation-name:fadeIn-data-v-0930174c,slideLeftIn40-data-v-0930174c;-o-animation-name:fadeIn-data-v-0930174c,slideLeftIn40-data-v-0930174c;animation-name:fadeIn-data-v-0930174c,slideLeftIn40-data-v-0930174c;-webkit-animation-duration:367ms;-moz-animation-duration:367ms;-ms-animation-duration:367ms;-o-animation-duration:367ms;-webkit-animation-timing-function:cubic-bezier(.1,.9,.2,1);-moz-animation-timing-function:cubic-bezier(.1,.9,.2,1);-ms-animation-timing-function:cubic-bezier(.1,.9,.2,1);-o-animation-timing-function:cubic-bezier(.1,.9,.2,1);animation-timing-function:cubic-bezier(.1,.9,.2,1);-webkit-animation-fill-mode:both;-moz-animation-fill-mode:both;-ms-animation-fill-mode:both;-o-animation-fill-mode:both;animation-fill-mode:both}.ms-Panel.animate-out[data-v-0930174c]{-webkit-animation-name:fadeOut-data-v-0930174c,slideRightOut40-data-v-0930174c;-moz-animation-name:fadeOut-data-v-0930174c,slideRightOut40-data-v-0930174c;-ms-animation-name:fadeOut-data-v-0930174c,slideRightOut40-data-v-0930174c;-o-animation-name:fadeOut-data-v-0930174c,slideRightOut40-data-v-0930174c;animation-name:fadeOut-data-v-0930174c,slideRightOut40-data-v-0930174c;-webkit-animation-duration:167ms;-moz-animation-duration:167ms;-ms-animation-duration:167ms;-o-animation-duration:167ms;-webkit-animation-timing-function:cubic-bezier(.1,.25,.75,.9);-moz-animation-timing-function:cubic-bezier(.1,.25,.75,.9);-ms-animation-timing-function:cubic-bezier(.1,.25,.75,.9);-o-animation-timing-function:cubic-bezier(.1,.25,.75,.9);animation-timing-function:cubic-bezier(.1,.25,.75,.9);-webkit-animation-fill-mode:both;-moz-animation-fill-mode:both;-ms-animation-fill-mode:both;-o-animation-fill-mode:both;animation-fill-mode:both}.ms-Panel.is-open[data-v-0930174c]{display:block}.ms-Panel .ms-CommandBar[data-v-0930174c]{padding-right:0;padding-left:8px}.ms-Panel.ms-Panel--md[data-v-0930174c]{max-width:340px}.ms-Panel.ms-Panel--lg[data-v-0930174c]{max-width:644px}.ms-Panel.ms-Panel--xl[data-v-0930174c]{max-width:940px}.ms-Panel.ms-Panel--xxl[data-v-0930174c]{max-width:1192px}.ms-Panel--left[data-v-0930174c]{box-shadow:-30px 0 30px 30px rgba(0,0,0,.2);left:0;right:auto}.ms-Panel--left.animate-in[data-v-0930174c]{-webkit-animation-name:fadeIn-data-v-0930174c,slideRightIn40-data-v-0930174c;-moz-animation-name:fadeIn-data-v-0930174c,slideRightIn40-data-v-0930174c;-ms-animation-name:fadeIn-data-v-0930174c,slideRightIn40-data-v-0930174c;-o-animation-name:fadeIn-data-v-0930174c,slideRightIn40-data-v-0930174c;animation-name:fadeIn-data-v-0930174c,slideRightIn40-data-v-0930174c;-webkit-animation-duration:367ms;-moz-animation-duration:367ms;-ms-animation-duration:367ms;-o-animation-duration:367ms;-webkit-animation-timing-function:cubic-bezier(.1,.9,.2,1);-moz-animation-timing-function:cubic-bezier(.1,.9,.2,1);-ms-animation-timing-function:cubic-bezier(.1,.9,.2,1);-o-animation-timing-function:cubic-bezier(.1,.9,.2,1);animation-timing-function:cubic-bezier(.1,.9,.2,1);-webkit-animation-fill-mode:both;-moz-animation-fill-mode:both;-ms-animation-fill-mode:both;-o-animation-fill-mode:both;animation-fill-mode:both}.ms-Panel--left.animate-out[data-v-0930174c]{-webkit-animation-name:fadeOut-data-v-0930174c,slideLeftOut40-data-v-0930174c;-moz-animation-name:fadeOut-data-v-0930174c,slideLeftOut40-data-v-0930174c;-ms-animation-name:fadeOut-data-v-0930174c,slideLeftOut40-data-v-0930174c;-o-animation-name:fadeOut-data-v-0930174c,slideLeftOut40-data-v-0930174c;animation-name:fadeOut-data-v-0930174c,slideLeftOut40-data-v-0930174c;-webkit-animation-duration:167ms;-moz-animation-duration:167ms;-ms-animation-duration:167ms;-o-animation-duration:167ms;-webkit-animation-timing-function:cubic-bezier(.1,.25,.75,.9);-moz-animation-timing-function:cubic-bezier(.1,.25,.75,.9);-ms-animation-timing-function:cubic-bezier(.1,.25,.75,.9);-o-animation-timing-function:cubic-bezier(.1,.25,.75,.9);animation-timing-function:cubic-bezier(.1,.25,.75,.9);-webkit-animation-fill-mode:both;-moz-animation-fill-mode:both;-ms-animation-fill-mode:both;-o-animation-fill-mode:both;animation-fill-mode:both}.ms-Panel-closeButton[data-v-0930174c]{background:0 0;border:0;cursor:pointer;position:absolute;right:6px;top:0;height:40px;width:40px;line-height:40px;outline:0;padding:0;color:\"[theme:neutralSecondary, default: #666666]\";font-size:16px}.ms-Panel-closeButton[data-v-0930174c]:hover{color:\"[theme:neutralPrimary, default: #333333]\"}.ms-Panel-closeButton .ms-Icon--Cancel[data-v-0930174c]{margin-top:2px}@media (max-width:639px){.ms-Panel-closeButton[data-v-0930174c]{font-size:20px;line-height:20px;height:44px;right:4px}}.ms-Panel-contentInner[data-v-0930174c]{margin-top:40px;padding:0 16px 20px;overflow-y:auto;height:100%}@media (min-width:640px){.ms-Panel-contentInner[data-v-0930174c]{padding:0 32px 20px}}@media (min-width:1366px){.ms-Panel-contentInner[data-v-0930174c]{padding:0 40px 20px}}.ms-Panel-headerText[data-v-0930174c]{font-weight:100;font-size:21px;color:\"[theme:neutralPrimary, default: #333333]\";margin:10px 0;padding:4px 0;line-height:1;text-overflow:ellipsis;overflow:hidden}@media (min-width:1024px){.ms-Panel-headerText[data-v-0930174c]{margin-top:30px}}.ms-Overlay[data-v-0930174c]{font-family:\"Segoe UI WestEuropean\",\"Segoe UI\",-apple-system,BlinkMacSystemFont,Roboto,\"Helvetica Neue\",sans-serif;-webkit-font-smoothing:antialiased;background-color:\"[theme:whiteTranslucent40, default: rgba(255,255,255,.4)]\";position:fixed;bottom:0;left:0;right:0;top:0;z-index:0;display:none}.ms-Overlay.is-visible[data-v-0930174c]{display:block}.ms-Overlay--dark[data-v-0930174c]{background-color:\"[theme:blackTranslucent40, default: rgba(0,0,0,.4)]\"}.ms-u-overflowHidden[data-v-0930174c]{overflow:hidden}.ms-Panel-contentInner[data-v-0930174c]{margin-top:0;border-top:solid 40px transparent;box-sizing:border-box}@font-face{font-family:FabricMDL2Icons-a13498cf;src:url(https://spoprod-a.akamaihd.net/files/fabric/assets/icons/fabric-icons-a13498cf.woff) format(\"woff\")}.ms-Icon[data-v-0930174c]{display:inline-block;font-style:normal;font-weight:400}.ms-Icon.ms-Icon--Cancel[data-v-0930174c]::before{font-family:FabricMDL2Icons-a13498cf;content:\"\"}", map: undefined, media: undefined });

      };
      /* scoped */
      const __vue_scope_id__$H = "data-v-0930174c";
      /* module identifier */
      const __vue_module_identifier__$H = undefined;
      /* functional template */
      const __vue_is_functional_template__$H = undefined;
      /* style inject */
      const __vue_create_injector__$h = function(context){ 
                    return function(scopeId, data)
                    {
                        if(window['wizstyle-'+scopeId])
                            return;
                        if(__vue_script__$H.loadStyles)
                            __vue_script__$H.loadStyles(data.source);
                        window['wizstyle-'+scopeId]=true;
                    }
                };
      /* style inject SSR */
      
      /* style inject shadow dom */
      

      
      var uiPanel = normalizeComponent(
        {},
        __vue_inject_styles__$H,
        __vue_script__$H,
        __vue_scope_id__$H,
        __vue_is_functional_template__$H,
        __vue_module_identifier__$H,
        false,
        __vue_create_injector__$h,
        undefined,
        undefined
      );

    var script$I = {
      name: 'ou-persona',
      mixins: [size('tiny', 'xs', 'sm', 'lg', 'xl'), type('available', 'away', 'blocked', 'busy', 'dnd', 'offline')],
      data: function data() {
        if (this.initials) {
          var validateColor = ['blue', 'blueLight', 'blueDark', 'teal', 'greenLight', 'green', 'greenDark', 'magentaLight', 'magenta', 'purpleLight', 'purple', 'black', 'orange', 'red', 'redDark'];
          var initialsLetter = this.initials[0].toUpperCase();
          var initialsIndex = initialsLetter.charCodeAt() - 65; // get radom color from validateColor

          return {
            initialsColor: validateColor[Math.round(validateColor.length / 26 * initialsIndex)]
          };
        }

        return {
          initialsColor: ''
        };
      },
      props: {
        src: String,
        initials: String,
        primaryText: String,
        secondaryText: String,
        tertiaryText: String,
        optionalText: String
      },
      computed: {
        personaClass: function personaClass() {
          var _ref;

          return _ref = {}, _defineProperty(_ref, "ms-Persona--".concat(this.size), !!this.size), _defineProperty(_ref, "ms-Persona--".concat(this.type), !!this.type), _ref;
        },
        initialsPersonaClass: function initialsPersonaClass() {
          return _defineProperty({}, "ms-Persona-initials--".concat(this.initialsColor), !!this.initialsColor);
        },
        personaIconClass: function personaIconClass() {
          var icon = '';

          switch (this.type) {
            case 'available':
              icon = 'SkypeCheck';
              break;

            case 'away':
              icon = 'SkypeClock';
              break;

            case 'dnd':
              icon = 'SkypeMinus';
              break;
          }

          if (icon) {
            return "ms-Icon--".concat(icon);
          }
        }
      }
    };

    /* script */
    const __vue_script__$I = script$I;

    /* template */
    var __vue_render__$q = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{staticClass:"ms-Persona",class:_vm.personaClass},[_c('div',{staticClass:"ms-Persona-imageArea"},[(!_vm.initials)?_c('img',{staticClass:"ms-Persona-image",attrs:{"src":_vm.src}}):_c('div',{staticClass:"ms-Persona-initials",class:_vm.initialsPersonaClass},[_vm._v(_vm._s(_vm.initials.toUpperCase()))])]),_vm._v(" "),(_vm.type)?_c('div',{staticClass:"ms-Persona-presence"},[_c('i',{staticClass:"ms-Persona-presenceIcon ms-Icon",class:_vm.personaIconClass})]):_vm._e(),_vm._v(" "),_c('div',{staticClass:"ms-Persona-details"},[_c('div',{staticClass:"ms-Persona-primaryText"},[_vm._v(_vm._s(_vm.primaryText))]),_vm._v(" "),_c('div',{staticClass:"ms-Persona-secondaryText"},[_vm._v(_vm._s(_vm.secondaryText))]),_vm._v(" "),_c('div',{staticClass:"ms-Persona-tertiaryText"},[_vm._v(_vm._s(_vm.tertiaryText))]),_vm._v(" "),_c('div',{staticClass:"ms-Persona-optionalText"},[_vm._v(_vm._s(_vm.optionalText))])])])};
    var __vue_staticRenderFns__$q = [];

      /* style */
      const __vue_inject_styles__$I = undefined;
      /* scoped */
      const __vue_scope_id__$I = undefined;
      /* module identifier */
      const __vue_module_identifier__$I = undefined;
      /* functional template */
      const __vue_is_functional_template__$I = false;
      /* style inject */
      
      /* style inject SSR */
      
      /* style inject shadow dom */
      

      
      var persona = normalizeComponent(
        { render: __vue_render__$q, staticRenderFns: __vue_staticRenderFns__$q },
        __vue_inject_styles__$I,
        __vue_script__$I,
        __vue_scope_id__$I,
        __vue_is_functional_template__$I,
        __vue_module_identifier__$I,
        false,
        undefined,
        undefined,
        undefined
      );

    var SCROLL_FRAME_RATE = 33;

    var Animate = function () {
      function Animate() {}

      Animate.transition = function (element, props) {
        var obj = {
          element: element,
          props: props,
          transformations: {}
        };

        Animate._animationObjects.push(obj);

        Animate._parseProperties(obj);

        Animate._createTransition(obj);

        setTimeout(Animate._setProperties, 0, obj);

        Animate._setCallback(obj);
      };

      Animate.animation = function (element, keyframes, props) {
        var obj = {
          element: element,
          keyframes: keyframes,
          props: props
        };

        Animate._animationObjects.push(obj);

        Animate._parseProperties(obj);

        Animate._createAnimation(obj);

        Animate._setCallback(obj);
      };

      Animate.scrollTo = function (element, props) {
        var obj = {
          element: element,
          props: props,
          step: 0
        };

        Animate._setScrollProperties(obj);

        if (obj.props.delay) {
          setTimeout(Animate._animationObjects, obj.props.delay * 1000, obj);
        } else {
          Animate._animateScroll(obj);
        }

        Animate._animationObjects.push(obj);
      };

      Animate._setScrollProperties = function (obj) {
        obj.beginTop = obj.element.scrollTop;
        obj.change = obj.props.top - obj.beginTop;
        obj.props.duration = obj.props.duration * 1000;
      };

      Animate._parseProperties = function (obj) {
        var nonTweenProps = Animate._timeProps.concat(Animate._callbackProps);

        obj.tweenObj = {};

        for (var key in obj.props) {
          if (Animate._contains(nonTweenProps, key)) {
            obj[key] = obj.props[key];
          } else {
            obj.tweenObj[key] = obj.props[key];
          }
        }
      };

      Animate._animateScroll = function (obj) {
        var totalSteps = obj.props.duration / SCROLL_FRAME_RATE;

        var top = Animate._easeOutExpo(obj.step++, obj.beginTop, obj.change, totalSteps);

        obj.element.scrollTop = top;

        if (obj.step >= totalSteps) {
          obj.element.scrollTop = obj.props.top;

          Animate._executeCallback(obj.props);

          Animate._removeAnimationObject(obj);
        } else {
          setTimeout(function () {
            requestAnimationFrame(function () {
              Animate._animateScroll(obj);
            });
          }, SCROLL_FRAME_RATE);
        }
      };

      Animate._createTransition = function (obj) {
        var duration = obj.duration || 0;
        var delay = obj.delay || 0;
        obj.element.style.transitionProperty = Animate._getTransitionProperties(obj.tweenObj);
        obj.element.style.transitionDuration = duration.toString() + "s";
        obj.element.style.transitionTimingFunction = obj.ease || "linear";
        obj.element.style.transitionDelay = delay.toString() + "s";
      };

      Animate._createAnimation = function (obj) {
        var duration = obj.duration || 0;
        var delay = obj.delay || 0;
        obj.element.style.animationName = obj.keyframes;
        obj.element.style.animationDuration = duration.toString() + "s";
        obj.element.style.animationTimingFunction = obj.ease || "linear";
        obj.element.style.animationDelay = delay.toString() + "s";
        obj.element.style.animationFillMode = "both";
      };

      Animate._getTransitionProperties = function (obj) {
        var hasTransform = false;
        var hasFilter = false;
        var properties = [];

        for (var key in obj) {
          if (Animate._contains(Animate._transformProps, key)) {
            hasTransform = true;
          } else if (Animate._contains(Animate._filters, key)) {
            hasFilter = true;
          } else {
            properties.push(Animate._camelCaseToDash(key));
          }
        }

        if (hasTransform) {
          properties.push("transform");
        }

        if (hasFilter) {
          properties.push("-webkit-filter");
          properties.push("filter");
        }

        return properties.join(", ");
      };

      Animate._setProperties = function (obj) {
        for (var key in obj.tweenObj) {
          if (Animate._contains(Animate._transformProps, key)) {
            Animate._setTransformValues(obj, key);
          } else if (Animate._contains(Animate._filters, key)) {
            Animate._setFilterValues(obj, key);
          } else {
            Animate._setRegularValues(obj, key);
          }
        }

        if (obj.transformations) {
          Animate._setTransformations(obj);
        }
      };

      Animate._setRegularValues = function (obj, key) {
        var value = obj.tweenObj[key];

        if (value.toString().indexOf("%") === -1) {
          value += key !== "opacity" && key !== "backgroundColor" && key !== "boxShadow" ? "px" : "";
        }

        obj.element.style[key] = value;
      };

      Animate._setFilterValues = function (obj, key) {
        var value = obj.tweenObj[key];

        if (key === "hueRotate") {
          value = "(" + value + "deg)";
        } else {
          value = key === "blur" ? "(" + value + "px)" : "(" + value + "%)";
        }

        key = Animate._camelCaseToDash(key);
        obj.element.style.webkitFilter = key + value;
        obj.element.style.filter = key + value;
      };

      Animate._setTransformValues = function (obj, key) {
        if (/x|y|z|scaleX|scaleY|scaleZ|rotate|rotateX|rotateY|rotateZ|skewX|skewY/.test(key)) {
          obj.transformations[key] = obj.tweenObj[key];
        }
      };

      Animate._setTransformations = function (obj) {
        var rotate = "",
            scale = "",
            skew = "",
            translate = "";
        var trans = obj.transformations;
        translate += trans.x !== undefined && trans.x ? "translateX(" + trans.x + "px) " : "";
        translate += trans.y !== undefined && trans.y ? "translateY(" + trans.y + "px) " : "";
        translate += trans.z !== undefined && trans.z ? "translateZ(" + trans.z + "px) " : "";
        rotate += trans.rotate !== undefined && trans.rotate ? "rotate(" + trans.rotate + "deg) " : "";
        rotate += trans.rotateX !== undefined && trans.rotateX ? "rotateX(" + trans.rotateX + "deg) " : "";
        rotate += trans.rotateY !== undefined && trans.rotateY ? "rotate(" + trans.rotateY + "deg) " : "";
        rotate += trans.rotateZ !== undefined && trans.rotateZ ? "rotate(" + trans.rotateZ + "deg) " : "";
        scale += trans.scaleX !== undefined && trans.scaleX ? "scaleX(" + trans.scaleX + ") " : "";
        scale += trans.scaleY !== undefined && trans.scaleY ? "scaleY(" + trans.scaleY + ") " : "";
        scale += trans.scaleZ !== undefined && trans.scaleZ ? "scaleZ(" + trans.scaleZ + ") " : "";
        skew += trans.skewX !== undefined && trans.skewX ? "skewX(" + trans.skewX + "deg) " : "";
        skew += trans.skewY !== undefined && trans.skewY ? "skewY(" + trans.skewY + "deg) " : "";
        obj.element.style.transform = translate + rotate + scale + skew;
      };

      Animate._setCallback = function (obj) {
        obj.element.addEventListener("webkitTransitionEnd", Animate._complete, false);
        obj.element.addEventListener("transitionend", Animate._complete, false);
        obj.element.addEventListener("webkitAnimationEnd", Animate._complete, false);
        obj.element.addEventListener("animationend", Animate._complete, false);
      };

      Animate._complete = function (event) {
        event.target.removeEventListener("webkitTransitionEnd", Animate._complete);
        event.target.removeEventListener("transitionend", Animate._complete);
        event.target.removeEventListener("webkitAnimationEnd", Animate._complete);
        event.target.removeEventListener("animationend", Animate._complete);

        var obj = Animate._getAnimationObjByElement(event.target);

        Animate._executeCallback(obj);

        Animate._removeAnimationObject(obj);
      };

      Animate._getAnimationObjByElement = function (element) {
        var i = Animate._animationObjects.length;

        while (i--) {
          if (Animate._animationObjects[i].element === element) {
            return Animate._animationObjects[i];
          }
        }

        return null;
      };

      Animate._removeAnimationObject = function (obj) {
        var i = Animate._animationObjects.length;

        while (i--) {
          if (Animate._animationObjects[i] === obj) {
            Animate._animationObjects.splice(i, 1);
          }
        }
      };

      Animate._executeCallback = function (obj) {
        if (obj.onEnd) {
          var endArgs = obj.onEndArgs || [];
          obj.onEnd.apply(null, endArgs);
        }
      };

      Animate._contains = function (array, value) {
        var i = array.length;

        while (i--) {
          if (value === array[i]) {
            return true;
          }
        }

        return false;
      };

      Animate._camelCaseToDash = function (value) {
        return value.replace(/\W+/g, "-").replace(/([a-z\d])([A-Z])/g, "$1-$2").toLowerCase();
      };

      Animate._easeOutExpo = function (time, begin, change, duration) {
        return time === duration ? begin + change : change * (-Math.pow(2, -10 * time / duration) + 1) + begin;
      };

      Animate._transformProps = ["x", "y", "z", "scaleX", "scaleY", "scaleZ", "rotate", "rotateX", "rotateY", "rotateZ", "skewX", "skewY"];
      Animate._filters = ["blur", "brightness", "contrast", "dropShadow", "grayscale", "hueRotate", "invert", "saturate", "sepia"];
      Animate._timeProps = ["duration", "ease", "delay"];
      Animate._callbackProps = ["onEnd", "onEndArgs"];
      Animate._animationObjects = [];
      return Animate;
    }();

    var Ease = function () {
      function Ease() {}

      Ease.CB = "cubic-bezier";
      Ease.QUAD_EASE_IN = Ease.CB + "(0.550, 0.085, 0.680, 0.530)";
      Ease.CUBIC_EASE_IN = Ease.CB + "(0.550, 0.055, 0.675, 0.190)";
      Ease.QUART_EASE_IN = Ease.CB + "(0.895, 0.030, 0.685, 0.220)";
      Ease.QUINT_EASE_IN = Ease.CB + "(0.755, 0.050, 0.855, 0.060)";
      Ease.SINE_EASE_IN = Ease.CB + "(0.470, 0, 0.745, 0.715)";
      Ease.EXPO_EASE_IN = Ease.CB + "(0.950, 0.050, 0.795, 0.035)";
      Ease.CIRC_EASE_IN = Ease.CB + "(0.600, 0.040, 0.980, 0.335)";
      Ease.BACK_EASE_IN = Ease.CB + "(0.600, 0.040, 0.980, 0.335)";
      Ease.QUAD_EASE_OUT = Ease.CB + "(0.250, 0.460, 0.450, 0.940)";
      Ease.CUBIC_EASE_OUT = Ease.CB + "(0.215, 0.610, 0.355, 1)";
      Ease.QUART_EASE_OUT = Ease.CB + "(0.165, 0.840, 0.440, 1)";
      Ease.QUINT_EASE_OUT = Ease.CB + "(0.230, 1, 0.320, 1)";
      Ease.SINE_EASE_OUT = Ease.CB + "(0.390, 0.575, 0.565, 1)";
      Ease.EXPO_EASE_OUT = Ease.CB + "(0.190, 1, 0.220, 1)";
      Ease.CIRC_EASE_OUT = Ease.CB + "(0.075, 0.820, 0.165, 1)";
      Ease.BACK_EASE_OUT = Ease.CB + "(0.175, 0.885, 0.320, 1.275)";
      Ease.QUAD_EASE_IN_OUT = Ease.CB + "(0.455, 0.030, 0.515, 0.955)";
      Ease.CUBIC_EASE_IN_OUT = Ease.CB + "(0.645, 0.045, 0.355, 1)";
      Ease.QUART_EASE_IN_OUT = Ease.CB + "(0.770, 0, 0.175, 1)";
      Ease.QUINT_EASE_IN_OUT = Ease.CB + "(0.860, 0, 0.070, 1)";
      Ease.SINE_EASE_IN_OUT = Ease.CB + "(0.445, 0.050, 0.550, 0.950)";
      Ease.EXPO_EASE_IN_OUT = Ease.CB + "(1, 0, 0, 1)";
      Ease.CIRC_EASE_IN_OUT = Ease.CB + "(0.785, 0.135, 0.150, 0.860)";
      Ease.BACK_EASE_IN_OUT = Ease.CB + "(0.680, -0.550, 0.265, 1.550)";
      return Ease;
    }();

    var PersonaCard = function () {
      function PersonaCard(container) {
        this._container = container;

        var activeElement = this._container.querySelector(".ms-PersonaCard-action.is-active");

        var activeId = activeElement.getAttribute("data-action-id");
        this._actions = this._container.querySelector(".ms-PersonaCard-actions");
        this._expander = this._container.querySelector(".ms-PersonaCard-detailExpander");
        this._actionDetailBox = this._container.querySelector(".ms-PersonaCard-actionDetailBox");

        this._setDetail(activeId);

        this._boundOnActionClick = this._onActionClick.bind(this);
        this._boundOnExpanderClick = this._onExpanderClick.bind(this);
        this._boundOnTab = this._onTab.bind(this);

        this._addListeners();
      }

      PersonaCard.prototype.removeListeners = function () {
        this._actions.removeEventListener("click", this._boundOnActionClick);

        this._expander.removeEventListener("click", this._boundOnExpanderClick);

        this._container.removeEventListener("keydown", this._boundOnTab);
      };

      PersonaCard.prototype._addListeners = function () {
        this._actions.addEventListener("click", this._boundOnActionClick, false);

        this._expander.addEventListener("click", this._boundOnExpanderClick, false);

        this._container.addEventListener("keydown", this._boundOnTab, false);
      };

      PersonaCard.prototype._onTab = function (event) {
        var target = event.target;

        if (event.keyCode === 9 && target.classList.contains("ms-PersonaCard-action")) {
          this._onActionClick(event);
        }
      };

      PersonaCard.prototype._onExpanderClick = function (event) {
        var parent = event.target.parentElement;

        if (parent.classList.contains("is-collapsed")) {
          parent.classList.remove("is-collapsed");
        } else {
          parent.classList.add("is-collapsed");
        }

        var parentHeight = parent.clientHeight;

        this._animateDetail(parentHeight);
      };

      PersonaCard.prototype._onActionClick = function (event) {
        var target = event.target;
        var actionId = target.getAttribute("data-action-id");

        if (actionId && target.className.indexOf("is-active") === -1) {
          this._setAction(target);

          this._setDetail(actionId);
        }
      };

      PersonaCard.prototype._setAction = function (target) {
        var activeElement = this._container.querySelector(".ms-PersonaCard-action.is-active");

        activeElement.classList.remove("is-active");
        target.classList.add("is-active");
      };

      PersonaCard.prototype._setDetail = function (activeId) {
        var selector = ".ms-PersonaCard-details[data-detail-id='" + activeId + "']";

        var lastDetail = this._container.querySelector(".ms-PersonaCard-details.is-active");

        var activeDetail = this._container.querySelector(selector);

        if (lastDetail) {
          lastDetail.classList.remove("is-active");
        }

        activeDetail.classList.add("is-active");
        var detailHeight = activeDetail.clientHeight;

        this._animateDetail(detailHeight);
      };

      PersonaCard.prototype._animateDetail = function (height) {
        var _this = this;

        this._actionDetailBox.style.overflowY = "hidden";
        Animate.transition(this._actionDetailBox, {
          height: height,
          duration: 0.25,
          ease: Ease.SINE_EASE_OUT,
          onEnd: function onEnd() {
            _this._actionDetailBox.style.overflowY = "auto";
          }
        });
      };

      return PersonaCard;
    }();

    var MODAL_POSITION$2 = "top";

    var Persona = function () {
      function Persona(container) {
        this._persona = container;
        this._personaCard = this._persona.querySelector(".ms-PersonaCard");

        if (this._personaCard) {
          this._assignEvents();

          this._personaCard.setAttribute("style", "display: none;");

          this._createPersonaCard();
        }
      }

      Persona.prototype._createPersonaCard = function () {
        this._personaCardInstance = new PersonaCard(this._personaCard);
      };

      Persona.prototype._createContextualHostInstance = function () {
        this._personaCard.setAttribute("style", "display: block;");

        this._contextualHostInstance = new ContextualHost(this._personaCard, MODAL_POSITION$2, this._persona);
      };

      Persona.prototype._personaEventHandler = function () {
        this._createContextualHostInstance();
      };

      Persona.prototype._assignEvents = function () {
        var _this = this;

        this._persona.addEventListener("click", this._personaEventHandler.bind(this), false);

        this._persona.addEventListener("keyup", function (e) {
          return e.keyCode === 32 ? _this._personaEventHandler() : null;
        }, false);
      };

      return Persona;
    }();

    var script$J = {
      loadStyles: loadThemedStyles.loadStyles,
      beforeMount: function beforeMount() {
        this.$fabric = {
          Persona: Persona
        };
      },
      extends: persona
    };

    /* script */
    const __vue_script__$J = script$J;

    /* template */

      /* style */
      const __vue_inject_styles__$J = function (inject) {
        if (!inject) return
        inject("data-v-aab71c4c_0", { source: ".ms-Persona[data-v-aab71c4c]{font-family:\"Segoe UI WestEuropean\",\"Segoe UI\",-apple-system,BlinkMacSystemFont,Roboto,\"Helvetica Neue\",sans-serif;-webkit-font-smoothing:antialiased;box-sizing:border-box;margin:0;padding:0;-webkit-box-shadow:none;-moz-box-shadow:none;box-shadow:none;color:\"[theme:neutralPrimary, default: #333333]\";font-size:14px;font-weight:400;line-height:1;position:relative;width:100%;height:48px;display:table;table-layout:fixed;border-collapse:separate}.ms-Persona .ms-ContextualHost[data-v-aab71c4c]{display:none}.ms-Persona-imageArea[data-v-aab71c4c]{position:absolute;overflow:hidden;text-align:center;max-width:48px;height:48px;border-radius:50%;z-index:0;width:100%;top:0;left:0}@media screen and (-ms-high-contrast:active){.ms-Persona-imageArea[data-v-aab71c4c]{border:1px solid \"[theme:white, default: #ffffff]\"}}@media screen and (-ms-high-contrast:black-on-white){.ms-Persona-imageArea[data-v-aab71c4c]{border:1px solid \"[theme:black, default: #000000]\"}}.ms-Persona-placeholder[data-v-aab71c4c]{color:\"[theme:white, default: #ffffff]\";position:absolute;right:0;left:0;font-size:47px;top:9px;z-index:5}.ms-Persona-initials[data-v-aab71c4c]{color:\"[theme:white, default: #ffffff]\";font-size:17px;font-weight:100;line-height:48px}.ms-Persona-initials.ms-Persona-initials--blueLight[data-v-aab71c4c]{background-color:\"[theme:blueLight, default: #00bcf2]\"}.ms-Persona-initials.ms-Persona-initials--blue[data-v-aab71c4c]{background-color:\"[theme:blue, default: #0078d7]\"}.ms-Persona-initials.ms-Persona-initials--blueDark[data-v-aab71c4c]{background-color:\"[theme:blueDark, default: #002050]\"}.ms-Persona-initials.ms-Persona-initials--teal[data-v-aab71c4c]{background-color:\"[theme:teal, default: #008272]\"}.ms-Persona-initials.ms-Persona-initials--greenLight[data-v-aab71c4c]{background-color:\"[theme:greenLight, default: #bad80a]\"}.ms-Persona-initials.ms-Persona-initials--green[data-v-aab71c4c]{background-color:\"[theme:green, default: #107c10]\"}.ms-Persona-initials.ms-Persona-initials--greenDark[data-v-aab71c4c]{background-color:\"[theme:greenDark, default: #004b1c]\"}.ms-Persona-initials.ms-Persona-initials--magentaLight[data-v-aab71c4c]{background-color:\"[theme:magentaLight, default: #e3008c]\"}.ms-Persona-initials.ms-Persona-initials--magenta[data-v-aab71c4c]{background-color:\"[theme:magenta, default: #b4009e]\"}.ms-Persona-initials.ms-Persona-initials--purpleLight[data-v-aab71c4c]{background-color:\"[theme:purpleLight, default: #b4a0ff]\"}.ms-Persona-initials.ms-Persona-initials--purple[data-v-aab71c4c]{background-color:\"[theme:purple, default: #5c2d91]\"}.ms-Persona-initials.ms-Persona-initials--black[data-v-aab71c4c]{background-color:\"[theme:black, default: #000000]\"}.ms-Persona-initials.ms-Persona-initials--orange[data-v-aab71c4c]{background-color:\"[theme:orange, default: #d83b01]\"}.ms-Persona-initials.ms-Persona-initials--red[data-v-aab71c4c]{background-color:\"[theme:red, default: #e81123]\"}.ms-Persona-initials.ms-Persona-initials--redDark[data-v-aab71c4c]{background-color:\"[theme:redDark, default: #a80000]\"}.ms-Persona-image[data-v-aab71c4c]{position:absolute;top:0;left:0;height:48px;z-index:10;width:100%}.ms-Persona-image[src][data-v-aab71c4c]{display:none}.ms-Persona-presence[data-v-aab71c4c]{background-color:#7fba00;position:absolute;height:12px;width:12px;border-radius:50%;top:auto;left:34px;bottom:-1px;border:2px solid \"[theme:white, default: #ffffff]\";text-align:center}@media screen and (-ms-high-contrast:active){.ms-Persona-presence[data-v-aab71c4c]{border-color:\"[theme:black, default: #000000]\";box-shadow:0 0 0 1px #1aebff inset;color:\"[theme:black, default: #000000]\";background-color:\"[theme:white, default: #ffffff]\"}}@media screen and (-ms-high-contrast:black-on-white){.ms-Persona-presence[data-v-aab71c4c]{border-color:\"[theme:white, default: #ffffff]\";box-shadow:0 0 0 1px #37006e inset;color:\"[theme:white, default: #ffffff]\";background-color:\"[theme:black, default: #000000]\"}}.ms-Persona-presenceIcon[data-v-aab71c4c]{color:\"[theme:white, default: #ffffff]\";font-size:8px;line-height:12px;vertical-align:top}.ms-Persona-details[data-v-aab71c4c]{padding:0 12px;vertical-align:middle;overflow:hidden;text-align:left;padding-left:60px;display:table-cell;width:100%}.ms-Persona-optionalText[data-v-aab71c4c],.ms-Persona-primaryText[data-v-aab71c4c],.ms-Persona-secondaryText[data-v-aab71c4c],.ms-Persona-tertiaryText[data-v-aab71c4c]{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;width:100%;overflow:hidden;text-overflow:ellipsis}.ms-Persona-primaryText[data-v-aab71c4c]{color:\"[theme:neutralPrimary, default: #333333]\";font-weight:400;font-size:17px;margin-top:-3px;line-height:1.4}.ms-Persona-optionalText[data-v-aab71c4c],.ms-Persona-secondaryText[data-v-aab71c4c],.ms-Persona-tertiaryText[data-v-aab71c4c]{color:\"[theme:neutralSecondary, default: #666666]\";font-weight:400;font-size:12px;white-space:nowrap;line-height:1.3}.ms-Persona-secondaryText[data-v-aab71c4c]{padding-top:3px}.ms-Persona-optionalText[data-v-aab71c4c],.ms-Persona-tertiaryText[data-v-aab71c4c]{padding-top:5px;display:none}.ms-Persona.ms-Persona--tiny[data-v-aab71c4c]{height:30px;display:inline-block}.ms-Persona.ms-Persona--tiny .ms-Persona-imageArea[data-v-aab71c4c]{overflow:visible;display:none}.ms-Persona.ms-Persona--tiny .ms-Persona-presence[data-v-aab71c4c]{right:auto;top:10px;left:0;border:0}@media screen and (-ms-high-contrast:active){.ms-Persona.ms-Persona--tiny .ms-Persona-presence[data-v-aab71c4c]{top:9px;border:1px solid \"[theme:white, default: #ffffff]\"}}@media screen and (-ms-high-contrast:black-on-white){.ms-Persona.ms-Persona--tiny .ms-Persona-presence[data-v-aab71c4c]{border:1px solid \"[theme:black, default: #000000]\"}}.ms-Persona.ms-Persona--tiny .ms-Persona-details[data-v-aab71c4c]{padding-left:20px}.ms-Persona.ms-Persona--tiny .ms-Persona-primaryText[data-v-aab71c4c]{font-size:14px;padding-top:9px}.ms-Persona.ms-Persona--tiny .ms-Persona-secondaryText[data-v-aab71c4c]{display:none}.ms-Persona.ms-Persona--tiny.ms-Persona--readonly[data-v-aab71c4c]{padding:0;background-color:transparent}.ms-Persona.ms-Persona--tiny.ms-Persona--readonly .ms-Persona-primaryText[data-v-aab71c4c]::after{content:\";\"}.ms-Persona.ms-Persona--facePile[data-v-aab71c4c],.ms-Persona.ms-Persona--token[data-v-aab71c4c],.ms-Persona.ms-Persona--xs[data-v-aab71c4c]{height:32px}.ms-Persona.ms-Persona--facePile .ms-Persona-image[data-v-aab71c4c],.ms-Persona.ms-Persona--facePile .ms-Persona-imageArea[data-v-aab71c4c],.ms-Persona.ms-Persona--token .ms-Persona-image[data-v-aab71c4c],.ms-Persona.ms-Persona--token .ms-Persona-imageArea[data-v-aab71c4c],.ms-Persona.ms-Persona--xs .ms-Persona-image[data-v-aab71c4c],.ms-Persona.ms-Persona--xs .ms-Persona-imageArea[data-v-aab71c4c]{max-width:32px;height:32px}.ms-Persona.ms-Persona--facePile .ms-Persona-placeholder[data-v-aab71c4c],.ms-Persona.ms-Persona--token .ms-Persona-placeholder[data-v-aab71c4c],.ms-Persona.ms-Persona--xs .ms-Persona-placeholder[data-v-aab71c4c]{font-size:28px;top:6px}.ms-Persona.ms-Persona--facePile .ms-Persona-initials[data-v-aab71c4c],.ms-Persona.ms-Persona--token .ms-Persona-initials[data-v-aab71c4c],.ms-Persona.ms-Persona--xs .ms-Persona-initials[data-v-aab71c4c]{font-size:12px;line-height:32px}.ms-Persona.ms-Persona--facePile .ms-Persona-presence[data-v-aab71c4c],.ms-Persona.ms-Persona--token .ms-Persona-presence[data-v-aab71c4c],.ms-Persona.ms-Persona--xs .ms-Persona-presence[data-v-aab71c4c]{left:19px}.ms-Persona.ms-Persona--facePile .ms-Persona-details[data-v-aab71c4c],.ms-Persona.ms-Persona--token .ms-Persona-details[data-v-aab71c4c],.ms-Persona.ms-Persona--xs .ms-Persona-details[data-v-aab71c4c]{padding-left:40px}.ms-Persona.ms-Persona--facePile .ms-Persona-primaryText[data-v-aab71c4c],.ms-Persona.ms-Persona--token .ms-Persona-primaryText[data-v-aab71c4c],.ms-Persona.ms-Persona--xs .ms-Persona-primaryText[data-v-aab71c4c]{font-size:14px;padding-top:3px}.ms-Persona.ms-Persona--facePile .ms-Persona-secondaryText[data-v-aab71c4c],.ms-Persona.ms-Persona--token .ms-Persona-secondaryText[data-v-aab71c4c],.ms-Persona.ms-Persona--xs .ms-Persona-secondaryText[data-v-aab71c4c]{display:none}.ms-Persona.ms-Persona--sm[data-v-aab71c4c]{height:40px}.ms-Persona.ms-Persona--sm .ms-Persona-image[data-v-aab71c4c],.ms-Persona.ms-Persona--sm .ms-Persona-imageArea[data-v-aab71c4c]{max-width:40px;height:40px}.ms-Persona.ms-Persona--sm .ms-Persona-placeholder[data-v-aab71c4c]{font-size:38px;top:5px}.ms-Persona.ms-Persona--sm .ms-Persona-initials[data-v-aab71c4c]{font-size:14px;line-height:40px}.ms-Persona.ms-Persona--sm .ms-Persona-presence[data-v-aab71c4c]{left:27px}.ms-Persona.ms-Persona--sm .ms-Persona-details[data-v-aab71c4c]{padding-left:48px}.ms-Persona.ms-Persona--sm .ms-Persona-primaryText[data-v-aab71c4c]{font-size:14px}.ms-Persona.ms-Persona--sm .ms-Persona-primaryText[data-v-aab71c4c],.ms-Persona.ms-Persona--sm .ms-Persona-secondaryText[data-v-aab71c4c]{padding-top:1px}.ms-Persona.ms-Persona--lg[data-v-aab71c4c]{height:72px}.ms-Persona.ms-Persona--lg .ms-Persona-image[data-v-aab71c4c],.ms-Persona.ms-Persona--lg .ms-Persona-imageArea[data-v-aab71c4c]{max-width:72px;height:72px}.ms-Persona.ms-Persona--lg .ms-Persona-placeholder[data-v-aab71c4c]{font-size:67px;top:10px}.ms-Persona.ms-Persona--lg .ms-Persona-initials[data-v-aab71c4c]{font-size:28px;line-height:72px}.ms-Persona.ms-Persona--lg .ms-Persona-presence[data-v-aab71c4c]{left:49px;height:20px;width:20px;border-width:3px}.ms-Persona.ms-Persona--lg .ms-Persona-presenceIcon[data-v-aab71c4c]{line-height:20px;font-size:14px}.ms-Persona.ms-Persona--lg .ms-Persona-details[data-v-aab71c4c]{padding-left:84px}.ms-Persona.ms-Persona--lg .ms-Persona-secondaryText[data-v-aab71c4c]{padding-top:3px}.ms-Persona.ms-Persona--lg .ms-Persona-tertiaryText[data-v-aab71c4c]{padding-top:5px;display:block}.ms-Persona.ms-Persona--xl[data-v-aab71c4c]{height:100px}.ms-Persona.ms-Persona--xl .ms-Persona-image[data-v-aab71c4c],.ms-Persona.ms-Persona--xl .ms-Persona-imageArea[data-v-aab71c4c]{max-width:100px;height:100px}.ms-Persona.ms-Persona--xl .ms-Persona-placeholder[data-v-aab71c4c]{font-size:95px;top:12px}.ms-Persona.ms-Persona--xl .ms-Persona-initials[data-v-aab71c4c]{font-size:42px;line-height:100px}.ms-Persona.ms-Persona--xl .ms-Persona-presence[data-v-aab71c4c]{height:28px;width:28px;left:71px;border-width:4px}.ms-Persona.ms-Persona--xl .ms-Persona-presenceIcon[data-v-aab71c4c]{line-height:28px;font-size:21px;position:relative;top:1px}.ms-Persona.ms-Persona--xl .ms-Persona-details[data-v-aab71c4c]{padding-left:120px}.ms-Persona.ms-Persona--xl .ms-Persona-primaryText[data-v-aab71c4c]{font-size:21px;font-weight:300;margin-top:0}.ms-Persona.ms-Persona--xl .ms-Persona-secondaryText[data-v-aab71c4c]{padding-top:2px}.ms-Persona.ms-Persona--xl .ms-Persona-optionalText[data-v-aab71c4c],.ms-Persona.ms-Persona--xl .ms-Persona-tertiaryText[data-v-aab71c4c]{padding-top:5px;display:block}.ms-Persona.ms-Persona--darkText .ms-Persona-primaryText[data-v-aab71c4c]{color:\"[theme:neutralDark, default: #212121]\"}.ms-Persona.ms-Persona--darkText .ms-Persona-optionalText[data-v-aab71c4c],.ms-Persona.ms-Persona--darkText .ms-Persona-secondaryText[data-v-aab71c4c],.ms-Persona.ms-Persona--darkText .ms-Persona-tertiaryText[data-v-aab71c4c]{color:\"[theme:neutralPrimary, default: #333333]\"}.ms-Persona.ms-Persona--selectable[data-v-aab71c4c]{cursor:pointer;padding:0 10px}.ms-Persona.ms-Persona--selectable[data-v-aab71c4c]:not(.ms-Persona--xl):focus,.ms-Persona.ms-Persona--selectable[data-v-aab71c4c]:not(.ms-Persona--xl):hover{background-color:\"[theme:themeLighter, default: #deecf9]\";outline:1px solid transparent}.ms-Persona.ms-Persona--available .ms-Persona-presence[data-v-aab71c4c]{background-color:#7fba00}.ms-Persona.ms-Persona--away .ms-Persona-presence[data-v-aab71c4c]{background-color:#fcd116}.ms-Persona.ms-Persona--away .ms-Persona-presenceIcon[data-v-aab71c4c]{position:relative;left:1px}.ms-Persona.ms-Persona--blocked .ms-Persona-presence[data-v-aab71c4c]{background-color:\"[theme:white, default: #ffffff]\"}.ms-Persona.ms-Persona--blocked .ms-Persona-presence[data-v-aab71c4c]::before{content:\"\";width:100%;height:100%;position:absolute;top:0;left:0;box-shadow:0 0 0 2px #d93b3b inset;border-radius:50%}.ms-Persona.ms-Persona--blocked .ms-Persona-presence[data-v-aab71c4c]::after{content:\"\";width:100%;height:2px;background-color:#d93b3b;transform:rotate(-45deg);position:absolute;top:5px;left:0}.ms-Persona.ms-Persona--blocked.ms-Persona--lg .ms-Persona-presence[data-v-aab71c4c]::after{top:9px}.ms-Persona.ms-Persona--blocked.ms-Persona--xl .ms-Persona-presence[data-v-aab71c4c]::after{top:13px}.ms-Persona.ms-Persona--busy .ms-Persona-presence[data-v-aab71c4c]{background-color:#d93b3b}@media screen and (-ms-high-contrast:active){.ms-Persona.ms-Persona--busy .ms-Persona-presence[data-v-aab71c4c]{background-color:#1aebff}}@media screen and (-ms-high-contrast:black-on-white){.ms-Persona.ms-Persona--busy .ms-Persona-presence[data-v-aab71c4c]{background-color:#37006e}}.ms-Persona.ms-Persona--dnd .ms-Persona-presence[data-v-aab71c4c]{background-color:#e81123}.ms-Persona.ms-Persona--offline .ms-Persona-presence[data-v-aab71c4c]{background-color:#93abbd}@media screen and (-ms-high-contrast:active){.ms-Persona.ms-Persona--offline .ms-Persona-presence[data-v-aab71c4c]{background-color:\"[theme:black, default: #000000]\";box-shadow:0 0 0 1px \"[theme:white, default: #ffffff]\" inset}}@media screen and (-ms-high-contrast:black-on-white){.ms-Persona.ms-Persona--offline .ms-Persona-presence[data-v-aab71c4c]{background-color:\"[theme:white, default: #ffffff]\";box-shadow:0 0 0 1px \"[theme:black, default: #000000]\" inset}}.ms-Persona.ms-Persona--facePile[data-v-aab71c4c]{display:inline-block;width:auto}.ms-Persona.ms-Persona--facePile[data-v-aab71c4c]:hover{cursor:pointer}.ms-Persona.ms-Persona--facePile .ms-Persona-imageArea[data-v-aab71c4c]{position:relative;width:100%;min-width:32px}.ms-Persona.ms-Persona--facePile .ms-Persona-initials[data-v-aab71c4c]{position:relative}.ms-Persona.ms-Persona--facePile .ms-Persona-details[data-v-aab71c4c]{display:none}.ms-Persona.ms-Persona--facePile .ms-Persona-presence[data-v-aab71c4c]{display:none}.ms-Persona.ms-Persona--token[data-v-aab71c4c]{display:inline-flex;width:auto;background-color:\"[theme:neutralLighter, default: #f4f4f4]\";border-radius:20px;margin:4px}.ms-Persona.ms-Persona--token[data-v-aab71c4c]:hover{cursor:pointer}.ms-Persona.ms-Persona--token .ms-Persona-actionIcon[data-v-aab71c4c]{border-radius:20px;display:inline-block;width:32px;height:32px;padding:0;line-height:30px;transition:background-color 167ms cubic-bezier(.1,.9,.2,1);text-align:center}.ms-Persona.ms-Persona--token .ms-Persona-actionIcon[data-v-aab71c4c]:hover{background-color:\"[theme:neutralLight, default: #eaeaea]\"}.ms-Persona.ms-Persona--token .ms-Persona-imageArea[data-v-aab71c4c]{width:100%;min-width:32px}.ms-Persona.ms-Persona--token .ms-Persona-details[data-v-aab71c4c]{height:30px;display:inline-block;width:auto;padding-right:8px}.ms-Persona.ms-Persona--token .ms-Persona-primaryText[data-v-aab71c4c]{padding-top:0;line-height:34px}.ms-Persona.ms-Persona--token .ms-Persona-initials[data-v-aab71c4c]{position:relative}", map: undefined, media: undefined });

      };
      /* scoped */
      const __vue_scope_id__$J = "data-v-aab71c4c";
      /* module identifier */
      const __vue_module_identifier__$J = undefined;
      /* functional template */
      const __vue_is_functional_template__$J = undefined;
      /* style inject */
      const __vue_create_injector__$i = function(context){ 
                    return function(scopeId, data)
                    {
                        if(window['wizstyle-'+scopeId])
                            return;
                        if(__vue_script__$J.loadStyles)
                            __vue_script__$J.loadStyles(data.source);
                        window['wizstyle-'+scopeId]=true;
                    }
                };
      /* style inject SSR */
      
      /* style inject shadow dom */
      

      
      var uiPersona = normalizeComponent(
        {},
        __vue_inject_styles__$J,
        __vue_script__$J,
        __vue_scope_id__$J,
        __vue_is_functional_template__$J,
        __vue_module_identifier__$J,
        false,
        __vue_create_injector__$i,
        undefined,
        undefined
      );

    var script$K = {
      name: 'ou-pivot',
      mixins: [size('large'), type('tabs'), eventHub],
      data: function data() {
        return {
          pivotItems: []
        };
      },
      computed: {
        pivotClass: function pivotClass() {
          var _ref;

          return _ref = {}, _defineProperty(_ref, "ms-Pivot--".concat(this.size), !!this.size), _defineProperty(_ref, "ms-Pivot--".concat(this.type), !!this.type), _ref;
        }
      },
      created: function created() {
        this.eventHub.$on('addPivotItem', this.addPivotItem);
      },
      beforeDestroy: function beforeDestroy() {
        this.eventHub.$off('addPivotItem', this.addPivotItem);
      },
      mounted: function mounted() {
        new this.$fabric.Pivot(this.$refs.pivot);
      },
      methods: {
        addPivotItem: function addPivotItem(label) {
          this.pivotItems.push(label);
        },
        clickEvent: function clickEvent(event) {
          if (event.target.tagName == 'LI') {
            this.$emit('click', event);
          }
        }
      }
    };

    /* script */
    const __vue_script__$K = script$K;

    /* template */
    var __vue_render__$r = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{ref:"pivot",staticClass:"ms-Pivot",class:_vm.pivotClass},[_c('ul',{staticClass:"ms-Pivot-links",on:{"click":_vm.clickEvent}},_vm._l((_vm.pivotItems),function(item,index){return _c('li',{staticClass:"ms-Pivot-link",class:{ 'is-selected': index == 0 },attrs:{"tabindex":"1","data-content":item,"title":item}},[_vm._v("\n      "+_vm._s(item)+"\n    ")])}),0),_vm._v(" "),_vm._t("default")],2)};
    var __vue_staticRenderFns__$r = [];

      /* style */
      const __vue_inject_styles__$K = undefined;
      /* scoped */
      const __vue_scope_id__$K = undefined;
      /* module identifier */
      const __vue_module_identifier__$K = undefined;
      /* functional template */
      const __vue_is_functional_template__$K = false;
      /* style inject */
      
      /* style inject SSR */
      
      /* style inject shadow dom */
      

      
      var pivot = normalizeComponent(
        { render: __vue_render__$r, staticRenderFns: __vue_staticRenderFns__$r },
        __vue_inject_styles__$K,
        __vue_script__$K,
        __vue_scope_id__$K,
        __vue_is_functional_template__$K,
        __vue_module_identifier__$K,
        false,
        undefined,
        undefined,
        undefined
      );

    var Pivot = function () {
      function Pivot(container) {
        this._container = container;

        this._addListeners();

        var firstContent = this._container.querySelector(".ms-Pivot-content");

        firstContent.style.display = "block";
      }

      Pivot.prototype.removeListeners = function () {
        this._container.removeEventListener("click", this._selectTab.bind(this));
      };

      Pivot.prototype._addListeners = function () {
        var _this = this;

        this._container.querySelector(".ms-Pivot-links").addEventListener("click", this._selectTabMouse.bind(this), false);

        this._container.addEventListener("keyup", function (event) {
          if (event.keyCode === 13) {
            _this._selectTabKeyboard(event);
          }
        }, true);
      };

      Pivot.prototype._selectTab = function (selectedTab) {
        if (selectedTab.classList.contains("ms-Pivot-link") && !selectedTab.querySelector(".ms-Pivot-ellipsis")) {
          var sibling = selectedTab.parentElement.firstElementChild;

          while (sibling) {
            sibling.classList.remove("is-selected");
            sibling = sibling.nextElementSibling;
          }

          selectedTab.classList.add("is-selected");

          var containers = this._container.querySelectorAll(".ms-Pivot-content");

          Array.prototype.forEach.call(containers, function (el, i) {
            el.style.display = "none";
          });
          var selectedContentName = selectedTab.getAttribute("data-content");

          var selectedContent = this._container.querySelector(".ms-Pivot-content[data-content='" + selectedContentName + "']");

          selectedContent.style.display = "block";
        }
      };

      Pivot.prototype._selectTabMouse = function (event) {
        event.preventDefault();
        var selectedTab = event.target;

        this._selectTab(selectedTab);
      };

      Pivot.prototype._selectTabKeyboard = function (event) {
        event.preventDefault();
        var selectedTab = event.target;

        this._selectTab(selectedTab);
      };

      return Pivot;
    }();

    var script$L = {
      loadStyles: loadThemedStyles.loadStyles,
      beforeMount: function beforeMount() {
        this.$fabric = {
          Pivot: Pivot
        };
      },
      extends: pivot
    };

    /* script */
    const __vue_script__$L = script$L;

    /* template */

      /* style */
      const __vue_inject_styles__$L = function (inject) {
        if (!inject) return
        inject("data-v-777772a0_0", { source: ".ms-Pivot[data-v-777772a0]{font-family:\"Segoe UI WestEuropean\",\"Segoe UI\",-apple-system,BlinkMacSystemFont,Roboto,\"Helvetica Neue\",sans-serif;-webkit-font-smoothing:antialiased;box-sizing:border-box;margin:0;padding:0;-webkit-box-shadow:none;-moz-box-shadow:none;box-shadow:none;font-size:14px;font-weight:400}.ms-Pivot-links[data-v-777772a0]{font-size:0;height:40px;list-style-type:none;padding:0;white-space:nowrap}.ms-Pivot-link[data-v-777772a0]{color:\"[theme:neutralPrimary, default: #333333]\";display:inline-block;font-size:14px;font-weight:400;line-height:40px;margin-right:8px;padding:0 8px;text-align:center;vertical-align:top}.ms-Pivot-link[data-v-777772a0]:hover{cursor:pointer}.ms-Pivot-link[data-v-777772a0]::before{background-color:transparent;bottom:0;content:\"\";height:2px;left:8px;position:absolute;right:8px;transition:background-color 267ms cubic-bezier(.1,.25,.75,.9)}.ms-Pivot-link[data-v-777772a0]::after{color:transparent;content:attr(title);display:block;font-weight:700;height:1px;overflow:hidden;visibility:hidden}.ms-Pivot-link.is-selected[data-v-777772a0]{font-weight:600;position:relative}.ms-Pivot-link.is-selected[data-v-777772a0]::before{background-color:\"[theme:themePrimary, default: #0078d7]\"}.ms-Pivot-link.is-disabled[data-v-777772a0]{color:\"[theme:neutralTertiary, default: #a6a6a6]\"}.ms-Pivot-link.ms-Pivot-link--overflow[data-v-777772a0]{color:\"[theme:neutralSecondary, default: #666666]\"}.ms-Pivot-link.ms-Pivot-link--overflow.is-selected[data-v-777772a0]{color:\"[theme:themePrimary, default: #0078d7]\"}.ms-Pivot-link.ms-Pivot-link--overflow[data-v-777772a0]:focus:not(.is-selected),.ms-Pivot-link.ms-Pivot-link--overflow[data-v-777772a0]:hover:not(.is-selected){color:\"[theme:neutralDark, default: #212121]\"}.ms-Pivot-link.ms-Pivot-link--overflow[data-v-777772a0]:active{color:\"[theme:themePrimary, default: #0078d7]\"}.ms-Pivot-ellipsis[data-v-777772a0]{font-size:15px;position:relative;top:0}.ms-Pivot-content[data-v-777772a0]{display:none;margin-top:20px}.ms-Pivot.ms-Pivot--large .ms-Pivot-link[data-v-777772a0]{font-size:17px}.ms-Pivot.ms-Pivot--large .ms-Pivot-link.is-selected[data-v-777772a0]{font-weight:300}.ms-Pivot.ms-Pivot--large .ms-Pivot-link.ms-Pivot-link--overflow[data-v-777772a0]::after{font-size:17px}.ms-Pivot.ms-Pivot--tabs .ms-Pivot-link[data-v-777772a0]{height:40px;background-color:\"[theme:neutralLighter, default: #f4f4f4]\";line-height:40px;margin-right:-2px;padding:0 10px}.ms-Pivot.ms-Pivot--tabs .ms-Pivot-link[data-v-777772a0]:focus:not(.is-selected):not(.ms-Pivot-link--overflow),.ms-Pivot.ms-Pivot--tabs .ms-Pivot-link[data-v-777772a0]:hover:not(.is-selected):not(.ms-Pivot-link--overflow){color:\"[theme:black, default: #000000]\"}.ms-Pivot.ms-Pivot--tabs .ms-Pivot-link[data-v-777772a0]:active{color:\"[theme:white, default: #ffffff]\";background-color:\"[theme:themePrimary, default: #0078d7]\"}.ms-Pivot.ms-Pivot--tabs .ms-Pivot-link.is-selected[data-v-777772a0]{background-color:\"[theme:themePrimary, default: #0078d7]\";color:\"[theme:white, default: #ffffff]\";font-weight:300}.ms-Pivot.ms-Pivot--tabs .ms-Pivot-link.ms-Pivot-link--overflow[data-v-777772a0]:focus:not(.is-selected),.ms-Pivot.ms-Pivot--tabs .ms-Pivot-link.ms-Pivot-link--overflow[data-v-777772a0]:hover:not(.is-selected){background-color:\"[theme:white, default: #ffffff]\"}.ms-Pivot.ms-Pivot--tabs .ms-Pivot-link.ms-Pivot-link--overflow[data-v-777772a0]:active{background-color:\"[theme:themePrimary, default: #0078d7]\"}@media screen and (-ms-high-contrast:active){.ms-Pivot.ms-Pivot--tabs .ms-Pivot-link.is-selected[data-v-777772a0]{font-weight:600}}", map: undefined, media: undefined });

      };
      /* scoped */
      const __vue_scope_id__$L = "data-v-777772a0";
      /* module identifier */
      const __vue_module_identifier__$L = undefined;
      /* functional template */
      const __vue_is_functional_template__$L = undefined;
      /* style inject */
      const __vue_create_injector__$j = function(context){ 
                    return function(scopeId, data)
                    {
                        if(window['wizstyle-'+scopeId])
                            return;
                        if(__vue_script__$L.loadStyles)
                            __vue_script__$L.loadStyles(data.source);
                        window['wizstyle-'+scopeId]=true;
                    }
                };
      /* style inject SSR */
      
      /* style inject shadow dom */
      

      
      var uiPivot = normalizeComponent(
        {},
        __vue_inject_styles__$L,
        __vue_script__$L,
        __vue_scope_id__$L,
        __vue_is_functional_template__$L,
        __vue_module_identifier__$L,
        false,
        __vue_create_injector__$j,
        undefined,
        undefined
      );

    //
    //
    //
    var script$M = {
      name: 'ou-pivot-item',
      inject: ['eventHub'],
      props: {
        label: {
          type: String,
          required: true
        }
      },
      beforeMount: function beforeMount() {
        this.eventHub.$emit('addPivotItem', this.label);
      }
    };

    /* script */
    const __vue_script__$M = script$M;

    /* template */
    var __vue_render__$s = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{staticClass:"ms-Pivot-content",attrs:{"data-content":_vm.label}},[_vm._t("default")],2)};
    var __vue_staticRenderFns__$s = [];

      /* style */
      const __vue_inject_styles__$M = undefined;
      /* scoped */
      const __vue_scope_id__$M = undefined;
      /* module identifier */
      const __vue_module_identifier__$M = undefined;
      /* functional template */
      const __vue_is_functional_template__$M = false;
      /* style inject */
      
      /* style inject SSR */
      
      /* style inject shadow dom */
      

      
      var PivotItem = normalizeComponent(
        { render: __vue_render__$s, staticRenderFns: __vue_staticRenderFns__$s },
        __vue_inject_styles__$M,
        __vue_script__$M,
        __vue_scope_id__$M,
        __vue_is_functional_template__$M,
        __vue_module_identifier__$M,
        false,
        undefined,
        undefined,
        undefined
      );

    var script$N = {
      extends: PivotItem
    };

    /* script */
    const __vue_script__$N = script$N;

    /* template */

      /* style */
      const __vue_inject_styles__$N = undefined;
      /* scoped */
      const __vue_scope_id__$N = undefined;
      /* module identifier */
      const __vue_module_identifier__$N = undefined;
      /* functional template */
      const __vue_is_functional_template__$N = undefined;
      /* style inject */
      
      /* style inject SSR */
      
      /* style inject shadow dom */
      

      
      var uiPivotItem = normalizeComponent(
        {},
        __vue_inject_styles__$N,
        __vue_script__$N,
        __vue_scope_id__$N,
        __vue_is_functional_template__$N,
        __vue_module_identifier__$N,
        false,
        undefined,
        undefined,
        undefined
      );

    //
    //
    //
    //
    //
    //
    //
    //
    //
    //
    var script$O = {
      name: 'ou-progress-indicator',
      props: {
        name: String,
        description: String,
        percent: {
          type: Number,
          validator: function validator(value) {
            return value >= 0 && value <= 1;
          }
        }
      },
      data: function data() {
        return {
          progressIndicatorInstance: null
        };
      },
      watch: {
        percent: function percent() {
          this.setProgressIndicator();
        }
      },
      mounted: function mounted() {
        var progressIndicatorElement = this.$refs.progressIndicator;
        this.progressIndicatorInstance = new this.$fabric.ProgressIndicator(progressIndicatorElement);
        this.setProgressIndicator();
      },
      methods: {
        setProgressIndicator: function setProgressIndicator() {
          this.progressIndicatorInstance.setProgressPercent(this.percent);
        }
      }
    };

    /* script */
    const __vue_script__$O = script$O;

    /* template */
    var __vue_render__$t = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{ref:"progressIndicator",staticClass:"ms-ProgressIndicator"},[(_vm.name)?_c('div',{staticClass:"ms-ProgressIndicator-itemName"},[_vm._v(_vm._s(_vm.name))]):_vm._e(),_vm._v(" "),_vm._m(0),_vm._v(" "),(_vm.description)?_c('div',{staticClass:"ms-ProgressIndicator-itemDescription"},[_vm._v(_vm._s(_vm.description))]):_vm._e()])};
    var __vue_staticRenderFns__$t = [function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{staticClass:"ms-ProgressIndicator-itemProgress"},[_c('div',{staticClass:"ms-ProgressIndicator-progressTrack"}),_vm._v(" "),_c('div',{staticClass:"ms-ProgressIndicator-progressBar"})])}];

      /* style */
      const __vue_inject_styles__$O = undefined;
      /* scoped */
      const __vue_scope_id__$O = undefined;
      /* module identifier */
      const __vue_module_identifier__$O = undefined;
      /* functional template */
      const __vue_is_functional_template__$O = false;
      /* style inject */
      
      /* style inject SSR */
      
      /* style inject shadow dom */
      

      
      var ProgressIndicator = normalizeComponent(
        { render: __vue_render__$t, staticRenderFns: __vue_staticRenderFns__$t },
        __vue_inject_styles__$O,
        __vue_script__$O,
        __vue_scope_id__$O,
        __vue_is_functional_template__$O,
        __vue_module_identifier__$O,
        false,
        undefined,
        undefined,
        undefined
      );

    var ProgressIndicator$1 = function () {
      function ProgressIndicator(container) {
        this.container = container;
        this.cacheDOM();
      }

      ProgressIndicator.prototype.setProgressPercent = function (percent) {
        this._progressBar.style.width = Math.round(this._width * percent) + "px";
      };

      ProgressIndicator.prototype.setProgress = function (progress) {
        this._progress = progress;
        var percentage = this._progress / this._total;
        this.setProgressPercent(percentage);
      };

      ProgressIndicator.prototype.setTotal = function (total) {
        this._total = total;
      };

      ProgressIndicator.prototype.setName = function (name) {
        this._itemName.innerHTML = name;
      };

      ProgressIndicator.prototype.setDescription = function (description) {
        this._itemDescription.innerHTML = description;
      };

      ProgressIndicator.prototype.cacheDOM = function () {
        this._itemName = this.container.querySelector(".ms-ProgressIndicator-itemName") || null;
        this._itemDescription = this.container.querySelector(".ms-ProgressIndicator-itemDescription") || null;
        this._progressBar = this.container.querySelector(".ms-ProgressIndicator-progressBar");
        var itemProgress = this.container.querySelector(".ms-ProgressIndicator-itemProgress");
        this._width = itemProgress.offsetWidth;
      };

      return ProgressIndicator;
    }();

    var script$P = {
      loadStyles: loadThemedStyles.loadStyles,
      beforeMount: function beforeMount() {
        this.$fabric = {
          ProgressIndicator: ProgressIndicator$1
        };
      },
      extends: ProgressIndicator
    };

    /* script */
    const __vue_script__$P = script$P;

    /* template */

      /* style */
      const __vue_inject_styles__$P = function (inject) {
        if (!inject) return
        inject("data-v-18bcd5df_0", { source: ".ms-ProgressIndicator[data-v-18bcd5df]{font-family:\"Segoe UI WestEuropean\",\"Segoe UI\",-apple-system,BlinkMacSystemFont,Roboto,\"Helvetica Neue\",sans-serif;-webkit-font-smoothing:antialiased;font-weight:400}.ms-ProgressIndicator-itemName[data-v-18bcd5df]{color:\"[theme:neutralPrimary, default: #333333]\";font-size:14px;text-overflow:ellipsis;overflow:hidden;white-space:nowrap;padding-top:4px;line-height:20px}.ms-ProgressIndicator-itemDescription[data-v-18bcd5df]{color:\"[theme:neutralSecondaryAlt, default: #767676]\";font-size:11px;line-height:18px}.ms-ProgressIndicator-itemProgress[data-v-18bcd5df]{position:relative;width:180px;height:2px;padding:8px 0}.ms-ProgressIndicator-progressTrack[data-v-18bcd5df]{position:absolute;width:100%;height:2px;background-color:\"[theme:neutralLight, default: #eaeaea]\";outline:1px solid transparent}.ms-ProgressIndicator-progressBar[data-v-18bcd5df]{background-color:\"[theme:themePrimary, default: #0078d7]\";height:2px;position:absolute;transition:width .3s ease;width:0}@media screen and (-ms-high-contrast:active){.ms-ProgressIndicator-progressBar[data-v-18bcd5df]{background-color:\"[theme:white, default: #ffffff]\"}}@media screen and (-ms-high-contrast:black-on-white){.ms-ProgressIndicator-progressBar[data-v-18bcd5df]{background-color:\"[theme:black, default: #000000]\"}}", map: undefined, media: undefined });

      };
      /* scoped */
      const __vue_scope_id__$P = "data-v-18bcd5df";
      /* module identifier */
      const __vue_module_identifier__$P = undefined;
      /* functional template */
      const __vue_is_functional_template__$P = undefined;
      /* style inject */
      const __vue_create_injector__$k = function(context){ 
                    return function(scopeId, data)
                    {
                        if(window['wizstyle-'+scopeId])
                            return;
                        if(__vue_script__$P.loadStyles)
                            __vue_script__$P.loadStyles(data.source);
                        window['wizstyle-'+scopeId]=true;
                    }
                };
      /* style inject SSR */
      
      /* style inject shadow dom */
      

      
      var uiProgressIndicator = normalizeComponent(
        {},
        __vue_inject_styles__$P,
        __vue_script__$P,
        __vue_scope_id__$P,
        __vue_is_functional_template__$P,
        __vue_module_identifier__$P,
        false,
        __vue_create_injector__$k,
        undefined,
        undefined
      );

    var script$Q = {
      name: 'ou-search-box',
      mixins: [type('commandBar')],
      props: {
        value: String,
        placeholder: String,
        collapsed: {
          type: Boolean,
          default: false
        }
      },
      data: function data() {
        return {
          hasValue: !!this.value,
          searchBoxInstance: null
        };
      },
      computed: {
        searchBoxClass: function searchBoxClass() {
          var _ref;

          return _ref = {}, _defineProperty(_ref, "ms-SearchBox--".concat(this.type), !!this.type), _defineProperty(_ref, 'is-collapsed', this.collapsed), _ref;
        }
      },
      mounted: function mounted() {
        this.searchBoxInstance = new this.$fabric.SearchBox(this.$refs.searchBox); // Overwrite the default blur event on searchBoxField
        // to prevent lose content when searchBox blur.
        // You can see here https://github.com/OfficeDev/office-ui-fabric-js/issues/301

        this.searchBoxInstance._searchBoxField.removeEventListener('blur', this.searchBoxInstance._boundHandleBlur, true);

        this.searchBoxInstance._searchBoxField.addEventListener('blur', this.blurEvent, true);
      },
      methods: {
        updateValue: function updateValue(event) {
          this.$emit('input', event.target.value);
        },
        clearValue: function clearValue() {
          this.$emit('input', '');
        },
        blurEvent: function blurEvent() {
          var self = this.searchBoxInstance;

          if (!self._clearOnly) {
            self._searchBox.removeEventListener('keyup', self._boundEnableClose);

            setTimeout(function () {
              if (!self._searchBox.contains(document.activeElement) && self._searchBoxField.value == '') {
                self._clearSearchBox();

                self._collapseSearchBox();

                self.setCollapsedListeners();
              }
            }, 10);
          } else {
            self._searchBoxField.focus();
          }

          self._clearOnly = false;
        }
      }
    };

    /* script */
    const __vue_script__$Q = script$Q;

    /* template */
    var __vue_render__$u = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{ref:"searchBox",staticClass:"ms-SearchBox",class:_vm.searchBoxClass},[_c('input',{ref:"searchBoxInput",staticClass:"ms-SearchBox-field",attrs:{"type":"text"},domProps:{"value":_vm.value},on:{"input":_vm.updateValue}}),_vm._v(" "),_c('label',{staticClass:"ms-SearchBox-label"},[_c('i',{staticClass:"ms-SearchBox-icon ms-Icon ms-Icon--Search"}),_vm._v(" "),(!_vm.hasValue)?_c('span',{staticClass:"ms-SearchBox-text"},[_vm._v(_vm._s(_vm.placeholder))]):_vm._e()]),_vm._v(" "),_c('div',{staticClass:"ms-CommandButton ms-SearchBox-clear ms-CommandButton--noLabel",on:{"mousedown":_vm.clearValue}},[_vm._m(0)])])};
    var __vue_staticRenderFns__$u = [function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('button',{staticClass:"ms-CommandButton-button"},[_c('span',{staticClass:"ms-CommandButton-icon"},[_c('i',{staticClass:"ms-Icon ms-Icon--Clear"})]),_vm._v(" "),_c('span',{staticClass:"ms-CommandButton-label"})])}];

      /* style */
      const __vue_inject_styles__$Q = undefined;
      /* scoped */
      const __vue_scope_id__$Q = undefined;
      /* module identifier */
      const __vue_module_identifier__$Q = undefined;
      /* functional template */
      const __vue_is_functional_template__$Q = false;
      /* style inject */
      
      /* style inject SSR */
      
      /* style inject shadow dom */
      

      
      var searchBox = normalizeComponent(
        { render: __vue_render__$u, staticRenderFns: __vue_staticRenderFns__$u },
        __vue_inject_styles__$Q,
        __vue_script__$Q,
        __vue_scope_id__$Q,
        __vue_is_functional_template__$Q,
        __vue_module_identifier__$Q,
        false,
        undefined,
        undefined,
        undefined
      );

    var script$R = {
      loadStyles: loadThemedStyles.loadStyles,
      beforeMount: function beforeMount() {
        this.$fabric = {
          SearchBox: SearchBox
        };
      },
      extends: searchBox
    };

    /* script */
    const __vue_script__$R = script$R;

    /* template */

      /* style */
      const __vue_inject_styles__$R = function (inject) {
        if (!inject) return
        inject("data-v-52df783c_0", { source: "@charset \"UTF-8\";.ms-Label[data-v-52df783c]{font-family:\"Segoe UI WestEuropean\",\"Segoe UI\",-apple-system,BlinkMacSystemFont,Roboto,\"Helvetica Neue\",sans-serif;-webkit-font-smoothing:antialiased;box-sizing:border-box;margin:0;padding:0;-webkit-box-shadow:none;-moz-box-shadow:none;box-shadow:none;color:\"[theme:neutralPrimary, default: #333333]\";font-size:12px;font-weight:400;box-sizing:border-box;display:block;padding:5px 0}.ms-Label.is-required[data-v-52df783c]::after{content:\" *\";color:\"[theme:error, default: #a80000]\"}.ms-Label.is-disabled[data-v-52df783c]{color:\"[theme:neutralTertiary, default: #a6a6a6]\"}.ms-CommandButton[data-v-52df783c]{font-family:\"Segoe UI WestEuropean\",\"Segoe UI\",-apple-system,BlinkMacSystemFont,Roboto,\"Helvetica Neue\",sans-serif;-webkit-font-smoothing:antialiased;display:inline-block;position:relative;vertical-align:top}.ms-CommandButton.is-hidden[data-v-52df783c]{display:none}.ms-CommandButton.is-disabled .ms-CommandButton-button[data-v-52df783c],.ms-CommandButton:disabled .ms-CommandButton-button[data-v-52df783c]{cursor:default}.ms-CommandButton.is-disabled .ms-CommandButton-button[data-v-52df783c]:hover,.ms-CommandButton:disabled .ms-CommandButton-button[data-v-52df783c]:hover{background-color:\"[theme:themeLighterAlt, default: #eff6fc]\"}.ms-CommandButton.is-disabled .ms-CommandButton-button .ms-CommandButton-label[data-v-52df783c],.ms-CommandButton:disabled .ms-CommandButton-button .ms-CommandButton-label[data-v-52df783c]{color:\"[theme:neutralTertiary, default: #a6a6a6]\"}.ms-CommandButton.is-disabled .ms-CommandButton-button .ms-CommandButton-icon[data-v-52df783c],.ms-CommandButton:disabled .ms-CommandButton-button .ms-CommandButton-icon[data-v-52df783c]{color:\"[theme:neutralTertiary, default: #a6a6a6]\"}.ms-CommandButton .ms-ContextualMenu[data-v-52df783c]{display:none}.ms-CommandButton-button[data-v-52df783c],.ms-CommandButton-splitIcon[data-v-52df783c]{box-sizing:border-box;margin:0;padding:0;-webkit-box-shadow:none;-moz-box-shadow:none;box-shadow:none;color:\"[theme:neutralPrimary, default: #333333]\";font-size:14px;font-weight:400;cursor:pointer;display:inline-block;height:40px;line-height:40px;outline:1px solid transparent;padding:0 8px;position:relative;vertical-align:top;background:0 0}.ms-CommandButton-button[data-v-52df783c]:hover,.ms-CommandButton-splitIcon[data-v-52df783c]:hover{background-color:\"[theme:neutralLight, default: #eaeaea]\"}.ms-CommandButton-button:hover .ms-CommandButton-label[data-v-52df783c],.ms-CommandButton-splitIcon:hover .ms-CommandButton-label[data-v-52df783c]{color:\"[theme:neutralDark, default: #212121]\"}.ms-CommandButton-button[data-v-52df783c]:active,.ms-CommandButton-splitIcon[data-v-52df783c]:active{background-color:\"[theme:neutralLight, default: #eaeaea]\"}.ms-CommandButton-button[data-v-52df783c]:focus::before,.ms-CommandButton-splitIcon[data-v-52df783c]:focus::before{top:3px;left:3px;right:3px;bottom:3px;border:1px solid \"[theme:neutralPrimary, default: #333333]\";position:absolute;z-index:10;content:\"\";outline:0}.ms-CommandButton-button[data-v-52df783c]:focus,.ms-CommandButton-splitIcon[data-v-52df783c]:focus{outline:0}@media only screen and (max-width:639px){.ms-CommandButton-button[data-v-52df783c],.ms-CommandButton-splitIcon[data-v-52df783c]{height:44px}.ms-CommandButton-button .ms-CommandButton-icon[data-v-52df783c],.ms-CommandButton-splitIcon .ms-CommandButton-icon[data-v-52df783c]{font-size:20px}.ms-CommandButton-button .ms-CommandButton-label[data-v-52df783c],.ms-CommandButton-splitIcon .ms-CommandButton-label[data-v-52df783c]{line-height:44px}}.ms-CommandButton-button[data-v-52df783c]{border:0;margin:0}.ms-CommandButton+.ms-CommandButton[data-v-52df783c]{margin-left:8px}@media only screen and (max-width:639px){.ms-CommandButton+.ms-CommandButton[data-v-52df783c]{margin-left:4px}}.ms-CommandButton-icon[data-v-52df783c]{display:inline-block;margin-right:8px;position:relative;font-size:16px;min-width:16px;height:100%}.ms-CommandButton-icon .ms-Icon[data-v-52df783c]{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.ms-CommandButton-label[data-v-52df783c]{font-size:14px;font-weight:400;color:\"[theme:neutralPrimary, default: #333333]\";line-height:40px;height:100%;display:inline-block;vertical-align:top}.ms-CommandButton-label[data-v-52df783c]:hover{color:\"[theme:neutralDark, default: #212121]\"}.ms-CommandButton-dropdownIcon[data-v-52df783c],.ms-CommandButton-splitIcon[data-v-52df783c]{display:inline-block;position:relative;color:\"[theme:neutralPrimary, default: #333333]\";font-size:12px;font-weight:300;min-width:12px;height:100%;vertical-align:top;margin-left:8px}.ms-CommandButton-dropdownIcon .ms-Icon[data-v-52df783c],.ms-CommandButton-splitIcon .ms-Icon[data-v-52df783c]{line-height:normal;padding-top:16px}.ms-CommandButton-dropdownIcon[data-v-52df783c]:focus::before,.ms-CommandButton-splitIcon[data-v-52df783c]:focus::before{top:3px;left:3px;right:3px;bottom:3px;border:1px solid \"[theme:neutralPrimary, default: #333333]\";position:absolute;z-index:10;content:\"\";outline:0}@media only screen and (max-width:639px){.ms-CommandButton-dropdownIcon[data-v-52df783c],.ms-CommandButton-splitIcon[data-v-52df783c]{display:none}}.ms-CommandButton-splitIcon[data-v-52df783c]{margin-left:-2px;width:27px;border:0}.ms-CommandButton-splitIcon .ms-Icon[data-v-52df783c]{margin-left:-1px;position:relative;padding-top:16px}.ms-CommandButton-splitIcon .ms-Icon[data-v-52df783c]::after{position:absolute;content:\" \";width:1px;height:16px;top:12px;left:-8px;border-left:1px solid \"[theme:neutralTertiaryAlt, default: #c8c8c8]\"}.ms-CommandButton.ms-CommandButton--noLabel .ms-CommandButton-icon[data-v-52df783c]{margin-right:0}.ms-CommandButton.ms-CommandButton--noLabel .ms-CommandButton-label[data-v-52df783c]{display:none}.ms-CommandButton.ms-CommandButton--noLabel .ms-CommandButton-button[data-v-52df783c]{padding:0 12px}.ms-CommandButton.ms-CommandButton--inline .ms-CommandButton-button[data-v-52df783c]{background:0 0}.ms-CommandButton.ms-CommandButton--actionButton .ms-CommandButton-button[data-v-52df783c]{width:50px;height:40px}.ms-CommandButton.ms-CommandButton--actionButton .ms-CommandButton-icon[data-v-52df783c]{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);width:16px;height:16px;padding-right:0}.ms-CommandButton.ms-CommandButton--pivot.is-active[data-v-52df783c]::before{content:\"\";height:2px;position:absolute;left:0;right:0;background-color:\"[theme:themePrimary, default: #0078d7]\";bottom:0;z-index:5}.ms-CommandButton.ms-CommandButton--pivot[data-v-52df783c]:hover::before{content:\"\";height:2px;position:absolute;left:0;right:0;background-color:\"[theme:themePrimary, default: #0078d7]\";bottom:0;z-index:5}.ms-CommandButton.ms-CommandButton--pivot .ms-CommandButton-label[data-v-52df783c],.ms-CommandButton.ms-CommandButton--textOnly .ms-CommandButton-label[data-v-52df783c]{display:inline-block}@media only screen and (max-width:479px){.ms-CommandButton.ms-CommandButton--pivot .ms-CommandButton-label[data-v-52df783c],.ms-CommandButton.ms-CommandButton--textOnly .ms-CommandButton-label[data-v-52df783c]{font-size:16px}}.ms-SearchBox[data-v-52df783c]{font-family:\"Segoe UI WestEuropean\",\"Segoe UI\",-apple-system,BlinkMacSystemFont,Roboto,\"Helvetica Neue\",sans-serif;-webkit-font-smoothing:antialiased;box-sizing:border-box;margin:0;padding:0;-webkit-box-shadow:none;-moz-box-shadow:none;box-shadow:none;height:36px;color:\"[theme:neutralPrimary, default: #333333]\";font-size:14px;font-weight:400;position:relative;margin-bottom:10px;display:inline-block;overflow:hidden;background-color:\"[theme:white, default: #ffffff]\"}.ms-SearchBox.is-active[data-v-52df783c]{z-index:10}.ms-SearchBox.is-active .ms-SearchBox-label[data-v-52df783c]{display:none}.ms-SearchBox.is-active .ms-SearchBox-clear[data-v-52df783c]{display:block}.ms-SearchBox[data-v-52df783c]:hover{background-color:\"[theme:themeLighter, default: #deecf9]\"}.ms-SearchBox:hover .ms-SearchBox-label[data-v-52df783c]{color:\"[theme:black, default: #000000]\"}.ms-SearchBox:hover .ms-SearchBox-label .ms-Icon[data-v-52df783c]{color:\"[theme:neutralPrimary, default: #333333]\"}.ms-SearchBox.is-disabled[data-v-52df783c]{background-color:#f4f4f4;pointer-events:none}.ms-SearchBox.is-disabled .ms-SearchBox-label[data-v-52df783c]{color:\"[theme:neutralTertiary, default: #a6a6a6]\"}.ms-SearchBox.is-disabled .ms-SearchBox-icon[data-v-52df783c]{color:\"[theme:neutralTertiary, default: #a6a6a6]\"}.ms-SearchBox.is-disabled .ms-SearchBox-field[data-v-52df783c]{color:\"[theme:neutralTertiary, default: #a6a6a6]\";background-color:transparent;border-color:\"[theme:neutralLighter, default: #f4f4f4]\";cursor:default}.ms-SearchBox-clear[data-v-52df783c]{display:none;position:absolute;top:0;right:0;z-index:10}.ms-SearchBox-clear .ms-CommandButton-button[data-v-52df783c]{background-color:\"[theme:themePrimary, default: #0078d7]\";color:\"[theme:white, default: #ffffff]\";height:36px}.ms-SearchBox-clear .ms-CommandButton-icon[data-v-52df783c]{color:\"[theme:white, default: #ffffff]\"}.ms-SearchBox-icon[data-v-52df783c]{position:relative;top:50%;transform:translateY(-50%);display:inline-block;font-size:16px;width:16px;margin-left:12px;margin-right:6px;color:\"[theme:themePrimary, default: #0078d7]\";vertical-align:top}.ms-SearchBox-field[data-v-52df783c]{position:relative;box-sizing:border-box;margin:0;padding:0;-webkit-box-shadow:none;-moz-box-shadow:none;box-shadow:none;border:1px solid \"[theme:themeTertiary, default: #71afe5]\";outline:transparent 1px solid;font-weight:300;font-size:14px;color:\"[theme:black, default: #000000]\";height:36px;padding:6px 3px 7px 45px;width:208px;background-color:transparent;z-index:5;transition:padding-left 167ms}.ms-SearchBox-field[data-v-52df783c]:focus{padding:6px 32px 7px 10px;border-color:\"[theme:themePrimary, default: #0078d7]\";background-color:\"[theme:themeLighter, default: #deecf9]\"}.ms-SearchBox-field[data-v-52df783c]::-ms-clear{display:none}.ms-SearchBox-label[data-v-52df783c]{position:absolute;top:0;left:0;height:36px;line-height:36px;color:\"[theme:neutralSecondary, default: #666666]\"}.ms-SearchBox.ms-SearchBox--commandBar[data-v-52df783c]{background-color:\"[theme:white, default: #ffffff]\";width:208px;height:40px}.ms-SearchBox.ms-SearchBox--commandBar .ms-SearchBox-field[data-v-52df783c],.ms-SearchBox.ms-SearchBox--commandBar .ms-SearchBox-label[data-v-52df783c]{height:40px}.ms-SearchBox.ms-SearchBox--commandBar .ms-SearchBox-field[data-v-52df783c]{transition:none;border:0}.ms-SearchBox.ms-SearchBox--commandBar .ms-SearchBox-field[data-v-52df783c]:focus{background-color:transparent;padding:6px 3px 7px 45px}.ms-SearchBox.ms-SearchBox--commandBar .ms-SearchBox-clear[data-v-52df783c],.ms-SearchBox.ms-SearchBox--commandBar .ms-SearchBox-exit[data-v-52df783c],.ms-SearchBox.ms-SearchBox--commandBar .ms-SearchBox-filter[data-v-52df783c]{display:none;position:absolute;top:0;z-index:10;color:\"[theme:neutralTertiary, default: #a6a6a6]\"}.ms-SearchBox.ms-SearchBox--commandBar .ms-SearchBox-clear .ms-CommandButton-button[data-v-52df783c],.ms-SearchBox.ms-SearchBox--commandBar .ms-SearchBox-exit .ms-CommandButton-button[data-v-52df783c],.ms-SearchBox.ms-SearchBox--commandBar .ms-SearchBox-filter .ms-CommandButton-button[data-v-52df783c]{height:40px;background-color:transparent}.ms-SearchBox.ms-SearchBox--commandBar .ms-SearchBox-clear[data-v-52df783c]{right:8px}.ms-SearchBox.ms-SearchBox--commandBar .ms-SearchBox-filter[data-v-52df783c]{right:8px}.ms-SearchBox.ms-SearchBox--commandBar .ms-SearchBox-filter .ms-CommandButton-icon[data-v-52df783c]{color:\"[theme:themePrimary, default: #0078d7]\"}.ms-SearchBox.ms-SearchBox--commandBar[data-v-52df783c]::before{position:absolute;content:\" \";right:0;bottom:0;left:0;margin:0 8px;border-bottom:1px solid \"[theme:neutralLight, default: #eaeaea]\"}.ms-SearchBox.ms-SearchBox--commandBar[data-v-52df783c]:hover{background-color:\"[theme:white, default: #ffffff]\"}.ms-SearchBox.ms-SearchBox--commandBar:hover .ms-SearchBox-label[data-v-52df783c]{color:\"[theme:neutralDark, default: #212121]\"}.ms-SearchBox.ms-SearchBox--commandBar:hover .ms-SearchBox-icon[data-v-52df783c]{color:\"[theme:themePrimary, default: #0078d7]\"}.ms-SearchBox.ms-SearchBox--commandBar[data-v-52df783c]:focus{background-color:transparent}.ms-SearchBox.ms-SearchBox--commandBar.is-active .ms-CommandButton .ms-SearchBox-exit[data-v-52df783c],.ms-SearchBox.ms-SearchBox--commandBar.is-active .ms-CommandButton .ms-SearchBox-filter[data-v-52df783c]{display:block}.ms-SearchBox.ms-SearchBox--commandBar.is-collapsed[data-v-52df783c]{width:50px;min-height:40px;z-index:0;background-color:#f4f4f4}.ms-SearchBox.ms-SearchBox--commandBar.is-collapsed .ms-SearchBox-text[data-v-52df783c]{display:none}.ms-SearchBox.ms-SearchBox--commandBar.is-collapsed .ms-SearchBox-field[data-v-52df783c]{cursor:pointer;width:calc(100% - 50px)}.ms-SearchBox.ms-SearchBox--commandBar.is-collapsed[data-v-52df783c]::before{visibility:hidden}.ms-SearchBox.ms-SearchBox--commandBar.is-collapsed.is-active[data-v-52df783c]{width:100%}.ms-SearchBox.ms-SearchBox--commandBar.is-collapsed.is-active .ms-SearchBox-field[data-v-52df783c]{display:block;cursor:text}.ms-SearchBox.ms-SearchBox--commandBar.is-collapsed.is-active .ms-SearchBox-text[data-v-52df783c]{display:inline-block}@media only screen and (max-width:639px){.ms-SearchBox.ms-SearchBox--commandBar.is-collapsed.is-active[data-v-52df783c]{width:100%}.ms-SearchBox.ms-SearchBox--commandBar.is-collapsed.is-active .ms-SearchBox-clear[data-v-52df783c]{display:inline-block;right:58px}.ms-SearchBox.ms-SearchBox--commandBar.is-collapsed.is-active .ms-SearchBox-filter[data-v-52df783c]{display:inline-block}.ms-SearchBox.ms-SearchBox--commandBar.is-collapsed.is-active.is-animated[data-v-52df783c]{transition:width 167ms cubic-bezier(.1,.9,.2,1)}}.ms-SearchBox.ms-SearchBox--commandBar.is-collapsed.is-active[data-v-52df783c]::before{visibility:visible}.ms-SearchBox.ms-SearchBox--commandBar.has-text .ms-SearchBox-clear[data-v-52df783c]{display:inline-block}.ms-SearchBox.ms-SearchBox--commandBar.has-text .ms-SearchBox-clear .ms-CommandButton-icon[data-v-52df783c]{color:\"[theme:neutralTertiary, default: #a6a6a6]\"}.ms-SearchBox.ms-SearchBox--commandBar.has-text .ms-SearchBox-clear .ms-CommandButton-icon[data-v-52df783c]:active{color:\"[theme:themePrimary, default: #0078d7]\"}@media only screen and (min-width:1024px){.ms-SearchBox.ms-SearchBox--commandBar[data-v-52df783c]{background-color:\"[theme:white, default: #ffffff]\";border-right:1px solid \"[theme:neutralLight, default: #eaeaea]\"}}@media only screen and (max-width:639px){.ms-SearchBox.ms-SearchBox--commandBar[data-v-52df783c]{height:44px}.ms-SearchBox.ms-SearchBox--commandBar .ms-SearchBox-exit[data-v-52df783c],.ms-SearchBox.ms-SearchBox--commandBar .ms-SearchBox-field[data-v-52df783c],.ms-SearchBox.ms-SearchBox--commandBar .ms-SearchBox-icon[data-v-52df783c],.ms-SearchBox.ms-SearchBox--commandBar .ms-SearchBox-label[data-v-52df783c]{height:44px;line-height:44px}.ms-SearchBox.ms-SearchBox--commandBar .ms-SearchBox-clear[data-v-52df783c],.ms-SearchBox.ms-SearchBox--commandBar .ms-SearchBox-exit[data-v-52df783c],.ms-SearchBox.ms-SearchBox--commandBar .ms-SearchBox-filter[data-v-52df783c],.ms-SearchBox.ms-SearchBox--commandBar .ms-SearchBox-icon[data-v-52df783c]{font-size:20px}.ms-SearchBox.ms-SearchBox--commandBar .ms-SearchBox-clear .ms-CommandButton-button[data-v-52df783c],.ms-SearchBox.ms-SearchBox--commandBar .ms-SearchBox-exit .ms-CommandButton-button[data-v-52df783c],.ms-SearchBox.ms-SearchBox--commandBar .ms-SearchBox-filter .ms-CommandButton-button[data-v-52df783c],.ms-SearchBox.ms-SearchBox--commandBar .ms-SearchBox-icon .ms-CommandButton-button[data-v-52df783c]{height:44px}.ms-SearchBox.ms-SearchBox--commandBar .ms-SearchBox-field[data-v-52df783c],.ms-SearchBox.ms-SearchBox--commandBar .ms-SearchBox-label[data-v-52df783c]{font-size:16px}}.ms-SearchBox.ms-SearchBox--commandBar.is-active[data-v-52df783c]{background-color:\"[theme:white, default: #ffffff]\"}.ms-SearchBox.ms-SearchBox--commandBar.is-active .ms-SearchBox-label[data-v-52df783c]{display:block;line-height:40px;height:40px}.ms-SearchBox.ms-SearchBox--commandBar.is-active .ms-SearchBox-label .ms-SearchBox-text[data-v-52df783c]{display:none}.ms-SearchBox.ms-SearchBox--commandBar.is-active[data-v-52df783c]::before{visibility:visible}@media only screen and (max-width:639px){.ms-SearchBox.ms-SearchBox--commandBar.is-active .ms-SearchBox-field[data-v-52df783c]{width:100%;padding-right:100px}.ms-SearchBox.ms-SearchBox--commandBar.is-active .ms-SearchBox-icon[data-v-52df783c]{display:none}.ms-SearchBox.ms-SearchBox--commandBar.is-active .ms-SearchBox-exit[data-v-52df783c]{display:inline-block}.ms-SearchBox.ms-SearchBox--commandBar.is-active.has-text .ms-SearchBox-filter .ms-CommandButton-icon[data-v-52df783c]{color:\"[theme:neutralTertiary, default: #a6a6a6]\"}}@font-face{font-family:FabricMDL2Icons-a13498cf;src:url(https://spoprod-a.akamaihd.net/files/fabric/assets/icons/fabric-icons-a13498cf.woff) format(\"woff\")}.ms-Icon[data-v-52df783c]{display:inline-block;font-style:normal;font-weight:400}.ms-Icon.ms-Icon--Search[data-v-52df783c]::before{font-family:FabricMDL2Icons-a13498cf;content:\"\"}.ms-Icon.ms-Icon--Clear[data-v-52df783c]::before{font-family:FabricMDL2Icons-a13498cf;content:\"\"}", map: undefined, media: undefined });

      };
      /* scoped */
      const __vue_scope_id__$R = "data-v-52df783c";
      /* module identifier */
      const __vue_module_identifier__$R = undefined;
      /* functional template */
      const __vue_is_functional_template__$R = undefined;
      /* style inject */
      const __vue_create_injector__$l = function(context){ 
                    return function(scopeId, data)
                    {
                        if(window['wizstyle-'+scopeId])
                            return;
                        if(__vue_script__$R.loadStyles)
                            __vue_script__$R.loadStyles(data.source);
                        window['wizstyle-'+scopeId]=true;
                    }
                };
      /* style inject SSR */
      
      /* style inject shadow dom */
      

      
      var uiSearchbox = normalizeComponent(
        {},
        __vue_inject_styles__$R,
        __vue_script__$R,
        __vue_scope_id__$R,
        __vue_is_functional_template__$R,
        __vue_module_identifier__$R,
        false,
        __vue_create_injector__$l,
        undefined,
        undefined
      );

    var script$S = {
      name: 'ou-spinner',
      mixins: [type('large')],
      props: {
        label: String
      },
      computed: {
        spinnerClass: function spinnerClass() {
          return _defineProperty({}, "ms-Spinner--".concat(this.type), !!this.type);
        }
      },
      mounted: function mounted() {
        new this.$fabric.Spinner(this.$refs.spinner);
      }
    };

    /* script */
    const __vue_script__$S = script$S;

    /* template */
    var __vue_render__$v = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{ref:"spinner",staticClass:"ms-Spinner",class:_vm.spinnerClass},[(_vm.label)?_c('div',{staticClass:"ms-Spinner-label"},[_vm._v(_vm._s(_vm.label))]):_vm._e()])};
    var __vue_staticRenderFns__$v = [];

      /* style */
      const __vue_inject_styles__$S = undefined;
      /* scoped */
      const __vue_scope_id__$S = undefined;
      /* module identifier */
      const __vue_module_identifier__$S = undefined;
      /* functional template */
      const __vue_is_functional_template__$S = false;
      /* style inject */
      
      /* style inject SSR */
      
      /* style inject shadow dom */
      

      
      var Spinner = normalizeComponent(
        { render: __vue_render__$v, staticRenderFns: __vue_staticRenderFns__$v },
        __vue_inject_styles__$S,
        __vue_script__$S,
        __vue_scope_id__$S,
        __vue_is_functional_template__$S,
        __vue_module_identifier__$S,
        false,
        undefined,
        undefined,
        undefined
      );

    var CircleObject = function () {
      function CircleObject(element, j) {
        this.element = element;
        this.j = j;
      }

      return CircleObject;
    }();

    var Spinner$1 = function () {
      function Spinner(container) {
        this.eightSize = 0.2;
        this.animationSpeed = 90;
        this.parentSize = 20;
        this.fadeIncrement = 0;
        this.circleObjects = [];
        this._target = container;

        this._init();
      }

      Spinner.prototype.start = function () {
        var _this = this;

        this.stop();
        this.interval = setInterval(function () {
          var i = _this.circleObjects.length;

          while (i--) {
            _this._fade(_this.circleObjects[i]);
          }
        }, this.animationSpeed);
      };

      Spinner.prototype.stop = function () {
        clearInterval(this.interval);
      };

      Spinner.prototype._init = function () {
        this._setTargetElement();

        this._setPropertiesForSize();

        this._createCirclesAndArrange();

        this._initializeOpacities();

        this.start();
      };

      Spinner.prototype._setPropertiesForSize = function () {
        if (this.spinner.className.indexOf("large") > -1) {
          this.parentSize = 28;
          this.eightSize = 0.179;
        }

        this.offsetSize = this.eightSize;
        this.numCircles = 8;
      };

      Spinner.prototype._setTargetElement = function () {
        if (this._target.className.indexOf("ms-Spinner") === -1) {
          this.spinner = document.createElement("div");
          this.spinner.className = "ms-Spinner";

          this._target.appendChild(this.spinner);
        } else {
          this.spinner = this._target;
        }
      };

      Spinner.prototype._initializeOpacities = function () {
        var i = 0;
        var j = 1;
        var opacity;
        this.fadeIncrement = 1 / this.numCircles;

        for (i; i < this.numCircles; i++) {
          var circleObject = this.circleObjects[i];
          opacity = this.fadeIncrement * j++;

          this._setOpacity(circleObject.element, opacity);
        }
      };

      Spinner.prototype._fade = function (circleObject) {
        var opacity = this._getOpacity(circleObject.element) - this.fadeIncrement;

        if (opacity <= 0) {
          opacity = 1;
        }

        this._setOpacity(circleObject.element, opacity);
      };

      Spinner.prototype._getOpacity = function (element) {
        return parseFloat(window.getComputedStyle(element).getPropertyValue("opacity"));
      };

      Spinner.prototype._setOpacity = function (element, opacity) {
        element.style.opacity = opacity.toString();
      };

      Spinner.prototype._createCircle = function () {
        var circle = document.createElement("div");
        circle.className = "ms-Spinner-circle";
        circle.style.width = circle.style.height = this.parentSize * this.offsetSize + "px";
        return circle;
      };

      Spinner.prototype._createCirclesAndArrange = function () {
        var angle = 0;
        var offset = this.parentSize * this.offsetSize;
        var step = 2 * Math.PI / this.numCircles;
        var i = this.numCircles;
        var circleObject;
        var radius = (this.parentSize - offset) * 0.5;

        while (i--) {
          var circle = this._createCircle();

          var x = Math.round(this.parentSize * 0.5 + radius * Math.cos(angle) - circle.clientWidth * 0.5) - offset * 0.5;
          var y = Math.round(this.parentSize * 0.5 + radius * Math.sin(angle) - circle.clientHeight * 0.5) - offset * 0.5;
          this.spinner.appendChild(circle);
          circle.style.left = x + "px";
          circle.style.top = y + "px";
          angle += step;
          circleObject = new CircleObject(circle, i);
          this.circleObjects.push(circleObject);
        }
      };

      return Spinner;
    }();

    var script$T = {
      loadStyles: loadThemedStyles.loadStyles,
      beforeMount: function beforeMount() {
        this.$fabric = {
          Spinner: Spinner$1
        };
      },
      mounted: function mounted() {
        var _this = this;

        // console.log("spin", this.$refs.spinner);
        var childs = this.$refs.spinner.querySelectorAll(":not([" + this.$options._scopeId + "])"); //IE vs. Array.From vs. querySelectorAll = no work >.<
        //Array.prototype.slice, does the trick instead 

        Array.prototype.slice.call(childs).map(function (c) {
          return c.setAttribute(_this.$options._scopeId, "");
        }); // Array.from(childs).map(c=>c.setAttribute(this.$options._scopeId, ""));
      },
      extends: Spinner
    };

    /* script */
    const __vue_script__$T = script$T;

    /* template */

      /* style */
      const __vue_inject_styles__$T = function (inject) {
        if (!inject) return
        inject("data-v-da2fe6b4_0", { source: ".ms-Spinner[data-v-da2fe6b4]{font-family:\"Segoe UI WestEuropean\",\"Segoe UI\",-apple-system,BlinkMacSystemFont,Roboto,\"Helvetica Neue\",sans-serif;-webkit-font-smoothing:antialiased;position:relative;height:20px}.ms-Spinner.ms-Spinner--large[data-v-da2fe6b4]{height:28px}.ms-Spinner.ms-Spinner--large .ms-Spinner-label[data-v-da2fe6b4]{left:34px;top:6px}.ms-Spinner-circle[data-v-da2fe6b4]{position:absolute;border-radius:100px;background-color:\"[theme:themePrimary, default: #0078d7]\";opacity:0}@media screen and (-ms-high-contrast:active){.ms-Spinner-circle[data-v-da2fe6b4]{background-color:\"[theme:white, default: #ffffff]\"}}@media screen and (-ms-high-contrast:black-on-white){.ms-Spinner-circle[data-v-da2fe6b4]{background-color:\"[theme:black, default: #000000]\"}}.ms-Spinner-label[data-v-da2fe6b4]{font-family:\"Segoe UI WestEuropean\",\"Segoe UI\",-apple-system,BlinkMacSystemFont,Roboto,\"Helvetica Neue\",sans-serif;-webkit-font-smoothing:antialiased;position:relative;font-size:12px;font-weight:400;color:\"[theme:themePrimary, default: #0078d7]\";left:28px;top:2px}", map: undefined, media: undefined });

      };
      /* scoped */
      const __vue_scope_id__$T = "data-v-da2fe6b4";
      /* module identifier */
      const __vue_module_identifier__$T = undefined;
      /* functional template */
      const __vue_is_functional_template__$T = undefined;
      /* style inject */
      const __vue_create_injector__$m = function(context){ 
                    return function(scopeId, data)
                    {
                        if(window['wizstyle-'+scopeId])
                            return;
                        if(__vue_script__$T.loadStyles)
                            __vue_script__$T.loadStyles(data.source);
                        window['wizstyle-'+scopeId]=true;
                    }
                };
      /* style inject SSR */
      
      /* style inject shadow dom */
      

      
      var uiSpinner = normalizeComponent(
        {},
        __vue_inject_styles__$T,
        __vue_script__$T,
        __vue_scope_id__$T,
        __vue_is_functional_template__$T,
        __vue_module_identifier__$T,
        false,
        __vue_create_injector__$m,
        undefined,
        undefined
      );

    var script$U = {
      name: 'ou-text-field',
      inheritAttrs: false,
      mixins: [type('multiline', 'underlined'), disabled],
      props: {
        value: [String, Number],
        label: String,
        placeholder: String,
        inputType: {
          type: String,
          default: 'text',
          validator: function validator(value) {
            return ['text', 'password', 'file', 'number'].indexOf(value) !== -1;
          }
        }
      },
      computed: {
        attrs: function attrs() {
          return this.$attrs;
        },
        textFieldClass: function textFieldClass() {
          var _ref;

          return _ref = {}, _defineProperty(_ref, "ms-TextField--".concat(this.type), !!this.type), _defineProperty(_ref, 'is-disabled', this.disabled), _ref;
        }
      },
      mounted: function mounted() {
        new this.$fabric.TextField(this.$refs.textField);
      },
      methods: {
        updateValue: function updateValue(event) {
          this.$emit('input', event.target.value);
        },
        blurEvent: function blurEvent(event) {
          this.$emit('blur', event.target.value);
        },
        changeEvent: function changeEvent(event) {
          this.$emit('change', event.target.value);
        }
      }
    };

    /* script */
    const __vue_script__$U = script$U;

    /* template */
    var __vue_render__$w = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{ref:"textField",staticClass:"ms-TextField",class:_vm.textFieldClass},[_c('label',{staticClass:"ms-Label"},[_vm._v(_vm._s(_vm.label))]),_vm._v(" "),(_vm.type == 'multiline')?_c('textarea',_vm._b({staticClass:"ms-TextField-field",attrs:{"placeholder":_vm.placeholder,"type":"text","disabled":_vm.disabled},domProps:{"value":_vm.value},on:{"input":_vm.updateValue,"change":_vm.changeEvent,"blur":_vm.blurEvent}},'textarea',_vm.attrs,false)):_c('input',_vm._b({staticClass:"ms-TextField-field",attrs:{"placeholder":_vm.placeholder,"type":_vm.inputType,"disabled":_vm.disabled},domProps:{"value":_vm.value},on:{"input":_vm.updateValue,"change":_vm.changeEvent,"blur":_vm.blurEvent}},'input',_vm.attrs,false))])};
    var __vue_staticRenderFns__$w = [];

      /* style */
      const __vue_inject_styles__$U = undefined;
      /* scoped */
      const __vue_scope_id__$U = undefined;
      /* module identifier */
      const __vue_module_identifier__$U = undefined;
      /* functional template */
      const __vue_is_functional_template__$U = false;
      /* style inject */
      
      /* style inject SSR */
      
      /* style inject shadow dom */
      

      
      var textField = normalizeComponent(
        { render: __vue_render__$w, staticRenderFns: __vue_staticRenderFns__$w },
        __vue_inject_styles__$U,
        __vue_script__$U,
        __vue_scope_id__$U,
        __vue_is_functional_template__$U,
        __vue_module_identifier__$U,
        false,
        undefined,
        undefined,
        undefined
      );

    var TextFieldConsts;

    (function (TextFieldConsts) {
      var Type;

      (function (Type) {
        Type[Type["Placeholder"] = 0] = "Placeholder";
        Type[Type["Underlined"] = 1] = "Underlined";
      })(Type = TextFieldConsts.Type || (TextFieldConsts.Type = {}));
    })(TextFieldConsts || (TextFieldConsts = {}));

    var TextField = function () {
      function TextField(container) {
        this._container = container;
        this._type = [];
        this._textField = this._container.querySelector(".ms-TextField-field");
        this._textFieldLabel = this._container.querySelector(".ms-Label");

        this._setTextFieldType();

        this._addListeners();
      }

      TextField.prototype._setTextFieldType = function () {
        if (this._container.classList.contains("ms-TextField--placeholder")) {
          this._type.push(TextFieldConsts.Type.Placeholder);
        }

        if (this._container.classList.contains("ms-TextField--underlined")) {
          this._type.push(TextFieldConsts.Type.Underlined);
        }
      };

      TextField.prototype._addListeners = function () {
        var _this = this;

        this._textFieldLabel.addEventListener("click", function (event) {
          _this._textField.focus();
        });

        if (this._type.indexOf(TextFieldConsts.Type.Placeholder) >= 0) {
          this._textField.addEventListener("focus", function (event) {
            _this._textFieldLabel.style.display = "none";
          });

          this._textField.addEventListener("blur", function (event) {
            if (_this._textField.value.length === 0) {
              _this._textFieldLabel.style.display = "block";
            }
          });
        }

        if (this._type.indexOf(TextFieldConsts.Type.Underlined) >= 0) {
          this._textField.addEventListener("focus", function (event) {
            _this._container.classList.add("is-active");
          });

          this._textField.addEventListener("blur", function (event) {
            _this._container.classList.remove("is-active");
          });
        }
      };

      return TextField;
    }();

    var script$V = {
      loadStyles: loadThemedStyles.loadStyles,
      beforeMount: function beforeMount() {
        this.$fabric = {
          TextField: TextField
        };
      },
      extends: textField
    };

    /* script */
    const __vue_script__$V = script$V;

    /* template */

      /* style */
      const __vue_inject_styles__$V = function (inject) {
        if (!inject) return
        inject("data-v-b66577ac_0", { source: ".ms-Label[data-v-b66577ac]{font-family:\"Segoe UI WestEuropean\",\"Segoe UI\",-apple-system,BlinkMacSystemFont,Roboto,\"Helvetica Neue\",sans-serif;-webkit-font-smoothing:antialiased;box-sizing:border-box;margin:0;padding:0;-webkit-box-shadow:none;-moz-box-shadow:none;box-shadow:none;color:\"[theme:neutralPrimary, default: #333333]\";font-size:12px;font-weight:400;box-sizing:border-box;display:block;padding:5px 0}.ms-Label.is-required[data-v-b66577ac]::after{content:\" *\";color:\"[theme:error, default: #a80000]\"}.ms-Label.is-disabled[data-v-b66577ac]{color:\"[theme:neutralTertiary, default: #a6a6a6]\"}.ms-TextField[data-v-b66577ac]{font-family:\"Segoe UI WestEuropean\",\"Segoe UI\",-apple-system,BlinkMacSystemFont,Roboto,\"Helvetica Neue\",sans-serif;-webkit-font-smoothing:antialiased;box-sizing:border-box;margin:0;padding:0;-webkit-box-shadow:none;-moz-box-shadow:none;box-shadow:none;color:\"[theme:neutralPrimary, default: #333333]\";font-size:14px;font-weight:400;margin-bottom:8px}.ms-TextField .ms-Label[data-v-b66577ac]{font-size:14px;font-weight:600}.ms-TextField.is-disabled .ms-TextField-field[data-v-b66577ac]{background-color:\"[theme:neutralLighter, default: #f4f4f4]\";border-color:\"[theme:neutralLighter, default: #f4f4f4]\";pointer-events:none;cursor:default}.ms-TextField.is-disabled[data-v-b66577ac]::-webkit-input-placeholder{color:\"[theme:neutralTertiary, default: #a6a6a6]\"}.ms-TextField.is-disabled[data-v-b66577ac]::-moz-placeholder{color:\"[theme:neutralTertiary, default: #a6a6a6]\"}.ms-TextField.is-disabled[data-v-b66577ac]:-moz-placeholder{color:\"[theme:neutralTertiary, default: #a6a6a6]\"}.ms-TextField.is-disabled[data-v-b66577ac]:-ms-input-placeholder{color:\"[theme:neutralTertiary, default: #a6a6a6]\"}.ms-TextField.is-required .ms-Label[data-v-b66577ac]::after{content:\" *\";color:\"[theme:error, default: #a80000]\"}.ms-TextField.is-required[data-v-b66577ac]::-webkit-input-placeholder::after{content:\" *\";color:\"[theme:error, default: #a80000]\"}.ms-TextField.is-required[data-v-b66577ac]::-moz-placeholder::after{content:\" *\";color:\"[theme:error, default: #a80000]\"}.ms-TextField.is-required[data-v-b66577ac]:-moz-placeholder::after{content:\" *\";color:\"[theme:error, default: #a80000]\"}.ms-TextField.is-required[data-v-b66577ac]:-ms-input-placeholder::after{content:\" *\";color:\"[theme:error, default: #a80000]\"}.ms-TextField.is-active[data-v-b66577ac]{border-color:\"[theme:themePrimary, default: #0078d7]\"}.ms-TextField-field[data-v-b66577ac]{box-sizing:border-box;margin:0;padding:0;-webkit-box-shadow:none;-moz-box-shadow:none;box-shadow:none;border:1px solid \"[theme:neutralTertiaryAlt, default: #c8c8c8]\";border-radius:0;font-weight:300;font-size:14px;color:\"[theme:neutralPrimary, default: #333333]\";height:32px;padding:6px 12px 7px;width:100%;min-width:180px;outline:0;text-overflow:ellipsis}.ms-TextField-field[data-v-b66577ac]:hover{border-color:\"[theme:neutralSecondaryAlt, default: #767676]\"}.ms-TextField-field[data-v-b66577ac]:focus{border-color:\"[theme:themePrimary, default: #0078d7]\"}@media screen and (-ms-high-contrast:active){.ms-TextField-field[data-v-b66577ac]:focus,.ms-TextField-field[data-v-b66577ac]:hover{border-color:#1aebff}}@media screen and (-ms-high-contrast:black-on-white){.ms-TextField-field[data-v-b66577ac]:focus,.ms-TextField-field[data-v-b66577ac]:hover{border-color:#37006e}}.ms-TextField-field[disabled][data-v-b66577ac]{background-color:\"[theme:neutralLighter, default: #f4f4f4]\";border-color:\"[theme:neutralLighter, default: #f4f4f4]\";pointer-events:none;cursor:default}.ms-TextField-field[data-v-b66577ac]::-webkit-input-placeholder{color:\"[theme:neutralSecondary, default: #666666]\"}.ms-TextField-field[data-v-b66577ac]::-moz-placeholder{color:\"[theme:neutralSecondary, default: #666666]\"}.ms-TextField-field[data-v-b66577ac]:-moz-placeholder{color:\"[theme:neutralSecondary, default: #666666]\"}.ms-TextField-field[data-v-b66577ac]:-ms-input-placeholder{color:\"[theme:neutralSecondary, default: #666666]\"}.ms-TextField-description[data-v-b66577ac]{color:\"[theme:neutralSecondaryAlt, default: #767676]\";font-size:11px}.ms-TextField.ms-TextField--placeholder[data-v-b66577ac]{position:relative;background-color:\"[theme:white, default: #ffffff]\"}.ms-TextField.ms-TextField--placeholder .ms-TextField-field[data-v-b66577ac]{position:relative;background-color:transparent;z-index:5}.ms-TextField.ms-TextField--placeholder .ms-Label[data-v-b66577ac]{position:absolute;font-weight:300;font-size:14px;color:\"[theme:neutralSecondary, default: #666666]\";padding:6px 12px 7px;pointer-events:none;z-index:0}.ms-TextField.ms-TextField--placeholder.is-disabled[data-v-b66577ac]{color:\"[theme:neutralTertiary, default: #a6a6a6]\"}.ms-TextField.ms-TextField--placeholder.is-disabled .ms-Label[data-v-b66577ac]{color:\"[theme:neutralTertiary, default: #a6a6a6]\"}.ms-TextField.ms-TextField--underlined[data-v-b66577ac]{border-bottom:1px solid \"[theme:neutralTertiaryAlt, default: #c8c8c8]\";display:table;width:100%;min-width:180px}.ms-TextField.ms-TextField--underlined[data-v-b66577ac]:hover{border-color:\"[theme:neutralSecondaryAlt, default: #767676]\"}@media screen and (-ms-high-contrast:active){.ms-TextField.ms-TextField--underlined[data-v-b66577ac]:hover{border-color:#1aebff}}@media screen and (-ms-high-contrast:black-on-white){.ms-TextField.ms-TextField--underlined[data-v-b66577ac]:hover{border-color:#37006e}}.ms-TextField.ms-TextField--underlined[data-v-b66577ac]:active,.ms-TextField.ms-TextField--underlined[data-v-b66577ac]:focus{border-color:\"[theme:themePrimary, default: #0078d7]\"}.ms-TextField.ms-TextField--underlined .ms-Label[data-v-b66577ac]{font-size:14px;margin-right:8px;display:table-cell;vertical-align:top;padding-left:12px;padding-top:9px;height:32px;width:1%;white-space:nowrap}.ms-TextField.ms-TextField--underlined .ms-TextField-field[data-v-b66577ac]{border:0;float:left;display:table-cell;text-align:left;padding-top:8px;padding-bottom:3px}.ms-TextField.ms-TextField--underlined .ms-TextField-field[data-v-b66577ac]:active,.ms-TextField.ms-TextField--underlined .ms-TextField-field[data-v-b66577ac]:focus,.ms-TextField.ms-TextField--underlined .ms-TextField-field[data-v-b66577ac]:hover{outline:0}.ms-TextField.ms-TextField--underlined.is-disabled[data-v-b66577ac]{border-bottom-color:\"[theme:neutralLight, default: #eaeaea]\"}.ms-TextField.ms-TextField--underlined.is-disabled .ms-Label[data-v-b66577ac]{color:\"[theme:neutralTertiary, default: #a6a6a6]\"}.ms-TextField.ms-TextField--underlined.is-disabled .ms-TextField-field[data-v-b66577ac]{background-color:transparent;color:\"[theme:neutralTertiary, default: #a6a6a6]\"}.ms-TextField.ms-TextField--underlined.is-active[data-v-b66577ac]{border-color:\"[theme:themePrimary, default: #0078d7]\"}@media screen and (-ms-high-contrast:active){.ms-TextField.ms-TextField--underlined.is-active[data-v-b66577ac]{border-color:#1aebff}}@media screen and (-ms-high-contrast:black-on-white){.ms-TextField.ms-TextField--underlined.is-active[data-v-b66577ac]{border-color:#37006e}}.ms-TextField.ms-TextField--multiline .ms-TextField-field[data-v-b66577ac]{font-family:\"Segoe UI WestEuropean\",\"Segoe UI\",-apple-system,BlinkMacSystemFont,Roboto,\"Helvetica Neue\",sans-serif;-webkit-font-smoothing:antialiased;color:\"[theme:neutralSecondary, default: #666666]\";font-family:\"Segoe UI WestEuropean\",\"Segoe UI\",-apple-system,BlinkMacSystemFont,Roboto,\"Helvetica Neue\",sans-serif;font-size:14px;font-weight:400;line-height:17px;min-height:60px;min-width:260px;padding-top:6px;overflow:auto}", map: undefined, media: undefined });

      };
      /* scoped */
      const __vue_scope_id__$V = "data-v-b66577ac";
      /* module identifier */
      const __vue_module_identifier__$V = undefined;
      /* functional template */
      const __vue_is_functional_template__$V = undefined;
      /* style inject */
      const __vue_create_injector__$n = function(context){ 
                    return function(scopeId, data)
                    {
                        if(window['wizstyle-'+scopeId])
                            return;
                        if(__vue_script__$V.loadStyles)
                            __vue_script__$V.loadStyles(data.source);
                        window['wizstyle-'+scopeId]=true;
                    }
                };
      /* style inject SSR */
      
      /* style inject shadow dom */
      

      
      var uiTextfield = normalizeComponent(
        {},
        __vue_inject_styles__$V,
        __vue_script__$V,
        __vue_scope_id__$V,
        __vue_is_functional_template__$V,
        __vue_module_identifier__$V,
        false,
        __vue_create_injector__$n,
        undefined,
        undefined
      );

    var script$W = {
      name: 'ou-toggle',
      mixins: [type('textLeft'), disabled],
      props: {
        value: Boolean,
        onLabel: String,
        offLabel: String,
        description: String
      },
      computed: {
        toggleClass: function toggleClass() {
          var _ref;

          return _ref = {}, _defineProperty(_ref, "ms-Toggle--".concat(this.type), !!this.type), _defineProperty(_ref, 'is-disabled', this.disabled), _ref;
        }
      },
      mounted: function mounted() {
        new this.$fabric.Toggle(this.$refs.toggle);
      },
      methods: {
        toggle: function toggle() {
          if (!this.disabled) {
            this.$emit('input', !this.value);
          }
        }
      }
    };

    /* script */
    const __vue_script__$W = script$W;

    /* template */
    var __vue_render__$x = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{ref:"toggle",staticClass:"ms-Toggle",class:_vm.toggleClass},[(_vm.description)?_c('span',{staticClass:"ms-Toggle-description"},[_vm._v("\n    "+_vm._s(_vm.description)+"\n  ")]):_vm._e(),_vm._v(" "),_c('input',{staticClass:"ms-Toggle-input",attrs:{"type":"checkbox"}}),_vm._v(" "),_c('span',{staticClass:"ms-Toggle-trigger",on:{"click":_vm.toggle}},[_c('label',{ref:"toggleLabel",staticClass:"ms-Toggle-field",class:{ 'is-selected': _vm.value },attrs:{"tabindex":"0"}},[_c('span',{staticClass:"ms-Label ms-Label--off"},[_vm._v(_vm._s(_vm.offLabel))]),_vm._v(" "),_c('span',{staticClass:"ms-Label ms-Label--on"},[_vm._v(_vm._s(_vm.onLabel))])])])])};
    var __vue_staticRenderFns__$x = [];

      /* style */
      const __vue_inject_styles__$W = undefined;
      /* scoped */
      const __vue_scope_id__$W = undefined;
      /* module identifier */
      const __vue_module_identifier__$W = undefined;
      /* functional template */
      const __vue_is_functional_template__$W = false;
      /* style inject */
      
      /* style inject SSR */
      
      /* style inject shadow dom */
      

      
      var toggle = normalizeComponent(
        { render: __vue_render__$x, staticRenderFns: __vue_staticRenderFns__$x },
        __vue_inject_styles__$W,
        __vue_script__$W,
        __vue_scope_id__$W,
        __vue_is_functional_template__$W,
        __vue_module_identifier__$W,
        false,
        undefined,
        undefined,
        undefined
      );

    var Toggle = function () {
      function Toggle(container) {
        this._container = container;
        this._toggleField = this._container.querySelector(".ms-Toggle-field");

        this._addListeners();
      }

      Toggle.prototype.removeListeners = function () {
        this._toggleField.removeEventListener("click", this._toggleHandler.bind(this));
      };

      Toggle.prototype._addListeners = function () {
        var _this = this;

        this._toggleField.addEventListener("click", this._toggleHandler.bind(this), false);

        this._toggleField.addEventListener("keyup", function (e) {
          return e.keyCode === 32 ? _this._toggleHandler() : null;
        }, false);
      };

      Toggle.prototype._toggleHandler = function () {
        this._toggleField.classList.toggle("is-selected");
      };

      return Toggle;
    }();

    var script$X = {
      loadStyles: loadThemedStyles.loadStyles,
      beforeMount: function beforeMount() {
        this.$fabric = {
          Toggle: Toggle
        };
      },
      extends: toggle
    };

    /* script */
    const __vue_script__$X = script$X;

    /* template */

      /* style */
      const __vue_inject_styles__$X = function (inject) {
        if (!inject) return
        inject("data-v-29e08c9d_0", { source: ".ms-Label[data-v-29e08c9d]{font-family:\"Segoe UI WestEuropean\",\"Segoe UI\",-apple-system,BlinkMacSystemFont,Roboto,\"Helvetica Neue\",sans-serif;-webkit-font-smoothing:antialiased;box-sizing:border-box;margin:0;padding:0;-webkit-box-shadow:none;-moz-box-shadow:none;box-shadow:none;color:\"[theme:neutralPrimary, default: #333333]\";font-size:12px;font-weight:400;box-sizing:border-box;display:block;padding:5px 0}.ms-Label.is-required[data-v-29e08c9d]::after{content:\" *\";color:\"[theme:error, default: #a80000]\"}.ms-Label.is-disabled[data-v-29e08c9d]{color:\"[theme:neutralTertiary, default: #a6a6a6]\"}.ms-Toggle[data-v-29e08c9d]{font-family:\"Segoe UI WestEuropean\",\"Segoe UI\",-apple-system,BlinkMacSystemFont,Roboto,\"Helvetica Neue\",sans-serif;-webkit-font-smoothing:antialiased;font-family:\"Segoe UI WestEuropean\",\"Segoe UI\",-apple-system,BlinkMacSystemFont,Roboto,\"Helvetica Neue\",sans-serif;-webkit-font-smoothing:antialiased;font-size:14px;font-weight:400;box-sizing:border-box;margin:0;padding:0;-webkit-box-shadow:none;-moz-box-shadow:none;box-shadow:none;position:relative;display:block;margin-bottom:26px}.ms-Toggle .ms-Label[data-v-29e08c9d]{position:relative;top:-2px;padding:0 0 0 50px}.ms-Toggle .ms-Toggle-field[data-v-29e08c9d]::before{position:absolute;top:3px;width:10px;height:10px;border-radius:10px;content:\"\";left:4px;background-color:\"[theme:neutralSecondary, default: #666666]\";outline:1px solid transparent;transition-property:background,left;transition-duration:250ms;transition-timing-function:cubic-bezier(.4,0,.23,1)}@media screen and (-ms-high-contrast:active){.ms-Toggle .ms-Toggle-field[data-v-29e08c9d]::before{border:2.5px solid \"[theme:white, default: #ffffff]\";height:15px;outline:0}}@media screen and (-ms-high-contrast:black-on-white){.ms-Toggle .ms-Toggle-field[data-v-29e08c9d]::before{border-color:\"[theme:black, default: #000000]\"}}.ms-Toggle .ms-Toggle-field[data-v-29e08c9d]::before{right:auto}.ms-Toggle .ms-Toggle-field .ms-Label--off[data-v-29e08c9d]{display:block}.ms-Toggle .ms-Toggle-field .ms-Label--on[data-v-29e08c9d]{display:none}.ms-Toggle .ms-Toggle-field.is-selected[data-v-29e08c9d]{background-color:\"[theme:themePrimary, default: #0078d7]\";border-color:\"[theme:themePrimary, default: #0078d7]\"}.ms-Toggle .ms-Toggle-field.is-selected[data-v-29e08c9d]::before{position:absolute;top:3px;width:10px;height:10px;border-radius:10px;content:\"\";right:4px;background-color:\"[theme:neutralSecondary, default: #666666]\";outline:1px solid transparent;transition-property:background,left;transition-duration:250ms;transition-timing-function:cubic-bezier(.4,0,.23,1)}@media screen and (-ms-high-contrast:active){.ms-Toggle .ms-Toggle-field.is-selected[data-v-29e08c9d]::before{border:2.5px solid \"[theme:white, default: #ffffff]\";height:15px;outline:0}}@media screen and (-ms-high-contrast:black-on-white){.ms-Toggle .ms-Toggle-field.is-selected[data-v-29e08c9d]::before{border-color:\"[theme:black, default: #000000]\"}}.ms-Toggle .ms-Toggle-field.is-selected[data-v-29e08c9d]::before{background-color:\"[theme:white, default: #ffffff]\";left:28px}.ms-Toggle .ms-Toggle-field.is-selected .ms-Label--off[data-v-29e08c9d]{display:none}.ms-Toggle .ms-Toggle-field.is-selected .ms-Label--on[data-v-29e08c9d]{display:block}@media screen and (-ms-high-contrast:active){.ms-Toggle .ms-Toggle-field.is-selected[data-v-29e08c9d]{background-color:\"[theme:white, default: #ffffff]\"}}@media screen and (-ms-high-contrast:black-on-white){.ms-Toggle .ms-Toggle-field.is-selected[data-v-29e08c9d]{background-color:\"[theme:black, default: #000000]\"}}.ms-Toggle:focus+.ms-Toggle-field[data-v-29e08c9d],.ms-Toggle:hover+.ms-Toggle-field[data-v-29e08c9d]{border-color:\"[theme:neutralSecondary, default: #666666]\"}.ms-Toggle:focus+.ms-Toggle-field[data-v-29e08c9d]::before,.ms-Toggle:hover+.ms-Toggle-field[data-v-29e08c9d]::before{background-color:\"[theme:neutralPrimary, default: #333333]\"}.ms-Toggle:focus:checked+.ms-Toggle-field[data-v-29e08c9d],.ms-Toggle:hover:checked+.ms-Toggle-field[data-v-29e08c9d]{background-color:\"[theme:themeDarkAlt, default: #106ebe]\";border-color:\"[theme:themeDarkAlt, default: #106ebe]\"}.ms-Toggle:focus:checked+.ms-Toggle-field[data-v-29e08c9d]::before,.ms-Toggle:hover:checked+.ms-Toggle-field[data-v-29e08c9d]::before{background-color:\"[theme:white, default: #ffffff]\"}.ms-Toggle:active:checked+.ms-Toggle-field[data-v-29e08c9d]{background-color:\"[theme:themeDark, default: #005a9e]\";border-color:\"[theme:themeDark, default: #005a9e]\"}.ms-Toggle .ms-Toggle-field[data-v-29e08c9d]:focus,.ms-Toggle .ms-Toggle-field[data-v-29e08c9d]:hover{border-color:\"[theme:neutralPrimary, default: #333333]\"}.ms-Toggle .ms-Toggle-field.is-selected[data-v-29e08c9d]:focus,.ms-Toggle .ms-Toggle-field.is-selected[data-v-29e08c9d]:hover{background-color:\"[theme:themeDarkAlt, default: #106ebe]\";border-color:\"[theme:themeDarkAlt, default: #106ebe]\"}.ms-Toggle .ms-Toggle-field .ms-Label[data-v-29e08c9d]{color:\"[theme:black, default: #000000]\";user-select:none}.ms-Toggle .ms-Toggle-field:hover .ms-Label[data-v-29e08c9d]{color:\"[theme:black, default: #000000]\"}.ms-Toggle .ms-Toggle-field:active .ms-Label[data-v-29e08c9d]{color:\"[theme:neutralPrimary, default: #333333]\"}.ms-Toggle.is-disabled .ms-Label[data-v-29e08c9d]{color:\"[theme:neutralTertiary, default: #a6a6a6]\"}.ms-Toggle.is-disabled .ms-Toggle-field[data-v-29e08c9d]{background-color:\"[theme:white, default: #ffffff]\";border-color:\"[theme:neutralTertiaryAlt, default: #c8c8c8]\";pointer-events:none;cursor:default}.ms-Toggle.is-disabled .ms-Toggle-field[data-v-29e08c9d]::before{background-color:\"[theme:neutralTertiaryAlt, default: #c8c8c8]\"}@media screen and (-ms-high-contrast:active){.ms-Toggle.is-disabled .ms-Toggle-field[data-v-29e08c9d],.ms-Toggle.is-disabled .ms-Toggle-field[data-v-29e08c9d]::before{border-color:#0f0}}@media screen and (-ms-high-contrast:black-on-white){.ms-Toggle.is-disabled .ms-Toggle-field[data-v-29e08c9d],.ms-Toggle.is-disabled .ms-Toggle-field[data-v-29e08c9d]::before{border-color:#600000}}.ms-Toggle-description[data-v-29e08c9d]{position:relative;font-size:14px;vertical-align:top;display:block;margin-bottom:8px}.ms-Toggle-field[data-v-29e08c9d]{position:relative;display:inline-block;width:45px;height:20px;box-sizing:border-box;border:2px solid \"[theme:neutralTertiary, default: #a6a6a6]\";border-radius:20px;cursor:pointer;transition-property:background,left,border-color;transition-duration:250ms;transition-timing-function:cubic-bezier(.4,0,.23,1);outline:0}.ms-Toggle-field[data-v-29e08c9d]:focus,.ms-Toggle-field[data-v-29e08c9d]:hover{border-color:\"[theme:neutralSecondary, default: #666666]\"}.ms-Toggle-input[data-v-29e08c9d]{display:none}.ms-Toggle.ms-Toggle--textLeft[data-v-29e08c9d]{width:225px;margin-bottom:40px}.ms-Toggle.ms-Toggle--textLeft .ms-Toggle-description[data-v-29e08c9d]{display:inline-block;max-width:150px;top:-3px;margin-bottom:0}.ms-Toggle.ms-Toggle--textLeft .ms-Toggle-field[data-v-29e08c9d]{float:right}", map: undefined, media: undefined });

      };
      /* scoped */
      const __vue_scope_id__$X = "data-v-29e08c9d";
      /* module identifier */
      const __vue_module_identifier__$X = undefined;
      /* functional template */
      const __vue_is_functional_template__$X = undefined;
      /* style inject */
      const __vue_create_injector__$o = function(context){ 
                    return function(scopeId, data)
                    {
                        if(window['wizstyle-'+scopeId])
                            return;
                        if(__vue_script__$X.loadStyles)
                            __vue_script__$X.loadStyles(data.source);
                        window['wizstyle-'+scopeId]=true;
                    }
                };
      /* style inject SSR */
      
      /* style inject shadow dom */
      

      
      var uiToggle = normalizeComponent(
        {},
        __vue_inject_styles__$X,
        __vue_script__$X,
        __vue_scope_id__$X,
        __vue_is_functional_template__$X,
        __vue_module_identifier__$X,
        false,
        __vue_create_injector__$o,
        undefined,
        undefined
      );

    var commonjsGlobal = typeof globalThis !== 'undefined' ? globalThis : typeof window !== 'undefined' ? window : typeof global !== 'undefined' ? global : typeof self !== 'undefined' ? self : {};

    function unwrapExports (x) {
    	return x && x.__esModule && Object.prototype.hasOwnProperty.call(x, 'default') ? x['default'] : x;
    }

    function createCommonjsModule(fn, module) {
    	return module = { exports: {} }, fn(module, module.exports), module.exports;
    }

    /*! *****************************************************************************
    Copyright (c) Microsoft Corporation. All rights reserved.
    Licensed under the Apache License, Version 2.0 (the "License"); you may not use
    this file except in compliance with the License. You may obtain a copy of the
    License at http://www.apache.org/licenses/LICENSE-2.0

    THIS CODE IS PROVIDED ON AN *AS IS* BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
    KIND, EITHER EXPRESS OR IMPLIED, INCLUDING WITHOUT LIMITATION ANY IMPLIED
    WARRANTIES OR CONDITIONS OF TITLE, FITNESS FOR A PARTICULAR PURPOSE,
    MERCHANTABLITY OR NON-INFRINGEMENT.

    See the Apache Version 2.0 License for specific language governing permissions
    and limitations under the License.
    ***************************************************************************** */
    /* global Reflect, Promise */

    var extendStatics = function(d, b) {
        extendStatics = Object.setPrototypeOf ||
            ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||
            function (d, b) { for (var p in b) if (b.hasOwnProperty(p)) d[p] = b[p]; };
        return extendStatics(d, b);
    };

    function __extends(d, b) {
        extendStatics(d, b);
        function __() { this.constructor = d; }
        d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());
    }

    var __assign = function() {
        __assign = Object.assign || function __assign(t) {
            for (var s, i = 1, n = arguments.length; i < n; i++) {
                s = arguments[i];
                for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p)) t[p] = s[p];
            }
            return t;
        };
        return __assign.apply(this, arguments);
    };

    function __rest(s, e) {
        var t = {};
        for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0)
            t[p] = s[p];
        if (s != null && typeof Object.getOwnPropertySymbols === "function")
            for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) if (e.indexOf(p[i]) < 0)
                t[p[i]] = s[p[i]];
        return t;
    }

    function __decorate(decorators, target, key, desc) {
        var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
        if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
        else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
        return c > 3 && r && Object.defineProperty(target, key, r), r;
    }

    function __param(paramIndex, decorator) {
        return function (target, key) { decorator(target, key, paramIndex); }
    }

    function __metadata(metadataKey, metadataValue) {
        if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(metadataKey, metadataValue);
    }

    function __awaiter(thisArg, _arguments, P, generator) {
        return new (P || (P = Promise))(function (resolve, reject) {
            function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
            function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
            function step(result) { result.done ? resolve(result.value) : new P(function (resolve) { resolve(result.value); }).then(fulfilled, rejected); }
            step((generator = generator.apply(thisArg, _arguments || [])).next());
        });
    }

    function __generator(thisArg, body) {
        var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g;
        return g = { next: verb(0), "throw": verb(1), "return": verb(2) }, typeof Symbol === "function" && (g[Symbol.iterator] = function() { return this; }), g;
        function verb(n) { return function (v) { return step([n, v]); }; }
        function step(op) {
            if (f) throw new TypeError("Generator is already executing.");
            while (_) try {
                if (f = 1, y && (t = op[0] & 2 ? y["return"] : op[0] ? y["throw"] || ((t = y["return"]) && t.call(y), 0) : y.next) && !(t = t.call(y, op[1])).done) return t;
                if (y = 0, t) op = [op[0] & 2, t.value];
                switch (op[0]) {
                    case 0: case 1: t = op; break;
                    case 4: _.label++; return { value: op[1], done: false };
                    case 5: _.label++; y = op[1]; op = [0]; continue;
                    case 7: op = _.ops.pop(); _.trys.pop(); continue;
                    default:
                        if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { _ = 0; continue; }
                        if (op[0] === 3 && (!t || (op[1] > t[0] && op[1] < t[3]))) { _.label = op[1]; break; }
                        if (op[0] === 6 && _.label < t[1]) { _.label = t[1]; t = op; break; }
                        if (t && _.label < t[2]) { _.label = t[2]; _.ops.push(op); break; }
                        if (t[2]) _.ops.pop();
                        _.trys.pop(); continue;
                }
                op = body.call(thisArg, _);
            } catch (e) { op = [6, e]; y = 0; } finally { f = t = 0; }
            if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true };
        }
    }

    function __exportStar(m, exports) {
        for (var p in m) if (!exports.hasOwnProperty(p)) exports[p] = m[p];
    }

    function __values(o) {
        var m = typeof Symbol === "function" && o[Symbol.iterator], i = 0;
        if (m) return m.call(o);
        return {
            next: function () {
                if (o && i >= o.length) o = void 0;
                return { value: o && o[i++], done: !o };
            }
        };
    }

    function __read(o, n) {
        var m = typeof Symbol === "function" && o[Symbol.iterator];
        if (!m) return o;
        var i = m.call(o), r, ar = [], e;
        try {
            while ((n === void 0 || n-- > 0) && !(r = i.next()).done) ar.push(r.value);
        }
        catch (error) { e = { error: error }; }
        finally {
            try {
                if (r && !r.done && (m = i["return"])) m.call(i);
            }
            finally { if (e) throw e.error; }
        }
        return ar;
    }

    function __spread() {
        for (var ar = [], i = 0; i < arguments.length; i++)
            ar = ar.concat(__read(arguments[i]));
        return ar;
    }

    function __await(v) {
        return this instanceof __await ? (this.v = v, this) : new __await(v);
    }

    function __asyncGenerator(thisArg, _arguments, generator) {
        if (!Symbol.asyncIterator) throw new TypeError("Symbol.asyncIterator is not defined.");
        var g = generator.apply(thisArg, _arguments || []), i, q = [];
        return i = {}, verb("next"), verb("throw"), verb("return"), i[Symbol.asyncIterator] = function () { return this; }, i;
        function verb(n) { if (g[n]) i[n] = function (v) { return new Promise(function (a, b) { q.push([n, v, a, b]) > 1 || resume(n, v); }); }; }
        function resume(n, v) { try { step(g[n](v)); } catch (e) { settle(q[0][3], e); } }
        function step(r) { r.value instanceof __await ? Promise.resolve(r.value.v).then(fulfill, reject) : settle(q[0][2], r); }
        function fulfill(value) { resume("next", value); }
        function reject(value) { resume("throw", value); }
        function settle(f, v) { if (f(v), q.shift(), q.length) resume(q[0][0], q[0][1]); }
    }

    function __asyncDelegator(o) {
        var i, p;
        return i = {}, verb("next"), verb("throw", function (e) { throw e; }), verb("return"), i[Symbol.iterator] = function () { return this; }, i;
        function verb(n, f) { i[n] = o[n] ? function (v) { return (p = !p) ? { value: __await(o[n](v)), done: n === "return" } : f ? f(v) : v; } : f; }
    }

    function __asyncValues(o) {
        if (!Symbol.asyncIterator) throw new TypeError("Symbol.asyncIterator is not defined.");
        var m = o[Symbol.asyncIterator], i;
        return m ? m.call(o) : (o = typeof __values === "function" ? __values(o) : o[Symbol.iterator](), i = {}, verb("next"), verb("throw"), verb("return"), i[Symbol.asyncIterator] = function () { return this; }, i);
        function verb(n) { i[n] = o[n] && function (v) { return new Promise(function (resolve, reject) { v = o[n](v), settle(resolve, reject, v.done, v.value); }); }; }
        function settle(resolve, reject, d, v) { Promise.resolve(v).then(function(v) { resolve({ value: v, done: d }); }, reject); }
    }

    function __makeTemplateObject(cooked, raw) {
        if (Object.defineProperty) { Object.defineProperty(cooked, "raw", { value: raw }); } else { cooked.raw = raw; }
        return cooked;
    }
    function __importStar(mod) {
        if (mod && mod.__esModule) return mod;
        var result = {};
        if (mod != null) for (var k in mod) if (Object.hasOwnProperty.call(mod, k)) result[k] = mod[k];
        result.default = mod;
        return result;
    }

    function __importDefault(mod) {
        return (mod && mod.__esModule) ? mod : { default: mod };
    }

    var tslib_es6 = /*#__PURE__*/Object.freeze({
        __proto__: null,
        __extends: __extends,
        get __assign () { return __assign; },
        __rest: __rest,
        __decorate: __decorate,
        __param: __param,
        __metadata: __metadata,
        __awaiter: __awaiter,
        __generator: __generator,
        __exportStar: __exportStar,
        __values: __values,
        __read: __read,
        __spread: __spread,
        __await: __await,
        __asyncGenerator: __asyncGenerator,
        __asyncDelegator: __asyncDelegator,
        __asyncValues: __asyncValues,
        __makeTemplateObject: __makeTemplateObject,
        __importStar: __importStar,
        __importDefault: __importDefault
    });

    var Stylesheet_1 = createCommonjsModule(function (module, exports) {
    Object.defineProperty(exports, "__esModule", { value: true });

    /**
     * Injection mode for the stylesheet.
     *
     * @public
     */
    var InjectionMode;
    (function (InjectionMode) {
        /**
         * Avoids style injection, use getRules() to read the styles.
         */
        InjectionMode[InjectionMode["none"] = 0] = "none";
        /**
         * Inserts rules using the insertRule api.
         */
        InjectionMode[InjectionMode["insertNode"] = 1] = "insertNode";
        /**
         * Appends rules using appendChild.
         */
        InjectionMode[InjectionMode["appendChild"] = 2] = "appendChild";
    })(InjectionMode = exports.InjectionMode || (exports.InjectionMode = {}));
    var STYLESHEET_SETTING = '__stylesheet__';
    var _stylesheet;
    /**
     * Represents the state of styles registered in the page. Abstracts
     * the surface for adding styles to the stylesheet, exposes helpers
     * for reading the styles registered in server rendered scenarios.
     *
     * @public
     */
    var Stylesheet = /** @class */ (function () {
        function Stylesheet(config) {
            this._rules = [];
            this._rulesToInsert = [];
            this._counter = 0;
            this._keyToClassName = {};
            // tslint:disable-next-line:no-any
            this._classNameToArgs = {};
            this._config = tslib_es6.__assign({ injectionMode: 1 /* insertNode */, defaultPrefix: 'css' }, config);
        }
        /**
         * Gets the singleton instance.
         */
        Stylesheet.getInstance = function () {
            // tslint:disable-next-line:no-any
            var win = typeof window !== 'undefined' ? window : {};
            _stylesheet = win[STYLESHEET_SETTING];
            if (!_stylesheet) {
                // tslint:disable-next-line:no-string-literal
                var fabricConfig = (win && win['FabricConfig']) || {};
                _stylesheet = win[STYLESHEET_SETTING] = new Stylesheet(fabricConfig.mergeStyles);
            }
            return _stylesheet;
        };
        /**
         * Configures the stylesheet.
         */
        Stylesheet.prototype.setConfig = function (config) {
            this._config = tslib_es6.__assign({}, this._config, config);
        };
        /**
         * Generates a unique classname.
         *
         * @param displayName - Optional value to use as a prefix.
         */
        Stylesheet.prototype.getClassName = function (displayName) {
            var prefix = displayName || this._config.defaultPrefix;
            return prefix + "-" + this._counter++;
        };
        /**
         * Used internally to cache information about a class which was
         * registered with the stylesheet.
         */
        Stylesheet.prototype.cacheClassName = function (className, key, args, rules) {
            this._keyToClassName[key] = className;
            this._classNameToArgs[className] = {
                args: args,
                rules: rules
            };
        };
        /**
         * Gets the appropriate classname given a key which was previously
         * registered using cacheClassName.
         */
        Stylesheet.prototype.classNameFromKey = function (key) {
            return this._keyToClassName[key];
        };
        /**
         * Gets the arguments associated with a given classname which was
         * previously registered using cacheClassName.
         */
        Stylesheet.prototype.argsFromClassName = function (className) {
            var entry = this._classNameToArgs[className];
            return (entry && entry.args);
        };
        /**
       * Gets the arguments associated with a given classname which was
       * previously registered using cacheClassName.
       */
        Stylesheet.prototype.insertedRulesFromClassName = function (className) {
            var entry = this._classNameToArgs[className];
            return (entry && entry.rules);
        };
        /**
         * Inserts a css rule into the stylesheet.
         */
        Stylesheet.prototype.insertRule = function (rule) {
            var injectionMode = this._config.injectionMode;
            var element = injectionMode !== 0 /* none */ ? this._getStyleElement() : undefined;
            if (element) {
                switch (this._config.injectionMode) {
                    case 1 /* insertNode */:
                        var sheet = element.sheet;
                        try {
                            sheet.insertRule(rule, sheet.cssRules.length);
                        }
                        catch (e) {
                            // The browser will throw exceptions on unsupported rules (such as a moz prefix in webkit.)
                            // We need to swallow the exceptions for this scenario, otherwise we'd need to filter
                            // which could be slower and bulkier.
                        }
                        break;
                    case 2 /* appendChild */:
                        element.appendChild(document.createTextNode(rule));
                        break;
                }
            }
            else {
                this._rules.push(rule);
            }
            if (this._config.onInsertRule) {
                this._config.onInsertRule(rule);
            }
        };
        /**
         * Gets all rules registered with the stylesheet; only valid when
         * using InsertionMode.none.
         */
        Stylesheet.prototype.getRules = function () {
            return (this._rules.join('') || '') + (this._rulesToInsert.join('') || '');
        };
        /**
         * Resets the internal state of the stylesheet. Only used in server
         * rendered scenarios where we're using InsertionMode.none.
         */
        Stylesheet.prototype.reset = function () {
            this._rules = [];
            this._rulesToInsert = [];
            this._counter = 0;
            this._classNameToArgs = {};
            this._keyToClassName = {};
        };
        // Forces the regeneration of incoming styles without totally resetting the stylesheet.
        Stylesheet.prototype.resetKeys = function () {
            this._keyToClassName = {};
        };
        Stylesheet.prototype._getStyleElement = function () {
            var _this = this;
            if (!this._styleElement && typeof document !== 'undefined') {
                this._styleElement = this._createStyleElement();
                // Reset the style element on the next frame.
                window.requestAnimationFrame(function () {
                    _this._styleElement = undefined;
                });
            }
            return this._styleElement;
        };
        Stylesheet.prototype._createStyleElement = function () {
            var styleElement = document.createElement('style');
            styleElement.setAttribute('data-merge-styles', 'true');
            styleElement.type = 'text/css';
            if (this._lastStyleElement && this._lastStyleElement.nextElementSibling) {
                document.head.insertBefore(styleElement, this._lastStyleElement.nextElementSibling);
            }
            else {
                document.head.appendChild(styleElement);
            }
            this._lastStyleElement = styleElement;
            return styleElement;
        };
        return Stylesheet;
    }());
    exports.Stylesheet = Stylesheet;

    });

    unwrapExports(Stylesheet_1);
    var Stylesheet_2 = Stylesheet_1.InjectionMode;
    var Stylesheet_3 = Stylesheet_1.Stylesheet;

    var kebabRules_1 = createCommonjsModule(function (module, exports) {
    Object.defineProperty(exports, "__esModule", { value: true });
    function kebabRules(rulePairs, index) {
        rulePairs[index] = rulePairs[index].replace(/([A-Z])/g, '-$1').toLowerCase();
    }
    exports.kebabRules = kebabRules;

    });

    unwrapExports(kebabRules_1);
    var kebabRules_2 = kebabRules_1.kebabRules;

    var getVendorSettings_1 = createCommonjsModule(function (module, exports) {
    Object.defineProperty(exports, "__esModule", { value: true });
    var _vendorSettings;
    function getVendorSettings() {
        if (!_vendorSettings) {
            var doc = typeof document !== 'undefined' ? document : undefined;
            var nav = typeof navigator !== 'undefined' ? navigator : undefined;
            var userAgent = nav ? nav.userAgent.toLowerCase() : undefined;
            if (!doc) {
                _vendorSettings = {
                    isWebkit: true,
                    isMoz: true,
                    isOpera: true,
                    isMs: true
                };
            }
            else {
                _vendorSettings = {
                    isWebkit: !!(doc && 'WebkitAppearance' in doc.documentElement.style),
                    isMoz: !!(userAgent && userAgent.indexOf('firefox') > -1),
                    isOpera: !!(userAgent && userAgent.indexOf('opera') > -1),
                    isMs: !!(nav && (/rv:11.0/i.test(nav.userAgent) || /Edge\/\d./i.test(navigator.userAgent)))
                };
            }
        }
        return _vendorSettings;
    }
    exports.getVendorSettings = getVendorSettings;
    /**
     * Sets the vendor settings for prefixing and vendor specific operations.
     */
    function setVendorSettings(vendorSettings) {
        _vendorSettings = vendorSettings;
    }
    exports.setVendorSettings = setVendorSettings;

    });

    unwrapExports(getVendorSettings_1);
    var getVendorSettings_2 = getVendorSettings_1.getVendorSettings;
    var getVendorSettings_3 = getVendorSettings_1.setVendorSettings;

    var prefixRules_1 = createCommonjsModule(function (module, exports) {
    Object.defineProperty(exports, "__esModule", { value: true });

    var autoPrefixNames = {
        'user-select': 1
    };
    function prefixRules(rulePairs, index) {
        var vendorSettings = getVendorSettings_1.getVendorSettings();
        var name = rulePairs[index];
        if (autoPrefixNames[name]) {
            var value = rulePairs[index + 1];
            if (autoPrefixNames[name]) {
                if (vendorSettings.isWebkit) {
                    rulePairs.push('-webkit-' + name, value);
                }
                if (vendorSettings.isMoz) {
                    rulePairs.push('-moz-' + name, value);
                }
                if (vendorSettings.isMs) {
                    rulePairs.push('-ms-' + name, value);
                }
                if (vendorSettings.isOpera) {
                    rulePairs.push('-o-' + name, value);
                }
            }
        }
    }
    exports.prefixRules = prefixRules;

    });

    unwrapExports(prefixRules_1);
    var prefixRules_2 = prefixRules_1.prefixRules;

    var provideUnits_1 = createCommonjsModule(function (module, exports) {
    Object.defineProperty(exports, "__esModule", { value: true });
    var NON_PIXEL_NUMBER_PROPS = [
        'column-count',
        'font-weight',
        'flex-basis',
        'flex',
        'flex-grow',
        'flex-shrink',
        'fill-opacity',
        'opacity',
        'order',
        'z-index',
        'zoom'
    ];
    function provideUnits(rulePairs, index) {
        var name = rulePairs[index];
        var value = rulePairs[index + 1];
        if (typeof value === 'number') {
            var unit = (NON_PIXEL_NUMBER_PROPS.indexOf(name) === -1) ? 'px' : '';
            rulePairs[index + 1] = "" + value + unit;
        }
    }
    exports.provideUnits = provideUnits;

    });

    unwrapExports(provideUnits_1);
    var provideUnits_2 = provideUnits_1.provideUnits;

    var rtlifyRules_1 = createCommonjsModule(function (module, exports) {
    Object.defineProperty(exports, "__esModule", { value: true });

    var LEFT = 'left';
    var RIGHT = 'right';
    var NO_FLIP = '@noflip';
    var NAME_REPLACEMENTS = (_a = {},
        _a[LEFT] = RIGHT,
        _a[RIGHT] = LEFT,
        _a);
    var VALUE_REPLACEMENTS = {
        'w-resize': 'e-resize',
        'sw-resize': 'se-resize',
        'nw-resize': 'ne-resize'
    };
    var _rtl = getRTL();
    /**
     * Sets the current RTL value.
     */
    function setRTL(isRTL) {
        if (_rtl !== isRTL) {
            Stylesheet_1.Stylesheet.getInstance().resetKeys();
            _rtl = isRTL;
        }
    }
    exports.setRTL = setRTL;
    /**
     * Gets the current RTL value.
     */
    function getRTL() {
        if (_rtl === undefined) {
            _rtl = (typeof document !== 'undefined' &&
                !!document.documentElement &&
                document.documentElement.getAttribute('dir') === 'rtl');
        }
        return _rtl;
    }
    exports.getRTL = getRTL;
    /**
     * RTLifies the rulePair in the array at the current index. This mutates the array for performance
     * reasons.
     */
    function rtlifyRules(rulePairs, index) {
        if (getRTL()) {
            var name_1 = rulePairs[index];
            if (!name_1) {
                return;
            }
            var value = rulePairs[index + 1];
            if (typeof value === 'string' && value.indexOf(NO_FLIP) >= 0) {
                rulePairs[index + 1] = value.replace(/\s*(?:\/\*\s*)?\@noflip\b(?:\s*\*\/)?\s*?/g, '');
            }
            else if (name_1.indexOf(LEFT) >= 0) {
                rulePairs[index] = name_1.replace(LEFT, RIGHT);
            }
            else if (name_1.indexOf(RIGHT) >= 0) {
                rulePairs[index] = name_1.replace(RIGHT, LEFT);
            }
            else if (String(value).indexOf(LEFT) >= 0) {
                rulePairs[index + 1] = value.replace(LEFT, RIGHT);
            }
            else if (String(value).indexOf(RIGHT) >= 0) {
                rulePairs[index + 1] = value.replace(RIGHT, LEFT);
            }
            else if (NAME_REPLACEMENTS[name_1]) {
                rulePairs[index] = NAME_REPLACEMENTS[name_1];
            }
            else if (VALUE_REPLACEMENTS[value]) {
                rulePairs[index + 1] = VALUE_REPLACEMENTS[value];
            }
            else {
                switch (name_1) {
                    case 'margin':
                    case 'padding':
                        rulePairs[index + 1] = flipQuad(value);
                        break;
                    case 'box-shadow':
                        rulePairs[index + 1] = negateNum(value, 0);
                        break;
                }
            }
        }
    }
    exports.rtlifyRules = rtlifyRules;
    /**
     * Given a string value in a space delimited format (e.g. "1 2 3 4"), negates a particular value.
     */
    function negateNum(value, partIndex) {
        var parts = value.split(' ');
        var numberVal = parseInt(parts[partIndex], 10);
        parts[0] = parts[0].replace(String(numberVal), String(numberVal * -1));
        return parts.join(' ');
    }
    /**
     * Given a string quad, flips the left and right values.
     */
    function flipQuad(value) {
        if (typeof value === 'string') {
            var parts = value.split(' ');
            if (parts.length === 4) {
                return parts[0] + " " + parts[3] + " " + parts[2] + " " + parts[1];
            }
        }
        return value;
    }
    var _a;

    });

    unwrapExports(rtlifyRules_1);
    var rtlifyRules_2 = rtlifyRules_1.setRTL;
    var rtlifyRules_3 = rtlifyRules_1.getRTL;
    var rtlifyRules_4 = rtlifyRules_1.rtlifyRules;

    var styleToClassName_1 = createCommonjsModule(function (module, exports) {
    Object.defineProperty(exports, "__esModule", { value: true });





    var DISPLAY_NAME = 'displayName';
    function getDisplayName(rules) {
        var rootStyle = rules && rules['&'];
        return rootStyle ? rootStyle.displayName : undefined;
    }
    function extractRules(args, rules, currentSelector) {
        if (rules === void 0) { rules = { __order: [] }; }
        if (currentSelector === void 0) { currentSelector = '&'; }
        var stylesheet = Stylesheet_1.Stylesheet.getInstance();
        var currentRules = rules[currentSelector];
        if (!currentRules) {
            currentRules = {};
            rules[currentSelector] = currentRules;
            rules.__order.push(currentSelector);
        }
        for (var _i = 0, args_1 = args; _i < args_1.length; _i++) {
            var arg = args_1[_i];
            // If the arg is a string, we need to look up the class map and merge.
            if (typeof arg === 'string') {
                var expandedRules = stylesheet.argsFromClassName(arg);
                if (expandedRules) {
                    extractRules(expandedRules, rules, currentSelector);
                }
                // Else if the arg is an array, we need to recurse in.
            }
            else if (Array.isArray(arg)) {
                extractRules(arg, rules, currentSelector);
            }
            else {
                // tslint:disable-next-line:no-any
                for (var prop in arg) {
                    if (prop === 'selectors') {
                        // tslint:disable-next-line:no-any
                        var selectors = arg.selectors;
                        for (var newSelector in selectors) {
                            if (selectors.hasOwnProperty(newSelector)) {
                                var selectorValue = selectors[newSelector];
                                if (newSelector.indexOf(':global(') === 0) {
                                    newSelector = newSelector.replace(/:global\(|\)$/g, '');
                                }
                                else if (newSelector.indexOf('@media') === 0) {
                                    newSelector = newSelector + '{' + currentSelector;
                                }
                                else if (newSelector.indexOf(':') === 0) {
                                    newSelector = currentSelector + newSelector;
                                }
                                else if (newSelector.indexOf('&') < 0) {
                                    newSelector = currentSelector + ' ' + newSelector;
                                }
                                extractRules([selectorValue], rules, newSelector);
                            }
                        }
                    }
                    else {
                        // Else, add the rule to the currentSelector.
                        if (prop === 'margin' || prop === 'padding') {
                            // tslint:disable-next-line:no-any
                            expandQuads(currentRules, prop, arg[prop]);
                        }
                        else {
                            // tslint:disable-next-line:no-any
                            currentRules[prop] = arg[prop];
                        }
                    }
                }
            }
        }
        return rules;
    }
    function expandQuads(currentRules, name, value) {
        var parts = (typeof value === 'string') ? value.split(' ') : [value];
        currentRules[name + 'Top'] = parts[0];
        currentRules[name + 'Right'] = parts[1] || parts[0];
        currentRules[name + 'Bottom'] = parts[2] || parts[0];
        currentRules[name + 'Left'] = parts[3] || parts[1] || parts[0];
    }
    function getKeyForRules(rules) {
        var serialized = [];
        var hasProps = false;
        for (var _i = 0, _a = rules.__order; _i < _a.length; _i++) {
            var selector = _a[_i];
            serialized.push(selector);
            var rulesForSelector = rules[selector];
            for (var propName in rulesForSelector) {
                if (rulesForSelector.hasOwnProperty(propName) && rulesForSelector[propName] !== undefined) {
                    hasProps = true;
                    serialized.push(propName, rulesForSelector[propName]);
                }
            }
        }
        return hasProps ? serialized.join('') : undefined;
    }
    function serializeRuleEntries(ruleEntries) {
        if (!ruleEntries) {
            return '';
        }
        var allEntries = [];
        for (var entry in ruleEntries) {
            if (ruleEntries.hasOwnProperty(entry) && entry !== DISPLAY_NAME && ruleEntries[entry] !== undefined) {
                allEntries.push(entry, ruleEntries[entry]);
            }
        }
        // Apply transforms.
        for (var i = 0; i < allEntries.length; i += 2) {
            kebabRules_1.kebabRules(allEntries, i);
            provideUnits_1.provideUnits(allEntries, i);
            rtlifyRules_1.rtlifyRules(allEntries, i);
            prefixRules_1.prefixRules(allEntries, i);
        }
        // Apply punctuation.
        for (var i = 1; i < allEntries.length; i += 4) {
            allEntries.splice(i, 1, ':', allEntries[i], ';');
        }
        return allEntries.join('');
    }
    exports.serializeRuleEntries = serializeRuleEntries;
    function styleToRegistration() {
        var args = [];
        for (var _i = 0; _i < arguments.length; _i++) {
            args[_i] = arguments[_i];
        }
        var rules = extractRules(args);
        var key = getKeyForRules(rules);
        if (key) {
            var stylesheet = Stylesheet_1.Stylesheet.getInstance();
            var registration = {
                className: stylesheet.classNameFromKey(key),
                key: key,
                args: args
            };
            if (!registration.className) {
                registration.className = stylesheet.getClassName(getDisplayName(rules));
                var rulesToInsert = [];
                for (var _a = 0, _b = rules.__order; _a < _b.length; _a++) {
                    var selector = _b[_a];
                    rulesToInsert.push(selector, serializeRuleEntries(rules[selector]));
                }
                registration.rulesToInsert = rulesToInsert;
            }
            return registration;
        }
    }
    exports.styleToRegistration = styleToRegistration;
    function applyRegistration(registration, classMap) {
        var stylesheet = Stylesheet_1.Stylesheet.getInstance();
        var className = registration.className, key = registration.key, args = registration.args, rulesToInsert = registration.rulesToInsert;
        if (rulesToInsert) {
            // rulesToInsert is an ordered array of selector/rule pairs.
            for (var i = 0; i < rulesToInsert.length; i += 2) {
                var rules = rulesToInsert[i + 1];
                if (rules) {
                    var selector = rulesToInsert[i];
                    // Fix selector using map.
                    selector = selector.replace(/(&)|\$([\w-]+)\b/g, function (match, amp, cn) {
                        if (amp) {
                            return '.' + registration.className;
                        }
                        else if (cn) {
                            return '.' + ((classMap && classMap[cn]) || cn);
                        }
                        return '';
                    });
                    // Insert. Note if a media query, we must close the query with a final bracket.
                    var processedRule = selector + "{" + rules + "}" + ((selector.indexOf('@media') === 0) ? '}' : '');
                    stylesheet.insertRule(processedRule);
                }
            }
            stylesheet.cacheClassName(className, key, args, rulesToInsert);
        }
    }
    exports.applyRegistration = applyRegistration;
    function styleToClassName() {
        var args = [];
        for (var _i = 0; _i < arguments.length; _i++) {
            args[_i] = arguments[_i];
        }
        var registration = styleToRegistration.apply(void 0, args);
        if (registration) {
            applyRegistration(registration);
            return registration.className;
        }
        return '';
    }
    exports.styleToClassName = styleToClassName;

    });

    unwrapExports(styleToClassName_1);
    var styleToClassName_2 = styleToClassName_1.serializeRuleEntries;
    var styleToClassName_3 = styleToClassName_1.styleToRegistration;
    var styleToClassName_4 = styleToClassName_1.applyRegistration;
    var styleToClassName_5 = styleToClassName_1.styleToClassName;

    var extractStyleParts_1 = createCommonjsModule(function (module, exports) {
    Object.defineProperty(exports, "__esModule", { value: true });

    /**
     * Separates the classes and style objects. Any classes that are pre-registered
     * args are auto expanded into objects.
     */
    function extractStyleParts() {
        var args = [];
        for (var _i = 0; _i < arguments.length; _i++) {
            args[_i] = arguments[_i];
        }
        var classes = [];
        var objects = [];
        var stylesheet = Stylesheet_1.Stylesheet.getInstance();
        function _processArgs(argsList) {
            for (var _i = 0, argsList_1 = argsList; _i < argsList_1.length; _i++) {
                var arg = argsList_1[_i];
                if (arg) {
                    if (typeof arg === 'string') {
                        if (arg.indexOf(' ') >= 0) {
                            _processArgs(arg.split(' '));
                        }
                        else {
                            var translatedArgs = stylesheet.argsFromClassName(arg);
                            if (translatedArgs) {
                                _processArgs(translatedArgs);
                            }
                            else {
                                // Avoid adding the same class twice.
                                if (classes.indexOf(arg) === -1) {
                                    classes.push(arg);
                                }
                            }
                        }
                    }
                    else if (Array.isArray(arg)) {
                        _processArgs(arg);
                    }
                    else if (typeof arg === 'object') {
                        objects.push(arg);
                    }
                }
            }
        }
        _processArgs(args);
        return {
            classes: classes,
            objects: objects
        };
    }
    exports.extractStyleParts = extractStyleParts;

    });

    unwrapExports(extractStyleParts_1);
    var extractStyleParts_2 = extractStyleParts_1.extractStyleParts;

    var mergeStyles_1 = createCommonjsModule(function (module, exports) {
    Object.defineProperty(exports, "__esModule", { value: true });


    /**
     * Concatination helper, which can merge class names together. Skips over falsey values.
     *
     * @public
     */
    function mergeStyles() {
        var args = [];
        for (var _i = 0; _i < arguments.length; _i++) {
            args[_i] = arguments[_i];
        }
        var _a = extractStyleParts_1.extractStyleParts(args), classes = _a.classes, objects = _a.objects;
        if (objects.length) {
            classes.push(styleToClassName_1.styleToClassName(objects));
        }
        return classes.join(' ');
    }
    exports.mergeStyles = mergeStyles;

    });

    unwrapExports(mergeStyles_1);
    var mergeStyles_2 = mergeStyles_1.mergeStyles;

    var concatStyleSets_1 = createCommonjsModule(function (module, exports) {
    Object.defineProperty(exports, "__esModule", { value: true });
    /**
     * Combine a set of styles together (but does not register css classes.)
     * @public
     */
    function concatStyleSets() {
        var args = [];
        for (var _i = 0; _i < arguments.length; _i++) {
            args[_i] = arguments[_i];
        }
        // tslint:disable-next-line:no-any
        var mergedSet = {};
        for (var _a = 0, args_1 = args; _a < args_1.length; _a++) {
            var currentSet = args_1[_a];
            if (currentSet) {
                for (var prop in currentSet) {
                    if (currentSet.hasOwnProperty(prop)) {
                        var mergedValue = mergedSet[prop];
                        var currentValue = currentSet[prop];
                        if (mergedValue === undefined) {
                            mergedSet[prop] = currentValue;
                        }
                        else {
                            mergedSet[prop] = (Array.isArray(mergedValue) ? mergedValue : [mergedValue]).concat((Array.isArray(currentValue) ? currentValue : [currentValue]));
                        }
                    }
                }
            }
        }
        return mergedSet;
    }
    exports.concatStyleSets = concatStyleSets;

    });

    unwrapExports(concatStyleSets_1);
    var concatStyleSets_2 = concatStyleSets_1.concatStyleSets;

    var mergeStyleSets_1 = createCommonjsModule(function (module, exports) {
    Object.defineProperty(exports, "__esModule", { value: true });



    /**
     * Allows you to pass in 1 or more sets of areas which will return a merged
     * set of classes.
     *
     * @public
     */
    function mergeStyleSets() {
        var cssSets = [];
        for (var _i = 0; _i < arguments.length; _i++) {
            cssSets[_i] = arguments[_i];
        }
        // tslint:disable-next-line:no-any
        var classNameSet = {};
        var classMap = {};
        var cssSet = cssSets[0];
        if (cssSet) {
            if (cssSets.length > 1) {
                cssSet = concatStyleSets_1.concatStyleSets.apply(void 0, cssSets);
            }
            var registrations = [];
            for (var prop in cssSet) {
                if (cssSet.hasOwnProperty(prop)) {
                    var args = cssSet[prop];
                    // tslint:disable-next-line:no-any
                    var _a = extractStyleParts_1.extractStyleParts(args), classes = _a.classes, objects = _a.objects;
                    var registration = styleToClassName_1.styleToRegistration({ displayName: prop }, objects);
                    registrations.push(registration);
                    if (registration) {
                        classMap[prop] = registration.className;
                        classNameSet[prop] = classes.concat([registration.className]).join(' ');
                    }
                }
            }
            for (var _b = 0, registrations_1 = registrations; _b < registrations_1.length; _b++) {
                var registration = registrations_1[_b];
                if (registration) {
                    styleToClassName_1.applyRegistration(registration, classMap);
                }
            }
        }
        return classNameSet;
    }
    exports.mergeStyleSets = mergeStyleSets;

    });

    unwrapExports(mergeStyleSets_1);
    var mergeStyleSets_2 = mergeStyleSets_1.mergeStyleSets;

    var fontFace_1 = createCommonjsModule(function (module, exports) {
    Object.defineProperty(exports, "__esModule", { value: true });


    /**
     * Registers a font face.
     * @public
     */
    function fontFace(font) {
        Stylesheet_1.Stylesheet.getInstance().insertRule("@font-face{" + styleToClassName_1.serializeRuleEntries(font) + "}");
    }
    exports.fontFace = fontFace;

    });

    unwrapExports(fontFace_1);
    var fontFace_2 = fontFace_1.fontFace;

    var keyframes_1 = createCommonjsModule(function (module, exports) {
    Object.defineProperty(exports, "__esModule", { value: true });


    /**
     * Registers keyframe definitions.
     *
     * @public
     */
    function keyframes(timeline) {
        var stylesheet = Stylesheet_1.Stylesheet.getInstance();
        var name = stylesheet.getClassName();
        var rulesArray = [];
        for (var prop in timeline) {
            if (timeline.hasOwnProperty(prop)) {
                rulesArray.push(prop, '{', styleToClassName_1.serializeRuleEntries(timeline[prop]), '}');
            }
        }
        var rules = rulesArray.join('');
        stylesheet.insertRule("@keyframes " + name + "{" + rules + "}");
        stylesheet.cacheClassName(name, rules, [], ['keyframes', rules]);
        return name;
    }
    exports.keyframes = keyframes;

    });

    unwrapExports(keyframes_1);
    var keyframes_2 = keyframes_1.keyframes;

    var lib = createCommonjsModule(function (module, exports) {
    Object.defineProperty(exports, "__esModule", { value: true });

    exports.mergeStyles = mergeStyles_1.mergeStyles;

    exports.mergeStyleSets = mergeStyleSets_1.mergeStyleSets;

    exports.concatStyleSets = concatStyleSets_1.concatStyleSets;

    exports.fontFace = fontFace_1.fontFace;

    exports.keyframes = keyframes_1.keyframes;

    exports.InjectionMode = Stylesheet_1.InjectionMode;
    exports.Stylesheet = Stylesheet_1.Stylesheet;

    });

    unwrapExports(lib);
    var lib_1 = lib.mergeStyles;
    var lib_2 = lib.mergeStyleSets;
    var lib_3 = lib.concatStyleSets;
    var lib_4 = lib.fontFace;
    var lib_5 = lib.keyframes;
    var lib_6 = lib.InjectionMode;
    var lib_7 = lib.Stylesheet;

    //
    //
    //
    //
    var iconData = [{
      bundle: 'a13498cf',
      icons: {
        GlobalNavButton: 'E700',
        ChevronDown: 'E70D',
        ChevronUp: 'E70E',
        Edit: 'E70F',
        Add: 'E710',
        Cancel: 'E711',
        More: 'E712',
        Settings: 'E713',
        Mail: 'E715',
        Filter: 'E71C',
        Search: 'E721',
        Share: 'E72D',
        BlockedSite: 'E72F',
        FavoriteStar: 'E734',
        FavoriteStarFill: 'E735',
        CheckMark: 'E73E',
        Delete: 'E74D',
        ChevronLeft: 'E76B',
        ChevronRight: 'E76C',
        Calendar: 'E787',
        Megaphone: 'E789',
        Undo: 'E7A7',
        Flag: 'E7C1',
        Page: 'E7C3',
        Pinned: 'E840',
        View: 'E890',
        Clear: 'E894',
        Download: 'E896',
        Upload: 'E898',
        Folder: 'E8B7',
        Sort: 'E8CB',
        AlignRight: 'E8E2',
        AlignLeft: 'E8E4',
        Tag: 'E8EC',
        AddFriend: 'E8FA',
        Info: 'E946',
        SortLines: 'E9D0',
        List: 'EA37',
        CircleRing: 'EA3A',
        Heart: 'EB51',
        HeartFill: 'EB52',
        Tiles: 'ECA5',
        Embed: 'ECCE',
        Glimmer: 'ECF4',
        Ascending: 'EDC0',
        Descending: 'EDC1',
        SortUp: 'EE68',
        SortDown: 'EE69',
        SyncToPC: 'EE6E',
        LargeGrid: 'EECB',
        SkypeCheck: 'EF80',
        SkypeClock: 'EF81',
        SkypeMinus: 'EF82',
        ClearFilter: 'EF8F',
        Flow: 'EF90',
        StatusCircleCheckmark: 'F13E',
        MoreVertical: 'F2BC'
      }
    }, {
      bundle: '0-29734c63',
      icons: {
        DecreaseIndentLegacy: 'E290',
        IncreaseIndentLegacy: 'E291',
        SizeLegacy: 'E2B2',
        InternetSharing: 'E704',
        Brightness: 'E706',
        MapPin: 'E707',
        Airplane: 'E709',
        Tablet: 'E70A',
        QuickNote: 'E70B',
        Video: 'E714',
        People: 'E716',
        Phone: 'E717',
        Pin: 'E718',
        Shop: 'E719',
        Stop: 'E71A',
        Link: 'E71B',
        AllApps: 'E71D',
        Zoom: 'E71E',
        ZoomOut: 'E71F',
        Microphone: 'E720',
        Camera: 'E722',
        Attach: 'E723',
        Send: 'E724',
        FavoriteList: 'E728',
        PageSolid: 'E729',
        Forward: 'E72A',
        Back: 'E72B',
        Refresh: 'E72C',
        Lock: 'E72E',
        ReportHacked: 'E730',
        EMI: 'E731',
        MiniLink: 'E732',
        Blocked: 'E733',
        ReadingMode: 'E736',
        Favicon: 'E737',
        Remove: 'E738',
        Checkbox: 'E739',
        CheckboxComposite: 'E73A',
        CheckboxIndeterminate: 'E73C',
        CheckboxCompositeReversed: 'E73D',
        BackToWindow: 'E73F',
        FullScreen: 'E740',
        Print: 'E749',
        Up: 'E74A',
        Down: 'E74B',
        OEM: 'E74C',
        Save: 'E74E',
        Cloud: 'E753',
        CommandPrompt: 'E756',
        Sad: 'E757',
        SIPMove: 'E759',
        EraseTool: 'E75C',
        GripperTool: 'E75E',
        Dialpad: 'E75F',
        PageLeft: 'E760',
        PageRight: 'E761',
        MultiSelect: 'E762',
        KeyboardClassic: 'E765',
        Play: 'E768',
        Pause: 'E769',
        Emoji2: 'E76E',
        GripperBarHorizontal: 'E76F',
        System: 'E770',
        Personalize: 'E771',
        SearchAndApps: 'E773',
        Globe: 'E774',
        ContactInfo: 'E779',
        Unpin: 'E77A',
        Contact: 'E77B',
        Memo: 'E77C',
        Paste: 'E77F',
        WindowsLogo: 'E782',
        Error: 'E783',
        GripperBarVertical: 'E784',
        Unlock: 'E785',
        AutoEnhanceOn: 'E78D',
        AutoEnhanceOff: 'E78E',
        Color: 'E790',
        SaveAs: 'E792',
        Light: 'E793',
        Filters: 'E795',
        AspectRatio: 'E799',
        Contrast: 'E7A1',
        Redo: 'E7A6',
        Crop: 'E7A8',
        PhotoCollection: 'E7AA',
        Album: 'E7AB',
        Rotate: 'E7AD',
        PanoIndicator: 'E7B0',
        RedEye: 'E7B3',
        ThumbnailView: 'E7B6',
        Package: 'E7B8',
        Warning: 'E7BA',
        Financial: 'E7BB',
        Education: 'E7BE',
        ShoppingCart: 'E7BF',
        Train: 'E7C0',
        Move: 'E7C2',
        TouchPointer: 'E7C9',
        Merge: 'E7D5'
      }
    }, {
      bundle: '1-a653c37c',
      icons: {
        TurnRight: 'E7DB',
        Ferry: 'E7E3',
        Highlight: 'E7E6',
        PowerButton: 'E7E8',
        Tab: 'E7E9',
        Admin: 'E7EF',
        TVMonitor: 'E7F4',
        Speakers: 'E7F5',
        StackIndicator: 'E7FF',
        Nav2DMapView: 'E800',
        Car: 'E804',
        Bus: 'E806',
        EatDrink: 'E807',
        LocationCircle: 'E80E',
        Home: 'E80F',
        SwitcherStartEnd: 'E810',
        ParkingLocation: 'E811',
        IncidentTriangle: 'E814',
        Touch: 'E815',
        MapDirections: 'E816',
        CaretHollow: 'E817',
        CaretSolid: 'E818',
        History: 'E81C',
        Location: 'E81D',
        Work: 'E821',
        Recent: 'E823',
        Hotel: 'E824',
        LocationDot: 'E827',
        Dictionary: 'E82D',
        ChromeBack: 'E830',
        FolderOpen: 'E838',
        PinnedFill: 'E842',
        RevToggleKey: 'E845',
        Previous: 'E892',
        Next: 'E893',
        Sync: 'E895',
        Help: 'E897',
        Emoji: 'E899',
        MailForward: 'E89C',
        ClosePane: 'E89F',
        OpenPane: 'E8A0',
        PreviewLink: 'E8A1',
        ZoomIn: 'E8A3',
        Bookmarks: 'E8A4',
        Document: 'E8A5',
        ProtectedDocument: 'E8A6',
        OpenInNewWindow: 'E8A7',
        MailFill: 'E8A8',
        ViewAll: 'E8A9',
        Switch: 'E8AB',
        Rename: 'E8AC',
        Remote: 'E8AF',
        SelectAll: 'E8B3',
        Orientation: 'E8B4',
        Import: 'E8B5',
        Picture: 'E8B9',
        ChromeClose: 'E8BB',
        ShowResults: 'E8BC',
        Message: 'E8BD',
        CalendarDay: 'E8BF',
        CalendarWeek: 'E8C0',
        MailReplyAll: 'E8C2',
        Read: 'E8C3',
        Cut: 'E8C6',
        PaymentCard: 'E8C7',
        Copy: 'E8C8',
        Important: 'E8C9',
        MailReply: 'E8CA',
        GotoToday: 'E8D1',
        Font: 'E8D2',
        FontColor: 'E8D3',
        FolderFill: 'E8D5',
        Permissions: 'E8D7',
        DisableUpdates: 'E8D8',
        Unfavorite: 'E8D9',
        Italic: 'E8DB',
        Underline: 'E8DC',
        Bold: 'E8DD',
        MoveToFolder: 'E8DE',
        Dislike: 'E8E0',
        Like: 'E8E1',
        AlignCenter: 'E8E3',
        OpenFile: 'E8E5',
        FontDecrease: 'E8E7',
        FontIncrease: 'E8E8',
        FontSize: 'E8E9',
        CellPhone: 'E8EA',
        Calculator: 'E8EF',
        Library: 'E8F1',
        PostUpdate: 'E8F3',
        NewFolder: 'E8F4',
        CalendarReply: 'E8F5',
        UnsyncFolder: 'E8F6',
        SyncFolder: 'E8F7',
        BlockContact: 'E8F8',
        Accept: 'E8FB',
        BulletedList: 'E8FD',
        Preview: 'E8FF',
        News: 'E900',
        Chat: 'E901'
      }
    }, {
      bundle: '2-b9379dbc',
      icons: {
        Group: 'E902',
        World: 'E909',
        Comment: 'E90A',
        DockLeft: 'E90C',
        DockRight: 'E90D',
        Repair: 'E90F',
        Accounts: 'E910',
        RadioBullet: 'E915',
        Stopwatch: 'E916',
        Clock: 'E917',
        WorldClock: 'E918',
        AlarmClock: 'E919',
        Photo: 'E91B',
        Hospital: 'E91D',
        Timer: 'E91E',
        FullCircleMask: 'E91F',
        LocationFill: 'E920',
        ChromeMinimize: 'E921',
        Annotation: 'E924',
        Fingerprint: 'E928',
        Handwriting: 'E929',
        Completed: 'E930',
        Label: 'E932',
        FlickDown: 'E935',
        FlickUp: 'E936',
        FlickLeft: 'E937',
        FlickRight: 'E938',
        MiniExpand: 'E93A',
        MiniContract: 'E93B',
        Streaming: 'E93E',
        MusicInCollection: 'E940',
        OneDriveLogo: 'E941',
        CompassNW: 'E942',
        Code: 'E943',
        LightningBolt: 'E945',
        CalculatorMultiply: 'E947',
        CalculatorAddition: 'E948',
        CalculatorSubtract: 'E949',
        CalculatorEqualTo: 'E94E',
        PrintfaxPrinterFile: 'E956',
        Communications: 'E95A',
        Headset: 'E95B',
        Health: 'E95E',
        ChevronUpSmall: 'E96D',
        ChevronDownSmall: 'E96E',
        ChevronLeftSmall: 'E96F',
        ChevronRightSmall: 'E970',
        ChevronUpMed: 'E971',
        ChevronDownMed: 'E972',
        ChevronLeftMed: 'E973',
        ChevronRightMed: 'E974',
        PC1: 'E977',
        PresenceChickletVideo: 'E979',
        Reply: 'E97A',
        HalfAlpha: 'E97E',
        ConstructionCone: 'E98F',
        DoubleChevronLeftMed: 'E991',
        Volume0: 'E992',
        Volume1: 'E993',
        Volume2: 'E994',
        Volume3: 'E995',
        Chart: 'E999',
        Robot: 'E99A',
        Manufacturing: 'E99C',
        LockSolid: 'E9A2',
        BidiLtr: 'E9AA',
        BidiRtl: 'E9AB',
        RightDoubleQuote: 'E9B1',
        Sunny: 'E9BD',
        CloudWeather: 'E9BE',
        Cloudy: 'E9BF',
        PartlyCloudyDay: 'E9C0',
        PartlyCloudyNight: 'E9C1',
        ClearNight: 'E9C2',
        RainShowersDay: 'E9C3',
        Rain: 'E9C4',
        Thunderstorms: 'E9C6',
        RainSnow: 'E9C7',
        Snow: 'E9C8',
        BlowingSnow: 'E9C9',
        Frigid: 'E9CA',
        Fog: 'E9CB',
        Squalls: 'E9CC',
        Duststorm: 'E9CD',
        Unknown: 'E9CE',
        Precipitation: 'E9CF',
        Ribbon: 'E9D1',
        AreaChart: 'E9D2',
        Assign: 'E9D3',
        CheckList: 'E9D5',
        Diagnostic: 'E9D9',
        Generate: 'E9DA',
        LineChart: 'E9E6',
        Equalizer: 'E9E9',
        BarChartHorizontal: 'E9EB',
        BarChartVertical: 'E9EC',
        Freezing: 'E9EF',
        Processing: 'E9F5',
        SnowShowerDay: 'E9FD',
        HailDay: 'EA00'
      }
    }, {
      bundle: '3-ef2110da',
      icons: {
        WorkFlow: 'EA01',
        HourGlass: 'EA03',
        StoreLogoMed20: 'EA04',
        TimeSheet: 'EA05',
        TriangleSolid: 'EA08',
        VideoSolid: 'EA0C',
        RainShowersNight: 'EA0F',
        SnowShowerNight: 'EA11',
        Teamwork: 'EA12',
        HailNight: 'EA13',
        PeopleAdd: 'EA15',
        Glasses: 'EA16',
        DateTime2: 'EA17',
        Shield: 'EA18',
        Header1: 'EA19',
        PageAdd: 'EA1A',
        NumberedList: 'EA1C',
        PowerBILogo: 'EA1E',
        Info2: 'EA1F',
        MusicInCollectionFill: 'EA36',
        Asterisk: 'EA38',
        ErrorBadge: 'EA39',
        CircleFill: 'EA3B',
        Record2: 'EA3F',
        AllAppsMirrored: 'EA40',
        BookmarksMirrored: 'EA41',
        BulletedListMirrored: 'EA42',
        CaretHollowMirrored: 'EA45',
        CaretSolidMirrored: 'EA46',
        ChromeBackMirrored: 'EA47',
        ClosePaneMirrored: 'EA49',
        DockLeftMirrored: 'EA4C',
        DoubleChevronLeftMedMirrored: 'EA4D',
        HelpMirrored: 'EA51',
        ImportMirrored: 'EA52',
        ListMirrored: 'EA55',
        MailForwardMirrored: 'EA56',
        MailReplyMirrored: 'EA57',
        MailReplyAllMirrored: 'EA58',
        OpenPaneMirrored: 'EA5B',
        ParkingLocationMirrored: 'EA5E',
        SendMirrored: 'EA63',
        ShowResultsMirrored: 'EA65',
        ThumbnailViewMirrored: 'EA67',
        Devices3: 'EA6C',
        Lightbulb: 'EA80',
        StatusTriangle: 'EA82',
        VolumeDisabled: 'EA85',
        Puzzle: 'EA86',
        EmojiNeutral: 'EA87',
        EmojiDisappointed: 'EA88',
        HomeSolid: 'EA8A',
        Ringer: 'EA8F',
        PDF: 'EA90',
        HeartBroken: 'EA92',
        StoreLogo16: 'EA96',
        MultiSelectMirrored: 'EA98',
        Broom: 'EA99',
        Cocktails: 'EA9D',
        Wines: 'EABF',
        Articles: 'EAC1',
        Cycling: 'EAC7',
        DietPlanNotebook: 'EAC8',
        Pill: 'EACB',
        ExerciseTracker: 'EACC',
        HandsFree: 'EAD0',
        Medical: 'EAD4',
        Running: 'EADA',
        Weights: 'EADB',
        Trackers: 'EADF',
        AddNotes: 'EAE3',
        AllCurrency: 'EAE4',
        BarChart4: 'EAE7',
        CirclePlus: 'EAEE',
        Coffee: 'EAEF',
        Cotton: 'EAF3',
        Market: 'EAFC',
        Money: 'EAFD',
        PieDouble: 'EB04',
        PieSingle: 'EB05',
        RemoveFilter: 'EB08',
        Savings: 'EB0B',
        Sell: 'EB0C',
        StockDown: 'EB0F',
        StockUp: 'EB11',
        Lamp: 'EB19',
        Source: 'EB1B',
        MSNVideos: 'EB1C',
        Cricket: 'EB1E',
        Golf: 'EB1F',
        Baseball: 'EB20',
        Soccer: 'EB21',
        MoreSports: 'EB22',
        AutoRacing: 'EB24',
        CollegeHoops: 'EB25',
        CollegeFootball: 'EB26',
        ProFootball: 'EB27',
        ProHockey: 'EB28',
        Rugby: 'EB2D',
        SubstitutionsIn: 'EB31'
      }
    }, {
      bundle: '4-aeecd474',
      icons: {
        Tennis: 'EB33',
        Arrivals: 'EB34',
        Design: 'EB3C',
        Website: 'EB41',
        Drop: 'EB42',
        SkiResorts: 'EB45',
        Snowflake: 'EB46',
        BusSolid: 'EB47',
        FerrySolid: 'EB48',
        AirplaneSolid: 'EB4C',
        TrainSolid: 'EB4D',
        Ticket: 'EB54',
        Devices4: 'EB66',
        AzureLogo: 'EB6A',
        BingLogo: 'EB6B',
        MSNLogo: 'EB6C',
        OutlookLogoInverse: 'EB6D',
        OfficeLogo: 'EB6E',
        SkypeLogo: 'EB6F',
        Door: 'EB75',
        EditMirrored: 'EB7E',
        GiftCard: 'EB8E',
        DoubleBookmark: 'EB8F',
        StatusErrorFull: 'EB90',
        Certificate: 'EB95',
        FastForward: 'EB9D',
        Rewind: 'EB9E',
        Photo2: 'EB9F',
        OpenSource: 'EBC2',
        Movers: 'EBCD',
        CloudDownload: 'EBD3',
        Family: 'EBDA',
        WindDirection: 'EBE6',
        Bug: 'EBE8',
        SiteScan: 'EBEC',
        BrowserScreenShot: 'EBED',
        F12DevTools: 'EBEE',
        CSS: 'EBEF',
        JS: 'EBF0',
        DeliveryTruck: 'EBF4',
        ReminderPerson: 'EBF7',
        ReminderGroup: 'EBF8',
        TabletMode: 'EBFC',
        Umbrella: 'EC04',
        NetworkTower: 'EC05',
        CityNext: 'EC06',
        Section: 'EC0C',
        OneNoteLogoInverse: 'EC0D',
        ToggleFilled: 'EC11',
        ToggleBorder: 'EC12',
        SliderThumb: 'EC13',
        ToggleThumb: 'EC14',
        Documentation: 'EC17',
        Badge: 'EC1B',
        Giftbox: 'EC1F',
        VisualStudioLogo: 'EC22',
        ExcelLogoInverse: 'EC28',
        WordLogoInverse: 'EC29',
        PowerPointLogoInverse: 'EC2A',
        Cafe: 'EC32',
        SpeedHigh: 'EC4A',
        Commitments: 'EC4D',
        ThisPC: 'EC4E',
        MusicNote: 'EC4F',
        MicOff: 'EC54',
        EdgeLogo: 'EC60',
        CompletedSolid: 'EC61',
        AlbumRemove: 'EC62',
        MessageFill: 'EC70',
        TabletSelected: 'EC74',
        MobileSelected: 'EC75',
        LaptopSelected: 'EC76',
        TVMonitorSelected: 'EC77',
        DeveloperTools: 'EC7A',
        InsertTextBox: 'EC7D',
        LowerBrightness: 'EC8A',
        DOM: 'EC8D',
        CloudUpload: 'EC8E',
        ScrollUpDown: 'EC8F',
        DateTime: 'EC92',
        Event: 'ECA3',
        Cake: 'ECA4',
        Org: 'ECA6',
        PartyLeader: 'ECA7',
        DRM: 'ECA8',
        CloudAdd: 'ECA9',
        AppIconDefault: 'ECAA',
        Photo2Add: 'ECAB',
        Photo2Remove: 'ECAC',
        POI: 'ECAF',
        AddTo: 'ECC8',
        RadioBtnOff: 'ECCA',
        RadioBtnOn: 'ECCB',
        ExploreContent: 'ECCD',
        Product: 'ECDC',
        ProgressLoopInner: 'ECDE',
        ProgressLoopOuter: 'ECDF',
        Blocked2: 'ECE4',
        FangBody: 'ECEB',
        ChatInviteFriend: 'ECFE'
      }
    }, {
      bundle: '5-f6547654',
      icons: {
        Crown: 'ED01',
        Diamond: 'ED02',
        ScaleUp: 'ED09',
        Feedback: 'ED15',
        SharepointLogoInverse: 'ED18',
        YammerLogo: 'ED19',
        Hide: 'ED1A',
        Uneditable: 'ED1D',
        ReturnToSession: 'ED24',
        OpenFolderHorizontal: 'ED25',
        CalendarMirrored: 'ED28',
        SwayLogoInverse: 'ED29',
        OutOfOffice: 'ED34',
        Trophy: 'ED3F',
        ReopenPages: 'ED50',
        EmojiTabSymbols: 'ED58',
        AADLogo: 'ED68',
        AccessLogo: 'ED69',
        AdminALogoInverse32: 'ED6A',
        AdminCLogoInverse32: 'ED6B',
        AdminDLogoInverse32: 'ED6C',
        AdminELogoInverse32: 'ED6D',
        AdminLLogoInverse32: 'ED6E',
        AdminMLogoInverse32: 'ED6F',
        AdminOLogoInverse32: 'ED70',
        AdminPLogoInverse32: 'ED71',
        AdminSLogoInverse32: 'ED72',
        AdminYLogoInverse32: 'ED73',
        DelveLogoInverse: 'ED76',
        ExchangeLogoInverse: 'ED78',
        LyncLogo: 'ED79',
        OfficeVideoLogoInverse: 'ED7A',
        SocialListeningLogo: 'ED7C',
        VisioLogoInverse: 'ED7D',
        Balloons: 'ED7E',
        Cat: 'ED7F',
        MailAlert: 'ED80',
        MailCheck: 'ED81',
        MailLowImportance: 'ED82',
        MailPause: 'ED83',
        MailRepeat: 'ED84',
        SecurityGroup: 'ED85',
        Table: 'ED86',
        VoicemailForward: 'ED87',
        VoicemailReply: 'ED88',
        Waffle: 'ED89',
        RemoveEvent: 'ED8A',
        EventInfo: 'ED8B',
        ForwardEvent: 'ED8C',
        WipePhone: 'ED8D',
        AddOnlineMeeting: 'ED8E',
        JoinOnlineMeeting: 'ED8F',
        RemoveLink: 'ED90',
        PeopleBlock: 'ED91',
        PeopleRepeat: 'ED92',
        PeopleAlert: 'ED93',
        PeoplePause: 'ED94',
        TransferCall: 'ED95',
        AddPhone: 'ED96',
        UnknownCall: 'ED97',
        NoteReply: 'ED98',
        NoteForward: 'ED99',
        NotePinned: 'ED9A',
        RemoveOccurrence: 'ED9B',
        Timeline: 'ED9C',
        EditNote: 'ED9D',
        CircleHalfFull: 'ED9E',
        Room: 'ED9F',
        Unsubscribe: 'EDA0',
        Subscribe: 'EDA1',
        HardDrive: 'EDA2',
        RecurringTask: 'EDB2',
        TaskManager: 'EDB7',
        TaskManagerMirrored: 'EDB8',
        Combine: 'EDBB',
        Split: 'EDBC',
        DoubleChevronUp: 'EDBD',
        DoubleChevronLeft: 'EDBE',
        DoubleChevronRight: 'EDBF',
        TextBox: 'EDC2',
        TextField: 'EDC3',
        NumberField: 'EDC4',
        Dropdown: 'EDC5',
        BookingsLogo: 'EDC7',
        ClassNotebookLogoInverse: 'EDC8',
        DelveAnalyticsLogo: 'EDCA',
        DocsLogoInverse: 'EDCB',
        Dynamics365Logo: 'EDCC',
        DynamicSMBLogo: 'EDCD',
        OfficeAssistantLogo: 'EDCE',
        OfficeStoreLogo: 'EDCF',
        OneNoteEduLogoInverse: 'EDD0',
        PlannerLogo: 'EDD1',
        PowerApps: 'EDD2',
        Suitcase: 'EDD3',
        ProjectLogoInverse: 'EDD4',
        CaretLeft8: 'EDD5',
        CaretRight8: 'EDD6',
        CaretUp8: 'EDD7',
        CaretDown8: 'EDD8'
      }
    }, {
      bundle: '6-3954c770',
      icons: {
        CaretLeftSolid8: 'EDD9',
        CaretRightSolid8: 'EDDA',
        CaretUpSolid8: 'EDDB',
        CaretDownSolid8: 'EDDC',
        ClearFormatting: 'EDDD',
        Superscript: 'EDDE',
        Subscript: 'EDDF',
        Strikethrough: 'EDE0',
        Export: 'EDE1',
        ExportMirrored: 'EDE2',
        SingleBookmark: 'EDFF',
        SingleBookmarkSolid: 'EE00',
        DoubleChevronDown: 'EE04',
        FollowUser: 'EE05',
        ReplyAll: 'EE0A',
        WorkforceManagement: 'EE0F',
        RecruitmentManagement: 'EE12',
        Questionnaire: 'EE19',
        ManagerSelfService: 'EE23',
        ReplyMirrored: 'EE35',
        ReplyAllMirrored: 'EE36',
        Medal: 'EE38',
        AddGroup: 'EE3D',
        QuestionnaireMirrored: 'EE4B',
        TemporaryUser: 'EE58',
        CaretSolid16: 'EE62',
        GroupedDescending: 'EE66',
        GroupedAscending: 'EE67',
        AwayStatus: 'EE6A',
        MyMoviesTV: 'EE6C',
        GenericScan: 'EE6F',
        AustralianRules: 'EE70',
        WifiEthernet: 'EE77',
        TrackersMirrored: 'EE92',
        DateTimeMirrored: 'EE93',
        StopSolid: 'EE95',
        DoubleChevronUp12: 'EE96',
        DoubleChevronDown12: 'EE97',
        DoubleChevronLeft12: 'EE98',
        DoubleChevronRight12: 'EE99',
        CalendarAgenda: 'EE9A',
        AddEvent: 'EEB5',
        AssetLibrary: 'EEB6',
        DataConnectionLibrary: 'EEB7',
        DocLibrary: 'EEB8',
        FormLibrary: 'EEB9',
        FormLibraryMirrored: 'EEBA',
        ReportLibrary: 'EEBB',
        ReportLibraryMirrored: 'EEBC',
        ContactCard: 'EEBD',
        CustomList: 'EEBE',
        CustomListMirrored: 'EEBF',
        IssueTracking: 'EEC0',
        IssueTrackingMirrored: 'EEC1',
        PictureLibrary: 'EEC2',
        OfficeAddinsLogo: 'EEC7',
        OfflineOneDriveParachute: 'EEC8',
        OfflineOneDriveParachuteDisabled: 'EEC9',
        TriangleSolidUp12: 'EECC',
        TriangleSolidDown12: 'EECD',
        TriangleSolidLeft12: 'EECE',
        TriangleSolidRight12: 'EECF',
        TriangleUp12: 'EED0',
        TriangleDown12: 'EED1',
        TriangleLeft12: 'EED2',
        TriangleRight12: 'EED3',
        ArrowUpRight8: 'EED4',
        ArrowDownRight8: 'EED5',
        DocumentSet: 'EED6',
        DelveAnalytics: 'EEEE',
        ArrowUpRightMirrored8: 'EEEF',
        ArrowDownRightMirrored8: 'EEF0',
        CompanyDirectory: 'EF0D',
        CompanyDirectoryMirrored: 'EF2B',
        OneDriveAdd: 'EF32',
        ProfileSearch: 'EF35',
        Header2: 'EF36',
        Header3: 'EF37',
        Header4: 'EF38',
        Eyedropper: 'EF3C',
        MarketDown: 'EF42',
        CalendarWorkWeek: 'EF51',
        SidePanel: 'EF52',
        GlobeFavorite: 'EF53',
        CaretTopLeftSolid8: 'EF54',
        CaretTopRightSolid8: 'EF55',
        ViewAll2: 'EF56',
        DocumentReply: 'EF57',
        PlayerSettings: 'EF58',
        ReceiptForward: 'EF59',
        ReceiptReply: 'EF5A',
        ReceiptCheck: 'EF5B',
        Fax: 'EF5C',
        RecurringEvent: 'EF5D',
        ReplyAlt: 'EF5E',
        ReplyAllAlt: 'EF5F',
        EditStyle: 'EF60',
        EditMail: 'EF61',
        Lifesaver: 'EF62',
        LifesaverLock: 'EF63'
      }
    }, {
      bundle: '7-02107cf8',
      icons: {
        InboxCheck: 'EF64',
        FolderSearch: 'EF65',
        CollapseMenu: 'EF66',
        ExpandMenu: 'EF67',
        Boards: 'EF68',
        SunAdd: 'EF69',
        SunQuestionMark: 'EF6A',
        LandscapeOrientation: 'EF6B',
        DocumentSearch: 'EF6C',
        PublicCalendar: 'EF6D',
        PublicContactCard: 'EF6E',
        PublicEmail: 'EF6F',
        PublicFolder: 'EF70',
        WordDocument: 'EF71',
        PowerPointDocument: 'EF72',
        ExcelDocument: 'EF73',
        GroupedList: 'EF74',
        ClassroomLogo: 'EF75',
        Sections: 'EF76',
        EditPhoto: 'EF77',
        Starburst: 'EF78',
        ShareiOS: 'EF79',
        AirTickets: 'EF7A',
        PencilReply: 'EF7B',
        Tiles2: 'EF7C',
        SkypeCircleCheck: 'EF7D',
        SkypeCircleClock: 'EF7E',
        SkypeCircleMinus: 'EF7F',
        SkypeMessage: 'EF83',
        ClosedCaption: 'EF84',
        ATPLogo: 'EF85',
        OfficeFormsLogoInverse: 'EF86',
        RecycleBin: 'EF87',
        EmptyRecycleBin: 'EF88',
        Hide2: 'EF89',
        Breadcrumb: 'EF8C',
        BirthdayCake: 'EF8D',
        TimeEntry: 'EF95',
        PageEdit: 'EFB6',
        PageRemove: 'EFBA',
        Database: 'EFC7',
        EditContact: 'EFD3',
        ConnectContacts: 'EFD4',
        ActivateOrders: 'EFE0',
        DeactivateOrders: 'EFE1',
        DocumentManagement: 'EFFC',
        CRMReport: 'EFFE',
        ZipFolder: 'F012',
        SurveyQuestions: 'F01B',
        TextDocument: 'F029',
        TextDocumentShared: 'F02B',
        PageCheckedOut: 'F02C',
        SaveAndClose: 'F038',
        Script: 'F03A',
        Archive: 'F03F',
        ActivityFeed: 'F056',
        EventDate: 'F059',
        ArrowUpRight: 'F069',
        CaretRight: 'F06B',
        SetAction: 'F071',
        CaretSolidLeft: 'F08D',
        CaretSolidDown: 'F08E',
        CaretSolidRight: 'F08F',
        CaretSolidUp: 'F090',
        PowerAppsLogo: 'F091',
        PowerApps2Logo: 'F092',
        SearchIssue: 'F09A',
        SearchIssueMirrored: 'F09B',
        FabricAssetLibrary: 'F09C',
        FabricDataConnectionLibrary: 'F09D',
        FabricDocLibrary: 'F09E',
        FabricFormLibrary: 'F09F',
        FabricFormLibraryMirrored: 'F0A0',
        FabricReportLibrary: 'F0A1',
        FabricReportLibraryMirrored: 'F0A2',
        FabricPublicFolder: 'F0A3',
        FabricFolderSearch: 'F0A4',
        FabricMovetoFolder: 'F0A5',
        FabricUnsyncFolder: 'F0A6',
        FabricSyncFolder: 'F0A7',
        FabricOpenFolderHorizontal: 'F0A8',
        FabricFolder: 'F0A9',
        FabricFolderFill: 'F0AA',
        FabricNewFolder: 'F0AB',
        FabricPictureLibrary: 'F0AC',
        AddFavorite: 'F0C8',
        AddFavoriteFill: 'F0C9',
        BufferTimeBefore: 'F0CF',
        BufferTimeAfter: 'F0D0',
        BufferTimeBoth: 'F0D1',
        CannedChat: 'F0F2',
        SkypeForBusinessLogo: 'F0FC',
        PageCheckedin: 'F104',
        ReadOutLoud: 'F112',
        CaretBottomLeftSolid8: 'F121',
        CaretBottomRightSolid8: 'F122',
        FolderHorizontal: 'F12B',
        MicrosoftStaffhubLogo: 'F130',
        GiftboxOpen: 'F133',
        StatusCircleOuter: 'F136'
      }
    }, {
      bundle: '8-645fa64e',
      icons: {
        StatusCircleInner: 'F137',
        StatusCircleRing: 'F138',
        StatusTriangleOuter: 'F139',
        StatusTriangleInner: 'F13A',
        StatusTriangleExclamation: 'F13B',
        StatusCircleExclamation: 'F13C',
        StatusCircleErrorX: 'F13D',
        StatusCircleInfo: 'F13F',
        StatusCircleBlock2: 'F141',
        StatusCircleQuestionMark: 'F142',
        Toll: 'F160',
        ExploreContentSingle: 'F164',
        CollapseContent: 'F165',
        CollapseContentSingle: 'F166',
        InfoSolid: 'F167',
        ProgressRingDots: 'F16A',
        CaloriesAdd: 'F172',
        BranchFork: 'F173',
        MobileReport: 'F18A',
        HardDriveGroup: 'F18F',
        FastMode: 'F19A',
        ToggleOn: 'F19E',
        ToggleOff: 'F19F',
        Trophy2: 'F1AE',
        BucketColor: 'F1B6',
        BucketColorFill: 'F1B7',
        Taskboard: 'F1C2',
        SingleColumn: 'F1D3',
        DoubleColumn: 'F1D4',
        TripleColumn: 'F1D5',
        ColumnLeftTwoThirds: 'F1D6',
        ColumnRightTwoThirds: 'F1D7',
        AccessLogoFill: 'F1DB',
        AnalyticsLogo: 'F1DE',
        AnalyticsQuery: 'F1DF',
        NewAnalyticsQuery: 'F1E0',
        AnalyticsReport: 'F1E1',
        WordLogo: 'F1E3',
        WordLogoFill: 'F1E4',
        ExcelLogo: 'F1E5',
        ExcelLogoFill: 'F1E6',
        OneNoteLogo: 'F1E7',
        OneNoteLogoFill: 'F1E8',
        OutlookLogo: 'F1E9',
        OutlookLogoFill: 'F1EA',
        PowerPointLogo: 'F1EB',
        PowerPointLogoFill: 'F1EC',
        PublisherLogo: 'F1ED',
        PublisherLogoFill: 'F1EE',
        ScheduleEventAction: 'F1EF',
        FlameSolid: 'F1F3',
        ServerProcesses: 'F1FE',
        Server: 'F201',
        SaveAll: 'F203',
        LinkedInLogo: 'F20A',
        Decimals: 'F218',
        SidePanelMirrored: 'F221',
        ProtectRestrict: 'F22A',
        UnknownMirrored: 'F22E',
        PublicContactCardMirrored: 'F230',
        GridViewSmall: 'F232',
        GridViewMedium: 'F233',
        GridViewLarge: 'F234',
        Step: 'F241',
        StepInsert: 'F242',
        StepShared: 'F243',
        StepSharedAdd: 'F244',
        StepSharedInsert: 'F245',
        ViewDashboard: 'F246',
        ViewList: 'F247',
        ViewListGroup: 'F248',
        ViewListTree: 'F249',
        TriggerAuto: 'F24A',
        TriggerUser: 'F24B',
        PivotChart: 'F24C',
        StackedBarChart: 'F24D',
        StackedLineChart: 'F24E',
        BuildQueue: 'F24F',
        BuildQueueNew: 'F250',
        UserFollowed: 'F25C',
        ContactLink: 'F25F',
        Stack: 'F26F',
        Bullseye: 'F272',
        VennDiagram: 'F273',
        FiveTileGrid: 'F274',
        FocalPoint: 'F277',
        RingerRemove: 'F279',
        TeamsLogoInverse: 'F27A',
        TeamsLogo: 'F27B',
        TeamsLogoFill: 'F27C',
        SkypeForBusinessLogoFill: 'F27D',
        SharepointLogo: 'F27E',
        SharepointLogoFill: 'F27F',
        DelveLogo: 'F280',
        DelveLogoFill: 'F281',
        OfficeVideoLogo: 'F282',
        OfficeVideoLogoFill: 'F283',
        ExchangeLogo: 'F284',
        ExchangeLogoFill: 'F285',
        DocumentApproval: 'F28B'
      }
    }, {
      bundle: '9-53746c82',
      icons: {
        CloneToDesktop: 'F28C',
        InstallToDrive: 'F28D',
        Blur: 'F28E',
        Build: 'F28F',
        ProcessMetaTask: 'F290',
        BranchFork2: 'F291',
        BranchLocked: 'F292',
        BranchCommit: 'F293',
        BranchCompare: 'F294',
        BranchMerge: 'F295',
        BranchPullRequest: 'F296',
        BranchSearch: 'F297',
        BranchShelveset: 'F298',
        RawSource: 'F299',
        MergeDuplicate: 'F29A',
        RowsGroup: 'F29B',
        RowsChild: 'F29C',
        Deploy: 'F29D',
        Redeploy: 'F29E',
        ServerEnviroment: 'F29F',
        VisioDiagram: 'F2A0',
        HighlightMappedShapes: 'F2A1',
        TextCallout: 'F2A2',
        IconSetsFlag: 'F2A4',
        VisioLogo: 'F2A7',
        VisioLogoFill: 'F2A8',
        VisioDocument: 'F2A9',
        TimelineProgress: 'F2AA',
        TimelineDelivery: 'F2AB',
        Backlog: 'F2AC',
        TeamFavorite: 'F2AD',
        TaskGroup: 'F2AE',
        TaskGroupMirrored: 'F2AF',
        ScopeTemplate: 'F2B0',
        AssessmentGroupTemplate: 'F2B1',
        NewTeamProject: 'F2B2',
        CommentAdd: 'F2B3',
        CommentNext: 'F2B4',
        CommentPrevious: 'F2B5',
        ShopServer: 'F2B6',
        LocaleLanguage: 'F2B7',
        QueryList: 'F2B8',
        UserSync: 'F2B9',
        UserPause: 'F2BA',
        StreamingOff: 'F2BB',
        ArrowTallUpLeft: 'F2BD',
        ArrowTallUpRight: 'F2BE',
        ArrowTallDownLeft: 'F2BF',
        ArrowTallDownRight: 'F2C0',
        FieldEmpty: 'F2C1',
        FieldFilled: 'F2C2',
        FieldChanged: 'F2C3',
        FieldNotChanged: 'F2C4',
        RingerOff: 'F2C5',
        PlayResume: 'F2C6',
        BulletedList2: 'F2C7',
        BulletedList2Mirrored: 'F2C8',
        ImageCrosshair: 'F2C9',
        GitGraph: 'F2CA',
        Repo: 'F2CB',
        RepoSolid: 'F2CC',
        FolderQuery: 'F2CD',
        FolderList: 'F2CE',
        FolderListMirrored: 'F2CF',
        LocationOutline: 'F2D0',
        POISolid: 'F2D1',
        CalculatorNotEqualTo: 'F2D2',
        BoxSubtractSolid: 'F2D3',
        BoxAdditionSolid: 'F2D4',
        BoxMultiplySolid: 'F2D5',
        BoxPlaySolid: 'F2D6',
        BoxCheckmarkSolid: 'F2D7',
        CirclePauseSolid: 'F2D8',
        CirclePause: 'F2D9',
        MSNVideosSolid: 'F2DA',
        CircleStopSolid: 'F2DB',
        CircleStop: 'F2DC',
        NavigateBack: 'F2DD',
        NavigateBackMirrored: 'F2DE',
        NavigateForward: 'F2DF',
        NavigateForwardMirrored: 'F2E0',
        UnknownSolid: 'F2E1',
        UnknownMirroredSolid: 'F2E2',
        CircleAddition: 'F2E3',
        CircleAdditionSolid: 'F2E4',
        FilePDB: 'F2E5',
        FileTemplate: 'F2E6',
        FileSQL: 'F2E7',
        FileJAVA: 'F2E8',
        FileASPX: 'F2E9',
        FileCSS: 'F2EA',
        FileSass: 'F2EB',
        FileLess: 'F2EC',
        FileHTML: 'F2ED',
        JavaScriptLanguage: 'F2EE',
        CSharpLanguage: 'F2EF',
        CSharp: 'F2F0',
        VisualBasicLanguage: 'F2F1',
        VB: 'F2F2',
        CPlusPlusLanguage: 'F2F3'
      }
    }, {
      bundle: '10-fb519450',
      icons: {
        CPlusPlus: 'F2F4',
        FSharpLanguage: 'F2F5',
        FSharp: 'F2F6',
        TypeScriptLanguage: 'F2F7',
        PythonLanguage: 'F2F8',
        PY: 'F2F9',
        CoffeeScript: 'F2FA',
        MarkDownLanguage: 'F2FB',
        FullWidth: 'F2FE',
        FullWidthEdit: 'F2FF',
        Plug: 'F300',
        PlugSolid: 'F301',
        PlugConnected: 'F302',
        PlugDisconnected: 'F303',
        UnlockSolid: 'F304',
        Variable: 'F305',
        Parameter: 'F306',
        CommentUrgent: 'F307',
        Storyboard: 'F308',
        DiffInline: 'F309',
        DiffSideBySide: 'F30A',
        ImageDiff: 'F30B',
        ImagePixel: 'F30C',
        FileBug: 'F30D',
        FileCode: 'F30E',
        FileComment: 'F30F',
        BusinessHoursSign: 'F310',
        FileImage: 'F311',
        FileSymlink: 'F312',
        AutoFillTemplate: 'F313',
        WorkItem: 'F314',
        WorkItemBug: 'F315',
        LogRemove: 'F316',
        ColumnOptions: 'F317',
        Packages: 'F318',
        BuildIssue: 'F319',
        AssessmentGroup: 'F31A',
        VariableGroup: 'F31B',
        FullHistory: 'F31C',
        SingleColumnEdit: 'F321',
        DoubleColumnEdit: 'F322',
        TripleColumnEdit: 'F323',
        ColumnLeftTwoThirdsEdit: 'F324',
        ColumnRightTwoThirdsEdit: 'F325',
        StreamLogo: 'F329',
        PassiveAuthentication: 'F32A',
        AlertSolid: 'F331',
        MegaphoneSolid: 'F332',
        TaskSolid: 'F333',
        ConfigurationSolid: 'F334',
        BugSolid: 'F335',
        CrownSolid: 'F336',
        Trophy2Solid: 'F337',
        QuickNoteSolid: 'F338',
        ConstructionConeSolid: 'F339',
        PageListSolid: 'F33A',
        PageListMirroredSolid: 'F33B',
        StarburstSolid: 'F33C',
        ReadingModeSolid: 'F33D',
        SadSolid: 'F33E',
        HealthSolid: 'F33F',
        ShieldSolid: 'F340',
        GiftBoxSolid: 'F341',
        ShoppingCartSolid: 'F342',
        MailSolid: 'F343',
        ChatSolid: 'F344',
        RibbonSolid: 'F345',
        FinancialSolid: 'F346',
        FinancialMirroredSolid: 'F347',
        HeadsetSolid: 'F348',
        PermissionsSolid: 'F349',
        ParkingSolid: 'F34A',
        ParkingMirroredSolid: 'F34B',
        DiamondSolid: 'F34C',
        AsteriskSolid: 'F34D',
        OfflineStorageSolid: 'F34E',
        BankSolid: 'F34F',
        DecisionSolid: 'F350',
        Parachute: 'F351',
        ParachuteSolid: 'F352',
        FiltersSolid: 'F353',
        ColorSolid: 'F354',
        ReviewSolid: 'F355',
        ReviewRequestSolid: 'F356',
        ReviewRequestMirroredSolid: 'F357',
        ReviewResponseSolid: 'F358',
        FeedbackRequestSolid: 'F359',
        FeedbackRequestMirroredSolid: 'F35A',
        FeedbackResponseSolid: 'F35B',
        WorkItemBar: 'F35C',
        WorkItemBarSolid: 'F35D',
        Separator: 'F35E',
        NavigateExternalInline: 'F35F',
        PlanView: 'F360',
        TimelineMatrixView: 'F361',
        EngineeringGroup: 'F362',
        ProjectCollection: 'F363',
        CaretBottomRightCenter8: 'F364',
        CaretBottomLeftCenter8: 'F365',
        CaretTopRightCenter8: 'F366'
      }
    }, {
      bundle: '11-a4026982',
      icons: {
        CaretTopLeftCenter8: 'F367',
        DonutChart: 'F368',
        ChevronUnfold10: 'F369',
        ChevronFold10: 'F36A',
        DoubleChevronDown8: 'F36B',
        DoubleChevronUp8: 'F36C',
        DoubleChevronLeft8: 'F36D',
        DoubleChevronRight8: 'F36E',
        ChevronDownEnd6: 'F36F',
        ChevronUpEnd6: 'F370',
        ChevronLeftEnd6: 'F371',
        ChevronRightEnd6: 'F372',
        ContextMenu: 'F37C',
        AzureAPIManagement: 'F37F',
        AzureServiceEndpoint: 'F380',
        VSTSLogo: 'F381',
        VSTSAltLogo1: 'F382',
        VSTSAltLogo2: 'F383',
        FileTypeSolution: 'F387',
        WordLogoInverse16: 'F390',
        WordLogo16: 'F391',
        WordLogoFill16: 'F392',
        PowerPointLogoInverse16: 'F393',
        PowerPointLogo16: 'F394',
        PowerPointLogoFill16: 'F395',
        ExcelLogoInverse16: 'F396',
        ExcelLogo16: 'F397',
        ExcelLogoFill16: 'F398',
        OneNoteLogoInverse16: 'F399',
        OneNoteLogo16: 'F39A',
        OneNoteLogoFill16: 'F39B',
        OutlookLogoInverse16: 'F39C',
        OutlookLogo16: 'F39D',
        OutlookLogoFill16: 'F39E',
        PublisherLogoInverse16: 'F39F',
        PublisherLogo16: 'F3A0',
        PublisherLogoFill16: 'F3A1',
        VisioLogoInverse16: 'F3A2',
        VisioLogo16: 'F3A3',
        VisioLogoFill16: 'F3A4',
        TestBeaker: 'F3A5',
        TestBeakerSolid: 'F3A6',
        TestExploreSolid: 'F3A7',
        TestAutoSolid: 'F3A8',
        TestUserSolid: 'F3A9',
        TestImpactSolid: 'F3AA',
        TestPlan: 'F3AB',
        TestStep: 'F3AC',
        TestParameter: 'F3AD',
        TestSuite: 'F3AE',
        TestCase: 'F3AF',
        Sprint: 'F3B0',
        SignOut: 'F3B1',
        TriggerApproval: 'F3B2',
        Rocket: 'F3B3',
        AzureKeyVault: 'F3B4',
        Transition: 'F3BC',
        LikeSolid: 'F3BF',
        DislikeSolid: 'F3C0',
        UnSetColor: 'F3F9',
        DeclineCall: 'F405',
        RectangularClipping: 'F407',
        TeamsLogo16: 'F40A',
        TeamsLogoFill16: 'F40B',
        Spacer: 'F40D',
        SkypeLogo16: 'F40E',
        SkypeForBusinessLogo16: 'F40F',
        SkypeForBusinessLogoFill16: 'F410',
        FilterSolid: 'F412',
        MailUndelivered: 'F415',
        MailTentative: 'F416',
        MailTentativeMirrored: 'F417',
        MailReminder: 'F418',
        ReceiptUndelivered: 'F419',
        ReceiptTentative: 'F41A',
        ReceiptTentativeMirrored: 'F41B',
        Inbox: 'F41C',
        IRMReply: 'F41D',
        IRMReplyMirrored: 'F41E',
        IRMForward: 'F41F',
        IRMForwardMirrored: 'F420',
        VoicemailIRM: 'F421',
        EventAccepted: 'F422',
        EventTentative: 'F423',
        EventTentativeMirrored: 'F424',
        EventDeclined: 'F425',
        IDBadge: 'F427',
        BackgroundColor: 'F42B',
        OfficeFormsLogoInverse16: 'F433',
        OfficeFormsLogo: 'F434',
        OfficeFormsLogoFill: 'F435',
        OfficeFormsLogo16: 'F436',
        OfficeFormsLogoFill16: 'F437',
        OfficeFormsLogoInverse24: 'F43A',
        OfficeFormsLogo24: 'F43B',
        OfficeFormsLogoFill24: 'F43C',
        PageLock: 'F43F',
        NotExecuted: 'F440',
        NotImpactedSolid: 'F441',
        FieldReadOnly: 'F442'
      }
    }, {
      bundle: '12-e6882c74',
      icons: {
        FieldRequired: 'F443',
        BacklogBoard: 'F444',
        ExternalBuild: 'F445',
        ExternalTFVC: 'F446',
        ExternalXAML: 'F447',
        IssueSolid: 'F448',
        DefectSolid: 'F449',
        LadybugSolid: 'F44A',
        NugetLogo: 'F44C',
        TFVCLogo: 'F44D',
        ProjectLogo32: 'F47E',
        ProjectLogoFill32: 'F47F',
        ProjectLogo16: 'F480',
        ProjectLogoFill16: 'F481',
        SwayLogo32: 'F482',
        SwayLogoFill32: 'F483',
        SwayLogo16: 'F484',
        SwayLogoFill16: 'F485',
        ClassNotebookLogo32: 'F486',
        ClassNotebookLogoFill32: 'F487',
        ClassNotebookLogo16: 'F488',
        ClassNotebookLogoFill16: 'F489',
        ClassNotebookLogoInverse32: 'F48A',
        ClassNotebookLogoInverse16: 'F48B',
        StaffNotebookLogo32: 'F48C',
        StaffNotebookLogoFill32: 'F48D',
        StaffNotebookLogo16: 'F48E',
        StaffNotebookLogoFill16: 'F48F',
        StaffNotebookLogoInverted32: 'F490',
        StaffNotebookLogoInverted16: 'F491',
        KaizalaLogo: 'F492',
        TaskLogo: 'F493',
        ProtectionCenterLogo32: 'F494',
        GallatinLogo: 'F496',
        Globe2: 'F49A',
        Guitar: 'F49B',
        Breakfast: 'F49C',
        Brunch: 'F49D',
        BeerMug: 'F49E',
        Vacation: 'F49F',
        Teeth: 'F4A0',
        Taxi: 'F4A1',
        Chopsticks: 'F4A2',
        SyncOccurence: 'F4A3',
        UnsyncOccurence: 'F4A4',
        PrimaryCalendar: 'F4AE',
        SearchCalendar: 'F4AF',
        VideoOff: 'F4B0',
        MicrosoftFlowLogo: 'F4B1',
        BusinessCenterLogo: 'F4B2',
        ToDoLogoBottom: 'F4B3',
        ToDoLogoTop: 'F4B4',
        EditSolid12: 'F4B5',
        EditSolidMirrored12: 'F4B6',
        UneditableSolid12: 'F4B7',
        UneditableSolidMirrored12: 'F4B8',
        UneditableMirrored: 'F4B9',
        AdminALogo32: 'F4BA',
        AdminALogoFill32: 'F4BB',
        ToDoLogoInverse: 'F4BC',
        Snooze: 'F4BD',
        WaffleOffice365: 'F4E0',
        ImageSearch: 'F4E8',
        NewsSearch: 'F4E9',
        VideoSearch: 'F4EA',
        R: 'F4EB',
        FontColorA: 'F4EC',
        FontColorSwatch: 'F4ED',
        LightWeight: 'F4EE',
        NormalWeight: 'F4EF',
        SemiboldWeight: 'F4F0',
        GroupObject: 'F4F1',
        UngroupObject: 'F4F2',
        AlignHorizontalLeft: 'F4F3',
        AlignHorizontalCenter: 'F4F4',
        AlignHorizontalRight: 'F4F5',
        AlignVerticalTop: 'F4F6',
        AlignVerticalCenter: 'F4F7',
        AlignVerticalBottom: 'F4F8',
        HorizontalDistributeCenter: 'F4F9',
        VerticalDistributeCenter: 'F4FA',
        Ellipse: 'F4FB',
        Line: 'F4FC',
        Octagon: 'F4FD',
        Hexagon: 'F4FE',
        Pentagon: 'F4FF',
        RightTriangle: 'F500',
        HalfCircle: 'F501',
        QuarterCircle: 'F502',
        ThreeQuarterCircle: 'F503',
        '6PointStar': 'F504',
        '12PointStar': 'F505',
        ArrangeBringToFront: 'F506',
        ArrangeSendToBack: 'F507',
        ArrangeSendBackward: 'F508',
        ArrangeBringForward: 'F509',
        BorderDash: 'F50A',
        BorderDot: 'F50B',
        LineStyle: 'F50C',
        LineThickness: 'F50D'
      }
    }, {
      bundle: '13-0980cd6d',
      icons: {
        WindowEdit: 'F50E',
        HintText: 'F50F',
        MediaAdd: 'F510',
        AnchorLock: 'F511',
        AutoHeight: 'F512',
        ChartSeries: 'F513',
        ChartXAngle: 'F514',
        ChartYAngle: 'F515',
        Combobox: 'F516',
        LineSpacing: 'F517',
        Padding: 'F518',
        PaddingTop: 'F519',
        PaddingBottom: 'F51A',
        PaddingLeft: 'F51B',
        PaddingRight: 'F51C',
        NavigationFlipper: 'F51D',
        AlignJustify: 'F51E',
        TextOverflow: 'F51F',
        VisualsFolder: 'F520',
        VisualsStore: 'F521',
        PictureCenter: 'F522',
        PictureFill: 'F523',
        PicturePosition: 'F524',
        PictureStretch: 'F525',
        PictureTile: 'F526',
        Slider: 'F527',
        SliderHandleSize: 'F528',
        DefaultRatio: 'F529',
        NumberSequence: 'F52A',
        GUID: 'F52B',
        ReportAdd: 'F52C',
        DashboardAdd: 'F52D',
        MapPinSolid: 'F52E',
        WebPublish: 'F52F',
        PieSingleSolid: 'F530',
        BlockedSolid: 'F531',
        DrillDown: 'F532',
        DrillDownSolid: 'F533',
        DrillExpand: 'F534',
        DrillShow: 'F535',
        OneDriveFolder16: 'F53B',
        FunctionalManagerDashboard: 'F542',
        BIDashboard: 'F543',
        CodeEdit: 'F544',
        RenewalCurrent: 'F545',
        RenewalFuture: 'F546',
        SplitObject: 'F547',
        BulkUpload: 'F548',
        DownloadDocument: 'F549',
        WaitlistConfirm: 'F550',
        WaitlistConfirmMirrored: 'F551',
        LaptopSecure: 'F552',
        DragObject: 'F553',
        EntryView: 'F554',
        EntryDecline: 'F555',
        ContactCardSettings: 'F556',
        ContactCardSettingsMirrored: 'F557',
        CalendarSettings: 'F558',
        CalendarSettingsMirrored: 'F559',
        HardDriveLock: 'F55A',
        HardDriveUnlock: 'F55B',
        AccountManagement: 'F55C',
        TransitionPop: 'F5B2',
        TransitionPush: 'F5B3',
        TransitionEffect: 'F5B4',
        LookupEntities: 'F5B5',
        ExploreData: 'F5B6',
        AddBookmark: 'F5B7',
        SearchBookmark: 'F5B8',
        DrillThrough: 'F5B9',
        MasterDatabase: 'F5BA',
        CertifiedDatabase: 'F5BB',
        MaximumValue: 'F5BC',
        MinimumValue: 'F5BD',
        VisualStudioIDELogo32: 'F5D0',
        PasteAsText: 'F5D5',
        PasteAsCode: 'F5D6',
        BrowserTab: 'F5D7',
        BrowserTabScreenshot: 'F5D8',
        DesktopScreenshot: 'F5D9',
        FileYML: 'F5DA',
        ClipboardSolid: 'F5DC',
        AnalyticsView: 'F5F1',
        Leave: 'F627',
        Trending12: 'F62D',
        Blocked12: 'F62E',
        Warning12: 'F62F',
        CheckedOutByOther12: 'F630',
        CheckedOutByYou12: 'F631',
        CircleShapeSolid: 'F63C',
        SquareShapeSolid: 'F63D',
        TriangleShapeSolid: 'F63E',
        DropShapeSolid: 'F63F',
        RectangleShapeSolid: 'F640',
        InsertColumnsLeft: 'F64A',
        InsertColumnsRight: 'F64B',
        InsertRowsAbove: 'F64C',
        InsertRowsBelow: 'F64D',
        DeleteColumns: 'F64E',
        DeleteRows: 'F64F'
      }
    }, {
      bundle: '14-eb4d1150',
      icons: {
        DeleteRowsMirrored: 'F650',
        DeleteTable: 'F651',
        VersionControlPush: 'F664',
        WhiteBoardApp16: 'F673',
        WhiteBoardApp32: 'F674',
        InsertSignatureLine: 'F677',
        ArrangeByFrom: 'F678',
        Phishing: 'F679',
        CreateMailRule: 'F67A',
        PublishCourse: 'F699',
        DictionaryRemove: 'F69A',
        UserRemove: 'F69B',
        UserEvent: 'F69C',
        Encryption: 'F69D',
        D365TalentLearn: 'F6BB',
        D365TalentInsight: 'F6BC',
        D365TalentHRCore: 'F6BD',
        BacklogList: 'F6BF',
        ButtonControl: 'F6C0',
        TableGroup: 'F6D9',
        MountainClimbing: 'F6DB',
        TagUnknown: 'F6DF',
        TagUnknownMirror: 'F6E0',
        TagUnknown12: 'F6E1',
        TagUnknown12Mirror: 'F6E2',
        Link12: 'F6E3',
        Presentation: 'F6E4',
        Presentation12: 'F6E5',
        Lock12: 'F6E6',
        BuildDefinition: 'F6E9',
        ReleaseDefinition: 'F6EA',
        SaveTemplate: 'F6EC',
        UserGauge: 'F6ED',
        BlockedSiteSolid12: 'F70A',
        TagSolid: 'F70E',
        OfficeChat: 'F70F',
        OfficeChatSolid: 'F710',
        MailSchedule: 'F72E'
      }
    }];
    var script$Y = {
      props: ["name"],
      computed: {
        iconClass: function iconClass() {
          return "ms-Icon ms-Icon--".concat(this.name, " ").concat(this.contentClass);
        }
      },
      data: function data() {
        return {
          contentClass: null
        };
      },
      mounted: function mounted() {
        // find bundle
        var unicode;
        var bundle;

        for (var b = 0; b < iconData.length && !unicode; b++) {
          if (unicode = iconData[b].icons[this.name]) bundle = iconData[b].bundle;
        }

        lib_4({
          fontFamily: "FabricMDL2Icons-" + bundle,
          src: "url(https://spoprod-a.akamaihd.net/files/fabric/assets/icons/fabric-icons-" + bundle + ".woff) format(\"woff\")"
        });
        this.contentClass = lib_1({
          displayName: this.$options._scopeId,
          display: 'inline-block',
          fontStyle: 'normal',
          fontWeight: '400',
          speak: 'none',
          selectors: {
            ":before": {
              fontFamily: "FabricMDL2Icons-" + bundle,
              content: "\"\\".concat(unicode, "\"")
            }
          }
        });
      }
    };

    /* script */
    const __vue_script__$Y = script$Y;

    /* template */
    var __vue_render__$y = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('i',{class:_vm.iconClass,on:{"click":function($event){return _vm.$emit('click')}}})};
    var __vue_staticRenderFns__$y = [];

      /* style */
      const __vue_inject_styles__$Y = undefined;
      /* scoped */
      const __vue_scope_id__$Y = undefined;
      /* module identifier */
      const __vue_module_identifier__$Y = undefined;
      /* functional template */
      const __vue_is_functional_template__$Y = false;
      /* style inject */
      
      /* style inject SSR */
      
      /* style inject shadow dom */
      

      
      var uiDynamicIcon = normalizeComponent(
        { render: __vue_render__$y, staticRenderFns: __vue_staticRenderFns__$y },
        __vue_inject_styles__$Y,
        __vue_script__$Y,
        __vue_scope_id__$Y,
        __vue_is_functional_template__$Y,
        __vue_module_identifier__$Y,
        false,
        undefined,
        undefined,
        undefined
      );

    //
    var script$Z = {
      loadStyles: loadThemedStyles.loadStyles,
      components: {
        uiTextfield: uiTextfield
      },
      props: ["value"],
      watch: {
        hour: function hour(newVal, oldVal) {
          var _this = this;

          if (newVal * 1 != newVal || newVal < 0 || newVal > 23) this.$nextTick(function () {
            return _this.hour = oldVal;
          });else {
            var newDate = this.value ? new Date(this.value) : new Date(0);
            newDate.setHours(this.hour);
            this.$emit("input", newDate);
          }
        },
        minute: function minute(newVal, oldVal) {
          var _this2 = this;

          if (newVal * 1 != newVal || newVal < 0 || newVal > 59) this.$nextTick(function () {
            return _this2.minute = oldVal;
          });else {
            var newDate = this.value ? new Date(this.value) : new Date(0);
            newDate.setMinutes(this.minute);
            this.$emit("input", newDate);
          }
        },
        value: {
          handler: function handler(newVal) {
            if (newVal) {
              this.hour = newVal.getHours();
              this.minute = newVal.getMinutes();
            }
          },
          immediate: true
        }
      },
      methods: {
        upHour: function upHour() {
          this.hour = (this.hour + 1) % 24;
        },
        upMinute: function upMinute() {
          this.minute++;

          if (this.minute > 59) {
            this.upHour();
            this.minute = 0;
          }
        },
        downHour: function downHour() {
          this.hour--;
          if (this.hour < 0) this.hour = 23;
        },
        downMinute: function downMinute() {
          this.minute--;

          if (this.minute < 0) {
            this.downHour();
            this.minute = 59;
          }
        }
      },
      data: function data() {
        return {
          hour: 0,
          minute: 0
        };
      }
    };

    /* script */
    const __vue_script__$Z = script$Z;

    /* template */
    var __vue_render__$z = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('table',[_c('tr',[_c('td',{staticClass:"up",on:{"click":function($event){return _vm.upHour()}}},[_c('svg',{attrs:{"viewBox":"0 -0 2048 2048","width":"16","height":"16","version":"1.1","xmlns":"http://www.w3.org/2000/svg"}},[_c('path',{attrs:{"fill":"#000000","stroke":"none","transform":"translate(0, 2048) scale(1, -1)","d":"M1024 1607l1017 -1017l-242 -241l-775 775l-775 -775l-242 241l1017 1017v0z"}})])]),_vm._v(" "),_c('td',{staticClass:"seperator"}),_vm._v(" "),_c('td',{staticClass:"up",on:{"click":function($event){return _vm.upMinute()}}},[_c('svg',{attrs:{"viewBox":"0 -0 2048 2048","width":"16","height":"16","version":"1.1","xmlns":"http://www.w3.org/2000/svg"}},[_c('path',{attrs:{"fill":"#000000","stroke":"none","transform":"translate(0, 2048) scale(1, -1)","d":"M1024 1607l1017 -1017l-242 -241l-775 775l-775 -775l-242 241l1017 1017v0z"}})])])]),_vm._v(" "),_c('tr',[_c('td',[_c('uiTextfield',{staticClass:"textField",model:{value:(_vm.hour),callback:function ($$v) {_vm.hour=$$v;},expression:"hour"}})],1),_vm._v(" "),_c('td',{staticClass:"seperator"},[_vm._v(":")]),_vm._v(" "),_c('td',[_c('uiTextfield',{staticClass:"textField",model:{value:(_vm.minute),callback:function ($$v) {_vm.minute=$$v;},expression:"minute"}})],1)]),_vm._v(" "),_c('tr',[_c('td',{staticClass:"down",on:{"click":function($event){return _vm.downHour()}}},[_c('svg',{attrs:{"viewBox":"0 -0 2048 2048","width":"16","height":"16","version":"1.1","xmlns":"http://www.w3.org/2000/svg"}},[_c('path',{attrs:{"fill":"#000000","stroke":"none","transform":"translate(0, 2048) scale(1, -1)","d":"M1799 1699l242 -241l-1017 -1017l-1017 1017l242 241l775 -775l775 775v0z"}})])]),_vm._v(" "),_c('td',{staticClass:"seperator"}),_vm._v(" "),_c('td',{staticClass:"down",on:{"click":function($event){return _vm.downMinute()}}},[_c('svg',{attrs:{"viewBox":"0 -0 2048 2048","width":"16","height":"16","version":"1.1","xmlns":"http://www.w3.org/2000/svg"}},[_c('path',{attrs:{"fill":"#000000","stroke":"none","transform":"translate(0, 2048) scale(1, -1)","d":"M1799 1699l242 -241l-1017 -1017l-1017 1017l242 241l775 -775l775 775v0z"}})])])])])};
    var __vue_staticRenderFns__$z = [];

      /* style */
      const __vue_inject_styles__$Z = function (inject) {
        if (!inject) return
        inject("data-v-4b961c08_0", { source: "table[data-v-4b961c08]{border-spacing:0;min-width:90px}.seperator[data-v-4b961c08]{text-align:center;width:10px}.down[data-v-4b961c08],.up[data-v-4b961c08]{cursor:pointer;text-align:center;user-select:none}.textField[data-v-4b961c08]{width:100%;margin:0!important}.textField[data-v-4b961c08]  label{display:none}.textField[data-v-4b961c08]  input{text-align:center;min-width:unset;padding:6px 0}", map: undefined, media: undefined });

      };
      /* scoped */
      const __vue_scope_id__$Z = "data-v-4b961c08";
      /* module identifier */
      const __vue_module_identifier__$Z = undefined;
      /* functional template */
      const __vue_is_functional_template__$Z = false;
      /* style inject */
      const __vue_create_injector__$p = function(context){ 
                    return function(scopeId, data)
                    {
                        if(window['wizstyle-'+scopeId])
                            return;
                        if(__vue_script__$Z.loadStyles)
                            __vue_script__$Z.loadStyles(data.source);
                        window['wizstyle-'+scopeId]=true;
                    }
                };
      /* style inject SSR */
      
      /* style inject shadow dom */
      

      
      var uiTimePicker = normalizeComponent(
        { render: __vue_render__$z, staticRenderFns: __vue_staticRenderFns__$z },
        __vue_inject_styles__$Z,
        __vue_script__$Z,
        __vue_scope_id__$Z,
        __vue_is_functional_template__$Z,
        __vue_module_identifier__$Z,
        false,
        __vue_create_injector__$p,
        undefined,
        undefined
      );

    //
    var script$_ = {
      data: function data() {
        return {
          cl: ""
        };
      },
      computed: {
        iconClass: function iconClass() {
          return "ms-Icon ms-Icon--".concat(this.name, " ") + this.cl;
        }
      },
      mounted: function mounted() {

        if (!window["wizstyle-font-" + this.bundle]) {
          lib_4({
            fontFamily: "FabricMDL2Icons-" + this.bundle,
            src: "url(https://spoprod-a.akamaihd.net/files/fabric/assets/icons/fabric-icons-" + this.bundle + ".woff) format(\"woff\")"
          });
          window["wizstyle-font-" + this.bundle] = true;
        } // else
        //     console.log("skip loading font: " + this.bundle);


        this.cl = window["wizstyle-class-" + this.bundle + this.name] || lib_1({
          displayName: this.$options._scopeId,
          display: 'inline-block',
          fontStyle: 'normal',
          fontWeight: '400',
          speak: 'none',
          selectors: {
            ":before": {
              fontFamily: "FabricMDL2Icons-" + this.bundle,
              content: "'" + this.unicode + "'"
            }
          }
        });
        window["wizstyle-class-" + this.bundle + this.name] = this.cl;
      }
    };

    /* script */
    const __vue_script__$_ = script$_;

    /* template */
    var __vue_render__$A = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('i',{class:_vm.iconClass,on:{"click":function($event){return _vm.$emit('click')}}})};
    var __vue_staticRenderFns__$A = [];

      /* style */
      const __vue_inject_styles__$_ = undefined;
      /* scoped */
      const __vue_scope_id__$_ = undefined;
      /* module identifier */
      const __vue_module_identifier__$_ = undefined;
      /* functional template */
      const __vue_is_functional_template__$_ = false;
      /* style inject */
      
      /* style inject SSR */
      
      /* style inject shadow dom */
      

      
      var Icon = normalizeComponent(
        { render: __vue_render__$A, staticRenderFns: __vue_staticRenderFns__$A },
        __vue_inject_styles__$_,
        __vue_script__$_,
        __vue_scope_id__$_,
        __vue_is_functional_template__$_,
        __vue_module_identifier__$_,
        false,
        undefined,
        undefined,
        undefined
      );

    function uiIconAdd(resolve) {
      resolve({
        extends: Icon,
        data: function data() {
          return {
            name: "Add",
            unicode: "\uE710",
            bundle: "a13498cf"
          };
        }
      });
    }
    function uiIconMore(resolve) {
      resolve({
        extends: Icon,
        data: function data() {
          return {
            name: "More",
            unicode: "\uE712",
            bundle: "a13498cf"
          };
        }
      });
    }
    function uiIconCalendar(resolve) {
      resolve({
        extends: Icon,
        data: function data() {
          return {
            name: "Calendar",
            unicode: "\uE787",
            bundle: "a13498cf"
          };
        }
      });
    }
    function uiIconMegaphone(resolve) {
      resolve({
        extends: Icon,
        data: function data() {
          return {
            name: "Megaphone",
            unicode: "\uE789",
            bundle: "a13498cf"
          };
        }
      });
    }
    function uiIconCircleRing(resolve) {
      resolve({
        extends: Icon,
        data: function data() {
          return {
            name: "CircleRing",
            unicode: "\uEA3A",
            bundle: "a13498cf"
          };
        }
      });
    }
    function uiIconVideo(resolve) {
      resolve({
        extends: Icon,
        data: function data() {
          return {
            name: "Video",
            unicode: "\uE714",
            bundle: "0-29734c63"
          };
        }
      });
    }
    function uiIconUp(resolve) {
      resolve({
        extends: Icon,
        data: function data() {
          return {
            name: "Up",
            unicode: "\uE74A",
            bundle: "0-29734c63"
          };
        }
      });
    }
    function uiIconDown(resolve) {
      resolve({
        extends: Icon,
        data: function data() {
          return {
            name: "Down",
            unicode: "\uE74B",
            bundle: "0-29734c63"
          };
        }
      });
    }
    function uiIconPlay(resolve) {
      resolve({
        extends: Icon,
        data: function data() {
          return {
            name: "Play",
            unicode: "\uE768",
            bundle: "0-29734c63"
          };
        }
      });
    }
    function uiIconPause(resolve) {
      resolve({
        extends: Icon,
        data: function data() {
          return {
            name: "Pause",
            unicode: "\uE769",
            bundle: "0-29734c63"
          };
        }
      });
    }
    function uiIconLike(resolve) {
      resolve({
        extends: Icon,
        data: function data() {
          return {
            name: "Like",
            unicode: "\uE8E1",
            bundle: "1-a653c37c"
          };
        }
      });
    }
    function uiIconNews(resolve) {
      resolve({
        extends: Icon,
        data: function data() {
          return {
            name: "News",
            unicode: "\uE900",
            bundle: "1-a653c37c"
          };
        }
      });
    }
    function uiIconComment(resolve) {
      resolve({
        extends: Icon,
        data: function data() {
          return {
            name: "Comment",
            unicode: "\uE90A",
            bundle: "2-b9379dbc"
          };
        }
      });
    }
    function uiIconClock(resolve) {
      resolve({
        extends: Icon,
        data: function data() {
          return {
            name: "Clock",
            unicode: "\uE917",
            bundle: "2-b9379dbc"
          };
        }
      });
    }
    function uiIconCompleted(resolve) {
      resolve({
        extends: Icon,
        data: function data() {
          return {
            name: "Completed",
            unicode: "\uE930",
            bundle: "2-b9379dbc"
          };
        }
      });
    }
    function uiIconStreaming(resolve) {
      resolve({
        extends: Icon,
        data: function data() {
          return {
            name: "Streaming",
            unicode: "\uE93E",
            bundle: "2-b9379dbc"
          };
        }
      });
    }
    function uiIconChevronDownMed(resolve) {
      resolve({
        extends: Icon,
        data: function data() {
          return {
            name: "ChevronDownMed",
            unicode: "\uE972",
            bundle: "2-b9379dbc"
          };
        }
      });
    }
    function uiIconChevronLeftMed(resolve) {
      resolve({
        extends: Icon,
        data: function data() {
          return {
            name: "ChevronLeftMed",
            unicode: "\uE973",
            bundle: "2-b9379dbc"
          };
        }
      });
    }
    function uiIconChevronRightMed(resolve) {
      resolve({
        extends: Icon,
        data: function data() {
          return {
            name: "ChevronRightMed",
            unicode: "\uE974",
            bundle: "2-b9379dbc"
          };
        }
      });
    }
    function uiIconDoubleChevronLeftMed(resolve) {
      resolve({
        extends: Icon,
        data: function data() {
          return {
            name: "DoubleChevronLeftMed",
            unicode: "\uE991",
            bundle: "2-b9379dbc"
          };
        }
      });
    }
    function uiIconDoubleChevronLeftMedMirrored(resolve) {
      resolve({
        extends: Icon,
        data: function data() {
          return {
            name: "DoubleChevronLeftMedMirrored",
            unicode: "\uEA4D",
            bundle: "3-ef2110da"
          };
        }
      });
    }
    function uiIconMSNVideosSolid(resolve) {
      resolve({
        extends: Icon,
        data: function data() {
          return {
            name: "MSNVideosSolid",
            unicode: "\uF2DA",
            bundle: "9-53746c82"
          };
        }
      });
    }
    function uiIconLikeSolid(resolve) {
      resolve({
        extends: Icon,
        data: function data() {
          return {
            name: "LikeSolid",
            unicode: "\uF3BF",
            bundle: "11-a4026982"
          };
        }
      });
    }

    var commonjsGlobal$1 = typeof globalThis !== 'undefined' ? globalThis : typeof window !== 'undefined' ? window : typeof global !== 'undefined' ? global : typeof self !== 'undefined' ? self : {};

    function createCommonjsModule$1(fn, module) {
    	return module = { exports: {} }, fn(module, module.exports), module.exports;
    }

    function getCjsExportFromNamespace (n) {
    	return n && n['default'] || n;
    }

    /**!
     * @fileOverview Kickass library to create and place poppers near their reference elements.
     * @version 1.16.0
     * @license
     * Copyright (c) 2016 Federico Zivolo and contributors
     *
     * Permission is hereby granted, free of charge, to any person obtaining a copy
     * of this software and associated documentation files (the "Software"), to deal
     * in the Software without restriction, including without limitation the rights
     * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
     * copies of the Software, and to permit persons to whom the Software is
     * furnished to do so, subject to the following conditions:
     *
     * The above copyright notice and this permission notice shall be included in all
     * copies or substantial portions of the Software.
     *
     * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
     * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
     * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
     * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
     * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
     * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
     * SOFTWARE.
     */
    var isBrowser = typeof window !== 'undefined' && typeof document !== 'undefined' && typeof navigator !== 'undefined';

    var timeoutDuration = function () {
      var longerTimeoutBrowsers = ['Edge', 'Trident', 'Firefox'];

      for (var i = 0; i < longerTimeoutBrowsers.length; i += 1) {
        if (isBrowser && navigator.userAgent.indexOf(longerTimeoutBrowsers[i]) >= 0) {
          return 1;
        }
      }

      return 0;
    }();

    function microtaskDebounce(fn) {
      var called = false;
      return function () {
        if (called) {
          return;
        }

        called = true;
        window.Promise.resolve().then(function () {
          called = false;
          fn();
        });
      };
    }

    function taskDebounce(fn) {
      var scheduled = false;
      return function () {
        if (!scheduled) {
          scheduled = true;
          setTimeout(function () {
            scheduled = false;
            fn();
          }, timeoutDuration);
        }
      };
    }

    var supportsMicroTasks = isBrowser && window.Promise;
    /**
    * Create a debounced version of a method, that's asynchronously deferred
    * but called in the minimum time possible.
    *
    * @method
    * @memberof Popper.Utils
    * @argument {Function} fn
    * @returns {Function}
    */

    var debounce = supportsMicroTasks ? microtaskDebounce : taskDebounce;
    /**
     * Check if the given variable is a function
     * @method
     * @memberof Popper.Utils
     * @argument {Any} functionToCheck - variable to check
     * @returns {Boolean} answer to: is a function?
     */

    function isFunction(functionToCheck) {
      var getType = {};
      return functionToCheck && getType.toString.call(functionToCheck) === '[object Function]';
    }
    /**
     * Get CSS computed property of the given element
     * @method
     * @memberof Popper.Utils
     * @argument {Eement} element
     * @argument {String} property
     */


    function getStyleComputedProperty(element, property) {
      if (element.nodeType !== 1) {
        return [];
      } // NOTE: 1 DOM access here


      var window = element.ownerDocument.defaultView;
      var css = window.getComputedStyle(element, null);
      return property ? css[property] : css;
    }
    /**
     * Returns the parentNode or the host of the element
     * @method
     * @memberof Popper.Utils
     * @argument {Element} element
     * @returns {Element} parent
     */


    function getParentNode(element) {
      if (element.nodeName === 'HTML') {
        return element;
      }

      return element.parentNode || element.host;
    }
    /**
     * Returns the scrolling parent of the given element
     * @method
     * @memberof Popper.Utils
     * @argument {Element} element
     * @returns {Element} scroll parent
     */


    function getScrollParent(element) {
      // Return body, `getScroll` will take care to get the correct `scrollTop` from it
      if (!element) {
        return document.body;
      }

      switch (element.nodeName) {
        case 'HTML':
        case 'BODY':
          return element.ownerDocument.body;

        case '#document':
          return element.body;
      } // Firefox want us to check `-x` and `-y` variations as well


      var _getStyleComputedProp = getStyleComputedProperty(element),
          overflow = _getStyleComputedProp.overflow,
          overflowX = _getStyleComputedProp.overflowX,
          overflowY = _getStyleComputedProp.overflowY;

      if (/(auto|scroll|overlay)/.test(overflow + overflowY + overflowX)) {
        return element;
      }

      return getScrollParent(getParentNode(element));
    }
    /**
     * Returns the reference node of the reference object, or the reference object itself.
     * @method
     * @memberof Popper.Utils
     * @param {Element|Object} reference - the reference element (the popper will be relative to this)
     * @returns {Element} parent
     */


    function getReferenceNode(reference) {
      return reference && reference.referenceNode ? reference.referenceNode : reference;
    }

    var isIE11 = isBrowser && !!(window.MSInputMethodContext && document.documentMode);
    var isIE10 = isBrowser && /MSIE 10/.test(navigator.userAgent);
    /**
     * Determines if the browser is Internet Explorer
     * @method
     * @memberof Popper.Utils
     * @param {Number} version to check
     * @returns {Boolean} isIE
     */

    function isIE(version) {
      if (version === 11) {
        return isIE11;
      }

      if (version === 10) {
        return isIE10;
      }

      return isIE11 || isIE10;
    }
    /**
     * Returns the offset parent of the given element
     * @method
     * @memberof Popper.Utils
     * @argument {Element} element
     * @returns {Element} offset parent
     */


    function getOffsetParent(element) {
      if (!element) {
        return document.documentElement;
      }

      var noOffsetParent = isIE(10) ? document.body : null; // NOTE: 1 DOM access here

      var offsetParent = element.offsetParent || null; // Skip hidden elements which don't have an offsetParent

      while (offsetParent === noOffsetParent && element.nextElementSibling) {
        offsetParent = (element = element.nextElementSibling).offsetParent;
      }

      var nodeName = offsetParent && offsetParent.nodeName;

      if (!nodeName || nodeName === 'BODY' || nodeName === 'HTML') {
        return element ? element.ownerDocument.documentElement : document.documentElement;
      } // .offsetParent will return the closest TH, TD or TABLE in case
      // no offsetParent is present, I hate this job...


      if (['TH', 'TD', 'TABLE'].indexOf(offsetParent.nodeName) !== -1 && getStyleComputedProperty(offsetParent, 'position') === 'static') {
        return getOffsetParent(offsetParent);
      }

      return offsetParent;
    }

    function isOffsetContainer(element) {
      var nodeName = element.nodeName;

      if (nodeName === 'BODY') {
        return false;
      }

      return nodeName === 'HTML' || getOffsetParent(element.firstElementChild) === element;
    }
    /**
     * Finds the root node (document, shadowDOM root) of the given element
     * @method
     * @memberof Popper.Utils
     * @argument {Element} node
     * @returns {Element} root node
     */


    function getRoot(node) {
      if (node.parentNode !== null) {
        return getRoot(node.parentNode);
      }

      return node;
    }
    /**
     * Finds the offset parent common to the two provided nodes
     * @method
     * @memberof Popper.Utils
     * @argument {Element} element1
     * @argument {Element} element2
     * @returns {Element} common offset parent
     */


    function findCommonOffsetParent(element1, element2) {
      // This check is needed to avoid errors in case one of the elements isn't defined for any reason
      if (!element1 || !element1.nodeType || !element2 || !element2.nodeType) {
        return document.documentElement;
      } // Here we make sure to give as "start" the element that comes first in the DOM


      var order = element1.compareDocumentPosition(element2) & Node.DOCUMENT_POSITION_FOLLOWING;
      var start = order ? element1 : element2;
      var end = order ? element2 : element1; // Get common ancestor container

      var range = document.createRange();
      range.setStart(start, 0);
      range.setEnd(end, 0);
      var commonAncestorContainer = range.commonAncestorContainer; // Both nodes are inside #document

      if (element1 !== commonAncestorContainer && element2 !== commonAncestorContainer || start.contains(end)) {
        if (isOffsetContainer(commonAncestorContainer)) {
          return commonAncestorContainer;
        }

        return getOffsetParent(commonAncestorContainer);
      } // one of the nodes is inside shadowDOM, find which one


      var element1root = getRoot(element1);

      if (element1root.host) {
        return findCommonOffsetParent(element1root.host, element2);
      } else {
        return findCommonOffsetParent(element1, getRoot(element2).host);
      }
    }
    /**
     * Gets the scroll value of the given element in the given side (top and left)
     * @method
     * @memberof Popper.Utils
     * @argument {Element} element
     * @argument {String} side `top` or `left`
     * @returns {number} amount of scrolled pixels
     */


    function getScroll(element) {
      var side = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : 'top';
      var upperSide = side === 'top' ? 'scrollTop' : 'scrollLeft';
      var nodeName = element.nodeName;

      if (nodeName === 'BODY' || nodeName === 'HTML') {
        var html = element.ownerDocument.documentElement;
        var scrollingElement = element.ownerDocument.scrollingElement || html;
        return scrollingElement[upperSide];
      }

      return element[upperSide];
    }
    /*
     * Sum or subtract the element scroll values (left and top) from a given rect object
     * @method
     * @memberof Popper.Utils
     * @param {Object} rect - Rect object you want to change
     * @param {HTMLElement} element - The element from the function reads the scroll values
     * @param {Boolean} subtract - set to true if you want to subtract the scroll values
     * @return {Object} rect - The modifier rect object
     */


    function includeScroll(rect, element) {
      var subtract = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : false;
      var scrollTop = getScroll(element, 'top');
      var scrollLeft = getScroll(element, 'left');
      var modifier = subtract ? -1 : 1;
      rect.top += scrollTop * modifier;
      rect.bottom += scrollTop * modifier;
      rect.left += scrollLeft * modifier;
      rect.right += scrollLeft * modifier;
      return rect;
    }
    /*
     * Helper to detect borders of a given element
     * @method
     * @memberof Popper.Utils
     * @param {CSSStyleDeclaration} styles
     * Result of `getStyleComputedProperty` on the given element
     * @param {String} axis - `x` or `y`
     * @return {number} borders - The borders size of the given axis
     */


    function getBordersSize(styles, axis) {
      var sideA = axis === 'x' ? 'Left' : 'Top';
      var sideB = sideA === 'Left' ? 'Right' : 'Bottom';
      return parseFloat(styles['border' + sideA + 'Width'], 10) + parseFloat(styles['border' + sideB + 'Width'], 10);
    }

    function getSize(axis, body, html, computedStyle) {
      return Math.max(body['offset' + axis], body['scroll' + axis], html['client' + axis], html['offset' + axis], html['scroll' + axis], isIE(10) ? parseInt(html['offset' + axis]) + parseInt(computedStyle['margin' + (axis === 'Height' ? 'Top' : 'Left')]) + parseInt(computedStyle['margin' + (axis === 'Height' ? 'Bottom' : 'Right')]) : 0);
    }

    function getWindowSizes(document) {
      var body = document.body;
      var html = document.documentElement;
      var computedStyle = isIE(10) && getComputedStyle(html);
      return {
        height: getSize('Height', body, html, computedStyle),
        width: getSize('Width', body, html, computedStyle)
      };
    }

    var classCallCheck = function classCallCheck(instance, Constructor) {
      if (!(instance instanceof Constructor)) {
        throw new TypeError("Cannot call a class as a function");
      }
    };

    var createClass = function () {
      function defineProperties(target, props) {
        for (var i = 0; i < props.length; i++) {
          var descriptor = props[i];
          descriptor.enumerable = descriptor.enumerable || false;
          descriptor.configurable = true;
          if ("value" in descriptor) descriptor.writable = true;
          Object.defineProperty(target, descriptor.key, descriptor);
        }
      }

      return function (Constructor, protoProps, staticProps) {
        if (protoProps) defineProperties(Constructor.prototype, protoProps);
        if (staticProps) defineProperties(Constructor, staticProps);
        return Constructor;
      };
    }();

    var defineProperty = function defineProperty(obj, key, value) {
      if (key in obj) {
        Object.defineProperty(obj, key, {
          value: value,
          enumerable: true,
          configurable: true,
          writable: true
        });
      } else {
        obj[key] = value;
      }

      return obj;
    };

    var _extends$1 = Object.assign || function (target) {
      for (var i = 1; i < arguments.length; i++) {
        var source = arguments[i];

        for (var key in source) {
          if (Object.prototype.hasOwnProperty.call(source, key)) {
            target[key] = source[key];
          }
        }
      }

      return target;
    };
    /**
     * Given element offsets, generate an output similar to getBoundingClientRect
     * @method
     * @memberof Popper.Utils
     * @argument {Object} offsets
     * @returns {Object} ClientRect like output
     */


    function getClientRect(offsets) {
      return _extends$1({}, offsets, {
        right: offsets.left + offsets.width,
        bottom: offsets.top + offsets.height
      });
    }
    /**
     * Get bounding client rect of given element
     * @method
     * @memberof Popper.Utils
     * @param {HTMLElement} element
     * @return {Object} client rect
     */


    function getBoundingClientRect(element) {
      var rect = {}; // IE10 10 FIX: Please, don't ask, the element isn't
      // considered in DOM in some circumstances...
      // This isn't reproducible in IE10 compatibility mode of IE11

      try {
        if (isIE(10)) {
          rect = element.getBoundingClientRect();
          var scrollTop = getScroll(element, 'top');
          var scrollLeft = getScroll(element, 'left');
          rect.top += scrollTop;
          rect.left += scrollLeft;
          rect.bottom += scrollTop;
          rect.right += scrollLeft;
        } else {
          rect = element.getBoundingClientRect();
        }
      } catch (e) {}

      var result = {
        left: rect.left,
        top: rect.top,
        width: rect.right - rect.left,
        height: rect.bottom - rect.top
      }; // subtract scrollbar size from sizes

      var sizes = element.nodeName === 'HTML' ? getWindowSizes(element.ownerDocument) : {};
      var width = sizes.width || element.clientWidth || result.width;
      var height = sizes.height || element.clientHeight || result.height;
      var horizScrollbar = element.offsetWidth - width;
      var vertScrollbar = element.offsetHeight - height; // if an hypothetical scrollbar is detected, we must be sure it's not a `border`
      // we make this check conditional for performance reasons

      if (horizScrollbar || vertScrollbar) {
        var styles = getStyleComputedProperty(element);
        horizScrollbar -= getBordersSize(styles, 'x');
        vertScrollbar -= getBordersSize(styles, 'y');
        result.width -= horizScrollbar;
        result.height -= vertScrollbar;
      }

      return getClientRect(result);
    }

    function getOffsetRectRelativeToArbitraryNode(children, parent) {
      var fixedPosition = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : false;
      var isIE10 = isIE(10);
      var isHTML = parent.nodeName === 'HTML';
      var childrenRect = getBoundingClientRect(children);
      var parentRect = getBoundingClientRect(parent);
      var scrollParent = getScrollParent(children);
      var styles = getStyleComputedProperty(parent);
      var borderTopWidth = parseFloat(styles.borderTopWidth, 10);
      var borderLeftWidth = parseFloat(styles.borderLeftWidth, 10); // In cases where the parent is fixed, we must ignore negative scroll in offset calc

      if (fixedPosition && isHTML) {
        parentRect.top = Math.max(parentRect.top, 0);
        parentRect.left = Math.max(parentRect.left, 0);
      }

      var offsets = getClientRect({
        top: childrenRect.top - parentRect.top - borderTopWidth,
        left: childrenRect.left - parentRect.left - borderLeftWidth,
        width: childrenRect.width,
        height: childrenRect.height
      });
      offsets.marginTop = 0;
      offsets.marginLeft = 0; // Subtract margins of documentElement in case it's being used as parent
      // we do this only on HTML because it's the only element that behaves
      // differently when margins are applied to it. The margins are included in
      // the box of the documentElement, in the other cases not.

      if (!isIE10 && isHTML) {
        var marginTop = parseFloat(styles.marginTop, 10);
        var marginLeft = parseFloat(styles.marginLeft, 10);
        offsets.top -= borderTopWidth - marginTop;
        offsets.bottom -= borderTopWidth - marginTop;
        offsets.left -= borderLeftWidth - marginLeft;
        offsets.right -= borderLeftWidth - marginLeft; // Attach marginTop and marginLeft because in some circumstances we may need them

        offsets.marginTop = marginTop;
        offsets.marginLeft = marginLeft;
      }

      if (isIE10 && !fixedPosition ? parent.contains(scrollParent) : parent === scrollParent && scrollParent.nodeName !== 'BODY') {
        offsets = includeScroll(offsets, parent);
      }

      return offsets;
    }

    function getViewportOffsetRectRelativeToArtbitraryNode(element) {
      var excludeScroll = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : false;
      var html = element.ownerDocument.documentElement;
      var relativeOffset = getOffsetRectRelativeToArbitraryNode(element, html);
      var width = Math.max(html.clientWidth, window.innerWidth || 0);
      var height = Math.max(html.clientHeight, window.innerHeight || 0);
      var scrollTop = !excludeScroll ? getScroll(html) : 0;
      var scrollLeft = !excludeScroll ? getScroll(html, 'left') : 0;
      var offset = {
        top: scrollTop - relativeOffset.top + relativeOffset.marginTop,
        left: scrollLeft - relativeOffset.left + relativeOffset.marginLeft,
        width: width,
        height: height
      };
      return getClientRect(offset);
    }
    /**
     * Check if the given element is fixed or is inside a fixed parent
     * @method
     * @memberof Popper.Utils
     * @argument {Element} element
     * @argument {Element} customContainer
     * @returns {Boolean} answer to "isFixed?"
     */


    function isFixed(element) {
      var nodeName = element.nodeName;

      if (nodeName === 'BODY' || nodeName === 'HTML') {
        return false;
      }

      if (getStyleComputedProperty(element, 'position') === 'fixed') {
        return true;
      }

      var parentNode = getParentNode(element);

      if (!parentNode) {
        return false;
      }

      return isFixed(parentNode);
    }
    /**
     * Finds the first parent of an element that has a transformed property defined
     * @method
     * @memberof Popper.Utils
     * @argument {Element} element
     * @returns {Element} first transformed parent or documentElement
     */


    function getFixedPositionOffsetParent(element) {
      // This check is needed to avoid errors in case one of the elements isn't defined for any reason
      if (!element || !element.parentElement || isIE()) {
        return document.documentElement;
      }

      var el = element.parentElement;

      while (el && getStyleComputedProperty(el, 'transform') === 'none') {
        el = el.parentElement;
      }

      return el || document.documentElement;
    }
    /**
     * Computed the boundaries limits and return them
     * @method
     * @memberof Popper.Utils
     * @param {HTMLElement} popper
     * @param {HTMLElement} reference
     * @param {number} padding
     * @param {HTMLElement} boundariesElement - Element used to define the boundaries
     * @param {Boolean} fixedPosition - Is in fixed position mode
     * @returns {Object} Coordinates of the boundaries
     */


    function getBoundaries(popper, reference, padding, boundariesElement) {
      var fixedPosition = arguments.length > 4 && arguments[4] !== undefined ? arguments[4] : false; // NOTE: 1 DOM access here

      var boundaries = {
        top: 0,
        left: 0
      };
      var offsetParent = fixedPosition ? getFixedPositionOffsetParent(popper) : findCommonOffsetParent(popper, getReferenceNode(reference)); // Handle viewport case

      if (boundariesElement === 'viewport') {
        boundaries = getViewportOffsetRectRelativeToArtbitraryNode(offsetParent, fixedPosition);
      } else {
        // Handle other cases based on DOM element used as boundaries
        var boundariesNode = void 0;

        if (boundariesElement === 'scrollParent') {
          boundariesNode = getScrollParent(getParentNode(reference));

          if (boundariesNode.nodeName === 'BODY') {
            boundariesNode = popper.ownerDocument.documentElement;
          }
        } else if (boundariesElement === 'window') {
          boundariesNode = popper.ownerDocument.documentElement;
        } else {
          boundariesNode = boundariesElement;
        }

        var offsets = getOffsetRectRelativeToArbitraryNode(boundariesNode, offsetParent, fixedPosition); // In case of HTML, we need a different computation

        if (boundariesNode.nodeName === 'HTML' && !isFixed(offsetParent)) {
          var _getWindowSizes = getWindowSizes(popper.ownerDocument),
              height = _getWindowSizes.height,
              width = _getWindowSizes.width;

          boundaries.top += offsets.top - offsets.marginTop;
          boundaries.bottom = height + offsets.top;
          boundaries.left += offsets.left - offsets.marginLeft;
          boundaries.right = width + offsets.left;
        } else {
          // for all the other DOM elements, this one is good
          boundaries = offsets;
        }
      } // Add paddings


      padding = padding || 0;
      var isPaddingNumber = typeof padding === 'number';
      boundaries.left += isPaddingNumber ? padding : padding.left || 0;
      boundaries.top += isPaddingNumber ? padding : padding.top || 0;
      boundaries.right -= isPaddingNumber ? padding : padding.right || 0;
      boundaries.bottom -= isPaddingNumber ? padding : padding.bottom || 0;
      return boundaries;
    }

    function getArea(_ref) {
      var width = _ref.width,
          height = _ref.height;
      return width * height;
    }
    /**
     * Utility used to transform the `auto` placement to the placement with more
     * available space.
     * @method
     * @memberof Popper.Utils
     * @argument {Object} data - The data object generated by update method
     * @argument {Object} options - Modifiers configuration and options
     * @returns {Object} The data object, properly modified
     */


    function computeAutoPlacement(placement, refRect, popper, reference, boundariesElement) {
      var padding = arguments.length > 5 && arguments[5] !== undefined ? arguments[5] : 0;

      if (placement.indexOf('auto') === -1) {
        return placement;
      }

      var boundaries = getBoundaries(popper, reference, padding, boundariesElement);
      var rects = {
        top: {
          width: boundaries.width,
          height: refRect.top - boundaries.top
        },
        right: {
          width: boundaries.right - refRect.right,
          height: boundaries.height
        },
        bottom: {
          width: boundaries.width,
          height: boundaries.bottom - refRect.bottom
        },
        left: {
          width: refRect.left - boundaries.left,
          height: boundaries.height
        }
      };
      var sortedAreas = Object.keys(rects).map(function (key) {
        return _extends$1({
          key: key
        }, rects[key], {
          area: getArea(rects[key])
        });
      }).sort(function (a, b) {
        return b.area - a.area;
      });
      var filteredAreas = sortedAreas.filter(function (_ref2) {
        var width = _ref2.width,
            height = _ref2.height;
        return width >= popper.clientWidth && height >= popper.clientHeight;
      });
      var computedPlacement = filteredAreas.length > 0 ? filteredAreas[0].key : sortedAreas[0].key;
      var variation = placement.split('-')[1];
      return computedPlacement + (variation ? '-' + variation : '');
    }
    /**
     * Get offsets to the reference element
     * @method
     * @memberof Popper.Utils
     * @param {Object} state
     * @param {Element} popper - the popper element
     * @param {Element} reference - the reference element (the popper will be relative to this)
     * @param {Element} fixedPosition - is in fixed position mode
     * @returns {Object} An object containing the offsets which will be applied to the popper
     */


    function getReferenceOffsets(state, popper, reference) {
      var fixedPosition = arguments.length > 3 && arguments[3] !== undefined ? arguments[3] : null;
      var commonOffsetParent = fixedPosition ? getFixedPositionOffsetParent(popper) : findCommonOffsetParent(popper, getReferenceNode(reference));
      return getOffsetRectRelativeToArbitraryNode(reference, commonOffsetParent, fixedPosition);
    }
    /**
     * Get the outer sizes of the given element (offset size + margins)
     * @method
     * @memberof Popper.Utils
     * @argument {Element} element
     * @returns {Object} object containing width and height properties
     */


    function getOuterSizes(element) {
      var window = element.ownerDocument.defaultView;
      var styles = window.getComputedStyle(element);
      var x = parseFloat(styles.marginTop || 0) + parseFloat(styles.marginBottom || 0);
      var y = parseFloat(styles.marginLeft || 0) + parseFloat(styles.marginRight || 0);
      var result = {
        width: element.offsetWidth + y,
        height: element.offsetHeight + x
      };
      return result;
    }
    /**
     * Get the opposite placement of the given one
     * @method
     * @memberof Popper.Utils
     * @argument {String} placement
     * @returns {String} flipped placement
     */


    function getOppositePlacement(placement) {
      var hash = {
        left: 'right',
        right: 'left',
        bottom: 'top',
        top: 'bottom'
      };
      return placement.replace(/left|right|bottom|top/g, function (matched) {
        return hash[matched];
      });
    }
    /**
     * Get offsets to the popper
     * @method
     * @memberof Popper.Utils
     * @param {Object} position - CSS position the Popper will get applied
     * @param {HTMLElement} popper - the popper element
     * @param {Object} referenceOffsets - the reference offsets (the popper will be relative to this)
     * @param {String} placement - one of the valid placement options
     * @returns {Object} popperOffsets - An object containing the offsets which will be applied to the popper
     */


    function getPopperOffsets(popper, referenceOffsets, placement) {
      placement = placement.split('-')[0]; // Get popper node sizes

      var popperRect = getOuterSizes(popper); // Add position, width and height to our offsets object

      var popperOffsets = {
        width: popperRect.width,
        height: popperRect.height
      }; // depending by the popper placement we have to compute its offsets slightly differently

      var isHoriz = ['right', 'left'].indexOf(placement) !== -1;
      var mainSide = isHoriz ? 'top' : 'left';
      var secondarySide = isHoriz ? 'left' : 'top';
      var measurement = isHoriz ? 'height' : 'width';
      var secondaryMeasurement = !isHoriz ? 'height' : 'width';
      popperOffsets[mainSide] = referenceOffsets[mainSide] + referenceOffsets[measurement] / 2 - popperRect[measurement] / 2;

      if (placement === secondarySide) {
        popperOffsets[secondarySide] = referenceOffsets[secondarySide] - popperRect[secondaryMeasurement];
      } else {
        popperOffsets[secondarySide] = referenceOffsets[getOppositePlacement(secondarySide)];
      }

      return popperOffsets;
    }
    /**
     * Mimics the `find` method of Array
     * @method
     * @memberof Popper.Utils
     * @argument {Array} arr
     * @argument prop
     * @argument value
     * @returns index or -1
     */


    function find(arr, check) {
      // use native find if supported
      if (Array.prototype.find) {
        return arr.find(check);
      } // use `filter` to obtain the same behavior of `find`


      return arr.filter(check)[0];
    }
    /**
     * Return the index of the matching object
     * @method
     * @memberof Popper.Utils
     * @argument {Array} arr
     * @argument prop
     * @argument value
     * @returns index or -1
     */


    function findIndex(arr, prop, value) {
      // use native findIndex if supported
      if (Array.prototype.findIndex) {
        return arr.findIndex(function (cur) {
          return cur[prop] === value;
        });
      } // use `find` + `indexOf` if `findIndex` isn't supported


      var match = find(arr, function (obj) {
        return obj[prop] === value;
      });
      return arr.indexOf(match);
    }
    /**
     * Loop trough the list of modifiers and run them in order,
     * each of them will then edit the data object.
     * @method
     * @memberof Popper.Utils
     * @param {dataObject} data
     * @param {Array} modifiers
     * @param {String} ends - Optional modifier name used as stopper
     * @returns {dataObject}
     */


    function runModifiers(modifiers, data, ends) {
      var modifiersToRun = ends === undefined ? modifiers : modifiers.slice(0, findIndex(modifiers, 'name', ends));
      modifiersToRun.forEach(function (modifier) {
        if (modifier['function']) {
          // eslint-disable-line dot-notation
          console.warn('`modifier.function` is deprecated, use `modifier.fn`!');
        }

        var fn = modifier['function'] || modifier.fn; // eslint-disable-line dot-notation

        if (modifier.enabled && isFunction(fn)) {
          // Add properties to offsets to make them a complete clientRect object
          // we do this before each modifier to make sure the previous one doesn't
          // mess with these values
          data.offsets.popper = getClientRect(data.offsets.popper);
          data.offsets.reference = getClientRect(data.offsets.reference);
          data = fn(data, modifier);
        }
      });
      return data;
    }
    /**
     * Updates the position of the popper, computing the new offsets and applying
     * the new style.<br />
     * Prefer `scheduleUpdate` over `update` because of performance reasons.
     * @method
     * @memberof Popper
     */


    function update() {
      // if popper is destroyed, don't perform any further update
      if (this.state.isDestroyed) {
        return;
      }

      var data = {
        instance: this,
        styles: {},
        arrowStyles: {},
        attributes: {},
        flipped: false,
        offsets: {}
      }; // compute reference element offsets

      data.offsets.reference = getReferenceOffsets(this.state, this.popper, this.reference, this.options.positionFixed); // compute auto placement, store placement inside the data object,
      // modifiers will be able to edit `placement` if needed
      // and refer to originalPlacement to know the original value

      data.placement = computeAutoPlacement(this.options.placement, data.offsets.reference, this.popper, this.reference, this.options.modifiers.flip.boundariesElement, this.options.modifiers.flip.padding); // store the computed placement inside `originalPlacement`

      data.originalPlacement = data.placement;
      data.positionFixed = this.options.positionFixed; // compute the popper offsets

      data.offsets.popper = getPopperOffsets(this.popper, data.offsets.reference, data.placement);
      data.offsets.popper.position = this.options.positionFixed ? 'fixed' : 'absolute'; // run the modifiers

      data = runModifiers(this.modifiers, data); // the first `update` will call `onCreate` callback
      // the other ones will call `onUpdate` callback

      if (!this.state.isCreated) {
        this.state.isCreated = true;
        this.options.onCreate(data);
      } else {
        this.options.onUpdate(data);
      }
    }
    /**
     * Helper used to know if the given modifier is enabled.
     * @method
     * @memberof Popper.Utils
     * @returns {Boolean}
     */


    function isModifierEnabled(modifiers, modifierName) {
      return modifiers.some(function (_ref) {
        var name = _ref.name,
            enabled = _ref.enabled;
        return enabled && name === modifierName;
      });
    }
    /**
     * Get the prefixed supported property name
     * @method
     * @memberof Popper.Utils
     * @argument {String} property (camelCase)
     * @returns {String} prefixed property (camelCase or PascalCase, depending on the vendor prefix)
     */


    function getSupportedPropertyName(property) {
      var prefixes = [false, 'ms', 'Webkit', 'Moz', 'O'];
      var upperProp = property.charAt(0).toUpperCase() + property.slice(1);

      for (var i = 0; i < prefixes.length; i++) {
        var prefix = prefixes[i];
        var toCheck = prefix ? '' + prefix + upperProp : property;

        if (typeof document.body.style[toCheck] !== 'undefined') {
          return toCheck;
        }
      }

      return null;
    }
    /**
     * Destroys the popper.
     * @method
     * @memberof Popper
     */


    function destroy() {
      this.state.isDestroyed = true; // touch DOM only if `applyStyle` modifier is enabled

      if (isModifierEnabled(this.modifiers, 'applyStyle')) {
        this.popper.removeAttribute('x-placement');
        this.popper.style.position = '';
        this.popper.style.top = '';
        this.popper.style.left = '';
        this.popper.style.right = '';
        this.popper.style.bottom = '';
        this.popper.style.willChange = '';
        this.popper.style[getSupportedPropertyName('transform')] = '';
      }

      this.disableEventListeners(); // remove the popper if user explicitly asked for the deletion on destroy
      // do not use `remove` because IE11 doesn't support it

      if (this.options.removeOnDestroy) {
        this.popper.parentNode.removeChild(this.popper);
      }

      return this;
    }
    /**
     * Get the window associated with the element
     * @argument {Element} element
     * @returns {Window}
     */


    function getWindow(element) {
      var ownerDocument = element.ownerDocument;
      return ownerDocument ? ownerDocument.defaultView : window;
    }

    function attachToScrollParents(scrollParent, event, callback, scrollParents) {
      var isBody = scrollParent.nodeName === 'BODY';
      var target = isBody ? scrollParent.ownerDocument.defaultView : scrollParent;
      target.addEventListener(event, callback, {
        passive: true
      });

      if (!isBody) {
        attachToScrollParents(getScrollParent(target.parentNode), event, callback, scrollParents);
      }

      scrollParents.push(target);
    }
    /**
     * Setup needed event listeners used to update the popper position
     * @method
     * @memberof Popper.Utils
     * @private
     */


    function setupEventListeners(reference, options, state, updateBound) {
      // Resize event listener on window
      state.updateBound = updateBound;
      getWindow(reference).addEventListener('resize', state.updateBound, {
        passive: true
      }); // Scroll event listener on scroll parents

      var scrollElement = getScrollParent(reference);
      attachToScrollParents(scrollElement, 'scroll', state.updateBound, state.scrollParents);
      state.scrollElement = scrollElement;
      state.eventsEnabled = true;
      return state;
    }
    /**
     * It will add resize/scroll events and start recalculating
     * position of the popper element when they are triggered.
     * @method
     * @memberof Popper
     */


    function enableEventListeners() {
      if (!this.state.eventsEnabled) {
        this.state = setupEventListeners(this.reference, this.options, this.state, this.scheduleUpdate);
      }
    }
    /**
     * Remove event listeners used to update the popper position
     * @method
     * @memberof Popper.Utils
     * @private
     */


    function removeEventListeners(reference, state) {
      // Remove resize event listener on window
      getWindow(reference).removeEventListener('resize', state.updateBound); // Remove scroll event listener on scroll parents

      state.scrollParents.forEach(function (target) {
        target.removeEventListener('scroll', state.updateBound);
      }); // Reset state

      state.updateBound = null;
      state.scrollParents = [];
      state.scrollElement = null;
      state.eventsEnabled = false;
      return state;
    }
    /**
     * It will remove resize/scroll events and won't recalculate popper position
     * when they are triggered. It also won't trigger `onUpdate` callback anymore,
     * unless you call `update` method manually.
     * @method
     * @memberof Popper
     */


    function disableEventListeners() {
      if (this.state.eventsEnabled) {
        cancelAnimationFrame(this.scheduleUpdate);
        this.state = removeEventListeners(this.reference, this.state);
      }
    }
    /**
     * Tells if a given input is a number
     * @method
     * @memberof Popper.Utils
     * @param {*} input to check
     * @return {Boolean}
     */


    function isNumeric(n) {
      return n !== '' && !isNaN(parseFloat(n)) && isFinite(n);
    }
    /**
     * Set the style to the given popper
     * @method
     * @memberof Popper.Utils
     * @argument {Element} element - Element to apply the style to
     * @argument {Object} styles
     * Object with a list of properties and values which will be applied to the element
     */


    function setStyles(element, styles) {
      Object.keys(styles).forEach(function (prop) {
        var unit = ''; // add unit if the value is numeric and is one of the following

        if (['width', 'height', 'top', 'right', 'bottom', 'left'].indexOf(prop) !== -1 && isNumeric(styles[prop])) {
          unit = 'px';
        }

        element.style[prop] = styles[prop] + unit;
      });
    }
    /**
     * Set the attributes to the given popper
     * @method
     * @memberof Popper.Utils
     * @argument {Element} element - Element to apply the attributes to
     * @argument {Object} styles
     * Object with a list of properties and values which will be applied to the element
     */


    function setAttributes(element, attributes) {
      Object.keys(attributes).forEach(function (prop) {
        var value = attributes[prop];

        if (value !== false) {
          element.setAttribute(prop, attributes[prop]);
        } else {
          element.removeAttribute(prop);
        }
      });
    }
    /**
     * @function
     * @memberof Modifiers
     * @argument {Object} data - The data object generated by `update` method
     * @argument {Object} data.styles - List of style properties - values to apply to popper element
     * @argument {Object} data.attributes - List of attribute properties - values to apply to popper element
     * @argument {Object} options - Modifiers configuration and options
     * @returns {Object} The same data object
     */


    function applyStyle(data) {
      // any property present in `data.styles` will be applied to the popper,
      // in this way we can make the 3rd party modifiers add custom styles to it
      // Be aware, modifiers could override the properties defined in the previous
      // lines of this modifier!
      setStyles(data.instance.popper, data.styles); // any property present in `data.attributes` will be applied to the popper,
      // they will be set as HTML attributes of the element

      setAttributes(data.instance.popper, data.attributes); // if arrowElement is defined and arrowStyles has some properties

      if (data.arrowElement && Object.keys(data.arrowStyles).length) {
        setStyles(data.arrowElement, data.arrowStyles);
      }

      return data;
    }
    /**
     * Set the x-placement attribute before everything else because it could be used
     * to add margins to the popper margins needs to be calculated to get the
     * correct popper offsets.
     * @method
     * @memberof Popper.modifiers
     * @param {HTMLElement} reference - The reference element used to position the popper
     * @param {HTMLElement} popper - The HTML element used as popper
     * @param {Object} options - Popper.js options
     */


    function applyStyleOnLoad(reference, popper, options, modifierOptions, state) {
      // compute reference element offsets
      var referenceOffsets = getReferenceOffsets(state, popper, reference, options.positionFixed); // compute auto placement, store placement inside the data object,
      // modifiers will be able to edit `placement` if needed
      // and refer to originalPlacement to know the original value

      var placement = computeAutoPlacement(options.placement, referenceOffsets, popper, reference, options.modifiers.flip.boundariesElement, options.modifiers.flip.padding);
      popper.setAttribute('x-placement', placement); // Apply `position` to popper before anything else because
      // without the position applied we can't guarantee correct computations

      setStyles(popper, {
        position: options.positionFixed ? 'fixed' : 'absolute'
      });
      return options;
    }
    /**
     * @function
     * @memberof Popper.Utils
     * @argument {Object} data - The data object generated by `update` method
     * @argument {Boolean} shouldRound - If the offsets should be rounded at all
     * @returns {Object} The popper's position offsets rounded
     *
     * The tale of pixel-perfect positioning. It's still not 100% perfect, but as
     * good as it can be within reason.
     * Discussion here: https://github.com/FezVrasta/popper.js/pull/715
     *
     * Low DPI screens cause a popper to be blurry if not using full pixels (Safari
     * as well on High DPI screens).
     *
     * Firefox prefers no rounding for positioning and does not have blurriness on
     * high DPI screens.
     *
     * Only horizontal placement and left/right values need to be considered.
     */


    function getRoundedOffsets(data, shouldRound) {
      var _data$offsets = data.offsets,
          popper = _data$offsets.popper,
          reference = _data$offsets.reference;
      var round = Math.round,
          floor = Math.floor;

      var noRound = function noRound(v) {
        return v;
      };

      var referenceWidth = round(reference.width);
      var popperWidth = round(popper.width);
      var isVertical = ['left', 'right'].indexOf(data.placement) !== -1;
      var isVariation = data.placement.indexOf('-') !== -1;
      var sameWidthParity = referenceWidth % 2 === popperWidth % 2;
      var bothOddWidth = referenceWidth % 2 === 1 && popperWidth % 2 === 1;
      var horizontalToInteger = !shouldRound ? noRound : isVertical || isVariation || sameWidthParity ? round : floor;
      var verticalToInteger = !shouldRound ? noRound : round;
      return {
        left: horizontalToInteger(bothOddWidth && !isVariation && shouldRound ? popper.left - 1 : popper.left),
        top: verticalToInteger(popper.top),
        bottom: verticalToInteger(popper.bottom),
        right: horizontalToInteger(popper.right)
      };
    }

    var isFirefox = isBrowser && /Firefox/i.test(navigator.userAgent);
    /**
     * @function
     * @memberof Modifiers
     * @argument {Object} data - The data object generated by `update` method
     * @argument {Object} options - Modifiers configuration and options
     * @returns {Object} The data object, properly modified
     */

    function computeStyle(data, options) {
      var x = options.x,
          y = options.y;
      var popper = data.offsets.popper; // Remove this legacy support in Popper.js v2

      var legacyGpuAccelerationOption = find(data.instance.modifiers, function (modifier) {
        return modifier.name === 'applyStyle';
      }).gpuAcceleration;

      if (legacyGpuAccelerationOption !== undefined) {
        console.warn('WARNING: `gpuAcceleration` option moved to `computeStyle` modifier and will not be supported in future versions of Popper.js!');
      }

      var gpuAcceleration = legacyGpuAccelerationOption !== undefined ? legacyGpuAccelerationOption : options.gpuAcceleration;
      var offsetParent = getOffsetParent(data.instance.popper);
      var offsetParentRect = getBoundingClientRect(offsetParent); // Styles

      var styles = {
        position: popper.position
      };
      var offsets = getRoundedOffsets(data, window.devicePixelRatio < 2 || !isFirefox);
      var sideA = x === 'bottom' ? 'top' : 'bottom';
      var sideB = y === 'right' ? 'left' : 'right'; // if gpuAcceleration is set to `true` and transform is supported,
      //  we use `translate3d` to apply the position to the popper we
      // automatically use the supported prefixed version if needed

      var prefixedProperty = getSupportedPropertyName('transform'); // now, let's make a step back and look at this code closely (wtf?)
      // If the content of the popper grows once it's been positioned, it
      // may happen that the popper gets misplaced because of the new content
      // overflowing its reference element
      // To avoid this problem, we provide two options (x and y), which allow
      // the consumer to define the offset origin.
      // If we position a popper on top of a reference element, we can set
      // `x` to `top` to make the popper grow towards its top instead of
      // its bottom.

      var left = void 0,
          top = void 0;

      if (sideA === 'bottom') {
        // when offsetParent is <html> the positioning is relative to the bottom of the screen (excluding the scrollbar)
        // and not the bottom of the html element
        if (offsetParent.nodeName === 'HTML') {
          top = -offsetParent.clientHeight + offsets.bottom;
        } else {
          top = -offsetParentRect.height + offsets.bottom;
        }
      } else {
        top = offsets.top;
      }

      if (sideB === 'right') {
        if (offsetParent.nodeName === 'HTML') {
          left = -offsetParent.clientWidth + offsets.right;
        } else {
          left = -offsetParentRect.width + offsets.right;
        }
      } else {
        left = offsets.left;
      }

      if (gpuAcceleration && prefixedProperty) {
        styles[prefixedProperty] = 'translate3d(' + left + 'px, ' + top + 'px, 0)';
        styles[sideA] = 0;
        styles[sideB] = 0;
        styles.willChange = 'transform';
      } else {
        // othwerise, we use the standard `top`, `left`, `bottom` and `right` properties
        var invertTop = sideA === 'bottom' ? -1 : 1;
        var invertLeft = sideB === 'right' ? -1 : 1;
        styles[sideA] = top * invertTop;
        styles[sideB] = left * invertLeft;
        styles.willChange = sideA + ', ' + sideB;
      } // Attributes


      var attributes = {
        'x-placement': data.placement
      }; // Update `data` attributes, styles and arrowStyles

      data.attributes = _extends$1({}, attributes, data.attributes);
      data.styles = _extends$1({}, styles, data.styles);
      data.arrowStyles = _extends$1({}, data.offsets.arrow, data.arrowStyles);
      return data;
    }
    /**
     * Helper used to know if the given modifier depends from another one.<br />
     * It checks if the needed modifier is listed and enabled.
     * @method
     * @memberof Popper.Utils
     * @param {Array} modifiers - list of modifiers
     * @param {String} requestingName - name of requesting modifier
     * @param {String} requestedName - name of requested modifier
     * @returns {Boolean}
     */


    function isModifierRequired(modifiers, requestingName, requestedName) {
      var requesting = find(modifiers, function (_ref) {
        var name = _ref.name;
        return name === requestingName;
      });
      var isRequired = !!requesting && modifiers.some(function (modifier) {
        return modifier.name === requestedName && modifier.enabled && modifier.order < requesting.order;
      });

      if (!isRequired) {
        var _requesting = '`' + requestingName + '`';

        var requested = '`' + requestedName + '`';
        console.warn(requested + ' modifier is required by ' + _requesting + ' modifier in order to work, be sure to include it before ' + _requesting + '!');
      }

      return isRequired;
    }
    /**
     * @function
     * @memberof Modifiers
     * @argument {Object} data - The data object generated by update method
     * @argument {Object} options - Modifiers configuration and options
     * @returns {Object} The data object, properly modified
     */


    function arrow(data, options) {
      var _data$offsets$arrow; // arrow depends on keepTogether in order to work


      if (!isModifierRequired(data.instance.modifiers, 'arrow', 'keepTogether')) {
        return data;
      }

      var arrowElement = options.element; // if arrowElement is a string, suppose it's a CSS selector

      if (typeof arrowElement === 'string') {
        arrowElement = data.instance.popper.querySelector(arrowElement); // if arrowElement is not found, don't run the modifier

        if (!arrowElement) {
          return data;
        }
      } else {
        // if the arrowElement isn't a query selector we must check that the
        // provided DOM node is child of its popper node
        if (!data.instance.popper.contains(arrowElement)) {
          console.warn('WARNING: `arrow.element` must be child of its popper element!');
          return data;
        }
      }

      var placement = data.placement.split('-')[0];
      var _data$offsets = data.offsets,
          popper = _data$offsets.popper,
          reference = _data$offsets.reference;
      var isVertical = ['left', 'right'].indexOf(placement) !== -1;
      var len = isVertical ? 'height' : 'width';
      var sideCapitalized = isVertical ? 'Top' : 'Left';
      var side = sideCapitalized.toLowerCase();
      var altSide = isVertical ? 'left' : 'top';
      var opSide = isVertical ? 'bottom' : 'right';
      var arrowElementSize = getOuterSizes(arrowElement)[len]; //
      // extends keepTogether behavior making sure the popper and its
      // reference have enough pixels in conjunction
      //
      // top/left side

      if (reference[opSide] - arrowElementSize < popper[side]) {
        data.offsets.popper[side] -= popper[side] - (reference[opSide] - arrowElementSize);
      } // bottom/right side


      if (reference[side] + arrowElementSize > popper[opSide]) {
        data.offsets.popper[side] += reference[side] + arrowElementSize - popper[opSide];
      }

      data.offsets.popper = getClientRect(data.offsets.popper); // compute center of the popper

      var center = reference[side] + reference[len] / 2 - arrowElementSize / 2; // Compute the sideValue using the updated popper offsets
      // take popper margin in account because we don't have this info available

      var css = getStyleComputedProperty(data.instance.popper);
      var popperMarginSide = parseFloat(css['margin' + sideCapitalized], 10);
      var popperBorderSide = parseFloat(css['border' + sideCapitalized + 'Width'], 10);
      var sideValue = center - data.offsets.popper[side] - popperMarginSide - popperBorderSide; // prevent arrowElement from being placed not contiguously to its popper

      sideValue = Math.max(Math.min(popper[len] - arrowElementSize, sideValue), 0);
      data.arrowElement = arrowElement;
      data.offsets.arrow = (_data$offsets$arrow = {}, defineProperty(_data$offsets$arrow, side, Math.round(sideValue)), defineProperty(_data$offsets$arrow, altSide, ''), _data$offsets$arrow);
      return data;
    }
    /**
     * Get the opposite placement variation of the given one
     * @method
     * @memberof Popper.Utils
     * @argument {String} placement variation
     * @returns {String} flipped placement variation
     */


    function getOppositeVariation(variation) {
      if (variation === 'end') {
        return 'start';
      } else if (variation === 'start') {
        return 'end';
      }

      return variation;
    }
    /**
     * List of accepted placements to use as values of the `placement` option.<br />
     * Valid placements are:
     * - `auto`
     * - `top`
     * - `right`
     * - `bottom`
     * - `left`
     *
     * Each placement can have a variation from this list:
     * - `-start`
     * - `-end`
     *
     * Variations are interpreted easily if you think of them as the left to right
     * written languages. Horizontally (`top` and `bottom`), `start` is left and `end`
     * is right.<br />
     * Vertically (`left` and `right`), `start` is top and `end` is bottom.
     *
     * Some valid examples are:
     * - `top-end` (on top of reference, right aligned)
     * - `right-start` (on right of reference, top aligned)
     * - `bottom` (on bottom, centered)
     * - `auto-end` (on the side with more space available, alignment depends by placement)
     *
     * @static
     * @type {Array}
     * @enum {String}
     * @readonly
     * @method placements
     * @memberof Popper
     */


    var placements = ['auto-start', 'auto', 'auto-end', 'top-start', 'top', 'top-end', 'right-start', 'right', 'right-end', 'bottom-end', 'bottom', 'bottom-start', 'left-end', 'left', 'left-start']; // Get rid of `auto` `auto-start` and `auto-end`

    var validPlacements = placements.slice(3);
    /**
     * Given an initial placement, returns all the subsequent placements
     * clockwise (or counter-clockwise).
     *
     * @method
     * @memberof Popper.Utils
     * @argument {String} placement - A valid placement (it accepts variations)
     * @argument {Boolean} counter - Set to true to walk the placements counterclockwise
     * @returns {Array} placements including their variations
     */

    function clockwise(placement) {
      var counter = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : false;
      var index = validPlacements.indexOf(placement);
      var arr = validPlacements.slice(index + 1).concat(validPlacements.slice(0, index));
      return counter ? arr.reverse() : arr;
    }

    var BEHAVIORS = {
      FLIP: 'flip',
      CLOCKWISE: 'clockwise',
      COUNTERCLOCKWISE: 'counterclockwise'
    };
    /**
     * @function
     * @memberof Modifiers
     * @argument {Object} data - The data object generated by update method
     * @argument {Object} options - Modifiers configuration and options
     * @returns {Object} The data object, properly modified
     */

    function flip(data, options) {
      // if `inner` modifier is enabled, we can't use the `flip` modifier
      if (isModifierEnabled(data.instance.modifiers, 'inner')) {
        return data;
      }

      if (data.flipped && data.placement === data.originalPlacement) {
        // seems like flip is trying to loop, probably there's not enough space on any of the flippable sides
        return data;
      }

      var boundaries = getBoundaries(data.instance.popper, data.instance.reference, options.padding, options.boundariesElement, data.positionFixed);
      var placement = data.placement.split('-')[0];
      var placementOpposite = getOppositePlacement(placement);
      var variation = data.placement.split('-')[1] || '';
      var flipOrder = [];

      switch (options.behavior) {
        case BEHAVIORS.FLIP:
          flipOrder = [placement, placementOpposite];
          break;

        case BEHAVIORS.CLOCKWISE:
          flipOrder = clockwise(placement);
          break;

        case BEHAVIORS.COUNTERCLOCKWISE:
          flipOrder = clockwise(placement, true);
          break;

        default:
          flipOrder = options.behavior;
      }

      flipOrder.forEach(function (step, index) {
        if (placement !== step || flipOrder.length === index + 1) {
          return data;
        }

        placement = data.placement.split('-')[0];
        placementOpposite = getOppositePlacement(placement);
        var popperOffsets = data.offsets.popper;
        var refOffsets = data.offsets.reference; // using floor because the reference offsets may contain decimals we are not going to consider here

        var floor = Math.floor;
        var overlapsRef = placement === 'left' && floor(popperOffsets.right) > floor(refOffsets.left) || placement === 'right' && floor(popperOffsets.left) < floor(refOffsets.right) || placement === 'top' && floor(popperOffsets.bottom) > floor(refOffsets.top) || placement === 'bottom' && floor(popperOffsets.top) < floor(refOffsets.bottom);
        var overflowsLeft = floor(popperOffsets.left) < floor(boundaries.left);
        var overflowsRight = floor(popperOffsets.right) > floor(boundaries.right);
        var overflowsTop = floor(popperOffsets.top) < floor(boundaries.top);
        var overflowsBottom = floor(popperOffsets.bottom) > floor(boundaries.bottom);
        var overflowsBoundaries = placement === 'left' && overflowsLeft || placement === 'right' && overflowsRight || placement === 'top' && overflowsTop || placement === 'bottom' && overflowsBottom; // flip the variation if required

        var isVertical = ['top', 'bottom'].indexOf(placement) !== -1; // flips variation if reference element overflows boundaries

        var flippedVariationByRef = !!options.flipVariations && (isVertical && variation === 'start' && overflowsLeft || isVertical && variation === 'end' && overflowsRight || !isVertical && variation === 'start' && overflowsTop || !isVertical && variation === 'end' && overflowsBottom); // flips variation if popper content overflows boundaries

        var flippedVariationByContent = !!options.flipVariationsByContent && (isVertical && variation === 'start' && overflowsRight || isVertical && variation === 'end' && overflowsLeft || !isVertical && variation === 'start' && overflowsBottom || !isVertical && variation === 'end' && overflowsTop);
        var flippedVariation = flippedVariationByRef || flippedVariationByContent;

        if (overlapsRef || overflowsBoundaries || flippedVariation) {
          // this boolean to detect any flip loop
          data.flipped = true;

          if (overlapsRef || overflowsBoundaries) {
            placement = flipOrder[index + 1];
          }

          if (flippedVariation) {
            variation = getOppositeVariation(variation);
          }

          data.placement = placement + (variation ? '-' + variation : ''); // this object contains `position`, we want to preserve it along with
          // any additional property we may add in the future

          data.offsets.popper = _extends$1({}, data.offsets.popper, getPopperOffsets(data.instance.popper, data.offsets.reference, data.placement));
          data = runModifiers(data.instance.modifiers, data, 'flip');
        }
      });
      return data;
    }
    /**
     * @function
     * @memberof Modifiers
     * @argument {Object} data - The data object generated by update method
     * @argument {Object} options - Modifiers configuration and options
     * @returns {Object} The data object, properly modified
     */


    function keepTogether(data) {
      var _data$offsets = data.offsets,
          popper = _data$offsets.popper,
          reference = _data$offsets.reference;
      var placement = data.placement.split('-')[0];
      var floor = Math.floor;
      var isVertical = ['top', 'bottom'].indexOf(placement) !== -1;
      var side = isVertical ? 'right' : 'bottom';
      var opSide = isVertical ? 'left' : 'top';
      var measurement = isVertical ? 'width' : 'height';

      if (popper[side] < floor(reference[opSide])) {
        data.offsets.popper[opSide] = floor(reference[opSide]) - popper[measurement];
      }

      if (popper[opSide] > floor(reference[side])) {
        data.offsets.popper[opSide] = floor(reference[side]);
      }

      return data;
    }
    /**
     * Converts a string containing value + unit into a px value number
     * @function
     * @memberof {modifiers~offset}
     * @private
     * @argument {String} str - Value + unit string
     * @argument {String} measurement - `height` or `width`
     * @argument {Object} popperOffsets
     * @argument {Object} referenceOffsets
     * @returns {Number|String}
     * Value in pixels, or original string if no values were extracted
     */


    function toValue(str, measurement, popperOffsets, referenceOffsets) {
      // separate value from unit
      var split = str.match(/((?:\-|\+)?\d*\.?\d*)(.*)/);
      var value = +split[1];
      var unit = split[2]; // If it's not a number it's an operator, I guess

      if (!value) {
        return str;
      }

      if (unit.indexOf('%') === 0) {
        var element = void 0;

        switch (unit) {
          case '%p':
            element = popperOffsets;
            break;

          case '%':
          case '%r':
          default:
            element = referenceOffsets;
        }

        var rect = getClientRect(element);
        return rect[measurement] / 100 * value;
      } else if (unit === 'vh' || unit === 'vw') {
        // if is a vh or vw, we calculate the size based on the viewport
        var size = void 0;

        if (unit === 'vh') {
          size = Math.max(document.documentElement.clientHeight, window.innerHeight || 0);
        } else {
          size = Math.max(document.documentElement.clientWidth, window.innerWidth || 0);
        }

        return size / 100 * value;
      } else {
        // if is an explicit pixel unit, we get rid of the unit and keep the value
        // if is an implicit unit, it's px, and we return just the value
        return value;
      }
    }
    /**
     * Parse an `offset` string to extrapolate `x` and `y` numeric offsets.
     * @function
     * @memberof {modifiers~offset}
     * @private
     * @argument {String} offset
     * @argument {Object} popperOffsets
     * @argument {Object} referenceOffsets
     * @argument {String} basePlacement
     * @returns {Array} a two cells array with x and y offsets in numbers
     */


    function parseOffset(offset, popperOffsets, referenceOffsets, basePlacement) {
      var offsets = [0, 0]; // Use height if placement is left or right and index is 0 otherwise use width
      // in this way the first offset will use an axis and the second one
      // will use the other one

      var useHeight = ['right', 'left'].indexOf(basePlacement) !== -1; // Split the offset string to obtain a list of values and operands
      // The regex addresses values with the plus or minus sign in front (+10, -20, etc)

      var fragments = offset.split(/(\+|\-)/).map(function (frag) {
        return frag.trim();
      }); // Detect if the offset string contains a pair of values or a single one
      // they could be separated by comma or space

      var divider = fragments.indexOf(find(fragments, function (frag) {
        return frag.search(/,|\s/) !== -1;
      }));

      if (fragments[divider] && fragments[divider].indexOf(',') === -1) {
        console.warn('Offsets separated by white space(s) are deprecated, use a comma (,) instead.');
      } // If divider is found, we divide the list of values and operands to divide
      // them by ofset X and Y.


      var splitRegex = /\s*,\s*|\s+/;
      var ops = divider !== -1 ? [fragments.slice(0, divider).concat([fragments[divider].split(splitRegex)[0]]), [fragments[divider].split(splitRegex)[1]].concat(fragments.slice(divider + 1))] : [fragments]; // Convert the values with units to absolute pixels to allow our computations

      ops = ops.map(function (op, index) {
        // Most of the units rely on the orientation of the popper
        var measurement = (index === 1 ? !useHeight : useHeight) ? 'height' : 'width';
        var mergeWithPrevious = false;
        return op // This aggregates any `+` or `-` sign that aren't considered operators
        // e.g.: 10 + +5 => [10, +, +5]
        .reduce(function (a, b) {
          if (a[a.length - 1] === '' && ['+', '-'].indexOf(b) !== -1) {
            a[a.length - 1] = b;
            mergeWithPrevious = true;
            return a;
          } else if (mergeWithPrevious) {
            a[a.length - 1] += b;
            mergeWithPrevious = false;
            return a;
          } else {
            return a.concat(b);
          }
        }, []) // Here we convert the string values into number values (in px)
        .map(function (str) {
          return toValue(str, measurement, popperOffsets, referenceOffsets);
        });
      }); // Loop trough the offsets arrays and execute the operations

      ops.forEach(function (op, index) {
        op.forEach(function (frag, index2) {
          if (isNumeric(frag)) {
            offsets[index] += frag * (op[index2 - 1] === '-' ? -1 : 1);
          }
        });
      });
      return offsets;
    }
    /**
     * @function
     * @memberof Modifiers
     * @argument {Object} data - The data object generated by update method
     * @argument {Object} options - Modifiers configuration and options
     * @argument {Number|String} options.offset=0
     * The offset value as described in the modifier description
     * @returns {Object} The data object, properly modified
     */


    function offset(data, _ref) {
      var offset = _ref.offset;
      var placement = data.placement,
          _data$offsets = data.offsets,
          popper = _data$offsets.popper,
          reference = _data$offsets.reference;
      var basePlacement = placement.split('-')[0];
      var offsets = void 0;

      if (isNumeric(+offset)) {
        offsets = [+offset, 0];
      } else {
        offsets = parseOffset(offset, popper, reference, basePlacement);
      }

      if (basePlacement === 'left') {
        popper.top += offsets[0];
        popper.left -= offsets[1];
      } else if (basePlacement === 'right') {
        popper.top += offsets[0];
        popper.left += offsets[1];
      } else if (basePlacement === 'top') {
        popper.left += offsets[0];
        popper.top -= offsets[1];
      } else if (basePlacement === 'bottom') {
        popper.left += offsets[0];
        popper.top += offsets[1];
      }

      data.popper = popper;
      return data;
    }
    /**
     * @function
     * @memberof Modifiers
     * @argument {Object} data - The data object generated by `update` method
     * @argument {Object} options - Modifiers configuration and options
     * @returns {Object} The data object, properly modified
     */


    function preventOverflow(data, options) {
      var boundariesElement = options.boundariesElement || getOffsetParent(data.instance.popper); // If offsetParent is the reference element, we really want to
      // go one step up and use the next offsetParent as reference to
      // avoid to make this modifier completely useless and look like broken

      if (data.instance.reference === boundariesElement) {
        boundariesElement = getOffsetParent(boundariesElement);
      } // NOTE: DOM access here
      // resets the popper's position so that the document size can be calculated excluding
      // the size of the popper element itself


      var transformProp = getSupportedPropertyName('transform');
      var popperStyles = data.instance.popper.style; // assignment to help minification

      var top = popperStyles.top,
          left = popperStyles.left,
          transform = popperStyles[transformProp];
      popperStyles.top = '';
      popperStyles.left = '';
      popperStyles[transformProp] = '';
      var boundaries = getBoundaries(data.instance.popper, data.instance.reference, options.padding, boundariesElement, data.positionFixed); // NOTE: DOM access here
      // restores the original style properties after the offsets have been computed

      popperStyles.top = top;
      popperStyles.left = left;
      popperStyles[transformProp] = transform;
      options.boundaries = boundaries;
      var order = options.priority;
      var popper = data.offsets.popper;
      var check = {
        primary: function primary(placement) {
          var value = popper[placement];

          if (popper[placement] < boundaries[placement] && !options.escapeWithReference) {
            value = Math.max(popper[placement], boundaries[placement]);
          }

          return defineProperty({}, placement, value);
        },
        secondary: function secondary(placement) {
          var mainSide = placement === 'right' ? 'left' : 'top';
          var value = popper[mainSide];

          if (popper[placement] > boundaries[placement] && !options.escapeWithReference) {
            value = Math.min(popper[mainSide], boundaries[placement] - (placement === 'right' ? popper.width : popper.height));
          }

          return defineProperty({}, mainSide, value);
        }
      };
      order.forEach(function (placement) {
        var side = ['left', 'top'].indexOf(placement) !== -1 ? 'primary' : 'secondary';
        popper = _extends$1({}, popper, check[side](placement));
      });
      data.offsets.popper = popper;
      return data;
    }
    /**
     * @function
     * @memberof Modifiers
     * @argument {Object} data - The data object generated by `update` method
     * @argument {Object} options - Modifiers configuration and options
     * @returns {Object} The data object, properly modified
     */


    function shift(data) {
      var placement = data.placement;
      var basePlacement = placement.split('-')[0];
      var shiftvariation = placement.split('-')[1]; // if shift shiftvariation is specified, run the modifier

      if (shiftvariation) {
        var _data$offsets = data.offsets,
            reference = _data$offsets.reference,
            popper = _data$offsets.popper;
        var isVertical = ['bottom', 'top'].indexOf(basePlacement) !== -1;
        var side = isVertical ? 'left' : 'top';
        var measurement = isVertical ? 'width' : 'height';
        var shiftOffsets = {
          start: defineProperty({}, side, reference[side]),
          end: defineProperty({}, side, reference[side] + reference[measurement] - popper[measurement])
        };
        data.offsets.popper = _extends$1({}, popper, shiftOffsets[shiftvariation]);
      }

      return data;
    }
    /**
     * @function
     * @memberof Modifiers
     * @argument {Object} data - The data object generated by update method
     * @argument {Object} options - Modifiers configuration and options
     * @returns {Object} The data object, properly modified
     */


    function hide(data) {
      if (!isModifierRequired(data.instance.modifiers, 'hide', 'preventOverflow')) {
        return data;
      }

      var refRect = data.offsets.reference;
      var bound = find(data.instance.modifiers, function (modifier) {
        return modifier.name === 'preventOverflow';
      }).boundaries;

      if (refRect.bottom < bound.top || refRect.left > bound.right || refRect.top > bound.bottom || refRect.right < bound.left) {
        // Avoid unnecessary DOM access if visibility hasn't changed
        if (data.hide === true) {
          return data;
        }

        data.hide = true;
        data.attributes['x-out-of-boundaries'] = '';
      } else {
        // Avoid unnecessary DOM access if visibility hasn't changed
        if (data.hide === false) {
          return data;
        }

        data.hide = false;
        data.attributes['x-out-of-boundaries'] = false;
      }

      return data;
    }
    /**
     * @function
     * @memberof Modifiers
     * @argument {Object} data - The data object generated by `update` method
     * @argument {Object} options - Modifiers configuration and options
     * @returns {Object} The data object, properly modified
     */


    function inner(data) {
      var placement = data.placement;
      var basePlacement = placement.split('-')[0];
      var _data$offsets = data.offsets,
          popper = _data$offsets.popper,
          reference = _data$offsets.reference;
      var isHoriz = ['left', 'right'].indexOf(basePlacement) !== -1;
      var subtractLength = ['top', 'left'].indexOf(basePlacement) === -1;
      popper[isHoriz ? 'left' : 'top'] = reference[basePlacement] - (subtractLength ? popper[isHoriz ? 'width' : 'height'] : 0);
      data.placement = getOppositePlacement(placement);
      data.offsets.popper = getClientRect(popper);
      return data;
    }
    /**
     * Modifier function, each modifier can have a function of this type assigned
     * to its `fn` property.<br />
     * These functions will be called on each update, this means that you must
     * make sure they are performant enough to avoid performance bottlenecks.
     *
     * @function ModifierFn
     * @argument {dataObject} data - The data object generated by `update` method
     * @argument {Object} options - Modifiers configuration and options
     * @returns {dataObject} The data object, properly modified
     */

    /**
     * Modifiers are plugins used to alter the behavior of your poppers.<br />
     * Popper.js uses a set of 9 modifiers to provide all the basic functionalities
     * needed by the library.
     *
     * Usually you don't want to override the `order`, `fn` and `onLoad` props.
     * All the other properties are configurations that could be tweaked.
     * @namespace modifiers
     */


    var modifiers = {
      /**
       * Modifier used to shift the popper on the start or end of its reference
       * element.<br />
       * It will read the variation of the `placement` property.<br />
       * It can be one either `-end` or `-start`.
       * @memberof modifiers
       * @inner
       */
      shift: {
        /** @prop {number} order=100 - Index used to define the order of execution */
        order: 100,

        /** @prop {Boolean} enabled=true - Whether the modifier is enabled or not */
        enabled: true,

        /** @prop {ModifierFn} */
        fn: shift
      },

      /**
       * The `offset` modifier can shift your popper on both its axis.
       *
       * It accepts the following units:
       * - `px` or unit-less, interpreted as pixels
       * - `%` or `%r`, percentage relative to the length of the reference element
       * - `%p`, percentage relative to the length of the popper element
       * - `vw`, CSS viewport width unit
       * - `vh`, CSS viewport height unit
       *
       * For length is intended the main axis relative to the placement of the popper.<br />
       * This means that if the placement is `top` or `bottom`, the length will be the
       * `width`. In case of `left` or `right`, it will be the `height`.
       *
       * You can provide a single value (as `Number` or `String`), or a pair of values
       * as `String` divided by a comma or one (or more) white spaces.<br />
       * The latter is a deprecated method because it leads to confusion and will be
       * removed in v2.<br />
       * Additionally, it accepts additions and subtractions between different units.
       * Note that multiplications and divisions aren't supported.
       *
       * Valid examples are:
       * ```
       * 10
       * '10%'
       * '10, 10'
       * '10%, 10'
       * '10 + 10%'
       * '10 - 5vh + 3%'
       * '-10px + 5vh, 5px - 6%'
       * ```
       * > **NB**: If you desire to apply offsets to your poppers in a way that may make them overlap
       * > with their reference element, unfortunately, you will have to disable the `flip` modifier.
       * > You can read more on this at this [issue](https://github.com/FezVrasta/popper.js/issues/373).
       *
       * @memberof modifiers
       * @inner
       */
      offset: {
        /** @prop {number} order=200 - Index used to define the order of execution */
        order: 200,

        /** @prop {Boolean} enabled=true - Whether the modifier is enabled or not */
        enabled: true,

        /** @prop {ModifierFn} */
        fn: offset,

        /** @prop {Number|String} offset=0
         * The offset value as described in the modifier description
         */
        offset: 0
      },

      /**
       * Modifier used to prevent the popper from being positioned outside the boundary.
       *
       * A scenario exists where the reference itself is not within the boundaries.<br />
       * We can say it has "escaped the boundaries" — or just "escaped".<br />
       * In this case we need to decide whether the popper should either:
       *
       * - detach from the reference and remain "trapped" in the boundaries, or
       * - if it should ignore the boundary and "escape with its reference"
       *
       * When `escapeWithReference` is set to`true` and reference is completely
       * outside its boundaries, the popper will overflow (or completely leave)
       * the boundaries in order to remain attached to the edge of the reference.
       *
       * @memberof modifiers
       * @inner
       */
      preventOverflow: {
        /** @prop {number} order=300 - Index used to define the order of execution */
        order: 300,

        /** @prop {Boolean} enabled=true - Whether the modifier is enabled or not */
        enabled: true,

        /** @prop {ModifierFn} */
        fn: preventOverflow,

        /**
         * @prop {Array} [priority=['left','right','top','bottom']]
         * Popper will try to prevent overflow following these priorities by default,
         * then, it could overflow on the left and on top of the `boundariesElement`
         */
        priority: ['left', 'right', 'top', 'bottom'],

        /**
         * @prop {number} padding=5
         * Amount of pixel used to define a minimum distance between the boundaries
         * and the popper. This makes sure the popper always has a little padding
         * between the edges of its container
         */
        padding: 5,

        /**
         * @prop {String|HTMLElement} boundariesElement='scrollParent'
         * Boundaries used by the modifier. Can be `scrollParent`, `window`,
         * `viewport` or any DOM element.
         */
        boundariesElement: 'scrollParent'
      },

      /**
       * Modifier used to make sure the reference and its popper stay near each other
       * without leaving any gap between the two. Especially useful when the arrow is
       * enabled and you want to ensure that it points to its reference element.
       * It cares only about the first axis. You can still have poppers with margin
       * between the popper and its reference element.
       * @memberof modifiers
       * @inner
       */
      keepTogether: {
        /** @prop {number} order=400 - Index used to define the order of execution */
        order: 400,

        /** @prop {Boolean} enabled=true - Whether the modifier is enabled or not */
        enabled: true,

        /** @prop {ModifierFn} */
        fn: keepTogether
      },

      /**
       * This modifier is used to move the `arrowElement` of the popper to make
       * sure it is positioned between the reference element and its popper element.
       * It will read the outer size of the `arrowElement` node to detect how many
       * pixels of conjunction are needed.
       *
       * It has no effect if no `arrowElement` is provided.
       * @memberof modifiers
       * @inner
       */
      arrow: {
        /** @prop {number} order=500 - Index used to define the order of execution */
        order: 500,

        /** @prop {Boolean} enabled=true - Whether the modifier is enabled or not */
        enabled: true,

        /** @prop {ModifierFn} */
        fn: arrow,

        /** @prop {String|HTMLElement} element='[x-arrow]' - Selector or node used as arrow */
        element: '[x-arrow]'
      },

      /**
       * Modifier used to flip the popper's placement when it starts to overlap its
       * reference element.
       *
       * Requires the `preventOverflow` modifier before it in order to work.
       *
       * **NOTE:** this modifier will interrupt the current update cycle and will
       * restart it if it detects the need to flip the placement.
       * @memberof modifiers
       * @inner
       */
      flip: {
        /** @prop {number} order=600 - Index used to define the order of execution */
        order: 600,

        /** @prop {Boolean} enabled=true - Whether the modifier is enabled or not */
        enabled: true,

        /** @prop {ModifierFn} */
        fn: flip,

        /**
         * @prop {String|Array} behavior='flip'
         * The behavior used to change the popper's placement. It can be one of
         * `flip`, `clockwise`, `counterclockwise` or an array with a list of valid
         * placements (with optional variations)
         */
        behavior: 'flip',

        /**
         * @prop {number} padding=5
         * The popper will flip if it hits the edges of the `boundariesElement`
         */
        padding: 5,

        /**
         * @prop {String|HTMLElement} boundariesElement='viewport'
         * The element which will define the boundaries of the popper position.
         * The popper will never be placed outside of the defined boundaries
         * (except if `keepTogether` is enabled)
         */
        boundariesElement: 'viewport',

        /**
         * @prop {Boolean} flipVariations=false
         * The popper will switch placement variation between `-start` and `-end` when
         * the reference element overlaps its boundaries.
         *
         * The original placement should have a set variation.
         */
        flipVariations: false,

        /**
         * @prop {Boolean} flipVariationsByContent=false
         * The popper will switch placement variation between `-start` and `-end` when
         * the popper element overlaps its reference boundaries.
         *
         * The original placement should have a set variation.
         */
        flipVariationsByContent: false
      },

      /**
       * Modifier used to make the popper flow toward the inner of the reference element.
       * By default, when this modifier is disabled, the popper will be placed outside
       * the reference element.
       * @memberof modifiers
       * @inner
       */
      inner: {
        /** @prop {number} order=700 - Index used to define the order of execution */
        order: 700,

        /** @prop {Boolean} enabled=false - Whether the modifier is enabled or not */
        enabled: false,

        /** @prop {ModifierFn} */
        fn: inner
      },

      /**
       * Modifier used to hide the popper when its reference element is outside of the
       * popper boundaries. It will set a `x-out-of-boundaries` attribute which can
       * be used to hide with a CSS selector the popper when its reference is
       * out of boundaries.
       *
       * Requires the `preventOverflow` modifier before it in order to work.
       * @memberof modifiers
       * @inner
       */
      hide: {
        /** @prop {number} order=800 - Index used to define the order of execution */
        order: 800,

        /** @prop {Boolean} enabled=true - Whether the modifier is enabled or not */
        enabled: true,

        /** @prop {ModifierFn} */
        fn: hide
      },

      /**
       * Computes the style that will be applied to the popper element to gets
       * properly positioned.
       *
       * Note that this modifier will not touch the DOM, it just prepares the styles
       * so that `applyStyle` modifier can apply it. This separation is useful
       * in case you need to replace `applyStyle` with a custom implementation.
       *
       * This modifier has `850` as `order` value to maintain backward compatibility
       * with previous versions of Popper.js. Expect the modifiers ordering method
       * to change in future major versions of the library.
       *
       * @memberof modifiers
       * @inner
       */
      computeStyle: {
        /** @prop {number} order=850 - Index used to define the order of execution */
        order: 850,

        /** @prop {Boolean} enabled=true - Whether the modifier is enabled or not */
        enabled: true,

        /** @prop {ModifierFn} */
        fn: computeStyle,

        /**
         * @prop {Boolean} gpuAcceleration=true
         * If true, it uses the CSS 3D transformation to position the popper.
         * Otherwise, it will use the `top` and `left` properties
         */
        gpuAcceleration: true,

        /**
         * @prop {string} [x='bottom']
         * Where to anchor the X axis (`bottom` or `top`). AKA X offset origin.
         * Change this if your popper should grow in a direction different from `bottom`
         */
        x: 'bottom',

        /**
         * @prop {string} [x='left']
         * Where to anchor the Y axis (`left` or `right`). AKA Y offset origin.
         * Change this if your popper should grow in a direction different from `right`
         */
        y: 'right'
      },

      /**
       * Applies the computed styles to the popper element.
       *
       * All the DOM manipulations are limited to this modifier. This is useful in case
       * you want to integrate Popper.js inside a framework or view library and you
       * want to delegate all the DOM manipulations to it.
       *
       * Note that if you disable this modifier, you must make sure the popper element
       * has its position set to `absolute` before Popper.js can do its work!
       *
       * Just disable this modifier and define your own to achieve the desired effect.
       *
       * @memberof modifiers
       * @inner
       */
      applyStyle: {
        /** @prop {number} order=900 - Index used to define the order of execution */
        order: 900,

        /** @prop {Boolean} enabled=true - Whether the modifier is enabled or not */
        enabled: true,

        /** @prop {ModifierFn} */
        fn: applyStyle,

        /** @prop {Function} */
        onLoad: applyStyleOnLoad,

        /**
         * @deprecated since version 1.10.0, the property moved to `computeStyle` modifier
         * @prop {Boolean} gpuAcceleration=true
         * If true, it uses the CSS 3D transformation to position the popper.
         * Otherwise, it will use the `top` and `left` properties
         */
        gpuAcceleration: undefined
      }
    };
    /**
     * The `dataObject` is an object containing all the information used by Popper.js.
     * This object is passed to modifiers and to the `onCreate` and `onUpdate` callbacks.
     * @name dataObject
     * @property {Object} data.instance The Popper.js instance
     * @property {String} data.placement Placement applied to popper
     * @property {String} data.originalPlacement Placement originally defined on init
     * @property {Boolean} data.flipped True if popper has been flipped by flip modifier
     * @property {Boolean} data.hide True if the reference element is out of boundaries, useful to know when to hide the popper
     * @property {HTMLElement} data.arrowElement Node used as arrow by arrow modifier
     * @property {Object} data.styles Any CSS property defined here will be applied to the popper. It expects the JavaScript nomenclature (eg. `marginBottom`)
     * @property {Object} data.arrowStyles Any CSS property defined here will be applied to the popper arrow. It expects the JavaScript nomenclature (eg. `marginBottom`)
     * @property {Object} data.boundaries Offsets of the popper boundaries
     * @property {Object} data.offsets The measurements of popper, reference and arrow elements
     * @property {Object} data.offsets.popper `top`, `left`, `width`, `height` values
     * @property {Object} data.offsets.reference `top`, `left`, `width`, `height` values
     * @property {Object} data.offsets.arrow] `top` and `left` offsets, only one of them will be different from 0
     */

    /**
     * Default options provided to Popper.js constructor.<br />
     * These can be overridden using the `options` argument of Popper.js.<br />
     * To override an option, simply pass an object with the same
     * structure of the `options` object, as the 3rd argument. For example:
     * ```
     * new Popper(ref, pop, {
     *   modifiers: {
     *     preventOverflow: { enabled: false }
     *   }
     * })
     * ```
     * @type {Object}
     * @static
     * @memberof Popper
     */

    var Defaults = {
      /**
       * Popper's placement.
       * @prop {Popper.placements} placement='bottom'
       */
      placement: 'bottom',

      /**
       * Set this to true if you want popper to position it self in 'fixed' mode
       * @prop {Boolean} positionFixed=false
       */
      positionFixed: false,

      /**
       * Whether events (resize, scroll) are initially enabled.
       * @prop {Boolean} eventsEnabled=true
       */
      eventsEnabled: true,

      /**
       * Set to true if you want to automatically remove the popper when
       * you call the `destroy` method.
       * @prop {Boolean} removeOnDestroy=false
       */
      removeOnDestroy: false,

      /**
       * Callback called when the popper is created.<br />
       * By default, it is set to no-op.<br />
       * Access Popper.js instance with `data.instance`.
       * @prop {onCreate}
       */
      onCreate: function onCreate() {},

      /**
       * Callback called when the popper is updated. This callback is not called
       * on the initialization/creation of the popper, but only on subsequent
       * updates.<br />
       * By default, it is set to no-op.<br />
       * Access Popper.js instance with `data.instance`.
       * @prop {onUpdate}
       */
      onUpdate: function onUpdate() {},

      /**
       * List of modifiers used to modify the offsets before they are applied to the popper.
       * They provide most of the functionalities of Popper.js.
       * @prop {modifiers}
       */
      modifiers: modifiers
    };
    /**
     * @callback onCreate
     * @param {dataObject} data
     */

    /**
     * @callback onUpdate
     * @param {dataObject} data
     */
    // Utils
    // Methods

    var Popper = function () {
      /**
       * Creates a new Popper.js instance.
       * @class Popper
       * @param {Element|referenceObject} reference - The reference element used to position the popper
       * @param {Element} popper - The HTML / XML element used as the popper
       * @param {Object} options - Your custom options to override the ones defined in [Defaults](#defaults)
       * @return {Object} instance - The generated Popper.js instance
       */
      function Popper(reference, popper) {
        var _this = this;

        var options = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : {};
        classCallCheck(this, Popper);

        this.scheduleUpdate = function () {
          return requestAnimationFrame(_this.update);
        }; // make update() debounced, so that it only runs at most once-per-tick


        this.update = debounce(this.update.bind(this)); // with {} we create a new object with the options inside it

        this.options = _extends$1({}, Popper.Defaults, options); // init state

        this.state = {
          isDestroyed: false,
          isCreated: false,
          scrollParents: []
        }; // get reference and popper elements (allow jQuery wrappers)

        this.reference = reference && reference.jquery ? reference[0] : reference;
        this.popper = popper && popper.jquery ? popper[0] : popper; // Deep merge modifiers options

        this.options.modifiers = {};
        Object.keys(_extends$1({}, Popper.Defaults.modifiers, options.modifiers)).forEach(function (name) {
          _this.options.modifiers[name] = _extends$1({}, Popper.Defaults.modifiers[name] || {}, options.modifiers ? options.modifiers[name] : {});
        }); // Refactoring modifiers' list (Object => Array)

        this.modifiers = Object.keys(this.options.modifiers).map(function (name) {
          return _extends$1({
            name: name
          }, _this.options.modifiers[name]);
        }) // sort the modifiers by order
        .sort(function (a, b) {
          return a.order - b.order;
        }); // modifiers have the ability to execute arbitrary code when Popper.js get inited
        // such code is executed in the same order of its modifier
        // they could add new properties to their options configuration
        // BE AWARE: don't add options to `options.modifiers.name` but to `modifierOptions`!

        this.modifiers.forEach(function (modifierOptions) {
          if (modifierOptions.enabled && isFunction(modifierOptions.onLoad)) {
            modifierOptions.onLoad(_this.reference, _this.popper, _this.options, modifierOptions, _this.state);
          }
        }); // fire the first update to position the popper in the right place

        this.update();
        var eventsEnabled = this.options.eventsEnabled;

        if (eventsEnabled) {
          // setup event listeners, they will take care of update the position in specific situations
          this.enableEventListeners();
        }

        this.state.eventsEnabled = eventsEnabled;
      } // We can't use class properties because they don't get listed in the
      // class prototype and break stuff like Sinon stubs


      createClass(Popper, [{
        key: 'update',
        value: function update$$1() {
          return update.call(this);
        }
      }, {
        key: 'destroy',
        value: function destroy$$1() {
          return destroy.call(this);
        }
      }, {
        key: 'enableEventListeners',
        value: function enableEventListeners$$1() {
          return enableEventListeners.call(this);
        }
      }, {
        key: 'disableEventListeners',
        value: function disableEventListeners$$1() {
          return disableEventListeners.call(this);
        }
        /**
         * Schedules an update. It will run on the next UI update available.
         * @method scheduleUpdate
         * @memberof Popper
         */

        /**
         * Collection of utilities useful when writing custom modifiers.
         * Starting from version 1.7, this method is available only if you
         * include `popper-utils.js` before `popper.js`.
         *
         * **DEPRECATION**: This way to access PopperUtils is deprecated
         * and will be removed in v2! Use the PopperUtils module directly instead.
         * Due to the high instability of the methods contained in Utils, we can't
         * guarantee them to follow semver. Use them at your own risk!
         * @static
         * @private
         * @type {Object}
         * @deprecated since version 1.8
         * @member Utils
         * @memberof Popper
         */

      }]);
      return Popper;
    }();
    /**
     * The `referenceObject` is an object that provides an interface compatible with Popper.js
     * and lets you use it as replacement of a real DOM node.<br />
     * You can use this method to position a popper relatively to a set of coordinates
     * in case you don't have a DOM node to use as reference.
     *
     * ```
     * new Popper(referenceObject, popperNode);
     * ```
     *
     * NB: This feature isn't supported in Internet Explorer 10.
     * @name referenceObject
     * @property {Function} data.getBoundingClientRect
     * A function that returns a set of coordinates compatible with the native `getBoundingClientRect` method.
     * @property {number} data.clientWidth
     * An ES6 getter that will return the width of the virtual reference element.
     * @property {number} data.clientHeight
     * An ES6 getter that will return the height of the virtual reference element.
     */


    Popper.Utils = (typeof window !== 'undefined' ? window : global).PopperUtils;
    Popper.placements = placements;
    Popper.Defaults = Defaults;

    var popper = /*#__PURE__*/Object.freeze({
        __proto__: null,
        'default': Popper
    });

    var require$$0 = getCjsExportFromNamespace(popper);

    var vuePopper_min = createCommonjsModule$1(function (module, exports) {
      !function (e, t) {
         module.exports = t(require$$0) ;
      }(commonjsGlobal$1, function (e) {

        function t(e, t, o) {
          e && t && o && (document.addEventListener ? e.addEventListener(t, o, !1) : e.attachEvent("on" + t, o));
        }

        function o(e, t, o) {
          e && t && (document.removeEventListener ? e.removeEventListener(t, o, !1) : e.detachEvent("on" + t, o));
        }

        e = e && e.hasOwnProperty("default") ? e.default : e;
        var n = {
          props: {
            tagName: {
              type: String,
              default: "span"
            },
            trigger: {
              type: String,
              default: "hover",
              validator: function validator(e) {
                return ["clickToOpen", "click", "clickToToggle", "hover", "focus"].indexOf(e) > -1;
              }
            },
            delayOnMouseOver: {
              type: Number,
              default: 10
            },
            delayOnMouseOut: {
              type: Number,
              default: 10
            },
            disabled: {
              type: Boolean,
              default: !1
            },
            content: String,
            enterActiveClass: String,
            leaveActiveClass: String,
            boundariesSelector: String,
            reference: {},
            forceShow: {
              type: Boolean,
              default: !1
            },
            dataValue: {
              default: null
            },
            appendToBody: {
              type: Boolean,
              default: !1
            },
            visibleArrow: {
              type: Boolean,
              default: !0
            },
            transition: {
              type: String,
              default: ""
            },
            stopPropagation: {
              type: Boolean,
              default: !1
            },
            preventDefault: {
              type: Boolean,
              default: !1
            },
            options: {
              type: Object,
              default: function _default() {
                return {};
              }
            }
          },
          data: function data() {
            return {
              referenceElm: null,
              popperJS: null,
              showPopper: !1,
              currentPlacement: "",
              popperOptions: {
                placement: "bottom",
                computeStyle: {
                  gpuAcceleration: !1
                }
              }
            };
          },
          watch: {
            showPopper: function showPopper(e) {
              e ? (this.$emit("show", this), this.popperJS && this.popperJS.enableEventListeners(), this.updatePopper()) : (this.popperJS && this.popperJS.disableEventListeners(), this.$emit("hide", this));
            },
            forceShow: {
              handler: function handler(e) {
                this[e ? "doShow" : "doClose"]();
              },
              immediate: !0
            },
            disabled: function disabled(e) {
              e && (this.showPopper = !1);
            }
          },
          created: function created() {
            this.appendedArrow = !1, this.appendedToBody = !1, this.popperOptions = _extends(this.popperOptions, this.options);
          },
          mounted: function mounted() {
            switch (this.referenceElm = this.reference || this.$slots.reference[0].elm, this.popper = this.$slots.default[0].elm, this.trigger) {
              case "clickToOpen":
                t(this.referenceElm, "click", this.doShow), t(document, "click", this.handleDocumentClick);
                break;

              case "click":
              case "clickToToggle":
                t(this.referenceElm, "click", this.doToggle), t(document, "click", this.handleDocumentClick);
                break;

              case "hover":
                t(this.referenceElm, "mouseover", this.onMouseOver), t(this.popper, "mouseover", this.onMouseOver), t(this.referenceElm, "mouseout", this.onMouseOut), t(this.popper, "mouseout", this.onMouseOut);
                break;

              case "focus":
                t(this.referenceElm, "focus", this.onMouseOver), t(this.popper, "focus", this.onMouseOver), t(this.referenceElm, "blur", this.onMouseOut), t(this.popper, "blur", this.onMouseOut);
            }
          },
          methods: {
            doToggle: function doToggle(e) {
              this.stopPropagation && e.stopPropagation(), this.preventDefault && e.preventDefault(), this.forceShow || (this.showPopper = !this.showPopper);
            },
            doShow: function doShow() {
              this.showPopper = !0;
            },
            doClose: function doClose() {
              this.showPopper = !1;
            },
            doDestroy: function doDestroy() {
              this.showPopper || (this.popperJS && (this.popperJS.destroy(), this.popperJS = null), this.appendedToBody && (this.appendedToBody = !1, document.body.removeChild(this.popper.parentElement)));
            },
            createPopper: function createPopper() {
              var t = this;
              this.$nextTick(function () {
                if (t.visibleArrow && t.appendArrow(t.popper), t.appendToBody && !t.appendedToBody && (t.appendedToBody = !0, document.body.appendChild(t.popper.parentElement)), t.popperJS && t.popperJS.destroy && t.popperJS.destroy(), t.boundariesSelector) {
                  var o = document.querySelector(t.boundariesSelector);
                  o && (t.popperOptions.modifiers = _extends({}, t.popperOptions.modifiers), t.popperOptions.modifiers.preventOverflow = _extends({}, t.popperOptions.modifiers.preventOverflow), t.popperOptions.modifiers.preventOverflow.boundariesElement = o);
                }

                t.popperOptions.onCreate = function () {
                  t.$emit("created", t), t.$nextTick(t.updatePopper);
                }, t.popperJS = new e(t.referenceElm, t.popper, t.popperOptions);
              });
            },
            destroyPopper: function destroyPopper() {
              o(this.referenceElm, "click", this.doToggle), o(this.referenceElm, "mouseup", this.doClose), o(this.referenceElm, "mousedown", this.doShow), o(this.referenceElm, "focus", this.doShow), o(this.referenceElm, "blur", this.doClose), o(this.referenceElm, "mouseout", this.onMouseOut), o(this.referenceElm, "mouseover", this.onMouseOver), o(document, "click", this.handleDocumentClick), this.showPopper = !1, this.doDestroy();
            },
            appendArrow: function appendArrow(e) {
              if (!this.appendedArrow) {
                this.appendedArrow = !0;
                var t = document.createElement("div");
                t.setAttribute("x-arrow", ""), t.className = "popper__arrow", e.appendChild(t);
              }
            },
            updatePopper: function updatePopper() {
              this.popperJS ? this.popperJS.scheduleUpdate() : this.createPopper();
            },
            onMouseOver: function onMouseOver() {
              var e = this;
              clearTimeout(this._timer), this._timer = setTimeout(function () {
                e.showPopper = !0;
              }, this.delayOnMouseOver);
            },
            onMouseOut: function onMouseOut() {
              var e = this;
              clearTimeout(this._timer), this._timer = setTimeout(function () {
                e.showPopper = !1;
              }, this.delayOnMouseOut);
            },
            handleDocumentClick: function handleDocumentClick(e) {
              this.$el && this.referenceElm && !this.elementContains(this.$el, e.target) && !this.elementContains(this.referenceElm, e.target) && this.popper && !this.elementContains(this.popper, e.target) && (this.$emit("documentClick", this), this.forceShow || (this.showPopper = !1));
            },
            elementContains: function elementContains(e, t) {
              return "function" == typeof e.contains && e.contains(t);
            }
          },
          destroyed: function destroyed() {
            this.destroyPopper();
          }
        };
        var r = n;
        n.__file = "popper.js.vue";
        return function (e, t, o, n, r, i, s, p, c, a) {
          "function" == typeof s && (c = p, p = s, s = !1);
          var d = "function" == typeof o ? o.options : o;
          var l;
          if (e && e.render && (d.render = e.render, d.staticRenderFns = e.staticRenderFns, d._compiled = !0, r && (d.functional = !0)), n && (d._scopeId = n), i ? (l = function l(e) {
            (e = e || this.$vnode && this.$vnode.ssrContext || this.parent && this.parent.$vnode && this.parent.$vnode.ssrContext) || "undefined" == typeof __VUE_SSR_CONTEXT__ || (e = __VUE_SSR_CONTEXT__), t && t.call(this, c(e)), e && e._registeredComponents && e._registeredComponents.add(i);
          }, d._ssrRegister = l) : t && (l = s ? function () {
            t.call(this, a(this.$root.$options.shadowRoot));
          } : function (e) {
            t.call(this, p(e));
          }), l) if (d.functional) {
            var _e = d.render;

            d.render = function (t, o) {
              return l.call(o), _e(t, o);
            };
          } else {
            var _e2 = d.beforeCreate;
            d.beforeCreate = _e2 ? [].concat(_e2, l) : [l];
          }
          return o;
        }({
          render: function render() {
            var e = this,
                t = e.$createElement,
                o = e._self._c || t;
            return o(e.tagName, {
              tag: "component"
            }, [o("transition", {
              attrs: {
                name: e.transition,
                "enter-active-class": e.enterActiveClass,
                "leave-active-class": e.leaveActiveClass
              },
              on: {
                "after-leave": e.doDestroy
              }
            }, [o("span", {
              directives: [{
                name: "show",
                rawName: "v-show",
                value: !e.disabled && e.showPopper,
                expression: "!disabled && showPopper"
              }],
              ref: "popper"
            }, [e._t("default", [e._v(e._s(e.content))])], 2)]), e._v(" "), e._t("reference")], 2);
          },
          staticRenderFns: []
        }, void 0, r, void 0, !1, void 0, void 0, void 0);
      });
    });

    var formatDistanceLocale = {
      lessThanXSeconds: {
        one: 'less than a second',
        other: 'less than {{count}} seconds'
      },
      xSeconds: {
        one: '1 second',
        other: '{{count}} seconds'
      },
      halfAMinute: 'half a minute',
      lessThanXMinutes: {
        one: 'less than a minute',
        other: 'less than {{count}} minutes'
      },
      xMinutes: {
        one: '1 minute',
        other: '{{count}} minutes'
      },
      aboutXHours: {
        one: 'about 1 hour',
        other: 'about {{count}} hours'
      },
      xHours: {
        one: '1 hour',
        other: '{{count}} hours'
      },
      xDays: {
        one: '1 day',
        other: '{{count}} days'
      },
      aboutXMonths: {
        one: 'about 1 month',
        other: 'about {{count}} months'
      },
      xMonths: {
        one: '1 month',
        other: '{{count}} months'
      },
      aboutXYears: {
        one: 'about 1 year',
        other: 'about {{count}} years'
      },
      xYears: {
        one: '1 year',
        other: '{{count}} years'
      },
      overXYears: {
        one: 'over 1 year',
        other: 'over {{count}} years'
      },
      almostXYears: {
        one: 'almost 1 year',
        other: 'almost {{count}} years'
      }
    };
    function formatDistance(token, count, options) {
      options = options || {};
      var result;

      if (typeof formatDistanceLocale[token] === 'string') {
        result = formatDistanceLocale[token];
      } else if (count === 1) {
        result = formatDistanceLocale[token].one;
      } else {
        result = formatDistanceLocale[token].other.replace('{{count}}', count);
      }

      if (options.addSuffix) {
        if (options.comparison > 0) {
          return 'in ' + result;
        } else {
          return result + ' ago';
        }
      }

      return result;
    }

    function buildFormatLongFn(args) {
      return function (dirtyOptions) {
        var options = dirtyOptions || {};
        var width = options.width ? String(options.width) : args.defaultWidth;
        var format = args.formats[width] || args.formats[args.defaultWidth];
        return format;
      };
    }

    var dateFormats = {
      full: 'EEEE, MMMM do, y',
      long: 'MMMM do, y',
      medium: 'MMM d, y',
      short: 'MM/dd/yyyy'
    };
    var timeFormats = {
      full: 'h:mm:ss a zzzz',
      long: 'h:mm:ss a z',
      medium: 'h:mm:ss a',
      short: 'h:mm a'
    };
    var dateTimeFormats = {
      full: "{{date}} 'at' {{time}}",
      long: "{{date}} 'at' {{time}}",
      medium: '{{date}}, {{time}}',
      short: '{{date}}, {{time}}'
    };
    var formatLong = {
      date: buildFormatLongFn({
        formats: dateFormats,
        defaultWidth: 'full'
      }),
      time: buildFormatLongFn({
        formats: timeFormats,
        defaultWidth: 'full'
      }),
      dateTime: buildFormatLongFn({
        formats: dateTimeFormats,
        defaultWidth: 'full'
      })
    };

    var formatRelativeLocale = {
      lastWeek: "'last' eeee 'at' p",
      yesterday: "'yesterday at' p",
      today: "'today at' p",
      tomorrow: "'tomorrow at' p",
      nextWeek: "eeee 'at' p",
      other: 'P'
    };
    function formatRelative(token, _date, _baseDate, _options) {
      return formatRelativeLocale[token];
    }

    function buildLocalizeFn(args) {
      return function (dirtyIndex, dirtyOptions) {
        var options = dirtyOptions || {};
        var context = options.context ? String(options.context) : 'standalone';
        var valuesArray;

        if (context === 'formatting' && args.formattingValues) {
          var defaultWidth = args.defaultFormattingWidth || args.defaultWidth;
          var width = options.width ? String(options.width) : defaultWidth;
          valuesArray = args.formattingValues[width] || args.formattingValues[defaultWidth];
        } else {
          var _defaultWidth = args.defaultWidth;

          var _width = options.width ? String(options.width) : args.defaultWidth;

          valuesArray = args.values[_width] || args.values[_defaultWidth];
        }

        var index = args.argumentCallback ? args.argumentCallback(dirtyIndex) : dirtyIndex;
        return valuesArray[index];
      };
    }

    var eraValues = {
      narrow: ['B', 'A'],
      abbreviated: ['BC', 'AD'],
      wide: ['Before Christ', 'Anno Domini']
    };
    var quarterValues = {
      narrow: ['1', '2', '3', '4'],
      abbreviated: ['Q1', 'Q2', 'Q3', 'Q4'],
      wide: ['1st quarter', '2nd quarter', '3rd quarter', '4th quarter'] // Note: in English, the names of days of the week and months are capitalized.
      // If you are making a new locale based on this one, check if the same is true for the language you're working on.
      // Generally, formatted dates should look like they are in the middle of a sentence,
      // e.g. in Spanish language the weekdays and months should be in the lowercase.

    };
    var monthValues = {
      narrow: ['J', 'F', 'M', 'A', 'M', 'J', 'J', 'A', 'S', 'O', 'N', 'D'],
      abbreviated: ['Jan', 'Feb', 'Mar', 'Apr', 'May', 'Jun', 'Jul', 'Aug', 'Sep', 'Oct', 'Nov', 'Dec'],
      wide: ['January', 'February', 'March', 'April', 'May', 'June', 'July', 'August', 'September', 'October', 'November', 'December']
    };
    var dayValues = {
      narrow: ['S', 'M', 'T', 'W', 'T', 'F', 'S'],
      short: ['Su', 'Mo', 'Tu', 'We', 'Th', 'Fr', 'Sa'],
      abbreviated: ['Sun', 'Mon', 'Tue', 'Wed', 'Thu', 'Fri', 'Sat'],
      wide: ['Sunday', 'Monday', 'Tuesday', 'Wednesday', 'Thursday', 'Friday', 'Saturday']
    };
    var dayPeriodValues = {
      narrow: {
        am: 'a',
        pm: 'p',
        midnight: 'mi',
        noon: 'n',
        morning: 'morning',
        afternoon: 'afternoon',
        evening: 'evening',
        night: 'night'
      },
      abbreviated: {
        am: 'AM',
        pm: 'PM',
        midnight: 'midnight',
        noon: 'noon',
        morning: 'morning',
        afternoon: 'afternoon',
        evening: 'evening',
        night: 'night'
      },
      wide: {
        am: 'a.m.',
        pm: 'p.m.',
        midnight: 'midnight',
        noon: 'noon',
        morning: 'morning',
        afternoon: 'afternoon',
        evening: 'evening',
        night: 'night'
      }
    };
    var formattingDayPeriodValues = {
      narrow: {
        am: 'a',
        pm: 'p',
        midnight: 'mi',
        noon: 'n',
        morning: 'in the morning',
        afternoon: 'in the afternoon',
        evening: 'in the evening',
        night: 'at night'
      },
      abbreviated: {
        am: 'AM',
        pm: 'PM',
        midnight: 'midnight',
        noon: 'noon',
        morning: 'in the morning',
        afternoon: 'in the afternoon',
        evening: 'in the evening',
        night: 'at night'
      },
      wide: {
        am: 'a.m.',
        pm: 'p.m.',
        midnight: 'midnight',
        noon: 'noon',
        morning: 'in the morning',
        afternoon: 'in the afternoon',
        evening: 'in the evening',
        night: 'at night'
      }
    };

    function ordinalNumber(dirtyNumber, _dirtyOptions) {
      var number = Number(dirtyNumber); // If ordinal numbers depend on context, for example,
      // if they are different for different grammatical genders,
      // use `options.unit`:
      //
      //   var options = dirtyOptions || {}
      //   var unit = String(options.unit)
      //
      // where `unit` can be 'year', 'quarter', 'month', 'week', 'date', 'dayOfYear',
      // 'day', 'hour', 'minute', 'second'

      var rem100 = number % 100;

      if (rem100 > 20 || rem100 < 10) {
        switch (rem100 % 10) {
          case 1:
            return number + 'st';

          case 2:
            return number + 'nd';

          case 3:
            return number + 'rd';
        }
      }

      return number + 'th';
    }

    var localize = {
      ordinalNumber: ordinalNumber,
      era: buildLocalizeFn({
        values: eraValues,
        defaultWidth: 'wide'
      }),
      quarter: buildLocalizeFn({
        values: quarterValues,
        defaultWidth: 'wide',
        argumentCallback: function (quarter) {
          return Number(quarter) - 1;
        }
      }),
      month: buildLocalizeFn({
        values: monthValues,
        defaultWidth: 'wide'
      }),
      day: buildLocalizeFn({
        values: dayValues,
        defaultWidth: 'wide'
      }),
      dayPeriod: buildLocalizeFn({
        values: dayPeriodValues,
        defaultWidth: 'wide',
        formattingValues: formattingDayPeriodValues,
        defaultFormattingWidth: 'wide'
      })
    };

    function buildMatchPatternFn(args) {
      return function (dirtyString, dirtyOptions) {
        var string = String(dirtyString);
        var options = dirtyOptions || {};
        var matchResult = string.match(args.matchPattern);

        if (!matchResult) {
          return null;
        }

        var matchedString = matchResult[0];
        var parseResult = string.match(args.parsePattern);

        if (!parseResult) {
          return null;
        }

        var value = args.valueCallback ? args.valueCallback(parseResult[0]) : parseResult[0];
        value = options.valueCallback ? options.valueCallback(value) : value;
        return {
          value: value,
          rest: string.slice(matchedString.length)
        };
      };
    }

    function buildMatchFn(args) {
      return function (dirtyString, dirtyOptions) {
        var string = String(dirtyString);
        var options = dirtyOptions || {};
        var width = options.width;
        var matchPattern = width && args.matchPatterns[width] || args.matchPatterns[args.defaultMatchWidth];
        var matchResult = string.match(matchPattern);

        if (!matchResult) {
          return null;
        }

        var matchedString = matchResult[0];
        var parsePatterns = width && args.parsePatterns[width] || args.parsePatterns[args.defaultParseWidth];
        var value;

        if (Object.prototype.toString.call(parsePatterns) === '[object Array]') {
          value = findIndex$1(parsePatterns, function (pattern) {
            return pattern.test(string);
          });
        } else {
          value = findKey(parsePatterns, function (pattern) {
            return pattern.test(string);
          });
        }

        value = args.valueCallback ? args.valueCallback(value) : value;
        value = options.valueCallback ? options.valueCallback(value) : value;
        return {
          value: value,
          rest: string.slice(matchedString.length)
        };
      };
    }

    function findKey(object, predicate) {
      for (var key in object) {
        if (object.hasOwnProperty(key) && predicate(object[key])) {
          return key;
        }
      }
    }

    function findIndex$1(array, predicate) {
      for (var key = 0; key < array.length; key++) {
        if (predicate(array[key])) {
          return key;
        }
      }
    }

    var matchOrdinalNumberPattern = /^(\d+)(th|st|nd|rd)?/i;
    var parseOrdinalNumberPattern = /\d+/i;
    var matchEraPatterns = {
      narrow: /^(b|a)/i,
      abbreviated: /^(b\.?\s?c\.?|b\.?\s?c\.?\s?e\.?|a\.?\s?d\.?|c\.?\s?e\.?)/i,
      wide: /^(before christ|before common era|anno domini|common era)/i
    };
    var parseEraPatterns = {
      any: [/^b/i, /^(a|c)/i]
    };
    var matchQuarterPatterns = {
      narrow: /^[1234]/i,
      abbreviated: /^q[1234]/i,
      wide: /^[1234](th|st|nd|rd)? quarter/i
    };
    var parseQuarterPatterns = {
      any: [/1/i, /2/i, /3/i, /4/i]
    };
    var matchMonthPatterns = {
      narrow: /^[jfmasond]/i,
      abbreviated: /^(jan|feb|mar|apr|may|jun|jul|aug|sep|oct|nov|dec)/i,
      wide: /^(january|february|march|april|may|june|july|august|september|october|november|december)/i
    };
    var parseMonthPatterns = {
      narrow: [/^j/i, /^f/i, /^m/i, /^a/i, /^m/i, /^j/i, /^j/i, /^a/i, /^s/i, /^o/i, /^n/i, /^d/i],
      any: [/^ja/i, /^f/i, /^mar/i, /^ap/i, /^may/i, /^jun/i, /^jul/i, /^au/i, /^s/i, /^o/i, /^n/i, /^d/i]
    };
    var matchDayPatterns = {
      narrow: /^[smtwf]/i,
      short: /^(su|mo|tu|we|th|fr|sa)/i,
      abbreviated: /^(sun|mon|tue|wed|thu|fri|sat)/i,
      wide: /^(sunday|monday|tuesday|wednesday|thursday|friday|saturday)/i
    };
    var parseDayPatterns = {
      narrow: [/^s/i, /^m/i, /^t/i, /^w/i, /^t/i, /^f/i, /^s/i],
      any: [/^su/i, /^m/i, /^tu/i, /^w/i, /^th/i, /^f/i, /^sa/i]
    };
    var matchDayPeriodPatterns = {
      narrow: /^(a|p|mi|n|(in the|at) (morning|afternoon|evening|night))/i,
      any: /^([ap]\.?\s?m\.?|midnight|noon|(in the|at) (morning|afternoon|evening|night))/i
    };
    var parseDayPeriodPatterns = {
      any: {
        am: /^a/i,
        pm: /^p/i,
        midnight: /^mi/i,
        noon: /^no/i,
        morning: /morning/i,
        afternoon: /afternoon/i,
        evening: /evening/i,
        night: /night/i
      }
    };
    var match = {
      ordinalNumber: buildMatchPatternFn({
        matchPattern: matchOrdinalNumberPattern,
        parsePattern: parseOrdinalNumberPattern,
        valueCallback: function (value) {
          return parseInt(value, 10);
        }
      }),
      era: buildMatchFn({
        matchPatterns: matchEraPatterns,
        defaultMatchWidth: 'wide',
        parsePatterns: parseEraPatterns,
        defaultParseWidth: 'any'
      }),
      quarter: buildMatchFn({
        matchPatterns: matchQuarterPatterns,
        defaultMatchWidth: 'wide',
        parsePatterns: parseQuarterPatterns,
        defaultParseWidth: 'any',
        valueCallback: function (index) {
          return index + 1;
        }
      }),
      month: buildMatchFn({
        matchPatterns: matchMonthPatterns,
        defaultMatchWidth: 'wide',
        parsePatterns: parseMonthPatterns,
        defaultParseWidth: 'any'
      }),
      day: buildMatchFn({
        matchPatterns: matchDayPatterns,
        defaultMatchWidth: 'wide',
        parsePatterns: parseDayPatterns,
        defaultParseWidth: 'any'
      }),
      dayPeriod: buildMatchFn({
        matchPatterns: matchDayPeriodPatterns,
        defaultMatchWidth: 'any',
        parsePatterns: parseDayPeriodPatterns,
        defaultParseWidth: 'any'
      })
    };

    /**
     * @type {Locale}
     * @category Locales
     * @summary English locale (United States).
     * @language English
     * @iso-639-2 eng
     * @author Sasha Koss [@kossnocorp]{@link https://github.com/kossnocorp}
     * @author Lesha Koss [@leshakoss]{@link https://github.com/leshakoss}
     */

    var locale = {
      code: 'en-US',
      formatDistance: formatDistance,
      formatLong: formatLong,
      formatRelative: formatRelative,
      localize: localize,
      match: match,
      options: {
        weekStartsOn: 0
        /* Sunday */
        ,
        firstWeekContainsDate: 1
      }
    };

    function toInteger(dirtyNumber) {
      if (dirtyNumber === null || dirtyNumber === true || dirtyNumber === false) {
        return NaN;
      }

      var number = Number(dirtyNumber);

      if (isNaN(number)) {
        return number;
      }

      return number < 0 ? Math.ceil(number) : Math.floor(number);
    }

    function requiredArgs(required, args) {
      if (args.length < required) {
        throw new TypeError(required + ' argument' + required > 1 ? 's' : '' + ' required, but only ' + args.length + ' present');
      }
    }

    /**
     * @name toDate
     * @category Common Helpers
     * @summary Convert the given argument to an instance of Date.
     *
     * @description
     * Convert the given argument to an instance of Date.
     *
     * If the argument is an instance of Date, the function returns its clone.
     *
     * If the argument is a number, it is treated as a timestamp.
     *
     * If the argument is none of the above, the function returns Invalid Date.
     *
     * **Note**: *all* Date arguments passed to any *date-fns* function is processed by `toDate`.
     *
     * @param {Date|Number} argument - the value to convert
     * @returns {Date} the parsed date in the local time zone
     * @throws {TypeError} 1 argument required
     *
     * @example
     * // Clone the date:
     * const result = toDate(new Date(2014, 1, 11, 11, 30, 30))
     * //=> Tue Feb 11 2014 11:30:30
     *
     * @example
     * // Convert the timestamp to date:
     * const result = toDate(1392098430000)
     * //=> Tue Feb 11 2014 11:30:30
     */

    function toDate(argument) {
      requiredArgs(1, arguments);
      var argStr = Object.prototype.toString.call(argument); // Clone the date

      if (argument instanceof Date || typeof argument === 'object' && argStr === '[object Date]') {
        // Prevent the date to lose the milliseconds when passed to new Date() in IE10
        return new Date(argument.getTime());
      } else if (typeof argument === 'number' || argStr === '[object Number]') {
        return new Date(argument);
      } else {
        if ((typeof argument === 'string' || argStr === '[object String]') && typeof console !== 'undefined') {
          // eslint-disable-next-line no-console
          console.warn("Starting with v2.0.0-beta.1 date-fns doesn't accept strings as arguments. Please use `parseISO` to parse strings. See: https://git.io/fjule"); // eslint-disable-next-line no-console

          console.warn(new Error().stack);
        }

        return new Date(NaN);
      }
    }

    /**
     * @name addMilliseconds
     * @category Millisecond Helpers
     * @summary Add the specified number of milliseconds to the given date.
     *
     * @description
     * Add the specified number of milliseconds to the given date.
     *
     * ### v2.0.0 breaking changes:
     *
     * - [Changes that are common for the whole library](https://github.com/date-fns/date-fns/blob/master/docs/upgradeGuide.md#Common-Changes).
     *
     * @param {Date|Number} date - the date to be changed
     * @param {Number} amount - the amount of milliseconds to be added
     * @returns {Date} the new date with the milliseconds added
     * @throws {TypeError} 2 arguments required
     *
     * @example
     * // Add 750 milliseconds to 10 July 2014 12:45:30.000:
     * var result = addMilliseconds(new Date(2014, 6, 10, 12, 45, 30, 0), 750)
     * //=> Thu Jul 10 2014 12:45:30.750
     */

    function addMilliseconds(dirtyDate, dirtyAmount) {
      requiredArgs(2, arguments);
      var timestamp = toDate(dirtyDate).getTime();
      var amount = toInteger(dirtyAmount);
      return new Date(timestamp + amount);
    }

    /**
     * @name subMilliseconds
     * @category Millisecond Helpers
     * @summary Subtract the specified number of milliseconds from the given date.
     *
     * @description
     * Subtract the specified number of milliseconds from the given date.
     *
     * ### v2.0.0 breaking changes:
     *
     * - [Changes that are common for the whole library](https://github.com/date-fns/date-fns/blob/master/docs/upgradeGuide.md#Common-Changes).
     *
     * @param {Date|Number} date - the date to be changed
     * @param {Number} amount - the amount of milliseconds to be subtracted
     * @returns {Date} the new date with the milliseconds subtracted
     * @throws {TypeError} 2 arguments required
     *
     * @example
     * // Subtract 750 milliseconds from 10 July 2014 12:45:30.000:
     * var result = subMilliseconds(new Date(2014, 6, 10, 12, 45, 30, 0), 750)
     * //=> Thu Jul 10 2014 12:45:29.250
     */

    function subMilliseconds(dirtyDate, dirtyAmount) {
      requiredArgs(2, arguments);
      var amount = toInteger(dirtyAmount);
      return addMilliseconds(dirtyDate, -amount);
    }

    function assign(target, dirtyObject) {
      if (target == null) {
        throw new TypeError('assign requires that input parameter not be null or undefined');
      }

      dirtyObject = dirtyObject || {};

      for (var property in dirtyObject) {
        if (dirtyObject.hasOwnProperty(property)) {
          target[property] = dirtyObject[property];
        }
      }

      return target;
    }

    function dateLongFormatter(pattern, formatLong) {
      switch (pattern) {
        case 'P':
          return formatLong.date({
            width: 'short'
          });

        case 'PP':
          return formatLong.date({
            width: 'medium'
          });

        case 'PPP':
          return formatLong.date({
            width: 'long'
          });

        case 'PPPP':
        default:
          return formatLong.date({
            width: 'full'
          });
      }
    }

    function timeLongFormatter(pattern, formatLong) {
      switch (pattern) {
        case 'p':
          return formatLong.time({
            width: 'short'
          });

        case 'pp':
          return formatLong.time({
            width: 'medium'
          });

        case 'ppp':
          return formatLong.time({
            width: 'long'
          });

        case 'pppp':
        default:
          return formatLong.time({
            width: 'full'
          });
      }
    }

    function dateTimeLongFormatter(pattern, formatLong) {
      var matchResult = pattern.match(/(P+)(p+)?/);
      var datePattern = matchResult[1];
      var timePattern = matchResult[2];

      if (!timePattern) {
        return dateLongFormatter(pattern, formatLong);
      }

      var dateTimeFormat;

      switch (datePattern) {
        case 'P':
          dateTimeFormat = formatLong.dateTime({
            width: 'short'
          });
          break;

        case 'PP':
          dateTimeFormat = formatLong.dateTime({
            width: 'medium'
          });
          break;

        case 'PPP':
          dateTimeFormat = formatLong.dateTime({
            width: 'long'
          });
          break;

        case 'PPPP':
        default:
          dateTimeFormat = formatLong.dateTime({
            width: 'full'
          });
          break;
      }

      return dateTimeFormat.replace('{{date}}', dateLongFormatter(datePattern, formatLong)).replace('{{time}}', timeLongFormatter(timePattern, formatLong));
    }

    var longFormatters = {
      p: timeLongFormatter,
      P: dateTimeLongFormatter
    };

    var MILLISECONDS_IN_MINUTE = 60000;
    /**
     * Google Chrome as of 67.0.3396.87 introduced timezones with offset that includes seconds.
     * They usually appear for dates that denote time before the timezones were introduced
     * (e.g. for 'Europe/Prague' timezone the offset is GMT+00:57:44 before 1 October 1891
     * and GMT+01:00:00 after that date)
     *
     * Date#getTimezoneOffset returns the offset in minutes and would return 57 for the example above,
     * which would lead to incorrect calculations.
     *
     * This function returns the timezone offset in milliseconds that takes seconds in account.
     */

    function getTimezoneOffsetInMilliseconds(dirtyDate) {
      var date = new Date(dirtyDate.getTime());
      var baseTimezoneOffset = Math.ceil(date.getTimezoneOffset());
      date.setSeconds(0, 0);
      var millisecondsPartOfTimezoneOffset = date.getTime() % MILLISECONDS_IN_MINUTE;
      return baseTimezoneOffset * MILLISECONDS_IN_MINUTE + millisecondsPartOfTimezoneOffset;
    }

    var protectedDayOfYearTokens = ['D', 'DD'];
    var protectedWeekYearTokens = ['YY', 'YYYY'];
    function isProtectedDayOfYearToken(token) {
      return protectedDayOfYearTokens.indexOf(token) !== -1;
    }
    function isProtectedWeekYearToken(token) {
      return protectedWeekYearTokens.indexOf(token) !== -1;
    }
    function throwProtectedError(token) {
      if (token === 'YYYY') {
        throw new RangeError('Use `yyyy` instead of `YYYY` for formatting years; see: https://git.io/fxCyr');
      } else if (token === 'YY') {
        throw new RangeError('Use `yy` instead of `YY` for formatting years; see: https://git.io/fxCyr');
      } else if (token === 'D') {
        throw new RangeError('Use `d` instead of `D` for formatting days of the month; see: https://git.io/fxCyr');
      } else if (token === 'DD') {
        throw new RangeError('Use `dd` instead of `DD` for formatting days of the month; see: https://git.io/fxCyr');
      }
    }

    // See issue: https://github.com/date-fns/date-fns/issues/376

    function startOfUTCWeek(dirtyDate, dirtyOptions) {
      requiredArgs(1, arguments);
      var options = dirtyOptions || {};
      var locale = options.locale;
      var localeWeekStartsOn = locale && locale.options && locale.options.weekStartsOn;
      var defaultWeekStartsOn = localeWeekStartsOn == null ? 0 : toInteger(localeWeekStartsOn);
      var weekStartsOn = options.weekStartsOn == null ? defaultWeekStartsOn : toInteger(options.weekStartsOn); // Test if weekStartsOn is between 0 and 6 _and_ is not NaN

      if (!(weekStartsOn >= 0 && weekStartsOn <= 6)) {
        throw new RangeError('weekStartsOn must be between 0 and 6 inclusively');
      }

      var date = toDate(dirtyDate);
      var day = date.getUTCDay();
      var diff = (day < weekStartsOn ? 7 : 0) + day - weekStartsOn;
      date.setUTCDate(date.getUTCDate() - diff);
      date.setUTCHours(0, 0, 0, 0);
      return date;
    }

    // See issue: https://github.com/date-fns/date-fns/issues/376

    function getUTCWeekYear(dirtyDate, dirtyOptions) {
      requiredArgs(1, arguments);
      var date = toDate(dirtyDate, dirtyOptions);
      var year = date.getUTCFullYear();
      var options = dirtyOptions || {};
      var locale = options.locale;
      var localeFirstWeekContainsDate = locale && locale.options && locale.options.firstWeekContainsDate;
      var defaultFirstWeekContainsDate = localeFirstWeekContainsDate == null ? 1 : toInteger(localeFirstWeekContainsDate);
      var firstWeekContainsDate = options.firstWeekContainsDate == null ? defaultFirstWeekContainsDate : toInteger(options.firstWeekContainsDate); // Test if weekStartsOn is between 1 and 7 _and_ is not NaN

      if (!(firstWeekContainsDate >= 1 && firstWeekContainsDate <= 7)) {
        throw new RangeError('firstWeekContainsDate must be between 1 and 7 inclusively');
      }

      var firstWeekOfNextYear = new Date(0);
      firstWeekOfNextYear.setUTCFullYear(year + 1, 0, firstWeekContainsDate);
      firstWeekOfNextYear.setUTCHours(0, 0, 0, 0);
      var startOfNextYear = startOfUTCWeek(firstWeekOfNextYear, dirtyOptions);
      var firstWeekOfThisYear = new Date(0);
      firstWeekOfThisYear.setUTCFullYear(year, 0, firstWeekContainsDate);
      firstWeekOfThisYear.setUTCHours(0, 0, 0, 0);
      var startOfThisYear = startOfUTCWeek(firstWeekOfThisYear, dirtyOptions);

      if (date.getTime() >= startOfNextYear.getTime()) {
        return year + 1;
      } else if (date.getTime() >= startOfThisYear.getTime()) {
        return year;
      } else {
        return year - 1;
      }
    }

    // See issue: https://github.com/date-fns/date-fns/issues/376

    function setUTCDay(dirtyDate, dirtyDay, dirtyOptions) {
      requiredArgs(2, arguments);
      var options = dirtyOptions || {};
      var locale = options.locale;
      var localeWeekStartsOn = locale && locale.options && locale.options.weekStartsOn;
      var defaultWeekStartsOn = localeWeekStartsOn == null ? 0 : toInteger(localeWeekStartsOn);
      var weekStartsOn = options.weekStartsOn == null ? defaultWeekStartsOn : toInteger(options.weekStartsOn); // Test if weekStartsOn is between 0 and 6 _and_ is not NaN

      if (!(weekStartsOn >= 0 && weekStartsOn <= 6)) {
        throw new RangeError('weekStartsOn must be between 0 and 6 inclusively');
      }

      var date = toDate(dirtyDate);
      var day = toInteger(dirtyDay);
      var currentDay = date.getUTCDay();
      var remainder = day % 7;
      var dayIndex = (remainder + 7) % 7;
      var diff = (dayIndex < weekStartsOn ? 7 : 0) + day - currentDay;
      date.setUTCDate(date.getUTCDate() + diff);
      return date;
    }

    // See issue: https://github.com/date-fns/date-fns/issues/376

    function setUTCISODay(dirtyDate, dirtyDay) {
      requiredArgs(2, arguments);
      var day = toInteger(dirtyDay);

      if (day % 7 === 0) {
        day = day - 7;
      }

      var weekStartsOn = 1;
      var date = toDate(dirtyDate);
      var currentDay = date.getUTCDay();
      var remainder = day % 7;
      var dayIndex = (remainder + 7) % 7;
      var diff = (dayIndex < weekStartsOn ? 7 : 0) + day - currentDay;
      date.setUTCDate(date.getUTCDate() + diff);
      return date;
    }

    // See issue: https://github.com/date-fns/date-fns/issues/376

    function startOfUTCISOWeek(dirtyDate) {
      requiredArgs(1, arguments);
      var weekStartsOn = 1;
      var date = toDate(dirtyDate);
      var day = date.getUTCDay();
      var diff = (day < weekStartsOn ? 7 : 0) + day - weekStartsOn;
      date.setUTCDate(date.getUTCDate() - diff);
      date.setUTCHours(0, 0, 0, 0);
      return date;
    }

    // See issue: https://github.com/date-fns/date-fns/issues/376

    function getUTCISOWeekYear(dirtyDate) {
      requiredArgs(1, arguments);
      var date = toDate(dirtyDate);
      var year = date.getUTCFullYear();
      var fourthOfJanuaryOfNextYear = new Date(0);
      fourthOfJanuaryOfNextYear.setUTCFullYear(year + 1, 0, 4);
      fourthOfJanuaryOfNextYear.setUTCHours(0, 0, 0, 0);
      var startOfNextYear = startOfUTCISOWeek(fourthOfJanuaryOfNextYear);
      var fourthOfJanuaryOfThisYear = new Date(0);
      fourthOfJanuaryOfThisYear.setUTCFullYear(year, 0, 4);
      fourthOfJanuaryOfThisYear.setUTCHours(0, 0, 0, 0);
      var startOfThisYear = startOfUTCISOWeek(fourthOfJanuaryOfThisYear);

      if (date.getTime() >= startOfNextYear.getTime()) {
        return year + 1;
      } else if (date.getTime() >= startOfThisYear.getTime()) {
        return year;
      } else {
        return year - 1;
      }
    }

    // See issue: https://github.com/date-fns/date-fns/issues/376

    function startOfUTCISOWeekYear(dirtyDate) {
      requiredArgs(1, arguments);
      var year = getUTCISOWeekYear(dirtyDate);
      var fourthOfJanuary = new Date(0);
      fourthOfJanuary.setUTCFullYear(year, 0, 4);
      fourthOfJanuary.setUTCHours(0, 0, 0, 0);
      var date = startOfUTCISOWeek(fourthOfJanuary);
      return date;
    }

    var MILLISECONDS_IN_WEEK = 604800000; // This function will be a part of public API when UTC function will be implemented.
    // See issue: https://github.com/date-fns/date-fns/issues/376

    function getUTCISOWeek(dirtyDate) {
      requiredArgs(1, arguments);
      var date = toDate(dirtyDate);
      var diff = startOfUTCISOWeek(date).getTime() - startOfUTCISOWeekYear(date).getTime(); // Round the number of days to the nearest integer
      // because the number of milliseconds in a week is not constant
      // (e.g. it's different in the week of the daylight saving time clock shift)

      return Math.round(diff / MILLISECONDS_IN_WEEK) + 1;
    }

    // See issue: https://github.com/date-fns/date-fns/issues/376

    function setUTCISOWeek(dirtyDate, dirtyISOWeek) {
      requiredArgs(2, arguments);
      var date = toDate(dirtyDate);
      var isoWeek = toInteger(dirtyISOWeek);
      var diff = getUTCISOWeek(date) - isoWeek;
      date.setUTCDate(date.getUTCDate() - diff * 7);
      return date;
    }

    // See issue: https://github.com/date-fns/date-fns/issues/376

    function startOfUTCWeekYear(dirtyDate, dirtyOptions) {
      requiredArgs(1, arguments);
      var options = dirtyOptions || {};
      var locale = options.locale;
      var localeFirstWeekContainsDate = locale && locale.options && locale.options.firstWeekContainsDate;
      var defaultFirstWeekContainsDate = localeFirstWeekContainsDate == null ? 1 : toInteger(localeFirstWeekContainsDate);
      var firstWeekContainsDate = options.firstWeekContainsDate == null ? defaultFirstWeekContainsDate : toInteger(options.firstWeekContainsDate);
      var year = getUTCWeekYear(dirtyDate, dirtyOptions);
      var firstWeek = new Date(0);
      firstWeek.setUTCFullYear(year, 0, firstWeekContainsDate);
      firstWeek.setUTCHours(0, 0, 0, 0);
      var date = startOfUTCWeek(firstWeek, dirtyOptions);
      return date;
    }

    var MILLISECONDS_IN_WEEK$1 = 604800000; // This function will be a part of public API when UTC function will be implemented.
    // See issue: https://github.com/date-fns/date-fns/issues/376

    function getUTCWeek(dirtyDate, options) {
      requiredArgs(1, arguments);
      var date = toDate(dirtyDate);
      var diff = startOfUTCWeek(date, options).getTime() - startOfUTCWeekYear(date, options).getTime(); // Round the number of days to the nearest integer
      // because the number of milliseconds in a week is not constant
      // (e.g. it's different in the week of the daylight saving time clock shift)

      return Math.round(diff / MILLISECONDS_IN_WEEK$1) + 1;
    }

    // See issue: https://github.com/date-fns/date-fns/issues/376

    function setUTCWeek(dirtyDate, dirtyWeek, options) {
      requiredArgs(2, arguments);
      var date = toDate(dirtyDate);
      var week = toInteger(dirtyWeek);
      var diff = getUTCWeek(date, options) - week;
      date.setUTCDate(date.getUTCDate() - diff * 7);
      return date;
    }

    var MILLISECONDS_IN_HOUR = 3600000;
    var MILLISECONDS_IN_MINUTE$1 = 60000;
    var MILLISECONDS_IN_SECOND = 1000;
    var numericPatterns = {
      month: /^(1[0-2]|0?\d)/,
      // 0 to 12
      date: /^(3[0-1]|[0-2]?\d)/,
      // 0 to 31
      dayOfYear: /^(36[0-6]|3[0-5]\d|[0-2]?\d?\d)/,
      // 0 to 366
      week: /^(5[0-3]|[0-4]?\d)/,
      // 0 to 53
      hour23h: /^(2[0-3]|[0-1]?\d)/,
      // 0 to 23
      hour24h: /^(2[0-4]|[0-1]?\d)/,
      // 0 to 24
      hour11h: /^(1[0-1]|0?\d)/,
      // 0 to 11
      hour12h: /^(1[0-2]|0?\d)/,
      // 0 to 12
      minute: /^[0-5]?\d/,
      // 0 to 59
      second: /^[0-5]?\d/,
      // 0 to 59
      singleDigit: /^\d/,
      // 0 to 9
      twoDigits: /^\d{1,2}/,
      // 0 to 99
      threeDigits: /^\d{1,3}/,
      // 0 to 999
      fourDigits: /^\d{1,4}/,
      // 0 to 9999
      anyDigitsSigned: /^-?\d+/,
      singleDigitSigned: /^-?\d/,
      // 0 to 9, -0 to -9
      twoDigitsSigned: /^-?\d{1,2}/,
      // 0 to 99, -0 to -99
      threeDigitsSigned: /^-?\d{1,3}/,
      // 0 to 999, -0 to -999
      fourDigitsSigned: /^-?\d{1,4}/ // 0 to 9999, -0 to -9999

    };
    var timezonePatterns = {
      basicOptionalMinutes: /^([+-])(\d{2})(\d{2})?|Z/,
      basic: /^([+-])(\d{2})(\d{2})|Z/,
      basicOptionalSeconds: /^([+-])(\d{2})(\d{2})((\d{2}))?|Z/,
      extended: /^([+-])(\d{2}):(\d{2})|Z/,
      extendedOptionalSeconds: /^([+-])(\d{2}):(\d{2})(:(\d{2}))?|Z/
    };

    function parseNumericPattern(pattern, string, valueCallback) {
      var matchResult = string.match(pattern);

      if (!matchResult) {
        return null;
      }

      var value = parseInt(matchResult[0], 10);
      return {
        value: valueCallback ? valueCallback(value) : value,
        rest: string.slice(matchResult[0].length)
      };
    }

    function parseTimezonePattern(pattern, string) {
      var matchResult = string.match(pattern);

      if (!matchResult) {
        return null;
      } // Input is 'Z'


      if (matchResult[0] === 'Z') {
        return {
          value: 0,
          rest: string.slice(1)
        };
      }

      var sign = matchResult[1] === '+' ? 1 : -1;
      var hours = matchResult[2] ? parseInt(matchResult[2], 10) : 0;
      var minutes = matchResult[3] ? parseInt(matchResult[3], 10) : 0;
      var seconds = matchResult[5] ? parseInt(matchResult[5], 10) : 0;
      return {
        value: sign * (hours * MILLISECONDS_IN_HOUR + minutes * MILLISECONDS_IN_MINUTE$1 + seconds * MILLISECONDS_IN_SECOND),
        rest: string.slice(matchResult[0].length)
      };
    }

    function parseAnyDigitsSigned(string, valueCallback) {
      return parseNumericPattern(numericPatterns.anyDigitsSigned, string, valueCallback);
    }

    function parseNDigits(n, string, valueCallback) {
      switch (n) {
        case 1:
          return parseNumericPattern(numericPatterns.singleDigit, string, valueCallback);

        case 2:
          return parseNumericPattern(numericPatterns.twoDigits, string, valueCallback);

        case 3:
          return parseNumericPattern(numericPatterns.threeDigits, string, valueCallback);

        case 4:
          return parseNumericPattern(numericPatterns.fourDigits, string, valueCallback);

        default:
          return parseNumericPattern(new RegExp('^\\d{1,' + n + '}'), string, valueCallback);
      }
    }

    function parseNDigitsSigned(n, string, valueCallback) {
      switch (n) {
        case 1:
          return parseNumericPattern(numericPatterns.singleDigitSigned, string, valueCallback);

        case 2:
          return parseNumericPattern(numericPatterns.twoDigitsSigned, string, valueCallback);

        case 3:
          return parseNumericPattern(numericPatterns.threeDigitsSigned, string, valueCallback);

        case 4:
          return parseNumericPattern(numericPatterns.fourDigitsSigned, string, valueCallback);

        default:
          return parseNumericPattern(new RegExp('^-?\\d{1,' + n + '}'), string, valueCallback);
      }
    }

    function dayPeriodEnumToHours(enumValue) {
      switch (enumValue) {
        case 'morning':
          return 4;

        case 'evening':
          return 17;

        case 'pm':
        case 'noon':
        case 'afternoon':
          return 12;

        case 'am':
        case 'midnight':
        case 'night':
        default:
          return 0;
      }
    }

    function normalizeTwoDigitYear(twoDigitYear, currentYear) {
      var isCommonEra = currentYear > 0; // Absolute number of the current year:
      // 1 -> 1 AC
      // 0 -> 1 BC
      // -1 -> 2 BC

      var absCurrentYear = isCommonEra ? currentYear : 1 - currentYear;
      var result;

      if (absCurrentYear <= 50) {
        result = twoDigitYear || 100;
      } else {
        var rangeEnd = absCurrentYear + 50;
        var rangeEndCentury = Math.floor(rangeEnd / 100) * 100;
        var isPreviousCentury = twoDigitYear >= rangeEnd % 100;
        result = twoDigitYear + rangeEndCentury - (isPreviousCentury ? 100 : 0);
      }

      return isCommonEra ? result : 1 - result;
    }

    var DAYS_IN_MONTH = [31, 28, 31, 30, 31, 30, 31, 31, 30, 31, 30, 31];
    var DAYS_IN_MONTH_LEAP_YEAR = [31, 29, 31, 30, 31, 30, 31, 31, 30, 31, 30, 31]; // User for validation

    function isLeapYearIndex(year) {
      return year % 400 === 0 || year % 4 === 0 && year % 100 !== 0;
    }
    /*
     * |     | Unit                           |     | Unit                           |
     * |-----|--------------------------------|-----|--------------------------------|
     * |  a  | AM, PM                         |  A* | Milliseconds in day            |
     * |  b  | AM, PM, noon, midnight         |  B  | Flexible day period            |
     * |  c  | Stand-alone local day of week  |  C* | Localized hour w/ day period   |
     * |  d  | Day of month                   |  D  | Day of year                    |
     * |  e  | Local day of week              |  E  | Day of week                    |
     * |  f  |                                |  F* | Day of week in month           |
     * |  g* | Modified Julian day            |  G  | Era                            |
     * |  h  | Hour [1-12]                    |  H  | Hour [0-23]                    |
     * |  i! | ISO day of week                |  I! | ISO week of year               |
     * |  j* | Localized hour w/ day period   |  J* | Localized hour w/o day period  |
     * |  k  | Hour [1-24]                    |  K  | Hour [0-11]                    |
     * |  l* | (deprecated)                   |  L  | Stand-alone month              |
     * |  m  | Minute                         |  M  | Month                          |
     * |  n  |                                |  N  |                                |
     * |  o! | Ordinal number modifier        |  O* | Timezone (GMT)                 |
     * |  p  |                                |  P  |                                |
     * |  q  | Stand-alone quarter            |  Q  | Quarter                        |
     * |  r* | Related Gregorian year         |  R! | ISO week-numbering year        |
     * |  s  | Second                         |  S  | Fraction of second             |
     * |  t! | Seconds timestamp              |  T! | Milliseconds timestamp         |
     * |  u  | Extended year                  |  U* | Cyclic year                    |
     * |  v* | Timezone (generic non-locat.)  |  V* | Timezone (location)            |
     * |  w  | Local week of year             |  W* | Week of month                  |
     * |  x  | Timezone (ISO-8601 w/o Z)      |  X  | Timezone (ISO-8601)            |
     * |  y  | Year (abs)                     |  Y  | Local week-numbering year      |
     * |  z* | Timezone (specific non-locat.) |  Z* | Timezone (aliases)             |
     *
     * Letters marked by * are not implemented but reserved by Unicode standard.
     *
     * Letters marked by ! are non-standard, but implemented by date-fns:
     * - `o` modifies the previous token to turn it into an ordinal (see `parse` docs)
     * - `i` is ISO day of week. For `i` and `ii` is returns numeric ISO week days,
     *   i.e. 7 for Sunday, 1 for Monday, etc.
     * - `I` is ISO week of year, as opposed to `w` which is local week of year.
     * - `R` is ISO week-numbering year, as opposed to `Y` which is local week-numbering year.
     *   `R` is supposed to be used in conjunction with `I` and `i`
     *   for universal ISO week-numbering date, whereas
     *   `Y` is supposed to be used in conjunction with `w` and `e`
     *   for week-numbering date specific to the locale.
     */


    var parsers = {
      // Era
      G: {
        priority: 140,
        parse: function (string, token, match, _options) {
          switch (token) {
            // AD, BC
            case 'G':
            case 'GG':
            case 'GGG':
              return match.era(string, {
                width: 'abbreviated'
              }) || match.era(string, {
                width: 'narrow'
              });
            // A, B

            case 'GGGGG':
              return match.era(string, {
                width: 'narrow'
              });
            // Anno Domini, Before Christ

            case 'GGGG':
            default:
              return match.era(string, {
                width: 'wide'
              }) || match.era(string, {
                width: 'abbreviated'
              }) || match.era(string, {
                width: 'narrow'
              });
          }
        },
        set: function (date, flags, value, _options) {
          flags.era = value;
          date.setUTCFullYear(value, 0, 1);
          date.setUTCHours(0, 0, 0, 0);
          return date;
        },
        incompatibleTokens: ['R', 'u', 't', 'T']
      },
      // Year
      y: {
        // From http://www.unicode.org/reports/tr35/tr35-31/tr35-dates.html#Date_Format_Patterns
        // | Year     |     y | yy |   yyy |  yyyy | yyyyy |
        // |----------|-------|----|-------|-------|-------|
        // | AD 1     |     1 | 01 |   001 |  0001 | 00001 |
        // | AD 12    |    12 | 12 |   012 |  0012 | 00012 |
        // | AD 123   |   123 | 23 |   123 |  0123 | 00123 |
        // | AD 1234  |  1234 | 34 |  1234 |  1234 | 01234 |
        // | AD 12345 | 12345 | 45 | 12345 | 12345 | 12345 |
        priority: 130,
        parse: function (string, token, match, _options) {
          var valueCallback = function (year) {
            return {
              year: year,
              isTwoDigitYear: token === 'yy'
            };
          };

          switch (token) {
            case 'y':
              return parseNDigits(4, string, valueCallback);

            case 'yo':
              return match.ordinalNumber(string, {
                unit: 'year',
                valueCallback: valueCallback
              });

            default:
              return parseNDigits(token.length, string, valueCallback);
          }
        },
        validate: function (_date, value, _options) {
          return value.isTwoDigitYear || value.year > 0;
        },
        set: function (date, flags, value, _options) {
          var currentYear = date.getUTCFullYear();

          if (value.isTwoDigitYear) {
            var normalizedTwoDigitYear = normalizeTwoDigitYear(value.year, currentYear);
            date.setUTCFullYear(normalizedTwoDigitYear, 0, 1);
            date.setUTCHours(0, 0, 0, 0);
            return date;
          }

          var year = !('era' in flags) || flags.era === 1 ? value.year : 1 - value.year;
          date.setUTCFullYear(year, 0, 1);
          date.setUTCHours(0, 0, 0, 0);
          return date;
        },
        incompatibleTokens: ['Y', 'R', 'u', 'w', 'I', 'i', 'e', 'c', 't', 'T']
      },
      // Local week-numbering year
      Y: {
        priority: 130,
        parse: function (string, token, match, _options) {
          var valueCallback = function (year) {
            return {
              year: year,
              isTwoDigitYear: token === 'YY'
            };
          };

          switch (token) {
            case 'Y':
              return parseNDigits(4, string, valueCallback);

            case 'Yo':
              return match.ordinalNumber(string, {
                unit: 'year',
                valueCallback: valueCallback
              });

            default:
              return parseNDigits(token.length, string, valueCallback);
          }
        },
        validate: function (_date, value, _options) {
          return value.isTwoDigitYear || value.year > 0;
        },
        set: function (date, flags, value, options) {
          var currentYear = getUTCWeekYear(date, options);

          if (value.isTwoDigitYear) {
            var normalizedTwoDigitYear = normalizeTwoDigitYear(value.year, currentYear);
            date.setUTCFullYear(normalizedTwoDigitYear, 0, options.firstWeekContainsDate);
            date.setUTCHours(0, 0, 0, 0);
            return startOfUTCWeek(date, options);
          }

          var year = !('era' in flags) || flags.era === 1 ? value.year : 1 - value.year;
          date.setUTCFullYear(year, 0, options.firstWeekContainsDate);
          date.setUTCHours(0, 0, 0, 0);
          return startOfUTCWeek(date, options);
        },
        incompatibleTokens: ['y', 'R', 'u', 'Q', 'q', 'M', 'L', 'I', 'd', 'D', 'i', 't', 'T']
      },
      // ISO week-numbering year
      R: {
        priority: 130,
        parse: function (string, token, _match, _options) {
          if (token === 'R') {
            return parseNDigitsSigned(4, string);
          }

          return parseNDigitsSigned(token.length, string);
        },
        set: function (_date, _flags, value, _options) {
          var firstWeekOfYear = new Date(0);
          firstWeekOfYear.setUTCFullYear(value, 0, 4);
          firstWeekOfYear.setUTCHours(0, 0, 0, 0);
          return startOfUTCISOWeek(firstWeekOfYear);
        },
        incompatibleTokens: ['G', 'y', 'Y', 'u', 'Q', 'q', 'M', 'L', 'w', 'd', 'D', 'e', 'c', 't', 'T']
      },
      // Extended year
      u: {
        priority: 130,
        parse: function (string, token, _match, _options) {
          if (token === 'u') {
            return parseNDigitsSigned(4, string);
          }

          return parseNDigitsSigned(token.length, string);
        },
        set: function (date, _flags, value, _options) {
          date.setUTCFullYear(value, 0, 1);
          date.setUTCHours(0, 0, 0, 0);
          return date;
        },
        incompatibleTokens: ['G', 'y', 'Y', 'R', 'w', 'I', 'i', 'e', 'c', 't', 'T']
      },
      // Quarter
      Q: {
        priority: 120,
        parse: function (string, token, match, _options) {
          switch (token) {
            // 1, 2, 3, 4
            case 'Q':
            case 'QQ':
              // 01, 02, 03, 04
              return parseNDigits(token.length, string);
            // 1st, 2nd, 3rd, 4th

            case 'Qo':
              return match.ordinalNumber(string, {
                unit: 'quarter'
              });
            // Q1, Q2, Q3, Q4

            case 'QQQ':
              return match.quarter(string, {
                width: 'abbreviated',
                context: 'formatting'
              }) || match.quarter(string, {
                width: 'narrow',
                context: 'formatting'
              });
            // 1, 2, 3, 4 (narrow quarter; could be not numerical)

            case 'QQQQQ':
              return match.quarter(string, {
                width: 'narrow',
                context: 'formatting'
              });
            // 1st quarter, 2nd quarter, ...

            case 'QQQQ':
            default:
              return match.quarter(string, {
                width: 'wide',
                context: 'formatting'
              }) || match.quarter(string, {
                width: 'abbreviated',
                context: 'formatting'
              }) || match.quarter(string, {
                width: 'narrow',
                context: 'formatting'
              });
          }
        },
        validate: function (_date, value, _options) {
          return value >= 1 && value <= 4;
        },
        set: function (date, _flags, value, _options) {
          date.setUTCMonth((value - 1) * 3, 1);
          date.setUTCHours(0, 0, 0, 0);
          return date;
        },
        incompatibleTokens: ['Y', 'R', 'q', 'M', 'L', 'w', 'I', 'd', 'D', 'i', 'e', 'c', 't', 'T']
      },
      // Stand-alone quarter
      q: {
        priority: 120,
        parse: function (string, token, match, _options) {
          switch (token) {
            // 1, 2, 3, 4
            case 'q':
            case 'qq':
              // 01, 02, 03, 04
              return parseNDigits(token.length, string);
            // 1st, 2nd, 3rd, 4th

            case 'qo':
              return match.ordinalNumber(string, {
                unit: 'quarter'
              });
            // Q1, Q2, Q3, Q4

            case 'qqq':
              return match.quarter(string, {
                width: 'abbreviated',
                context: 'standalone'
              }) || match.quarter(string, {
                width: 'narrow',
                context: 'standalone'
              });
            // 1, 2, 3, 4 (narrow quarter; could be not numerical)

            case 'qqqqq':
              return match.quarter(string, {
                width: 'narrow',
                context: 'standalone'
              });
            // 1st quarter, 2nd quarter, ...

            case 'qqqq':
            default:
              return match.quarter(string, {
                width: 'wide',
                context: 'standalone'
              }) || match.quarter(string, {
                width: 'abbreviated',
                context: 'standalone'
              }) || match.quarter(string, {
                width: 'narrow',
                context: 'standalone'
              });
          }
        },
        validate: function (_date, value, _options) {
          return value >= 1 && value <= 4;
        },
        set: function (date, _flags, value, _options) {
          date.setUTCMonth((value - 1) * 3, 1);
          date.setUTCHours(0, 0, 0, 0);
          return date;
        },
        incompatibleTokens: ['Y', 'R', 'Q', 'M', 'L', 'w', 'I', 'd', 'D', 'i', 'e', 'c', 't', 'T']
      },
      // Month
      M: {
        priority: 110,
        parse: function (string, token, match, _options) {
          var valueCallback = function (value) {
            return value - 1;
          };

          switch (token) {
            // 1, 2, ..., 12
            case 'M':
              return parseNumericPattern(numericPatterns.month, string, valueCallback);
            // 01, 02, ..., 12

            case 'MM':
              return parseNDigits(2, string, valueCallback);
            // 1st, 2nd, ..., 12th

            case 'Mo':
              return match.ordinalNumber(string, {
                unit: 'month',
                valueCallback: valueCallback
              });
            // Jan, Feb, ..., Dec

            case 'MMM':
              return match.month(string, {
                width: 'abbreviated',
                context: 'formatting'
              }) || match.month(string, {
                width: 'narrow',
                context: 'formatting'
              });
            // J, F, ..., D

            case 'MMMMM':
              return match.month(string, {
                width: 'narrow',
                context: 'formatting'
              });
            // January, February, ..., December

            case 'MMMM':
            default:
              return match.month(string, {
                width: 'wide',
                context: 'formatting'
              }) || match.month(string, {
                width: 'abbreviated',
                context: 'formatting'
              }) || match.month(string, {
                width: 'narrow',
                context: 'formatting'
              });
          }
        },
        validate: function (_date, value, _options) {
          return value >= 0 && value <= 11;
        },
        set: function (date, _flags, value, _options) {
          date.setUTCMonth(value, 1);
          date.setUTCHours(0, 0, 0, 0);
          return date;
        },
        incompatibleTokens: ['Y', 'R', 'q', 'Q', 'L', 'w', 'I', 'D', 'i', 'e', 'c', 't', 'T']
      },
      // Stand-alone month
      L: {
        priority: 110,
        parse: function (string, token, match, _options) {
          var valueCallback = function (value) {
            return value - 1;
          };

          switch (token) {
            // 1, 2, ..., 12
            case 'L':
              return parseNumericPattern(numericPatterns.month, string, valueCallback);
            // 01, 02, ..., 12

            case 'LL':
              return parseNDigits(2, string, valueCallback);
            // 1st, 2nd, ..., 12th

            case 'Lo':
              return match.ordinalNumber(string, {
                unit: 'month',
                valueCallback: valueCallback
              });
            // Jan, Feb, ..., Dec

            case 'LLL':
              return match.month(string, {
                width: 'abbreviated',
                context: 'standalone'
              }) || match.month(string, {
                width: 'narrow',
                context: 'standalone'
              });
            // J, F, ..., D

            case 'LLLLL':
              return match.month(string, {
                width: 'narrow',
                context: 'standalone'
              });
            // January, February, ..., December

            case 'LLLL':
            default:
              return match.month(string, {
                width: 'wide',
                context: 'standalone'
              }) || match.month(string, {
                width: 'abbreviated',
                context: 'standalone'
              }) || match.month(string, {
                width: 'narrow',
                context: 'standalone'
              });
          }
        },
        validate: function (_date, value, _options) {
          return value >= 0 && value <= 11;
        },
        set: function (date, _flags, value, _options) {
          date.setUTCMonth(value, 1);
          date.setUTCHours(0, 0, 0, 0);
          return date;
        },
        incompatibleTokens: ['Y', 'R', 'q', 'Q', 'M', 'w', 'I', 'D', 'i', 'e', 'c', 't', 'T']
      },
      // Local week of year
      w: {
        priority: 100,
        parse: function (string, token, match, _options) {
          switch (token) {
            case 'w':
              return parseNumericPattern(numericPatterns.week, string);

            case 'wo':
              return match.ordinalNumber(string, {
                unit: 'week'
              });

            default:
              return parseNDigits(token.length, string);
          }
        },
        validate: function (_date, value, _options) {
          return value >= 1 && value <= 53;
        },
        set: function (date, _flags, value, options) {
          return startOfUTCWeek(setUTCWeek(date, value, options), options);
        },
        incompatibleTokens: ['y', 'R', 'u', 'q', 'Q', 'M', 'L', 'I', 'd', 'D', 'i', 't', 'T']
      },
      // ISO week of year
      I: {
        priority: 100,
        parse: function (string, token, match, _options) {
          switch (token) {
            case 'I':
              return parseNumericPattern(numericPatterns.week, string);

            case 'Io':
              return match.ordinalNumber(string, {
                unit: 'week'
              });

            default:
              return parseNDigits(token.length, string);
          }
        },
        validate: function (_date, value, _options) {
          return value >= 1 && value <= 53;
        },
        set: function (date, _flags, value, options) {
          return startOfUTCISOWeek(setUTCISOWeek(date, value, options), options);
        },
        incompatibleTokens: ['y', 'Y', 'u', 'q', 'Q', 'M', 'L', 'w', 'd', 'D', 'e', 'c', 't', 'T']
      },
      // Day of the month
      d: {
        priority: 90,
        parse: function (string, token, match, _options) {
          switch (token) {
            case 'd':
              return parseNumericPattern(numericPatterns.date, string);

            case 'do':
              return match.ordinalNumber(string, {
                unit: 'date'
              });

            default:
              return parseNDigits(token.length, string);
          }
        },
        validate: function (date, value, _options) {
          var year = date.getUTCFullYear();
          var isLeapYear = isLeapYearIndex(year);
          var month = date.getUTCMonth();

          if (isLeapYear) {
            return value >= 1 && value <= DAYS_IN_MONTH_LEAP_YEAR[month];
          } else {
            return value >= 1 && value <= DAYS_IN_MONTH[month];
          }
        },
        set: function (date, _flags, value, _options) {
          date.setUTCDate(value);
          date.setUTCHours(0, 0, 0, 0);
          return date;
        },
        incompatibleTokens: ['Y', 'R', 'q', 'Q', 'w', 'I', 'D', 'i', 'e', 'c', 't', 'T']
      },
      // Day of year
      D: {
        priority: 90,
        parse: function (string, token, match, _options) {
          switch (token) {
            case 'D':
            case 'DD':
              return parseNumericPattern(numericPatterns.dayOfYear, string);

            case 'Do':
              return match.ordinalNumber(string, {
                unit: 'date'
              });

            default:
              return parseNDigits(token.length, string);
          }
        },
        validate: function (date, value, _options) {
          var year = date.getUTCFullYear();
          var isLeapYear = isLeapYearIndex(year);

          if (isLeapYear) {
            return value >= 1 && value <= 366;
          } else {
            return value >= 1 && value <= 365;
          }
        },
        set: function (date, _flags, value, _options) {
          date.setUTCMonth(0, value);
          date.setUTCHours(0, 0, 0, 0);
          return date;
        },
        incompatibleTokens: ['Y', 'R', 'q', 'Q', 'M', 'L', 'w', 'I', 'd', 'E', 'i', 'e', 'c', 't', 'T']
      },
      // Day of week
      E: {
        priority: 90,
        parse: function (string, token, match, _options) {
          switch (token) {
            // Tue
            case 'E':
            case 'EE':
            case 'EEE':
              return match.day(string, {
                width: 'abbreviated',
                context: 'formatting'
              }) || match.day(string, {
                width: 'short',
                context: 'formatting'
              }) || match.day(string, {
                width: 'narrow',
                context: 'formatting'
              });
            // T

            case 'EEEEE':
              return match.day(string, {
                width: 'narrow',
                context: 'formatting'
              });
            // Tu

            case 'EEEEEE':
              return match.day(string, {
                width: 'short',
                context: 'formatting'
              }) || match.day(string, {
                width: 'narrow',
                context: 'formatting'
              });
            // Tuesday

            case 'EEEE':
            default:
              return match.day(string, {
                width: 'wide',
                context: 'formatting'
              }) || match.day(string, {
                width: 'abbreviated',
                context: 'formatting'
              }) || match.day(string, {
                width: 'short',
                context: 'formatting'
              }) || match.day(string, {
                width: 'narrow',
                context: 'formatting'
              });
          }
        },
        validate: function (_date, value, _options) {
          return value >= 0 && value <= 6;
        },
        set: function (date, _flags, value, options) {
          date = setUTCDay(date, value, options);
          date.setUTCHours(0, 0, 0, 0);
          return date;
        },
        incompatibleTokens: ['D', 'i', 'e', 'c', 't', 'T']
      },
      // Local day of week
      e: {
        priority: 90,
        parse: function (string, token, match, options) {
          var valueCallback = function (value) {
            var wholeWeekDays = Math.floor((value - 1) / 7) * 7;
            return (value + options.weekStartsOn + 6) % 7 + wholeWeekDays;
          };

          switch (token) {
            // 3
            case 'e':
            case 'ee':
              // 03
              return parseNDigits(token.length, string, valueCallback);
            // 3rd

            case 'eo':
              return match.ordinalNumber(string, {
                unit: 'day',
                valueCallback: valueCallback
              });
            // Tue

            case 'eee':
              return match.day(string, {
                width: 'abbreviated',
                context: 'formatting'
              }) || match.day(string, {
                width: 'short',
                context: 'formatting'
              }) || match.day(string, {
                width: 'narrow',
                context: 'formatting'
              });
            // T

            case 'eeeee':
              return match.day(string, {
                width: 'narrow',
                context: 'formatting'
              });
            // Tu

            case 'eeeeee':
              return match.day(string, {
                width: 'short',
                context: 'formatting'
              }) || match.day(string, {
                width: 'narrow',
                context: 'formatting'
              });
            // Tuesday

            case 'eeee':
            default:
              return match.day(string, {
                width: 'wide',
                context: 'formatting'
              }) || match.day(string, {
                width: 'abbreviated',
                context: 'formatting'
              }) || match.day(string, {
                width: 'short',
                context: 'formatting'
              }) || match.day(string, {
                width: 'narrow',
                context: 'formatting'
              });
          }
        },
        validate: function (_date, value, _options) {
          return value >= 0 && value <= 6;
        },
        set: function (date, _flags, value, options) {
          date = setUTCDay(date, value, options);
          date.setUTCHours(0, 0, 0, 0);
          return date;
        },
        incompatibleTokens: ['y', 'R', 'u', 'q', 'Q', 'M', 'L', 'I', 'd', 'D', 'E', 'i', 'c', 't', 'T']
      },
      // Stand-alone local day of week
      c: {
        priority: 90,
        parse: function (string, token, match, options) {
          var valueCallback = function (value) {
            var wholeWeekDays = Math.floor((value - 1) / 7) * 7;
            return (value + options.weekStartsOn + 6) % 7 + wholeWeekDays;
          };

          switch (token) {
            // 3
            case 'c':
            case 'cc':
              // 03
              return parseNDigits(token.length, string, valueCallback);
            // 3rd

            case 'co':
              return match.ordinalNumber(string, {
                unit: 'day',
                valueCallback: valueCallback
              });
            // Tue

            case 'ccc':
              return match.day(string, {
                width: 'abbreviated',
                context: 'standalone'
              }) || match.day(string, {
                width: 'short',
                context: 'standalone'
              }) || match.day(string, {
                width: 'narrow',
                context: 'standalone'
              });
            // T

            case 'ccccc':
              return match.day(string, {
                width: 'narrow',
                context: 'standalone'
              });
            // Tu

            case 'cccccc':
              return match.day(string, {
                width: 'short',
                context: 'standalone'
              }) || match.day(string, {
                width: 'narrow',
                context: 'standalone'
              });
            // Tuesday

            case 'cccc':
            default:
              return match.day(string, {
                width: 'wide',
                context: 'standalone'
              }) || match.day(string, {
                width: 'abbreviated',
                context: 'standalone'
              }) || match.day(string, {
                width: 'short',
                context: 'standalone'
              }) || match.day(string, {
                width: 'narrow',
                context: 'standalone'
              });
          }
        },
        validate: function (_date, value, _options) {
          return value >= 0 && value <= 6;
        },
        set: function (date, _flags, value, options) {
          date = setUTCDay(date, value, options);
          date.setUTCHours(0, 0, 0, 0);
          return date;
        },
        incompatibleTokens: ['y', 'R', 'u', 'q', 'Q', 'M', 'L', 'I', 'd', 'D', 'E', 'i', 'e', 't', 'T']
      },
      // ISO day of week
      i: {
        priority: 90,
        parse: function (string, token, match, _options) {
          var valueCallback = function (value) {
            if (value === 0) {
              return 7;
            }

            return value;
          };

          switch (token) {
            // 2
            case 'i':
            case 'ii':
              // 02
              return parseNDigits(token.length, string);
            // 2nd

            case 'io':
              return match.ordinalNumber(string, {
                unit: 'day'
              });
            // Tue

            case 'iii':
              return match.day(string, {
                width: 'abbreviated',
                context: 'formatting',
                valueCallback: valueCallback
              }) || match.day(string, {
                width: 'short',
                context: 'formatting',
                valueCallback: valueCallback
              }) || match.day(string, {
                width: 'narrow',
                context: 'formatting',
                valueCallback: valueCallback
              });
            // T

            case 'iiiii':
              return match.day(string, {
                width: 'narrow',
                context: 'formatting',
                valueCallback: valueCallback
              });
            // Tu

            case 'iiiiii':
              return match.day(string, {
                width: 'short',
                context: 'formatting',
                valueCallback: valueCallback
              }) || match.day(string, {
                width: 'narrow',
                context: 'formatting',
                valueCallback: valueCallback
              });
            // Tuesday

            case 'iiii':
            default:
              return match.day(string, {
                width: 'wide',
                context: 'formatting',
                valueCallback: valueCallback
              }) || match.day(string, {
                width: 'abbreviated',
                context: 'formatting',
                valueCallback: valueCallback
              }) || match.day(string, {
                width: 'short',
                context: 'formatting',
                valueCallback: valueCallback
              }) || match.day(string, {
                width: 'narrow',
                context: 'formatting',
                valueCallback: valueCallback
              });
          }
        },
        validate: function (_date, value, _options) {
          return value >= 1 && value <= 7;
        },
        set: function (date, _flags, value, options) {
          date = setUTCISODay(date, value, options);
          date.setUTCHours(0, 0, 0, 0);
          return date;
        },
        incompatibleTokens: ['y', 'Y', 'u', 'q', 'Q', 'M', 'L', 'w', 'd', 'D', 'E', 'e', 'c', 't', 'T']
      },
      // AM or PM
      a: {
        priority: 80,
        parse: function (string, token, match, _options) {
          switch (token) {
            case 'a':
            case 'aa':
            case 'aaa':
              return match.dayPeriod(string, {
                width: 'abbreviated',
                context: 'formatting'
              }) || match.dayPeriod(string, {
                width: 'narrow',
                context: 'formatting'
              });

            case 'aaaaa':
              return match.dayPeriod(string, {
                width: 'narrow',
                context: 'formatting'
              });

            case 'aaaa':
            default:
              return match.dayPeriod(string, {
                width: 'wide',
                context: 'formatting'
              }) || match.dayPeriod(string, {
                width: 'abbreviated',
                context: 'formatting'
              }) || match.dayPeriod(string, {
                width: 'narrow',
                context: 'formatting'
              });
          }
        },
        set: function (date, _flags, value, _options) {
          date.setUTCHours(dayPeriodEnumToHours(value), 0, 0, 0);
          return date;
        },
        incompatibleTokens: ['b', 'B', 'H', 'K', 'k', 't', 'T']
      },
      // AM, PM, midnight
      b: {
        priority: 80,
        parse: function (string, token, match, _options) {
          switch (token) {
            case 'b':
            case 'bb':
            case 'bbb':
              return match.dayPeriod(string, {
                width: 'abbreviated',
                context: 'formatting'
              }) || match.dayPeriod(string, {
                width: 'narrow',
                context: 'formatting'
              });

            case 'bbbbb':
              return match.dayPeriod(string, {
                width: 'narrow',
                context: 'formatting'
              });

            case 'bbbb':
            default:
              return match.dayPeriod(string, {
                width: 'wide',
                context: 'formatting'
              }) || match.dayPeriod(string, {
                width: 'abbreviated',
                context: 'formatting'
              }) || match.dayPeriod(string, {
                width: 'narrow',
                context: 'formatting'
              });
          }
        },
        set: function (date, _flags, value, _options) {
          date.setUTCHours(dayPeriodEnumToHours(value), 0, 0, 0);
          return date;
        },
        incompatibleTokens: ['a', 'B', 'H', 'K', 'k', 't', 'T']
      },
      // in the morning, in the afternoon, in the evening, at night
      B: {
        priority: 80,
        parse: function (string, token, match, _options) {
          switch (token) {
            case 'B':
            case 'BB':
            case 'BBB':
              return match.dayPeriod(string, {
                width: 'abbreviated',
                context: 'formatting'
              }) || match.dayPeriod(string, {
                width: 'narrow',
                context: 'formatting'
              });

            case 'BBBBB':
              return match.dayPeriod(string, {
                width: 'narrow',
                context: 'formatting'
              });

            case 'BBBB':
            default:
              return match.dayPeriod(string, {
                width: 'wide',
                context: 'formatting'
              }) || match.dayPeriod(string, {
                width: 'abbreviated',
                context: 'formatting'
              }) || match.dayPeriod(string, {
                width: 'narrow',
                context: 'formatting'
              });
          }
        },
        set: function (date, _flags, value, _options) {
          date.setUTCHours(dayPeriodEnumToHours(value), 0, 0, 0);
          return date;
        },
        incompatibleTokens: ['a', 'b', 't', 'T']
      },
      // Hour [1-12]
      h: {
        priority: 70,
        parse: function (string, token, match, _options) {
          switch (token) {
            case 'h':
              return parseNumericPattern(numericPatterns.hour12h, string);

            case 'ho':
              return match.ordinalNumber(string, {
                unit: 'hour'
              });

            default:
              return parseNDigits(token.length, string);
          }
        },
        validate: function (_date, value, _options) {
          return value >= 1 && value <= 12;
        },
        set: function (date, _flags, value, _options) {
          var isPM = date.getUTCHours() >= 12;

          if (isPM && value < 12) {
            date.setUTCHours(value + 12, 0, 0, 0);
          } else if (!isPM && value === 12) {
            date.setUTCHours(0, 0, 0, 0);
          } else {
            date.setUTCHours(value, 0, 0, 0);
          }

          return date;
        },
        incompatibleTokens: ['H', 'K', 'k', 't', 'T']
      },
      // Hour [0-23]
      H: {
        priority: 70,
        parse: function (string, token, match, _options) {
          switch (token) {
            case 'H':
              return parseNumericPattern(numericPatterns.hour23h, string);

            case 'Ho':
              return match.ordinalNumber(string, {
                unit: 'hour'
              });

            default:
              return parseNDigits(token.length, string);
          }
        },
        validate: function (_date, value, _options) {
          return value >= 0 && value <= 23;
        },
        set: function (date, _flags, value, _options) {
          date.setUTCHours(value, 0, 0, 0);
          return date;
        },
        incompatibleTokens: ['a', 'b', 'h', 'K', 'k', 't', 'T']
      },
      // Hour [0-11]
      K: {
        priority: 70,
        parse: function (string, token, match, _options) {
          switch (token) {
            case 'K':
              return parseNumericPattern(numericPatterns.hour11h, string);

            case 'Ko':
              return match.ordinalNumber(string, {
                unit: 'hour'
              });

            default:
              return parseNDigits(token.length, string);
          }
        },
        validate: function (_date, value, _options) {
          return value >= 0 && value <= 11;
        },
        set: function (date, _flags, value, _options) {
          var isPM = date.getUTCHours() >= 12;

          if (isPM && value < 12) {
            date.setUTCHours(value + 12, 0, 0, 0);
          } else {
            date.setUTCHours(value, 0, 0, 0);
          }

          return date;
        },
        incompatibleTokens: ['a', 'b', 'h', 'H', 'k', 't', 'T']
      },
      // Hour [1-24]
      k: {
        priority: 70,
        parse: function (string, token, match, _options) {
          switch (token) {
            case 'k':
              return parseNumericPattern(numericPatterns.hour24h, string);

            case 'ko':
              return match.ordinalNumber(string, {
                unit: 'hour'
              });

            default:
              return parseNDigits(token.length, string);
          }
        },
        validate: function (_date, value, _options) {
          return value >= 1 && value <= 24;
        },
        set: function (date, _flags, value, _options) {
          var hours = value <= 24 ? value % 24 : value;
          date.setUTCHours(hours, 0, 0, 0);
          return date;
        },
        incompatibleTokens: ['a', 'b', 'h', 'H', 'K', 't', 'T']
      },
      // Minute
      m: {
        priority: 60,
        parse: function (string, token, match, _options) {
          switch (token) {
            case 'm':
              return parseNumericPattern(numericPatterns.minute, string);

            case 'mo':
              return match.ordinalNumber(string, {
                unit: 'minute'
              });

            default:
              return parseNDigits(token.length, string);
          }
        },
        validate: function (_date, value, _options) {
          return value >= 0 && value <= 59;
        },
        set: function (date, _flags, value, _options) {
          date.setUTCMinutes(value, 0, 0);
          return date;
        },
        incompatibleTokens: ['t', 'T']
      },
      // Second
      s: {
        priority: 50,
        parse: function (string, token, match, _options) {
          switch (token) {
            case 's':
              return parseNumericPattern(numericPatterns.second, string);

            case 'so':
              return match.ordinalNumber(string, {
                unit: 'second'
              });

            default:
              return parseNDigits(token.length, string);
          }
        },
        validate: function (_date, value, _options) {
          return value >= 0 && value <= 59;
        },
        set: function (date, _flags, value, _options) {
          date.setUTCSeconds(value, 0);
          return date;
        },
        incompatibleTokens: ['t', 'T']
      },
      // Fraction of second
      S: {
        priority: 30,
        parse: function (string, token, _match, _options) {
          var valueCallback = function (value) {
            return Math.floor(value * Math.pow(10, -token.length + 3));
          };

          return parseNDigits(token.length, string, valueCallback);
        },
        set: function (date, _flags, value, _options) {
          date.setUTCMilliseconds(value);
          return date;
        },
        incompatibleTokens: ['t', 'T']
      },
      // Timezone (ISO-8601. +00:00 is `'Z'`)
      X: {
        priority: 10,
        parse: function (string, token, _match, _options) {
          switch (token) {
            case 'X':
              return parseTimezonePattern(timezonePatterns.basicOptionalMinutes, string);

            case 'XX':
              return parseTimezonePattern(timezonePatterns.basic, string);

            case 'XXXX':
              return parseTimezonePattern(timezonePatterns.basicOptionalSeconds, string);

            case 'XXXXX':
              return parseTimezonePattern(timezonePatterns.extendedOptionalSeconds, string);

            case 'XXX':
            default:
              return parseTimezonePattern(timezonePatterns.extended, string);
          }
        },
        set: function (date, flags, value, _options) {
          if (flags.timestampIsSet) {
            return date;
          }

          return new Date(date.getTime() - value);
        },
        incompatibleTokens: ['t', 'T', 'x']
      },
      // Timezone (ISO-8601)
      x: {
        priority: 10,
        parse: function (string, token, _match, _options) {
          switch (token) {
            case 'x':
              return parseTimezonePattern(timezonePatterns.basicOptionalMinutes, string);

            case 'xx':
              return parseTimezonePattern(timezonePatterns.basic, string);

            case 'xxxx':
              return parseTimezonePattern(timezonePatterns.basicOptionalSeconds, string);

            case 'xxxxx':
              return parseTimezonePattern(timezonePatterns.extendedOptionalSeconds, string);

            case 'xxx':
            default:
              return parseTimezonePattern(timezonePatterns.extended, string);
          }
        },
        set: function (date, flags, value, _options) {
          if (flags.timestampIsSet) {
            return date;
          }

          return new Date(date.getTime() - value);
        },
        incompatibleTokens: ['t', 'T', 'X']
      },
      // Seconds timestamp
      t: {
        priority: 40,
        parse: function (string, _token, _match, _options) {
          return parseAnyDigitsSigned(string);
        },
        set: function (_date, _flags, value, _options) {
          return [new Date(value * 1000), {
            timestampIsSet: true
          }];
        },
        incompatibleTokens: '*'
      },
      // Milliseconds timestamp
      T: {
        priority: 20,
        parse: function (string, _token, _match, _options) {
          return parseAnyDigitsSigned(string);
        },
        set: function (_date, _flags, value, _options) {
          return [new Date(value), {
            timestampIsSet: true
          }];
        },
        incompatibleTokens: '*'
      }
    };

    var TIMEZONE_UNIT_PRIORITY = 10; // This RegExp consists of three parts separated by `|`:
    // - [yYQqMLwIdDecihHKkms]o matches any available ordinal number token
    //   (one of the certain letters followed by `o`)
    // - (\w)\1* matches any sequences of the same letter
    // - '' matches two quote characters in a row
    // - '(''|[^'])+('|$) matches anything surrounded by two quote characters ('),
    //   except a single quote symbol, which ends the sequence.
    //   Two quote characters do not end the sequence.
    //   If there is no matching single quote
    //   then the sequence will continue until the end of the string.
    // - . matches any single character unmatched by previous parts of the RegExps

    var formattingTokensRegExp = /[yYQqMLwIdDecihHKkms]o|(\w)\1*|''|'(''|[^'])+('|$)|./g; // This RegExp catches symbols escaped by quotes, and also
    // sequences of symbols P, p, and the combinations like `PPPPPPPppppp`

    var longFormattingTokensRegExp = /P+p+|P+|p+|''|'(''|[^'])+('|$)|./g;
    var escapedStringRegExp = /^'([^]*?)'?$/;
    var doubleQuoteRegExp = /''/g;
    var notWhitespaceRegExp = /\S/;
    var unescapedLatinCharacterRegExp = /[a-zA-Z]/;
    /**
     * @name parse
     * @category Common Helpers
     * @summary Parse the date.
     *
     * @description
     * Return the date parsed from string using the given format string.
     *
     * > ⚠️ Please note that the `format` tokens differ from Moment.js and other libraries.
     * > See: https://git.io/fxCyr
     *
     * The characters in the format string wrapped between two single quotes characters (') are escaped.
     * Two single quotes in a row, whether inside or outside a quoted sequence, represent a 'real' single quote.
     *
     * Format of the format string is based on Unicode Technical Standard #35:
     * https://www.unicode.org/reports/tr35/tr35-dates.html#Date_Field_Symbol_Table
     * with a few additions (see note 5 below the table).
     *
     * Not all tokens are compatible. Combinations that don't make sense or could lead to bugs are prohibited
     * and will throw `RangeError`. For example usage of 24-hour format token with AM/PM token will throw an exception:
     *
     * ```javascript
     * parse('23 AM', 'HH a', new Date())
     * //=> RangeError: The format string mustn't contain `HH` and `a` at the same time
     * ```
     *
     * See the compatibility table: https://docs.google.com/spreadsheets/d/e/2PACX-1vQOPU3xUhplll6dyoMmVUXHKl_8CRDs6_ueLmex3SoqwhuolkuN3O05l4rqx5h1dKX8eb46Ul-CCSrq/pubhtml?gid=0&single=true
     *
     * Accepted format string patterns:
     * | Unit                            |Prior| Pattern | Result examples                   | Notes |
     * |---------------------------------|-----|---------|-----------------------------------|-------|
     * | Era                             | 140 | G..GGG  | AD, BC                            |       |
     * |                                 |     | GGGG    | Anno Domini, Before Christ        | 2     |
     * |                                 |     | GGGGG   | A, B                              |       |
     * | Calendar year                   | 130 | y       | 44, 1, 1900, 2017, 9999           | 4     |
     * |                                 |     | yo      | 44th, 1st, 1900th, 9999999th      | 4,5   |
     * |                                 |     | yy      | 44, 01, 00, 17                    | 4     |
     * |                                 |     | yyy     | 044, 001, 123, 999                | 4     |
     * |                                 |     | yyyy    | 0044, 0001, 1900, 2017            | 4     |
     * |                                 |     | yyyyy   | ...                               | 2,4   |
     * | Local week-numbering year       | 130 | Y       | 44, 1, 1900, 2017, 9000           | 4     |
     * |                                 |     | Yo      | 44th, 1st, 1900th, 9999999th      | 4,5   |
     * |                                 |     | YY      | 44, 01, 00, 17                    | 4,6   |
     * |                                 |     | YYY     | 044, 001, 123, 999                | 4     |
     * |                                 |     | YYYY    | 0044, 0001, 1900, 2017            | 4,6   |
     * |                                 |     | YYYYY   | ...                               | 2,4   |
     * | ISO week-numbering year         | 130 | R       | -43, 1, 1900, 2017, 9999, -9999   | 4,5   |
     * |                                 |     | RR      | -43, 01, 00, 17                   | 4,5   |
     * |                                 |     | RRR     | -043, 001, 123, 999, -999         | 4,5   |
     * |                                 |     | RRRR    | -0043, 0001, 2017, 9999, -9999    | 4,5   |
     * |                                 |     | RRRRR   | ...                               | 2,4,5 |
     * | Extended year                   | 130 | u       | -43, 1, 1900, 2017, 9999, -999    | 4     |
     * |                                 |     | uu      | -43, 01, 99, -99                  | 4     |
     * |                                 |     | uuu     | -043, 001, 123, 999, -999         | 4     |
     * |                                 |     | uuuu    | -0043, 0001, 2017, 9999, -9999    | 4     |
     * |                                 |     | uuuuu   | ...                               | 2,4   |
     * | Quarter (formatting)            | 120 | Q       | 1, 2, 3, 4                        |       |
     * |                                 |     | Qo      | 1st, 2nd, 3rd, 4th                | 5     |
     * |                                 |     | QQ      | 01, 02, 03, 04                    |       |
     * |                                 |     | QQQ     | Q1, Q2, Q3, Q4                    |       |
     * |                                 |     | QQQQ    | 1st quarter, 2nd quarter, ...     | 2     |
     * |                                 |     | QQQQQ   | 1, 2, 3, 4                        | 4     |
     * | Quarter (stand-alone)           | 120 | q       | 1, 2, 3, 4                        |       |
     * |                                 |     | qo      | 1st, 2nd, 3rd, 4th                | 5     |
     * |                                 |     | qq      | 01, 02, 03, 04                    |       |
     * |                                 |     | qqq     | Q1, Q2, Q3, Q4                    |       |
     * |                                 |     | qqqq    | 1st quarter, 2nd quarter, ...     | 2     |
     * |                                 |     | qqqqq   | 1, 2, 3, 4                        | 3     |
     * | Month (formatting)              | 110 | M       | 1, 2, ..., 12                     |       |
     * |                                 |     | Mo      | 1st, 2nd, ..., 12th               | 5     |
     * |                                 |     | MM      | 01, 02, ..., 12                   |       |
     * |                                 |     | MMM     | Jan, Feb, ..., Dec                |       |
     * |                                 |     | MMMM    | January, February, ..., December  | 2     |
     * |                                 |     | MMMMM   | J, F, ..., D                      |       |
     * | Month (stand-alone)             | 110 | L       | 1, 2, ..., 12                     |       |
     * |                                 |     | Lo      | 1st, 2nd, ..., 12th               | 5     |
     * |                                 |     | LL      | 01, 02, ..., 12                   |       |
     * |                                 |     | LLL     | Jan, Feb, ..., Dec                |       |
     * |                                 |     | LLLL    | January, February, ..., December  | 2     |
     * |                                 |     | LLLLL   | J, F, ..., D                      |       |
     * | Local week of year              | 100 | w       | 1, 2, ..., 53                     |       |
     * |                                 |     | wo      | 1st, 2nd, ..., 53th               | 5     |
     * |                                 |     | ww      | 01, 02, ..., 53                   |       |
     * | ISO week of year                | 100 | I       | 1, 2, ..., 53                     | 5     |
     * |                                 |     | Io      | 1st, 2nd, ..., 53th               | 5     |
     * |                                 |     | II      | 01, 02, ..., 53                   | 5     |
     * | Day of month                    |  90 | d       | 1, 2, ..., 31                     |       |
     * |                                 |     | do      | 1st, 2nd, ..., 31st               | 5     |
     * |                                 |     | dd      | 01, 02, ..., 31                   |       |
     * | Day of year                     |  90 | D       | 1, 2, ..., 365, 366               | 7     |
     * |                                 |     | Do      | 1st, 2nd, ..., 365th, 366th       | 5     |
     * |                                 |     | DD      | 01, 02, ..., 365, 366             | 7     |
     * |                                 |     | DDD     | 001, 002, ..., 365, 366           |       |
     * |                                 |     | DDDD    | ...                               | 2     |
     * | Day of week (formatting)        |  90 | E..EEE  | Mon, Tue, Wed, ..., Su            |       |
     * |                                 |     | EEEE    | Monday, Tuesday, ..., Sunday      | 2     |
     * |                                 |     | EEEEE   | M, T, W, T, F, S, S               |       |
     * |                                 |     | EEEEEE  | Mo, Tu, We, Th, Fr, Su, Sa        |       |
     * | ISO day of week (formatting)    |  90 | i       | 1, 2, 3, ..., 7                   | 5     |
     * |                                 |     | io      | 1st, 2nd, ..., 7th                | 5     |
     * |                                 |     | ii      | 01, 02, ..., 07                   | 5     |
     * |                                 |     | iii     | Mon, Tue, Wed, ..., Su            | 5     |
     * |                                 |     | iiii    | Monday, Tuesday, ..., Sunday      | 2,5   |
     * |                                 |     | iiiii   | M, T, W, T, F, S, S               | 5     |
     * |                                 |     | iiiiii  | Mo, Tu, We, Th, Fr, Su, Sa        | 5     |
     * | Local day of week (formatting)  |  90 | e       | 2, 3, 4, ..., 1                   |       |
     * |                                 |     | eo      | 2nd, 3rd, ..., 1st                | 5     |
     * |                                 |     | ee      | 02, 03, ..., 01                   |       |
     * |                                 |     | eee     | Mon, Tue, Wed, ..., Su            |       |
     * |                                 |     | eeee    | Monday, Tuesday, ..., Sunday      | 2     |
     * |                                 |     | eeeee   | M, T, W, T, F, S, S               |       |
     * |                                 |     | eeeeee  | Mo, Tu, We, Th, Fr, Su, Sa        |       |
     * | Local day of week (stand-alone) |  90 | c       | 2, 3, 4, ..., 1                   |       |
     * |                                 |     | co      | 2nd, 3rd, ..., 1st                | 5     |
     * |                                 |     | cc      | 02, 03, ..., 01                   |       |
     * |                                 |     | ccc     | Mon, Tue, Wed, ..., Su            |       |
     * |                                 |     | cccc    | Monday, Tuesday, ..., Sunday      | 2     |
     * |                                 |     | ccccc   | M, T, W, T, F, S, S               |       |
     * |                                 |     | cccccc  | Mo, Tu, We, Th, Fr, Su, Sa        |       |
     * | AM, PM                          |  80 | a..aaa  | AM, PM                            |       |
     * |                                 |     | aaaa    | a.m., p.m.                        | 2     |
     * |                                 |     | aaaaa   | a, p                              |       |
     * | AM, PM, noon, midnight          |  80 | b..bbb  | AM, PM, noon, midnight            |       |
     * |                                 |     | bbbb    | a.m., p.m., noon, midnight        | 2     |
     * |                                 |     | bbbbb   | a, p, n, mi                       |       |
     * | Flexible day period             |  80 | B..BBB  | at night, in the morning, ...     |       |
     * |                                 |     | BBBB    | at night, in the morning, ...     | 2     |
     * |                                 |     | BBBBB   | at night, in the morning, ...     |       |
     * | Hour [1-12]                     |  70 | h       | 1, 2, ..., 11, 12                 |       |
     * |                                 |     | ho      | 1st, 2nd, ..., 11th, 12th         | 5     |
     * |                                 |     | hh      | 01, 02, ..., 11, 12               |       |
     * | Hour [0-23]                     |  70 | H       | 0, 1, 2, ..., 23                  |       |
     * |                                 |     | Ho      | 0th, 1st, 2nd, ..., 23rd          | 5     |
     * |                                 |     | HH      | 00, 01, 02, ..., 23               |       |
     * | Hour [0-11]                     |  70 | K       | 1, 2, ..., 11, 0                  |       |
     * |                                 |     | Ko      | 1st, 2nd, ..., 11th, 0th          | 5     |
     * |                                 |     | KK      | 1, 2, ..., 11, 0                  |       |
     * | Hour [1-24]                     |  70 | k       | 24, 1, 2, ..., 23                 |       |
     * |                                 |     | ko      | 24th, 1st, 2nd, ..., 23rd         | 5     |
     * |                                 |     | kk      | 24, 01, 02, ..., 23               |       |
     * | Minute                          |  60 | m       | 0, 1, ..., 59                     |       |
     * |                                 |     | mo      | 0th, 1st, ..., 59th               | 5     |
     * |                                 |     | mm      | 00, 01, ..., 59                   |       |
     * | Second                          |  50 | s       | 0, 1, ..., 59                     |       |
     * |                                 |     | so      | 0th, 1st, ..., 59th               | 5     |
     * |                                 |     | ss      | 00, 01, ..., 59                   |       |
     * | Seconds timestamp               |  40 | t       | 512969520                         |       |
     * |                                 |     | tt      | ...                               | 2     |
     * | Fraction of second              |  30 | S       | 0, 1, ..., 9                      |       |
     * |                                 |     | SS      | 00, 01, ..., 99                   |       |
     * |                                 |     | SSS     | 000, 0001, ..., 999               |       |
     * |                                 |     | SSSS    | ...                               | 2     |
     * | Milliseconds timestamp          |  20 | T       | 512969520900                      |       |
     * |                                 |     | TT      | ...                               | 2     |
     * | Timezone (ISO-8601 w/ Z)        |  10 | X       | -08, +0530, Z                     |       |
     * |                                 |     | XX      | -0800, +0530, Z                   |       |
     * |                                 |     | XXX     | -08:00, +05:30, Z                 |       |
     * |                                 |     | XXXX    | -0800, +0530, Z, +123456          | 2     |
     * |                                 |     | XXXXX   | -08:00, +05:30, Z, +12:34:56      |       |
     * | Timezone (ISO-8601 w/o Z)       |  10 | x       | -08, +0530, +00                   |       |
     * |                                 |     | xx      | -0800, +0530, +0000               |       |
     * |                                 |     | xxx     | -08:00, +05:30, +00:00            | 2     |
     * |                                 |     | xxxx    | -0800, +0530, +0000, +123456      |       |
     * |                                 |     | xxxxx   | -08:00, +05:30, +00:00, +12:34:56 |       |
     * | Long localized date             |  NA | P       | 05/29/1453                        | 5,8   |
     * |                                 |     | PP      | May 29, 1453                      |       |
     * |                                 |     | PPP     | May 29th, 1453                    |       |
     * |                                 |     | PPPP    | Sunday, May 29th, 1453            | 2,5,8 |
     * | Long localized time             |  NA | p       | 12:00 AM                          | 5,8   |
     * |                                 |     | pp      | 12:00:00 AM                       |       |
     * | Combination of date and time    |  NA | Pp      | 05/29/1453, 12:00 AM              |       |
     * |                                 |     | PPpp    | May 29, 1453, 12:00:00 AM         |       |
     * |                                 |     | PPPpp   | May 29th, 1453 at ...             |       |
     * |                                 |     | PPPPpp  | Sunday, May 29th, 1453 at ...     | 2,5,8 |
     * Notes:
     * 1. "Formatting" units (e.g. formatting quarter) in the default en-US locale
     *    are the same as "stand-alone" units, but are different in some languages.
     *    "Formatting" units are declined according to the rules of the language
     *    in the context of a date. "Stand-alone" units are always nominative singular.
     *    In `format` function, they will produce different result:
     *
     *    `format(new Date(2017, 10, 6), 'do LLLL', {locale: cs}) //=> '6. listopad'`
     *
     *    `format(new Date(2017, 10, 6), 'do MMMM', {locale: cs}) //=> '6. listopadu'`
     *
     *    `parse` will try to match both formatting and stand-alone units interchangably.
     *
     * 2. Any sequence of the identical letters is a pattern, unless it is escaped by
     *    the single quote characters (see below).
     *    If the sequence is longer than listed in table:
     *    - for numerical units (`yyyyyyyy`) `parse` will try to match a number
     *      as wide as the sequence
     *    - for text units (`MMMMMMMM`) `parse` will try to match the widest variation of the unit.
     *      These variations are marked with "2" in the last column of the table.
     *
     * 3. `QQQQQ` and `qqqqq` could be not strictly numerical in some locales.
     *    These tokens represent the shortest form of the quarter.
     *
     * 4. The main difference between `y` and `u` patterns are B.C. years:
     *
     *    | Year | `y` | `u` |
     *    |------|-----|-----|
     *    | AC 1 |   1 |   1 |
     *    | BC 1 |   1 |   0 |
     *    | BC 2 |   2 |  -1 |
     *
     *    Also `yy` will try to guess the century of two digit year by proximity with `backupDate`:
     *
     *    `parse('50', 'yy', new Date(2018, 0, 1)) //=> Sat Jan 01 2050 00:00:00`
     *
     *    `parse('75', 'yy', new Date(2018, 0, 1)) //=> Wed Jan 01 1975 00:00:00`
     *
     *    while `uu` will just assign the year as is:
     *
     *    `parse('50', 'uu', new Date(2018, 0, 1)) //=> Sat Jan 01 0050 00:00:00`
     *
     *    `parse('75', 'uu', new Date(2018, 0, 1)) //=> Tue Jan 01 0075 00:00:00`
     *
     *    The same difference is true for local and ISO week-numbering years (`Y` and `R`),
     *    except local week-numbering years are dependent on `options.weekStartsOn`
     *    and `options.firstWeekContainsDate` (compare [setISOWeekYear]{@link https://date-fns.org/docs/setISOWeekYear}
     *    and [setWeekYear]{@link https://date-fns.org/docs/setWeekYear}).
     *
     * 5. These patterns are not in the Unicode Technical Standard #35:
     *    - `i`: ISO day of week
     *    - `I`: ISO week of year
     *    - `R`: ISO week-numbering year
     *    - `o`: ordinal number modifier
     *    - `P`: long localized date
     *    - `p`: long localized time
     *
     * 6. `YY` and `YYYY` tokens represent week-numbering years but they are often confused with years.
     *    You should enable `options.useAdditionalWeekYearTokens` to use them. See: https://git.io/fxCyr
     *
     * 7. `D` and `DD` tokens represent days of the year but they are ofthen confused with days of the month.
     *    You should enable `options.useAdditionalDayOfYearTokens` to use them. See: https://git.io/fxCyr
     *
     * 8. `P+` tokens do not have a defined priority since they are merely aliases to other tokens based
     *    on the given locale.
     *
     *    using `en-US` locale: `P` => `MM/dd/yyyy`
     *    using `en-US` locale: `p` => `hh:mm a`
     *    using `pt-BR` locale: `P` => `dd/MM/yyyy`
     *    using `pt-BR` locale: `p` => `HH:mm`
     *
     * Values will be assigned to the date in the descending order of its unit's priority.
     * Units of an equal priority overwrite each other in the order of appearance.
     *
     * If no values of higher priority are parsed (e.g. when parsing string 'January 1st' without a year),
     * the values will be taken from 3rd argument `backupDate` which works as a context of parsing.
     *
     * `backupDate` must be passed for correct work of the function.
     * If you're not sure which `backupDate` to supply, create a new instance of Date:
     * `parse('02/11/2014', 'MM/dd/yyyy', new Date())`
     * In this case parsing will be done in the context of the current date.
     * If `backupDate` is `Invalid Date` or a value not convertible to valid `Date`,
     * then `Invalid Date` will be returned.
     *
     * The result may vary by locale.
     *
     * If `formatString` matches with `dateString` but does not provides tokens, `backupDate` will be returned.
     *
     * If parsing failed, `Invalid Date` will be returned.
     * Invalid Date is a Date, whose time value is NaN.
     * Time value of Date: http://es5.github.io/#x15.9.1.1
     *
     * ### v2.0.0 breaking changes:
     *
     * - [Changes that are common for the whole library](https://github.com/date-fns/date-fns/blob/master/docs/upgradeGuide.md#Common-Changes).
     *
     * - Old `parse` was renamed to `toDate`.
     *   Now `parse` is a new function which parses a string using a provided format.
     *
     *   ```javascript
     *   // Before v2.0.0
     *   parse('2016-01-01')
     *
     *   // v2.0.0 onward
     *   toDate('2016-01-01')
     *   parse('2016-01-01', 'yyyy-MM-dd', new Date())
     *   ```
     *
     * @param {String} dateString - the string to parse
     * @param {String} formatString - the string of tokens
     * @param {Date|Number} backupDate - defines values missing from the parsed dateString
     * @param {Object} [options] - an object with options.
     * @param {Locale} [options.locale=defaultLocale] - the locale object. See [Locale]{@link https://date-fns.org/docs/Locale}
     * @param {0|1|2|3|4|5|6} [options.weekStartsOn=0] - the index of the first day of the week (0 - Sunday)
     * @param {1|2|3|4|5|6|7} [options.firstWeekContainsDate=1] - the day of January, which is always in the first week of the year
     * @param {Boolean} [options.useAdditionalWeekYearTokens=false] - if true, allows usage of the week-numbering year tokens `YY` and `YYYY`;
     *   see: https://git.io/fxCyr
     * @param {Boolean} [options.useAdditionalDayOfYearTokens=false] - if true, allows usage of the day of year tokens `D` and `DD`;
     *   see: https://git.io/fxCyr
     * @returns {Date} the parsed date
     * @throws {TypeError} 3 arguments required
     * @throws {RangeError} `options.weekStartsOn` must be between 0 and 6
     * @throws {RangeError} `options.firstWeekContainsDate` must be between 1 and 7
     * @throws {RangeError} `options.locale` must contain `match` property
     * @throws {RangeError} use `yyyy` instead of `YYYY` for formatting years; see: https://git.io/fxCyr
     * @throws {RangeError} use `yy` instead of `YY` for formatting years; see: https://git.io/fxCyr
     * @throws {RangeError} use `d` instead of `D` for formatting days of the month; see: https://git.io/fxCyr
     * @throws {RangeError} use `dd` instead of `DD` for formatting days of the month; see: https://git.io/fxCyr
     * @throws {RangeError} format string contains an unescaped latin alphabet character
     *
     * @example
     * // Parse 11 February 2014 from middle-endian format:
     * var result = parse('02/11/2014', 'MM/dd/yyyy', new Date())
     * //=> Tue Feb 11 2014 00:00:00
     *
     * @example
     * // Parse 28th of February in Esperanto locale in the context of 2010 year:
     * import eo from 'date-fns/locale/eo'
     * var result = parse('28-a de februaro', "do 'de' MMMM", new Date(2010, 0, 1), {
     *   locale: eo
     * })
     * //=> Sun Feb 28 2010 00:00:00
     */

    function parse(dirtyDateString, dirtyFormatString, dirtyBackupDate, dirtyOptions) {
      requiredArgs(3, arguments);
      var dateString = String(dirtyDateString);
      var formatString = String(dirtyFormatString);
      var options = dirtyOptions || {};
      var locale$1 = options.locale || locale;

      if (!locale$1.match) {
        throw new RangeError('locale must contain match property');
      }

      var localeFirstWeekContainsDate = locale$1.options && locale$1.options.firstWeekContainsDate;
      var defaultFirstWeekContainsDate = localeFirstWeekContainsDate == null ? 1 : toInteger(localeFirstWeekContainsDate);
      var firstWeekContainsDate = options.firstWeekContainsDate == null ? defaultFirstWeekContainsDate : toInteger(options.firstWeekContainsDate); // Test if weekStartsOn is between 1 and 7 _and_ is not NaN

      if (!(firstWeekContainsDate >= 1 && firstWeekContainsDate <= 7)) {
        throw new RangeError('firstWeekContainsDate must be between 1 and 7 inclusively');
      }

      var localeWeekStartsOn = locale$1.options && locale$1.options.weekStartsOn;
      var defaultWeekStartsOn = localeWeekStartsOn == null ? 0 : toInteger(localeWeekStartsOn);
      var weekStartsOn = options.weekStartsOn == null ? defaultWeekStartsOn : toInteger(options.weekStartsOn); // Test if weekStartsOn is between 0 and 6 _and_ is not NaN

      if (!(weekStartsOn >= 0 && weekStartsOn <= 6)) {
        throw new RangeError('weekStartsOn must be between 0 and 6 inclusively');
      }

      if (formatString === '') {
        if (dateString === '') {
          return toDate(dirtyBackupDate);
        } else {
          return new Date(NaN);
        }
      }

      var subFnOptions = {
        firstWeekContainsDate: firstWeekContainsDate,
        weekStartsOn: weekStartsOn,
        locale: locale$1 // If timezone isn't specified, it will be set to the system timezone

      };
      var setters = [{
        priority: TIMEZONE_UNIT_PRIORITY,
        set: dateToSystemTimezone,
        index: 0
      }];
      var i;
      var tokens = formatString.match(longFormattingTokensRegExp).map(function (substring) {
        var firstCharacter = substring[0];

        if (firstCharacter === 'p' || firstCharacter === 'P') {
          var longFormatter = longFormatters[firstCharacter];
          return longFormatter(substring, locale$1.formatLong, subFnOptions);
        }

        return substring;
      }).join('').match(formattingTokensRegExp);
      var usedTokens = [];

      for (i = 0; i < tokens.length; i++) {
        var token = tokens[i];

        if (!options.useAdditionalWeekYearTokens && isProtectedWeekYearToken(token)) {
          throwProtectedError(token);
        }

        if (!options.useAdditionalDayOfYearTokens && isProtectedDayOfYearToken(token)) {
          throwProtectedError(token);
        }

        var firstCharacter = token[0];
        var parser = parsers[firstCharacter];

        if (parser) {
          var incompatibleTokens = parser.incompatibleTokens;

          if (Array.isArray(incompatibleTokens)) {
            var incompatibleToken = void 0;

            for (var _i = 0; _i < usedTokens.length; _i++) {
              var usedToken = usedTokens[_i].token;

              if (incompatibleTokens.indexOf(usedToken) !== -1 || usedToken === firstCharacter) {
                incompatibleToken = usedTokens[_i];
                break;
              }
            }

            if (incompatibleToken) {
              throw new RangeError("The format string mustn't contain `".concat(incompatibleToken.fullToken, "` and `").concat(token, "` at the same time"));
            }
          } else if (parser.incompatibleTokens === '*' && usedTokens.length) {
            throw new RangeError("The format string mustn't contain `".concat(token, "` and any other token at the same time"));
          }

          usedTokens.push({
            token: firstCharacter,
            fullToken: token
          });
          var parseResult = parser.parse(dateString, token, locale$1.match, subFnOptions);

          if (!parseResult) {
            return new Date(NaN);
          }

          setters.push({
            priority: parser.priority,
            set: parser.set,
            validate: parser.validate,
            value: parseResult.value,
            index: setters.length
          });
          dateString = parseResult.rest;
        } else {
          if (firstCharacter.match(unescapedLatinCharacterRegExp)) {
            throw new RangeError('Format string contains an unescaped latin alphabet character `' + firstCharacter + '`');
          } // Replace two single quote characters with one single quote character


          if (token === "''") {
            token = "'";
          } else if (firstCharacter === "'") {
            token = cleanEscapedString(token);
          } // Cut token from string, or, if string doesn't match the token, return Invalid Date


          if (dateString.indexOf(token) === 0) {
            dateString = dateString.slice(token.length);
          } else {
            return new Date(NaN);
          }
        }
      } // Check if the remaining input contains something other than whitespace


      if (dateString.length > 0 && notWhitespaceRegExp.test(dateString)) {
        return new Date(NaN);
      }

      var uniquePrioritySetters = setters.map(function (setter) {
        return setter.priority;
      }).sort(function (a, b) {
        return b - a;
      }).filter(function (priority, index, array) {
        return array.indexOf(priority) === index;
      }).map(function (priority) {
        return setters.filter(function (setter) {
          return setter.priority === priority;
        }).reverse();
      }).map(function (setterArray) {
        return setterArray[0];
      });
      var date = toDate(dirtyBackupDate);

      if (isNaN(date)) {
        return new Date(NaN);
      } // Convert the date in system timezone to the same date in UTC+00:00 timezone.
      // This ensures that when UTC functions will be implemented, locales will be compatible with them.
      // See an issue about UTC functions: https://github.com/date-fns/date-fns/issues/37


      var utcDate = subMilliseconds(date, getTimezoneOffsetInMilliseconds(date));
      var flags = {};

      for (i = 0; i < uniquePrioritySetters.length; i++) {
        var setter = uniquePrioritySetters[i];

        if (setter.validate && !setter.validate(utcDate, setter.value, subFnOptions)) {
          return new Date(NaN);
        }

        var result = setter.set(utcDate, flags, setter.value, subFnOptions); // Result is tuple (date, flags)

        if (result[0]) {
          utcDate = result[0];
          assign(flags, result[1]); // Result is date
        } else {
          utcDate = result;
        }
      }

      return utcDate;
    }

    function dateToSystemTimezone(date, flags) {
      if (flags.timestampIsSet) {
        return date;
      }

      var convertedDate = new Date(0);
      convertedDate.setFullYear(date.getUTCFullYear(), date.getUTCMonth(), date.getUTCDate());
      convertedDate.setHours(date.getUTCHours(), date.getUTCMinutes(), date.getUTCSeconds(), date.getUTCMilliseconds());
      return convertedDate;
    }

    function cleanEscapedString(input) {
      return input.match(escapedStringRegExp)[1].replace(doubleQuoteRegExp, "'");
    }

    //
    //
    //
    //
    //
    //
    //
    //
    //
    //
    //
    //
    //
    //
    //
    //
    //
    //
    //
    //
    //
    //
    //
    //
    //
    //
    //
    //
    //
    //
    //
    //
    //
    //
    //
    //
    //
    //
    //
    //
    //
    //
    //
    //
    //
    //
    //
    //
    //
    //
    //
    //
    //
    //
    //
    //
    //
    //
    //
    //
    //
    //
    //
    //
    //
    //
    //
    //
    //
    //
    //
    //
    //
    //
    //
    //
    //
    //
    //
    //
    var dateUtils = {
      compareDates: function compareDates(date1, date2) {
        var d1 = new Date(date1.getTime());
        var d2 = new Date(date2.getTime());
        d1.setHours(0, 0, 0, 0);
        d2.setHours(0, 0, 0, 0);
        return d1.getTime() === d2.getTime();
      },
      daysInMonth: function daysInMonth(year, month) {
        return /8|3|5|10/.test(month) ? 30 : month === 1 ? !(year % 4) && year % 100 || !(year % 400) ? 29 : 28 : 31;
      },
      formatDate: function formatDate(date, localeObj) {
        var year = date.getFullYear();
        var month = date.getMonth() + 1;
        var day = date.getDate();
        var str = localeObj.format.replace(/dd/, ('0' + day).slice(-2)).replace(/d/, day).replace(/yyyy/, year).replace(/yy/, String(year).slice(2)).replace(/MMMM/, localeObj.months[date.getMonth()]).replace(/MMMM/, localeObj.short[date.getMonth()]).replace(/MM/, ('0' + month).slice(-2)).replace(/M(?!a|ä|e)/, month); // .replace(/su/, this.getNthSuffix(this.getDate(date)))
        // .replace(/D(?!e|é|i)/, this.getDayNameAbbr(date, translation.days))

        return str;
      }
    };
    var locale$1 = {
      "da": {
        goToToday: "Gå til idag",
        format: "dd/MM/yyyy",
        firstDay: 1,
        days: ["M", "T", "O", "T", "F", "L", "S"],
        months: ['Januar', 'Februar', 'Marts', 'April', 'Maj', 'Juni', 'Juli', 'August', 'September', 'Oktober', 'November', 'December'],
        short: ['Jan', 'Feb', 'Mar', 'Apr', 'Maj', 'Jun', 'Jul', 'Aug', 'Sep', 'Okt', 'Nov', 'Dec']
      },
      "de": {
        goToToday: "gehe heute hin",
        format: "dd.MM.yyyy",
        firstDay: 1,
        days: ["M", "D", "M", "D", "F", "S", "S"],
        months: ['Januar', 'Februar', 'März', 'April', 'Mai', 'Juni', 'Juli', 'August', 'September', 'Oktober', 'November', 'Dezember'],
        short: ['Jan', 'Febr', 'Mrz', 'Apr', 'Mai', 'Jun', 'Jul', 'Aug', 'Sept', 'Okt', 'Nov', 'Dez']
      },
      "es": {
        goToToday: "ir a hoy",
        format: "dd/MM/yyyy",
        firstDay: 1,
        days: ["L", "M", "M", "J", "V", "S", "D"],
        months: ['Enero', 'Febrero', 'Marzo', 'Abril', 'Mayo', 'Junio', 'Julio', 'Agosto', 'Septiembre', 'Octubre', 'Noviembre', 'Diciembre'],
        short: ['Ene', 'Feb', 'Mar', 'Abr', 'May', 'Jun', 'Jul', 'Ago', 'Sep', 'Oct', 'Nov', 'Dic']
      },
      "en-uk": {
        goToToday: "Go to today",
        format: "dd/MM/yyyy",
        firstDay: 1,
        days: ["M", "T", "W", "T", "F", "S", "S"],
        months: ["January", "February", "March", "April", "May", "June", "July", "August", "September", "October", "November", "December"],
        short: ["Jan", "Feb", "Mar", "Apr", "May", "Jun", "Jul", "Aug", "Sep", "Oct", "Nov", "Dec"]
      },
      "en-gb": {
        goToToday: "Go to today",
        format: "dd/MM/yyyy",
        firstDay: 1,
        days: ["M", "T", "W", "T", "F", "S", "S"],
        months: ["January", "February", "March", "April", "May", "June", "July", "August", "September", "October", "November", "December"],
        short: ["Jan", "Feb", "Mar", "Apr", "May", "Jun", "Jul", "Aug", "Sep", "Oct", "Nov", "Dec"]
      },
      "en-us": {
        goToToday: "Go to today",
        format: "M/d/yyyy",
        firstDay: 0,
        days: ["S", "M", "T", "W", "T", "F", "S"],
        months: ["January", "February", "March", "April", "May", "June", "July", "August", "September", "October", "November", "December"],
        short: ["Jan", "Feb", "Mar", "Apr", "May", "Jun", "Jul", "Aug", "Sep", "Oct", "Nov", "Dec"]
      },
      "fi": {
        goToToday: "mene tänään",
        format: "M/d/yyyy",
        firstDay: 1,
        days: ["M", "T", "K", "T", "P", "L", "S"],
        months: ["Tammikuu", "helmikuu", "maaliskuu", "huhtikuu", "toukokuu", "kesäkuu", "heinäkuu", "elokuu", "syyskuu", "lokakuu", "marraskuu", "joulukuu"],
        short: ["Tam", "Hel", "Maa", "Huh", "Tou", "Kes", "Hei", "Elo", "Syy", "Lok", "Mar", "Jou"]
      },
      "fr": {
        goToToday: "Aller à aujourd'hui",
        format: "dd/MM/yyyy",
        firstDay: 1,
        days: ["L", "M", "M", "J", "V", "S", "D"],
        months: ['janvier', 'février', 'mars', 'avril', 'mai', 'juin', 'juillet', 'août', 'septembre', 'octobre', 'novembre', 'décembre'],
        short: ['janv.', 'févr.', 'mars', 'avr.', 'mai', 'juin', 'juil.', 'août', 'sept.', 'oct.', 'nov.', 'déc.']
      },
      "it": {
        goToToday: "Vai a oggi",
        format: "dd/MM/yyyy",
        firstDay: 1,
        days: ["L", "M", "M", "G", "V", "S", "D"],
        months: ['gennaio', 'febbraio', 'marzo', 'aprile', 'maggio', 'giugno', 'luglio', 'agosto', 'settembre', 'ottobre', 'novembre', 'dicembre'],
        short: ['gen', 'feb', 'mar', 'apr', 'mag', 'giu', 'lug', 'ago', 'set', 'ott', 'nov', 'dic']
      },
      "nl": {
        goToToday: "Ga naar vandaag",
        format: "dd-MM-yyyy",
        firstDay: 1,
        days: ["M", "D", "W", "D", "V", "Z", "Z"],
        months: ['januari', 'februari', 'maart', 'april', 'mei', 'juni', 'juli', 'augustus', 'september', 'oktober', 'november', 'december'],
        short: ['jan', 'feb', 'mrt', 'apr', 'mei', 'jun', 'jul', 'aug', 'sep', 'okt', 'nov', 'dec']
      },
      "pl": {
        goToToday: "Idź do dzisiaj",
        format: "dd.MM.yyyy",
        firstDay: 1,
        days: ["P", "W", "Ś", "C", "P", "S", "N"],
        months: ['styczeń', 'luty', 'marzec', 'kwiecień', 'maj', 'czerwiec', 'lipiec', 'sierpień', 'wrzesień', 'październik', 'listopad', 'grudzień'],
        short: ['sty', 'lut', 'mar', 'kwi', 'maj', 'cze', 'lip', 'sie', 'wrz', 'paź', 'lis', 'gru']
      }
    };
    var script$$ = {
      loadStyles: loadThemedStyles.loadStyles,
      components: {
        uiIconUp: uiIconUp,
        uiIconDown: uiIconDown,
        uiIconCalendar: uiIconCalendar,
        Popper: vuePopper_min
      },
      props: {
        value: {
          type: Date
        },
        locale: {
          type: String,
          default: "en-us"
        },
        placement: {
          type: String,
          default: "top-end"
        }
      },
      watch: {
        value: {
          handler: function handler(newVal) {
            // console.log("value watch", newVal);
            if (newVal) {
              this.inputVal = dateUtils.formatDate(newVal, this.localeObj);
              this.pickerDate = newVal;
            } else {
              this.inputVal = "";
              this.pickerDate = new Date();
            }
          },
          immediate: true
        }
      },
      computed: {
        popperOptions: function popperOptions() {
          return {
            placement: "bottom-start",
            modifiers: {
              preventOverflow: {
                enabled: false
              },
              offset: {
                enabled: false
              },
              keepTogether: {
                enabled: false
              },
              arrow: {
                enabled: false
              },
              flip: {
                enabled: false
              },
              hide: {
                enabled: false
              },
              computeStyle: {
                enabled: false
              },
              applyStyle: {
                enabled: true,
                fn: function fn(data, options) {
                  var input = data.instance.reference.getClientRects()[0];
                  var popper = data.instance.popper.getClientRects()[0];
                  var windowWidth = document.documentElement.clientWidth;
                  var windowHeight = document.documentElement.clientHeight; // below of above the input

                  var top = 0;
                  if (input.height + input.y + popper.height < windowHeight) top = input.height; // yay room to place it beneath
                  else top = 0 - popper.height; //crap, place it above
                  // left or rightside of the input

                  var right = 0;
                  if (popper.x + popper.width + input.width >= windowWidth) right = 0 - popper.width + input.width; // apply style

                  data.instance.popper.style.transform = "translate(" + right + "px, " + top + "px)";
                }
              }
            }
          };
        },
        localeObj: function localeObj() {
          if (locale$1[this.locale.toLowerCase()]) return locale$1[this.locale.toLowerCase()];
          if (locale$1[this.locale.split("-")[0].toLowerCase()]) return locale$1[this.locale.split("-")[0].toLowerCase()];
          return locale$1["en-us"];
        },
        years: function years() {
          var rtn = [];

          for (var i = this.yearStart; i < this.yearEnd; i++) {
            rtn.push(i);
          }

          return rtn;
        },
        yearStart: {
          get: function get() {
            return this.yearEnd - 12;
          },
          set: function set(val) {
            this.yearEnd = val + 12;
          }
        },
        currentMonth: function currentMonth() {
          return this.localeObj.months[this.pickerDate.getMonth()] + " " + this.pickerDate.getFullYear(); // return ['Januar', 'Februar', 'Marts', 'April', 'Maj', 'Juni', 'Juli', 'August', 'September', 'Oktober', 'November', 'December'][this.pickerDate.getMonth()]
          // + " " + this.pickerDate.getFullYear();// TODO
        },
        months: function months() {
          return this.localeObj.short; // return ['Jan', 'Feb', 'Mar', 'Apr', 'Maj', 'Jun', 'Jul', 'Aug', 'Sep', 'Okt', 'Nov', 'Dec'];
        },
        daysOfWeek: function daysOfWeek() {
          return this.localeObj.days; // ["M","T","O","T","F","L","S"]
        },
        blankDaysStart: function blankDaysStart() {
          var dObj = new Date(this.pickerDate.getFullYear(), this.pickerDate.getMonth(), 1, this.pickerDate.getHours(), this.pickerDate.getMinutes()); // if (this.mondayFirst) {

          if (this.localeObj.firstDay == 1) {
            return dObj.getDay() > 0 ? dObj.getDay() - 1 : 6;
          }

          return dObj.getDay();
        },
        blankDaysEnd: function blankDaysEnd() {
          return 7 - (this.blankDaysStart + this.days.length) % 7;
        },
        days: function days() {
          var d = this.pickerDate;
          var days = [];
          var dObj = new Date(this.pickerDate.getFullYear(), this.pickerDate.getMonth(), 1, this.pickerDate.getHours(), this.pickerDate.getMinutes());
          var daysInMonth = dateUtils.daysInMonth(dObj.getFullYear(), dObj.getMonth());

          for (var i = 0; i < daysInMonth; i++) {
            days.push({
              date: dObj.getDate(),
              timestamp: dObj.getTime(),
              isSelected: this.value && dateUtils.compareDates(dObj, this.value),
              // isDisabled: this.isDisabledDate(dObj),
              // isHighlighted: this.isHighlightedDate(dObj),
              // isHighlightStart: this.isHighlightStart(dObj),
              // isHighlightEnd: this.isHighlightEnd(dObj),
              isToday: dateUtils.compareDates(dObj, new Date()),
              isWeekend: dObj.getDay() === 0 || dObj.getDay() === 6,
              isSaturday: dObj.getDay() === 6,
              isSunday: dObj.getDay() === 0
            });
            dObj.setDate(dObj.getDate() + 1);
          }

          return days;
        }
      },
      methods: {
        parseTypedDate: function parseTypedDate() {
          if (!this.inputVal || this.inputVal == "") {
            this.$emit("input", "");
            return;
          }

          try {
            var parsed = parse(this.inputVal, this.localeObj.format); // this.pickerDate = parsed;

            if (parsed != "Invalid Date" && !dateUtils.compareDates(parsed, this.value)) this.$emit("input", parsed);
          } catch (ex) {} // var parsed = Moment(this.inputVal, this.localeObj.format.toUpperCase());
          // if(parsed.isValid()){
          //     // this.pickerDate = parsed.toDate();
          //     if(!dateUtils.compareDates(parsed.toDate(), this.value))
          //         this.$emit("input", parsed.toDate());
          // }
          // console.log("parsed", parsed);

        },
        selectDate: function selectDate(val) {
          var _this = this;

          this.$emit("input", new Date(val.timestamp));
          this.inputVal = dateUtils.formatDate(new Date(val.timestamp), this.localeObj); // this.showPicker = false;

          this.$refs.popper.doClose();
          this.$nextTick(function () {
            _this.$refs.popper.doClose();
          }); // console.log("inputval", this.inputVal);
        },
        selectYear: function selectYear(year) {
          this.year = year;
          this.showYear = false;
        },
        selectMonth: function selectMonth(index) {
          this.pickerDate.setMonth(index);
          this.pickerDate.setFullYear(this.year);
          this.pickerDate = new Date(this.pickerDate); // fire off change detection
        },
        getDayClasses: function getDayClasses(day) {
          return {
            'selectable': true,
            'selected': day.isSelected,
            // 'disabled': day.isDisabled,
            // 'highlighted': day.isHighlighted,
            'today': day.isToday,
            'weekend': day.isWeekend,
            'sat': day.isSaturday,
            'sun': day.isSunday // 'highlight-start': day.isHighlightStart,
            // 'highlight-end': day.isHighlightEnd

          };
        },
        // inputBlurred(){
        //     setTimeout(()=>{
        //         if(!this.cancelBlur)
        //             this.showPicker = false;
        //         this.cancelBlur = false;
        //     },500);            
        // },
        monthUp: function monthUp() {
          this.pickerDate.setMonth(this.pickerDate.getMonth() + 1);
          this.pickerDate = new Date(this.pickerDate); // fire off change detection
        },
        monthDown: function monthDown() {
          this.pickerDate.setMonth(this.pickerDate.getMonth() - 1);
          this.pickerDate = new Date(this.pickerDate); // fire off change detection
        },
        goToToday: function goToToday() {
          this.year = new Date().getFullYear();
          this.pickerDate = new Date();
        }
      },
      data: function data() {
        return {
          // showPicker : true, // TODO
          // cancelBlur : false,
          inputVal: "",
          showYear: false,
          pickerDate: this.value || new Date(),
          year: (this.value || new Date()).getFullYear(),
          yearEnd: new Date().getFullYear() - new Date().getFullYear() % 12 + 12
        };
      }
    };

    /* script */
    const __vue_script__$$ = script$$;

    /* template */
    var __vue_render__$B = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{staticClass:"uiDatePicker"},[_c('popper',{ref:"popper",attrs:{"trigger":"click","options":_vm.popperOptions}},[_c('div',{staticClass:"popper foldout"},[_c('div',{staticClass:"dayPicker"},[_c('div',{staticClass:"header"},[_c('span',{staticClass:"current"},[_vm._v(_vm._s(_vm.currentMonth))]),_vm._v(" "),_c('span',{staticClass:"navigate"},[_c('span',{staticClass:"up",on:{"click":function($event){return _vm.monthUp()}}},[_c('uiIconUp')],1),_vm._v(" "),_c('span',{staticClass:"down",on:{"click":function($event){return _vm.monthDown()}}},[_c('uiIconDown')],1)])]),_vm._v(" "),_c('div',{staticClass:"days"},_vm._l((_vm.daysOfWeek),function(day,index){return _c('span',{key:index},[_vm._v(_vm._s(day))])}),0),_vm._v(" "),_c('div',{staticClass:"days"},[(_vm.blankDaysStart > 0)?_vm._l((_vm.blankDaysStart),function(d){return _c('span',{key:d.timestamp})}):_vm._e(),_vm._v(" "),_vm._l((_vm.days),function(day){return _c('span',{key:day.timestamp,class:_vm.getDayClasses(day),on:{"click":function($event){return _vm.selectDate(day)}}},[_vm._v(_vm._s(day.date))])}),_vm._v(" "),(_vm.blankDaysEnd > 0)?_vm._l((_vm.blankDaysEnd),function(d){return _c('span',{key:d.timestamp})}):_vm._e()],2)]),_vm._v(" "),(!_vm.showYear)?_c('div',{staticClass:"monthPicker"},[_c('div',{staticClass:"header"},[_c('span',{staticClass:"current pointer",on:{"click":function($event){_vm.showYear=true;}}},[_vm._v(_vm._s(_vm.year))]),_vm._v(" "),_c('span',{staticClass:"navigate"},[_c('span',{staticClass:"up",on:{"click":function($event){_vm.year++;}}},[_c('uiIconUp')],1),_vm._v(" "),_c('span',{staticClass:"down",on:{"click":function($event){_vm.year--;}}},[_c('uiIconDown')],1)])]),_vm._v(" "),_c('div',{staticClass:"months"},_vm._l((_vm.months),function(month,index){return _c('span',{key:index,on:{"click":function($event){return _vm.selectMonth(index)}}},[_vm._v("\n                        "+_vm._s(month)+"\n                    ")])}),0),_vm._v(" "),_c('div',{staticClass:"goToToday"},[_c('span',{on:{"click":function($event){return _vm.goToToday()}}},[_vm._v(_vm._s(_vm.localeObj.goToToday))])])]):_vm._e(),_vm._v(" "),(_vm.showYear)?_c('div',{staticClass:"yearPicker"},[_c('div',{staticClass:"header"},[_c('span',{staticClass:"current pointer",on:{"click":function($event){_vm.showYear=false;}}},[_vm._v(_vm._s(_vm.yearStart)+" - "+_vm._s(_vm.yearEnd-1))]),_vm._v(" "),_c('span',{staticClass:"navigate"},[_c('span',{staticClass:"up",on:{"click":function($event){_vm.yearStart+=12;}}},[_c('uiIconUp')],1),_vm._v(" "),_c('span',{staticClass:"down",on:{"click":function($event){_vm.yearStart-=12;}}},[_c('uiIconDown')],1)])]),_vm._v(" "),_c('div',{staticClass:"years"},_vm._l((_vm.years),function(year){return _c('span',{key:year,on:{"click":function($event){return _vm.selectYear(year)}}},[_vm._v("\n                        "+_vm._s(year)+"\n                    ")])}),0),_vm._v(" "),_c('div',{staticClass:"goToToday"},[_c('span',{on:{"click":function($event){return _vm.goToToday()}}},[_vm._v(_vm._s(_vm.localeObj.goToToday))])])]):_vm._e()]),_vm._v(" "),_c('div',{staticClass:"inputGroup",attrs:{"slot":"reference"},slot:"reference"},[_c('div',{staticClass:"inputContainer"},[_c('input',{directives:[{name:"model",rawName:"v-model",value:(_vm.inputVal),expression:"inputVal"}],attrs:{"type":"text"},domProps:{"value":(_vm.inputVal)},on:{"blur":_vm.parseTypedDate,"input":function($event){if($event.target.composing){ return; }_vm.inputVal=$event.target.value;}}})]),_vm._v(" "),_c('div',{staticClass:"iconContainer"},[_c('uiIconCalendar')],1)])])],1)};
    var __vue_staticRenderFns__$B = [];

      /* style */
      const __vue_inject_styles__$$ = function (inject) {
        if (!inject) return
        inject("data-v-5077fc00_0", { source: ".popper[data-v-5077fc00]{width:auto;background-color:#fafafa;color:#212121;text-align:center;padding:2px;display:inline-block;border-radius:3px;position:absolute;font-size:14px;font-weight:400;border:1px #ebebeb solid;z-index:200000;-moz-box-shadow:#3a3a3a 0 0 6px 0;-webkit-box-shadow:#3a3a3a 0 0 6px 0;box-shadow:#3a3a3a 0 0 6px 0}.popper .popper__arrow[data-v-5077fc00]{width:0;height:0;border-style:solid;position:absolute;margin:5px}.popper[x-placement^=top][data-v-5077fc00]{margin-bottom:5px}.popper[x-placement^=top] .popper__arrow[data-v-5077fc00]{border-width:5px 5px 0 5px;border-color:#fafafa transparent transparent transparent;bottom:-5px;left:calc(50% - 5px);margin-top:0;margin-bottom:0}.popper[x-placement^=bottom][data-v-5077fc00]{margin-top:5px}.popper[x-placement^=bottom] .popper__arrow[data-v-5077fc00]{border-width:0 5px 5px 5px;border-color:transparent transparent #fafafa transparent;top:-5px;left:calc(50% - 5px);margin-top:0;margin-bottom:0}.popper[x-placement^=right][data-v-5077fc00]{margin-left:5px}.popper[x-placement^=right] .popper__arrow[data-v-5077fc00]{border-width:5px 5px 5px 0;border-color:transparent #fafafa transparent transparent;left:-5px;top:calc(50% - 5px);margin-left:0;margin-right:0}.popper[x-placement^=left][data-v-5077fc00]{margin-right:5px}.popper[x-placement^=left] .popper__arrow[data-v-5077fc00]{border-width:5px 0 5px 5px;border-color:transparent transparent transparent #fafafa;right:-5px;top:calc(50% - 5px);margin-left:0;margin-right:0}.uiDatePicker[data-v-5077fc00]{position:relative;font-family:\"Segoe UI WestEuropean\",\"Segoe UI\",-apple-system,BlinkMacSystemFont,Roboto,\"Helvetica Neue\",sans-serif;-webkit-font-smoothing:antialiased;box-sizing:border-box;margin:0;padding:0;-webkit-box-shadow:none;-moz-box-shadow:none;box-shadow:none;color:\"[theme:neutralPrimary, default: #333333]\";font-size:12px;font-weight:400}.foldout[data-v-5077fc00]{background-color:#fff;width:420px;box-shadow:1px 1px 5px 0 rgba(0,0,0,.75);user-select:none}.foldout>div[data-v-5077fc00]{display:table-cell;vertical-align:top}.header[data-v-5077fc00]{padding:7px;display:flex;justify-content:space-between}.header .current[data-v-5077fc00]{font-weight:700}.header .navigate[data-v-5077fc00]{cursor:pointer}.header .navigate .up[data-v-5077fc00]{padding:6px 8px}.header .navigate .up[data-v-5077fc00]:hover{background-color:#d3d3d3}.header .navigate .down[data-v-5077fc00]{padding:6px 8px}.header .navigate .down[data-v-5077fc00]:hover{background-color:#d3d3d3}.monthPicker[data-v-5077fc00],.yearPicker[data-v-5077fc00]{width:210px;padding:5px}.monthPicker .months[data-v-5077fc00],.monthPicker .years[data-v-5077fc00],.yearPicker .months[data-v-5077fc00],.yearPicker .years[data-v-5077fc00]{width:200px;display:flex;flex-wrap:wrap;justify-content:space-between}.monthPicker .months span[data-v-5077fc00],.monthPicker .years span[data-v-5077fc00],.yearPicker .months span[data-v-5077fc00],.yearPicker .years span[data-v-5077fc00]{flex-basis:40px;padding:12px 2px;text-align:center;margin-bottom:12px;cursor:pointer}.monthPicker .months span[data-v-5077fc00]:hover,.monthPicker .years span[data-v-5077fc00]:hover,.yearPicker .months span[data-v-5077fc00]:hover,.yearPicker .years span[data-v-5077fc00]:hover{background-color:#d3d3d3}.monthPicker .goToToday[data-v-5077fc00],.yearPicker .goToToday[data-v-5077fc00]{text-align:right;padding:5px}.monthPicker .goToToday span[data-v-5077fc00],.yearPicker .goToToday span[data-v-5077fc00]{cursor:pointer}.dayPicker[data-v-5077fc00]{width:210px;padding:5px;border-right:solid 1px #edebe9}.dayPicker .days[data-v-5077fc00]{width:200px;display:flex;flex-wrap:wrap;justify-content:space-between}.dayPicker .days span[data-v-5077fc00]{flex-basis:20px;padding:4px;text-align:center}.dayPicker .days span.selectable[data-v-5077fc00]{cursor:pointer}.dayPicker .days span.selectable[data-v-5077fc00]:hover{background-color:#d3d3d3}.dayPicker .days span.today[data-v-5077fc00]{background-color:\"[theme:themePrimary, default: #0078d7]\";color:\"[theme:white, default: #ffffff]\"}.dayPicker .days span.selected[data-v-5077fc00]{background-color:\"[theme:themeLight, default: #c7e0f4]\"}.pointer[data-v-5077fc00]{cursor:pointer}.inputGroup[data-v-5077fc00]{display:inline-block;padding-right:8px;border:1px solid \"[theme:neutralTertiaryAlt, default: #c8c8c8]\";border-radius:2px}.inputGroup .inputContainer[data-v-5077fc00]{display:table-cell;width:100%}.inputGroup .inputContainer input[data-v-5077fc00]{height:30px;width:100%;box-sizing:border-box;padding:0 8px;border:none;font-weight:300;font-size:14px;color:\"[theme:neutralPrimary, default: #333333]\"}.inputGroup .inputContainer input[data-v-5077fc00]:focus{outline:0}.inputGroup .iconContainer[data-v-5077fc00]{display:table-cell}.inputGroup .iconContainer .ms-Icon[data-v-5077fc00]{vertical-align:-4px;font-size:18px}@media screen and (max-width:450px){.monthPicker[data-v-5077fc00],.yearPicker[data-v-5077fc00]{display:none!important}.dayPicker[data-v-5077fc00]{border-right:none!important}.foldout[data-v-5077fc00]{width:210px}}", map: undefined, media: undefined });

      };
      /* scoped */
      const __vue_scope_id__$$ = "data-v-5077fc00";
      /* module identifier */
      const __vue_module_identifier__$$ = undefined;
      /* functional template */
      const __vue_is_functional_template__$$ = false;
      /* style inject */
      const __vue_create_injector__$q = function(context){ 
                    return function(scopeId, data)
                    {
                        if(window['wizstyle-'+scopeId])
                            return;
                        if(__vue_script__$$.loadStyles)
                            __vue_script__$$.loadStyles(data.source);
                        window['wizstyle-'+scopeId]=true;
                    }
                };
      /* style inject SSR */
      
      /* style inject shadow dom */
      

      
      var uiDatePicker = normalizeComponent(
        { render: __vue_render__$B, staticRenderFns: __vue_staticRenderFns__$B },
        __vue_inject_styles__$$,
        __vue_script__$$,
        __vue_scope_id__$$,
        __vue_is_functional_template__$$,
        __vue_module_identifier__$$,
        false,
        __vue_create_injector__$q,
        undefined,
        undefined
      );

    /**
     * lodash (Custom Build) <https://lodash.com/>
     * Build: `lodash modularize exports="npm" -o ./`
     * Copyright jQuery Foundation and other contributors <https://jquery.org/>
     * Released under MIT license <https://lodash.com/license>
     * Based on Underscore.js 1.8.3 <http://underscorejs.org/LICENSE>
     * Copyright Jeremy Ashkenas, DocumentCloud and Investigative Reporters & Editors
     */

    /** Used as the `TypeError` message for "Functions" methods. */
    var FUNC_ERROR_TEXT = 'Expected a function';

    /** Used as references for various `Number` constants. */
    var NAN = 0 / 0;

    /** `Object#toString` result references. */
    var symbolTag = '[object Symbol]';

    /** Used to match leading and trailing whitespace. */
    var reTrim = /^\s+|\s+$/g;

    /** Used to detect bad signed hexadecimal string values. */
    var reIsBadHex = /^[-+]0x[0-9a-f]+$/i;

    /** Used to detect binary string values. */
    var reIsBinary = /^0b[01]+$/i;

    /** Used to detect octal string values. */
    var reIsOctal = /^0o[0-7]+$/i;

    /** Built-in method references without a dependency on `root`. */
    var freeParseInt = parseInt;

    /** Detect free variable `global` from Node.js. */
    var freeGlobal = typeof commonjsGlobal == 'object' && commonjsGlobal && commonjsGlobal.Object === Object && commonjsGlobal;

    /** Detect free variable `self`. */
    var freeSelf = typeof self == 'object' && self && self.Object === Object && self;

    /** Used as a reference to the global object. */
    var root = freeGlobal || freeSelf || Function('return this')();

    /** Used for built-in method references. */
    var objectProto = Object.prototype;

    /**
     * Used to resolve the
     * [`toStringTag`](http://ecma-international.org/ecma-262/7.0/#sec-object.prototype.tostring)
     * of values.
     */
    var objectToString = objectProto.toString;

    /* Built-in method references for those with the same name as other `lodash` methods. */
    var nativeMax = Math.max,
        nativeMin = Math.min;

    /**
     * Gets the timestamp of the number of milliseconds that have elapsed since
     * the Unix epoch (1 January 1970 00:00:00 UTC).
     *
     * @static
     * @memberOf _
     * @since 2.4.0
     * @category Date
     * @returns {number} Returns the timestamp.
     * @example
     *
     * _.defer(function(stamp) {
     *   console.log(_.now() - stamp);
     * }, _.now());
     * // => Logs the number of milliseconds it took for the deferred invocation.
     */
    var now = function() {
      return root.Date.now();
    };

    /**
     * Creates a debounced function that delays invoking `func` until after `wait`
     * milliseconds have elapsed since the last time the debounced function was
     * invoked. The debounced function comes with a `cancel` method to cancel
     * delayed `func` invocations and a `flush` method to immediately invoke them.
     * Provide `options` to indicate whether `func` should be invoked on the
     * leading and/or trailing edge of the `wait` timeout. The `func` is invoked
     * with the last arguments provided to the debounced function. Subsequent
     * calls to the debounced function return the result of the last `func`
     * invocation.
     *
     * **Note:** If `leading` and `trailing` options are `true`, `func` is
     * invoked on the trailing edge of the timeout only if the debounced function
     * is invoked more than once during the `wait` timeout.
     *
     * If `wait` is `0` and `leading` is `false`, `func` invocation is deferred
     * until to the next tick, similar to `setTimeout` with a timeout of `0`.
     *
     * See [David Corbacho's article](https://css-tricks.com/debouncing-throttling-explained-examples/)
     * for details over the differences between `_.debounce` and `_.throttle`.
     *
     * @static
     * @memberOf _
     * @since 0.1.0
     * @category Function
     * @param {Function} func The function to debounce.
     * @param {number} [wait=0] The number of milliseconds to delay.
     * @param {Object} [options={}] The options object.
     * @param {boolean} [options.leading=false]
     *  Specify invoking on the leading edge of the timeout.
     * @param {number} [options.maxWait]
     *  The maximum time `func` is allowed to be delayed before it's invoked.
     * @param {boolean} [options.trailing=true]
     *  Specify invoking on the trailing edge of the timeout.
     * @returns {Function} Returns the new debounced function.
     * @example
     *
     * // Avoid costly calculations while the window size is in flux.
     * jQuery(window).on('resize', _.debounce(calculateLayout, 150));
     *
     * // Invoke `sendMail` when clicked, debouncing subsequent calls.
     * jQuery(element).on('click', _.debounce(sendMail, 300, {
     *   'leading': true,
     *   'trailing': false
     * }));
     *
     * // Ensure `batchLog` is invoked once after 1 second of debounced calls.
     * var debounced = _.debounce(batchLog, 250, { 'maxWait': 1000 });
     * var source = new EventSource('/stream');
     * jQuery(source).on('message', debounced);
     *
     * // Cancel the trailing debounced invocation.
     * jQuery(window).on('popstate', debounced.cancel);
     */
    function debounce$1(func, wait, options) {
      var lastArgs,
          lastThis,
          maxWait,
          result,
          timerId,
          lastCallTime,
          lastInvokeTime = 0,
          leading = false,
          maxing = false,
          trailing = true;

      if (typeof func != 'function') {
        throw new TypeError(FUNC_ERROR_TEXT);
      }
      wait = toNumber(wait) || 0;
      if (isObject(options)) {
        leading = !!options.leading;
        maxing = 'maxWait' in options;
        maxWait = maxing ? nativeMax(toNumber(options.maxWait) || 0, wait) : maxWait;
        trailing = 'trailing' in options ? !!options.trailing : trailing;
      }

      function invokeFunc(time) {
        var args = lastArgs,
            thisArg = lastThis;

        lastArgs = lastThis = undefined;
        lastInvokeTime = time;
        result = func.apply(thisArg, args);
        return result;
      }

      function leadingEdge(time) {
        // Reset any `maxWait` timer.
        lastInvokeTime = time;
        // Start the timer for the trailing edge.
        timerId = setTimeout(timerExpired, wait);
        // Invoke the leading edge.
        return leading ? invokeFunc(time) : result;
      }

      function remainingWait(time) {
        var timeSinceLastCall = time - lastCallTime,
            timeSinceLastInvoke = time - lastInvokeTime,
            result = wait - timeSinceLastCall;

        return maxing ? nativeMin(result, maxWait - timeSinceLastInvoke) : result;
      }

      function shouldInvoke(time) {
        var timeSinceLastCall = time - lastCallTime,
            timeSinceLastInvoke = time - lastInvokeTime;

        // Either this is the first call, activity has stopped and we're at the
        // trailing edge, the system time has gone backwards and we're treating
        // it as the trailing edge, or we've hit the `maxWait` limit.
        return (lastCallTime === undefined || (timeSinceLastCall >= wait) ||
          (timeSinceLastCall < 0) || (maxing && timeSinceLastInvoke >= maxWait));
      }

      function timerExpired() {
        var time = now();
        if (shouldInvoke(time)) {
          return trailingEdge(time);
        }
        // Restart the timer.
        timerId = setTimeout(timerExpired, remainingWait(time));
      }

      function trailingEdge(time) {
        timerId = undefined;

        // Only invoke if we have `lastArgs` which means `func` has been
        // debounced at least once.
        if (trailing && lastArgs) {
          return invokeFunc(time);
        }
        lastArgs = lastThis = undefined;
        return result;
      }

      function cancel() {
        if (timerId !== undefined) {
          clearTimeout(timerId);
        }
        lastInvokeTime = 0;
        lastArgs = lastCallTime = lastThis = timerId = undefined;
      }

      function flush() {
        return timerId === undefined ? result : trailingEdge(now());
      }

      function debounced() {
        var time = now(),
            isInvoking = shouldInvoke(time);

        lastArgs = arguments;
        lastThis = this;
        lastCallTime = time;

        if (isInvoking) {
          if (timerId === undefined) {
            return leadingEdge(lastCallTime);
          }
          if (maxing) {
            // Handle invocations in a tight loop.
            timerId = setTimeout(timerExpired, wait);
            return invokeFunc(lastCallTime);
          }
        }
        if (timerId === undefined) {
          timerId = setTimeout(timerExpired, wait);
        }
        return result;
      }
      debounced.cancel = cancel;
      debounced.flush = flush;
      return debounced;
    }

    /**
     * Checks if `value` is the
     * [language type](http://www.ecma-international.org/ecma-262/7.0/#sec-ecmascript-language-types)
     * of `Object`. (e.g. arrays, functions, objects, regexes, `new Number(0)`, and `new String('')`)
     *
     * @static
     * @memberOf _
     * @since 0.1.0
     * @category Lang
     * @param {*} value The value to check.
     * @returns {boolean} Returns `true` if `value` is an object, else `false`.
     * @example
     *
     * _.isObject({});
     * // => true
     *
     * _.isObject([1, 2, 3]);
     * // => true
     *
     * _.isObject(_.noop);
     * // => true
     *
     * _.isObject(null);
     * // => false
     */
    function isObject(value) {
      var type = typeof value;
      return !!value && (type == 'object' || type == 'function');
    }

    /**
     * Checks if `value` is object-like. A value is object-like if it's not `null`
     * and has a `typeof` result of "object".
     *
     * @static
     * @memberOf _
     * @since 4.0.0
     * @category Lang
     * @param {*} value The value to check.
     * @returns {boolean} Returns `true` if `value` is object-like, else `false`.
     * @example
     *
     * _.isObjectLike({});
     * // => true
     *
     * _.isObjectLike([1, 2, 3]);
     * // => true
     *
     * _.isObjectLike(_.noop);
     * // => false
     *
     * _.isObjectLike(null);
     * // => false
     */
    function isObjectLike(value) {
      return !!value && typeof value == 'object';
    }

    /**
     * Checks if `value` is classified as a `Symbol` primitive or object.
     *
     * @static
     * @memberOf _
     * @since 4.0.0
     * @category Lang
     * @param {*} value The value to check.
     * @returns {boolean} Returns `true` if `value` is a symbol, else `false`.
     * @example
     *
     * _.isSymbol(Symbol.iterator);
     * // => true
     *
     * _.isSymbol('abc');
     * // => false
     */
    function isSymbol(value) {
      return typeof value == 'symbol' ||
        (isObjectLike(value) && objectToString.call(value) == symbolTag);
    }

    /**
     * Converts `value` to a number.
     *
     * @static
     * @memberOf _
     * @since 4.0.0
     * @category Lang
     * @param {*} value The value to process.
     * @returns {number} Returns the number.
     * @example
     *
     * _.toNumber(3.2);
     * // => 3.2
     *
     * _.toNumber(Number.MIN_VALUE);
     * // => 5e-324
     *
     * _.toNumber(Infinity);
     * // => Infinity
     *
     * _.toNumber('3.2');
     * // => 3.2
     */
    function toNumber(value) {
      if (typeof value == 'number') {
        return value;
      }
      if (isSymbol(value)) {
        return NAN;
      }
      if (isObject(value)) {
        var other = typeof value.valueOf == 'function' ? value.valueOf() : value;
        value = isObject(other) ? (other + '') : other;
      }
      if (typeof value != 'string') {
        return value === 0 ? value : +value;
      }
      value = value.replace(reTrim, '');
      var isBinary = reIsBinary.test(value);
      return (isBinary || reIsOctal.test(value))
        ? freeParseInt(value.slice(2), isBinary ? 2 : 8)
        : (reIsBadHex.test(value) ? NAN : +value);
    }

    var lodash_debounce = debounce$1;

    //
    var script$10 = {
      loadStyles: loadThemedStyles.loadStyles,
      components: {
        uiTextfield: uiTextfield,
        uiIconChevronDownMed: uiIconChevronDownMed,
        Popper: vuePopper_min
      },
      props: ['options', //Array of available options to display in dropdown
      'display', //String that decides what attribute on the options is used for display and typeahead
      'placeholderText', //String to use as placeholder text
      'label', //Label
      'autoselectOff'],
      data: function data() {
        return {
          selected: null,
          userInput: ''
        };
      },
      methods: {
        selectOption: function selectOption(option) {
          this.selected = option;
          this.userInput = option[this.display];
        },
        //Autoselects an option if userinput matches display attribute
        autoselectMatch: lodash_debounce(function () {
          var _this = this;

          if (this.autoselectOff == true) {
            return;
          }

          this.options.forEach(function (option) {
            //Regex for exact match but case insensitive
            var regex = new RegExp('^' + _this.userInput + '$', 'i');

            if (regex.test(option[_this.display])) {
              _this.selectOption(option);
            }
          });
        }, 500),
        setUserInput: function setUserInput(newInput) {
          this.userInput = newInput;
        },
        inputBlurred: function inputBlurred() {
          this.$refs.popper.doClose();
        }
      },
      computed: {
        popperOptions: function popperOptions() {
          return {
            placement: "bottom-end",
            positionFixed: true,
            modifiers: {
              preventOverflow: {
                enabled: true
              },
              flip: {
                enabled: true
              },
              autoSizing: {
                enabled: true,
                fn: function autoSizing(data) {
                  data.styles.width = data.offsets.reference.width - 2;
                  return data;
                },
                order: 840
              }
            }
          };
        }
      },
      watch: {
        "userInput": lodash_debounce(function (newVal) {
          if (this.selected == null || this.selected[this.display] != newVal) {
            this.$refs.popper.doShow();
          }
          this.autoselectMatch();
          this.$emit('inputChanged', newVal);
        }, 500),
        "selected": function selected(newVal) {
          this.$refs.popper.doClose();
          this.$emit('optionSelected', newVal);
        }
      }
    };

    /* script */
    const __vue_script__$10 = script$10;

    /* template */
    var __vue_render__$C = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{staticClass:"uiTypeAhead"},[_c('popper',{ref:"popper",attrs:{"trigger":"click","options":_vm.popperOptions}},[_c('div',{staticClass:"popper foldout"},[_c('div',{staticClass:"optionlist"},_vm._l((_vm.options),function(option){return _c('div',{key:option.id,staticClass:"option",class:{ 'selectedOption' : _vm.selected != null && option.id == _vm.selected.id },on:{"click":function($event){return _vm.selectOption(option)},"mousedown":function($event){$event.preventDefault();}}},[_vm._v("\n                    "+_vm._s(option[_vm.display])+"\n                ")])}),0)]),_vm._v(" "),_c('div',{staticClass:"inputGroup",attrs:{"slot":"reference"},slot:"reference"},[_c('div',{staticClass:"inputContainer"},[_c('uiTextfield',{attrs:{"label":_vm.label,"placeholder":_vm.placeholderText},on:{"blur":function($event){return _vm.inputBlurred()}},model:{value:(_vm.userInput),callback:function ($$v) {_vm.userInput=$$v;},expression:"userInput"}}),_vm._v(" "),_c('uiIconChevronDownMed',{staticClass:"chevronIcon"})],1)])])],1)};
    var __vue_staticRenderFns__$C = [];

      /* style */
      const __vue_inject_styles__$10 = function (inject) {
        if (!inject) return
        inject("data-v-59d1ae7c_0", { source: ".popper[data-v-59d1ae7c]{width:auto;background-color:#fafafa;color:#212121;text-align:center;padding:2px;display:inline-block;border-radius:3px;position:absolute;font-size:14px;font-weight:400;border:1px #ebebeb solid;z-index:200000;-moz-box-shadow:#3a3a3a 0 0 6px 0;-webkit-box-shadow:#3a3a3a 0 0 6px 0;box-shadow:#3a3a3a 0 0 6px 0}.popper .popper__arrow[data-v-59d1ae7c]{width:0;height:0;border-style:solid;position:absolute;margin:5px}.popper[x-placement^=top][data-v-59d1ae7c]{margin-bottom:5px}.popper[x-placement^=top] .popper__arrow[data-v-59d1ae7c]{border-width:5px 5px 0 5px;border-color:#fafafa transparent transparent transparent;bottom:-5px;left:calc(50% - 5px);margin-top:0;margin-bottom:0}.popper[x-placement^=bottom][data-v-59d1ae7c]{margin-top:5px}.popper[x-placement^=bottom] .popper__arrow[data-v-59d1ae7c]{border-width:0 5px 5px 5px;border-color:transparent transparent #fafafa transparent;top:-5px;left:calc(50% - 5px);margin-top:0;margin-bottom:0}.popper[x-placement^=right][data-v-59d1ae7c]{margin-left:5px}.popper[x-placement^=right] .popper__arrow[data-v-59d1ae7c]{border-width:5px 5px 5px 0;border-color:transparent #fafafa transparent transparent;left:-5px;top:calc(50% - 5px);margin-left:0;margin-right:0}.popper[x-placement^=left][data-v-59d1ae7c]{margin-right:5px}.popper[x-placement^=left] .popper__arrow[data-v-59d1ae7c]{border-width:5px 0 5px 5px;border-color:transparent transparent transparent #fafafa;right:-5px;top:calc(50% - 5px);margin-left:0;margin-right:0}.inputGroup[data-v-59d1ae7c]{position:relative}.inputGroup .chevronIcon[data-v-59d1ae7c]{color:\"[theme:neutralDark, default: #212121]\";font-size:12px;position:absolute;right:13px;bottom:7px;pointer-events:none}.inputGroup[data-v-59d1ae7c]  .ms-TextField-field{padding-right:32px}.foldout[data-v-59d1ae7c]{background-color:#fff;margin:0!important;padding:0;box-shadow:1px 1px 5px 0 \"[theme:neutralQuaternaryAlt, default: #dadada]\";border-radius:2px}.optionlist[data-v-59d1ae7c]{max-height:200px;overflow:auto}.option[data-v-59d1ae7c]{height:19px;font-weight:400;padding:7px 10px 7px 10px;text-align:left;white-space:nowrap;cursor:pointer;color:\"[theme:neutralPrimary, default: #333333]\"}.option[data-v-59d1ae7c]:hover{color:\"[theme:black, default: #000000]\";background-color:\"[theme:neutralLight, default: #eaeaea]\"}.selectedOption[data-v-59d1ae7c]{color:\"[theme:black, default: #000000]\";background-color:\"[theme:themeLight, default: #c7e0f4]\"}.selectedOption[data-v-59d1ae7c]:hover{background-color:\"[theme:themeLight, default: #c7e0f4]\"}", map: undefined, media: undefined });

      };
      /* scoped */
      const __vue_scope_id__$10 = "data-v-59d1ae7c";
      /* module identifier */
      const __vue_module_identifier__$10 = undefined;
      /* functional template */
      const __vue_is_functional_template__$10 = false;
      /* style inject */
      const __vue_create_injector__$r = function(context){ 
                    return function(scopeId, data)
                    {
                        if(window['wizstyle-'+scopeId])
                            return;
                        if(__vue_script__$10.loadStyles)
                            __vue_script__$10.loadStyles(data.source);
                        window['wizstyle-'+scopeId]=true;
                    }
                };
      /* style inject SSR */
      
      /* style inject shadow dom */
      

      
      var uiTypeAhead = normalizeComponent(
        { render: __vue_render__$C, staticRenderFns: __vue_staticRenderFns__$C },
        __vue_inject_styles__$10,
        __vue_script__$10,
        __vue_scope_id__$10,
        __vue_is_functional_template__$10,
        __vue_module_identifier__$10,
        false,
        __vue_create_injector__$r,
        undefined,
        undefined
      );

    /*! *****************************************************************************
    Copyright (c) Microsoft Corporation. All rights reserved.
    Licensed under the Apache License, Version 2.0 (the "License"); you may not use
    this file except in compliance with the License. You may obtain a copy of the
    License at http://www.apache.org/licenses/LICENSE-2.0

    THIS CODE IS PROVIDED ON AN *AS IS* BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
    KIND, EITHER EXPRESS OR IMPLIED, INCLUDING WITHOUT LIMITATION ANY IMPLIED
    WARRANTIES OR CONDITIONS OF TITLE, FITNESS FOR A PARTICULAR PURPOSE,
    MERCHANTABLITY OR NON-INFRINGEMENT.

    See the Apache Version 2.0 License for specific language governing permissions
    and limitations under the License.
    ***************************************************************************** */
    /* global Reflect, Promise */

    var extendStatics$1 = Object.setPrototypeOf ||
        ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||
        function (d, b) { for (var p in b) if (b.hasOwnProperty(p)) d[p] = b[p]; };

    function __extends$1(d, b) {
        extendStatics$1(d, b);
        function __() { this.constructor = d; }
        d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());
    }

    var __assign$1 = Object.assign || function __assign(t) {
        for (var s, i = 1, n = arguments.length; i < n; i++) {
            s = arguments[i];
            for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p)) t[p] = s[p];
        }
        return t;
    };









    function __awaiter$1(thisArg, _arguments, P, generator) {
        return new (P || (P = Promise))(function (resolve, reject) {
            function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
            function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
            function step(result) { result.done ? resolve(result.value) : new P(function (resolve) { resolve(result.value); }).then(fulfilled, rejected); }
            step((generator = generator.apply(thisArg, _arguments || [])).next());
        });
    }

    function __generator$1(thisArg, body) {
        var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g;
        return g = { next: verb(0), "throw": verb(1), "return": verb(2) }, typeof Symbol === "function" && (g[Symbol.iterator] = function() { return this; }), g;
        function verb(n) { return function (v) { return step([n, v]); }; }
        function step(op) {
            if (f) throw new TypeError("Generator is already executing.");
            while (_) try {
                if (f = 1, y && (t = y[op[0] & 2 ? "return" : op[0] ? "throw" : "next"]) && !(t = t.call(y, op[1])).done) return t;
                if (y = 0, t) op = [0, t.value];
                switch (op[0]) {
                    case 0: case 1: t = op; break;
                    case 4: _.label++; return { value: op[1], done: false };
                    case 5: _.label++; y = op[1]; op = [0]; continue;
                    case 7: op = _.ops.pop(); _.trys.pop(); continue;
                    default:
                        if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { _ = 0; continue; }
                        if (op[0] === 3 && (!t || (op[1] > t[0] && op[1] < t[3]))) { _.label = op[1]; break; }
                        if (op[0] === 6 && _.label < t[1]) { _.label = t[1]; t = op; break; }
                        if (t && _.label < t[2]) { _.label = t[2]; _.ops.push(op); break; }
                        if (t[2]) _.ops.pop();
                        _.trys.pop(); continue;
                }
                op = body.call(thisArg, _);
            } catch (e) { op = [6, e]; y = 0; } finally { f = t = 0; }
            if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true };
        }
    }

    var WizdomPageViewCache = /** @class */ (function () {
        function WizdomPageViewCache(parent, forceNoCache) {
            this.parent = parent;
            this.forceNoCache = forceNoCache;
        }
        WizdomPageViewCache.prototype.GetCache = function () {
            var globalCacheVariable = this.parent.getGlobalVariable();
            var funcCacheVariable = "PageView";
            if (globalCacheVariable[funcCacheVariable] == null)
                globalCacheVariable[funcCacheVariable] = {};
            return globalCacheVariable[funcCacheVariable];
        };
        WizdomPageViewCache.prototype.GetCacheObject = function (key) {
            return this.GetCache()[key.replace(/[\W_]+/g, "")];
            
        };
        WizdomPageViewCache.prototype.SetCacheObject = function (key, funcResult) {
            var cacheObj = {
                data: funcResult,
                created: new Date(Date.now()).toUTCString()
            };
            this.GetCache()[key.replace(/[\W_]+/g, "")] = cacheObj;
        };
        /**
         * @param key  Should be [Module].[Function] ex. Megamenu.GetMenu:user(at)wizdom.onmicrosoft.com:da-dk
         * @param func  Any function
         * @param expiresInMilliseconds  The func will not be invoked again within the expire period.
         */
        WizdomPageViewCache.prototype.ExecuteCached = function (key, func, expiresInMilliseconds) {
            var cacheObj = this.GetCacheObject(key);
            if (!this.forceNoCache && cacheObj && cacheObj.created) {
                var now = new Date(Date.now());
                var created = new Date(cacheObj.created);
                var expires = new Date(created.getTime() + expiresInMilliseconds);
                if (expires.getTime() > now.getTime()) {
                    return cacheObj.data;
                }
            }
            var result = func();
            this.SetCacheObject(key, result);
            return result;
        };
        return WizdomPageViewCache;
    }());

    var WizdomLocalStorageCache = /** @class */ (function () {
        function WizdomLocalStorageCache(pageViewCache, forceNoCache, timestamps) {
            this.pageViewCache = pageViewCache;
            this.forceNoCache = forceNoCache;
            this.timestamps = timestamps;
        }
        WizdomLocalStorageCache.prototype.GetCacheObject = function (key) {
            var cachedStr = window.localStorage.getItem("Wizdom:" + key);
            return JSON.parse(cachedStr);
        };
        WizdomLocalStorageCache.prototype.SetCacheObject = function (key, data) {
            var cacheObj = JSON.stringify({
                data: data,
                created: new Date(Date.now()).toUTCString()
            });
            window.localStorage.setItem("Wizdom:" + key, cacheObj);
        };
        /**
         * @param key  Should be [Module].[Function]:[variables] ex. Megamenu.GetMenu:user(at)wizdom.onmicrosoft.com:da-dk
         * @param func  A function that returns a promise.
         * @param expiresInMilliseconds  If the cache has not been updated within the expiration period. The func will be executed immediately.
         * @param refreshInMilliseconds  If the cache has not been updated within the refresh period. The cached data will be returned and the func will be executed in the background.
         * @param refreshDelayInMilliseconds  If the refresh period is expired. The func will be executed delayed by these seconds. Use this to remove load from the first few seconds of a pageload.
         * @returns Promise<T>
         */
        WizdomLocalStorageCache.prototype.ExecuteCached = function (key, func, expiresInMilliseconds, refreshInMilliseconds, refreshDelayInMilliseconds) {
            if (refreshDelayInMilliseconds === void 0) { refreshDelayInMilliseconds = 0; }
            return __awaiter$1(this, void 0, void 0, function () {
                var module, timestampPromise, cacheObj, now, created, expires, _a, _b, refreshTime;
                var _this = this;
                return __generator$1(this, function (_c) {
                    switch (_c.label) {
                        case 0:
                            module = key.split(/\W/)[0];
                            timestampPromise = this.timestamps.Get(module);
                            cacheObj = this.GetCacheObject(key);
                            if (!(!this.forceNoCache && cacheObj && cacheObj.created && cacheObj.data)) return [3 /*break*/, 3];
                            now = new Date(Date.now());
                            created = new Date(cacheObj.created);
                            expires = new Date(created.getTime() + expiresInMilliseconds);
                            _a = expires <= now;
                            if (_a) return [3 /*break*/, 2];
                            _b = created.getTime();
                            return [4 /*yield*/, timestampPromise];
                        case 1:
                            _a = _b < (_c.sent());
                            _c.label = 2;
                        case 2:
                            if (_a) {
                                return [2 /*return*/, this.GetPageViewCachedResult(key, func, expiresInMilliseconds, refreshInMilliseconds)];
                            }
                            refreshTime = new Date(created.getTime() + refreshInMilliseconds);
                            if (refreshTime < now) {
                                this.pageViewCache.ExecuteCached(key + "Refresh", function () {
                                    setTimeout(function () {
                                        _this.GetPageViewCachedResult(key, func, expiresInMilliseconds, refreshInMilliseconds);
                                    }, refreshDelayInMilliseconds);
                                }, refreshInMilliseconds);
                            }
                            return [2 /*return*/, Promise.resolve(cacheObj.data)];
                        case 3: return [2 /*return*/, this.GetPageViewCachedResult(key, func, expiresInMilliseconds, refreshInMilliseconds)];
                    }
                });
            });
        };
        WizdomLocalStorageCache.prototype.GetPageViewCachedResult = function (key, func, expiresInMilliseconds, refreshInMilliseconds) {
            var _this = this;
            return this.pageViewCache.ExecuteCached(key, func, Math.min(expiresInMilliseconds, refreshInMilliseconds)).then(function (result) {
                _this.SetCacheObject(key, result);
                return result;
            });
        };
        return WizdomLocalStorageCache;
    }());

    var WizdomTimestamps = /** @class */ (function () {
        function WizdomTimestamps(parent, forceNoCache, spHttpClient, absoluteUrl) {
            this.parent = parent;
            this.forceNoCache = forceNoCache;
            this.spHttpClient = spHttpClient;
            this.absoluteUrl = absoluteUrl;
        }
        WizdomTimestamps.prototype.GetTimestampsPromise = function (timestamps) {
            var _this = this;
            var globalCacheVariable = this.parent.getGlobalVariable();
            var key = "TimestampsPromise";
            if (!globalCacheVariable[key]) {
                var resolveFunc_1;
                globalCacheVariable[key] = new Promise(function (resolve, reject) {
                    resolveFunc_1 = resolve;
                    if (_this.forceNoCache) {
                        resolve({ timestampconfiguration: new Date().getTime() });
                        return;
                    }
                    if (!timestamps) {
                        _this.requestTenantProperties(resolve);
                        // Reject after 2 seconds
                        setTimeout(function (_) {
                            reject();
                        }, 2000);
                    }
                });
                globalCacheVariable[key].resolveFunc = resolveFunc_1;
            }
            if (timestamps) {
                for (var key_1 in timestamps) {
                    if (timestamps.hasOwnProperty(key_1)) {
                        timestamps[key_1.toLowerCase()] = timestamps[key_1];
                    }
                }
                globalCacheVariable[key].resolveFunc(timestamps);
            }
            return globalCacheVariable[key];
        };
        WizdomTimestamps.prototype.requestTenantProperties = function (resolve) {
            var getTenantPropertiesUrl = this.absoluteUrl.replace(/\/$/, "") + "/_api/web/GetStorageEntity('wizdom.timestamps')"; // prettier-ignore
            this.spHttpClient.get(getTenantPropertiesUrl).then(function (response) {
                response.json().then(function (outerJson) {
                    if (outerJson.Value) {
                        var innerJson = JSON.parse(outerJson.Value);
                        for (var key in innerJson) {
                            if (innerJson.hasOwnProperty(key)) {
                                innerJson[key.toLowerCase()] = innerJson[key];
                            }
                        }
                        resolve(innerJson);
                    }
                });
            });
        };
        WizdomTimestamps.prototype.getGlobalMappings = function () {
            var globalCacheVariable = this.parent.getGlobalVariable();
            var key = "TimestampsMappings";
            if (!globalCacheVariable[key]) {
                globalCacheVariable[key] = {};
            }
            return globalCacheVariable[key];
        };
        WizdomTimestamps.normaliseKey = function (key) {
            if (key) {
                key = key.toLocaleLowerCase();
                if (key.indexOf("timestamp") != 0) {
                    key = "timestamp" + key;
                }
            }
            return key;
        };
        /**
         * Get timestamp for last modification
         * @param key Key to get timestamp for
         * @returns timestamp as UTC milliseconds since January 1st 1970
         */
        WizdomTimestamps.prototype.Get = function (key) {
            var _this = this;
            key = WizdomTimestamps.normaliseKey(key);
            return this.GetTimestampsPromise()
                .then(function (json) {
                var result = 0;
                var keys = [key, "timestampconfiguration"].concat(_this.getGlobalMappings()[key]);
                keys.forEach(function (k) {
                    if (k && json[k])
                        result = Math.max(result, json[k]);
                });
                return result;
            })["catch"](function (_) {
                console.log("Call for wizdom.timestamps timed out");
                return 0;
            });
        };
        /**
         * Add mappings to look for when getting key
         * @param key Key for which to add mappings
         * @param maps Alternative timestamp keys which should also match lookup for Key
         */
        WizdomTimestamps.prototype.AddMappings = function (key) {
            var maps = [];
            for (var _i = 1; _i < arguments.length; _i++) {
                maps[_i - 1] = arguments[_i];
            }
            key = WizdomTimestamps.normaliseKey(key);
            var globalMappings = this.getGlobalMappings();
            globalMappings[key.toLowerCase()] = maps.map(function (map) { return WizdomTimestamps.normaliseKey(map); });
        };
        /**
         * Resolve timestamps in another way than by getting Tenant properties
         * @param timestamps The timestamps to resolve with
         */
        WizdomTimestamps.prototype.Resolve = function (timestamps) {
            this.GetTimestampsPromise(timestamps);
        };
        return WizdomTimestamps;
    }());

    var WizdomCache = /** @class */ (function () {
        function WizdomCache(wizdomDeveloperMode, locationWrapper, spHttpClient, absoluteUrl) {
            var forceNoCache = (locationWrapper && locationWrapper.GetQueryString("nocache") == "true") || (wizdomDeveloperMode && wizdomDeveloperMode.nocache);
            this.PageView = new WizdomPageViewCache(this, forceNoCache);
            var timestamps = new WizdomTimestamps(this, forceNoCache, spHttpClient, absoluteUrl);
            this.Localstorage = new WizdomLocalStorageCache(this.PageView, forceNoCache, timestamps);
            this.Timestamps = timestamps;
            this.TimestampsResolver = timestamps;
        }
        WizdomCache.prototype.dispose = function () {
            throw new Error("Method not implemented.");
        };
        WizdomCache.prototype.resetPage = function () {
            window[WizdomCache.globalCacheVariable] = null;
        };
        WizdomCache.prototype.getGlobalVariable = function () {
            if (window[WizdomCache.globalCacheVariable] == null) {
                window[WizdomCache.globalCacheVariable] = {};
            }
            return window[WizdomCache.globalCacheVariable];
        };
        WizdomCache.globalCacheVariable = "WizdomCache";
        return WizdomCache;
    }());

    var WizdomTranslationService = /** @class */ (function () {
        function WizdomTranslationService(translations, wizdomdevelopermode) {
            this.translations = translations;
            this.wizdomdevelopermode = wizdomdevelopermode;
        }
        WizdomTranslationService.prototype.translate = function (key) {
            if (this.translations) {
                var translation = this.translations[key];
                if (translation == null) { // Missing translation                
                    if (this.wizdomdevelopermode && key) {
                        translation = "[Translation missing: " + key + "]";
                        if (this.wizdomdevelopermode.errorMissingTranslations) {
                            console.error(translation);
                        }
                    }
                    else
                        translation = key;
                }
                return translation;
            }
            else {
                console.warn("Wizdom translations not initialized");
                return this.wizdomdevelopermode ? "[Translation error: " + key + "]" : key;
            }
        };
        return WizdomTranslationService;
    }());

    var WizdomTranslationServiceFactory = /** @class */ (function () {
        function WizdomTranslationServiceFactory(httpClient, context, cache) {
            this.httpClient = httpClient;
            this.context = context;
            this.cache = cache;
        }
        WizdomTranslationServiceFactory.prototype.CreateAsync = function (language) {
            var _this = this;
            var expireIn = 7 * 24 * 60 * 60 * 1000; // 7 days
            var refreshIn = 10 * 60 * 1000; // 10 minutes
            var refreshDelayIn = 3 * 1000; // 3 seconds
            return this.cache.Localstorage.ExecuteCached("Translation:" + this.context.appUrl + "." + language.toLowerCase(), function () { return __awaiter$1(_this, void 0, void 0, function () {
                var timestamp, translationUrl, result, content, jsonStartIndex, jsonEndIndex, translations;
                return __generator$1(this, function (_a) {
                    switch (_a.label) {
                        case 0: return [4 /*yield*/, this.cache.Timestamps.Get("Translation")];
                        case 1:
                            timestamp = _a.sent();
                            translationUrl = this.context.blobUrl + "Base/Bundles/translations-" + language.toLowerCase() + ".js?timestamp=" + timestamp;
                            return [4 /*yield*/, this.httpClient.get(translationUrl)];
                        case 2:
                            result = _a.sent();
                            if (!!result.ok) return [3 /*break*/, 4];
                            // fallback to en-us
                            translationUrl = this.context.blobUrl + "Base/Bundles/translations-en-us.js?timestamp=" + timestamp;
                            return [4 /*yield*/, this.httpClient.get(translationUrl)];
                        case 3:
                            result = _a.sent();
                            _a.label = 4;
                        case 4: return [4 /*yield*/, result.text()];
                        case 5:
                            content = _a.sent();
                            jsonStartIndex = content.indexOf("{");
                            jsonEndIndex = content.indexOf("}}") + 2;
                            content = content.substr(jsonStartIndex, jsonEndIndex - jsonStartIndex); // remove all the angular stuff and only save the json
                            translations = JSON.parse(content)[language.toLowerCase()];
                            return [2 /*return*/, translations];
                    }
                });
            }); }, expireIn, refreshIn, refreshDelayIn)
                .then(function (translations) {
                // Store a global variable
                window["WizdomTranslations"] = translations;
                return new WizdomTranslationService(translations, _this.context.wizdomdevelopermode);
            });
        };
        return WizdomTranslationServiceFactory;
    }());

    var WizdomContextFactory = /** @class */ (function () {
        function WizdomContextFactory(spHttpClient, cache, wizdomdevelopermode) {
            this.spHttpClient = spHttpClient;
            this.cache = cache;
            this.wizdomdevelopermode = wizdomdevelopermode;
            this.storageEntityContext = {
                blobUrl: "",
                appUrl: "",
                clientId: "",
                wizdomdevelopermode: null
            };
        }
        WizdomContextFactory.prototype.GetWizdomContextAsync = function (siteAbsoluteUrl) {
            var _this = this;
            var expireIn = 7 * 24 * 60 * 60 * 1000; // 7 days
            var refreshIn = 10 * 60 * 1000; // 10 minutes
            var refreshDelayIn = 3 * 1000; // 3 seconds
            return this.cache.Localstorage.ExecuteCached("Context:" + siteAbsoluteUrl, function () {
                var storageEntityPromise = _this.spHttpClient.get(siteAbsoluteUrl + "/_api/web/GetStorageEntity('wizdom.properties')").then(function (result) {
                    return result.json().then(function (json) {
                        if (json.Value) {
                            var context = JSON.parse(json.Value);
                            // ensure tailing / for app- and bloburl
                            if (context.blobUrl.substr(-1) != "/")
                                context.blobUrl = context.blobUrl + "/";
                            if (context.appUrl.substr(-1) != "/")
                                context.appUrl = context.appUrl + "/";
                            _this.storageEntityContext = context;
                        }
                    });
                });
                var allPropertiesPromise = _this.spHttpClient.get(siteAbsoluteUrl + "/_api/web/AllProperties?$select=wizdom.properties").then(function (result) {
                    return result.json().then(function (json) {
                        if (json.wizdom_x002e_properties) {
                            var context = JSON.parse(json.wizdom_x002e_properties);
                            // ensure tailing / for app- and bloburl
                            if (context.blobUrl.substr(-1) != "/")
                                context.blobUrl = context.blobUrl + "/";
                            if (context.appUrl.substr(-1) != "/")
                                context.appUrl = context.appUrl + "/";
                            _this.allPropertiesContext = context;
                        }
                    });
                });
                return Promise.all([storageEntityPromise, allPropertiesPromise]).then(function () {
                    if (_this.allPropertiesContext) {
                        if (_this.allPropertiesContext.appUrl)
                            _this.storageEntityContext.appUrl = _this.allPropertiesContext.appUrl;
                        if (_this.allPropertiesContext.blobUrl)
                            _this.storageEntityContext.blobUrl = _this.allPropertiesContext.blobUrl;
                        if (_this.allPropertiesContext.clientId)
                            _this.storageEntityContext.clientId = _this.allPropertiesContext.clientId;
                    }
                    return _this.storageEntityContext;
                });
            }, expireIn, refreshIn, refreshDelayIn)
                .then(function (context) {
                // Store a global variable                       
                var wizdomContext = context;
                wizdomContext.wizdomdevelopermode = _this.wizdomdevelopermode;
                if (_this.wizdomdevelopermode && _this.wizdomdevelopermode.wizdomContext) {
                    wizdomContext = __assign$1({}, wizdomContext, _this.wizdomdevelopermode.wizdomContext);
                }
                window["WizdomContext"] = wizdomContext;
                return wizdomContext;
            });
        };
        return WizdomContextFactory;
    }());

    var SpfxHttpClient = /** @class */ (function () {
        function SpfxHttpClient(httpClient) {
            this.httpClient = httpClient;
        }
        SpfxHttpClient.prototype.get = function (url) {
            return this.httpClient.get(url, spHttp.HttpClient.configurations.v1).then(function (response) {
                return new SpfxHttpClientResponse(response);
            });
        };
        return SpfxHttpClient;
    }());
    var SpfxSpHttpClient = /** @class */ (function () {
        function SpfxSpHttpClient(httpClient) {
            this.httpClient = httpClient;
        }
        SpfxSpHttpClient.prototype.get = function (url) {
            return this.httpClient.get(url, spHttp.SPHttpClient.configurations.v1).then(function (response) {
                return new SpfxHttpClientResponse(response);
            });
        };
        return SpfxSpHttpClient;
    }());
    var SpfxHttpClientResponse = /** @class */ (function () {
        function SpfxHttpClientResponse(httpClientResponse) {
            this.httpClientResponse = httpClientResponse;
            this.ok = httpClientResponse.ok;
        }
        SpfxHttpClientResponse.prototype.text = function () {
            return this.httpClientResponse.text();
        };
        SpfxHttpClientResponse.prototype.json = function () {
            return this.httpClientResponse.json();
        };
        return SpfxHttpClientResponse;
    }());

    var ConfigurationParser = /** @class */ (function () {
        function ConfigurationParser(configuration) {
            this.Configuration = configuration;
        }
        ConfigurationParser.prototype.TransformModuleConfigurationToASingleObject = function (module) {
            var moduleConfigurationObjectOrArray = this.Configuration[module];
            var result = moduleConfigurationObjectOrArray;
            if (moduleConfigurationObjectOrArray && typeof (moduleConfigurationObjectOrArray) === "object") {
                if (moduleConfigurationObjectOrArray.length > 1) {
                    result = moduleConfigurationObjectOrArray;
                    var longestUrlLength = -1;
                    for (var index = 0; index < moduleConfigurationObjectOrArray.length; index++) {
                        var configuration = moduleConfigurationObjectOrArray[index];
                        var configFilter = configuration["@configFilter"] || "";
                        var regex = new RegExp(configFilter, "i"); // i: case insensitive                
                        if (configFilter.length > longestUrlLength && regex.test(window.location.href)) {
                            result = configuration;
                            longestUrlLength = configFilter.length;
                        }
                    }
                }
                else if (moduleConfigurationObjectOrArray.length == 1) {
                    result = moduleConfigurationObjectOrArray[0];
                }
                else {
                    result = moduleConfigurationObjectOrArray;
                }
            }
            return result;
        };
        return ConfigurationParser;
    }());

    function GetWizdomConfiguration(httpClient, context, cache, whiteListedModulesToParse) {
        return __awaiter$1(this, void 0, void 0, function () {
            var expireIn, refreshIn, refreshDelayIn;
            var _this = this;
            return __generator$1(this, function (_a) {
                expireIn = 7 * 24 * 60 * 60 * 1000;
                refreshIn = 10 * 60 * 1000;
                refreshDelayIn = 3 * 1000;
                return [2 /*return*/, cache.Localstorage.ExecuteCached("Configuration:" + context.appUrl, function () { return __awaiter$1(_this, void 0, void 0, function () {
                        var configurationUrl, _a;
                        return __generator$1(this, function (_b) {
                            switch (_b.label) {
                                case 0:
                                    _a = context.blobUrl + "Base/Bundles/configuration.js?timestamp=";
                                    return [4 /*yield*/, cache.Timestamps.Get("Configuration")];
                                case 1:
                                    configurationUrl = _a + (_b.sent());
                                    return [2 /*return*/, httpClient.get(configurationUrl).then(function (result) {
                                            return result.text().then(function (content) {
                                                content = content.substring(content.indexOf("{"), content.lastIndexOf("}") + 1); // remove all the angular stuff and only save the json
                                                return JSON.parse(content);
                                            });
                                        })];
                            }
                        });
                    }); }, expireIn, refreshIn, refreshDelayIn).then(function (configuration) {
                        // Ensuring all module configurations consist of only one object        
                        var configurationParser = new ConfigurationParser(configuration);
                        Object.keys(configuration).forEach(function (moduleKey) {
                            if (whiteListedModulesToParse.indexOf(moduleKey) != -1) {
                                configuration[moduleKey] = configurationParser.TransformModuleConfigurationToASingleObject(moduleKey);
                            }
                        });
                        // Store a global variable
                        window["WizdomConfiguration"] = configuration;
                        return configuration;
                    })];
            });
        });
    }

    var WebApiErrorType;
    (function (WebApiErrorType) {
        WebApiErrorType[WebApiErrorType["RequestFailed"] = 0] = "RequestFailed";
        WebApiErrorType[WebApiErrorType["RateLimitExeeded"] = 1] = "RateLimitExeeded";
        WebApiErrorType[WebApiErrorType["CorsProxyFailed"] = 2] = "CorsProxyFailed";
    })(WebApiErrorType || (WebApiErrorType = {}));

    // max 60 requests/min
    var requestRateLimitCount = 300;
    var requestRateLimitTimeout = 5 * 60 * 1000;
    var WizdomWebApiService = /** @class */ (function () {
        function WizdomWebApiService(spHostUrl, state, corsProxyFac) {
            this.spHostUrl = spHostUrl;
            this.state = state;
            this.corsProxyFac = corsProxyFac;
            this.corsProxy = this.corsProxyFac.GetOrCreate(false);
            if (this.state.corsProxyReady == null) // null = unknown/initial state
                this.initCorsProxyMessageHandling();
        }
        WizdomWebApiService.prototype.initCorsProxyMessageHandling = function () {
            var _this = this;
            this.state.corsProxyReady = false; // false = "creating"  
            this.state.corsProxyFailed = false;
            this.corsProxy.AddHandler("WizdomCorsProxySuccess", function (message) {
                _this.state.corsProxyReady = true;
                for (var i = 0; i < _this.state.deferredQueue.length; i++) {
                    _this.makeRequest.apply(_this, _this.state.deferredQueue[i]);
                }
                _this.state.deferredQueue = [];
            });
            this.corsProxy.AddHandler("WizdomCorsProxyFailed", function (message) {
                _this.state.corsProxyFailed = true;
                for (var i = 0; i < _this.state.deferredQueue.length; i++) {
                    _this.makeRequest.apply(_this, _this.state.deferredQueue[i]);
                }
                _this.state.deferredQueue = [];
            });
            this.corsProxy.AddHandler("RequestSuccess", function (message) {
                _this.state.requestQueue[message.requestIndex].success(message.result);
                _this.state.requestQueue[message.requestIndex] = null; // cleanup
            });
            this.corsProxy.AddHandler("RequestFailed", function (message) {
                _this.state.requestQueue[message.requestIndex].fail({ errorType: WebApiErrorType.RequestFailed, message: message.result });
                _this.state.requestQueue[message.requestIndex] = null; // cleanup
            });
            this.corsProxy.AddHandler("TokenExpired", function (message) {
                console.log("Token expired");
                if (_this.state.corsProxyReady) {
                    // this.state.corsProxyReady = false;
                    if (!_this.state.reCreateIframeTimer) {
                        console.log("Recreate iframe");
                        _this.corsProxy = _this.corsProxyFac.GetOrCreate(true);
                        _this.initCorsProxyMessageHandling();
                        _this.state.reCreateIframeTimer = setTimeout(function () {
                            _this.state.reCreateIframeTimer = null;
                            // if the corsproxy still isnt ready after 60 sec, try again. Wizdom is probably not responding, maybe due to updates
                            if (!_this.state.corsProxyReady) {
                                console.log("Still no valid iframe after 60 sec, try again... ");
                                _this.corsProxy = _this.corsProxyFac.GetOrCreate(true);
                                _this.initCorsProxyMessageHandling();
                            }
                        }, 60 * 1000);
                    }
                }
                // queue up the request again
                var request = _this.state.requestQueue[message.requestIndex];
                _this.makeRequest(request.url, request.success, request.fail, request.method, request.data);
                _this.state.requestQueue[message.requestIndex] = null; // cleanup
            });
        };
        WizdomWebApiService.prototype.makeRequest = function (url, success, fail, method, data) {
            var _this = this;
            if (!this.state.corsProxyReady && !this.state.corsProxyFailed) { // corsproxy not ready yet. Queue up the requests
                console.info("Queued request to: " + url);
                this.state.deferredQueue.push([url, success, fail, method, data]);
            }
            else if (!this.state.corsProxyFailed) {
                console.info("Sending request to: " + url);
                var fullUrl = url + (url.indexOf("?") > 0 ? "&" : "?");
                fullUrl += "SPHostUrl=" + this.spHostUrl;
                if (fullUrl[0] != "/")
                    fullUrl = "/" + fullUrl;
                this.state.requestIndex++;
                this.state.requestQueue[this.state.requestIndex] = { success: success, fail: fail, method: method, url: url, data: data };
                // rateLimit is only for get requests
                if (this.state.requestRateLimitCounter < requestRateLimitCount || method != "GET") {
                    if (method == "GET") {
                        this.state.requestRateLimitCounter++;
                        setTimeout(function () {
                            _this.state.requestRateLimitCounter--;
                        }, requestRateLimitTimeout);
                    }
                    this.corsProxy.Message({
                        method: method,
                        url: fullUrl,
                        requestIndex: this.state.requestIndex,
                        data: data
                    });
                }
                else {
                    console.error("Corsproxy request ratelimit exceeded. More than " + requestRateLimitCount + " was made over a period of " + (requestRateLimitTimeout / 1000) + " seconds");
                    fail({ errorType: WebApiErrorType.RateLimitExeeded, message: "Corsproxy request ratelimit exceeded" });
                }
            }
            else {
                console.error("Corsproxy failed to initialize");
                fail({ errorType: WebApiErrorType.CorsProxyFailed, message: "Corsproxy failed initilisation" });
            }
        };
        WizdomWebApiService.prototype.Get = function (url) {
            var _this = this;
            return new Promise(function (resolve, reject) {
                _this.makeRequest(url, resolve, reject, "GET", null);
            });
        };
        WizdomWebApiService.prototype.Delete = function (url) {
            var _this = this;
            return new Promise(function (resolve, reject) {
                _this.makeRequest(url, resolve, reject, "DELETE", null);
            });
        };
        WizdomWebApiService.prototype.Post = function (url, data) {
            var _this = this;
            return new Promise(function (resolve, reject) {
                _this.makeRequest(url, resolve, reject, "POST", data);
            });
        };
        WizdomWebApiService.prototype.Put = function (url, data) {
            var _this = this;
            return new Promise(function (resolve, reject) {
                _this.makeRequest(url, resolve, reject, "PUT", data);
            });
        };
        return WizdomWebApiService;
    }());

    var WizdomWebApiServiceFactory = /** @class */ (function () {
        function WizdomWebApiServiceFactory(corsProxyFactory, spHostUrl) {
            this.corsProxyFactory = corsProxyFactory;
            this.spHostUrl = spHostUrl;
        }
        WizdomWebApiServiceFactory.prototype.Create = function () {
            return window["WizdomWebApiService"] = window["WizdomWebApiService"] || new WizdomWebApiService(this.spHostUrl, this.getWebApiSharedState(), this.corsProxyFactory);
        };
        WizdomWebApiServiceFactory.prototype.getWebApiSharedState = function () {
            return window["WizdomWebApiServiceState"] = window["WizdomWebApiServiceState"] || {
                deferredQueue: [],
                requestQueue: {},
                requestIndex: 0,
                reCreateIframeTimer: null,
                corsProxyReady: null,
                eventListenersAttached: false,
                requestRateLimitCounter: 0,
                corsProxyFailed: false,
            };
        };
        return WizdomWebApiServiceFactory;
    }());

    var WizdomCorsProxyService = /** @class */ (function () {
        function WizdomCorsProxyService(iframe, corsProxyState) {
            this.iframe = iframe;
            this.corsProxyState = corsProxyState;
            this.handlers = {};
        }
        WizdomCorsProxyService.prototype.Message = function (message) {
            this.iframe.postMessage(JSON.stringify(message), "*");
        };
        WizdomCorsProxyService.prototype.HandleMessage = function (message) {
            if (message.command === "WizdomCorsProxySuccess") {
                this.corsProxyState = window["WizdomCorsProxyState"];
            }
            if (message.command === "WizdomCorsProxyFailed") {
                this.corsProxyState = window["WizdomCorsProxyState"];
            }
            var handlers = this.handlers[message.command];
            if (!handlers)
                return;
            for (var i = 0; i < handlers.length; i++) {
                handlers[i](message);
            }
        };
        WizdomCorsProxyService.prototype.AddHandler = function (event, handler) {
            this.handlers[event] = this.handlers[event] || [];
            this.handlers[event].push(handler);
        };
        return WizdomCorsProxyService;
    }());

    var WizdomCorsProxyServiceFactory = /** @class */ (function () {
        function WizdomCorsProxyServiceFactory(context, spHostUrl, userLoginName) {
            this.context = context;
            this.spHostUrl = spHostUrl;
            this.userLoginName = userLoginName;
            this.addEventListeners();
        }
        WizdomCorsProxyServiceFactory.prototype.GetOrCreate = function (recreate) {
            if (recreate === void 0) { recreate = false; }
            var frame = this.getOrCreateIFrame(recreate);
            this.frameService = this.frameService || new WizdomCorsProxyService(frame, this.getCorsProxySharedState());
            return this.frameService;
        };
        WizdomCorsProxyServiceFactory.prototype.endsWith = function (str, suffix) {
            // using this endswith method to support IE
            return str.indexOf(suffix, str.length - suffix.length) !== -1;
        };
        WizdomCorsProxyServiceFactory.prototype.getOrCreateIFrame = function (recreate) {
            var _this = this;
            if (recreate === void 0) { recreate = false; }
            if (window["WizdomCorsProxy"] == null || recreate) {
                var corsProxyIframe = document.createElement("iframe");
                corsProxyIframe.style.display = "none";
                var appUrl = this.endsWith(this.context.appUrl, "/") ? this.context.appUrl : this.context.appUrl + "/";
                corsProxyIframe.src = this.spHostUrl + "/_layouts/15/appredirect.aspx?client_id=" + this.context.clientId + "&redirect_uri=" + appUrl + "Base/WizdomCorsProxy.aspx?{StandardTokens}" + "%26isModern=true%26userLoginName=" + encodeURIComponent(this.userLoginName);
                var appredirectDone_1 = false;
                corsProxyIframe.onload = function (ev) {
                    if (!appredirectDone_1) {
                        appredirectDone_1 = true;
                    }
                    else if (!window["WizdomCorsProxyState"].session) {
                        // If the frame finished loading but the state hasn't been set it's probably stuck on an error page
                        _this.corsproxyFailure();
                    }
                };
                corsProxyIframe.onerror = function (ev) {
                    _this.corsproxyFailure();
                };
                document.body.appendChild(corsProxyIframe);
                window["WizdomCorsProxy"] = corsProxyIframe;
            }
            return window["WizdomCorsProxy"]["contentWindow"];
        };
        WizdomCorsProxyServiceFactory.prototype.corsproxyFailure = function () {
            window["WizdomCorsProxyState"].corsProxyFailed = true;
            this.frameService.HandleMessage({ command: "WizdomCorsProxyFailed" });
        };
        WizdomCorsProxyServiceFactory.prototype.addEventListeners = function () {
            if (typeof window.addEventListener != 'undefined')
                window.addEventListener('message', this.postMessageHandler.bind(this), false);
            else if (typeof window["attachEvent"] != 'undefined')
                window["attachEvent"]('onmessage', this.postMessageHandler.bind(this));
        };
        WizdomCorsProxyServiceFactory.prototype.postMessageHandler = function (e) {
            try {
                var message = JSON.parse(e.data);
                if (!message.command)
                    return;
                if (message.command === "WizdomCorsProxySuccess") {
                    window["WizdomCorsProxyState"].session = message.session;
                    window["WizdomCorsProxyState"].msLeftOnToken = message.msLeftOnToken;
                    window["WizdomCorsProxyState"].allWizdomRoles = message.allWizdomRoles;
                    window["WizdomCorsProxyState"].rolesForCurrentUser = message.rolesForCurrentUser;
                    window["WizdomCorsProxyState"].upgradeInProgress = message.upgradeInProgress;
                }
                else if (message.command === "WizdomCorsProxyFailed") {
                    this.corsproxyFailure();
                    return;
                }
                this.frameService.HandleMessage(message);
            }
            catch (ex) {
                //console.log("wizdom postmessage error", e.data, ex);
            }
        };
        WizdomCorsProxyServiceFactory.prototype.getCorsProxySharedState = function () {
            return window["WizdomCorsProxyState"] = window["WizdomCorsProxyState"] || {
                session: "",
                msLeftOnToken: 0,
                allWizdomRoles: [],
                rolesForCurrentUser: [],
                upgradeInProgress: false,
                corsProxyFailed: false
            };
        };
        return WizdomCorsProxyServiceFactory;
    }());

    var LocationWrapper = /** @class */ (function () {
        function LocationWrapper() {
        }
        LocationWrapper.prototype.GetQueryString = function (queryString) {
            return this.getQueryStringParameterByName(queryString, window.location.href);
        };
        LocationWrapper.prototype.getQueryStringParameterByName = function (name, url) {
            name = name.replace(/[\[\]]/g, "\\$&");
            var regex = new RegExp("[?&]" + name + "(=([^&#]*)|&|#|$)", 'i'), results = regex.exec(url);
            if (!results)
                return null;
            if (!results[2])
                return '';
            return decodeURIComponent(results[2].replace(/\+/g, " "));
        };
        return LocationWrapper;
    }());

    var WizdomSpfxServices = /** @class */ (function () {
        function WizdomSpfxServices(spContext) {
            this.spContext = spContext;
        }
        WizdomSpfxServices.prototype.InitAsync = function (options) {
            return __awaiter$1(this, void 0, void 0, function () {
                var locationWrapper, developmentmodeQueryString, wizdomdevelopermode, contextFactory, _a, language, spLanguageQueryString, translationServiceFactory, translationServicePromise, specificConfigurationParsingModules, configurationPromise, wizdomCorsProxyServiceFactory, wizdomWebApiServiceFactory, ex_1;
                var _this = this;
                return __generator$1(this, function (_b) {
                    switch (_b.label) {
                        case 0:
                            _b.trys.push([0, 3, , 4]);
                            locationWrapper = new LocationWrapper();
                            developmentmodeQueryString = locationWrapper.GetQueryString("wizdomdevelopermode");
                            if (developmentmodeQueryString != null && developmentmodeQueryString.toLowerCase() != "false") {
                                try {
                                    wizdomdevelopermode = JSON.parse(developmentmodeQueryString);
                                }
                                catch (ex) {
                                    console.error("Invalid developermode", ex);
                                }
                            }
                            // Initialize all services
                            this.Cache = new WizdomCache(wizdomdevelopermode, locationWrapper, new SpfxSpHttpClient(this.spContext.spHttpClient), this.spContext.pageContext.site.absoluteUrl);
                            contextFactory = new WizdomContextFactory(new SpfxSpHttpClient(this.spContext.spHttpClient), this.Cache, wizdomdevelopermode);
                            _a = this;
                            return [4 /*yield*/, contextFactory.GetWizdomContextAsync(this.spContext.pageContext.site.absoluteUrl)];
                        case 1:
                            _a.WizdomContext = _b.sent();
                            language = this.spContext.pageContext.cultureInfo.currentUICultureName;
                            spLanguageQueryString = locationWrapper.GetQueryString("SPLanguage");
                            if (spLanguageQueryString)
                                language = spLanguageQueryString;
                            translationServiceFactory = new WizdomTranslationServiceFactory(new SpfxHttpClient(this.spContext.httpClient), this.WizdomContext, this.Cache);
                            translationServicePromise = translationServiceFactory.CreateAsync(language).then(function (translationService) {
                                _this.TranslationService = translationService;
                            });
                            specificConfigurationParsingModules = ["Megamenu", "CssGenerator", "Footer", "MarkAsRead", "Powerpanel", "CustomStyling", "CustomJs", "ModernCustomStyling", "ModernCustomJs"];
                            configurationPromise = GetWizdomConfiguration(new SpfxHttpClient(this.spContext.httpClient), this.WizdomContext, this.Cache, specificConfigurationParsingModules).then(function (configuration) {
                                _this.WizdomConfiguration = configuration;
                            });
                            wizdomCorsProxyServiceFactory = new WizdomCorsProxyServiceFactory(this.WizdomContext, this.spContext.pageContext.site.absoluteUrl, this.spContext.pageContext.user.loginName);
                            this.WizdomCorsProxyService = wizdomCorsProxyServiceFactory.GetOrCreate();
                            wizdomWebApiServiceFactory = new WizdomWebApiServiceFactory(wizdomCorsProxyServiceFactory, this.spContext.pageContext.site.absoluteUrl);
                            this.WizdomWebApiService = wizdomWebApiServiceFactory.Create();
                            return [4 /*yield*/, Promise.all([translationServicePromise, configurationPromise])];
                        case 2:
                            _b.sent();
                            return [3 /*break*/, 4];
                        case 3:
                            ex_1 = _b.sent();
                            if (console.exception != null)
                                console.exception("wizdom-intranet/services initializing error", ex_1);
                            return [3 /*break*/, 4];
                        case 4: return [2 /*return*/];
                    }
                });
            });
        };
        return WizdomSpfxServices;
    }());

    var WizdomSpfxVueServices = /** @class */ (function (_super) {
        __extends$1(WizdomSpfxVueServices, _super);
        function WizdomSpfxVueServices() {
            return _super !== null && _super.apply(this, arguments) || this;
        }
        WizdomSpfxVueServices.prototype.InitVueAsync = function (Vue, options) {
            return __awaiter$1(this, void 0, void 0, function () {
                var _this = this;
                return __generator$1(this, function (_a) {
                    switch (_a.label) {
                        case 0: return [4 /*yield*/, _super.prototype.InitAsync.call(this, options)];
                        case 1:
                            _a.sent();
                            if (Vue) {
                                Vue.filter("translate", function (value) {
                                    if (_this.TranslationService)
                                        return _this.TranslationService.translate(value);
                                    throw "Wizdom Translation Service not initialized";
                                });
                            }
                            return [2 /*return*/, Promise.resolve()];
                    }
                });
            });
        };
        return WizdomSpfxVueServices;
    }(WizdomSpfxServices));

    var vueColor_min = createCommonjsModule(function (module, exports) {
    !function(e,t){module.exports=t();}("undefined"!=typeof self?self:commonjsGlobal,function(){return function(e){function t(r){if(n[r])return n[r].exports;var a=n[r]={i:r,l:!1,exports:{}};return e[r].call(a.exports,a,a.exports,t),a.l=!0,a.exports}var n={};return t.m=e,t.c=n,t.d=function(e,n,r){t.o(e,n)||Object.defineProperty(e,n,{configurable:!1,enumerable:!0,get:r});},t.n=function(e){var n=e&&e.__esModule?function(){return e.default}:function(){return e};return t.d(n,"a",n),n},t.o=function(e,t){return Object.prototype.hasOwnProperty.call(e,t)},t.p="",t(t.s=22)}([function(e,t){function n(e,t){var n=e[1]||"",a=e[3];if(!a)return n;if(t&&"function"==typeof btoa){var i=r(a);return [n].concat(a.sources.map(function(e){return "/*# sourceURL="+a.sourceRoot+e+" */"})).concat([i]).join("\n")}return [n].join("\n")}function r(e){return "/*# sourceMappingURL=data:application/json;charset=utf-8;base64,"+btoa(unescape(encodeURIComponent(JSON.stringify(e))))+" */"}e.exports=function(e){var t=[];return t.toString=function(){return this.map(function(t){var r=n(t,e);return t[2]?"@media "+t[2]+"{"+r+"}":r}).join("")},t.i=function(e,n){"string"==typeof e&&(e=[[null,e,""]]);for(var r={},a=0;a<this.length;a++){var i=this[a][0];"number"==typeof i&&(r[i]=!0);}for(a=0;a<e.length;a++){var o=e[a];"number"==typeof o[0]&&r[o[0]]||(n&&!o[2]?o[2]=n:n&&(o[2]="("+o[2]+") and ("+n+")"),t.push(o));}},t};},function(e,t,n){function r(e){for(var t=0;t<e.length;t++){var n=e[t],r=u[n.id];if(r){r.refs++;for(var a=0;a<r.parts.length;a++)r.parts[a](n.parts[a]);for(;a<n.parts.length;a++)r.parts.push(i(n.parts[a]));r.parts.length>n.parts.length&&(r.parts.length=n.parts.length);}else{for(var o=[],a=0;a<n.parts.length;a++)o.push(i(n.parts[a]));u[n.id]={id:n.id,refs:1,parts:o};}}}function a(){var e=document.createElement("style");return e.type="text/css",d.appendChild(e),e}function i(e){var t,n,r=document.querySelector("style["+b+'~="'+e.id+'"]');if(r){if(p)return v;r.parentNode.removeChild(r);}if(x){var i=f++;r=h||(h=a()),t=o.bind(null,r,i,!1),n=o.bind(null,r,i,!0);}else r=a(),t=s.bind(null,r),n=function(){r.parentNode.removeChild(r);};return t(e),function(r){if(r){if(r.css===e.css&&r.media===e.media&&r.sourceMap===e.sourceMap)return;t(e=r);}else n();}}function o(e,t,n,r){var a=n?"":r.css;if(e.styleSheet)e.styleSheet.cssText=m(t,a);else{var i=document.createTextNode(a),o=e.childNodes;o[t]&&e.removeChild(o[t]),o.length?e.insertBefore(i,o[t]):e.appendChild(i);}}function s(e,t){var n=t.css,r=t.media,a=t.sourceMap;if(r&&e.setAttribute("media",r),g.ssrId&&e.setAttribute(b,t.id),a&&(n+="\n/*# sourceURL="+a.sources[0]+" */",n+="\n/*# sourceMappingURL=data:application/json;base64,"+btoa(unescape(encodeURIComponent(JSON.stringify(a))))+" */"),e.styleSheet)e.styleSheet.cssText=n;else{for(;e.firstChild;)e.removeChild(e.firstChild);e.appendChild(document.createTextNode(n));}}var c="undefined"!=typeof document;if("undefined"!=typeof DEBUG&&DEBUG&&!c)throw new Error("vue-style-loader cannot be used in a non-browser environment. Use { target: 'node' } in your Webpack config to indicate a server-rendering environment.");var l=n(26),u={},d=c&&(document.head||document.getElementsByTagName("head")[0]),h=null,f=0,p=!1,v=function(){},g=null,b="data-vue-ssr-id",x="undefined"!=typeof navigator&&/msie [6-9]\b/.test(navigator.userAgent.toLowerCase());e.exports=function(e,t,n,a){p=n,g=a||{};var i=l(e,t);return r(i),function(t){for(var n=[],a=0;a<i.length;a++){var o=i[a],s=u[o.id];s.refs--,n.push(s);}t?(i=l(e,t),r(i)):i=[];for(var a=0;a<n.length;a++){var s=n[a];if(0===s.refs){for(var c=0;c<s.parts.length;c++)s.parts[c]();delete u[s.id];}}}};var m=function(){var e=[];return function(t,n){return e[t]=n,e.filter(Boolean).join("\n")}}();},function(e,t){e.exports=function(e,t,n,r,a,i){var o,s=e=e||{},c=typeof e.default;"object"!==c&&"function"!==c||(o=e,s=e.default);var l="function"==typeof s?s.options:s;t&&(l.render=t.render,l.staticRenderFns=t.staticRenderFns,l._compiled=!0),n&&(l.functional=!0),a&&(l._scopeId=a);var u;if(i?(u=function(e){e=e||this.$vnode&&this.$vnode.ssrContext||this.parent&&this.parent.$vnode&&this.parent.$vnode.ssrContext,e||"undefined"==typeof __VUE_SSR_CONTEXT__||(e=__VUE_SSR_CONTEXT__),r&&r.call(this,e),e&&e._registeredComponents&&e._registeredComponents.add(i);},l._ssrRegister=u):r&&(u=r),u){var d=l.functional,h=d?l.render:l.beforeCreate;d?(l._injectStyles=u,l.render=function(e,t){return u.call(t),h(e,t)}):l.beforeCreate=h?[].concat(h,u):[u];}return {esModule:o,exports:s,options:l}};},function(e,t,n){function r(e,t){var n,r=e&&e.a;!(n=e&&e.hsl?(0, i.default)(e.hsl):e&&e.hex&&e.hex.length>0?(0, i.default)(e.hex):(0, i.default)(e))||void 0!==n._a&&null!==n._a||n.setAlpha(r||1);var a=n.toHsl(),o=n.toHsv();return 0===a.s&&(o.h=a.h=e.h||e.hsl&&e.hsl.h||t||0),{hsl:a,hex:n.toHexString().toUpperCase(),hex8:n.toHex8String().toUpperCase(),rgba:n.toRgb(),hsv:o,oldHue:e.h||t||a.h,source:e.source,a:e.a||n.getAlpha()}}Object.defineProperty(t,"__esModule",{value:!0});var a=n(27),i=function(e){return e&&e.__esModule?e:{default:e}}(a);t.default={props:["value"],data:function(){return {val:r(this.value)}},computed:{colors:{get:function(){return this.val},set:function(e){this.val=e,this.$emit("input",e);}}},watch:{value:function(e){this.val=r(e);}},methods:{colorChange:function(e,t){this.oldHue=this.colors.hsl.h,this.colors=r(e,t||this.oldHue);},isValidHex:function(e){return (0, i.default)(e).isValid()},simpleCheckForValidColor:function(e){for(var t=["r","g","b","a","h","s","l","v"],n=0,r=0,a=0;a<t.length;a++){var i=t[a];e[i]&&(n++,isNaN(e[i])||r++);}if(n===r)return e},paletteUpperCase:function(e){return e.map(function(e){return e.toUpperCase()})},isTransparent:function(e){return 0===(0, i.default)(e).getAlpha()}}};},function(e,t,n){function r(e){n(28);}Object.defineProperty(t,"__esModule",{value:!0});var a=n(10),i=n.n(a);for(var o in a)"default"!==o&&function(e){n.d(t,e,function(){return a[e]});}(o);var s=n(30),l=n(2),u=r,d=l(i.a,s.a,!1,u,null,null);d.options.__file="src/components/common/EditableInput.vue",t.default=d.exports;},function(e,t,n){function r(e){n(43);}Object.defineProperty(t,"__esModule",{value:!0});var a=n(14),i=n.n(a);for(var o in a)"default"!==o&&function(e){n.d(t,e,function(){return a[e]});}(o);var s=n(45),l=n(2),u=r,d=l(i.a,s.a,!1,u,null,null);d.options.__file="src/components/common/Hue.vue",t.default=d.exports;},function(e,t,n){function r(e){n(55);}Object.defineProperty(t,"__esModule",{value:!0});var a=n(17),i=n.n(a);for(var o in a)"default"!==o&&function(e){n.d(t,e,function(){return a[e]});}(o);var s=n(60),l=n(2),u=r,d=l(i.a,s.a,!1,u,null,null);d.options.__file="src/components/common/Saturation.vue",t.default=d.exports;},function(e,t,n){function r(e){n(61);}Object.defineProperty(t,"__esModule",{value:!0});var a=n(18),i=n.n(a);for(var o in a)"default"!==o&&function(e){n.d(t,e,function(){return a[e]});}(o);var s=n(66),l=n(2),u=r,d=l(i.a,s.a,!1,u,null,null);d.options.__file="src/components/common/Alpha.vue",t.default=d.exports;},function(e,t,n){function r(e){n(63);}Object.defineProperty(t,"__esModule",{value:!0});var a=n(19),i=n.n(a);for(var o in a)"default"!==o&&function(e){n.d(t,e,function(){return a[e]});}(o);var s=n(65),l=n(2),u=r,d=l(i.a,s.a,!1,u,null,null);d.options.__file="src/components/common/Checkboard.vue",t.default=d.exports;},function(e,t,n){function r(e){return e&&e.__esModule?e:{default:e}}Object.defineProperty(t,"__esModule",{value:!0});var a=n(3),i=r(a),o=n(4),s=r(o),c=["#4D4D4D","#999999","#FFFFFF","#F44E3B","#FE9200","#FCDC00","#DBDF00","#A4DD00","#68CCCA","#73D8FF","#AEA1FF","#FDA1FF","#333333","#808080","#CCCCCC","#D33115","#E27300","#FCC400","#B0BC00","#68BC00","#16A5A5","#009CE0","#7B64FF","#FA28FF","#000000","#666666","#B3B3B3","#9F0500","#C45100","#FB9E00","#808900","#194D33","#0C797D","#0062B1","#653294","#AB149E"];t.default={name:"Compact",mixins:[i.default],props:{palette:{type:Array,default:function(){return c}}},components:{"ed-in":s.default},computed:{pick:function(){return this.colors.hex.toUpperCase()}},methods:{handlerClick:function(e){this.colorChange({hex:e,source:"hex"});}}};},function(e,t,n){Object.defineProperty(t,"__esModule",{value:!0}),t.default={name:"editableInput",props:{label:String,labelText:String,desc:String,value:[String,Number],max:Number,min:Number,arrowOffset:{type:Number,default:1}},computed:{val:{get:function(){return this.value},set:function(e){if(!(void 0!==this.max&&+e>this.max))return e;this.$refs.input.value=this.max;}},labelId:function(){return "input__label__"+this.label+"__"+Math.random().toString().slice(2,5)},labelSpanText:function(){return this.labelText||this.label}},methods:{update:function(e){this.handleChange(e.target.value);},handleChange:function(e){var t={};t[this.label]=e,void 0===t.hex&&void 0===t["#"]?this.$emit("change",t):e.length>5&&this.$emit("change",t);},handleKeyDown:function(e){var t=this.val,n=Number(t);if(n){var r=this.arrowOffset||1;38===e.keyCode&&(t=n+r,this.handleChange(t),e.preventDefault()),40===e.keyCode&&(t=n-r,this.handleChange(t),e.preventDefault());}}}};},function(e,t,n){Object.defineProperty(t,"__esModule",{value:!0});var r=n(3),a=function(e){return e&&e.__esModule?e:{default:e}}(r),i=["#FFFFFF","#F2F2F2","#E6E6E6","#D9D9D9","#CCCCCC","#BFBFBF","#B3B3B3","#A6A6A6","#999999","#8C8C8C","#808080","#737373","#666666","#595959","#4D4D4D","#404040","#333333","#262626","#0D0D0D","#000000"];t.default={name:"Grayscale",mixins:[a.default],props:{palette:{type:Array,default:function(){return i}}},components:{},computed:{pick:function(){return this.colors.hex.toUpperCase()}},methods:{handlerClick:function(e){this.colorChange({hex:e,source:"hex"});}}};},function(e,t,n){function r(e){return e&&e.__esModule?e:{default:e}}Object.defineProperty(t,"__esModule",{value:!0});var a=n(4),i=r(a),o=n(3),s=r(o);t.default={name:"Material",mixins:[s.default],components:{"ed-in":i.default},methods:{onChange:function(e){e&&(e.hex?this.isValidHex(e.hex)&&this.colorChange({hex:e.hex,source:"hex"}):(e.r||e.g||e.b)&&this.colorChange({r:e.r||this.colors.rgba.r,g:e.g||this.colors.rgba.g,b:e.b||this.colors.rgba.b,a:e.a||this.colors.rgba.a,source:"rgba"}));}}};},function(e,t,n){function r(e){return e&&e.__esModule?e:{default:e}}Object.defineProperty(t,"__esModule",{value:!0});var a=n(3),i=r(a),o=n(5),s=r(o);t.default={name:"Slider",mixins:[i.default],props:{swatches:{type:Array,default:function(){return [".80",".65",".50",".35",".20"]}}},components:{hue:s.default},computed:{activeOffset:function(){var e=this.swatches.includes("0"),t=this.swatches.includes("1"),n=this.colors.hsl;return Math.round(100*n.s)/100==.5?Math.round(100*n.l)/100:e&&0===n.l?0:t&&1===n.l?1:-1}},methods:{hueChange:function(e){this.colorChange(e);},handleSwClick:function(e,t){this.colorChange({h:this.colors.hsl.h,s:.5,l:t,source:"hsl"});}}};},function(e,t,n){Object.defineProperty(t,"__esModule",{value:!0}),t.default={name:"Hue",props:{value:Object,direction:{type:String,default:"horizontal"}},data:function(){return {oldHue:0,pullDirection:""}},computed:{colors:function(){var e=this.value.hsl.h;return 0!==e&&e-this.oldHue>0&&(this.pullDirection="right"),0!==e&&e-this.oldHue<0&&(this.pullDirection="left"),this.oldHue=e,this.value},directionClass:function(){return {"vc-hue--horizontal":"horizontal"===this.direction,"vc-hue--vertical":"vertical"===this.direction}},pointerTop:function(){return "vertical"===this.direction?0===this.colors.hsl.h&&"right"===this.pullDirection?0:-100*this.colors.hsl.h/360+100+"%":0},pointerLeft:function(){return "vertical"===this.direction?0:0===this.colors.hsl.h&&"right"===this.pullDirection?"100%":100*this.colors.hsl.h/360+"%"}},methods:{handleChange:function(e,t){!t&&e.preventDefault();var n,r,a=this.$refs.container,i=a.clientWidth,o=a.clientHeight,s=a.getBoundingClientRect().left+window.pageXOffset,c=a.getBoundingClientRect().top+window.pageYOffset,l=e.pageX||(e.touches?e.touches[0].pageX:0),u=e.pageY||(e.touches?e.touches[0].pageY:0),d=l-s,h=u-c;"vertical"===this.direction?(h<0?n=360:h>o?n=0:(r=-100*h/o+100,n=360*r/100),this.colors.hsl.h!==n&&this.$emit("change",{h:n,s:this.colors.hsl.s,l:this.colors.hsl.l,a:this.colors.hsl.a,source:"hsl"})):(d<0?n=0:d>i?n=360:(r=100*d/i,n=360*r/100),this.colors.hsl.h!==n&&this.$emit("change",{h:n,s:this.colors.hsl.s,l:this.colors.hsl.l,a:this.colors.hsl.a,source:"hsl"}));},handleMouseDown:function(e){this.handleChange(e,!0),window.addEventListener("mousemove",this.handleChange),window.addEventListener("mouseup",this.handleMouseUp);},handleMouseUp:function(e){this.unbindEventListeners();},unbindEventListeners:function(){window.removeEventListener("mousemove",this.handleChange),window.removeEventListener("mouseup",this.handleMouseUp);}}};},function(e,t,n){function r(e){return e&&e.__esModule?e:{default:e}}Object.defineProperty(t,"__esModule",{value:!0});var a=n(50),i=r(a),o=n(3),s=r(o),c=["red","pink","purple","deepPurple","indigo","blue","lightBlue","cyan","teal","green","lightGreen","lime","yellow","amber","orange","deepOrange","brown","blueGrey","black"],l=["900","700","500","300","100"],u=function(){var e=[];return c.forEach(function(t){var n=[];"black"===t.toLowerCase()||"white"===t.toLowerCase()?n=n.concat(["#000000","#FFFFFF"]):l.forEach(function(e){var r=i.default[t][e];n.push(r.toUpperCase());}),e.push(n);}),e}();t.default={name:"Swatches",mixins:[s.default],props:{palette:{type:Array,default:function(){return u}}},computed:{pick:function(){return this.colors.hex}},methods:{equal:function(e){return e.toLowerCase()===this.colors.hex.toLowerCase()},handlerClick:function(e){this.colorChange({hex:e,source:"hex"});}}};},function(e,t,n){function r(e){return e&&e.__esModule?e:{default:e}}Object.defineProperty(t,"__esModule",{value:!0});var a=n(3),i=r(a),o=n(4),s=r(o),c=n(6),l=r(c),u=n(5),d=r(u),h=n(7),f=r(h);t.default={name:"Photoshop",mixins:[i.default],props:{head:{type:String,default:"Color Picker"},disableFields:{type:Boolean,default:!1},hasResetButton:{type:Boolean,default:!1},acceptLabel:{type:String,default:"OK"},cancelLabel:{type:String,default:"Cancel"},resetLabel:{type:String,default:"Reset"},newLabel:{type:String,default:"new"},currentLabel:{type:String,default:"current"}},components:{saturation:l.default,hue:d.default,alpha:f.default,"ed-in":s.default},data:function(){return {currentColor:"#FFF"}},computed:{hsv:function(){var e=this.colors.hsv;return {h:e.h.toFixed(),s:(100*e.s).toFixed(),v:(100*e.v).toFixed()}},hex:function(){var e=this.colors.hex;return e&&e.replace("#","")}},created:function(){this.currentColor=this.colors.hex;},methods:{childChange:function(e){this.colorChange(e);},inputChange:function(e){e&&(e["#"]?this.isValidHex(e["#"])&&this.colorChange({hex:e["#"],source:"hex"}):e.r||e.g||e.b||e.a?this.colorChange({r:e.r||this.colors.rgba.r,g:e.g||this.colors.rgba.g,b:e.b||this.colors.rgba.b,a:e.a||this.colors.rgba.a,source:"rgba"}):(e.h||e.s||e.v)&&this.colorChange({h:e.h||this.colors.hsv.h,s:e.s/100||this.colors.hsv.s,v:e.v/100||this.colors.hsv.v,source:"hsv"}));},clickCurrentColor:function(){this.colorChange({hex:this.currentColor,source:"hex"});},handleAccept:function(){this.$emit("ok");},handleCancel:function(){this.$emit("cancel");},handleReset:function(){this.$emit("reset");}}};},function(e,t,n){function r(e){return e&&e.__esModule?e:{default:e}}Object.defineProperty(t,"__esModule",{value:!0});var a=n(57),i=r(a),o=n(58),s=r(o);t.default={name:"Saturation",props:{value:Object},computed:{colors:function(){return this.value},bgColor:function(){return "hsl("+this.colors.hsv.h+", 100%, 50%)"},pointerTop:function(){return -100*this.colors.hsv.v+1+100+"%"},pointerLeft:function(){return 100*this.colors.hsv.s+"%"}},methods:{throttle:(0, s.default)(function(e,t){e(t);},20,{leading:!0,trailing:!1}),handleChange:function(e,t){!t&&e.preventDefault();var n=this.$refs.container,r=n.clientWidth,a=n.clientHeight,o=n.getBoundingClientRect().left+window.pageXOffset,s=n.getBoundingClientRect().top+window.pageYOffset,c=e.pageX||(e.touches?e.touches[0].pageX:0),l=e.pageY||(e.touches?e.touches[0].pageY:0),u=(0, i.default)(c-o,0,r),d=(0, i.default)(l-s,0,a),h=u/r,f=(0, i.default)(-d/a+1,0,1);this.throttle(this.onChange,{h:this.colors.hsv.h,s:h,v:f,a:this.colors.hsv.a,source:"hsva"});},onChange:function(e){this.$emit("change",e);},handleMouseDown:function(e){window.addEventListener("mousemove",this.handleChange),window.addEventListener("mouseup",this.handleChange),window.addEventListener("mouseup",this.handleMouseUp);},handleMouseUp:function(e){this.unbindEventListeners();},unbindEventListeners:function(){window.removeEventListener("mousemove",this.handleChange),window.removeEventListener("mouseup",this.handleChange),window.removeEventListener("mouseup",this.handleMouseUp);}}};},function(e,t,n){Object.defineProperty(t,"__esModule",{value:!0});var r=n(8),a=function(e){return e&&e.__esModule?e:{default:e}}(r);t.default={name:"Alpha",props:{value:Object,onChange:Function},components:{checkboard:a.default},computed:{colors:function(){return this.value},gradientColor:function(){var e=this.colors.rgba,t=[e.r,e.g,e.b].join(",");return "linear-gradient(to right, rgba("+t+", 0) 0%, rgba("+t+", 1) 100%)"}},methods:{handleChange:function(e,t){!t&&e.preventDefault();var n,r=this.$refs.container,a=r.clientWidth,i=r.getBoundingClientRect().left+window.pageXOffset,o=e.pageX||(e.touches?e.touches[0].pageX:0),s=o-i;n=s<0?0:s>a?1:Math.round(100*s/a)/100,this.colors.a!==n&&this.$emit("change",{h:this.colors.hsl.h,s:this.colors.hsl.s,l:this.colors.hsl.l,a:n,source:"rgba"});},handleMouseDown:function(e){this.handleChange(e,!0),window.addEventListener("mousemove",this.handleChange),window.addEventListener("mouseup",this.handleMouseUp);},handleMouseUp:function(){this.unbindEventListeners();},unbindEventListeners:function(){window.removeEventListener("mousemove",this.handleChange),window.removeEventListener("mouseup",this.handleMouseUp);}}};},function(e,t,n){function r(e,t,n){if("undefined"==typeof document)return null;var r=document.createElement("canvas");r.width=r.height=2*n;var a=r.getContext("2d");return a?(a.fillStyle=e,a.fillRect(0,0,r.width,r.height),a.fillStyle=t,a.fillRect(0,0,n,n),a.translate(n,n),a.fillRect(0,0,n,n),r.toDataURL()):null}function a(e,t,n){var a=e+","+t+","+n;if(i[a])return i[a];var o=r(e,t,n);return i[a]=o,o}Object.defineProperty(t,"__esModule",{value:!0});var i={};t.default={name:"Checkboard",props:{size:{type:[Number,String],default:8},white:{type:String,default:"#fff"},grey:{type:String,default:"#e6e6e6"}},computed:{bgStyle:function(){return {"background-image":"url("+a(this.white,this.grey,this.size)+")"}}}};},function(e,t,n){function r(e){return e&&e.__esModule?e:{default:e}}Object.defineProperty(t,"__esModule",{value:!0});var a=n(3),i=r(a),o=n(4),s=r(o),c=n(6),l=r(c),u=n(5),d=r(u),h=n(7),f=r(h),p=n(8),v=r(p),g=["#D0021B","#F5A623","#F8E71C","#8B572A","#7ED321","#417505","#BD10E0","#9013FE","#4A90E2","#50E3C2","#B8E986","#000000","#4A4A4A","#9B9B9B","#FFFFFF","rgba(0,0,0,0)"];t.default={name:"Sketch",mixins:[i.default],components:{saturation:l.default,hue:d.default,alpha:f.default,"ed-in":s.default,checkboard:v.default},props:{presetColors:{type:Array,default:function(){return g}},disableAlpha:{type:Boolean,default:!1},disableFields:{type:Boolean,default:!1}},computed:{hex:function(){var e=void 0;return e=this.colors.a<1?this.colors.hex8:this.colors.hex,e.replace("#","")},activeColor:function(){var e=this.colors.rgba;return "rgba("+[e.r,e.g,e.b,e.a].join(",")+")"}},methods:{handlePreset:function(e){this.colorChange({hex:e,source:"hex"});},childChange:function(e){this.colorChange(e);},inputChange:function(e){e&&(e.hex?this.isValidHex(e.hex)&&this.colorChange({hex:e.hex,source:"hex"}):(e.r||e.g||e.b||e.a)&&this.colorChange({r:e.r||this.colors.rgba.r,g:e.g||this.colors.rgba.g,b:e.b||this.colors.rgba.b,a:e.a||this.colors.rgba.a,source:"rgba"}));}}};},function(e,t,n){function r(e){return e&&e.__esModule?e:{default:e}}Object.defineProperty(t,"__esModule",{value:!0});var a=n(3),i=r(a),o=n(4),s=r(o),c=n(6),l=r(c),u=n(5),d=r(u),h=n(7),f=r(h),p=n(8),v=r(p);t.default={name:"Chrome",mixins:[i.default],props:{disableAlpha:{type:Boolean,default:!1},disableFields:{type:Boolean,default:!1}},components:{saturation:l.default,hue:d.default,alpha:f.default,"ed-in":s.default,checkboard:v.default},data:function(){return {fieldsIndex:0,highlight:!1}},computed:{hsl:function(){var e=this.colors.hsl,t=e.h,n=e.s,r=e.l;return {h:t.toFixed(),s:(100*n).toFixed()+"%",l:(100*r).toFixed()+"%"}},activeColor:function(){var e=this.colors.rgba;return "rgba("+[e.r,e.g,e.b,e.a].join(",")+")"},hasAlpha:function(){return this.colors.a<1}},methods:{childChange:function(e){this.colorChange(e);},inputChange:function(e){if(e)if(e.hex)this.isValidHex(e.hex)&&this.colorChange({hex:e.hex,source:"hex"});else if(e.r||e.g||e.b||e.a)this.colorChange({r:e.r||this.colors.rgba.r,g:e.g||this.colors.rgba.g,b:e.b||this.colors.rgba.b,a:e.a||this.colors.rgba.a,source:"rgba"});else if(e.h||e.s||e.l){var t=e.s?e.s.replace("%","")/100:this.colors.hsl.s,n=e.l?e.l.replace("%","")/100:this.colors.hsl.l;this.colorChange({h:e.h||this.colors.hsl.h,s:t,l:n,source:"hsl"});}},toggleViews:function(){if(this.fieldsIndex>=2)return void(this.fieldsIndex=0);this.fieldsIndex++;},showHighlight:function(){this.highlight=!0;},hideHighlight:function(){this.highlight=!1;}}};},function(e,t,n){function r(e){return e&&e.__esModule?e:{default:e}}var a=n(23),i=r(a),o=n(32),s=r(o),c=n(36),l=r(c),u=n(40),d=r(u),h=n(47),f=r(h),p=n(52),v=r(p),g=n(68),b=r(g),x=n(72),m=r(x),_=n(7),w=r(_),C=n(8),y=r(C),k=n(4),F=r(k),A=n(5),S=r(A),M=n(6),E=r(M),L=n(3),R=r(L),j={version:"2.7.0",Compact:i.default,Grayscale:s.default,Material:l.default,Slider:d.default,Swatches:f.default,Photoshop:v.default,Sketch:b.default,Chrome:m.default,Alpha:w.default,Checkboard:y.default,EditableInput:F.default,Hue:S.default,Saturation:E.default,ColorMixin:R.default};e.exports=j;},function(e,t,n){function r(e){n(24);}Object.defineProperty(t,"__esModule",{value:!0});var a=n(9),i=n.n(a);for(var o in a)"default"!==o&&function(e){n.d(t,e,function(){return a[e]});}(o);var s=n(31),l=n(2),u=r,d=l(i.a,s.a,!1,u,null,null);d.options.__file="src/components/Compact.vue",t.default=d.exports;},function(e,t,n){var r=n(25);"string"==typeof r&&(r=[[e.i,r,""]]),r.locals&&(e.exports=r.locals);n(1)("6ce8a5a8",r,!1,{});},function(e,t,n){t=e.exports=n(0)(!1),t.push([e.i,"\n.vc-compact {\n  padding-top: 5px;\n  padding-left: 5px;\n  width: 240px;\n  border-radius: 2px;\n  box-shadow: 0 2px 10px rgba(0,0,0,.12), 0 2px 5px rgba(0,0,0,.16);\n  background-color: #fff;\n}\n.vc-compact-colors {\n  overflow: hidden;\n  padding: 0;\n  margin: 0;\n}\n.vc-compact-color-item {\n  list-style: none;\n  width: 15px;\n  height: 15px;\n  float: left;\n  margin-right: 5px;\n  margin-bottom: 5px;\n  position: relative;\n  cursor: pointer;\n}\n.vc-compact-color-item--white {\n  box-shadow: inset 0 0 0 1px #ddd;\n}\n.vc-compact-color-item--white .vc-compact-dot {\n  background: #000;\n}\n.vc-compact-dot {\n  position: absolute;\n  top: 5px;\n  right: 5px;\n  bottom: 5px;\n  left: 5px;\n  border-radius: 50%;\n  opacity: 1;\n  background: #fff;\n}\n",""]);},function(e,t){e.exports=function(e,t){for(var n=[],r={},a=0;a<t.length;a++){var i=t[a],o=i[0],s=i[1],c=i[2],l=i[3],u={id:e+":"+a,css:s,media:c,sourceMap:l};r[o]?r[o].parts.push(u):n.push(r[o]={id:o,parts:[u]});}return n};},function(e,t,n){var r;!function(a){function i(e,t){if(e=e||"",t=t||{},e instanceof i)return e;if(!(this instanceof i))return new i(e,t);var n=o(e);this._originalInput=e,this._r=n.r,this._g=n.g,this._b=n.b,this._a=n.a,this._roundA=q(100*this._a)/100,this._format=t.format||n.format,this._gradientType=t.gradientType,this._r<1&&(this._r=q(this._r)),this._g<1&&(this._g=q(this._g)),this._b<1&&(this._b=q(this._b)),this._ok=n.ok,this._tc_id=U++;}function o(e){var t={r:0,g:0,b:0},n=1,r=null,a=null,i=null,o=!1,c=!1;return "string"==typeof e&&(e=z(e)),"object"==typeof e&&($(e.r)&&$(e.g)&&$(e.b)?(t=s(e.r,e.g,e.b),o=!0,c="%"===String(e.r).substr(-1)?"prgb":"rgb"):$(e.h)&&$(e.s)&&$(e.v)?(r=D(e.s),a=D(e.v),t=d(e.h,r,a),o=!0,c="hsv"):$(e.h)&&$(e.s)&&$(e.l)&&(r=D(e.s),i=D(e.l),t=l(e.h,r,i),o=!0,c="hsl"),e.hasOwnProperty("a")&&(n=e.a)),n=M(n),{ok:o,format:e.format||c,r:V(255,X(t.r,0)),g:V(255,X(t.g,0)),b:V(255,X(t.b,0)),a:n}}function s(e,t,n){return {r:255*E(e,255),g:255*E(t,255),b:255*E(n,255)}}function c(e,t,n){e=E(e,255),t=E(t,255),n=E(n,255);var r,a,i=X(e,t,n),o=V(e,t,n),s=(i+o)/2;if(i==o)r=a=0;else{var c=i-o;switch(a=s>.5?c/(2-i-o):c/(i+o),i){case e:r=(t-n)/c+(t<n?6:0);break;case t:r=(n-e)/c+2;break;case n:r=(e-t)/c+4;}r/=6;}return {h:r,s:a,l:s}}function l(e,t,n){function r(e,t,n){return n<0&&(n+=1),n>1&&(n-=1),n<1/6?e+6*(t-e)*n:n<.5?t:n<2/3?e+(t-e)*(2/3-n)*6:e}var a,i,o;if(e=E(e,360),t=E(t,100),n=E(n,100),0===t)a=i=o=n;else{var s=n<.5?n*(1+t):n+t-n*t,c=2*n-s;a=r(c,s,e+1/3),i=r(c,s,e),o=r(c,s,e-1/3);}return {r:255*a,g:255*i,b:255*o}}function u(e,t,n){e=E(e,255),t=E(t,255),n=E(n,255);var r,a,i=X(e,t,n),o=V(e,t,n),s=i,c=i-o;if(a=0===i?0:c/i,i==o)r=0;else{switch(i){case e:r=(t-n)/c+(t<n?6:0);break;case t:r=(n-e)/c+2;break;case n:r=(e-t)/c+4;}r/=6;}return {h:r,s:a,v:s}}function d(e,t,n){e=6*E(e,360),t=E(t,100),n=E(n,100);var r=a.floor(e),i=e-r,o=n*(1-t),s=n*(1-i*t),c=n*(1-(1-i)*t),l=r%6;return {r:255*[n,s,o,o,c,n][l],g:255*[c,n,n,s,o,o][l],b:255*[o,o,c,n,n,s][l]}}function h(e,t,n,r){var a=[B(q(e).toString(16)),B(q(t).toString(16)),B(q(n).toString(16))];return r&&a[0].charAt(0)==a[0].charAt(1)&&a[1].charAt(0)==a[1].charAt(1)&&a[2].charAt(0)==a[2].charAt(1)?a[0].charAt(0)+a[1].charAt(0)+a[2].charAt(0):a.join("")}function f(e,t,n,r,a){var i=[B(q(e).toString(16)),B(q(t).toString(16)),B(q(n).toString(16)),B(H(r))];return a&&i[0].charAt(0)==i[0].charAt(1)&&i[1].charAt(0)==i[1].charAt(1)&&i[2].charAt(0)==i[2].charAt(1)&&i[3].charAt(0)==i[3].charAt(1)?i[0].charAt(0)+i[1].charAt(0)+i[2].charAt(0)+i[3].charAt(0):i.join("")}function p(e,t,n,r){return [B(H(r)),B(q(e).toString(16)),B(q(t).toString(16)),B(q(n).toString(16))].join("")}function v(e,t){t=0===t?0:t||10;var n=i(e).toHsl();return n.s-=t/100,n.s=L(n.s),i(n)}function g(e,t){t=0===t?0:t||10;var n=i(e).toHsl();return n.s+=t/100,n.s=L(n.s),i(n)}function b(e){return i(e).desaturate(100)}function x(e,t){t=0===t?0:t||10;var n=i(e).toHsl();return n.l+=t/100,n.l=L(n.l),i(n)}function m(e,t){t=0===t?0:t||10;var n=i(e).toRgb();return n.r=X(0,V(255,n.r-q(-t/100*255))),n.g=X(0,V(255,n.g-q(-t/100*255))),n.b=X(0,V(255,n.b-q(-t/100*255))),i(n)}function _(e,t){t=0===t?0:t||10;var n=i(e).toHsl();return n.l-=t/100,n.l=L(n.l),i(n)}function w(e,t){var n=i(e).toHsl(),r=(n.h+t)%360;return n.h=r<0?360+r:r,i(n)}function C(e){var t=i(e).toHsl();return t.h=(t.h+180)%360,i(t)}function y(e){var t=i(e).toHsl(),n=t.h;return [i(e),i({h:(n+120)%360,s:t.s,l:t.l}),i({h:(n+240)%360,s:t.s,l:t.l})]}function k(e){var t=i(e).toHsl(),n=t.h;return [i(e),i({h:(n+90)%360,s:t.s,l:t.l}),i({h:(n+180)%360,s:t.s,l:t.l}),i({h:(n+270)%360,s:t.s,l:t.l})]}function F(e){var t=i(e).toHsl(),n=t.h;return [i(e),i({h:(n+72)%360,s:t.s,l:t.l}),i({h:(n+216)%360,s:t.s,l:t.l})]}function A(e,t,n){t=t||6,n=n||30;var r=i(e).toHsl(),a=360/n,o=[i(e)];for(r.h=(r.h-(a*t>>1)+720)%360;--t;)r.h=(r.h+a)%360,o.push(i(r));return o}function S(e,t){t=t||6;for(var n=i(e).toHsv(),r=n.h,a=n.s,o=n.v,s=[],c=1/t;t--;)s.push(i({h:r,s:a,v:o})),o=(o+c)%1;return s}function M(e){return e=parseFloat(e),(isNaN(e)||e<0||e>1)&&(e=1),e}function E(e,t){j(e)&&(e="100%");var n=O(e);return e=V(t,X(0,parseFloat(e))),n&&(e=parseInt(e*t,10)/100),a.abs(e-t)<1e-6?1:e%t/parseFloat(t)}function L(e){return V(1,X(0,e))}function R(e){return parseInt(e,16)}function j(e){return "string"==typeof e&&-1!=e.indexOf(".")&&1===parseFloat(e)}function O(e){return "string"==typeof e&&-1!=e.indexOf("%")}function B(e){return 1==e.length?"0"+e:""+e}function D(e){return e<=1&&(e=100*e+"%"),e}function H(e){return a.round(255*parseFloat(e)).toString(16)}function P(e){return R(e)/255}function $(e){return !!K.CSS_UNIT.exec(e)}function z(e){e=e.replace(T,"").replace(I,"").toLowerCase();var t=!1;if(W[e])e=W[e],t=!0;else if("transparent"==e)return {r:0,g:0,b:0,a:0,format:"name"};var n;return (n=K.rgb.exec(e))?{r:n[1],g:n[2],b:n[3]}:(n=K.rgba.exec(e))?{r:n[1],g:n[2],b:n[3],a:n[4]}:(n=K.hsl.exec(e))?{h:n[1],s:n[2],l:n[3]}:(n=K.hsla.exec(e))?{h:n[1],s:n[2],l:n[3],a:n[4]}:(n=K.hsv.exec(e))?{h:n[1],s:n[2],v:n[3]}:(n=K.hsva.exec(e))?{h:n[1],s:n[2],v:n[3],a:n[4]}:(n=K.hex8.exec(e))?{r:R(n[1]),g:R(n[2]),b:R(n[3]),a:P(n[4]),format:t?"name":"hex8"}:(n=K.hex6.exec(e))?{r:R(n[1]),g:R(n[2]),b:R(n[3]),format:t?"name":"hex"}:(n=K.hex4.exec(e))?{r:R(n[1]+""+n[1]),g:R(n[2]+""+n[2]),b:R(n[3]+""+n[3]),a:P(n[4]+""+n[4]),format:t?"name":"hex8"}:!!(n=K.hex3.exec(e))&&{r:R(n[1]+""+n[1]),g:R(n[2]+""+n[2]),b:R(n[3]+""+n[3]),format:t?"name":"hex"}}function N(e){var t,n;return e=e||{level:"AA",size:"small"},t=(e.level||"AA").toUpperCase(),n=(e.size||"small").toLowerCase(),"AA"!==t&&"AAA"!==t&&(t="AA"),"small"!==n&&"large"!==n&&(n="small"),{level:t,size:n}}var T=/^\s+/,I=/\s+$/,U=0,q=a.round,V=a.min,X=a.max,G=a.random;i.prototype={isDark:function(){return this.getBrightness()<128},isLight:function(){return !this.isDark()},isValid:function(){return this._ok},getOriginalInput:function(){return this._originalInput},getFormat:function(){return this._format},getAlpha:function(){return this._a},getBrightness:function(){var e=this.toRgb();return (299*e.r+587*e.g+114*e.b)/1e3},getLuminance:function(){var e,t,n,r,i,o,s=this.toRgb();return e=s.r/255,t=s.g/255,n=s.b/255,r=e<=.03928?e/12.92:a.pow((e+.055)/1.055,2.4),i=t<=.03928?t/12.92:a.pow((t+.055)/1.055,2.4),o=n<=.03928?n/12.92:a.pow((n+.055)/1.055,2.4),.2126*r+.7152*i+.0722*o},setAlpha:function(e){return this._a=M(e),this._roundA=q(100*this._a)/100,this},toHsv:function(){var e=u(this._r,this._g,this._b);return {h:360*e.h,s:e.s,v:e.v,a:this._a}},toHsvString:function(){var e=u(this._r,this._g,this._b),t=q(360*e.h),n=q(100*e.s),r=q(100*e.v);return 1==this._a?"hsv("+t+", "+n+"%, "+r+"%)":"hsva("+t+", "+n+"%, "+r+"%, "+this._roundA+")"},toHsl:function(){var e=c(this._r,this._g,this._b);return {h:360*e.h,s:e.s,l:e.l,a:this._a}},toHslString:function(){var e=c(this._r,this._g,this._b),t=q(360*e.h),n=q(100*e.s),r=q(100*e.l);return 1==this._a?"hsl("+t+", "+n+"%, "+r+"%)":"hsla("+t+", "+n+"%, "+r+"%, "+this._roundA+")"},toHex:function(e){return h(this._r,this._g,this._b,e)},toHexString:function(e){return "#"+this.toHex(e)},toHex8:function(e){return f(this._r,this._g,this._b,this._a,e)},toHex8String:function(e){return "#"+this.toHex8(e)},toRgb:function(){return {r:q(this._r),g:q(this._g),b:q(this._b),a:this._a}},toRgbString:function(){return 1==this._a?"rgb("+q(this._r)+", "+q(this._g)+", "+q(this._b)+")":"rgba("+q(this._r)+", "+q(this._g)+", "+q(this._b)+", "+this._roundA+")"},toPercentageRgb:function(){return {r:q(100*E(this._r,255))+"%",g:q(100*E(this._g,255))+"%",b:q(100*E(this._b,255))+"%",a:this._a}},toPercentageRgbString:function(){return 1==this._a?"rgb("+q(100*E(this._r,255))+"%, "+q(100*E(this._g,255))+"%, "+q(100*E(this._b,255))+"%)":"rgba("+q(100*E(this._r,255))+"%, "+q(100*E(this._g,255))+"%, "+q(100*E(this._b,255))+"%, "+this._roundA+")"},toName:function(){return 0===this._a?"transparent":!(this._a<1)&&(Y[h(this._r,this._g,this._b,!0)]||!1)},toFilter:function(e){var t="#"+p(this._r,this._g,this._b,this._a),n=t,r=this._gradientType?"GradientType = 1, ":"";if(e){var a=i(e);n="#"+p(a._r,a._g,a._b,a._a);}return "progid:DXImageTransform.Microsoft.gradient("+r+"startColorstr="+t+",endColorstr="+n+")"},toString:function(e){var t=!!e;e=e||this._format;var n=!1,r=this._a<1&&this._a>=0;return t||!r||"hex"!==e&&"hex6"!==e&&"hex3"!==e&&"hex4"!==e&&"hex8"!==e&&"name"!==e?("rgb"===e&&(n=this.toRgbString()),"prgb"===e&&(n=this.toPercentageRgbString()),"hex"!==e&&"hex6"!==e||(n=this.toHexString()),"hex3"===e&&(n=this.toHexString(!0)),"hex4"===e&&(n=this.toHex8String(!0)),"hex8"===e&&(n=this.toHex8String()),"name"===e&&(n=this.toName()),"hsl"===e&&(n=this.toHslString()),"hsv"===e&&(n=this.toHsvString()),n||this.toHexString()):"name"===e&&0===this._a?this.toName():this.toRgbString()},clone:function(){return i(this.toString())},_applyModification:function(e,t){var n=e.apply(null,[this].concat([].slice.call(t)));return this._r=n._r,this._g=n._g,this._b=n._b,this.setAlpha(n._a),this},lighten:function(){return this._applyModification(x,arguments)},brighten:function(){return this._applyModification(m,arguments)},darken:function(){return this._applyModification(_,arguments)},desaturate:function(){return this._applyModification(v,arguments)},saturate:function(){return this._applyModification(g,arguments)},greyscale:function(){return this._applyModification(b,arguments)},spin:function(){return this._applyModification(w,arguments)},_applyCombination:function(e,t){return e.apply(null,[this].concat([].slice.call(t)))},analogous:function(){return this._applyCombination(A,arguments)},complement:function(){return this._applyCombination(C,arguments)},monochromatic:function(){return this._applyCombination(S,arguments)},splitcomplement:function(){return this._applyCombination(F,arguments)},triad:function(){return this._applyCombination(y,arguments)},tetrad:function(){return this._applyCombination(k,arguments)}},i.fromRatio=function(e,t){if("object"==typeof e){var n={};for(var r in e)e.hasOwnProperty(r)&&(n[r]="a"===r?e[r]:D(e[r]));e=n;}return i(e,t)},i.equals=function(e,t){return !(!e||!t)&&i(e).toRgbString()==i(t).toRgbString()},i.random=function(){return i.fromRatio({r:G(),g:G(),b:G()})},i.mix=function(e,t,n){n=0===n?0:n||50;var r=i(e).toRgb(),a=i(t).toRgb(),o=n/100;return i({r:(a.r-r.r)*o+r.r,g:(a.g-r.g)*o+r.g,b:(a.b-r.b)*o+r.b,a:(a.a-r.a)*o+r.a})},i.readability=function(e,t){var n=i(e),r=i(t);return (a.max(n.getLuminance(),r.getLuminance())+.05)/(a.min(n.getLuminance(),r.getLuminance())+.05)},i.isReadable=function(e,t,n){var r,a,o=i.readability(e,t);switch(a=!1,r=N(n),r.level+r.size){case"AAsmall":case"AAAlarge":a=o>=4.5;break;case"AAlarge":a=o>=3;break;case"AAAsmall":a=o>=7;}return a},i.mostReadable=function(e,t,n){var r,a,o,s,c=null,l=0;n=n||{},a=n.includeFallbackColors,o=n.level,s=n.size;for(var u=0;u<t.length;u++)(r=i.readability(e,t[u]))>l&&(l=r,c=i(t[u]));return i.isReadable(e,c,{level:o,size:s})||!a?c:(n.includeFallbackColors=!1,i.mostReadable(e,["#fff","#000"],n))};var W=i.names={aliceblue:"f0f8ff",antiquewhite:"faebd7",aqua:"0ff",aquamarine:"7fffd4",azure:"f0ffff",beige:"f5f5dc",bisque:"ffe4c4",black:"000",blanchedalmond:"ffebcd",blue:"00f",blueviolet:"8a2be2",brown:"a52a2a",burlywood:"deb887",burntsienna:"ea7e5d",cadetblue:"5f9ea0",chartreuse:"7fff00",chocolate:"d2691e",coral:"ff7f50",cornflowerblue:"6495ed",cornsilk:"fff8dc",crimson:"dc143c",cyan:"0ff",darkblue:"00008b",darkcyan:"008b8b",darkgoldenrod:"b8860b",darkgray:"a9a9a9",darkgreen:"006400",darkgrey:"a9a9a9",darkkhaki:"bdb76b",darkmagenta:"8b008b",darkolivegreen:"556b2f",darkorange:"ff8c00",darkorchid:"9932cc",darkred:"8b0000",darksalmon:"e9967a",darkseagreen:"8fbc8f",darkslateblue:"483d8b",darkslategray:"2f4f4f",darkslategrey:"2f4f4f",darkturquoise:"00ced1",darkviolet:"9400d3",deeppink:"ff1493",deepskyblue:"00bfff",dimgray:"696969",dimgrey:"696969",dodgerblue:"1e90ff",firebrick:"b22222",floralwhite:"fffaf0",forestgreen:"228b22",fuchsia:"f0f",gainsboro:"dcdcdc",ghostwhite:"f8f8ff",gold:"ffd700",goldenrod:"daa520",gray:"808080",green:"008000",greenyellow:"adff2f",grey:"808080",honeydew:"f0fff0",hotpink:"ff69b4",indianred:"cd5c5c",indigo:"4b0082",ivory:"fffff0",khaki:"f0e68c",lavender:"e6e6fa",lavenderblush:"fff0f5",lawngreen:"7cfc00",lemonchiffon:"fffacd",lightblue:"add8e6",lightcoral:"f08080",lightcyan:"e0ffff",lightgoldenrodyellow:"fafad2",lightgray:"d3d3d3",lightgreen:"90ee90",lightgrey:"d3d3d3",lightpink:"ffb6c1",lightsalmon:"ffa07a",lightseagreen:"20b2aa",lightskyblue:"87cefa",lightslategray:"789",lightslategrey:"789",lightsteelblue:"b0c4de",lightyellow:"ffffe0",lime:"0f0",limegreen:"32cd32",linen:"faf0e6",magenta:"f0f",maroon:"800000",mediumaquamarine:"66cdaa",mediumblue:"0000cd",mediumorchid:"ba55d3",mediumpurple:"9370db",mediumseagreen:"3cb371",mediumslateblue:"7b68ee",mediumspringgreen:"00fa9a",mediumturquoise:"48d1cc",mediumvioletred:"c71585",midnightblue:"191970",mintcream:"f5fffa",mistyrose:"ffe4e1",moccasin:"ffe4b5",navajowhite:"ffdead",navy:"000080",oldlace:"fdf5e6",olive:"808000",olivedrab:"6b8e23",orange:"ffa500",orangered:"ff4500",orchid:"da70d6",palegoldenrod:"eee8aa",palegreen:"98fb98",paleturquoise:"afeeee",palevioletred:"db7093",papayawhip:"ffefd5",peachpuff:"ffdab9",peru:"cd853f",pink:"ffc0cb",plum:"dda0dd",powderblue:"b0e0e6",purple:"800080",rebeccapurple:"663399",red:"f00",rosybrown:"bc8f8f",royalblue:"4169e1",saddlebrown:"8b4513",salmon:"fa8072",sandybrown:"f4a460",seagreen:"2e8b57",seashell:"fff5ee",sienna:"a0522d",silver:"c0c0c0",skyblue:"87ceeb",slateblue:"6a5acd",slategray:"708090",slategrey:"708090",snow:"fffafa",springgreen:"00ff7f",steelblue:"4682b4",tan:"d2b48c",teal:"008080",thistle:"d8bfd8",tomato:"ff6347",turquoise:"40e0d0",violet:"ee82ee",wheat:"f5deb3",white:"fff",whitesmoke:"f5f5f5",yellow:"ff0",yellowgreen:"9acd32"},Y=i.hexNames=function(e){var t={};for(var n in e)e.hasOwnProperty(n)&&(t[e[n]]=n);return t}(W),K=function(){var e="(?:[-\\+]?\\d*\\.\\d+%?)|(?:[-\\+]?\\d+%?)",t="[\\s|\\(]+("+e+")[,|\\s]+("+e+")[,|\\s]+("+e+")\\s*\\)?",n="[\\s|\\(]+("+e+")[,|\\s]+("+e+")[,|\\s]+("+e+")[,|\\s]+("+e+")\\s*\\)?";return {CSS_UNIT:new RegExp(e),rgb:new RegExp("rgb"+t),rgba:new RegExp("rgba"+n),hsl:new RegExp("hsl"+t),hsla:new RegExp("hsla"+n),hsv:new RegExp("hsv"+t),hsva:new RegExp("hsva"+n),hex3:/^#?([0-9a-fA-F]{1})([0-9a-fA-F]{1})([0-9a-fA-F]{1})$/,hex6:/^#?([0-9a-fA-F]{2})([0-9a-fA-F]{2})([0-9a-fA-F]{2})$/,hex4:/^#?([0-9a-fA-F]{1})([0-9a-fA-F]{1})([0-9a-fA-F]{1})([0-9a-fA-F]{1})$/,hex8:/^#?([0-9a-fA-F]{2})([0-9a-fA-F]{2})([0-9a-fA-F]{2})([0-9a-fA-F]{2})$/}}();void 0!==e&&e.exports?e.exports=i:void 0!==(r=function(){return i}.call(t,n,t,e))&&(e.exports=r);}(Math);},function(e,t,n){var r=n(29);"string"==typeof r&&(r=[[e.i,r,""]]),r.locals&&(e.exports=r.locals);n(1)("0f73e73c",r,!1,{});},function(e,t,n){t=e.exports=n(0)(!1),t.push([e.i,"\n.vc-editable-input {\n  position: relative;\n}\n.vc-input__input {\n  padding: 0;\n  border: 0;\n  outline: none;\n}\n.vc-input__label {\n  text-transform: capitalize;\n}\n",""]);},function(e,t,n){var r=function(){var e=this,t=e.$createElement,n=e._self._c||t;return n("div",{staticClass:"vc-editable-input"},[n("input",{directives:[{name:"model",rawName:"v-model",value:e.val,expression:"val"}],ref:"input",staticClass:"vc-input__input",attrs:{"aria-labelledby":e.labelId},domProps:{value:e.val},on:{keydown:e.handleKeyDown,input:[function(t){t.target.composing||(e.val=t.target.value);},e.update]}}),e._v(" "),n("span",{staticClass:"vc-input__label",attrs:{for:e.label,id:e.labelId}},[e._v(e._s(e.labelSpanText))]),e._v(" "),n("span",{staticClass:"vc-input__desc"},[e._v(e._s(e.desc))])])},a=[];r._withStripped=!0;var i={render:r,staticRenderFns:a};t.a=i;},function(e,t,n){var r=function(){var e=this,t=e.$createElement,n=e._self._c||t;return n("div",{staticClass:"vc-compact",attrs:{role:"application","aria-label":"Compact color picker"}},[n("ul",{staticClass:"vc-compact-colors",attrs:{role:"listbox"}},e._l(e.paletteUpperCase(e.palette),function(t){return n("li",{key:t,staticClass:"vc-compact-color-item",class:{"vc-compact-color-item--white":"#FFFFFF"===t},style:{background:t},attrs:{role:"option","aria-label":"color:"+t,"aria-selected":t===e.pick},on:{click:function(n){e.handlerClick(t);}}},[n("div",{directives:[{name:"show",rawName:"v-show",value:t===e.pick,expression:"c === pick"}],staticClass:"vc-compact-dot"})])}))])},a=[];r._withStripped=!0;var i={render:r,staticRenderFns:a};t.a=i;},function(e,t,n){function r(e){n(33);}Object.defineProperty(t,"__esModule",{value:!0});var a=n(11),i=n.n(a);for(var o in a)"default"!==o&&function(e){n.d(t,e,function(){return a[e]});}(o);var s=n(35),l=n(2),u=r,d=l(i.a,s.a,!1,u,null,null);d.options.__file="src/components/Grayscale.vue",t.default=d.exports;},function(e,t,n){var r=n(34);"string"==typeof r&&(r=[[e.i,r,""]]),r.locals&&(e.exports=r.locals);n(1)("21ddbb74",r,!1,{});},function(e,t,n){t=e.exports=n(0)(!1),t.push([e.i,"\n.vc-grayscale {\n  width: 125px;\n  border-radius: 2px;\n  box-shadow: 0 2px 15px rgba(0,0,0,.12), 0 2px 10px rgba(0,0,0,.16);\n  background-color: #fff;\n}\n.vc-grayscale-colors {\n  border-radius: 2px;\n  overflow: hidden;\n  padding: 0;\n  margin: 0;\n}\n.vc-grayscale-color-item {\n  list-style: none;\n  width: 25px;\n  height: 25px;\n  float: left;\n  position: relative;\n  cursor: pointer;\n}\n.vc-grayscale-color-item--white .vc-grayscale-dot {\n  background: #000;\n}\n.vc-grayscale-dot {\n  position: absolute;\n  top: 50%;\n  left: 50%;\n  width: 6px;\n  height: 6px;\n  margin: -3px 0 0 -2px;\n  border-radius: 50%;\n  opacity: 1;\n  background: #fff;\n}\n",""]);},function(e,t,n){var r=function(){var e=this,t=e.$createElement,n=e._self._c||t;return n("div",{staticClass:"vc-grayscale",attrs:{role:"application","aria-label":"Grayscale color picker"}},[n("ul",{staticClass:"vc-grayscale-colors",attrs:{role:"listbox"}},e._l(e.paletteUpperCase(e.palette),function(t){return n("li",{key:t,staticClass:"vc-grayscale-color-item",class:{"vc-grayscale-color-item--white":"#FFFFFF"==t},style:{background:t},attrs:{role:"option","aria-label":"Color:"+t,"aria-selected":t===e.pick},on:{click:function(n){e.handlerClick(t);}}},[n("div",{directives:[{name:"show",rawName:"v-show",value:t===e.pick,expression:"c === pick"}],staticClass:"vc-grayscale-dot"})])}))])},a=[];r._withStripped=!0;var i={render:r,staticRenderFns:a};t.a=i;},function(e,t,n){function r(e){n(37);}Object.defineProperty(t,"__esModule",{value:!0});var a=n(12),i=n.n(a);for(var o in a)"default"!==o&&function(e){n.d(t,e,function(){return a[e]});}(o);var s=n(39),l=n(2),u=r,d=l(i.a,s.a,!1,u,null,null);d.options.__file="src/components/Material.vue",t.default=d.exports;},function(e,t,n){var r=n(38);"string"==typeof r&&(r=[[e.i,r,""]]),r.locals&&(e.exports=r.locals);n(1)("1ff3af73",r,!1,{});},function(e,t,n){t=e.exports=n(0)(!1),t.push([e.i,'\n.vc-material {\n  width: 98px;\n  height: 98px;\n  padding: 16px;\n  font-family: "Roboto";\n  position: relative;\n  border-radius: 2px;\n  box-shadow: 0 2px 10px rgba(0,0,0,.12), 0 2px 5px rgba(0,0,0,.16);\n  background-color: #fff;\n}\n.vc-material .vc-input__input {\n  width: 100%;\n  margin-top: 12px;\n  font-size: 15px;\n  color: #333;\n  height: 30px;\n}\n.vc-material .vc-input__label {\n  position: absolute;\n  top: 0;\n  left: 0;\n  font-size: 11px;\n  color: #999;\n  text-transform: capitalize;\n}\n.vc-material-hex {\n  border-bottom-width: 2px;\n  border-bottom-style: solid;\n}\n.vc-material-split {\n  display: flex;\n  margin-right: -10px;\n  padding-top: 11px;\n}\n.vc-material-third {\n  flex: 1;\n  padding-right: 10px;\n}\n',""]);},function(e,t,n){var r=function(){var e=this,t=e.$createElement,n=e._self._c||t;return n("div",{staticClass:"vc-material",attrs:{role:"application","aria-label":"Material color picker"}},[n("ed-in",{staticClass:"vc-material-hex",style:{borderColor:e.colors.hex},attrs:{label:"hex"},on:{change:e.onChange},model:{value:e.colors.hex,callback:function(t){e.$set(e.colors,"hex",t);},expression:"colors.hex"}}),e._v(" "),n("div",{staticClass:"vc-material-split"},[n("div",{staticClass:"vc-material-third"},[n("ed-in",{attrs:{label:"r"},on:{change:e.onChange},model:{value:e.colors.rgba.r,callback:function(t){e.$set(e.colors.rgba,"r",t);},expression:"colors.rgba.r"}})],1),e._v(" "),n("div",{staticClass:"vc-material-third"},[n("ed-in",{attrs:{label:"g"},on:{change:e.onChange},model:{value:e.colors.rgba.g,callback:function(t){e.$set(e.colors.rgba,"g",t);},expression:"colors.rgba.g"}})],1),e._v(" "),n("div",{staticClass:"vc-material-third"},[n("ed-in",{attrs:{label:"b"},on:{change:e.onChange},model:{value:e.colors.rgba.b,callback:function(t){e.$set(e.colors.rgba,"b",t);},expression:"colors.rgba.b"}})],1)])],1)},a=[];r._withStripped=!0;var i={render:r,staticRenderFns:a};t.a=i;},function(e,t,n){function r(e){n(41);}Object.defineProperty(t,"__esModule",{value:!0});var a=n(13),i=n.n(a);for(var o in a)"default"!==o&&function(e){n.d(t,e,function(){return a[e]});}(o);var s=n(46),l=n(2),u=r,d=l(i.a,s.a,!1,u,null,null);d.options.__file="src/components/Slider.vue",t.default=d.exports;},function(e,t,n){var r=n(42);"string"==typeof r&&(r=[[e.i,r,""]]),r.locals&&(e.exports=r.locals);n(1)("7982aa43",r,!1,{});},function(e,t,n){t=e.exports=n(0)(!1),t.push([e.i,"\n.vc-slider {\n  position: relative;\n  width: 410px;\n}\n.vc-slider-hue-warp {\n  height: 12px;\n  position: relative;\n}\n.vc-slider-hue-warp .vc-hue-picker {\n  width: 14px;\n  height: 14px;\n  border-radius: 6px;\n  transform: translate(-7px, -2px);\n  background-color: rgb(248, 248, 248);\n  box-shadow: 0 1px 4px 0 rgba(0, 0, 0, 0.37);\n}\n.vc-slider-swatches {\n  display: flex;\n  margin-top: 20px;\n}\n.vc-slider-swatch {\n  margin-right: 1px;\n  flex: 1;\n  width: 20%;\n}\n.vc-slider-swatch:first-child {\n  margin-right: 1px;\n}\n.vc-slider-swatch:first-child .vc-slider-swatch-picker {\n  border-radius: 2px 0px 0px 2px;\n}\n.vc-slider-swatch:last-child {\n  margin-right: 0;\n}\n.vc-slider-swatch:last-child .vc-slider-swatch-picker {\n  border-radius: 0px 2px 2px 0px;\n}\n.vc-slider-swatch-picker {\n  cursor: pointer;\n  height: 12px;\n}\n.vc-slider-swatch-picker--active {\n  transform: scaleY(1.8);\n  border-radius: 3.6px/2px;\n}\n.vc-slider-swatch-picker--white {\n  box-shadow: inset 0 0 0 1px #ddd;\n}\n.vc-slider-swatch-picker--active.vc-slider-swatch-picker--white {\n  box-shadow: inset 0 0 0 0.6px #ddd;\n}\n",""]);},function(e,t,n){var r=n(44);"string"==typeof r&&(r=[[e.i,r,""]]),r.locals&&(e.exports=r.locals);n(1)("7c5f1a1c",r,!1,{});},function(e,t,n){t=e.exports=n(0)(!1),t.push([e.i,"\n.vc-hue {\n  position: absolute;\n  top: 0px;\n  right: 0px;\n  bottom: 0px;\n  left: 0px;\n  border-radius: 2px;\n}\n.vc-hue--horizontal {\n  background: linear-gradient(to right, #f00 0%, #ff0 17%, #0f0 33%, #0ff 50%, #00f 67%, #f0f 83%, #f00 100%);\n}\n.vc-hue--vertical {\n  background: linear-gradient(to top, #f00 0%, #ff0 17%, #0f0 33%, #0ff 50%, #00f 67%, #f0f 83%, #f00 100%);\n}\n.vc-hue-container {\n  cursor: pointer;\n  margin: 0 2px;\n  position: relative;\n  height: 100%;\n}\n.vc-hue-pointer {\n  z-index: 2;\n  position: absolute;\n}\n.vc-hue-picker {\n  cursor: pointer;\n  margin-top: 1px;\n  width: 4px;\n  border-radius: 1px;\n  height: 8px;\n  box-shadow: 0 0 2px rgba(0, 0, 0, .6);\n  background: #fff;\n  transform: translateX(-2px) ;\n}\n",""]);},function(e,t,n){var r=function(){var e=this,t=e.$createElement,n=e._self._c||t;return n("div",{class:["vc-hue",e.directionClass]},[n("div",{ref:"container",staticClass:"vc-hue-container",attrs:{role:"slider","aria-valuenow":e.colors.hsl.h,"aria-valuemin":"0","aria-valuemax":"360"},on:{mousedown:e.handleMouseDown,touchmove:e.handleChange,touchstart:e.handleChange}},[n("div",{staticClass:"vc-hue-pointer",style:{top:e.pointerTop,left:e.pointerLeft},attrs:{role:"presentation"}},[n("div",{staticClass:"vc-hue-picker"})])])])},a=[];r._withStripped=!0;var i={render:r,staticRenderFns:a};t.a=i;},function(e,t,n){var r=function(){var e=this,t=e.$createElement,n=e._self._c||t;return n("div",{staticClass:"vc-slider",attrs:{role:"application","aria-label":"Slider color picker"}},[n("div",{staticClass:"vc-slider-hue-warp"},[n("hue",{on:{change:e.hueChange},model:{value:e.colors,callback:function(t){e.colors=t;},expression:"colors"}})],1),e._v(" "),n("div",{staticClass:"vc-slider-swatches",attrs:{role:"group"}},e._l(e.swatches,function(t,r){return n("div",{key:r,staticClass:"vc-slider-swatch",attrs:{"data-index":r,"aria-label":"color:"+e.colors.hex,role:"button"},on:{click:function(n){e.handleSwClick(r,t);}}},[n("div",{staticClass:"vc-slider-swatch-picker",class:{"vc-slider-swatch-picker--active":t==e.activeOffset,"vc-slider-swatch-picker--white":"1"===t},style:{background:"hsl("+e.colors.hsl.h+", 50%, "+100*t+"%)"}})])}))])},a=[];r._withStripped=!0;var i={render:r,staticRenderFns:a};t.a=i;},function(e,t,n){function r(e){n(48);}Object.defineProperty(t,"__esModule",{value:!0});var a=n(15),i=n.n(a);for(var o in a)"default"!==o&&function(e){n.d(t,e,function(){return a[e]});}(o);var s=n(51),l=n(2),u=r,d=l(i.a,s.a,!1,u,null,null);d.options.__file="src/components/Swatches.vue",t.default=d.exports;},function(e,t,n){var r=n(49);"string"==typeof r&&(r=[[e.i,r,""]]),r.locals&&(e.exports=r.locals);n(1)("10f839a2",r,!1,{});},function(e,t,n){t=e.exports=n(0)(!1),t.push([e.i,"\n.vc-swatches {\n  width: 320px;\n  height: 240px;\n  overflow-y: scroll;\n  background-color: #fff;\n  box-shadow: 0 2px 10px rgba(0,0,0,.12), 0 2px 5px rgba(0,0,0,.16);\n}\n.vc-swatches-box {\n  padding: 16px 0 6px 16px;\n  overflow: hidden;\n}\n.vc-swatches-color-group {\n  padding-bottom: 10px;\n  width: 40px;\n  float: left;\n  margin-right: 10px;\n}\n.vc-swatches-color-it {\n  box-sizing: border-box;\n  width: 40px;\n  height: 24px;\n  cursor: pointer;\n  background: #880e4f;\n  margin-bottom: 1px;\n  overflow: hidden;\n  -ms-border-radius: 2px 2px 0 0;\n  -moz-border-radius: 2px 2px 0 0;\n  -o-border-radius: 2px 2px 0 0;\n  -webkit-border-radius: 2px 2px 0 0;\n  border-radius: 2px 2px 0 0;\n}\n.vc-swatches-color--white {\n  border: 1px solid #DDD;\n}\n.vc-swatches-pick {\n  fill: rgb(255, 255, 255);\n  margin-left: 8px;\n  display: block;\n}\n.vc-swatches-color--white .vc-swatches-pick {\n  fill: rgb(51, 51, 51);\n}\n",""]);},function(e,t,n){Object.defineProperty(t,"__esModule",{value:!0}),n.d(t,"red",function(){return r}),n.d(t,"pink",function(){return a}),n.d(t,"purple",function(){return i}),n.d(t,"deepPurple",function(){return o}),n.d(t,"indigo",function(){return s}),n.d(t,"blue",function(){return c}),n.d(t,"lightBlue",function(){return l}),n.d(t,"cyan",function(){return u}),n.d(t,"teal",function(){return d}),n.d(t,"green",function(){return h}),n.d(t,"lightGreen",function(){return f}),n.d(t,"lime",function(){return p}),n.d(t,"yellow",function(){return v}),n.d(t,"amber",function(){return g}),n.d(t,"orange",function(){return b}),n.d(t,"deepOrange",function(){return x}),n.d(t,"brown",function(){return m}),n.d(t,"grey",function(){return _}),n.d(t,"blueGrey",function(){return w}),n.d(t,"darkText",function(){return C}),n.d(t,"lightText",function(){return y}),n.d(t,"darkIcons",function(){return k}),n.d(t,"lightIcons",function(){return F}),n.d(t,"white",function(){return A}),n.d(t,"black",function(){return S});var r={50:"#ffebee",100:"#ffcdd2",200:"#ef9a9a",300:"#e57373",400:"#ef5350",500:"#f44336",600:"#e53935",700:"#d32f2f",800:"#c62828",900:"#b71c1c",a100:"#ff8a80",a200:"#ff5252",a400:"#ff1744",a700:"#d50000"},a={50:"#fce4ec",100:"#f8bbd0",200:"#f48fb1",300:"#f06292",400:"#ec407a",500:"#e91e63",600:"#d81b60",700:"#c2185b",800:"#ad1457",900:"#880e4f",a100:"#ff80ab",a200:"#ff4081",a400:"#f50057",a700:"#c51162"},i={50:"#f3e5f5",100:"#e1bee7",200:"#ce93d8",300:"#ba68c8",400:"#ab47bc",500:"#9c27b0",600:"#8e24aa",700:"#7b1fa2",800:"#6a1b9a",900:"#4a148c",a100:"#ea80fc",a200:"#e040fb",a400:"#d500f9",a700:"#aa00ff"},o={50:"#ede7f6",100:"#d1c4e9",200:"#b39ddb",300:"#9575cd",400:"#7e57c2",500:"#673ab7",600:"#5e35b1",700:"#512da8",800:"#4527a0",900:"#311b92",a100:"#b388ff",a200:"#7c4dff",a400:"#651fff",a700:"#6200ea"},s={50:"#e8eaf6",100:"#c5cae9",200:"#9fa8da",300:"#7986cb",400:"#5c6bc0",500:"#3f51b5",600:"#3949ab",700:"#303f9f",800:"#283593",900:"#1a237e",a100:"#8c9eff",a200:"#536dfe",a400:"#3d5afe",a700:"#304ffe"},c={50:"#e3f2fd",100:"#bbdefb",200:"#90caf9",300:"#64b5f6",400:"#42a5f5",500:"#2196f3",600:"#1e88e5",700:"#1976d2",800:"#1565c0",900:"#0d47a1",a100:"#82b1ff",a200:"#448aff",a400:"#2979ff",a700:"#2962ff"},l={50:"#e1f5fe",100:"#b3e5fc",200:"#81d4fa",300:"#4fc3f7",400:"#29b6f6",500:"#03a9f4",600:"#039be5",700:"#0288d1",800:"#0277bd",900:"#01579b",a100:"#80d8ff",a200:"#40c4ff",a400:"#00b0ff",a700:"#0091ea"},u={50:"#e0f7fa",100:"#b2ebf2",200:"#80deea",300:"#4dd0e1",400:"#26c6da",500:"#00bcd4",600:"#00acc1",700:"#0097a7",800:"#00838f",900:"#006064",a100:"#84ffff",a200:"#18ffff",a400:"#00e5ff",a700:"#00b8d4"},d={50:"#e0f2f1",100:"#b2dfdb",200:"#80cbc4",300:"#4db6ac",400:"#26a69a",500:"#009688",600:"#00897b",700:"#00796b",800:"#00695c",900:"#004d40",a100:"#a7ffeb",a200:"#64ffda",a400:"#1de9b6",a700:"#00bfa5"},h={50:"#e8f5e9",100:"#c8e6c9",200:"#a5d6a7",300:"#81c784",400:"#66bb6a",500:"#4caf50",600:"#43a047",700:"#388e3c",800:"#2e7d32",900:"#1b5e20",a100:"#b9f6ca",a200:"#69f0ae",a400:"#00e676",a700:"#00c853"},f={50:"#f1f8e9",100:"#dcedc8",200:"#c5e1a5",300:"#aed581",400:"#9ccc65",500:"#8bc34a",600:"#7cb342",700:"#689f38",800:"#558b2f",900:"#33691e",a100:"#ccff90",a200:"#b2ff59",a400:"#76ff03",a700:"#64dd17"},p={50:"#f9fbe7",100:"#f0f4c3",200:"#e6ee9c",300:"#dce775",400:"#d4e157",500:"#cddc39",600:"#c0ca33",700:"#afb42b",800:"#9e9d24",900:"#827717",a100:"#f4ff81",a200:"#eeff41",a400:"#c6ff00",a700:"#aeea00"},v={50:"#fffde7",100:"#fff9c4",200:"#fff59d",300:"#fff176",400:"#ffee58",500:"#ffeb3b",600:"#fdd835",700:"#fbc02d",800:"#f9a825",900:"#f57f17",a100:"#ffff8d",a200:"#ffff00",a400:"#ffea00",a700:"#ffd600"},g={50:"#fff8e1",100:"#ffecb3",200:"#ffe082",300:"#ffd54f",400:"#ffca28",500:"#ffc107",600:"#ffb300",700:"#ffa000",800:"#ff8f00",900:"#ff6f00",a100:"#ffe57f",a200:"#ffd740",a400:"#ffc400",a700:"#ffab00"},b={50:"#fff3e0",100:"#ffe0b2",200:"#ffcc80",300:"#ffb74d",400:"#ffa726",500:"#ff9800",600:"#fb8c00",700:"#f57c00",800:"#ef6c00",900:"#e65100",a100:"#ffd180",a200:"#ffab40",a400:"#ff9100",a700:"#ff6d00"},x={50:"#fbe9e7",100:"#ffccbc",200:"#ffab91",300:"#ff8a65",400:"#ff7043",500:"#ff5722",600:"#f4511e",700:"#e64a19",800:"#d84315",900:"#bf360c",a100:"#ff9e80",a200:"#ff6e40",a400:"#ff3d00",a700:"#dd2c00"},m={50:"#efebe9",100:"#d7ccc8",200:"#bcaaa4",300:"#a1887f",400:"#8d6e63",500:"#795548",600:"#6d4c41",700:"#5d4037",800:"#4e342e",900:"#3e2723"},_={50:"#fafafa",100:"#f5f5f5",200:"#eeeeee",300:"#e0e0e0",400:"#bdbdbd",500:"#9e9e9e",600:"#757575",700:"#616161",800:"#424242",900:"#212121"},w={50:"#eceff1",100:"#cfd8dc",200:"#b0bec5",300:"#90a4ae",400:"#78909c",500:"#607d8b",600:"#546e7a",700:"#455a64",800:"#37474f",900:"#263238"},C={primary:"rgba(0, 0, 0, 0.87)",secondary:"rgba(0, 0, 0, 0.54)",disabled:"rgba(0, 0, 0, 0.38)",dividers:"rgba(0, 0, 0, 0.12)"},y={primary:"rgba(255, 255, 255, 1)",secondary:"rgba(255, 255, 255, 0.7)",disabled:"rgba(255, 255, 255, 0.5)",dividers:"rgba(255, 255, 255, 0.12)"},k={active:"rgba(0, 0, 0, 0.54)",inactive:"rgba(0, 0, 0, 0.38)"},F={active:"rgba(255, 255, 255, 1)",inactive:"rgba(255, 255, 255, 0.5)"},A="#ffffff",S="#000000";t.default={red:r,pink:a,purple:i,deepPurple:o,indigo:s,blue:c,lightBlue:l,cyan:u,teal:d,green:h,lightGreen:f,lime:p,yellow:v,amber:g,orange:b,deepOrange:x,brown:m,grey:_,blueGrey:w,darkText:C,lightText:y,darkIcons:k,lightIcons:F,white:A,black:S};},function(e,t,n){var r=function(){var e=this,t=e.$createElement,n=e._self._c||t;return n("div",{staticClass:"vc-swatches",attrs:{role:"application","aria-label":"Swatches color picker","data-pick":e.pick}},[n("div",{staticClass:"vc-swatches-box",attrs:{role:"listbox"}},e._l(e.palette,function(t,r){return n("div",{key:r,staticClass:"vc-swatches-color-group"},e._l(t,function(t){return n("div",{key:t,class:["vc-swatches-color-it",{"vc-swatches-color--white":"#FFFFFF"===t}],style:{background:t},attrs:{role:"option","aria-label":"Color:"+t,"aria-selected":e.equal(t),"data-color":t},on:{click:function(n){e.handlerClick(t);}}},[n("div",{directives:[{name:"show",rawName:"v-show",value:e.equal(t),expression:"equal(c)"}],staticClass:"vc-swatches-pick"},[n("svg",{staticStyle:{width:"24px",height:"24px"},attrs:{viewBox:"0 0 24 24"}},[n("path",{attrs:{d:"M21,7L9,19L3.5,13.5L4.91,12.09L9,16.17L19.59,5.59L21,7Z"}})])])])}))}))])},a=[];r._withStripped=!0;var i={render:r,staticRenderFns:a};t.a=i;},function(e,t,n){function r(e){n(53);}Object.defineProperty(t,"__esModule",{value:!0});var a=n(16),i=n.n(a);for(var o in a)"default"!==o&&function(e){n.d(t,e,function(){return a[e]});}(o);var s=n(67),l=n(2),u=r,d=l(i.a,s.a,!1,u,null,null);d.options.__file="src/components/Photoshop.vue",t.default=d.exports;},function(e,t,n){var r=n(54);"string"==typeof r&&(r=[[e.i,r,""]]),r.locals&&(e.exports=r.locals);n(1)("080365d4",r,!1,{});},function(e,t,n){t=e.exports=n(0)(!1),t.push([e.i,'\n.vc-photoshop {\n  background: #DCDCDC;\n  border-radius: 4px;\n  box-shadow: 0 0 0 1px rgba(0,0,0,.25), 0 8px 16px rgba(0,0,0,.15);\n  box-sizing: initial;\n  width: 513px;\n  font-family: Roboto;\n}\n.vc-photoshop__disable-fields {\n  width: 390px;\n}\n.vc-ps-head {\n  background-image: linear-gradient(-180deg, #F0F0F0 0%, #D4D4D4 100%);\n  border-bottom: 1px solid #B1B1B1;\n  box-shadow: inset 0 1px 0 0 rgba(255,255,255,.2), inset 0 -1px 0 0 rgba(0,0,0,.02);\n  height: 23px;\n  line-height: 24px;\n  border-radius: 4px 4px 0 0;\n  font-size: 13px;\n  color: #4D4D4D;\n  text-align: center;\n}\n.vc-ps-body {\n  padding: 15px;\n  display: flex;\n}\n.vc-ps-saturation-wrap {\n  width: 256px;\n  height: 256px;\n  position: relative;\n  border: 2px solid #B3B3B3;\n  border-bottom: 2px solid #F0F0F0;\n  overflow: hidden;\n}\n.vc-ps-saturation-wrap .vc-saturation-circle {\n  width: 12px;\n  height: 12px;\n}\n.vc-ps-hue-wrap {\n  position: relative;\n  height: 256px;\n  width: 19px;\n  margin-left: 10px;\n  border: 2px solid #B3B3B3;\n  border-bottom: 2px solid #F0F0F0;\n}\n.vc-ps-hue-pointer {\n  position: relative;\n}\n.vc-ps-hue-pointer--left,\n.vc-ps-hue-pointer--right {\n  position: absolute;\n  width: 0;\n  height: 0;\n  border-style: solid;\n  border-width: 5px 0 5px 8px;\n  border-color: transparent transparent transparent #555;\n}\n.vc-ps-hue-pointer--left:after,\n.vc-ps-hue-pointer--right:after {\n  content: "";\n  width: 0;\n  height: 0;\n  border-style: solid;\n  border-width: 4px 0 4px 6px;\n  border-color: transparent transparent transparent #fff;\n  position: absolute;\n  top: 1px;\n  left: 1px;\n  transform: translate(-8px, -5px);\n}\n.vc-ps-hue-pointer--left {\n  transform: translate(-13px, -4px);\n}\n.vc-ps-hue-pointer--right {\n  transform: translate(20px, -4px) rotate(180deg);\n}\n.vc-ps-controls {\n  width: 180px;\n  margin-left: 10px;\n  display: flex;\n}\n.vc-ps-controls__disable-fields {\n  width: auto;\n}\n.vc-ps-actions {\n  margin-left: 20px;\n  flex: 1;\n}\n.vc-ps-ac-btn {\n  cursor: pointer;\n  background-image: linear-gradient(-180deg, #FFFFFF 0%, #E6E6E6 100%);\n  border: 1px solid #878787;\n  border-radius: 2px;\n  height: 20px;\n  box-shadow: 0 1px 0 0 #EAEAEA;\n  font-size: 14px;\n  color: #000;\n  line-height: 20px;\n  text-align: center;\n  margin-bottom: 10px;\n}\n.vc-ps-previews {\n  width: 60px;\n}\n.vc-ps-previews__swatches {\n  border: 1px solid #B3B3B3;\n  border-bottom: 1px solid #F0F0F0;\n  margin-bottom: 2px;\n  margin-top: 1px;\n}\n.vc-ps-previews__pr-color {\n  height: 34px;\n  box-shadow: inset 1px 0 0 #000, inset -1px 0 0 #000, inset 0 1px 0 #000;\n}\n.vc-ps-previews__label {\n  font-size: 14px;\n  color: #000;\n  text-align: center;\n}\n.vc-ps-fields {\n  padding-top: 5px;\n  padding-bottom: 9px;\n  width: 80px;\n  position: relative;\n}\n.vc-ps-fields .vc-input__input {\n  margin-left: 40%;\n  width: 40%;\n  height: 18px;\n  border: 1px solid #888888;\n  box-shadow: inset 0 1px 1px rgba(0,0,0,.1), 0 1px 0 0 #ECECEC;\n  margin-bottom: 5px;\n  font-size: 13px;\n  padding-left: 3px;\n  margin-right: 10px;\n}\n.vc-ps-fields .vc-input__label, .vc-ps-fields .vc-input__desc {\n  top: 0;\n  text-transform: uppercase;\n  font-size: 13px;\n  height: 18px;\n  line-height: 22px;\n  position: absolute;\n}\n.vc-ps-fields .vc-input__label {\n  left: 0;\n  width: 34px;\n}\n.vc-ps-fields .vc-input__desc {\n  right: 0;\n  width: 0;\n}\n.vc-ps-fields__divider {\n  height: 5px;\n}\n.vc-ps-fields__hex .vc-input__input {\n  margin-left: 20%;\n  width: 80%;\n  height: 18px;\n  border: 1px solid #888888;\n  box-shadow: inset 0 1px 1px rgba(0,0,0,.1), 0 1px 0 0 #ECECEC;\n  margin-bottom: 6px;\n  font-size: 13px;\n  padding-left: 3px;\n}\n.vc-ps-fields__hex .vc-input__label {\n  position: absolute;\n  top: 0;\n  left: 0;\n  width: 14px;\n  text-transform: uppercase;\n  font-size: 13px;\n  height: 18px;\n  line-height: 22px;\n}\n',""]);},function(e,t,n){var r=n(56);"string"==typeof r&&(r=[[e.i,r,""]]),r.locals&&(e.exports=r.locals);n(1)("b5380e52",r,!1,{});},function(e,t,n){t=e.exports=n(0)(!1),t.push([e.i,"\n.vc-saturation,\n.vc-saturation--white,\n.vc-saturation--black {\n  cursor: pointer;\n  position: absolute;\n  top: 0;\n  left: 0;\n  right: 0;\n  bottom: 0;\n}\n.vc-saturation--white {\n  background: linear-gradient(to right, #fff, rgba(255,255,255,0));\n}\n.vc-saturation--black {\n  background: linear-gradient(to top, #000, rgba(0,0,0,0));\n}\n.vc-saturation-pointer {\n  cursor: pointer;\n  position: absolute;\n}\n.vc-saturation-circle {\n  cursor: head;\n  width: 4px;\n  height: 4px;\n  box-shadow: 0 0 0 1.5px #fff, inset 0 0 1px 1px rgba(0,0,0,.3), 0 0 1px 2px rgba(0,0,0,.4);\n  border-radius: 50%;\n  transform: translate(-2px, -2px);\n}\n",""]);},function(e,t){function n(e,t,n){return t<n?e<t?t:e>n?n:e:e<n?n:e>t?t:e}e.exports=n;},function(e,t,n){(function(t){function n(e,t,n){function r(t){var n=v,r=g;return v=g=void 0,k=t,x=e.apply(r,n)}function i(e){return k=e,m=setTimeout(u,t),F?r(e):x}function o(e){var n=e-_,r=e-k,a=t-n;return A?C(a,b-r):a}function l(e){var n=e-_,r=e-k;return void 0===_||n>=t||n<0||A&&r>=b}function u(){var e=y();if(l(e))return d(e);m=setTimeout(u,o(e));}function d(e){return m=void 0,S&&v?r(e):(v=g=void 0,x)}function h(){void 0!==m&&clearTimeout(m),k=0,v=_=g=m=void 0;}function f(){return void 0===m?x:d(y())}function p(){var e=y(),n=l(e);if(v=arguments,g=this,_=e,n){if(void 0===m)return i(_);if(A)return m=setTimeout(u,t),r(_)}return void 0===m&&(m=setTimeout(u,t)),x}var v,g,b,x,m,_,k=0,F=!1,A=!1,S=!0;if("function"!=typeof e)throw new TypeError(c);return t=s(t)||0,a(n)&&(F=!!n.leading,A="maxWait"in n,b=A?w(s(n.maxWait)||0,t):b,S="trailing"in n?!!n.trailing:S),p.cancel=h,p.flush=f,p}function r(e,t,r){var i=!0,o=!0;if("function"!=typeof e)throw new TypeError(c);return a(r)&&(i="leading"in r?!!r.leading:i,o="trailing"in r?!!r.trailing:o),n(e,t,{leading:i,maxWait:t,trailing:o})}function a(e){var t=typeof e;return !!e&&("object"==t||"function"==t)}function i(e){return !!e&&"object"==typeof e}function o(e){return "symbol"==typeof e||i(e)&&_.call(e)==u}function s(e){if("number"==typeof e)return e;if(o(e))return l;if(a(e)){var t="function"==typeof e.valueOf?e.valueOf():e;e=a(t)?t+"":t;}if("string"!=typeof e)return 0===e?e:+e;e=e.replace(d,"");var n=f.test(e);return n||p.test(e)?v(e.slice(2),n?2:8):h.test(e)?l:+e}var c="Expected a function",l=NaN,u="[object Symbol]",d=/^\s+|\s+$/g,h=/^[-+]0x[0-9a-f]+$/i,f=/^0b[01]+$/i,p=/^0o[0-7]+$/i,v=parseInt,g="object"==typeof t&&t&&t.Object===Object&&t,b="object"==typeof self&&self&&self.Object===Object&&self,x=g||b||Function("return this")(),m=Object.prototype,_=m.toString,w=Math.max,C=Math.min,y=function(){return x.Date.now()};e.exports=r;}).call(t,n(59));},function(e,t){var n;n=function(){return this}();try{n=n||Function("return this")()||(0,eval)("this");}catch(e){"object"==typeof window&&(n=window);}e.exports=n;},function(e,t,n){var r=function(){var e=this,t=e.$createElement,n=e._self._c||t;return n("div",{ref:"container",staticClass:"vc-saturation",style:{background:e.bgColor},on:{mousedown:e.handleMouseDown,touchmove:e.handleChange,touchstart:e.handleChange}},[n("div",{staticClass:"vc-saturation--white"}),e._v(" "),n("div",{staticClass:"vc-saturation--black"}),e._v(" "),n("div",{staticClass:"vc-saturation-pointer",style:{top:e.pointerTop,left:e.pointerLeft}},[n("div",{staticClass:"vc-saturation-circle"})])])},a=[];r._withStripped=!0;var i={render:r,staticRenderFns:a};t.a=i;},function(e,t,n){var r=n(62);"string"==typeof r&&(r=[[e.i,r,""]]),r.locals&&(e.exports=r.locals);n(1)("4dc1b086",r,!1,{});},function(e,t,n){t=e.exports=n(0)(!1),t.push([e.i,"\n.vc-alpha {\n  position: absolute;\n  top: 0px;\n  right: 0px;\n  bottom: 0px;\n  left: 0px;\n}\n.vc-alpha-checkboard-wrap {\n  position: absolute;\n  top: 0px;\n  right: 0px;\n  bottom: 0px;\n  left: 0px;\n  overflow: hidden;\n}\n.vc-alpha-gradient {\n  position: absolute;\n  top: 0px;\n  right: 0px;\n  bottom: 0px;\n  left: 0px;\n}\n.vc-alpha-container {\n  cursor: pointer;\n  position: relative;\n  z-index: 2;\n  height: 100%;\n  margin: 0 3px;\n}\n.vc-alpha-pointer {\n  z-index: 2;\n  position: absolute;\n}\n.vc-alpha-picker {\n  cursor: pointer;\n  width: 4px;\n  border-radius: 1px;\n  height: 8px;\n  box-shadow: 0 0 2px rgba(0, 0, 0, .6);\n  background: #fff;\n  margin-top: 1px;\n  transform: translateX(-2px);\n}\n",""]);},function(e,t,n){var r=n(64);"string"==typeof r&&(r=[[e.i,r,""]]),r.locals&&(e.exports=r.locals);n(1)("7e15c05b",r,!1,{});},function(e,t,n){t=e.exports=n(0)(!1),t.push([e.i,"\n.vc-checkerboard {\n  position: absolute;\n  top: 0px;\n  right: 0px;\n  bottom: 0px;\n  left: 0px;\n  background-size: contain;\n}\n",""]);},function(e,t,n){var r=function(){var e=this,t=e.$createElement;return (e._self._c||t)("div",{staticClass:"vc-checkerboard",style:e.bgStyle})},a=[];r._withStripped=!0;var i={render:r,staticRenderFns:a};t.a=i;},function(e,t,n){var r=function(){var e=this,t=e.$createElement,n=e._self._c||t;return n("div",{staticClass:"vc-alpha"},[n("div",{staticClass:"vc-alpha-checkboard-wrap"},[n("checkboard")],1),e._v(" "),n("div",{staticClass:"vc-alpha-gradient",style:{background:e.gradientColor}}),e._v(" "),n("div",{ref:"container",staticClass:"vc-alpha-container",on:{mousedown:e.handleMouseDown,touchmove:e.handleChange,touchstart:e.handleChange}},[n("div",{staticClass:"vc-alpha-pointer",style:{left:100*e.colors.a+"%"}},[n("div",{staticClass:"vc-alpha-picker"})])])])},a=[];r._withStripped=!0;var i={render:r,staticRenderFns:a};t.a=i;},function(e,t,n){var r=function(){var e=this,t=e.$createElement,n=e._self._c||t;return n("div",{class:["vc-photoshop",e.disableFields?"vc-photoshop__disable-fields":""],attrs:{role:"application","aria-label":"PhotoShop color picker"}},[n("div",{staticClass:"vc-ps-head",attrs:{role:"heading"}},[e._v(e._s(e.head))]),e._v(" "),n("div",{staticClass:"vc-ps-body"},[n("div",{staticClass:"vc-ps-saturation-wrap"},[n("saturation",{on:{change:e.childChange},model:{value:e.colors,callback:function(t){e.colors=t;},expression:"colors"}})],1),e._v(" "),n("div",{staticClass:"vc-ps-hue-wrap"},[n("hue",{attrs:{direction:"vertical"},on:{change:e.childChange},model:{value:e.colors,callback:function(t){e.colors=t;},expression:"colors"}},[n("div",{staticClass:"vc-ps-hue-pointer"},[n("i",{staticClass:"vc-ps-hue-pointer--left"}),n("i",{staticClass:"vc-ps-hue-pointer--right"})])])],1),e._v(" "),n("div",{class:["vc-ps-controls",e.disableFields?"vc-ps-controls__disable-fields":""]},[n("div",{staticClass:"vc-ps-previews"},[n("div",{staticClass:"vc-ps-previews__label"},[e._v(e._s(e.newLabel))]),e._v(" "),n("div",{staticClass:"vc-ps-previews__swatches"},[n("div",{staticClass:"vc-ps-previews__pr-color",style:{background:e.colors.hex},attrs:{"aria-label":"New color is "+e.colors.hex}}),e._v(" "),n("div",{staticClass:"vc-ps-previews__pr-color",style:{background:e.currentColor},attrs:{"aria-label":"Current color is "+e.currentColor},on:{click:e.clickCurrentColor}})]),e._v(" "),n("div",{staticClass:"vc-ps-previews__label"},[e._v(e._s(e.currentLabel))])]),e._v(" "),e.disableFields?e._e():n("div",{staticClass:"vc-ps-actions"},[n("div",{staticClass:"vc-ps-ac-btn",attrs:{role:"button","aria-label":e.acceptLabel},on:{click:e.handleAccept}},[e._v(e._s(e.acceptLabel))]),e._v(" "),n("div",{staticClass:"vc-ps-ac-btn",attrs:{role:"button","aria-label":e.cancelLabel},on:{click:e.handleCancel}},[e._v(e._s(e.cancelLabel))]),e._v(" "),n("div",{staticClass:"vc-ps-fields"},[n("ed-in",{attrs:{label:"h",desc:"°",value:e.hsv.h},on:{change:e.inputChange}}),e._v(" "),n("ed-in",{attrs:{label:"s",desc:"%",value:e.hsv.s,max:100},on:{change:e.inputChange}}),e._v(" "),n("ed-in",{attrs:{label:"v",desc:"%",value:e.hsv.v,max:100},on:{change:e.inputChange}}),e._v(" "),n("div",{staticClass:"vc-ps-fields__divider"}),e._v(" "),n("ed-in",{attrs:{label:"r",value:e.colors.rgba.r},on:{change:e.inputChange}}),e._v(" "),n("ed-in",{attrs:{label:"g",value:e.colors.rgba.g},on:{change:e.inputChange}}),e._v(" "),n("ed-in",{attrs:{label:"b",value:e.colors.rgba.b},on:{change:e.inputChange}}),e._v(" "),n("div",{staticClass:"vc-ps-fields__divider"}),e._v(" "),n("ed-in",{staticClass:"vc-ps-fields__hex",attrs:{label:"#",value:e.hex},on:{change:e.inputChange}})],1),e._v(" "),e.hasResetButton?n("div",{staticClass:"vc-ps-ac-btn",attrs:{"aria-label":"reset"},on:{click:e.handleReset}},[e._v(e._s(e.resetLabel))]):e._e()])])])])},a=[];r._withStripped=!0;var i={render:r,staticRenderFns:a};t.a=i;},function(e,t,n){function r(e){n(69);}Object.defineProperty(t,"__esModule",{value:!0});var a=n(20),i=n.n(a);for(var o in a)"default"!==o&&function(e){n.d(t,e,function(){return a[e]});}(o);var s=n(71),l=n(2),u=r,d=l(i.a,s.a,!1,u,null,null);d.options.__file="src/components/Sketch.vue",t.default=d.exports;},function(e,t,n){var r=n(70);"string"==typeof r&&(r=[[e.i,r,""]]),r.locals&&(e.exports=r.locals);n(1)("612c6604",r,!1,{});},function(e,t,n){t=e.exports=n(0)(!1),t.push([e.i,"\n.vc-sketch {\n  position: relative;\n  width: 200px;\n  padding: 10px 10px 0;\n  box-sizing: initial;\n  background: #fff;\n  border-radius: 4px;\n  box-shadow: 0 0 0 1px rgba(0, 0, 0, .15), 0 8px 16px rgba(0, 0, 0, .15);\n}\n.vc-sketch-saturation-wrap {\n  width: 100%;\n  padding-bottom: 75%;\n  position: relative;\n  overflow: hidden;\n}\n.vc-sketch-controls {\n  display: flex;\n}\n.vc-sketch-sliders {\n  padding: 4px 0;\n  flex: 1;\n}\n.vc-sketch-sliders .vc-hue,\n.vc-sketch-sliders .vc-alpha-gradient {\n  border-radius: 2px;\n}\n.vc-sketch-hue-wrap {\n  position: relative;\n  height: 10px;\n}\n.vc-sketch-alpha-wrap {\n  position: relative;\n  height: 10px;\n  margin-top: 4px;\n  overflow: hidden;\n}\n.vc-sketch-color-wrap {\n  width: 24px;\n  height: 24px;\n  position: relative;\n  margin-top: 4px;\n  margin-left: 4px;\n  border-radius: 3px;\n}\n.vc-sketch-active-color {\n  position: absolute;\n  top: 0;\n  left: 0;\n  right: 0;\n  bottom: 0;\n  border-radius: 2px;\n  box-shadow: inset 0 0 0 1px rgba(0, 0, 0, .15), inset 0 0 4px rgba(0, 0, 0, .25);\n  z-index: 2;\n}\n.vc-sketch-color-wrap .vc-checkerboard {\n  background-size: auto;\n}\n.vc-sketch-field {\n  display: flex;\n  padding-top: 4px;\n}\n.vc-sketch-field .vc-input__input {\n  width: 90%;\n  padding: 4px 0 3px 10%;\n  border: none;\n  box-shadow: inset 0 0 0 1px #ccc;\n  font-size: 10px;\n}\n.vc-sketch-field .vc-input__label {\n  display: block;\n  text-align: center;\n  font-size: 11px;\n  color: #222;\n  padding-top: 3px;\n  padding-bottom: 4px;\n  text-transform: capitalize;\n}\n.vc-sketch-field--single {\n  flex: 1;\n  padding-left: 6px;\n}\n.vc-sketch-field--double {\n  flex: 2;\n}\n.vc-sketch-presets {\n  margin-right: -10px;\n  margin-left: -10px;\n  padding-left: 10px;\n  padding-top: 10px;\n  border-top: 1px solid #eee;\n}\n.vc-sketch-presets-color {\n  border-radius: 3px;\n  overflow: hidden;\n  position: relative;\n  display: inline-block;\n  margin: 0 10px 10px 0;\n  vertical-align: top;\n  cursor: pointer;\n  width: 16px;\n  height: 16px;\n  box-shadow: inset 0 0 0 1px rgba(0, 0, 0, .15);\n}\n.vc-sketch-presets-color .vc-checkerboard {\n  box-shadow: inset 0 0 0 1px rgba(0, 0, 0, .15);\n  border-radius: 3px;\n}\n.vc-sketch__disable-alpha .vc-sketch-color-wrap {\n  height: 10px;\n}\n",""]);},function(e,t,n){var r=function(){var e=this,t=e.$createElement,n=e._self._c||t;return n("div",{class:["vc-sketch",e.disableAlpha?"vc-sketch__disable-alpha":""],attrs:{role:"application","aria-label":"Sketch color picker"}},[n("div",{staticClass:"vc-sketch-saturation-wrap"},[n("saturation",{on:{change:e.childChange},model:{value:e.colors,callback:function(t){e.colors=t;},expression:"colors"}})],1),e._v(" "),n("div",{staticClass:"vc-sketch-controls"},[n("div",{staticClass:"vc-sketch-sliders"},[n("div",{staticClass:"vc-sketch-hue-wrap"},[n("hue",{on:{change:e.childChange},model:{value:e.colors,callback:function(t){e.colors=t;},expression:"colors"}})],1),e._v(" "),e.disableAlpha?e._e():n("div",{staticClass:"vc-sketch-alpha-wrap"},[n("alpha",{on:{change:e.childChange},model:{value:e.colors,callback:function(t){e.colors=t;},expression:"colors"}})],1)]),e._v(" "),n("div",{staticClass:"vc-sketch-color-wrap"},[n("div",{staticClass:"vc-sketch-active-color",style:{background:e.activeColor},attrs:{"aria-label":"Current color is "+e.activeColor}}),e._v(" "),n("checkboard")],1)]),e._v(" "),e.disableFields?e._e():n("div",{staticClass:"vc-sketch-field"},[n("div",{staticClass:"vc-sketch-field--double"},[n("ed-in",{attrs:{label:"hex",value:e.hex},on:{change:e.inputChange}})],1),e._v(" "),n("div",{staticClass:"vc-sketch-field--single"},[n("ed-in",{attrs:{label:"r",value:e.colors.rgba.r},on:{change:e.inputChange}})],1),e._v(" "),n("div",{staticClass:"vc-sketch-field--single"},[n("ed-in",{attrs:{label:"g",value:e.colors.rgba.g},on:{change:e.inputChange}})],1),e._v(" "),n("div",{staticClass:"vc-sketch-field--single"},[n("ed-in",{attrs:{label:"b",value:e.colors.rgba.b},on:{change:e.inputChange}})],1),e._v(" "),e.disableAlpha?e._e():n("div",{staticClass:"vc-sketch-field--single"},[n("ed-in",{attrs:{label:"a",value:e.colors.a,"arrow-offset":.01,max:1},on:{change:e.inputChange}})],1)]),e._v(" "),n("div",{staticClass:"vc-sketch-presets",attrs:{role:"group","aria-label":"A color preset, pick one to set as current color"}},[e._l(e.presetColors,function(t){return [e.isTransparent(t)?n("div",{key:t,staticClass:"vc-sketch-presets-color",attrs:{"aria-label":"Color:"+t},on:{click:function(n){e.handlePreset(t);}}},[n("checkboard")],1):n("div",{key:t,staticClass:"vc-sketch-presets-color",style:{background:t},attrs:{"aria-label":"Color:"+t},on:{click:function(n){e.handlePreset(t);}}})]})],2)])},a=[];r._withStripped=!0;var i={render:r,staticRenderFns:a};t.a=i;},function(e,t,n){function r(e){n(73);}Object.defineProperty(t,"__esModule",{value:!0});var a=n(21),i=n.n(a);for(var o in a)"default"!==o&&function(e){n.d(t,e,function(){return a[e]});}(o);var s=n(75),l=n(2),u=r,d=l(i.a,s.a,!1,u,null,null);d.options.__file="src/components/Chrome.vue",t.default=d.exports;},function(e,t,n){var r=n(74);"string"==typeof r&&(r=[[e.i,r,""]]),r.locals&&(e.exports=r.locals);n(1)("1cd16048",r,!1,{});},function(e,t,n){t=e.exports=n(0)(!1),t.push([e.i,"\n.vc-chrome {\n  background: #fff;\n  border-radius: 2px;\n  box-shadow: 0 0 2px rgba(0,0,0,.3), 0 4px 8px rgba(0,0,0,.3);\n  box-sizing: initial;\n  width: 225px;\n  font-family: Menlo;\n  background-color: #fff;\n}\n.vc-chrome-controls {\n  display: flex;\n}\n.vc-chrome-color-wrap {\n  position: relative;\n  width: 36px;\n}\n.vc-chrome-active-color {\n  position: relative;\n  width: 30px;\n  height: 30px;\n  border-radius: 15px;\n  overflow: hidden;\n  z-index: 1;\n}\n.vc-chrome-color-wrap .vc-checkerboard {\n  width: 30px;\n  height: 30px;\n  border-radius: 15px;\n  background-size: auto;\n}\n.vc-chrome-sliders {\n  flex: 1;\n}\n.vc-chrome-fields-wrap {\n  display: flex;\n  padding-top: 16px;\n}\n.vc-chrome-fields {\n  display: flex;\n  margin-left: -6px;\n  flex: 1;\n}\n.vc-chrome-field {\n  padding-left: 6px;\n  width: 100%;\n}\n.vc-chrome-toggle-btn {\n  width: 32px;\n  text-align: right;\n  position: relative;\n}\n.vc-chrome-toggle-icon {\n  margin-right: -4px;\n  margin-top: 12px;\n  cursor: pointer;\n  position: relative;\n  z-index: 2;\n}\n.vc-chrome-toggle-icon-highlight {\n  position: absolute;\n  width: 24px;\n  height: 28px;\n  background: #eee;\n  border-radius: 4px;\n  top: 10px;\n  left: 12px;\n}\n.vc-chrome-hue-wrap {\n  position: relative;\n  height: 10px;\n  margin-bottom: 8px;\n}\n.vc-chrome-alpha-wrap {\n  position: relative;\n  height: 10px;\n}\n.vc-chrome-hue-wrap .vc-hue {\n  border-radius: 2px;\n}\n.vc-chrome-alpha-wrap .vc-alpha-gradient {\n  border-radius: 2px;\n}\n.vc-chrome-hue-wrap .vc-hue-picker, .vc-chrome-alpha-wrap .vc-alpha-picker {\n  width: 12px;\n  height: 12px;\n  border-radius: 6px;\n  transform: translate(-6px, -2px);\n  background-color: rgb(248, 248, 248);\n  box-shadow: 0 1px 4px 0 rgba(0, 0, 0, 0.37);\n}\n.vc-chrome-body {\n  padding: 16px 16px 12px;\n  background-color: #fff;\n}\n.vc-chrome-saturation-wrap {\n  width: 100%;\n  padding-bottom: 55%;\n  position: relative;\n  border-radius: 2px 2px 0 0;\n  overflow: hidden;\n}\n.vc-chrome-saturation-wrap .vc-saturation-circle {\n  width: 12px;\n  height: 12px;\n}\n.vc-chrome-fields .vc-input__input {\n  font-size: 11px;\n  color: #333;\n  width: 100%;\n  border-radius: 2px;\n  border: none;\n  box-shadow: inset 0 0 0 1px #dadada;\n  height: 21px;\n  text-align: center;\n}\n.vc-chrome-fields .vc-input__label {\n  text-transform: uppercase;\n  font-size: 11px;\n  line-height: 11px;\n  color: #969696;\n  text-align: center;\n  display: block;\n  margin-top: 12px;\n}\n.vc-chrome__disable-alpha .vc-chrome-active-color {\n  width: 18px;\n  height: 18px;\n}\n.vc-chrome__disable-alpha .vc-chrome-color-wrap {\n  width: 30px;\n}\n.vc-chrome__disable-alpha .vc-chrome-hue-wrap {\n  margin-top: 4px;\n  margin-bottom: 4px;\n}\n",""]);},function(e,t,n){var r=function(){var e=this,t=e.$createElement,n=e._self._c||t;return n("div",{class:["vc-chrome",e.disableAlpha?"vc-chrome__disable-alpha":""],attrs:{role:"application","aria-label":"Chrome color picker"}},[n("div",{staticClass:"vc-chrome-saturation-wrap"},[n("saturation",{on:{change:e.childChange},model:{value:e.colors,callback:function(t){e.colors=t;},expression:"colors"}})],1),e._v(" "),n("div",{staticClass:"vc-chrome-body"},[n("div",{staticClass:"vc-chrome-controls"},[n("div",{staticClass:"vc-chrome-color-wrap"},[n("div",{staticClass:"vc-chrome-active-color",style:{background:e.activeColor},attrs:{"aria-label":"current color is "+e.colors.hex}}),e._v(" "),e.disableAlpha?e._e():n("checkboard")],1),e._v(" "),n("div",{staticClass:"vc-chrome-sliders"},[n("div",{staticClass:"vc-chrome-hue-wrap"},[n("hue",{on:{change:e.childChange},model:{value:e.colors,callback:function(t){e.colors=t;},expression:"colors"}})],1),e._v(" "),e.disableAlpha?e._e():n("div",{staticClass:"vc-chrome-alpha-wrap"},[n("alpha",{on:{change:e.childChange},model:{value:e.colors,callback:function(t){e.colors=t;},expression:"colors"}})],1)])]),e._v(" "),e.disableFields?e._e():n("div",{staticClass:"vc-chrome-fields-wrap"},[n("div",{directives:[{name:"show",rawName:"v-show",value:0===e.fieldsIndex,expression:"fieldsIndex === 0"}],staticClass:"vc-chrome-fields"},[n("div",{staticClass:"vc-chrome-field"},[e.hasAlpha?e._e():n("ed-in",{attrs:{label:"hex",value:e.colors.hex},on:{change:e.inputChange}}),e._v(" "),e.hasAlpha?n("ed-in",{attrs:{label:"hex",value:e.colors.hex8},on:{change:e.inputChange}}):e._e()],1)]),e._v(" "),n("div",{directives:[{name:"show",rawName:"v-show",value:1===e.fieldsIndex,expression:"fieldsIndex === 1"}],staticClass:"vc-chrome-fields"},[n("div",{staticClass:"vc-chrome-field"},[n("ed-in",{attrs:{label:"r",value:e.colors.rgba.r},on:{change:e.inputChange}})],1),e._v(" "),n("div",{staticClass:"vc-chrome-field"},[n("ed-in",{attrs:{label:"g",value:e.colors.rgba.g},on:{change:e.inputChange}})],1),e._v(" "),n("div",{staticClass:"vc-chrome-field"},[n("ed-in",{attrs:{label:"b",value:e.colors.rgba.b},on:{change:e.inputChange}})],1),e._v(" "),e.disableAlpha?e._e():n("div",{staticClass:"vc-chrome-field"},[n("ed-in",{attrs:{label:"a",value:e.colors.a,"arrow-offset":.01,max:1},on:{change:e.inputChange}})],1)]),e._v(" "),n("div",{directives:[{name:"show",rawName:"v-show",value:2===e.fieldsIndex,expression:"fieldsIndex === 2"}],staticClass:"vc-chrome-fields"},[n("div",{staticClass:"vc-chrome-field"},[n("ed-in",{attrs:{label:"h",value:e.hsl.h},on:{change:e.inputChange}})],1),e._v(" "),n("div",{staticClass:"vc-chrome-field"},[n("ed-in",{attrs:{label:"s",value:e.hsl.s},on:{change:e.inputChange}})],1),e._v(" "),n("div",{staticClass:"vc-chrome-field"},[n("ed-in",{attrs:{label:"l",value:e.hsl.l},on:{change:e.inputChange}})],1),e._v(" "),e.disableAlpha?e._e():n("div",{staticClass:"vc-chrome-field"},[n("ed-in",{attrs:{label:"a",value:e.colors.a,"arrow-offset":.01,max:1},on:{change:e.inputChange}})],1)]),e._v(" "),n("div",{staticClass:"vc-chrome-toggle-btn",attrs:{role:"button","aria-label":"Change another color definition"},on:{click:e.toggleViews}},[n("div",{staticClass:"vc-chrome-toggle-icon"},[n("svg",{staticStyle:{width:"24px",height:"24px"},attrs:{viewBox:"0 0 24 24"},on:{mouseover:e.showHighlight,mouseenter:e.showHighlight,mouseout:e.hideHighlight}},[n("path",{attrs:{fill:"#333",d:"M12,18.17L8.83,15L7.42,16.41L12,21L16.59,16.41L15.17,15M12,5.83L15.17,9L16.58,7.59L12,3L7.41,7.59L8.83,9L12,5.83Z"}})])]),e._v(" "),n("div",{directives:[{name:"show",rawName:"v-show",value:e.highlight,expression:"highlight"}],staticClass:"vc-chrome-toggle-icon-highlight"})])])])])},a=[];r._withStripped=!0;var i={render:r,staticRenderFns:a};t.a=i;}])});
    });

    unwrapExports(vueColor_min);
    var vueColor_min_1 = vueColor_min.Sketch;
    var vueColor_min_2 = vueColor_min.VueColor;

    var ResizeSensor = createCommonjsModule(function (module, exports) {

    /**
     * Copyright Marc J. Schmidt. See the LICENSE file at the top-level
     * directory of this distribution and at
     * https://github.com/marcj/css-element-queries/blob/master/LICENSE.
     */
    (function (root, factory) {
        {
            module.exports = factory();
        }
    }(typeof window !== 'undefined' ? window : commonjsGlobal, function () {

        // Make sure it does not throw in a SSR (Server Side Rendering) situation
        if (typeof window === "undefined") {
            return null;
        }
        // https://github.com/Semantic-Org/Semantic-UI/issues/3855
        // https://github.com/marcj/css-element-queries/issues/257
        var globalWindow = typeof window != 'undefined' && window.Math == Math
            ? window
            : typeof self != 'undefined' && self.Math == Math
                ? self
                : Function('return this')();
        // Only used for the dirty checking, so the event callback count is limited to max 1 call per fps per sensor.
        // In combination with the event based resize sensor this saves cpu time, because the sensor is too fast and
        // would generate too many unnecessary events.
        var requestAnimationFrame = globalWindow.requestAnimationFrame ||
            globalWindow.mozRequestAnimationFrame ||
            globalWindow.webkitRequestAnimationFrame ||
            function (fn) {
                return globalWindow.setTimeout(fn, 20);
            };

        var cancelAnimationFrame = globalWindow.cancelAnimationFrame ||
            globalWindow.mozCancelAnimationFrame ||
            globalWindow.webkitCancelAnimationFrame ||
            function (timer) {
                globalWindow.clearTimeout(timer);
            };

        /**
         * Iterate over each of the provided element(s).
         *
         * @param {HTMLElement|HTMLElement[]} elements
         * @param {Function}                  callback
         */
        function forEachElement(elements, callback){
            var elementsType = Object.prototype.toString.call(elements);
            var isCollectionTyped = ('[object Array]' === elementsType
                || ('[object NodeList]' === elementsType)
                || ('[object HTMLCollection]' === elementsType)
                || ('[object Object]' === elementsType)
                || ('undefined' !== typeof jQuery && elements instanceof jQuery) //jquery
                || ('undefined' !== typeof Elements && elements instanceof Elements) //mootools
            );
            var i = 0, j = elements.length;
            if (isCollectionTyped) {
                for (; i < j; i++) {
                    callback(elements[i]);
                }
            } else {
                callback(elements);
            }
        }

        /**
        * Get element size
        * @param {HTMLElement} element
        * @returns {Object} {width, height}
        */
        function getElementSize(element) {
            if (!element.getBoundingClientRect) {
                return {
                    width: element.offsetWidth,
                    height: element.offsetHeight
                }
            }

            var rect = element.getBoundingClientRect();
            return {
                width: Math.round(rect.width),
                height: Math.round(rect.height)
            }
        }

        /**
         * Apply CSS styles to element.
         *
         * @param {HTMLElement} element
         * @param {Object} style
         */
        function setStyle(element, style) {
            Object.keys(style).forEach(function(key) {
                element.style[key] = style[key];
            });
        }

        /**
         * Class for dimension change detection.
         *
         * @param {Element|Element[]|Elements|jQuery} element
         * @param {Function} callback
         *
         * @constructor
         */
        var ResizeSensor = function(element, callback) {
            //Is used when checking in reset() only for invisible elements
            var lastAnimationFrameForInvisibleCheck = 0;

            /**
             *
             * @constructor
             */
            function EventQueue() {
                var q = [];
                this.add = function(ev) {
                    q.push(ev);
                };

                var i, j;
                this.call = function(sizeInfo) {
                    for (i = 0, j = q.length; i < j; i++) {
                        q[i].call(this, sizeInfo);
                    }
                };

                this.remove = function(ev) {
                    var newQueue = [];
                    for(i = 0, j = q.length; i < j; i++) {
                        if(q[i] !== ev) newQueue.push(q[i]);
                    }
                    q = newQueue;
                };

                this.length = function() {
                    return q.length;
                };
            }

            /**
             *
             * @param {HTMLElement} element
             * @param {Function}    resized
             */
            function attachResizeEvent(element, resized) {
                if (!element) return;
                if (element.resizedAttached) {
                    element.resizedAttached.add(resized);
                    return;
                }

                element.resizedAttached = new EventQueue();
                element.resizedAttached.add(resized);

                element.resizeSensor = document.createElement('div');
                element.resizeSensor.dir = 'ltr';
                element.resizeSensor.className = 'resize-sensor';

                var style = {
                    pointerEvents: 'none',
                    position: 'absolute',
                    left: '0px',
                    top: '0px',
                    right: '0px',
                    bottom: '0px',
                    overflow: 'hidden',
                    zIndex: '-1',
                    visibility: 'hidden',
                    maxWidth: '100%'
                };
                var styleChild = {
                    position: 'absolute',
                    left: '0px',
                    top: '0px',
                    transition: '0s',
                };

                setStyle(element.resizeSensor, style);

                var expand = document.createElement('div');
                expand.className = 'resize-sensor-expand';
                setStyle(expand, style);

                var expandChild = document.createElement('div');
                setStyle(expandChild, styleChild);
                expand.appendChild(expandChild);

                var shrink = document.createElement('div');
                shrink.className = 'resize-sensor-shrink';
                setStyle(shrink, style);

                var shrinkChild = document.createElement('div');
                setStyle(shrinkChild, styleChild);
                setStyle(shrinkChild, { width: '200%', height: '200%' });
                shrink.appendChild(shrinkChild);

                element.resizeSensor.appendChild(expand);
                element.resizeSensor.appendChild(shrink);
                element.appendChild(element.resizeSensor);

                var computedStyle = window.getComputedStyle(element);
                var position = computedStyle ? computedStyle.getPropertyValue('position') : null;
                if ('absolute' !== position && 'relative' !== position && 'fixed' !== position && 'sticky' !== position) {
                    element.style.position = 'relative';
                }

                var dirty = false;

                //last request animation frame id used in onscroll event
                var rafId = 0;
                var size = getElementSize(element);
                var lastWidth = 0;
                var lastHeight = 0;
                var initialHiddenCheck = true;
                lastAnimationFrameForInvisibleCheck = 0;

                var resetExpandShrink = function () {
                    var width = element.offsetWidth;
                    var height = element.offsetHeight;

                    expandChild.style.width = (width + 10) + 'px';
                    expandChild.style.height = (height + 10) + 'px';

                    expand.scrollLeft = width + 10;
                    expand.scrollTop = height + 10;

                    shrink.scrollLeft = width + 10;
                    shrink.scrollTop = height + 10;
                };

                var reset = function() {
                    // Check if element is hidden
                    if (initialHiddenCheck) {
                        var invisible = element.offsetWidth === 0 && element.offsetHeight === 0;
                        if (invisible) {
                            // Check in next frame
                            if (!lastAnimationFrameForInvisibleCheck){
                                lastAnimationFrameForInvisibleCheck = requestAnimationFrame(function(){
                                    lastAnimationFrameForInvisibleCheck = 0;
                                    reset();
                                });
                            }

                            return;
                        } else {
                            // Stop checking
                            initialHiddenCheck = false;
                        }
                    }

                    resetExpandShrink();
                };
                element.resizeSensor.resetSensor = reset;

                var onResized = function() {
                    rafId = 0;

                    if (!dirty) return;

                    lastWidth = size.width;
                    lastHeight = size.height;

                    if (element.resizedAttached) {
                        element.resizedAttached.call(size);
                    }
                };

                var onScroll = function() {
                    size = getElementSize(element);
                    dirty = size.width !== lastWidth || size.height !== lastHeight;

                    if (dirty && !rafId) {
                        rafId = requestAnimationFrame(onResized);
                    }

                    reset();
                };

                var addEvent = function(el, name, cb) {
                    if (el.attachEvent) {
                        el.attachEvent('on' + name, cb);
                    } else {
                        el.addEventListener(name, cb);
                    }
                };

                addEvent(expand, 'scroll', onScroll);
                addEvent(shrink, 'scroll', onScroll);

                // Fix for custom Elements and invisible elements
                lastAnimationFrameForInvisibleCheck = requestAnimationFrame(function(){
                    lastAnimationFrameForInvisibleCheck = 0;
                    reset();
                });
            }

            forEachElement(element, function(elem){
                attachResizeEvent(elem, callback);
            });

            this.detach = function(ev) {
                // clean up the unfinished animation frame to prevent a potential endless requestAnimationFrame of reset
                if (!lastAnimationFrameForInvisibleCheck) {
                    cancelAnimationFrame(lastAnimationFrameForInvisibleCheck);
                    lastAnimationFrameForInvisibleCheck = 0;
                }
                ResizeSensor.detach(element, ev);
            };

            this.reset = function() {
                element.resizeSensor.resetSensor();
            };
        };

        ResizeSensor.reset = function(element) {
            forEachElement(element, function(elem){
                elem.resizeSensor.resetSensor();
            });
        };

        ResizeSensor.detach = function(element, ev) {
            forEachElement(element, function(elem){
                if (!elem) return;
                if(elem.resizedAttached && typeof ev === "function"){
                    elem.resizedAttached.remove(ev);
                    if(elem.resizedAttached.length()) return;
                }
                if (elem.resizeSensor) {
                    if (elem.contains(elem.resizeSensor)) {
                        elem.removeChild(elem.resizeSensor);
                    }
                    delete elem.resizeSensor;
                    delete elem.resizedAttached;
                }
            });
        };

        if (typeof MutationObserver !== "undefined") {
            var observer = new MutationObserver(function (mutations) {
                for (var i in mutations) {
                    if (mutations.hasOwnProperty(i)) {
                        var items = mutations[i].addedNodes;
                        for (var j = 0; j < items.length; j++) {
                            if (items[j].resizeSensor) {
                                ResizeSensor.reset(items[j]);
                            }
                        }
                    }
                }
            });

            document.addEventListener("DOMContentLoaded", function (event) {
                observer.observe(document.body, {
                    childList: true,
                    subtree: true,
                });
            });
        }

        return ResizeSensor;

    }));
    });

    var Vueresize = createCommonjsModule(function (module, exports) {
    !function(t,e){module.exports=e(ResizeSensor,lodash_debounce);}(commonjsGlobal,function(t,e){return function(t){function e(r){if(n[r])return n[r].exports;var o=n[r]={exports:{},id:r,loaded:!1};return t[r].call(o.exports,o,o.exports,e),o.loaded=!0,o.exports}var n={};return e.m=t,e.c=n,e.p="/",e(0)}([function(t,e,n){var r,o,i;!function(s,u){o=[t,e,n(10),n(38),n(39),n(9),n(37)],r=u,i="function"==typeof r?r.apply(e,o):r,!(void 0!==i&&(t.exports=i));}(this,function(t,e,n,r,o){function i(t){return t&&t.__esModule?t:{default:t}}function s(t){if(!t)return {delay:_,initial:!1};var e=t.initial,n=void 0!==e&&e,r=(0, h.default)(t).map(function(t){return parseInt(t)}).find(function(t){return !isNaN(t)});return r=r||_,{delay:r,initial:n}}function u(t,e){var n={root:document.documentElement},r=new IntersectionObserver(function(t,n){t.forEach(function(t){t.isIntersecting&&(e(),n.disconnect());});},n);return r.observe(t),r}function c(t,e){var n=e.value,r=e.arg,o=e.options,i=function(){return n(t)};switch(r){case"debounce":i=v(function(){return n(t)},o.delay);break;case"throttle":i=v(function(){return n(t)},o.delay,{leading:!0,trailing:!0,maxWait:o.delay});}var s=new l.default(t,i);return o.initial&&n(t),s}function a(t,e,n){var r=e.value,o=e.arg,i=e.modifiers,h=n.context;if(!r||"function"!=typeof r)return void console.warn("v-resize should received a function as value");var l=s(i);return h&&h.$el===t&&h.$once("hook:deactivated",function(){f(t),h.$once("hook:activated",function(){a(t,{value:r,arg:o,modifiers:i},{context:h});});}),t.offsetParent?void c(t,{value:r,arg:o,options:l}):(l.initial=!0,void(t.__visibility__listener__=u(t,function(){return c(t,{value:r,arg:o,options:l})})))}function f(t){t.__visibility__listener__&&t.__visibility__listener__.disconnect(),t.resizeSensor&&l.default.detach(t);}Object.defineProperty(e,"__esModule",{value:!0});var h=i(n),l=i(r),p=i(o),d=p.default.debounce,v=void 0===d?p.default:d,_=150;e.default={inserted:a,unbind:f},t.exports=e.default;});},function(t,e){var n=t.exports={version:"2.4.0"};"number"==typeof __e&&(__e=n);},function(t,e,n){t.exports=!n(3)(function(){return 7!=Object.defineProperty({},"a",{get:function(){return 7}}).a});},function(t,e){t.exports=function(t){try{return !!t()}catch(t){return !0}};},function(t,e){var n=t.exports="undefined"!=typeof window&&window.Math==Math?window:"undefined"!=typeof self&&self.Math==Math?self:Function("return this")();"number"==typeof __g&&(__g=n);},function(t,e){t.exports=function(t){return "object"==typeof t?null!==t:"function"==typeof t};},function(t,e){t.exports=function(t){if(void 0==t)throw TypeError("Can't call method on  "+t);return t};},function(t,e){var n=Math.ceil,r=Math.floor;t.exports=function(t){return isNaN(t=+t)?0:(t>0?r:n)(t)};},function(t,e,n){var r=n(23),o=n(6);t.exports=function(t){return r(o(t))};},function(t,e,n){var r,o,i;!function(n,s){o=[],r=s,i="function"==typeof r?r.apply(e,o):r,!(void 0!==i&&(t.exports=i));}(this,function(){Array.prototype.find||Object.defineProperty(Array.prototype,"find",{value:function(t){if(null==this)throw new TypeError('"this" is null or not defined');var e=Object(this),n=e.length>>>0;if("function"!=typeof t)throw new TypeError("predicate must be a function");for(var r=arguments[1],o=0;o<n;){var i=e[o];if(t.call(r,i,o,e))return i;o++;}},configurable:!0,writable:!0});});},function(t,e,n){t.exports={default:n(11),__esModule:!0};},function(t,e,n){n(36),t.exports=n(1).Object.keys;},function(t,e){t.exports=function(t){if("function"!=typeof t)throw TypeError(t+" is not a function!");return t};},function(t,e,n){var r=n(5);t.exports=function(t){if(!r(t))throw TypeError(t+" is not an object!");return t};},function(t,e,n){var r=n(8),o=n(32),i=n(31);t.exports=function(t){return function(e,n,s){var u,c=r(e),a=o(c.length),f=i(s,a);if(t&&n!=n){for(;a>f;)if(u=c[f++],u!=u)return !0}else for(;a>f;f++)if((t||f in c)&&c[f]===n)return t||f||0;return !t&&-1}};},function(t,e){var n={}.toString;t.exports=function(t){return n.call(t).slice(8,-1)};},function(t,e,n){var r=n(12);t.exports=function(t,e,n){if(r(t),void 0===e)return t;switch(n){case 1:return function(n){return t.call(e,n)};case 2:return function(n,r){return t.call(e,n,r)};case 3:return function(n,r,o){return t.call(e,n,r,o)}}return function(){return t.apply(e,arguments)}};},function(t,e,n){var r=n(5),o=n(4).document,i=r(o)&&r(o.createElement);t.exports=function(t){return i?o.createElement(t):{}};},function(t,e){t.exports="constructor,hasOwnProperty,isPrototypeOf,propertyIsEnumerable,toLocaleString,toString,valueOf".split(",");},function(t,e,n){var r=n(4),o=n(1),i=n(16),s=n(21),u="prototype",c=function(t,e,n){var a,f,h,l=t&c.F,p=t&c.G,d=t&c.S,v=t&c.P,_=t&c.B,y=t&c.W,g=p?o:o[e]||(o[e]={}),b=g[u],m=p?r:d?r[e]:(r[e]||{})[u];p&&(n=e);for(a in n)f=!l&&m&&void 0!==m[a],f&&a in g||(h=f?m[a]:n[a],g[a]=p&&"function"!=typeof m[a]?n[a]:_&&f?i(h,r):y&&m[a]==h?function(t){var e=function(e,n,r){if(this instanceof t){switch(arguments.length){case 0:return new t;case 1:return new t(e);case 2:return new t(e,n)}return new t(e,n,r)}return t.apply(this,arguments)};return e[u]=t[u],e}(h):v&&"function"==typeof h?i(Function.call,h):h,v&&((g.virtual||(g.virtual={}))[a]=h,t&c.R&&b&&!b[a]&&s(b,a,h)));};c.F=1,c.G=2,c.S=4,c.P=8,c.B=16,c.W=32,c.U=64,c.R=128,t.exports=c;},function(t,e){var n={}.hasOwnProperty;t.exports=function(t,e){return n.call(t,e)};},function(t,e,n){var r=n(24),o=n(28);t.exports=n(2)?function(t,e,n){return r.f(t,e,o(1,n))}:function(t,e,n){return t[e]=n,t};},function(t,e,n){t.exports=!n(2)&&!n(3)(function(){return 7!=Object.defineProperty(n(17)("div"),"a",{get:function(){return 7}}).a});},function(t,e,n){var r=n(15);t.exports=Object("z").propertyIsEnumerable(0)?Object:function(t){return "String"==r(t)?t.split(""):Object(t)};},function(t,e,n){var r=n(13),o=n(22),i=n(34),s=Object.defineProperty;e.f=n(2)?Object.defineProperty:function(t,e,n){if(r(t),e=i(e,!0),r(n),o)try{return s(t,e,n)}catch(t){}if("get"in n||"set"in n)throw TypeError("Accessors not supported!");return "value"in n&&(t[e]=n.value),t};},function(t,e,n){var r=n(20),o=n(8),i=n(14)(!1),s=n(29)("IE_PROTO");t.exports=function(t,e){var n,u=o(t),c=0,a=[];for(n in u)n!=s&&r(u,n)&&a.push(n);for(;e.length>c;)r(u,n=e[c++])&&(~i(a,n)||a.push(n));return a};},function(t,e,n){var r=n(25),o=n(18);t.exports=Object.keys||function(t){return r(t,o)};},function(t,e,n){var r=n(19),o=n(1),i=n(3);t.exports=function(t,e){var n=(o.Object||{})[t]||Object[t],s={};s[t]=e(n),r(r.S+r.F*i(function(){n(1);}),"Object",s);};},function(t,e){t.exports=function(t,e){return {enumerable:!(1&t),configurable:!(2&t),writable:!(4&t),value:e}};},function(t,e,n){var r=n(30)("keys"),o=n(35);t.exports=function(t){return r[t]||(r[t]=o(t))};},function(t,e,n){var r=n(4),o="__core-js_shared__",i=r[o]||(r[o]={});t.exports=function(t){return i[t]||(i[t]={})};},function(t,e,n){var r=n(7),o=Math.max,i=Math.min;t.exports=function(t,e){return t=r(t),t<0?o(t+e,0):i(t,e)};},function(t,e,n){var r=n(7),o=Math.min;t.exports=function(t){return t>0?o(r(t),9007199254740991):0};},function(t,e,n){var r=n(6);t.exports=function(t){return Object(r(t))};},function(t,e,n){var r=n(5);t.exports=function(t,e){if(!r(t))return t;var n,o;if(e&&"function"==typeof(n=t.toString)&&!r(o=n.call(t)))return o;if("function"==typeof(n=t.valueOf)&&!r(o=n.call(t)))return o;if(!e&&"function"==typeof(n=t.toString)&&!r(o=n.call(t)))return o;throw TypeError("Can't convert object to primitive value")};},function(t,e){var n=0,r=Math.random();t.exports=function(t){return "Symbol(".concat(void 0===t?"":t,")_",(++n+r).toString(36))};},function(t,e,n){var r=n(33),o=n(26);n(27)("keys",function(){return function(t){return o(r(t))}});},function(t,e){!function(t,e){function n(t){this.time=t.time,this.target=t.target,this.rootBounds=t.rootBounds,this.boundingClientRect=t.boundingClientRect,this.intersectionRect=t.intersectionRect||f(),this.isIntersecting=!!t.intersectionRect;var e=this.boundingClientRect,n=e.width*e.height,r=this.intersectionRect,o=r.width*r.height;n?this.intersectionRatio=o/n:this.intersectionRatio=this.isIntersecting?1:0;}function r(t,e){var n=e||{};if("function"!=typeof t)throw new Error("callback must be a function");if(n.root&&1!=n.root.nodeType)throw new Error("root must be an Element");this._checkForIntersections=i(this._checkForIntersections.bind(this),this.THROTTLE_TIMEOUT),this._callback=t,this._observationTargets=[],this._queuedEntries=[],this._rootMarginValues=this._parseRootMargin(n.rootMargin),this.thresholds=this._initThresholds(n.threshold),this.root=n.root||null,this.rootMargin=this._rootMarginValues.map(function(t){return t.value+t.unit}).join(" ");}function o(){return t.performance&&performance.now&&performance.now()}function i(t,e){var n=null;return function(){n||(n=setTimeout(function(){t(),n=null;},e));}}function s(t,e,n,r){"function"==typeof t.addEventListener?t.addEventListener(e,n,r||!1):"function"==typeof t.attachEvent&&t.attachEvent("on"+e,n);}function u(t,e,n,r){"function"==typeof t.removeEventListener?t.removeEventListener(e,n,r||!1):"function"==typeof t.detatchEvent&&t.detatchEvent("on"+e,n);}function c(t,e){var n=Math.max(t.top,e.top),r=Math.min(t.bottom,e.bottom),o=Math.max(t.left,e.left),i=Math.min(t.right,e.right),s=i-o,u=r-n;return s>=0&&u>=0&&{top:n,bottom:r,left:o,right:i,width:s,height:u}}function a(t){var e;try{e=t.getBoundingClientRect();}catch(t){}return e?(e.width&&e.height||(e={top:e.top,right:e.right,bottom:e.bottom,left:e.left,width:e.right-e.left,height:e.bottom-e.top}),e):f()}function f(){return {top:0,bottom:0,left:0,right:0,width:0,height:0}}function h(t,e){for(var n=e;n;){if(n==t)return !0;n=l(n);}return !1}function l(t){var e=t.parentNode;return e&&11==e.nodeType&&e.host?e.host:e}if("IntersectionObserver"in t&&"IntersectionObserverEntry"in t&&"intersectionRatio"in t.IntersectionObserverEntry.prototype)return void("isIntersecting"in t.IntersectionObserverEntry.prototype||Object.defineProperty(t.IntersectionObserverEntry.prototype,"isIntersecting",{get:function(){return this.intersectionRatio>0}}));r.prototype.THROTTLE_TIMEOUT=100,r.prototype.POLL_INTERVAL=null,r.prototype.USE_MUTATION_OBSERVER=!0,r.prototype.observe=function(t){var e=this._observationTargets.some(function(e){return e.element==t});if(!e){if(!t||1!=t.nodeType)throw new Error("target must be an Element");this._registerInstance(),this._observationTargets.push({element:t,entry:null}),this._monitorIntersections(),this._checkForIntersections();}},r.prototype.unobserve=function(t){this._observationTargets=this._observationTargets.filter(function(e){return e.element!=t}),this._observationTargets.length||(this._unmonitorIntersections(),this._unregisterInstance());},r.prototype.disconnect=function(){this._observationTargets=[],this._unmonitorIntersections(),this._unregisterInstance();},r.prototype.takeRecords=function(){var t=this._queuedEntries.slice();return this._queuedEntries=[],t},r.prototype._initThresholds=function(t){var e=t||[0];return Array.isArray(e)||(e=[e]),e.sort().filter(function(t,e,n){if("number"!=typeof t||isNaN(t)||t<0||t>1)throw new Error("threshold must be a number between 0 and 1 inclusively");return t!==n[e-1]})},r.prototype._parseRootMargin=function(t){var e=t||"0px",n=e.split(/\s+/).map(function(t){var e=/^(-?\d*\.?\d+)(px|%)$/.exec(t);if(!e)throw new Error("rootMargin must be specified in pixels or percent");return {value:parseFloat(e[1]),unit:e[2]}});return n[1]=n[1]||n[0],n[2]=n[2]||n[0],n[3]=n[3]||n[1],n},r.prototype._monitorIntersections=function(){this._monitoringIntersections||(this._monitoringIntersections=!0,this.POLL_INTERVAL?this._monitoringInterval=setInterval(this._checkForIntersections,this.POLL_INTERVAL):(s(t,"resize",this._checkForIntersections,!0),s(e,"scroll",this._checkForIntersections,!0),this.USE_MUTATION_OBSERVER&&"MutationObserver"in t&&(this._domObserver=new MutationObserver(this._checkForIntersections),this._domObserver.observe(e,{attributes:!0,childList:!0,characterData:!0,subtree:!0}))));},r.prototype._unmonitorIntersections=function(){this._monitoringIntersections&&(this._monitoringIntersections=!1,clearInterval(this._monitoringInterval),this._monitoringInterval=null,u(t,"resize",this._checkForIntersections,!0),u(e,"scroll",this._checkForIntersections,!0),this._domObserver&&(this._domObserver.disconnect(),this._domObserver=null));},r.prototype._checkForIntersections=function(){var t=this._rootIsInDom(),e=t?this._getRootRect():f();this._observationTargets.forEach(function(r){var i=r.element,s=a(i),u=this._rootContainsTarget(i),c=r.entry,f=t&&u&&this._computeTargetAndRootIntersection(i,e),h=r.entry=new n({time:o(),target:i,boundingClientRect:s,rootBounds:e,intersectionRect:f});c?t&&u?this._hasCrossedThreshold(c,h)&&this._queuedEntries.push(h):c&&c.isIntersecting&&this._queuedEntries.push(h):this._queuedEntries.push(h);},this),this._queuedEntries.length&&this._callback(this.takeRecords(),this);},r.prototype._computeTargetAndRootIntersection=function(n,r){if("none"!=t.getComputedStyle(n).display){for(var o=a(n),i=o,s=l(n),u=!1;!u;){var f=null,h=1==s.nodeType?t.getComputedStyle(s):{};if("none"==h.display)return;if(s==this.root||s==e?(u=!0,f=r):s!=e.body&&s!=e.documentElement&&"visible"!=h.overflow&&(f=a(s)),f&&(i=c(f,i),!i))break;s=l(s);}return i}},r.prototype._getRootRect=function(){var t;if(this.root)t=a(this.root);else{var n=e.documentElement,r=e.body;t={top:0,left:0,right:n.clientWidth||r.clientWidth,width:n.clientWidth||r.clientWidth,bottom:n.clientHeight||r.clientHeight,height:n.clientHeight||r.clientHeight};}return this._expandRectByRootMargin(t)},r.prototype._expandRectByRootMargin=function(t){var e=this._rootMarginValues.map(function(e,n){return "px"==e.unit?e.value:e.value*(n%2?t.width:t.height)/100}),n={top:t.top-e[0],right:t.right+e[1],bottom:t.bottom+e[2],left:t.left-e[3]};return n.width=n.right-n.left,n.height=n.bottom-n.top,n},r.prototype._hasCrossedThreshold=function(t,e){var n=t&&t.isIntersecting?t.intersectionRatio||0:-1,r=e.isIntersecting?e.intersectionRatio||0:-1;if(n!==r)for(var o=0;o<this.thresholds.length;o++){var i=this.thresholds[o];if(i==n||i==r||i<n!=i<r)return !0}},r.prototype._rootIsInDom=function(){return !this.root||h(e,this.root)},r.prototype._rootContainsTarget=function(t){return h(this.root||e,t)},r.prototype._registerInstance=function(){},r.prototype._unregisterInstance=function(){},t.IntersectionObserver=r,t.IntersectionObserverEntry=n;}(window,document);},function(e,n){e.exports=t;},function(t,n){t.exports=e;}])});

    });

    var resize = unwrapExports(Vueresize);
    var Vueresize_1 = Vueresize.Vueresize;

    Array.prototype.includes || (Array.prototype.includes = function (r) {
      if (null == this) { throw new TypeError("Array.prototype.includes called on null or undefined"); }
      var e = Object(this),
          n = parseInt(e.length, 10) || 0;
      if (0 === n) { return !1; }
      var t,
          o,
          i = parseInt(arguments[1], 10) || 0;

      for (0 <= i ? t = i : (t = n + i) < 0 && (t = 0); t < n;) {
        if (r === (o = e[t]) || r != r && o != o) { return !0; }
        t++;
      }

      return !1;
    });

    //

    function registerPostMessageHandler(func) {
      if (typeof window.addEventListener != "undefined") { window.addEventListener("message", func, false); }else if (typeof window.attachEvent != "undefined") { window.attachEvent("onmessage", func); }
    }

    var script$11 = {
      inject: [],
      components: {
        uiLabel: uiLabel
      },
      props: {
        label: String,
        key: String,
        value: {
          type: String,
          "default": null
        },
        onChanged: Function,
        wizdomService: WizdomSpfxVueServices
      },
      computed: {
        src: function src() {
          return this.wizdomService.WizdomContext.appUrl + "Base/Scripts/Tinymce/plugins/wizdomImagePicker/uploader.aspx?sessionId=" + this.sessionId;
        }
      },
      methods: {
        handlePostMessage: function handlePostMessage(postMessage) {
          try {
            if (postMessage.data.toString().indexOf("imageUploaded_" + this.sessionId) == 0) {
              var url = postMessage.data.substr(postMessage.data.indexOf(":") + 1);
              this.changeImage(url);
            } else if (postMessage.data.toString().indexOf("imageUploadFailed_" + this.sessionId) == 0) {
              this.$emit("imageUploadFailed");
            }
          } catch (e) {}
        },
        changeImage: function changeImage(url) {
          this.value = url;
          this.onChanged(this.value);
          this.$emit("imageUploaded", this.value);
        }
      },
      data: function data() {
        return {
          sessionId: null
        };
      },
      created: function created() {
        this.sessionId = Math.random();
        registerPostMessageHandler(this.handlePostMessage);
      }
    };

    var commonjsGlobal$2 = typeof globalThis !== 'undefined' ? globalThis : typeof window !== 'undefined' ? window : typeof global !== 'undefined' ? global : typeof self !== 'undefined' ? self : {};

    function unwrapExports$1 (x) {
    	return x && x.__esModule && Object.prototype.hasOwnProperty.call(x, 'default') ? x['default'] : x;
    }

    function createCommonjsModule$2(fn, module) {
    	return module = { exports: {} }, fn(module, module.exports), module.exports;
    }

    var lib$1 = createCommonjsModule$2(function (module, exports) {
      /**
       * An IThemingInstruction can specify a rawString to be preserved or a theme slot and a default value
       * to use if that slot is not specified by the theme.
       */

      var __assign$$1 = commonjsGlobal$2 && commonjsGlobal$2.__assign || Object.assign || function (t) {
        var arguments$1 = arguments;

        for (var s, i = 1, n = arguments.length; i < n; i++) {
          s = arguments$1[i];

          for (var p in s) {
            if (Object.prototype.hasOwnProperty.call(s, p)) { t[p] = s[p]; }
          }
        }

        return t;
      };

      Object.defineProperty(exports, "__esModule", {
        value: true
      }); // IE needs to inject styles using cssText. However, we need to evaluate this lazily, so this
      // value will initialize as undefined, and later will be set once on first loadStyles injection.

      var _injectStylesWithCssText; // Store the theming state in __themeState__ global scope for reuse in the case of duplicate
      // load-themed-styles hosted on the page.


      var _root = typeof window === 'undefined' ? commonjsGlobal$2 : window; // tslint:disable-line:no-any


      var _themeState = initializeThemeState();
      /**
       * Matches theming tokens. For example, "[theme: themeSlotName, default: #FFF]" (including the quotes).
       */
      // tslint:disable-next-line:max-line-length


      var _themeTokenRegex = /[\'\"]\[theme:\s*(\w+)\s*(?:\,\s*default:\s*([\\"\']?[\.\,\(\)\#\-\s\w]*[\.\,\(\)\#\-\w][\"\']?))?\s*\][\'\"]/g;
      /** Maximum style text length, for supporting IE style restrictions. */

      var MAX_STYLE_CONTENT_SIZE = 10000;

      var now = function now() {
        return typeof performance !== 'undefined' && !!performance.now ? performance.now() : Date.now();
      };

      function measure(func) {
        var start = now();
        func();
        var end = now();
        _themeState.perf.duration += end - start;
      }
      /**
       * initialize global state object
       */


      function initializeThemeState() {
        var state = _root.__themeState__ || {
          theme: undefined,
          lastStyleElement: undefined,
          registeredStyles: []
        };

        if (!state.runState) {
          state = __assign$$1({}, state, {
            perf: {
              count: 0,
              duration: 0
            },
            runState: {
              flushTimer: 0,
              mode: 0
              /* sync */
              ,
              buffer: []
            }
          });
        }

        if (!state.registeredThemableStyles) {
          state = __assign$$1({}, state, {
            registeredThemableStyles: []
          });
        }

        _root.__themeState__ = state;
        return state;
      }
      /**
       * Loads a set of style text. If it is registered too early, we will register it when the window.load
       * event is fired.
       * @param {string | ThemableArray} styles Themable style text to register.
       * @param {boolean} loadAsync When true, always load styles in async mode, irrespective of current sync mode.
       */


      function loadStyles(styles, loadAsync) {
        if (loadAsync === void 0) {
          loadAsync = false;
        }

        measure(function () {
          var styleParts = Array.isArray(styles) ? styles : splitStyles(styles);

          if (_injectStylesWithCssText === undefined) {
            _injectStylesWithCssText = shouldUseCssText();
          }

          var _a = _themeState.runState,
              mode = _a.mode,
              buffer = _a.buffer,
              flushTimer = _a.flushTimer;

          if (loadAsync || mode === 1
          /* async */
          ) {
              buffer.push(styleParts);

              if (!flushTimer) {
                _themeState.runState.flushTimer = asyncLoadStyles();
              }
            } else {
            applyThemableStyles(styleParts);
          }
        });
      }

      exports.loadStyles = loadStyles;
      /**
       * Allows for customizable loadStyles logic. e.g. for server side rendering application
       * @param {(processedStyles: string, rawStyles?: string | ThemableArray) => void}
       * a loadStyles callback that gets called when styles are loaded or reloaded
       */

      function configureLoadStyles(loadStylesFn) {
        _themeState.loadStyles = loadStylesFn;
      }

      exports.configureLoadStyles = configureLoadStyles;
      /**
       * Configure run mode of load-themable-styles
       * @param mode load-themable-styles run mode, async or sync
       */

      function configureRunMode(mode) {
        _themeState.runState.mode = mode;
      }

      exports.configureRunMode = configureRunMode;
      /**
       * external code can call flush to synchronously force processing of currently buffered styles
       */

      function flush() {
        measure(function () {
          var styleArrays = _themeState.runState.buffer.slice();

          _themeState.runState.buffer = [];
          var mergedStyleArray = [].concat.apply([], styleArrays);

          if (mergedStyleArray.length > 0) {
            applyThemableStyles(mergedStyleArray);
          }
        });
      }

      exports.flush = flush;
      /**
       * register async loadStyles
       */

      function asyncLoadStyles() {
        return setTimeout(function () {
          _themeState.runState.flushTimer = 0;
          flush();
        }, 0);
      }
      /**
       * Loads a set of style text. If it is registered too early, we will register it when the window.load event
       * is fired.
       * @param {string} styleText Style to register.
       * @param {IStyleRecord} styleRecord Existing style record to re-apply.
       */


      function applyThemableStyles(stylesArray, styleRecord) {
        if (_themeState.loadStyles) {
          _themeState.loadStyles(resolveThemableArray(stylesArray).styleString, stylesArray);
        } else {
          _injectStylesWithCssText ? registerStylesIE(stylesArray, styleRecord) : registerStyles(stylesArray);
        }
      }
      /**
       * Registers a set theme tokens to find and replace. If styles were already registered, they will be
       * replaced.
       * @param {theme} theme JSON object of theme tokens to values.
       */


      function loadTheme(theme) {
        _themeState.theme = theme; // reload styles.

        reloadStyles();
      }

      exports.loadTheme = loadTheme;
      /**
       * Clear already registered style elements and style records in theme_State object
       * @option: specify which group of registered styles should be cleared.
       * Default to be both themable and non-themable styles will be cleared
       */

      function clearStyles(option) {
        if (option === void 0) {
          option = 3
          /* all */
          ;
        }

        if (option === 3
        /* all */
        || option === 2
        /* onlyNonThemable */
        ) {
            clearStylesInternal(_themeState.registeredStyles);
            _themeState.registeredStyles = [];
          }

        if (option === 3
        /* all */
        || option === 1
        /* onlyThemable */
        ) {
            clearStylesInternal(_themeState.registeredThemableStyles);
            _themeState.registeredThemableStyles = [];
          }
      }

      exports.clearStyles = clearStyles;

      function clearStylesInternal(records) {
        records.forEach(function (styleRecord) {
          var styleElement = styleRecord && styleRecord.styleElement;

          if (styleElement && styleElement.parentElement) {
            styleElement.parentElement.removeChild(styleElement);
          }
        });
      }
      /**
       * Reloads styles.
       */


      function reloadStyles() {
        if (_themeState.theme) {
          var themableStyles = [];

          for (var _i = 0, _a = _themeState.registeredThemableStyles; _i < _a.length; _i++) {
            var styleRecord = _a[_i];
            themableStyles.push(styleRecord.themableStyle);
          }

          if (themableStyles.length > 0) {
            clearStyles(1
            /* onlyThemable */
            );
            applyThemableStyles([].concat.apply([], themableStyles));
          }
        }
      }
      /**
       * Find theme tokens and replaces them with provided theme values.
       * @param {string} styles Tokenized styles to fix.
       */


      function detokenize(styles) {
        if (styles) {
          styles = resolveThemableArray(splitStyles(styles)).styleString;
        }

        return styles;
      }

      exports.detokenize = detokenize;
      /**
       * Resolves ThemingInstruction objects in an array and joins the result into a string.
       * @param {ThemableArray} splitStyleArray ThemableArray to resolve and join.
       */

      function resolveThemableArray(splitStyleArray) {
        var theme = _themeState.theme;
        var themable = false; // Resolve the array of theming instructions to an array of strings.
        // Then join the array to produce the final CSS string.

        var resolvedArray = (splitStyleArray || []).map(function (currentValue) {
          var themeSlot = currentValue.theme;

          if (themeSlot) {
            themable = true; // A theming annotation. Resolve it.

            var themedValue = theme ? theme[themeSlot] : undefined;
            var defaultValue = currentValue.defaultValue || 'inherit'; // Warn to console if we hit an unthemed value even when themes are provided, but only if "DEBUG" is true.
            // Allow the themedValue to be undefined to explicitly request the default value.

            if (theme && !themedValue && console && !(themeSlot in theme) && typeof DEBUG !== 'undefined' && DEBUG) {
              console.warn("Theming value not provided for \"" + themeSlot + "\". Falling back to \"" + defaultValue + "\".");
            }

            return themedValue || defaultValue;
          } else {
            // A non-themable string. Preserve it.
            return currentValue.rawString;
          }
        });
        return {
          styleString: resolvedArray.join(''),
          themable: themable
        };
      }
      /**
       * Split tokenized CSS into an array of strings and theme specification objects
       * @param {string} styles Tokenized styles to split.
       */


      function splitStyles(styles) {
        var result = [];

        if (styles) {
          var pos = 0; // Current position in styles.

          var tokenMatch = void 0; // tslint:disable-line:no-null-keyword

          while (tokenMatch = _themeTokenRegex.exec(styles)) {
            var matchIndex = tokenMatch.index;

            if (matchIndex > pos) {
              result.push({
                rawString: styles.substring(pos, matchIndex)
              });
            }

            result.push({
              theme: tokenMatch[1],
              defaultValue: tokenMatch[2] // May be undefined

            }); // index of the first character after the current match

            pos = _themeTokenRegex.lastIndex;
          } // Push the rest of the string after the last match.


          result.push({
            rawString: styles.substring(pos)
          });
        }

        return result;
      }

      exports.splitStyles = splitStyles;
      /**
       * Registers a set of style text. If it is registered too early, we will register it when the
       * window.load event is fired.
       * @param {ThemableArray} styleArray Array of IThemingInstruction objects to register.
       * @param {IStyleRecord} styleRecord May specify a style Element to update.
       */

      function registerStyles(styleArray) {
        var head = document.getElementsByTagName('head')[0];
        var styleElement = document.createElement('style');

        var _a = resolveThemableArray(styleArray),
            styleString = _a.styleString,
            themable = _a.themable;

        styleElement.type = 'text/css';
        styleElement.appendChild(document.createTextNode(styleString));
        _themeState.perf.count++;
        head.appendChild(styleElement);
        var record = {
          styleElement: styleElement,
          themableStyle: styleArray
        };

        if (themable) {
          _themeState.registeredThemableStyles.push(record);
        } else {
          _themeState.registeredStyles.push(record);
        }
      }
      /**
       * Registers a set of style text, for IE 9 and below, which has a ~30 style element limit so we need
       * to register slightly differently.
       * @param {ThemableArray} styleArray Array of IThemingInstruction objects to register.
       * @param {IStyleRecord} styleRecord May specify a style Element to update.
       */


      function registerStylesIE(styleArray, styleRecord) {
        var head = document.getElementsByTagName('head')[0];
        var registeredStyles = _themeState.registeredStyles;
        var lastStyleElement = _themeState.lastStyleElement;
        var stylesheet = lastStyleElement ? lastStyleElement.styleSheet : undefined;
        var lastStyleContent = stylesheet ? stylesheet.cssText : '';
        var lastRegisteredStyle = registeredStyles[registeredStyles.length - 1];
        var resolvedStyleText = resolveThemableArray(styleArray).styleString;

        if (!lastStyleElement || lastStyleContent.length + resolvedStyleText.length > MAX_STYLE_CONTENT_SIZE) {
          lastStyleElement = document.createElement('style');
          lastStyleElement.type = 'text/css';

          if (styleRecord) {
            head.replaceChild(lastStyleElement, styleRecord.styleElement);
            styleRecord.styleElement = lastStyleElement;
          } else {
            head.appendChild(lastStyleElement);
          }

          if (!styleRecord) {
            lastRegisteredStyle = {
              styleElement: lastStyleElement,
              themableStyle: styleArray
            };
            registeredStyles.push(lastRegisteredStyle);
          }
        }

        lastStyleElement.styleSheet.cssText += detokenize(resolvedStyleText);
        Array.prototype.push.apply(lastRegisteredStyle.themableStyle, styleArray); // concat in-place
        // Preserve the theme state.

        _themeState.lastStyleElement = lastStyleElement;
      }
      /**
       * Checks to see if styleSheet exists as a property off of a style element.
       * This will determine if style registration should be done via cssText (<= IE9) or not
       */


      function shouldUseCssText() {
        var useCSSText = false;

        if (typeof document !== 'undefined') {
          var emptyStyle = document.createElement('style');
          emptyStyle.type = 'text/css';
          useCSSText = !!emptyStyle.styleSheet;
        }

        return useCSSText;
      }
    });
    unwrapExports$1(lib$1);
    var lib_1$1 = lib$1.loadStyles;
    var lib_2$1 = lib$1.configureLoadStyles;
    var lib_3$1 = lib$1.configureRunMode;
    var lib_4$1 = lib$1.flush;
    var lib_5$1 = lib$1.loadTheme;
    var lib_6$1 = lib$1.clearStyles;
    var lib_7$1 = lib$1.detokenize;
    var lib_8 = lib$1.splitStyles;

    function normalizeComponent$1(compiledTemplate, injectStyle, defaultExport, scopeId, isFunctionalTemplate, moduleIdentifier
    /* server only */
    , isShadowMode, createInjector, createInjectorSSR, createInjectorShadow) {
      if (typeof isShadowMode === 'function') {
        createInjectorSSR = createInjector;
        createInjector = isShadowMode;
        isShadowMode = false;
      } // Vue.extend constructor export interop


      var options = typeof defaultExport === 'function' ? defaultExport.options : defaultExport; // render functions

      if (compiledTemplate && compiledTemplate.render) {
        options.render = compiledTemplate.render;
        options.staticRenderFns = compiledTemplate.staticRenderFns;
        options._compiled = true; // functional template

        if (isFunctionalTemplate) {
          options.functional = true;
        }
      } // scopedId


      if (scopeId) {
        options._scopeId = scopeId;
      }

      var hook;

      if (moduleIdentifier) {
        // server build
        hook = function hook(context) {
          // 2.3 injection
          context = context || // cached call
          this.$vnode && this.$vnode.ssrContext || // stateful
          this.parent && this.parent.$vnode && this.parent.$vnode.ssrContext; // functional
          // 2.2 with runInNewContext: true

          if (!context && typeof __VUE_SSR_CONTEXT__ !== 'undefined') {
            context = __VUE_SSR_CONTEXT__;
          } // inject component styles


          if (injectStyle) {
            injectStyle.call(this, createInjectorSSR(context));
          } // register component module identifier for async chunk inference


          if (context && context._registeredComponents) {
            context._registeredComponents.add(moduleIdentifier);
          }
        }; // used by ssr in case component is cached and beforeCreate
        // never gets called


        options._ssrRegister = hook;
      } else if (injectStyle) {
        hook = isShadowMode ? function () {
          injectStyle.call(this, createInjectorShadow(this.$root.$options.shadowRoot));
        } : function (context) {
          injectStyle.call(this, createInjector(context));
        };
      }

      if (hook) {
        if (options.functional) {
          // register for functional component in vue file
          var originalRender = options.render;

          options.render = function renderWithStyleInjection(h, context) {
            hook.call(context);
            return originalRender(h, context);
          };
        } else {
          // inject component registration as beforeCreate hook
          var existing = options.beforeCreate;
          options.beforeCreate = existing ? [].concat(existing, hook) : [hook];
        }
      }

      return defaultExport;
    }

    var isOldIE = typeof navigator !== 'undefined' && /msie [6-9]\\b/.test(navigator.userAgent.toLowerCase());
    function createInjector(context) {
      return function (id, style) {
        return addStyle(id, style);
      };
    }
    var HEAD = document.head || document.getElementsByTagName('head')[0];
    var styles = {};

    function addStyle(id, css) {
      var group = isOldIE ? css.media || 'default' : id;
      var style = styles[group] || (styles[group] = {
        ids: new Set(),
        styles: []
      });

      if (!style.ids.has(id)) {
        style.ids.add(id);
        var code = css.source;

        if (css.map) {
          // https://developer.chrome.com/devtools/docs/javascript-debugging
          // this makes source maps inside style tags work properly in Chrome
          code += '\n/*# sourceURL=' + css.map.sources[0] + ' */'; // http://stackoverflow.com/a/26603875

          code += '\n/*# sourceMappingURL=data:application/json;base64,' + btoa(unescape(encodeURIComponent(JSON.stringify(css.map)))) + ' */';
        }

        if (!style.element) {
          style.element = document.createElement('style');
          style.element.type = 'text/css';
          if (css.media) { style.element.setAttribute('media', css.media); }
          HEAD.appendChild(style.element);
        }

        if ('styleSheet' in style.element) {
          style.styles.push(code);
          style.element.styleSheet.cssText = style.styles.filter(Boolean).join('\n');
        } else {
          var index = style.ids.size - 1;
          var textNode = document.createTextNode(code);
          var nodes = style.element.childNodes;
          if (nodes[index]) { style.element.removeChild(nodes[index]); }
          if (nodes.length) { style.element.insertBefore(textNode, nodes[index]); }else { style.element.appendChild(textNode); }
        }
      }
    }

    /* script */
                script$11.beforeCreate = function () {lib_1$1('.controls[data-v-a543123c] { padding: 0 10px 4px 10px; margin: 0 1px; position: relative; } .controls.has-image[data-v-a543123c] { top: -25px; background-image: linear-gradient(to bottom, transparent -50%, white 100%); } .controls iframe[data-v-a543123c] { height: 23px; vertical-align: middle; width: 20px; display: inline-block; overflow: hidden; padding-top: 3px; margin: -14px 0 0 -5px; } .controls .clear-icon[data-v-a543123c] { float: right; cursor: pointer; opacity: .3; vertical-align: middle; padding-top: 3px; } .controls .clear-icon[data-v-a543123c]:hover { opacity: 1; } .preview-image-container[data-v-a543123c] { position: relative; width: 100%; overflow: hidden; } .preview-image-container[data-v-a543123c]:before { content: ""; display: block; padding-top: 100%; } .preview-image-container .preview-image[data-v-a543123c] { position: absolute; top: 0; right: 0; bottom: 0; left: 0; box-sizing: border-box; border: 1px solid #ddd; background-position: center; background-size: contain; background-repeat: no-repeat; } /*# sourceMappingURL=imageUploader.vue.map */');};
                var __vue_script__$11 = script$11;
                
    /* template */
    var __vue_render__$D = function() {
      var _vm = this;
      var _h = _vm.$createElement;
      var _c = _vm._self._c || _h;
      return _c(
        "div",
        [
          _c("uiLabel", [_vm._v(_vm._s(_vm.label))]),
          _vm._v(" "),
          _vm.value
            ? _c("div", { staticClass: "preview-image-container" }, [
                _c("div", {
                  staticClass: "preview-image",
                  style: "background-image: url(" + _vm.value + ")"
                })
              ])
            : _vm._e(),
          _vm._v(" "),
          _c("div", { class: ["controls", _vm.value ? "has-image" : ""] }, [
            _vm.src
              ? _c("iframe", {
                  attrs: { src: _vm.src, scolling: "no", frameborder: "0" }
                })
              : _vm._e(),
            _vm._v(" "),
            _vm.value
              ? _c(
                  "span",
                  {
                    staticClass: "clear-icon",
                    on: {
                      click: function($event) {
                        return _vm.changeImage("")
                      }
                    }
                  },
                  [
                    _c("i", {
                      staticClass: "ms-Icon ms-Icon--Clear",
                      attrs: { "aria-hidden": "true" }
                    })
                  ]
                )
              : _vm._e()
          ])
        ],
        1
      )
    };
    var __vue_staticRenderFns__$D = [];
    __vue_render__$D._withStripped = true;

      /* style */
      var __vue_inject_styles__$11 = function (inject) {
        if (!inject) { return }
        inject("data-v-a543123c_0", { source: ".controls[data-v-a543123c] {\n  padding: 0 10px 4px 10px;\n  margin: 0 1px;\n  position: relative;\n}\n.controls.has-image[data-v-a543123c] {\n    top: -25px;\n    background-image: linear-gradient(to bottom, transparent -50%, white 100%);\n}\n.controls iframe[data-v-a543123c] {\n    height: 23px;\n    vertical-align: middle;\n    width: 20px;\n    display: inline-block;\n    overflow: hidden;\n    padding-top: 3px;\n    margin: -14px 0 0 -5px;\n}\n.controls .clear-icon[data-v-a543123c] {\n    float: right;\n    cursor: pointer;\n    opacity: .3;\n    vertical-align: middle;\n    padding-top: 3px;\n}\n.controls .clear-icon[data-v-a543123c]:hover {\n      opacity: 1;\n}\n.preview-image-container[data-v-a543123c] {\n  position: relative;\n  width: 100%;\n  overflow: hidden;\n}\n.preview-image-container[data-v-a543123c]:before {\n    content: \"\";\n    display: block;\n    padding-top: 100%;\n}\n.preview-image-container .preview-image[data-v-a543123c] {\n    position: absolute;\n    top: 0;\n    right: 0;\n    bottom: 0;\n    left: 0;\n    box-sizing: border-box;\n    border: 1px solid #ddd;\n    background-position: center;\n    background-size: contain;\n    background-repeat: no-repeat;\n}\n\n/*# sourceMappingURL=imageUploader.vue.map */", map: {"version":3,"sources":["C:\\spfx\\spfx_modules\\webpart-utilities\\src\\propertyPaneProperties\\imageUploadProperty\\imageUploader.vue","imageUploader.vue"],"names":[],"mappings":"AAmFA;EACA,wBAAA;EACA,aAAA;EACA,kBAAA;AAAA;AAHA;IAKA,UAAA;IACA,0EAAA;AAAA;AANA;IAUA,YAAA;IACA,sBAAA;IACA,WAAA;IACA,qBAAA;IACA,gBAAA;IACA,gBAAA;IACA,sBAAA;AAAA;AAhBA;IAmBA,YAAA;IACA,eAAA;IACA,WAAA;IACA,sBAAA;IACA,gBAAA;AAAA;AAvBA;MA0BA,UAAA;AAAA;AAIA;EACA,kBAAA;EACA,WAAA;EACA,gBAAA;AAAA;AAHA;IAMA,WAAA;IACA,cAAA;IACA,iBAAA;AAAA;AARA;IAYA,kBAAA;IACA,MAAA;IACA,QAAA;IACA,SAAA;IACA,OAAA;IACA,sBAAA;IACA,sBAAA;IACA,2BAAA;IACA,wBAAA;IACA,4BAAA;AAAA;;AC1FA,4CAA4C","file":"imageUploader.vue","sourcesContent":["<template>\r\n  <div>\r\n    <uiLabel>{{label}}</uiLabel>\r\n    <div class=\"preview-image-container\" v-if=\"value\">\r\n      <div class=\"preview-image\" :style=\"'background-image: url(' + value + ')'\"></div>\r\n    </div>\r\n    <div :class=\"['controls', value ? 'has-image' : '']\">\r\n      <iframe v-if=\"src\" :src=\"src\" scolling=\"no\" frameborder=\"0\" />\r\n      <span class=\"clear-icon\" v-if=\"value\" @click=\"changeImage('')\"><i class=\"ms-Icon ms-Icon--Clear\" aria-hidden=\"true\"></i></span>\r\n    </div>\r\n  </div>\r\n</template>\r\n\r\n<script>\r\n  import { uiLabel } from \"@wizdom-intranet/spfx-ui-fabric-vue\";\r\n  import { WizdomSpfxVueServices } from \"@wizdom-intranet/services\";\r\n  function registerPostMessageHandler(func) {\r\n    if (typeof window.addEventListener != \"undefined\")\r\n      window.addEventListener(\"message\", func, false);\r\n    else if (typeof window.attachEvent != \"undefined\")\r\n      window.attachEvent(\"onmessage\", func);\r\n  }\r\n\r\n  export default {\r\n    inject: [],\r\n    components: {\r\n      uiLabel\r\n    },\r\n    props: {\r\n      label: String,\r\n      key: String,\r\n      value: {\r\n        type: String,\r\n        default: null\r\n      },\r\n      onChanged: Function,\r\n      wizdomService: WizdomSpfxVueServices\r\n    },\r\n    computed: {\r\n      src() {\r\n        return (\r\n          this.wizdomService.WizdomContext.appUrl +\r\n          \"Base/Scripts/Tinymce/plugins/wizdomImagePicker/uploader.aspx?sessionId=\" +\r\n          this.sessionId\r\n        );\r\n      }\r\n    },\r\n    methods: {\r\n      handlePostMessage(postMessage) {\r\n        try {\r\n          if (\r\n            postMessage.data\r\n              .toString()\r\n              .indexOf(\"imageUploaded_\" + this.sessionId) == 0\r\n          ) {\r\n            var url = postMessage.data.substr(postMessage.data.indexOf(\":\") + 1);\r\n            this.changeImage(url);\r\n          } else if (\r\n            postMessage.data\r\n              .toString()\r\n              .indexOf(\"imageUploadFailed_\" + this.sessionId) == 0\r\n          ) {\r\n            this.$emit(\"imageUploadFailed\");\r\n          }\r\n        } catch (e) {}\r\n      },\r\n      changeImage(url){\r\n        this.value = url;\r\n        this.onChanged(this.value);\r\n        this.$emit(\"imageUploaded\", this.value);\r\n      }\r\n    },\r\n    data() {\r\n      return { sessionId: null };\r\n    },\r\n    created() {\r\n      this.sessionId = Math.random();\r\n      registerPostMessageHandler(this.handlePostMessage);\r\n    }\r\n  };\r\n</script>\r\n\r\n<style lang=\"scss\" scoped>\r\n  .controls {\r\n    padding: 0 10px 4px 10px;\r\n    margin: 0 1px;\r\n    position: relative;\r\n    &.has-image {\r\n      top: -25px;\r\n      background-image: linear-gradient(to bottom, transparent -50%, white 100%);\r\n    }\r\n\r\n    iframe {\r\n      height: 23px;\r\n      vertical-align: middle;\r\n      width: 20px;\r\n      display: inline-block;\r\n      overflow: hidden;\r\n      padding-top: 3px;\r\n      margin: -14px 0 0 -5px;\r\n    }\r\n    .clear-icon{\r\n      float: right;\r\n      cursor: pointer;\r\n      opacity: .3;\r\n      vertical-align: middle;\r\n      padding-top: 3px;\r\n\r\n      &:hover {\r\n        opacity: 1;\r\n      }\r\n    }\r\n  }\r\n  .preview-image-container {\r\n    position: relative;\r\n    width: 100%;\r\n    overflow: hidden;\r\n\r\n    &:before {\r\n      content: \"\";\r\n      display: block;\r\n      padding-top: 100%;\r\n    }\r\n\r\n    .preview-image {\r\n      position: absolute;\r\n      top: 0;\r\n      right: 0;\r\n      bottom: 0;\r\n      left: 0;\r\n      box-sizing: border-box;\r\n      border: 1px solid #ddd;\r\n      background-position: center;\r\n      background-size: contain;\r\n      background-repeat: no-repeat;\r\n    }\r\n  }\r\n</style>",".controls {\n  padding: 0 10px 4px 10px;\n  margin: 0 1px;\n  position: relative; }\n  .controls.has-image {\n    top: -25px;\n    background-image: linear-gradient(to bottom, transparent -50%, white 100%); }\n  .controls iframe {\n    height: 23px;\n    vertical-align: middle;\n    width: 20px;\n    display: inline-block;\n    overflow: hidden;\n    padding-top: 3px;\n    margin: -14px 0 0 -5px; }\n  .controls .clear-icon {\n    float: right;\n    cursor: pointer;\n    opacity: .3;\n    vertical-align: middle;\n    padding-top: 3px; }\n    .controls .clear-icon:hover {\n      opacity: 1; }\n\n.preview-image-container {\n  position: relative;\n  width: 100%;\n  overflow: hidden; }\n  .preview-image-container:before {\n    content: \"\";\n    display: block;\n    padding-top: 100%; }\n  .preview-image-container .preview-image {\n    position: absolute;\n    top: 0;\n    right: 0;\n    bottom: 0;\n    left: 0;\n    box-sizing: border-box;\n    border: 1px solid #ddd;\n    background-position: center;\n    background-size: contain;\n    background-repeat: no-repeat; }\n\n/*# sourceMappingURL=imageUploader.vue.map */"]}, media: undefined });

      };
      /* scoped */
      var __vue_scope_id__$11 = "data-v-a543123c";
      /* module identifier */
      var __vue_module_identifier__$11 = undefined;
      /* functional template */
      var __vue_is_functional_template__$11 = false;
      /* style inject SSR */
      

      
      var imageUploader = normalizeComponent$1(
        { render: __vue_render__$D, staticRenderFns: __vue_staticRenderFns__$D },
        __vue_inject_styles__$11,
        __vue_script__$11,
        __vue_scope_id__$11,
        __vue_is_functional_template__$11,
        __vue_module_identifier__$11,
        createInjector,
        undefined
      );

    function _typeof(obj) {
      if (typeof Symbol === "function" && typeof Symbol.iterator === "symbol") {
        _typeof = function (obj) {
          return typeof obj;
        };
      } else {
        _typeof = function (obj) {
          return obj && typeof Symbol === "function" && obj.constructor === Symbol && obj !== Symbol.prototype ? "symbol" : typeof obj;
        };
      }

      return _typeof(obj);
    }

    var tinycolor = createCommonjsModule$2(function (module) {
      // TinyColor v1.4.1
      // https://github.com/bgrins/TinyColor
      // Brian Grinstead, MIT License
      (function (Math) {
        var trimLeft = /^\s+/,
            trimRight = /\s+$/,
            tinyCounter = 0,
            mathRound = Math.round,
            mathMin = Math.min,
            mathMax = Math.max,
            mathRandom = Math.random;

        function tinycolor(color, opts) {
          color = color ? color : '';
          opts = opts || {}; // If input is already a tinycolor, return itself

          if (color instanceof tinycolor) {
            return color;
          } // If we are called as a function, call using new instead


          if (!(this instanceof tinycolor)) {
            return new tinycolor(color, opts);
          }

          var rgb = inputToRGB(color);
          this._originalInput = color, this._r = rgb.r, this._g = rgb.g, this._b = rgb.b, this._a = rgb.a, this._roundA = mathRound(100 * this._a) / 100, this._format = opts.format || rgb.format;
          this._gradientType = opts.gradientType; // Don't let the range of [0,255] come back in [0,1].
          // Potentially lose a little bit of precision here, but will fix issues where
          // .5 gets interpreted as half of the total, instead of half of 1
          // If it was supposed to be 128, this was already taken care of by `inputToRgb`

          if (this._r < 1) {
            this._r = mathRound(this._r);
          }

          if (this._g < 1) {
            this._g = mathRound(this._g);
          }

          if (this._b < 1) {
            this._b = mathRound(this._b);
          }

          this._ok = rgb.ok;
          this._tc_id = tinyCounter++;
        }

        tinycolor.prototype = {
          isDark: function isDark() {
            return this.getBrightness() < 128;
          },
          isLight: function isLight() {
            return !this.isDark();
          },
          isValid: function isValid() {
            return this._ok;
          },
          getOriginalInput: function getOriginalInput() {
            return this._originalInput;
          },
          getFormat: function getFormat() {
            return this._format;
          },
          getAlpha: function getAlpha() {
            return this._a;
          },
          getBrightness: function getBrightness() {
            //http://www.w3.org/TR/AERT#color-contrast
            var rgb = this.toRgb();
            return (rgb.r * 299 + rgb.g * 587 + rgb.b * 114) / 1000;
          },
          getLuminance: function getLuminance() {
            //http://www.w3.org/TR/2008/REC-WCAG20-20081211/#relativeluminancedef
            var rgb = this.toRgb();
            var RsRGB, GsRGB, BsRGB, R, G, B;
            RsRGB = rgb.r / 255;
            GsRGB = rgb.g / 255;
            BsRGB = rgb.b / 255;

            if (RsRGB <= 0.03928) {
              R = RsRGB / 12.92;
            } else {
              R = Math.pow((RsRGB + 0.055) / 1.055, 2.4);
            }

            if (GsRGB <= 0.03928) {
              G = GsRGB / 12.92;
            } else {
              G = Math.pow((GsRGB + 0.055) / 1.055, 2.4);
            }

            if (BsRGB <= 0.03928) {
              B = BsRGB / 12.92;
            } else {
              B = Math.pow((BsRGB + 0.055) / 1.055, 2.4);
            }

            return 0.2126 * R + 0.7152 * G + 0.0722 * B;
          },
          setAlpha: function setAlpha(value) {
            this._a = boundAlpha(value);
            this._roundA = mathRound(100 * this._a) / 100;
            return this;
          },
          toHsv: function toHsv() {
            var hsv = rgbToHsv(this._r, this._g, this._b);
            return {
              h: hsv.h * 360,
              s: hsv.s,
              v: hsv.v,
              a: this._a
            };
          },
          toHsvString: function toHsvString() {
            var hsv = rgbToHsv(this._r, this._g, this._b);
            var h = mathRound(hsv.h * 360),
                s = mathRound(hsv.s * 100),
                v = mathRound(hsv.v * 100);
            return this._a == 1 ? "hsv(" + h + ", " + s + "%, " + v + "%)" : "hsva(" + h + ", " + s + "%, " + v + "%, " + this._roundA + ")";
          },
          toHsl: function toHsl() {
            var hsl = rgbToHsl(this._r, this._g, this._b);
            return {
              h: hsl.h * 360,
              s: hsl.s,
              l: hsl.l,
              a: this._a
            };
          },
          toHslString: function toHslString() {
            var hsl = rgbToHsl(this._r, this._g, this._b);
            var h = mathRound(hsl.h * 360),
                s = mathRound(hsl.s * 100),
                l = mathRound(hsl.l * 100);
            return this._a == 1 ? "hsl(" + h + ", " + s + "%, " + l + "%)" : "hsla(" + h + ", " + s + "%, " + l + "%, " + this._roundA + ")";
          },
          toHex: function toHex(allow3Char) {
            return rgbToHex(this._r, this._g, this._b, allow3Char);
          },
          toHexString: function toHexString(allow3Char) {
            return '#' + this.toHex(allow3Char);
          },
          toHex8: function toHex8(allow4Char) {
            return rgbaToHex(this._r, this._g, this._b, this._a, allow4Char);
          },
          toHex8String: function toHex8String(allow4Char) {
            return '#' + this.toHex8(allow4Char);
          },
          toRgb: function toRgb() {
            return {
              r: mathRound(this._r),
              g: mathRound(this._g),
              b: mathRound(this._b),
              a: this._a
            };
          },
          toRgbString: function toRgbString() {
            return this._a == 1 ? "rgb(" + mathRound(this._r) + ", " + mathRound(this._g) + ", " + mathRound(this._b) + ")" : "rgba(" + mathRound(this._r) + ", " + mathRound(this._g) + ", " + mathRound(this._b) + ", " + this._roundA + ")";
          },
          toPercentageRgb: function toPercentageRgb() {
            return {
              r: mathRound(bound01(this._r, 255) * 100) + "%",
              g: mathRound(bound01(this._g, 255) * 100) + "%",
              b: mathRound(bound01(this._b, 255) * 100) + "%",
              a: this._a
            };
          },
          toPercentageRgbString: function toPercentageRgbString() {
            return this._a == 1 ? "rgb(" + mathRound(bound01(this._r, 255) * 100) + "%, " + mathRound(bound01(this._g, 255) * 100) + "%, " + mathRound(bound01(this._b, 255) * 100) + "%)" : "rgba(" + mathRound(bound01(this._r, 255) * 100) + "%, " + mathRound(bound01(this._g, 255) * 100) + "%, " + mathRound(bound01(this._b, 255) * 100) + "%, " + this._roundA + ")";
          },
          toName: function toName() {
            if (this._a === 0) {
              return "transparent";
            }

            if (this._a < 1) {
              return false;
            }

            return hexNames[rgbToHex(this._r, this._g, this._b, true)] || false;
          },
          toFilter: function toFilter(secondColor) {
            var hex8String = '#' + rgbaToArgbHex(this._r, this._g, this._b, this._a);
            var secondHex8String = hex8String;
            var gradientType = this._gradientType ? "GradientType = 1, " : "";

            if (secondColor) {
              var s = tinycolor(secondColor);
              secondHex8String = '#' + rgbaToArgbHex(s._r, s._g, s._b, s._a);
            }

            return "progid:DXImageTransform.Microsoft.gradient(" + gradientType + "startColorstr=" + hex8String + ",endColorstr=" + secondHex8String + ")";
          },
          toString: function toString(format) {
            var formatSet = !!format;
            format = format || this._format;
            var formattedString = false;
            var hasAlpha = this._a < 1 && this._a >= 0;
            var needsAlphaFormat = !formatSet && hasAlpha && (format === "hex" || format === "hex6" || format === "hex3" || format === "hex4" || format === "hex8" || format === "name");

            if (needsAlphaFormat) {
              // Special case for "transparent", all other non-alpha formats
              // will return rgba when there is transparency.
              if (format === "name" && this._a === 0) {
                return this.toName();
              }

              return this.toRgbString();
            }

            if (format === "rgb") {
              formattedString = this.toRgbString();
            }

            if (format === "prgb") {
              formattedString = this.toPercentageRgbString();
            }

            if (format === "hex" || format === "hex6") {
              formattedString = this.toHexString();
            }

            if (format === "hex3") {
              formattedString = this.toHexString(true);
            }

            if (format === "hex4") {
              formattedString = this.toHex8String(true);
            }

            if (format === "hex8") {
              formattedString = this.toHex8String();
            }

            if (format === "name") {
              formattedString = this.toName();
            }

            if (format === "hsl") {
              formattedString = this.toHslString();
            }

            if (format === "hsv") {
              formattedString = this.toHsvString();
            }

            return formattedString || this.toHexString();
          },
          clone: function clone() {
            return tinycolor(this.toString());
          },
          _applyModification: function _applyModification(fn, args) {
            var color = fn.apply(null, [this].concat([].slice.call(args)));
            this._r = color._r;
            this._g = color._g;
            this._b = color._b;
            this.setAlpha(color._a);
            return this;
          },
          lighten: function lighten() {
            return this._applyModification(_lighten, arguments);
          },
          brighten: function brighten() {
            return this._applyModification(_brighten, arguments);
          },
          darken: function darken() {
            return this._applyModification(_darken, arguments);
          },
          desaturate: function desaturate() {
            return this._applyModification(_desaturate, arguments);
          },
          saturate: function saturate() {
            return this._applyModification(_saturate, arguments);
          },
          greyscale: function greyscale() {
            return this._applyModification(_greyscale, arguments);
          },
          spin: function spin() {
            return this._applyModification(_spin, arguments);
          },
          _applyCombination: function _applyCombination(fn, args) {
            return fn.apply(null, [this].concat([].slice.call(args)));
          },
          analogous: function analogous() {
            return this._applyCombination(_analogous, arguments);
          },
          complement: function complement() {
            return this._applyCombination(_complement, arguments);
          },
          monochromatic: function monochromatic() {
            return this._applyCombination(_monochromatic, arguments);
          },
          splitcomplement: function splitcomplement() {
            return this._applyCombination(_splitcomplement, arguments);
          },
          triad: function triad() {
            return this._applyCombination(_triad, arguments);
          },
          tetrad: function tetrad() {
            return this._applyCombination(_tetrad, arguments);
          }
        }; // If input is an object, force 1 into "1.0" to handle ratios properly
        // String input requires "1.0" as input, so 1 will be treated as 1

        tinycolor.fromRatio = function (color, opts) {
          if (_typeof(color) == "object") {
            var newColor = {};

            for (var i in color) {
              if (color.hasOwnProperty(i)) {
                if (i === "a") {
                  newColor[i] = color[i];
                } else {
                  newColor[i] = convertToPercentage(color[i]);
                }
              }
            }

            color = newColor;
          }

          return tinycolor(color, opts);
        }; // Given a string or object, convert that input to RGB
        // Possible string inputs:
        //
        //     "red"
        //     "#f00" or "f00"
        //     "#ff0000" or "ff0000"
        //     "#ff000000" or "ff000000"
        //     "rgb 255 0 0" or "rgb (255, 0, 0)"
        //     "rgb 1.0 0 0" or "rgb (1, 0, 0)"
        //     "rgba (255, 0, 0, 1)" or "rgba 255, 0, 0, 1"
        //     "rgba (1.0, 0, 0, 1)" or "rgba 1.0, 0, 0, 1"
        //     "hsl(0, 100%, 50%)" or "hsl 0 100% 50%"
        //     "hsla(0, 100%, 50%, 1)" or "hsla 0 100% 50%, 1"
        //     "hsv(0, 100%, 100%)" or "hsv 0 100% 100%"
        //


        function inputToRGB(color) {
          var rgb = {
            r: 0,
            g: 0,
            b: 0
          };
          var a = 1;
          var s = null;
          var v = null;
          var l = null;
          var ok = false;
          var format = false;

          if (typeof color == "string") {
            color = stringInputToObject(color);
          }

          if (_typeof(color) == "object") {
            if (isValidCSSUnit(color.r) && isValidCSSUnit(color.g) && isValidCSSUnit(color.b)) {
              rgb = rgbToRgb(color.r, color.g, color.b);
              ok = true;
              format = String(color.r).substr(-1) === "%" ? "prgb" : "rgb";
            } else if (isValidCSSUnit(color.h) && isValidCSSUnit(color.s) && isValidCSSUnit(color.v)) {
              s = convertToPercentage(color.s);
              v = convertToPercentage(color.v);
              rgb = hsvToRgb(color.h, s, v);
              ok = true;
              format = "hsv";
            } else if (isValidCSSUnit(color.h) && isValidCSSUnit(color.s) && isValidCSSUnit(color.l)) {
              s = convertToPercentage(color.s);
              l = convertToPercentage(color.l);
              rgb = hslToRgb(color.h, s, l);
              ok = true;
              format = "hsl";
            }

            if (color.hasOwnProperty("a")) {
              a = color.a;
            }
          }

          a = boundAlpha(a);
          return {
            ok: ok,
            format: color.format || format,
            r: mathMin(255, mathMax(rgb.r, 0)),
            g: mathMin(255, mathMax(rgb.g, 0)),
            b: mathMin(255, mathMax(rgb.b, 0)),
            a: a
          };
        } // Conversion Functions
        // --------------------
        // `rgbToHsl`, `rgbToHsv`, `hslToRgb`, `hsvToRgb` modified from:
        // <http://mjijackson.com/2008/02/rgb-to-hsl-and-rgb-to-hsv-color-model-conversion-algorithms-in-javascript>
        // `rgbToRgb`
        // Handle bounds / percentage checking to conform to CSS color spec
        // <http://www.w3.org/TR/css3-color/>
        // *Assumes:* r, g, b in [0, 255] or [0, 1]
        // *Returns:* { r, g, b } in [0, 255]


        function rgbToRgb(r, g, b) {
          return {
            r: bound01(r, 255) * 255,
            g: bound01(g, 255) * 255,
            b: bound01(b, 255) * 255
          };
        } // `rgbToHsl`
        // Converts an RGB color value to HSL.
        // *Assumes:* r, g, and b are contained in [0, 255] or [0, 1]
        // *Returns:* { h, s, l } in [0,1]


        function rgbToHsl(r, g, b) {
          r = bound01(r, 255);
          g = bound01(g, 255);
          b = bound01(b, 255);
          var max = mathMax(r, g, b),
              min = mathMin(r, g, b);
          var h,
              s,
              l = (max + min) / 2;

          if (max == min) {
            h = s = 0; // achromatic
          } else {
            var d = max - min;
            s = l > 0.5 ? d / (2 - max - min) : d / (max + min);

            switch (max) {
              case r:
                h = (g - b) / d + (g < b ? 6 : 0);
                break;

              case g:
                h = (b - r) / d + 2;
                break;

              case b:
                h = (r - g) / d + 4;
                break;
            }

            h /= 6;
          }

          return {
            h: h,
            s: s,
            l: l
          };
        } // `hslToRgb`
        // Converts an HSL color value to RGB.
        // *Assumes:* h is contained in [0, 1] or [0, 360] and s and l are contained [0, 1] or [0, 100]
        // *Returns:* { r, g, b } in the set [0, 255]


        function hslToRgb(h, s, l) {
          var r, g, b;
          h = bound01(h, 360);
          s = bound01(s, 100);
          l = bound01(l, 100);

          function hue2rgb(p, q, t) {
            if (t < 0) { t += 1; }
            if (t > 1) { t -= 1; }
            if (t < 1 / 6) { return p + (q - p) * 6 * t; }
            if (t < 1 / 2) { return q; }
            if (t < 2 / 3) { return p + (q - p) * (2 / 3 - t) * 6; }
            return p;
          }

          if (s === 0) {
            r = g = b = l; // achromatic
          } else {
            var q = l < 0.5 ? l * (1 + s) : l + s - l * s;
            var p = 2 * l - q;
            r = hue2rgb(p, q, h + 1 / 3);
            g = hue2rgb(p, q, h);
            b = hue2rgb(p, q, h - 1 / 3);
          }

          return {
            r: r * 255,
            g: g * 255,
            b: b * 255
          };
        } // `rgbToHsv`
        // Converts an RGB color value to HSV
        // *Assumes:* r, g, and b are contained in the set [0, 255] or [0, 1]
        // *Returns:* { h, s, v } in [0,1]


        function rgbToHsv(r, g, b) {
          r = bound01(r, 255);
          g = bound01(g, 255);
          b = bound01(b, 255);
          var max = mathMax(r, g, b),
              min = mathMin(r, g, b);
          var h,
              s,
              v = max;
          var d = max - min;
          s = max === 0 ? 0 : d / max;

          if (max == min) {
            h = 0; // achromatic
          } else {
            switch (max) {
              case r:
                h = (g - b) / d + (g < b ? 6 : 0);
                break;

              case g:
                h = (b - r) / d + 2;
                break;

              case b:
                h = (r - g) / d + 4;
                break;
            }

            h /= 6;
          }

          return {
            h: h,
            s: s,
            v: v
          };
        } // `hsvToRgb`
        // Converts an HSV color value to RGB.
        // *Assumes:* h is contained in [0, 1] or [0, 360] and s and v are contained in [0, 1] or [0, 100]
        // *Returns:* { r, g, b } in the set [0, 255]


        function hsvToRgb(h, s, v) {
          h = bound01(h, 360) * 6;
          s = bound01(s, 100);
          v = bound01(v, 100);
          var i = Math.floor(h),
              f = h - i,
              p = v * (1 - s),
              q = v * (1 - f * s),
              t = v * (1 - (1 - f) * s),
              mod = i % 6,
              r = [v, q, p, p, t, v][mod],
              g = [t, v, v, q, p, p][mod],
              b = [p, p, t, v, v, q][mod];
          return {
            r: r * 255,
            g: g * 255,
            b: b * 255
          };
        } // `rgbToHex`
        // Converts an RGB color to hex
        // Assumes r, g, and b are contained in the set [0, 255]
        // Returns a 3 or 6 character hex


        function rgbToHex(r, g, b, allow3Char) {
          var hex = [pad2(mathRound(r).toString(16)), pad2(mathRound(g).toString(16)), pad2(mathRound(b).toString(16))]; // Return a 3 character hex if possible

          if (allow3Char && hex[0].charAt(0) == hex[0].charAt(1) && hex[1].charAt(0) == hex[1].charAt(1) && hex[2].charAt(0) == hex[2].charAt(1)) {
            return hex[0].charAt(0) + hex[1].charAt(0) + hex[2].charAt(0);
          }

          return hex.join("");
        } // `rgbaToHex`
        // Converts an RGBA color plus alpha transparency to hex
        // Assumes r, g, b are contained in the set [0, 255] and
        // a in [0, 1]. Returns a 4 or 8 character rgba hex


        function rgbaToHex(r, g, b, a, allow4Char) {
          var hex = [pad2(mathRound(r).toString(16)), pad2(mathRound(g).toString(16)), pad2(mathRound(b).toString(16)), pad2(convertDecimalToHex(a))]; // Return a 4 character hex if possible

          if (allow4Char && hex[0].charAt(0) == hex[0].charAt(1) && hex[1].charAt(0) == hex[1].charAt(1) && hex[2].charAt(0) == hex[2].charAt(1) && hex[3].charAt(0) == hex[3].charAt(1)) {
            return hex[0].charAt(0) + hex[1].charAt(0) + hex[2].charAt(0) + hex[3].charAt(0);
          }

          return hex.join("");
        } // `rgbaToArgbHex`
        // Converts an RGBA color to an ARGB Hex8 string
        // Rarely used, but required for "toFilter()"


        function rgbaToArgbHex(r, g, b, a) {
          var hex = [pad2(convertDecimalToHex(a)), pad2(mathRound(r).toString(16)), pad2(mathRound(g).toString(16)), pad2(mathRound(b).toString(16))];
          return hex.join("");
        } // `equals`
        // Can be called with any tinycolor input


        tinycolor.equals = function (color1, color2) {
          if (!color1 || !color2) {
            return false;
          }

          return tinycolor(color1).toRgbString() == tinycolor(color2).toRgbString();
        };

        tinycolor.random = function () {
          return tinycolor.fromRatio({
            r: mathRandom(),
            g: mathRandom(),
            b: mathRandom()
          });
        }; // Modification Functions
        // ----------------------
        // Thanks to less.js for some of the basics here
        // <https://github.com/cloudhead/less.js/blob/master/lib/less/functions.js>


        function _desaturate(color, amount) {
          amount = amount === 0 ? 0 : amount || 10;
          var hsl = tinycolor(color).toHsl();
          hsl.s -= amount / 100;
          hsl.s = clamp01(hsl.s);
          return tinycolor(hsl);
        }

        function _saturate(color, amount) {
          amount = amount === 0 ? 0 : amount || 10;
          var hsl = tinycolor(color).toHsl();
          hsl.s += amount / 100;
          hsl.s = clamp01(hsl.s);
          return tinycolor(hsl);
        }

        function _greyscale(color) {
          return tinycolor(color).desaturate(100);
        }

        function _lighten(color, amount) {
          amount = amount === 0 ? 0 : amount || 10;
          var hsl = tinycolor(color).toHsl();
          hsl.l += amount / 100;
          hsl.l = clamp01(hsl.l);
          return tinycolor(hsl);
        }

        function _brighten(color, amount) {
          amount = amount === 0 ? 0 : amount || 10;
          var rgb = tinycolor(color).toRgb();
          rgb.r = mathMax(0, mathMin(255, rgb.r - mathRound(255 * -(amount / 100))));
          rgb.g = mathMax(0, mathMin(255, rgb.g - mathRound(255 * -(amount / 100))));
          rgb.b = mathMax(0, mathMin(255, rgb.b - mathRound(255 * -(amount / 100))));
          return tinycolor(rgb);
        }

        function _darken(color, amount) {
          amount = amount === 0 ? 0 : amount || 10;
          var hsl = tinycolor(color).toHsl();
          hsl.l -= amount / 100;
          hsl.l = clamp01(hsl.l);
          return tinycolor(hsl);
        } // Spin takes a positive or negative amount within [-360, 360] indicating the change of hue.
        // Values outside of this range will be wrapped into this range.


        function _spin(color, amount) {
          var hsl = tinycolor(color).toHsl();
          var hue = (hsl.h + amount) % 360;
          hsl.h = hue < 0 ? 360 + hue : hue;
          return tinycolor(hsl);
        } // Combination Functions
        // ---------------------
        // Thanks to jQuery xColor for some of the ideas behind these
        // <https://github.com/infusion/jQuery-xcolor/blob/master/jquery.xcolor.js>


        function _complement(color) {
          var hsl = tinycolor(color).toHsl();
          hsl.h = (hsl.h + 180) % 360;
          return tinycolor(hsl);
        }

        function _triad(color) {
          var hsl = tinycolor(color).toHsl();
          var h = hsl.h;
          return [tinycolor(color), tinycolor({
            h: (h + 120) % 360,
            s: hsl.s,
            l: hsl.l
          }), tinycolor({
            h: (h + 240) % 360,
            s: hsl.s,
            l: hsl.l
          })];
        }

        function _tetrad(color) {
          var hsl = tinycolor(color).toHsl();
          var h = hsl.h;
          return [tinycolor(color), tinycolor({
            h: (h + 90) % 360,
            s: hsl.s,
            l: hsl.l
          }), tinycolor({
            h: (h + 180) % 360,
            s: hsl.s,
            l: hsl.l
          }), tinycolor({
            h: (h + 270) % 360,
            s: hsl.s,
            l: hsl.l
          })];
        }

        function _splitcomplement(color) {
          var hsl = tinycolor(color).toHsl();
          var h = hsl.h;
          return [tinycolor(color), tinycolor({
            h: (h + 72) % 360,
            s: hsl.s,
            l: hsl.l
          }), tinycolor({
            h: (h + 216) % 360,
            s: hsl.s,
            l: hsl.l
          })];
        }

        function _analogous(color, results, slices) {
          results = results || 6;
          slices = slices || 30;
          var hsl = tinycolor(color).toHsl();
          var part = 360 / slices;
          var ret = [tinycolor(color)];

          for (hsl.h = (hsl.h - (part * results >> 1) + 720) % 360; --results;) {
            hsl.h = (hsl.h + part) % 360;
            ret.push(tinycolor(hsl));
          }

          return ret;
        }

        function _monochromatic(color, results) {
          results = results || 6;
          var hsv = tinycolor(color).toHsv();
          var h = hsv.h,
              s = hsv.s,
              v = hsv.v;
          var ret = [];
          var modification = 1 / results;

          while (results--) {
            ret.push(tinycolor({
              h: h,
              s: s,
              v: v
            }));
            v = (v + modification) % 1;
          }

          return ret;
        } // Utility Functions
        // ---------------------


        tinycolor.mix = function (color1, color2, amount) {
          amount = amount === 0 ? 0 : amount || 50;
          var rgb1 = tinycolor(color1).toRgb();
          var rgb2 = tinycolor(color2).toRgb();
          var p = amount / 100;
          var rgba = {
            r: (rgb2.r - rgb1.r) * p + rgb1.r,
            g: (rgb2.g - rgb1.g) * p + rgb1.g,
            b: (rgb2.b - rgb1.b) * p + rgb1.b,
            a: (rgb2.a - rgb1.a) * p + rgb1.a
          };
          return tinycolor(rgba);
        }; // Readability Functions
        // ---------------------
        // <http://www.w3.org/TR/2008/REC-WCAG20-20081211/#contrast-ratiodef (WCAG Version 2)
        // `contrast`
        // Analyze the 2 colors and returns the color contrast defined by (WCAG Version 2)


        tinycolor.readability = function (color1, color2) {
          var c1 = tinycolor(color1);
          var c2 = tinycolor(color2);
          return (Math.max(c1.getLuminance(), c2.getLuminance()) + 0.05) / (Math.min(c1.getLuminance(), c2.getLuminance()) + 0.05);
        }; // `isReadable`
        // Ensure that foreground and background color combinations meet WCAG2 guidelines.
        // The third argument is an optional Object.
        //      the 'level' property states 'AA' or 'AAA' - if missing or invalid, it defaults to 'AA';
        //      the 'size' property states 'large' or 'small' - if missing or invalid, it defaults to 'small'.
        // If the entire object is absent, isReadable defaults to {level:"AA",size:"small"}.
        // *Example*
        //    tinycolor.isReadable("#000", "#111") => false
        //    tinycolor.isReadable("#000", "#111",{level:"AA",size:"large"}) => false


        tinycolor.isReadable = function (color1, color2, wcag2) {
          var readability = tinycolor.readability(color1, color2);
          var wcag2Parms, out;
          out = false;
          wcag2Parms = validateWCAG2Parms(wcag2);

          switch (wcag2Parms.level + wcag2Parms.size) {
            case "AAsmall":
            case "AAAlarge":
              out = readability >= 4.5;
              break;

            case "AAlarge":
              out = readability >= 3;
              break;

            case "AAAsmall":
              out = readability >= 7;
              break;
          }

          return out;
        }; // `mostReadable`
        // Given a base color and a list of possible foreground or background
        // colors for that base, returns the most readable color.
        // Optionally returns Black or White if the most readable color is unreadable.
        // *Example*
        //    tinycolor.mostReadable(tinycolor.mostReadable("#123", ["#124", "#125"],{includeFallbackColors:false}).toHexString(); // "#112255"
        //    tinycolor.mostReadable(tinycolor.mostReadable("#123", ["#124", "#125"],{includeFallbackColors:true}).toHexString();  // "#ffffff"
        //    tinycolor.mostReadable("#a8015a", ["#faf3f3"],{includeFallbackColors:true,level:"AAA",size:"large"}).toHexString(); // "#faf3f3"
        //    tinycolor.mostReadable("#a8015a", ["#faf3f3"],{includeFallbackColors:true,level:"AAA",size:"small"}).toHexString(); // "#ffffff"


        tinycolor.mostReadable = function (baseColor, colorList, args) {
          var bestColor = null;
          var bestScore = 0;
          var readability;
          var includeFallbackColors, level, size;
          args = args || {};
          includeFallbackColors = args.includeFallbackColors;
          level = args.level;
          size = args.size;

          for (var i = 0; i < colorList.length; i++) {
            readability = tinycolor.readability(baseColor, colorList[i]);

            if (readability > bestScore) {
              bestScore = readability;
              bestColor = tinycolor(colorList[i]);
            }
          }

          if (tinycolor.isReadable(baseColor, bestColor, {
            "level": level,
            "size": size
          }) || !includeFallbackColors) {
            return bestColor;
          } else {
            args.includeFallbackColors = false;
            return tinycolor.mostReadable(baseColor, ["#fff", "#000"], args);
          }
        }; // Big List of Colors
        // ------------------
        // <http://www.w3.org/TR/css3-color/#svg-color>


        var names = tinycolor.names = {
          aliceblue: "f0f8ff",
          antiquewhite: "faebd7",
          aqua: "0ff",
          aquamarine: "7fffd4",
          azure: "f0ffff",
          beige: "f5f5dc",
          bisque: "ffe4c4",
          black: "000",
          blanchedalmond: "ffebcd",
          blue: "00f",
          blueviolet: "8a2be2",
          brown: "a52a2a",
          burlywood: "deb887",
          burntsienna: "ea7e5d",
          cadetblue: "5f9ea0",
          chartreuse: "7fff00",
          chocolate: "d2691e",
          coral: "ff7f50",
          cornflowerblue: "6495ed",
          cornsilk: "fff8dc",
          crimson: "dc143c",
          cyan: "0ff",
          darkblue: "00008b",
          darkcyan: "008b8b",
          darkgoldenrod: "b8860b",
          darkgray: "a9a9a9",
          darkgreen: "006400",
          darkgrey: "a9a9a9",
          darkkhaki: "bdb76b",
          darkmagenta: "8b008b",
          darkolivegreen: "556b2f",
          darkorange: "ff8c00",
          darkorchid: "9932cc",
          darkred: "8b0000",
          darksalmon: "e9967a",
          darkseagreen: "8fbc8f",
          darkslateblue: "483d8b",
          darkslategray: "2f4f4f",
          darkslategrey: "2f4f4f",
          darkturquoise: "00ced1",
          darkviolet: "9400d3",
          deeppink: "ff1493",
          deepskyblue: "00bfff",
          dimgray: "696969",
          dimgrey: "696969",
          dodgerblue: "1e90ff",
          firebrick: "b22222",
          floralwhite: "fffaf0",
          forestgreen: "228b22",
          fuchsia: "f0f",
          gainsboro: "dcdcdc",
          ghostwhite: "f8f8ff",
          gold: "ffd700",
          goldenrod: "daa520",
          gray: "808080",
          green: "008000",
          greenyellow: "adff2f",
          grey: "808080",
          honeydew: "f0fff0",
          hotpink: "ff69b4",
          indianred: "cd5c5c",
          indigo: "4b0082",
          ivory: "fffff0",
          khaki: "f0e68c",
          lavender: "e6e6fa",
          lavenderblush: "fff0f5",
          lawngreen: "7cfc00",
          lemonchiffon: "fffacd",
          lightblue: "add8e6",
          lightcoral: "f08080",
          lightcyan: "e0ffff",
          lightgoldenrodyellow: "fafad2",
          lightgray: "d3d3d3",
          lightgreen: "90ee90",
          lightgrey: "d3d3d3",
          lightpink: "ffb6c1",
          lightsalmon: "ffa07a",
          lightseagreen: "20b2aa",
          lightskyblue: "87cefa",
          lightslategray: "789",
          lightslategrey: "789",
          lightsteelblue: "b0c4de",
          lightyellow: "ffffe0",
          lime: "0f0",
          limegreen: "32cd32",
          linen: "faf0e6",
          magenta: "f0f",
          maroon: "800000",
          mediumaquamarine: "66cdaa",
          mediumblue: "0000cd",
          mediumorchid: "ba55d3",
          mediumpurple: "9370db",
          mediumseagreen: "3cb371",
          mediumslateblue: "7b68ee",
          mediumspringgreen: "00fa9a",
          mediumturquoise: "48d1cc",
          mediumvioletred: "c71585",
          midnightblue: "191970",
          mintcream: "f5fffa",
          mistyrose: "ffe4e1",
          moccasin: "ffe4b5",
          navajowhite: "ffdead",
          navy: "000080",
          oldlace: "fdf5e6",
          olive: "808000",
          olivedrab: "6b8e23",
          orange: "ffa500",
          orangered: "ff4500",
          orchid: "da70d6",
          palegoldenrod: "eee8aa",
          palegreen: "98fb98",
          paleturquoise: "afeeee",
          palevioletred: "db7093",
          papayawhip: "ffefd5",
          peachpuff: "ffdab9",
          peru: "cd853f",
          pink: "ffc0cb",
          plum: "dda0dd",
          powderblue: "b0e0e6",
          purple: "800080",
          rebeccapurple: "663399",
          red: "f00",
          rosybrown: "bc8f8f",
          royalblue: "4169e1",
          saddlebrown: "8b4513",
          salmon: "fa8072",
          sandybrown: "f4a460",
          seagreen: "2e8b57",
          seashell: "fff5ee",
          sienna: "a0522d",
          silver: "c0c0c0",
          skyblue: "87ceeb",
          slateblue: "6a5acd",
          slategray: "708090",
          slategrey: "708090",
          snow: "fffafa",
          springgreen: "00ff7f",
          steelblue: "4682b4",
          tan: "d2b48c",
          teal: "008080",
          thistle: "d8bfd8",
          tomato: "ff6347",
          turquoise: "40e0d0",
          violet: "ee82ee",
          wheat: "f5deb3",
          white: "fff",
          whitesmoke: "f5f5f5",
          yellow: "ff0",
          yellowgreen: "9acd32"
        }; // Make it easy to access colors via `hexNames[hex]`

        var hexNames = tinycolor.hexNames = flip(names); // Utilities
        // ---------
        // `{ 'name1': 'val1' }` becomes `{ 'val1': 'name1' }`

        function flip(o) {
          var flipped = {};

          for (var i in o) {
            if (o.hasOwnProperty(i)) {
              flipped[o[i]] = i;
            }
          }

          return flipped;
        } // Return a valid alpha value [0,1] with all invalid values being set to 1


        function boundAlpha(a) {
          a = parseFloat(a);

          if (isNaN(a) || a < 0 || a > 1) {
            a = 1;
          }

          return a;
        } // Take input from [0, n] and return it as [0, 1]


        function bound01(n, max) {
          if (isOnePointZero(n)) {
            n = "100%";
          }

          var processPercent = isPercentage(n);
          n = mathMin(max, mathMax(0, parseFloat(n))); // Automatically convert percentage into number

          if (processPercent) {
            n = parseInt(n * max, 10) / 100;
          } // Handle floating point rounding errors


          if (Math.abs(n - max) < 0.000001) {
            return 1;
          } // Convert into [0, 1] range if it isn't already


          return n % max / parseFloat(max);
        } // Force a number between 0 and 1


        function clamp01(val) {
          return mathMin(1, mathMax(0, val));
        } // Parse a base-16 hex value into a base-10 integer


        function parseIntFromHex(val) {
          return parseInt(val, 16);
        } // Need to handle 1.0 as 100%, since once it is a number, there is no difference between it and 1
        // <http://stackoverflow.com/questions/7422072/javascript-how-to-detect-number-as-a-decimal-including-1-0>


        function isOnePointZero(n) {
          return typeof n == "string" && n.indexOf('.') != -1 && parseFloat(n) === 1;
        } // Check to see if string passed in is a percentage


        function isPercentage(n) {
          return typeof n === "string" && n.indexOf('%') != -1;
        } // Force a hex value to have 2 characters


        function pad2(c) {
          return c.length == 1 ? '0' + c : '' + c;
        } // Replace a decimal with it's percentage value


        function convertToPercentage(n) {
          if (n <= 1) {
            n = n * 100 + "%";
          }

          return n;
        } // Converts a decimal to a hex value


        function convertDecimalToHex(d) {
          return Math.round(parseFloat(d) * 255).toString(16);
        } // Converts a hex value to a decimal


        function convertHexToDecimal(h) {
          return parseIntFromHex(h) / 255;
        }

        var matchers = function () {
          // <http://www.w3.org/TR/css3-values/#integers>
          var CSS_INTEGER = "[-\\+]?\\d+%?"; // <http://www.w3.org/TR/css3-values/#number-value>

          var CSS_NUMBER = "[-\\+]?\\d*\\.\\d+%?"; // Allow positive/negative integer/number.  Don't capture the either/or, just the entire outcome.

          var CSS_UNIT = "(?:" + CSS_NUMBER + ")|(?:" + CSS_INTEGER + ")"; // Actual matching.
          // Parentheses and commas are optional, but not required.
          // Whitespace can take the place of commas or opening paren

          var PERMISSIVE_MATCH3 = "[\\s|\\(]+(" + CSS_UNIT + ")[,|\\s]+(" + CSS_UNIT + ")[,|\\s]+(" + CSS_UNIT + ")\\s*\\)?";
          var PERMISSIVE_MATCH4 = "[\\s|\\(]+(" + CSS_UNIT + ")[,|\\s]+(" + CSS_UNIT + ")[,|\\s]+(" + CSS_UNIT + ")[,|\\s]+(" + CSS_UNIT + ")\\s*\\)?";
          return {
            CSS_UNIT: new RegExp(CSS_UNIT),
            rgb: new RegExp("rgb" + PERMISSIVE_MATCH3),
            rgba: new RegExp("rgba" + PERMISSIVE_MATCH4),
            hsl: new RegExp("hsl" + PERMISSIVE_MATCH3),
            hsla: new RegExp("hsla" + PERMISSIVE_MATCH4),
            hsv: new RegExp("hsv" + PERMISSIVE_MATCH3),
            hsva: new RegExp("hsva" + PERMISSIVE_MATCH4),
            hex3: /^#?([0-9a-fA-F]{1})([0-9a-fA-F]{1})([0-9a-fA-F]{1})$/,
            hex6: /^#?([0-9a-fA-F]{2})([0-9a-fA-F]{2})([0-9a-fA-F]{2})$/,
            hex4: /^#?([0-9a-fA-F]{1})([0-9a-fA-F]{1})([0-9a-fA-F]{1})([0-9a-fA-F]{1})$/,
            hex8: /^#?([0-9a-fA-F]{2})([0-9a-fA-F]{2})([0-9a-fA-F]{2})([0-9a-fA-F]{2})$/
          };
        }(); // `isValidCSSUnit`
        // Take in a single string / number and check to see if it looks like a CSS unit
        // (see `matchers` above for definition).


        function isValidCSSUnit(color) {
          return !!matchers.CSS_UNIT.exec(color);
        } // `stringInputToObject`
        // Permissive string parsing.  Take in a number of formats, and output an object
        // based on detected format.  Returns `{ r, g, b }` or `{ h, s, l }` or `{ h, s, v}`


        function stringInputToObject(color) {
          color = color.replace(trimLeft, '').replace(trimRight, '').toLowerCase();
          var named = false;

          if (names[color]) {
            color = names[color];
            named = true;
          } else if (color == 'transparent') {
            return {
              r: 0,
              g: 0,
              b: 0,
              a: 0,
              format: "name"
            };
          } // Try to match string input using regular expressions.
          // Keep most of the number bounding out of this function - don't worry about [0,1] or [0,100] or [0,360]
          // Just return an object and let the conversion functions handle that.
          // This way the result will be the same whether the tinycolor is initialized with string or object.


          var match;

          if (match = matchers.rgb.exec(color)) {
            return {
              r: match[1],
              g: match[2],
              b: match[3]
            };
          }

          if (match = matchers.rgba.exec(color)) {
            return {
              r: match[1],
              g: match[2],
              b: match[3],
              a: match[4]
            };
          }

          if (match = matchers.hsl.exec(color)) {
            return {
              h: match[1],
              s: match[2],
              l: match[3]
            };
          }

          if (match = matchers.hsla.exec(color)) {
            return {
              h: match[1],
              s: match[2],
              l: match[3],
              a: match[4]
            };
          }

          if (match = matchers.hsv.exec(color)) {
            return {
              h: match[1],
              s: match[2],
              v: match[3]
            };
          }

          if (match = matchers.hsva.exec(color)) {
            return {
              h: match[1],
              s: match[2],
              v: match[3],
              a: match[4]
            };
          }

          if (match = matchers.hex8.exec(color)) {
            return {
              r: parseIntFromHex(match[1]),
              g: parseIntFromHex(match[2]),
              b: parseIntFromHex(match[3]),
              a: convertHexToDecimal(match[4]),
              format: named ? "name" : "hex8"
            };
          }

          if (match = matchers.hex6.exec(color)) {
            return {
              r: parseIntFromHex(match[1]),
              g: parseIntFromHex(match[2]),
              b: parseIntFromHex(match[3]),
              format: named ? "name" : "hex"
            };
          }

          if (match = matchers.hex4.exec(color)) {
            return {
              r: parseIntFromHex(match[1] + '' + match[1]),
              g: parseIntFromHex(match[2] + '' + match[2]),
              b: parseIntFromHex(match[3] + '' + match[3]),
              a: convertHexToDecimal(match[4] + '' + match[4]),
              format: named ? "name" : "hex8"
            };
          }

          if (match = matchers.hex3.exec(color)) {
            return {
              r: parseIntFromHex(match[1] + '' + match[1]),
              g: parseIntFromHex(match[2] + '' + match[2]),
              b: parseIntFromHex(match[3] + '' + match[3]),
              format: named ? "name" : "hex"
            };
          }

          return false;
        }

        function validateWCAG2Parms(parms) {
          // return valid WCAG2 parms for isReadable.
          // If input parms are invalid, return {"level":"AA", "size":"small"}
          var level, size;
          parms = parms || {
            "level": "AA",
            "size": "small"
          };
          level = (parms.level || "AA").toUpperCase();
          size = (parms.size || "small").toLowerCase();

          if (level !== "AA" && level !== "AAA") {
            level = "AA";
          }

          if (size !== "small" && size !== "large") {
            size = "small";
          }

          return {
            "level": level,
            "size": size
          };
        } // Node: Export function


        if (module.exports) {
          module.exports = tinycolor;
        } // AMD/requirejs: Define the module
        else {
              window.tinycolor = tinycolor;
            }
      })(Math);
    });

    var dom = createCommonjsModule$2(function (module, exports) {

      exports.__esModule = true;
      exports.isInContainer = exports.getScrollContainer = exports.isScroll = exports.getStyle = exports.once = exports.off = exports.on = undefined;

      var _typeof$$1 = typeof Symbol === "function" && _typeof(Symbol.iterator) === "symbol" ? function (obj) {
        return _typeof(obj);
      } : function (obj) {
        return obj && typeof Symbol === "function" && obj.constructor === Symbol && obj !== Symbol.prototype ? "symbol" : _typeof(obj);
      };
      /* istanbul ignore next */


      exports.hasClass = hasClass;
      exports.addClass = addClass;
      exports.removeClass = removeClass;
      exports.setStyle = setStyle;

      var _vue2 = _interopRequireDefault$$1(VueConstructor__default__default);

      function _interopRequireDefault$$1(obj) {
        return obj && obj.__esModule ? obj : {
          "default": obj
        };
      }

      var isServer = _vue2["default"].prototype.$isServer;
      var SPECIAL_CHARS_REGEXP = /([\:\-\_]+(.))/g;
      var MOZ_HACK_REGEXP = /^moz([A-Z])/;
      var ieVersion = isServer ? 0 : Number(document.documentMode);
      /* istanbul ignore next */

      var trim = function trim(string) {
        return (string || '').replace(/^[\s\uFEFF]+|[\s\uFEFF]+$/g, '');
      };
      /* istanbul ignore next */


      var camelCase = function camelCase(name) {
        return name.replace(SPECIAL_CHARS_REGEXP, function (_, separator, letter, offset) {
          return offset ? letter.toUpperCase() : letter;
        }).replace(MOZ_HACK_REGEXP, 'Moz$1');
      };
      /* istanbul ignore next */


      var on = exports.on = function () {
        if (!isServer && document.addEventListener) {
          return function (element, event, handler) {
            if (element && event && handler) {
              element.addEventListener(event, handler, false);
            }
          };
        } else {
          return function (element, event, handler) {
            if (element && event && handler) {
              element.attachEvent('on' + event, handler);
            }
          };
        }
      }();
      /* istanbul ignore next */


      var off = exports.off = function () {
        if (!isServer && document.removeEventListener) {
          return function (element, event, handler) {
            if (element && event) {
              element.removeEventListener(event, handler, false);
            }
          };
        } else {
          return function (element, event, handler) {
            if (element && event) {
              element.detachEvent('on' + event, handler);
            }
          };
        }
      }();
      /* istanbul ignore next */


      var once = exports.once = function once(el, event, fn) {
        var listener = function listener() {
          if (fn) {
            fn.apply(this, arguments);
          }

          off(el, event, listener);
        };

        on(el, event, listener);
      };
      /* istanbul ignore next */


      function hasClass(el, cls) {
        if (!el || !cls) { return false; }
        if (cls.indexOf(' ') !== -1) { throw new Error('className should not contain space.'); }

        if (el.classList) {
          return el.classList.contains(cls);
        } else {
          return (' ' + el.className + ' ').indexOf(' ' + cls + ' ') > -1;
        }
      }
      /* istanbul ignore next */

      function addClass(el, cls) {
        if (!el) { return; }
        var curClass = el.className;
        var classes = (cls || '').split(' ');

        for (var i = 0, j = classes.length; i < j; i++) {
          var clsName = classes[i];
          if (!clsName) { continue; }

          if (el.classList) {
            el.classList.add(clsName);
          } else if (!hasClass(el, clsName)) {
            curClass += ' ' + clsName;
          }
        }

        if (!el.classList) {
          el.className = curClass;
        }
      }
      /* istanbul ignore next */

      function removeClass(el, cls) {
        if (!el || !cls) { return; }
        var classes = cls.split(' ');
        var curClass = ' ' + el.className + ' ';

        for (var i = 0, j = classes.length; i < j; i++) {
          var clsName = classes[i];
          if (!clsName) { continue; }

          if (el.classList) {
            el.classList.remove(clsName);
          } else if (hasClass(el, clsName)) {
            curClass = curClass.replace(' ' + clsName + ' ', ' ');
          }
        }

        if (!el.classList) {
          el.className = trim(curClass);
        }
      }
      /* istanbul ignore next */

      var getStyle = exports.getStyle = ieVersion < 9 ? function (element, styleName) {
        if (isServer) { return; }
        if (!element || !styleName) { return null; }
        styleName = camelCase(styleName);

        if (styleName === 'float') {
          styleName = 'styleFloat';
        }

        try {
          switch (styleName) {
            case 'opacity':
              try {
                return element.filters.item('alpha').opacity / 100;
              } catch (e) {
                return 1.0;
              }

            default:
              return element.style[styleName] || element.currentStyle ? element.currentStyle[styleName] : null;
          }
        } catch (e) {
          return element.style[styleName];
        }
      } : function (element, styleName) {
        if (isServer) { return; }
        if (!element || !styleName) { return null; }
        styleName = camelCase(styleName);

        if (styleName === 'float') {
          styleName = 'cssFloat';
        }

        try {
          var computed = document.defaultView.getComputedStyle(element, '');
          return element.style[styleName] || computed ? computed[styleName] : null;
        } catch (e) {
          return element.style[styleName];
        }
      };
      /* istanbul ignore next */

      function setStyle(element, styleName, value) {
        if (!element || !styleName) { return; }

        if ((typeof styleName === 'undefined' ? 'undefined' : _typeof$$1(styleName)) === 'object') {
          for (var prop in styleName) {
            if (styleName.hasOwnProperty(prop)) {
              setStyle(element, prop, styleName[prop]);
            }
          }
        } else {
          styleName = camelCase(styleName);

          if (styleName === 'opacity' && ieVersion < 9) {
            element.style.filter = isNaN(value) ? '' : 'alpha(opacity=' + value * 100 + ')';
          } else {
            element.style[styleName] = value;
          }
        }
      }

      var isScroll = exports.isScroll = function isScroll(el, vertical) {
        if (isServer) { return; }
        var determinedDirection = vertical !== null || vertical !== undefined;
        var overflow = determinedDirection ? vertical ? getStyle(el, 'overflow-y') : getStyle(el, 'overflow-x') : getStyle(el, 'overflow');
        return overflow.match(/(scroll|auto)/);
      };

      var getScrollContainer = exports.getScrollContainer = function getScrollContainer(el, vertical) {
        if (isServer) { return; }
        var parent = el;

        while (parent) {
          if ([window, document, document.documentElement].indexOf(parent) !== -1) {
            return window;
          }

          if (isScroll(parent, vertical)) {
            return parent;
          }

          parent = parent.parentNode;
        }

        return parent;
      };

      var isInContainer = exports.isInContainer = function isInContainer(el, container) {
        if (isServer || !el || !container) { return false; }
        var elRect = el.getBoundingClientRect();
        var containerRect = void 0;

        if ([window, document, document.documentElement, null, undefined].indexOf(container) !== -1) {
          containerRect = {
            top: 0,
            right: window.innerWidth,
            bottom: window.innerHeight,
            left: 0
          };
        } else {
          containerRect = container.getBoundingClientRect();
        }

        return elRect.top < containerRect.bottom && elRect.bottom > containerRect.top && elRect.right > containerRect.left && elRect.left < containerRect.right;
      };
    });
    unwrapExports$1(dom);
    var dom_1 = dom.isInContainer;
    var dom_2 = dom.getScrollContainer;
    var dom_3 = dom.isScroll;
    var dom_4 = dom.getStyle;
    var dom_5 = dom.once;
    var dom_6 = dom.off;
    var dom_7 = dom.on;
    var dom_8 = dom.hasClass;
    var dom_9 = dom.addClass;
    var dom_10 = dom.removeClass;
    var dom_11 = dom.setStyle;

    var clickoutside = createCommonjsModule$2(function (module, exports) {

      exports.__esModule = true;

      var _vue2 = _interopRequireDefault(VueConstructor__default__default);

      function _interopRequireDefault(obj) {
        return obj && obj.__esModule ? obj : {
          "default": obj
        };
      }

      var nodeList = [];
      var ctx = '@@clickoutsideContext';
      var startClick = void 0;
      var seed = 0;
      !_vue2["default"].prototype.$isServer && (0, dom.on)(document, 'mousedown', function (e) {
        return startClick = e;
      });
      !_vue2["default"].prototype.$isServer && (0, dom.on)(document, 'mouseup', function (e) {
        nodeList.forEach(function (node) {
          return node[ctx].documentHandler(e, startClick);
        });
      });

      function createDocumentHandler(el, binding, vnode) {
        return function () {
          var mouseup = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};
          var mousedown = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};
          if (!vnode || !vnode.context || !mouseup.target || !mousedown.target || el.contains(mouseup.target) || el.contains(mousedown.target) || el === mouseup.target || vnode.context.popperElm && (vnode.context.popperElm.contains(mouseup.target) || vnode.context.popperElm.contains(mousedown.target))) { return; }

          if (binding.expression && el[ctx].methodName && vnode.context[el[ctx].methodName]) {
            vnode.context[el[ctx].methodName]();
          } else {
            el[ctx].bindingFn && el[ctx].bindingFn();
          }
        };
      }
      /**
       * v-clickoutside
       * @desc 点击元素外面才会触发的事件
       * @example
       * ```vue
       * <div v-element-clickoutside="handleClose">
       * ```
       */


      exports["default"] = {
        bind: function bind(el, binding, vnode) {
          nodeList.push(el);
          var id = seed++;
          el[ctx] = {
            id: id,
            documentHandler: createDocumentHandler(el, binding, vnode),
            methodName: binding.expression,
            bindingFn: binding.value
          };
        },
        update: function update(el, binding, vnode) {
          el[ctx].documentHandler = createDocumentHandler(el, binding, vnode);
          el[ctx].methodName = binding.expression;
          el[ctx].bindingFn = binding.value;
        },
        unbind: function unbind(el) {
          var len = nodeList.length;

          for (var i = 0; i < len; i++) {
            if (nodeList[i][ctx].id === el[ctx].id) {
              nodeList.splice(i, 1);
              break;
            }
          }

          delete el[ctx];
        }
      };
    });
    var Clickoutside = unwrapExports$1(clickoutside);

    var merge = createCommonjsModule$2(function (module, exports) {

      exports.__esModule = true;

      exports["default"] = function (target) {
        var arguments$1 = arguments;

        for (var i = 1, j = arguments.length; i < j; i++) {
          var source = arguments$1[i] || {};

          for (var prop in source) {
            if (source.hasOwnProperty(prop)) {
              var value = source[prop];

              if (value !== undefined) {
                target[prop] = value;
              }
            }
          }
        }

        return target;
      };
    });
    unwrapExports$1(merge);

    var popupManager = createCommonjsModule$2(function (module, exports) {

      exports.__esModule = true;

      var _vue2 = _interopRequireDefault(VueConstructor__default__default);

      function _interopRequireDefault(obj) {
        return obj && obj.__esModule ? obj : {
          "default": obj
        };
      }

      var hasModal = false;
      var hasInitZIndex = false;
      var zIndex = void 0;

      var getModal = function getModal() {
        if (_vue2["default"].prototype.$isServer) { return; }
        var modalDom = PopupManager.modalDom;

        if (modalDom) {
          hasModal = true;
        } else {
          hasModal = false;
          modalDom = document.createElement('div');
          PopupManager.modalDom = modalDom;
          modalDom.addEventListener('touchmove', function (event) {
            event.preventDefault();
            event.stopPropagation();
          });
          modalDom.addEventListener('click', function () {
            PopupManager.doOnModalClick && PopupManager.doOnModalClick();
          });
        }

        return modalDom;
      };

      var instances = {};
      var PopupManager = {
        modalFade: true,
        getInstance: function getInstance(id) {
          return instances[id];
        },
        register: function register(id, instance) {
          if (id && instance) {
            instances[id] = instance;
          }
        },
        deregister: function deregister(id) {
          if (id) {
            instances[id] = null;
            delete instances[id];
          }
        },
        nextZIndex: function nextZIndex() {
          return PopupManager.zIndex++;
        },
        modalStack: [],
        doOnModalClick: function doOnModalClick() {
          var topItem = PopupManager.modalStack[PopupManager.modalStack.length - 1];
          if (!topItem) { return; }
          var instance = PopupManager.getInstance(topItem.id);

          if (instance && instance.closeOnClickModal) {
            instance.close();
          }
        },
        openModal: function openModal(id, zIndex, dom$$1, modalClass, modalFade) {
          if (_vue2["default"].prototype.$isServer) { return; }
          if (!id || zIndex === undefined) { return; }
          this.modalFade = modalFade;
          var modalStack = this.modalStack;

          for (var i = 0, j = modalStack.length; i < j; i++) {
            var item = modalStack[i];

            if (item.id === id) {
              return;
            }
          }

          var modalDom = getModal();
          (0, dom.addClass)(modalDom, 'v-modal');

          if (this.modalFade && !hasModal) {
            (0, dom.addClass)(modalDom, 'v-modal-enter');
          }

          if (modalClass) {
            var classArr = modalClass.trim().split(/\s+/);
            classArr.forEach(function (item) {
              return (0, dom.addClass)(modalDom, item);
            });
          }

          setTimeout(function () {
            (0, dom.removeClass)(modalDom, 'v-modal-enter');
          }, 200);

          if (dom$$1 && dom$$1.parentNode && dom$$1.parentNode.nodeType !== 11) {
            dom$$1.parentNode.appendChild(modalDom);
          } else {
            document.body.appendChild(modalDom);
          }

          if (zIndex) {
            modalDom.style.zIndex = zIndex;
          }

          modalDom.tabIndex = 0;
          modalDom.style.display = '';
          this.modalStack.push({
            id: id,
            zIndex: zIndex,
            modalClass: modalClass
          });
        },
        closeModal: function closeModal(id) {
          var modalStack = this.modalStack;
          var modalDom = getModal();

          if (modalStack.length > 0) {
            var topItem = modalStack[modalStack.length - 1];

            if (topItem.id === id) {
              if (topItem.modalClass) {
                var classArr = topItem.modalClass.trim().split(/\s+/);
                classArr.forEach(function (item) {
                  return (0, dom.removeClass)(modalDom, item);
                });
              }

              modalStack.pop();

              if (modalStack.length > 0) {
                modalDom.style.zIndex = modalStack[modalStack.length - 1].zIndex;
              }
            } else {
              for (var i = modalStack.length - 1; i >= 0; i--) {
                if (modalStack[i].id === id) {
                  modalStack.splice(i, 1);
                  break;
                }
              }
            }
          }

          if (modalStack.length === 0) {
            if (this.modalFade) {
              (0, dom.addClass)(modalDom, 'v-modal-leave');
            }

            setTimeout(function () {
              if (modalStack.length === 0) {
                if (modalDom.parentNode) { modalDom.parentNode.removeChild(modalDom); }
                modalDom.style.display = 'none';
                PopupManager.modalDom = undefined;
              }

              (0, dom.removeClass)(modalDom, 'v-modal-leave');
            }, 200);
          }
        }
      };
      Object.defineProperty(PopupManager, 'zIndex', {
        configurable: true,
        get: function get() {
          if (!hasInitZIndex) {
            zIndex = zIndex || (_vue2["default"].prototype.$ELEMENT || {}).zIndex || 2000;
            hasInitZIndex = true;
          }

          return zIndex;
        },
        set: function set(value) {
          zIndex = value;
        }
      });

      var getTopPopup = function getTopPopup() {
        if (_vue2["default"].prototype.$isServer) { return; }

        if (PopupManager.modalStack.length > 0) {
          var topPopup = PopupManager.modalStack[PopupManager.modalStack.length - 1];
          if (!topPopup) { return; }
          var instance = PopupManager.getInstance(topPopup.id);
          return instance;
        }
      };

      if (!_vue2["default"].prototype.$isServer) {
        // handle `esc` key when the popup is shown
        window.addEventListener('keydown', function (event) {
          if (event.keyCode === 27) {
            var topPopup = getTopPopup();

            if (topPopup && topPopup.closeOnPressEscape) {
              topPopup.handleClose ? topPopup.handleClose() : topPopup.handleAction ? topPopup.handleAction('cancel') : topPopup.close();
            }
          }
        });
      }

      exports["default"] = PopupManager;
    });
    unwrapExports$1(popupManager);

    var scrollbarWidth = createCommonjsModule$2(function (module, exports) {

      exports.__esModule = true;

      exports["default"] = function () {
        if (_vue2["default"].prototype.$isServer) { return 0; }
        if (scrollBarWidth !== undefined) { return scrollBarWidth; }
        var outer = document.createElement('div');
        outer.className = 'el-scrollbar__wrap';
        outer.style.visibility = 'hidden';
        outer.style.width = '100px';
        outer.style.position = 'absolute';
        outer.style.top = '-9999px';
        document.body.appendChild(outer);
        var widthNoScroll = outer.offsetWidth;
        outer.style.overflow = 'scroll';
        var inner = document.createElement('div');
        inner.style.width = '100%';
        outer.appendChild(inner);
        var widthWithScroll = inner.offsetWidth;
        outer.parentNode.removeChild(outer);
        scrollBarWidth = widthNoScroll - widthWithScroll;
        return scrollBarWidth;
      };

      var _vue2 = _interopRequireDefault(VueConstructor__default__default);

      function _interopRequireDefault(obj) {
        return obj && obj.__esModule ? obj : {
          "default": obj
        };
      }

      var scrollBarWidth = void 0;
    });
    unwrapExports$1(scrollbarWidth);

    var popup = createCommonjsModule$2(function (module, exports) {

      exports.__esModule = true;
      exports.PopupManager = undefined;

      var _vue2 = _interopRequireDefault(VueConstructor__default__default);

      var _merge2 = _interopRequireDefault(merge);

      var _popupManager2 = _interopRequireDefault(popupManager);

      var _scrollbarWidth2 = _interopRequireDefault(scrollbarWidth);

      function _interopRequireDefault(obj) {
        return obj && obj.__esModule ? obj : {
          "default": obj
        };
      }

      var idSeed = 1;
      var scrollBarWidth = void 0;
      exports["default"] = {
        props: {
          visible: {
            type: Boolean,
            "default": false
          },
          openDelay: {},
          closeDelay: {},
          zIndex: {},
          modal: {
            type: Boolean,
            "default": false
          },
          modalFade: {
            type: Boolean,
            "default": true
          },
          modalClass: {},
          modalAppendToBody: {
            type: Boolean,
            "default": false
          },
          lockScroll: {
            type: Boolean,
            "default": true
          },
          closeOnPressEscape: {
            type: Boolean,
            "default": false
          },
          closeOnClickModal: {
            type: Boolean,
            "default": false
          }
        },
        beforeMount: function beforeMount() {
          this._popupId = 'popup-' + idSeed++;

          _popupManager2["default"].register(this._popupId, this);
        },
        beforeDestroy: function beforeDestroy() {
          _popupManager2["default"].deregister(this._popupId);

          _popupManager2["default"].closeModal(this._popupId);

          this.restoreBodyStyle();
        },
        data: function data() {
          return {
            opened: false,
            bodyPaddingRight: null,
            computedBodyPaddingRight: 0,
            withoutHiddenClass: true,
            rendered: false
          };
        },
        watch: {
          visible: function visible(val) {
            var _this = this;

            if (val) {
              if (this._opening) { return; }

              if (!this.rendered) {
                this.rendered = true;

                _vue2["default"].nextTick(function () {
                  _this.open();
                });
              } else {
                this.open();
              }
            } else {
              this.close();
            }
          }
        },
        methods: {
          open: function open(options) {
            var _this2 = this;

            if (!this.rendered) {
              this.rendered = true;
            }

            var props = (0, _merge2["default"])({}, this.$props || this, options);

            if (this._closeTimer) {
              clearTimeout(this._closeTimer);
              this._closeTimer = null;
            }

            clearTimeout(this._openTimer);
            var openDelay = Number(props.openDelay);

            if (openDelay > 0) {
              this._openTimer = setTimeout(function () {
                _this2._openTimer = null;

                _this2.doOpen(props);
              }, openDelay);
            } else {
              this.doOpen(props);
            }
          },
          doOpen: function doOpen(props) {
            if (this.$isServer) { return; }
            if (this.willOpen && !this.willOpen()) { return; }
            if (this.opened) { return; }
            this._opening = true;
            var dom$$1 = this.$el;
            var modal = props.modal;
            var zIndex = props.zIndex;

            if (zIndex) {
              _popupManager2["default"].zIndex = zIndex;
            }

            if (modal) {
              if (this._closing) {
                _popupManager2["default"].closeModal(this._popupId);

                this._closing = false;
              }

              _popupManager2["default"].openModal(this._popupId, _popupManager2["default"].nextZIndex(), this.modalAppendToBody ? undefined : dom$$1, props.modalClass, props.modalFade);

              if (props.lockScroll) {
                this.withoutHiddenClass = !(0, dom.hasClass)(document.body, 'el-popup-parent--hidden');

                if (this.withoutHiddenClass) {
                  this.bodyPaddingRight = document.body.style.paddingRight;
                  this.computedBodyPaddingRight = parseInt((0, dom.getStyle)(document.body, 'paddingRight'), 10);
                }

                scrollBarWidth = (0, _scrollbarWidth2["default"])();
                var bodyHasOverflow = document.documentElement.clientHeight < document.body.scrollHeight;
                var bodyOverflowY = (0, dom.getStyle)(document.body, 'overflowY');

                if (scrollBarWidth > 0 && (bodyHasOverflow || bodyOverflowY === 'scroll') && this.withoutHiddenClass) {
                  document.body.style.paddingRight = this.computedBodyPaddingRight + scrollBarWidth + 'px';
                }

                (0, dom.addClass)(document.body, 'el-popup-parent--hidden');
              }
            }

            if (getComputedStyle(dom$$1).position === 'static') {
              dom$$1.style.position = 'absolute';
            }

            dom$$1.style.zIndex = _popupManager2["default"].nextZIndex();
            this.opened = true;
            this.onOpen && this.onOpen();
            this.doAfterOpen();
          },
          doAfterOpen: function doAfterOpen() {
            this._opening = false;
          },
          close: function close() {
            var _this3 = this;

            if (this.willClose && !this.willClose()) { return; }

            if (this._openTimer !== null) {
              clearTimeout(this._openTimer);
              this._openTimer = null;
            }

            clearTimeout(this._closeTimer);
            var closeDelay = Number(this.closeDelay);

            if (closeDelay > 0) {
              this._closeTimer = setTimeout(function () {
                _this3._closeTimer = null;

                _this3.doClose();
              }, closeDelay);
            } else {
              this.doClose();
            }
          },
          doClose: function doClose() {
            this._closing = true;
            this.onClose && this.onClose();

            if (this.lockScroll) {
              setTimeout(this.restoreBodyStyle, 200);
            }

            this.opened = false;
            this.doAfterClose();
          },
          doAfterClose: function doAfterClose() {
            _popupManager2["default"].closeModal(this._popupId);

            this._closing = false;
          },
          restoreBodyStyle: function restoreBodyStyle() {
            if (this.modal && this.withoutHiddenClass) {
              document.body.style.paddingRight = this.bodyPaddingRight;
              (0, dom.removeClass)(document.body, 'el-popup-parent--hidden');
            }

            this.withoutHiddenClass = true;
          }
        }
      };
      exports.PopupManager = _popupManager2["default"];
    });
    unwrapExports$1(popup);
    var popup_1 = popup.PopupManager;

    var popper$1 = createCommonjsModule$2(function (module) {

      var _typeof$$1 = typeof Symbol === "function" && _typeof(Symbol.iterator) === "symbol" ? function (obj) {
        return _typeof(obj);
      } : function (obj) {
        return obj && typeof Symbol === "function" && obj.constructor === Symbol && obj !== Symbol.prototype ? "symbol" : _typeof(obj);
      };

      (function (root, factory) {
        if ((_typeof$$1(module)) === 'object' && module.exports) {
          // Node. Does not work with strict CommonJS, but
          // only CommonJS-like environments that support module.exports,
          // like Node.
          module.exports = factory();
        } else {
          // Browser globals (root is window)
          root.Popper = factory();
        }
      })(undefined, function () {

        var root = window; // default options

        var DEFAULTS = {
          // placement of the popper
          placement: 'bottom',
          gpuAcceleration: true,
          // shift popper from its origin by the given amount of pixels (can be negative)
          offset: 0,
          // the element which will act as boundary of the popper
          boundariesElement: 'viewport',
          // amount of pixel used to define a minimum distance between the boundaries and the popper
          boundariesPadding: 5,
          // popper will try to prevent overflow following this order,
          // by default, then, it could overflow on the left and on top of the boundariesElement
          preventOverflowOrder: ['left', 'right', 'top', 'bottom'],
          // the behavior used by flip to change the placement of the popper
          flipBehavior: 'flip',
          arrowElement: '[x-arrow]',
          arrowOffset: 0,
          // list of functions used to modify the offsets before they are applied to the popper
          modifiers: ['shift', 'offset', 'preventOverflow', 'keepTogether', 'arrow', 'flip', 'applyStyle'],
          modifiersIgnored: [],
          forceAbsolute: false
        };
        /**
         * Create a new Popper.js instance
         * @constructor Popper
         * @param {HTMLElement} reference - The reference element used to position the popper
         * @param {HTMLElement|Object} popper
         *      The HTML element used as popper, or a configuration used to generate the popper.
         * @param {String} [popper.tagName='div'] The tag name of the generated popper.
         * @param {Array} [popper.classNames=['popper']] Array of classes to apply to the generated popper.
         * @param {Array} [popper.attributes] Array of attributes to apply, specify `attr:value` to assign a value to it.
         * @param {HTMLElement|String} [popper.parent=window.document.body] The parent element, given as HTMLElement or as query string.
         * @param {String} [popper.content=''] The content of the popper, it can be text, html, or node; if it is not text, set `contentType` to `html` or `node`.
         * @param {String} [popper.contentType='text'] If `html`, the `content` will be parsed as HTML. If `node`, it will be appended as-is.
         * @param {String} [popper.arrowTagName='div'] Same as `popper.tagName` but for the arrow element.
         * @param {Array} [popper.arrowClassNames='popper__arrow'] Same as `popper.classNames` but for the arrow element.
         * @param {String} [popper.arrowAttributes=['x-arrow']] Same as `popper.attributes` but for the arrow element.
         * @param {Object} options
         * @param {String} [options.placement=bottom]
         *      Placement of the popper accepted values: `top(-start, -end), right(-start, -end), bottom(-start, -right),
         *      left(-start, -end)`
         *
         * @param {HTMLElement|String} [options.arrowElement='[x-arrow]']
         *      The DOM Node used as arrow for the popper, or a CSS selector used to get the DOM node. It must be child of
         *      its parent Popper. Popper.js will apply to the given element the style required to align the arrow with its
         *      reference element.
         *      By default, it will look for a child node of the popper with the `x-arrow` attribute.
         *
         * @param {Boolean} [options.gpuAcceleration=true]
         *      When this property is set to true, the popper position will be applied using CSS3 translate3d, allowing the
         *      browser to use the GPU to accelerate the rendering.
         *      If set to false, the popper will be placed using `top` and `left` properties, not using the GPU.
         *
         * @param {Number} [options.offset=0]
         *      Amount of pixels the popper will be shifted (can be negative).
         *
         * @param {String|Element} [options.boundariesElement='viewport']
         *      The element which will define the boundaries of the popper position, the popper will never be placed outside
         *      of the defined boundaries (except if `keepTogether` is enabled)
         *
         * @param {Number} [options.boundariesPadding=5]
         *      Additional padding for the boundaries
         *
         * @param {Array} [options.preventOverflowOrder=['left', 'right', 'top', 'bottom']]
         *      Order used when Popper.js tries to avoid overflows from the boundaries, they will be checked in order,
         *      this means that the last ones will never overflow
         *
         * @param {String|Array} [options.flipBehavior='flip']
         *      The behavior used by the `flip` modifier to change the placement of the popper when the latter is trying to
         *      overlap its reference element. Defining `flip` as value, the placement will be flipped on
         *      its axis (`right - left`, `top - bottom`).
         *      You can even pass an array of placements (eg: `['right', 'left', 'top']` ) to manually specify
         *      how alter the placement when a flip is needed. (eg. in the above example, it would first flip from right to left,
         *      then, if even in its new placement, the popper is overlapping its reference element, it will be moved to top)
         *
         * @param {Array} [options.modifiers=[ 'shift', 'offset', 'preventOverflow', 'keepTogether', 'arrow', 'flip', 'applyStyle']]
         *      List of functions used to modify the data before they are applied to the popper, add your custom functions
         *      to this array to edit the offsets and placement.
         *      The function should reflect the @params and @returns of preventOverflow
         *
         * @param {Array} [options.modifiersIgnored=[]]
         *      Put here any built-in modifier name you want to exclude from the modifiers list
         *      The function should reflect the @params and @returns of preventOverflow
         *
         * @param {Boolean} [options.removeOnDestroy=false]
         *      Set to true if you want to automatically remove the popper when you call the `destroy` method.
         */

        function Popper(reference, popper, options) {
          this._reference = reference.jquery ? reference[0] : reference;
          this.state = {}; // if the popper variable is a configuration object, parse it to generate an HTMLElement
          // generate a default popper if is not defined

          var isNotDefined = typeof popper === 'undefined' || popper === null;
          var isConfig = popper && Object.prototype.toString.call(popper) === '[object Object]';

          if (isNotDefined || isConfig) {
            this._popper = this.parse(isConfig ? popper : {});
          } // otherwise, use the given HTMLElement as popper
          else {
              this._popper = popper.jquery ? popper[0] : popper;
            } // with {} we create a new object with the options inside it


          this._options = Object.assign({}, DEFAULTS, options); // refactoring modifiers' list

          this._options.modifiers = this._options.modifiers.map(function (modifier) {
            // remove ignored modifiers
            if (this._options.modifiersIgnored.indexOf(modifier) !== -1) { return; } // set the x-placement attribute before everything else because it could be used to add margins to the popper
            // margins needs to be calculated to get the correct popper offsets

            if (modifier === 'applyStyle') {
              this._popper.setAttribute('x-placement', this._options.placement);
            } // return predefined modifier identified by string or keep the custom one


            return this.modifiers[modifier] || modifier;
          }.bind(this)); // make sure to apply the popper position before any computation

          this.state.position = this._getPosition(this._popper, this._reference);
          setStyle(this._popper, {
            position: this.state.position,
            top: 0
          }); // fire the first update to position the popper in the right place

          this.update(); // setup event listeners, they will take care of update the position in specific situations

          this._setupEventListeners();

          return this;
        } //
        // Methods
        //

        /**
         * Destroy the popper
         * @method
         * @memberof Popper
         */


        Popper.prototype.destroy = function () {
          this._popper.removeAttribute('x-placement');

          this._popper.style.left = '';
          this._popper.style.position = '';
          this._popper.style.top = '';
          this._popper.style[getSupportedPropertyName('transform')] = '';

          this._removeEventListeners(); // remove the popper if user explicity asked for the deletion on destroy


          if (this._options.removeOnDestroy) {
            this._popper.remove();
          }

          return this;
        };
        /**
         * Updates the position of the popper, computing the new offsets and applying the new style
         * @method
         * @memberof Popper
         */


        Popper.prototype.update = function () {
          var data = {
            instance: this,
            styles: {}
          }; // store placement inside the data object, modifiers will be able to edit `placement` if needed
          // and refer to _originalPlacement to know the original value

          data.placement = this._options.placement;
          data._originalPlacement = this._options.placement; // compute the popper and reference offsets and put them inside data.offsets

          data.offsets = this._getOffsets(this._popper, this._reference, data.placement); // get boundaries

          data.boundaries = this._getBoundaries(data, this._options.boundariesPadding, this._options.boundariesElement);
          data = this.runModifiers(data, this._options.modifiers);

          if (typeof this.state.updateCallback === 'function') {
            this.state.updateCallback(data);
          }
        };
        /**
         * If a function is passed, it will be executed after the initialization of popper with as first argument the Popper instance.
         * @method
         * @memberof Popper
         * @param {Function} callback
         */


        Popper.prototype.onCreate = function (callback) {
          // the createCallbacks return as first argument the popper instance
          callback(this);
          return this;
        };
        /**
         * If a function is passed, it will be executed after each update of popper with as first argument the set of coordinates and informations
         * used to style popper and its arrow.
         * NOTE: it doesn't get fired on the first call of the `Popper.update()` method inside the `Popper` constructor!
         * @method
         * @memberof Popper
         * @param {Function} callback
         */


        Popper.prototype.onUpdate = function (callback) {
          this.state.updateCallback = callback;
          return this;
        };
        /**
         * Helper used to generate poppers from a configuration file
         * @method
         * @memberof Popper
         * @param config {Object} configuration
         * @returns {HTMLElement} popper
         */


        Popper.prototype.parse = function (config) {
          var defaultConfig = {
            tagName: 'div',
            classNames: ['popper'],
            attributes: [],
            parent: root.document.body,
            content: '',
            contentType: 'text',
            arrowTagName: 'div',
            arrowClassNames: ['popper__arrow'],
            arrowAttributes: ['x-arrow']
          };
          config = Object.assign({}, defaultConfig, config);
          var d = root.document;
          var popper = d.createElement(config.tagName);
          addClassNames(popper, config.classNames);
          addAttributes(popper, config.attributes);

          if (config.contentType === 'node') {
            popper.appendChild(config.content.jquery ? config.content[0] : config.content);
          } else if (config.contentType === 'html') {
            popper.innerHTML = config.content;
          } else {
            popper.textContent = config.content;
          }

          if (config.arrowTagName) {
            var arrow = d.createElement(config.arrowTagName);
            addClassNames(arrow, config.arrowClassNames);
            addAttributes(arrow, config.arrowAttributes);
            popper.appendChild(arrow);
          }

          var parent = config.parent.jquery ? config.parent[0] : config.parent; // if the given parent is a string, use it to match an element
          // if more than one element is matched, the first one will be used as parent
          // if no elements are matched, the script will throw an error

          if (typeof parent === 'string') {
            parent = d.querySelectorAll(config.parent);

            if (parent.length > 1) {
              console.warn('WARNING: the given `parent` query(' + config.parent + ') matched more than one element, the first one will be used');
            }

            if (parent.length === 0) {
              throw 'ERROR: the given `parent` doesn\'t exists!';
            }

            parent = parent[0];
          } // if the given parent is a DOM nodes list or an array of nodes with more than one element,
          // the first one will be used as parent


          if (parent.length > 1 && parent instanceof Element === false) {
            console.warn('WARNING: you have passed as parent a list of elements, the first one will be used');
            parent = parent[0];
          } // append the generated popper to its parent


          parent.appendChild(popper);
          return popper;
          /**
           * Adds class names to the given element
           * @function
           * @ignore
           * @param {HTMLElement} target
           * @param {Array} classes
           */

          function addClassNames(element, classNames) {
            classNames.forEach(function (className) {
              element.classList.add(className);
            });
          }
          /**
           * Adds attributes to the given element
           * @function
           * @ignore
           * @param {HTMLElement} target
           * @param {Array} attributes
           * @example
           * addAttributes(element, [ 'data-info:foobar' ]);
           */


          function addAttributes(element, attributes) {
            attributes.forEach(function (attribute) {
              element.setAttribute(attribute.split(':')[0], attribute.split(':')[1] || '');
            });
          }
        };
        /**
         * Helper used to get the position which will be applied to the popper
         * @method
         * @memberof Popper
         * @param config {HTMLElement} popper element
         * @param reference {HTMLElement} reference element
         * @returns {String} position
         */


        Popper.prototype._getPosition = function (popper, reference) {
          var container = getOffsetParent(reference);

          if (this._options.forceAbsolute) {
            return 'absolute';
          } // Decide if the popper will be fixed
          // If the reference element is inside a fixed context, the popper will be fixed as well to allow them to scroll together


          var isParentFixed = isFixed(reference);
          return isParentFixed ? 'fixed' : 'absolute';
        };
        /**
         * Get offsets to the popper
         * @method
         * @memberof Popper
         * @access private
         * @param {Element} popper - the popper element
         * @param {Element} reference - the reference element (the popper will be relative to this)
         * @returns {Object} An object containing the offsets which will be applied to the popper
         */


        Popper.prototype._getOffsets = function (popper, reference, placement) {
          placement = placement.split('-')[0];
          var popperOffsets = {};
          popperOffsets.position = this.state.position;
          var isParentFixed = popperOffsets.position === 'fixed'; //
          // Get reference element position
          //

          var referenceOffsets = getOffsetRectRelativeToCustomParent(reference, getOffsetParent(popper), isParentFixed); //
          // Get popper sizes
          //

          var popperRect = getOuterSizes(popper); //
          // Compute offsets of popper
          //
          // depending by the popper placement we have to compute its offsets slightly differently

          if (['right', 'left'].indexOf(placement) !== -1) {
            popperOffsets.top = referenceOffsets.top + referenceOffsets.height / 2 - popperRect.height / 2;

            if (placement === 'left') {
              popperOffsets.left = referenceOffsets.left - popperRect.width;
            } else {
              popperOffsets.left = referenceOffsets.right;
            }
          } else {
            popperOffsets.left = referenceOffsets.left + referenceOffsets.width / 2 - popperRect.width / 2;

            if (placement === 'top') {
              popperOffsets.top = referenceOffsets.top - popperRect.height;
            } else {
              popperOffsets.top = referenceOffsets.bottom;
            }
          } // Add width and height to our offsets object


          popperOffsets.width = popperRect.width;
          popperOffsets.height = popperRect.height;
          return {
            popper: popperOffsets,
            reference: referenceOffsets
          };
        };
        /**
         * Setup needed event listeners used to update the popper position
         * @method
         * @memberof Popper
         * @access private
         */


        Popper.prototype._setupEventListeners = function () {
          // NOTE: 1 DOM access here
          this.state.updateBound = this.update.bind(this);
          root.addEventListener('resize', this.state.updateBound); // if the boundariesElement is window we don't need to listen for the scroll event

          if (this._options.boundariesElement !== 'window') {
            var target = getScrollParent(this._reference); // here it could be both `body` or `documentElement` thanks to Firefox, we then check both

            if (target === root.document.body || target === root.document.documentElement) {
              target = root;
            }

            target.addEventListener('scroll', this.state.updateBound);
            this.state.scrollTarget = target;
          }
        };
        /**
         * Remove event listeners used to update the popper position
         * @method
         * @memberof Popper
         * @access private
         */


        Popper.prototype._removeEventListeners = function () {
          // NOTE: 1 DOM access here
          root.removeEventListener('resize', this.state.updateBound);

          if (this._options.boundariesElement !== 'window' && this.state.scrollTarget) {
            this.state.scrollTarget.removeEventListener('scroll', this.state.updateBound);
            this.state.scrollTarget = null;
          }

          this.state.updateBound = null;
        };
        /**
         * Computed the boundaries limits and return them
         * @method
         * @memberof Popper
         * @access private
         * @param {Object} data - Object containing the property "offsets" generated by `_getOffsets`
         * @param {Number} padding - Boundaries padding
         * @param {Element} boundariesElement - Element used to define the boundaries
         * @returns {Object} Coordinates of the boundaries
         */


        Popper.prototype._getBoundaries = function (data, padding, boundariesElement) {
          // NOTE: 1 DOM access here
          var boundaries = {};
          var width, height;

          if (boundariesElement === 'window') {
            var body = root.document.body,
                html = root.document.documentElement;
            height = Math.max(body.scrollHeight, body.offsetHeight, html.clientHeight, html.scrollHeight, html.offsetHeight);
            width = Math.max(body.scrollWidth, body.offsetWidth, html.clientWidth, html.scrollWidth, html.offsetWidth);
            boundaries = {
              top: 0,
              right: width,
              bottom: height,
              left: 0
            };
          } else if (boundariesElement === 'viewport') {
            var offsetParent = getOffsetParent(this._popper);
            var scrollParent = getScrollParent(this._popper);
            var offsetParentRect = getOffsetRect(offsetParent); // Thanks the fucking native API, `document.body.scrollTop` & `document.documentElement.scrollTop`

            var getScrollTopValue = function getScrollTopValue(element) {
              return element == document.body ? Math.max(document.documentElement.scrollTop, document.body.scrollTop) : element.scrollTop;
            };

            var getScrollLeftValue = function getScrollLeftValue(element) {
              return element == document.body ? Math.max(document.documentElement.scrollLeft, document.body.scrollLeft) : element.scrollLeft;
            }; // if the popper is fixed we don't have to substract scrolling from the boundaries


            var scrollTop = data.offsets.popper.position === 'fixed' ? 0 : getScrollTopValue(scrollParent);
            var scrollLeft = data.offsets.popper.position === 'fixed' ? 0 : getScrollLeftValue(scrollParent);
            boundaries = {
              top: 0 - (offsetParentRect.top - scrollTop),
              right: root.document.documentElement.clientWidth - (offsetParentRect.left - scrollLeft),
              bottom: root.document.documentElement.clientHeight - (offsetParentRect.top - scrollTop),
              left: 0 - (offsetParentRect.left - scrollLeft)
            };
          } else {
            if (getOffsetParent(this._popper) === boundariesElement) {
              boundaries = {
                top: 0,
                left: 0,
                right: boundariesElement.clientWidth,
                bottom: boundariesElement.clientHeight
              };
            } else {
              boundaries = getOffsetRect(boundariesElement);
            }
          }

          boundaries.left += padding;
          boundaries.right -= padding;
          boundaries.top = boundaries.top + padding;
          boundaries.bottom = boundaries.bottom - padding;
          return boundaries;
        };
        /**
         * Loop trough the list of modifiers and run them in order, each of them will then edit the data object
         * @method
         * @memberof Popper
         * @access public
         * @param {Object} data
         * @param {Array} modifiers
         * @param {Function} ends
         */


        Popper.prototype.runModifiers = function (data, modifiers, ends) {
          var modifiersToRun = modifiers.slice();

          if (ends !== undefined) {
            modifiersToRun = this._options.modifiers.slice(0, getArrayKeyIndex(this._options.modifiers, ends));
          }

          modifiersToRun.forEach(function (modifier) {
            if (isFunction(modifier)) {
              data = modifier.call(this, data);
            }
          }.bind(this));
          return data;
        };
        /**
         * Helper used to know if the given modifier depends from another one.
         * @method
         * @memberof Popper
         * @param {String} requesting - name of requesting modifier
         * @param {String} requested - name of requested modifier
         * @returns {Boolean}
         */


        Popper.prototype.isModifierRequired = function (requesting, requested) {
          var index = getArrayKeyIndex(this._options.modifiers, requesting);
          return !!this._options.modifiers.slice(0, index).filter(function (modifier) {
            return modifier === requested;
          }).length;
        }; //
        // Modifiers
        //

        /**
         * Modifiers list
         * @namespace Popper.modifiers
         * @memberof Popper
         * @type {Object}
         */


        Popper.prototype.modifiers = {};
        /**
         * Apply the computed styles to the popper element
         * @method
         * @memberof Popper.modifiers
         * @argument {Object} data - The data object generated by `update` method
         * @returns {Object} The same data object
         */

        Popper.prototype.modifiers.applyStyle = function (data) {
          // apply the final offsets to the popper
          // NOTE: 1 DOM access here
          var styles = {
            position: data.offsets.popper.position
          }; // round top and left to avoid blurry text

          var left = Math.round(data.offsets.popper.left);
          var top = Math.round(data.offsets.popper.top); // if gpuAcceleration is set to true and transform is supported, we use `translate3d` to apply the position to the popper
          // we automatically use the supported prefixed version if needed

          var prefixedProperty;

          if (this._options.gpuAcceleration && (prefixedProperty = getSupportedPropertyName('transform'))) {
            styles[prefixedProperty] = 'translate3d(' + left + 'px, ' + top + 'px, 0)';
            styles.top = 0;
            styles.left = 0;
          } // othwerise, we use the standard `left` and `top` properties
          else {
              styles.left = left;
              styles.top = top;
            } // any property present in `data.styles` will be applied to the popper,
          // in this way we can make the 3rd party modifiers add custom styles to it
          // Be aware, modifiers could override the properties defined in the previous
          // lines of this modifier!


          Object.assign(styles, data.styles);
          setStyle(this._popper, styles); // set an attribute which will be useful to style the tooltip (use it to properly position its arrow)
          // NOTE: 1 DOM access here

          this._popper.setAttribute('x-placement', data.placement); // if the arrow modifier is required and the arrow style has been computed, apply the arrow style


          if (this.isModifierRequired(this.modifiers.applyStyle, this.modifiers.arrow) && data.offsets.arrow) {
            setStyle(data.arrowElement, data.offsets.arrow);
          }

          return data;
        };
        /**
         * Modifier used to shift the popper on the start or end of its reference element side
         * @method
         * @memberof Popper.modifiers
         * @argument {Object} data - The data object generated by `update` method
         * @returns {Object} The data object, properly modified
         */


        Popper.prototype.modifiers.shift = function (data) {
          var placement = data.placement;
          var basePlacement = placement.split('-')[0];
          var shiftVariation = placement.split('-')[1]; // if shift shiftVariation is specified, run the modifier

          if (shiftVariation) {
            var reference = data.offsets.reference;
            var popper = getPopperClientRect(data.offsets.popper);
            var shiftOffsets = {
              y: {
                start: {
                  top: reference.top
                },
                end: {
                  top: reference.top + reference.height - popper.height
                }
              },
              x: {
                start: {
                  left: reference.left
                },
                end: {
                  left: reference.left + reference.width - popper.width
                }
              }
            };
            var axis = ['bottom', 'top'].indexOf(basePlacement) !== -1 ? 'x' : 'y';
            data.offsets.popper = Object.assign(popper, shiftOffsets[axis][shiftVariation]);
          }

          return data;
        };
        /**
         * Modifier used to make sure the popper does not overflows from it's boundaries
         * @method
         * @memberof Popper.modifiers
         * @argument {Object} data - The data object generated by `update` method
         * @returns {Object} The data object, properly modified
         */


        Popper.prototype.modifiers.preventOverflow = function (data) {
          var order = this._options.preventOverflowOrder;
          var popper = getPopperClientRect(data.offsets.popper);
          var check = {
            left: function left() {
              var left = popper.left;

              if (popper.left < data.boundaries.left) {
                left = Math.max(popper.left, data.boundaries.left);
              }

              return {
                left: left
              };
            },
            right: function right() {
              var left = popper.left;

              if (popper.right > data.boundaries.right) {
                left = Math.min(popper.left, data.boundaries.right - popper.width);
              }

              return {
                left: left
              };
            },
            top: function top() {
              var top = popper.top;

              if (popper.top < data.boundaries.top) {
                top = Math.max(popper.top, data.boundaries.top);
              }

              return {
                top: top
              };
            },
            bottom: function bottom() {
              var top = popper.top;

              if (popper.bottom > data.boundaries.bottom) {
                top = Math.min(popper.top, data.boundaries.bottom - popper.height);
              }

              return {
                top: top
              };
            }
          };
          order.forEach(function (direction) {
            data.offsets.popper = Object.assign(popper, check[direction]());
          });
          return data;
        };
        /**
         * Modifier used to make sure the popper is always near its reference
         * @method
         * @memberof Popper.modifiers
         * @argument {Object} data - The data object generated by _update method
         * @returns {Object} The data object, properly modified
         */


        Popper.prototype.modifiers.keepTogether = function (data) {
          var popper = getPopperClientRect(data.offsets.popper);
          var reference = data.offsets.reference;
          var f = Math.floor;

          if (popper.right < f(reference.left)) {
            data.offsets.popper.left = f(reference.left) - popper.width;
          }

          if (popper.left > f(reference.right)) {
            data.offsets.popper.left = f(reference.right);
          }

          if (popper.bottom < f(reference.top)) {
            data.offsets.popper.top = f(reference.top) - popper.height;
          }

          if (popper.top > f(reference.bottom)) {
            data.offsets.popper.top = f(reference.bottom);
          }

          return data;
        };
        /**
         * Modifier used to flip the placement of the popper when the latter is starting overlapping its reference element.
         * Requires the `preventOverflow` modifier before it in order to work.
         * **NOTE:** This modifier will run all its previous modifiers everytime it tries to flip the popper!
         * @method
         * @memberof Popper.modifiers
         * @argument {Object} data - The data object generated by _update method
         * @returns {Object} The data object, properly modified
         */


        Popper.prototype.modifiers.flip = function (data) {
          // check if preventOverflow is in the list of modifiers before the flip modifier.
          // otherwise flip would not work as expected.
          if (!this.isModifierRequired(this.modifiers.flip, this.modifiers.preventOverflow)) {
            console.warn('WARNING: preventOverflow modifier is required by flip modifier in order to work, be sure to include it before flip!');
            return data;
          }

          if (data.flipped && data.placement === data._originalPlacement) {
            // seems like flip is trying to loop, probably there's not enough space on any of the flippable sides
            return data;
          }

          var placement = data.placement.split('-')[0];
          var placementOpposite = getOppositePlacement(placement);
          var variation = data.placement.split('-')[1] || '';
          var flipOrder = [];

          if (this._options.flipBehavior === 'flip') {
            flipOrder = [placement, placementOpposite];
          } else {
            flipOrder = this._options.flipBehavior;
          }

          flipOrder.forEach(function (step, index) {
            if (placement !== step || flipOrder.length === index + 1) {
              return;
            }

            placement = data.placement.split('-')[0];
            placementOpposite = getOppositePlacement(placement);
            var popperOffsets = getPopperClientRect(data.offsets.popper); // this boolean is used to distinguish right and bottom from top and left
            // they need different computations to get flipped

            var a = ['right', 'bottom'].indexOf(placement) !== -1; // using Math.floor because the reference offsets may contain decimals we are not going to consider here

            if (a && Math.floor(data.offsets.reference[placement]) > Math.floor(popperOffsets[placementOpposite]) || !a && Math.floor(data.offsets.reference[placement]) < Math.floor(popperOffsets[placementOpposite])) {
              // we'll use this boolean to detect any flip loop
              data.flipped = true;
              data.placement = flipOrder[index + 1];

              if (variation) {
                data.placement += '-' + variation;
              }

              data.offsets.popper = this._getOffsets(this._popper, this._reference, data.placement).popper;
              data = this.runModifiers(data, this._options.modifiers, this._flip);
            }
          }.bind(this));
          return data;
        };
        /**
         * Modifier used to add an offset to the popper, useful if you more granularity positioning your popper.
         * The offsets will shift the popper on the side of its reference element.
         * @method
         * @memberof Popper.modifiers
         * @argument {Object} data - The data object generated by _update method
         * @returns {Object} The data object, properly modified
         */


        Popper.prototype.modifiers.offset = function (data) {
          var offset = this._options.offset;
          var popper = data.offsets.popper;

          if (data.placement.indexOf('left') !== -1) {
            popper.top -= offset;
          } else if (data.placement.indexOf('right') !== -1) {
            popper.top += offset;
          } else if (data.placement.indexOf('top') !== -1) {
            popper.left -= offset;
          } else if (data.placement.indexOf('bottom') !== -1) {
            popper.left += offset;
          }

          return data;
        };
        /**
         * Modifier used to move the arrows on the edge of the popper to make sure them are always between the popper and the reference element
         * It will use the CSS outer size of the arrow element to know how many pixels of conjuction are needed
         * @method
         * @memberof Popper.modifiers
         * @argument {Object} data - The data object generated by _update method
         * @returns {Object} The data object, properly modified
         */


        Popper.prototype.modifiers.arrow = function (data) {
          var arrow = this._options.arrowElement;
          var arrowOffset = this._options.arrowOffset; // if the arrowElement is a string, suppose it's a CSS selector

          if (typeof arrow === 'string') {
            arrow = this._popper.querySelector(arrow);
          } // if arrow element is not found, don't run the modifier


          if (!arrow) {
            return data;
          } // the arrow element must be child of its popper


          if (!this._popper.contains(arrow)) {
            console.warn('WARNING: `arrowElement` must be child of its popper element!');
            return data;
          } // arrow depends on keepTogether in order to work


          if (!this.isModifierRequired(this.modifiers.arrow, this.modifiers.keepTogether)) {
            console.warn('WARNING: keepTogether modifier is required by arrow modifier in order to work, be sure to include it before arrow!');
            return data;
          }

          var arrowStyle = {};
          var placement = data.placement.split('-')[0];
          var popper = getPopperClientRect(data.offsets.popper);
          var reference = data.offsets.reference;
          var isVertical = ['left', 'right'].indexOf(placement) !== -1;
          var len = isVertical ? 'height' : 'width';
          var side = isVertical ? 'top' : 'left';
          var altSide = isVertical ? 'left' : 'top';
          var opSide = isVertical ? 'bottom' : 'right';
          var arrowSize = getOuterSizes(arrow)[len]; //
          // extends keepTogether behavior making sure the popper and its reference have enough pixels in conjuction
          //
          // top/left side

          if (reference[opSide] - arrowSize < popper[side]) {
            data.offsets.popper[side] -= popper[side] - (reference[opSide] - arrowSize);
          } // bottom/right side


          if (reference[side] + arrowSize > popper[opSide]) {
            data.offsets.popper[side] += reference[side] + arrowSize - popper[opSide];
          } // compute center of the popper


          var center = reference[side] + (arrowOffset || reference[len] / 2 - arrowSize / 2);
          var sideValue = center - popper[side]; // prevent arrow from being placed not contiguously to its popper

          sideValue = Math.max(Math.min(popper[len] - arrowSize - 8, sideValue), 8);
          arrowStyle[side] = sideValue;
          arrowStyle[altSide] = ''; // make sure to remove any old style from the arrow

          data.offsets.arrow = arrowStyle;
          data.arrowElement = arrow;
          return data;
        }; //
        // Helpers
        //

        /**
         * Get the outer sizes of the given element (offset size + margins)
         * @function
         * @ignore
         * @argument {Element} element
         * @returns {Object} object containing width and height properties
         */


        function getOuterSizes(element) {
          // NOTE: 1 DOM access here
          var _display = element.style.display,
              _visibility = element.style.visibility;
          element.style.display = 'block';
          element.style.visibility = 'hidden';
          var calcWidthToForceRepaint = element.offsetWidth; // original method

          var styles = root.getComputedStyle(element);
          var x = parseFloat(styles.marginTop) + parseFloat(styles.marginBottom);
          var y = parseFloat(styles.marginLeft) + parseFloat(styles.marginRight);
          var result = {
            width: element.offsetWidth + y,
            height: element.offsetHeight + x
          }; // reset element styles

          element.style.display = _display;
          element.style.visibility = _visibility;
          return result;
        }
        /**
         * Get the opposite placement of the given one/
         * @function
         * @ignore
         * @argument {String} placement
         * @returns {String} flipped placement
         */


        function getOppositePlacement(placement) {
          var hash = {
            left: 'right',
            right: 'left',
            bottom: 'top',
            top: 'bottom'
          };
          return placement.replace(/left|right|bottom|top/g, function (matched) {
            return hash[matched];
          });
        }
        /**
         * Given the popper offsets, generate an output similar to getBoundingClientRect
         * @function
         * @ignore
         * @argument {Object} popperOffsets
         * @returns {Object} ClientRect like output
         */


        function getPopperClientRect(popperOffsets) {
          var offsets = Object.assign({}, popperOffsets);
          offsets.right = offsets.left + offsets.width;
          offsets.bottom = offsets.top + offsets.height;
          return offsets;
        }
        /**
         * Given an array and the key to find, returns its index
         * @function
         * @ignore
         * @argument {Array} arr
         * @argument keyToFind
         * @returns index or null
         */


        function getArrayKeyIndex(arr, keyToFind) {
          var i = 0,
              key;

          for (key in arr) {
            if (arr[key] === keyToFind) {
              return i;
            }

            i++;
          }

          return null;
        }
        /**
         * Get CSS computed property of the given element
         * @function
         * @ignore
         * @argument {Eement} element
         * @argument {String} property
         */


        function getStyleComputedProperty(element, property) {
          // NOTE: 1 DOM access here
          var css = root.getComputedStyle(element, null);
          return css[property];
        }
        /**
         * Returns the offset parent of the given element
         * @function
         * @ignore
         * @argument {Element} element
         * @returns {Element} offset parent
         */


        function getOffsetParent(element) {
          // NOTE: 1 DOM access here
          var offsetParent = element.offsetParent;
          return offsetParent === root.document.body || !offsetParent ? root.document.documentElement : offsetParent;
        }
        /**
         * Returns the scrolling parent of the given element
         * @function
         * @ignore
         * @argument {Element} element
         * @returns {Element} offset parent
         */


        function getScrollParent(element) {
          var parent = element.parentNode;

          if (!parent) {
            return element;
          }

          if (parent === root.document) {
            // Firefox puts the scrollTOp value on `documentElement` instead of `body`, we then check which of them is
            // greater than 0 and return the proper element
            if (root.document.body.scrollTop || root.document.body.scrollLeft) {
              return root.document.body;
            } else {
              return root.document.documentElement;
            }
          } // Firefox want us to check `-x` and `-y` variations as well


          if (['scroll', 'auto'].indexOf(getStyleComputedProperty(parent, 'overflow')) !== -1 || ['scroll', 'auto'].indexOf(getStyleComputedProperty(parent, 'overflow-x')) !== -1 || ['scroll', 'auto'].indexOf(getStyleComputedProperty(parent, 'overflow-y')) !== -1) {
            // If the detected scrollParent is body, we perform an additional check on its parentNode
            // in this way we'll get body if the browser is Chrome-ish, or documentElement otherwise
            // fixes issue #65
            return parent;
          }

          return getScrollParent(element.parentNode);
        }
        /**
         * Check if the given element is fixed or is inside a fixed parent
         * @function
         * @ignore
         * @argument {Element} element
         * @argument {Element} customContainer
         * @returns {Boolean} answer to "isFixed?"
         */


        function isFixed(element) {
          if (element === root.document.body) {
            return false;
          }

          if (getStyleComputedProperty(element, 'position') === 'fixed') {
            return true;
          }

          return element.parentNode ? isFixed(element.parentNode) : element;
        }
        /**
         * Set the style to the given popper
         * @function
         * @ignore
         * @argument {Element} element - Element to apply the style to
         * @argument {Object} styles - Object with a list of properties and values which will be applied to the element
         */


        function setStyle(element, styles) {
          function is_numeric(n) {
            return n !== '' && !isNaN(parseFloat(n)) && isFinite(n);
          }

          Object.keys(styles).forEach(function (prop) {
            var unit = ''; // add unit if the value is numeric and is one of the following

            if (['width', 'height', 'top', 'right', 'bottom', 'left'].indexOf(prop) !== -1 && is_numeric(styles[prop])) {
              unit = 'px';
            }

            element.style[prop] = styles[prop] + unit;
          });
        }
        /**
         * Check if the given variable is a function
         * @function
         * @ignore
         * @argument {*} functionToCheck - variable to check
         * @returns {Boolean} answer to: is a function?
         */


        function isFunction(functionToCheck) {
          var getType = {};
          return functionToCheck && getType.toString.call(functionToCheck) === '[object Function]';
        }
        /**
         * Get the position of the given element, relative to its offset parent
         * @function
         * @ignore
         * @param {Element} element
         * @return {Object} position - Coordinates of the element and its `scrollTop`
         */


        function getOffsetRect(element) {
          var elementRect = {
            width: element.offsetWidth,
            height: element.offsetHeight,
            left: element.offsetLeft,
            top: element.offsetTop
          };
          elementRect.right = elementRect.left + elementRect.width;
          elementRect.bottom = elementRect.top + elementRect.height; // position

          return elementRect;
        }
        /**
         * Get bounding client rect of given element
         * @function
         * @ignore
         * @param {HTMLElement} element
         * @return {Object} client rect
         */


        function getBoundingClientRect(element) {
          var rect = element.getBoundingClientRect(); // whether the IE version is lower than 11

          var isIE = navigator.userAgent.indexOf("MSIE") != -1; // fix ie document bounding top always 0 bug

          var rectTop = isIE && element.tagName === 'HTML' ? -element.scrollTop : rect.top;
          return {
            left: rect.left,
            top: rectTop,
            right: rect.right,
            bottom: rect.bottom,
            width: rect.right - rect.left,
            height: rect.bottom - rectTop
          };
        }
        /**
         * Given an element and one of its parents, return the offset
         * @function
         * @ignore
         * @param {HTMLElement} element
         * @param {HTMLElement} parent
         * @return {Object} rect
         */


        function getOffsetRectRelativeToCustomParent(element, parent, fixed) {
          var elementRect = getBoundingClientRect(element);
          var parentRect = getBoundingClientRect(parent);

          if (fixed) {
            var scrollParent = getScrollParent(parent);
            parentRect.top += scrollParent.scrollTop;
            parentRect.bottom += scrollParent.scrollTop;
            parentRect.left += scrollParent.scrollLeft;
            parentRect.right += scrollParent.scrollLeft;
          }

          var rect = {
            top: elementRect.top - parentRect.top,
            left: elementRect.left - parentRect.left,
            bottom: elementRect.top - parentRect.top + elementRect.height,
            right: elementRect.left - parentRect.left + elementRect.width,
            width: elementRect.width,
            height: elementRect.height
          };
          return rect;
        }
        /**
         * Get the prefixed supported property name
         * @function
         * @ignore
         * @argument {String} property (camelCase)
         * @returns {String} prefixed property (camelCase)
         */


        function getSupportedPropertyName(property) {
          var prefixes = ['', 'ms', 'webkit', 'moz', 'o'];

          for (var i = 0; i < prefixes.length; i++) {
            var toCheck = prefixes[i] ? prefixes[i] + property.charAt(0).toUpperCase() + property.slice(1) : property;

            if (typeof root.document.body.style[toCheck] !== 'undefined') {
              return toCheck;
            }
          }

          return null;
        }
        /**
         * The Object.assign() method is used to copy the values of all enumerable own properties from one or more source
         * objects to a target object. It will return the target object.
         * This polyfill doesn't support symbol properties, since ES5 doesn't have symbols anyway
         * Source: https://developer.mozilla.org/en/docs/Web/JavaScript/Reference/Global_Objects/Object/assign
         * @function
         * @ignore
         */


        if (!Object.assign) {
          Object.defineProperty(Object, 'assign', {
            enumerable: false,
            configurable: true,
            writable: true,
            value: function value(target) {
              var arguments$1 = arguments;

              if (target === undefined || target === null) {
                throw new TypeError('Cannot convert first argument to object');
              }

              var to = Object(target);

              for (var i = 1; i < arguments.length; i++) {
                var nextSource = arguments$1[i];

                if (nextSource === undefined || nextSource === null) {
                  continue;
                }

                nextSource = Object(nextSource);
                var keysArray = Object.keys(nextSource);

                for (var nextIndex = 0, len = keysArray.length; nextIndex < len; nextIndex++) {
                  var nextKey = keysArray[nextIndex];
                  var desc = Object.getOwnPropertyDescriptor(nextSource, nextKey);

                  if (desc !== undefined && desc.enumerable) {
                    to[nextKey] = nextSource[nextKey];
                  }
                }
              }

              return to;
            }
          });
        }

        return Popper;
      });
    });

    var vuePopper = createCommonjsModule$2(function (module, exports) {

      exports.__esModule = true;

      var _vue2 = _interopRequireDefault(VueConstructor__default__default);

      function _interopRequireDefault(obj) {
        return obj && obj.__esModule ? obj : {
          "default": obj
        };
      }

      var PopperJS = _vue2["default"].prototype.$isServer ? function () {} : popper$1;

      var stop = function stop(e) {
        return e.stopPropagation();
      };
      /**
       * @param {HTMLElement} [reference=$refs.reference] - The reference element used to position the popper.
       * @param {HTMLElement} [popper=$refs.popper] - The HTML element used as popper, or a configuration used to generate the popper.
       * @param {String} [placement=button] - Placement of the popper accepted values: top(-start, -end), right(-start, -end), bottom(-start, -end), left(-start, -end)
       * @param {Number} [offset=0] - Amount of pixels the popper will be shifted (can be negative).
       * @param {Boolean} [visible=false] Visibility of the popup element.
       * @param {Boolean} [visible-arrow=false] Visibility of the arrow, no style.
       */


      exports["default"] = {
        props: {
          transformOrigin: {
            type: [Boolean, String],
            "default": true
          },
          placement: {
            type: String,
            "default": 'bottom'
          },
          boundariesPadding: {
            type: Number,
            "default": 5
          },
          reference: {},
          popper: {},
          offset: {
            "default": 0
          },
          value: Boolean,
          visibleArrow: Boolean,
          arrowOffset: {
            type: Number,
            "default": 35
          },
          appendToBody: {
            type: Boolean,
            "default": true
          },
          popperOptions: {
            type: Object,
            "default": function _default() {
              return {
                gpuAcceleration: false
              };
            }
          }
        },
        data: function data() {
          return {
            showPopper: false,
            currentPlacement: ''
          };
        },
        watch: {
          value: {
            immediate: true,
            handler: function handler(val) {
              this.showPopper = val;
              this.$emit('input', val);
            }
          },
          showPopper: function showPopper(val) {
            if (this.disabled) { return; }
            val ? this.updatePopper() : this.destroyPopper();
            this.$emit('input', val);
          }
        },
        methods: {
          createPopper: function createPopper() {
            var _this = this;

            if (this.$isServer) { return; }
            this.currentPlacement = this.currentPlacement || this.placement;

            if (!/^(top|bottom|left|right)(-start|-end)?$/g.test(this.currentPlacement)) {
              return;
            }

            var options = this.popperOptions;
            var popper$$1 = this.popperElm = this.popperElm || this.popper || this.$refs.popper;
            var reference = this.referenceElm = this.referenceElm || this.reference || this.$refs.reference;

            if (!reference && this.$slots.reference && this.$slots.reference[0]) {
              reference = this.referenceElm = this.$slots.reference[0].elm;
            }

            if (!popper$$1 || !reference) { return; }
            if (this.visibleArrow) { this.appendArrow(popper$$1); }
            if (this.appendToBody) { document.body.appendChild(this.popperElm); }

            if (this.popperJS && this.popperJS.destroy) {
              this.popperJS.destroy();
            }

            options.placement = this.currentPlacement;
            options.offset = this.offset;
            options.arrowOffset = this.arrowOffset;
            this.popperJS = new PopperJS(reference, popper$$1, options);
            this.popperJS.onCreate(function (_) {
              _this.$emit('created', _this);

              _this.resetTransformOrigin();

              _this.$nextTick(_this.updatePopper);
            });

            if (typeof options.onUpdate === 'function') {
              this.popperJS.onUpdate(options.onUpdate);
            }

            this.popperJS._popper.style.zIndex = popup.PopupManager.nextZIndex();
            this.popperElm.addEventListener('click', stop);
          },
          updatePopper: function updatePopper() {
            var popperJS = this.popperJS;

            if (popperJS) {
              popperJS.update();

              if (popperJS._popper) {
                popperJS._popper.style.zIndex = popup.PopupManager.nextZIndex();
              }
            } else {
              this.createPopper();
            }
          },
          doDestroy: function doDestroy(forceDestroy) {
            /* istanbul ignore if */
            if (!this.popperJS || this.showPopper && !forceDestroy) { return; }
            this.popperJS.destroy();
            this.popperJS = null;
          },
          destroyPopper: function destroyPopper() {
            if (this.popperJS) {
              this.resetTransformOrigin();
            }
          },
          resetTransformOrigin: function resetTransformOrigin() {
            if (!this.transformOrigin) { return; }
            var placementMap = {
              top: 'bottom',
              bottom: 'top',
              left: 'right',
              right: 'left'
            };

            var placement = this.popperJS._popper.getAttribute('x-placement').split('-')[0];

            var origin = placementMap[placement];
            this.popperJS._popper.style.transformOrigin = typeof this.transformOrigin === 'string' ? this.transformOrigin : ['top', 'bottom'].indexOf(placement) > -1 ? 'center ' + origin : origin + ' center';
          },
          appendArrow: function appendArrow(element) {
            var hash = void 0;

            if (this.appended) {
              return;
            }

            this.appended = true;

            for (var item in element.attributes) {
              if (/^_v-/.test(element.attributes[item].name)) {
                hash = element.attributes[item].name;
                break;
              }
            }

            var arrow = document.createElement('div');

            if (hash) {
              arrow.setAttribute(hash, '');
            }

            arrow.setAttribute('x-arrow', '');
            arrow.className = 'popper__arrow';
            element.appendChild(arrow);
          }
        },
        beforeDestroy: function beforeDestroy() {
          this.doDestroy(true);

          if (this.popperElm && this.popperElm.parentNode === document.body) {
            this.popperElm.removeEventListener('click', stop);
            document.body.removeChild(this.popperElm);
          }
        },
        // call destroy in keep-alive mode
        deactivated: function deactivated() {
          this.$options.beforeDestroy[0].call(this);
        }
      };
    });
    var Popper$1 = unwrapExports$1(vuePopper);

    var script$1$1 = {
        name: "colorPicker",
        components: {
            "sketch-picker": vueColor_min_1,
            uiLabel: uiLabel
        },
        directives: { Clickoutside: Clickoutside },
        mixins: [Popper$1],
        props: {
            label: String,
            value: {
                type: String
            },
            onChanged: Function
        },
        data: function () {
            return {
                showPicker: false,
                colors: {
                    hex: "#ffffff",
                    a: 1
                },
                colorValue: null,
                colorText: ""
            };
        },
        computed: {
            isTransparent: function () {
                return this.colors.a === 0;
            },
            btnStyle: function () {
                if (this.isTransparent || !this.colorValue) {
                    return {
                        background: "#eee",
                        backgroundImage: "linear-gradient(45deg, rgba(0,0,0,.25) 25%, transparent 0, transparent 75%,rgba(0,0,0,.25)0), linear-gradient(45deg, rgba(0,0,0,.25)25%,transparent 0, transparent 75%,rgba(0,0,0,.25)0)",
                        backgroundPosition: "0 0, 11px 11px",
                        backgroundSize: "22px 22px"
                    };
                }
                return {
                    background: this.colorValue
                };
            },
            presetColors: function () {
                var preset;
                var theme;
                if ((theme = window["__themeState__"].theme)) {
                    preset = [
                        theme.themePrimary,
                        theme.themeLighter,
                        theme.themeDarkAlt,
                        theme.themeDark,
                        theme.themeDarker,
                        theme.neutralLighter,
                        theme.neutralLight,
                        theme.neutralTertiaryAlt,
                        theme.neutralTertiary,
                        theme.neutralSecondary,
                        theme.neutralPrimary,
                        theme.black,
                        theme.white,
                        theme.primaryText,
                        theme.primaryText,
                        theme.accent
                    ];
                }
                return preset;
            }
        },
        watch: {
            showPicker: function (newVal) {
                this.updatePopper();
            },
            value: function (val, oldVal) {
                if (val !== oldVal) {
                    this.getColorObj(val);
                }
            }
        },
        methods: {
            hide: function () {
                this.showPicker = false;
            },
            changeColor: function (data) {
                var colorObj = tinycolor(data.rgba);
                this.colorValue = colorObj.toRgbString();
                this.colorText = colorObj.toHexString();
                this.$emit("input", this.colorValue);
                this.$emit("change", this.colorValue);
                this.onChanged(this.colorValue);
            },
            changeColorText: function (event) {
                var colorObj = tinycolor(this.colorText || "transparent");
                this.colorValue = this.colorText ? colorObj.toRgbString() : null;
                if (this.colorValue) {
                    this.colors = {
                        hex: colorObj.toHexString(),
                        hsl: colorObj.toHsl(),
                        hsv: colorObj.toHsv(),
                        rgba: colorObj.toRgb(),
                        a: colorObj.getAlpha()
                    };
                }
                this.$emit("input", this.colorValue);
                this.$emit("change", this.colorValue);
                this.onChanged(this.colorValue);
            },
            getColorObj: function (color) {
                if (!color)
                    { return; }
                var colorObj = tinycolor(color || "transparent");
                if (!color || color === "transparent") {
                    this.colors = {
                        hex: "#ffffff",
                        hsl: { h: 0, s: 0, l: 1, a: 0 },
                        hsv: { h: 0, s: 0, v: 1, a: 0 },
                        rgba: { r: 255, g: 255, b: 255, a: 0 },
                        a: 0
                    };
                }
                else {
                    this.colors = {
                        hex: colorObj.toHexString(),
                        hsl: colorObj.toHsl(),
                        hsv: colorObj.toHsv(),
                        rgba: colorObj.toRgb(),
                        a: colorObj.getAlpha()
                    };
                }
                this.colorValue = colorObj.toRgbString();
                this.colorText = colorObj.toHexString();
            }
        },
        mounted: function () {
            this.getColorObj(this.value);
            this.popperElm = this.$refs.dropdown;
            this.referenceElm = this.$refs.color;
        }
    };

    /* script */
                script$1$1.beforeCreate = function () {lib_1$1('.vue-colorpicker[data-v-1242288f] { display: flex; flex-direction: row; width: 100%; border: 1px solid #a6a6a6; box-sizing: border-box; } .vue-colorpicker .clear-icon[data-v-1242288f] { cursor: pointer; vertical-align: middle; padding-top: 5px; right: 25px; margin-right: -14px; position: relative; opacity: 0.3; display: inline-block; box-sizing: border-box; } .vue-colorpicker .clear-icon[data-v-1242288f]:hover { opacity: 1; } .vue-colorpicker .clear-icon .ms-Icon[data-v-1242288f] { vertical-align: middle; } .vue-colorpicker-textbox[data-v-1242288f] { height: 32px; vertical-align: middle; display: inline-block; margin-left: 0px; box-sizing: border-box; flex: 1; font-size: 15px; border: none; border-left: 1px solid #a6a6a6; padding-left: 10px; } .vue-colorpicker-btn[data-v-1242288f] { box-sizing: border-box; display: inline-block; vertical-align: middle; width: 32px; margin-right: -1px; height: 32px; border: none; background: #ffffff; cursor: pointer; } /*# sourceMappingURL=colorPicker.vue.map */');};
                var __vue_script__$1$1 = script$1$1;
                
    /* template */
    var __vue_render__$1$1 = function() {
      var _vm = this;
      var _h = _vm.$createElement;
      var _c = _vm._self._c || _h;
      return _c(
        "div",
        [
          _c("uiLabel", [_vm._v(_vm._s(_vm.label))]),
          _vm._v(" "),
          _c("div", { ref: "color", staticClass: "vue-colorpicker" }, [
            _c("span", {
              directives: [
                {
                  name: "clickoutside",
                  rawName: "v-clickoutside",
                  value: _vm.hide,
                  expression: "hide"
                }
              ],
              staticClass: "vue-colorpicker-btn",
              style: _vm.btnStyle,
              on: {
                click: function($event) {
                  _vm.showPicker = !_vm.showPicker;
                }
              }
            }),
            _vm._v(" "),
            _c("input", {
              directives: [
                {
                  name: "model",
                  rawName: "v-model",
                  value: _vm.colorText,
                  expression: "colorText"
                }
              ],
              staticClass: "vue-colorpicker-textbox",
              style: _vm.colorValue
                ? "background-image: linear-gradient(to right, " +
                  _vm.colorValue +
                  " -100%, transparent 100%)"
                : "",
              attrs: { type: "text" },
              domProps: { value: _vm.colorText },
              on: {
                input: [
                  function($event) {
                    if ($event.target.composing) {
                      return
                    }
                    _vm.colorText = $event.target.value;
                  },
                  _vm.changeColorText
                ]
              }
            }),
            _vm._v(" "),
            _vm.colorText
              ? _c(
                  "span",
                  {
                    staticClass: "clear-icon",
                    on: {
                      click: function($event) {
    (_vm.colorText = "") & _vm.changeColorText();
                      }
                    }
                  },
                  [
                    _c("i", {
                      staticClass: "ms-Icon ms-Icon--Clear",
                      attrs: { "aria-hidden": "true" }
                    })
                  ]
                )
              : _vm._e()
          ]),
          _vm._v(" "),
          _c(
            "transition",
            {
              attrs: { name: "el-zoom-in-top" },
              on: { "after-leave": _vm.doDestroy }
            },
            [
              _c(
                "div",
                {
                  directives: [
                    {
                      name: "show",
                      rawName: "v-show",
                      value: _vm.showPicker,
                      expression: "showPicker"
                    }
                  ],
                  ref: "dropdown",
                  staticClass: "vue-colorpicker-panel"
                },
                [
                  _c("sketch-picker", {
                    attrs: { presetColors: _vm.presetColors },
                    on: { input: _vm.changeColor },
                    model: {
                      value: _vm.colors,
                      callback: function($$v) {
                        _vm.colors = $$v;
                      },
                      expression: "colors"
                    }
                  })
                ],
                1
              )
            ]
          )
        ],
        1
      )
    };
    var __vue_staticRenderFns__$1$1 = [];
    __vue_render__$1$1._withStripped = true;

      /* style */
      var __vue_inject_styles__$1$1 = function (inject) {
        if (!inject) { return }
        inject("data-v-1242288f_0", { source: ".vue-colorpicker[data-v-1242288f] {\n  display: flex;\n  flex-direction: row;\n  width: 100%;\n  border: 1px solid #a6a6a6;\n  box-sizing: border-box;\n}\n.vue-colorpicker .clear-icon[data-v-1242288f] {\n    cursor: pointer;\n    vertical-align: middle;\n    padding-top: 5px;\n    right: 25px;\n    margin-right: -14px;\n    position: relative;\n    opacity: 0.3;\n    display: inline-block;\n    box-sizing: border-box;\n}\n.vue-colorpicker .clear-icon[data-v-1242288f]:hover {\n      opacity: 1;\n}\n.vue-colorpicker .clear-icon .ms-Icon[data-v-1242288f] {\n      vertical-align: middle;\n}\n.vue-colorpicker-textbox[data-v-1242288f] {\n    height: 32px;\n    vertical-align: middle;\n    display: inline-block;\n    margin-left: 0px;\n    box-sizing: border-box;\n    flex: 1;\n    font-size: 15px;\n    border: none;\n    border-left: 1px solid #a6a6a6;\n    padding-left: 10px;\n}\n.vue-colorpicker-btn[data-v-1242288f] {\n    box-sizing: border-box;\n    display: inline-block;\n    vertical-align: middle;\n    width: 32px;\n    margin-right: -1px;\n    height: 32px;\n    border: none;\n    background: #ffffff;\n    cursor: pointer;\n}\n\n/*# sourceMappingURL=colorPicker.vue.map */", map: {"version":3,"sources":["C:\\spfx\\spfx_modules\\webpart-utilities\\src\\propertyPaneProperties\\colorPickerProperty\\colorPicker.vue","colorPicker.vue"],"names":[],"mappings":"AA2KA;EACA,aAAA;EACA,mBAAA;EACA,WAAA;EACA,yBAAA;EACA,sBAAA;AAAA;AALA;IAQA,eAAA;IACA,sBAAA;IACA,gBAAA;IACA,WAAA;IACA,mBAAA;IACA,kBAAA;IACA,YAAA;IACA,qBAAA;IACA,sBAAA;AAAA;AAhBA;MAkBA,UAAA;AAAA;AAlBA;MAsBA,sBAAA;AAAA;AAIA;IACA,YAAA;IACA,sBAAA;IACA,qBAAA;IACA,gBAAA;IACA,sBAAA;IACA,OAAA;IACA,eAAA;IACA,YAAA;IACA,8BAAA;IACA,kBAAA;AAAA;AAGA;IACA,sBAAA;IACA,qBAAA;IACA,sBAAA;IACA,WAAA;IACA,kBAAA;IACA,YAAA;IACA,YAAA;IACA,mBAAA;IACA,eAAA;AAAA;;ACjLA,0CAA0C","file":"colorPicker.vue","sourcesContent":["<template>\r\n  <div>\r\n    <uiLabel>{{label}}</uiLabel>\r\n    <div class='vue-colorpicker' ref=\"color\">\r\n      <span class=\"vue-colorpicker-btn\" :style=\"btnStyle\"  @click=\"showPicker = !showPicker\" v-clickoutside=\"hide\"></span>\r\n      <input class=\"vue-colorpicker-textbox\" type=\"text\" v-model=\"colorText\" @input=\"changeColorText\" :style=\"colorValue ? 'background-image: linear-gradient(to right, ' + colorValue + ' -100%, transparent 100%)' : ''\">\r\n      <span class=\"clear-icon\" v-if=\"colorText\" @click=\"(colorText='') & changeColorText()\"><i class=\"ms-Icon ms-Icon--Clear\" aria-hidden=\"true\"></i></span>\r\n    </div>\r\n    <transition name=\"el-zoom-in-top\" @after-leave=\"doDestroy\">\r\n      <div class=\"vue-colorpicker-panel\" ref=\"dropdown\" v-show=\"showPicker\">\r\n        <sketch-picker v-model=\"colors\" @input=\"changeColor\" :presetColors=\"presetColors\"></sketch-picker>\r\n      </div>\r\n    </transition>\r\n  </div>\r\n</template>\r\n\r\n<script lang=\"ts\">\r\nimport tinycolor from \"tinycolor2\";\r\nimport { Sketch } from \"vue-color\";\r\nimport Clickoutside from \"element-ui/lib/utils/clickoutside\";\r\nimport Popper from \"element-ui/lib/utils/vue-popper\";\r\nimport { uiLabel } from \"@wizdom-intranet/spfx-ui-fabric-vue\";\r\n\r\nimport Vue, { VueConstructor } from \"vue\"; //With Vue\r\n\r\nexport default {\r\n  name: \"colorPicker\",\r\n  components: {\r\n    \"sketch-picker\": Sketch,\r\n    uiLabel\r\n  },\r\n  directives: { Clickoutside },\r\n  mixins: [Popper],\r\n  props: {\r\n    label: String,\r\n    value: {\r\n      type: String\r\n    },\r\n    onChanged: Function\r\n  },\r\n  data() {\r\n    return {\r\n      showPicker: false,\r\n      colors: {\r\n        hex: \"#ffffff\",\r\n        a: 1\r\n      },\r\n      colorValue: null,\r\n      colorText: \"\"\r\n    };\r\n  },\r\n  computed: {\r\n    isTransparent() {\r\n      return this.colors.a === 0;\r\n    },\r\n    btnStyle() {\r\n      if (this.isTransparent || !this.colorValue) {\r\n        return {\r\n          background: \"#eee\",\r\n          backgroundImage:\r\n            \"linear-gradient(45deg, rgba(0,0,0,.25) 25%, transparent 0, transparent 75%,rgba(0,0,0,.25)0), linear-gradient(45deg, rgba(0,0,0,.25)25%,transparent 0, transparent 75%,rgba(0,0,0,.25)0)\",\r\n          backgroundPosition: \"0 0, 11px 11px\",\r\n          backgroundSize: \"22px 22px\"\r\n        };\r\n      }\r\n      return {\r\n        background: this.colorValue\r\n      };\r\n    },\r\n    presetColors() {\r\n      let preset;\r\n      var theme;\r\n      if ((theme = window[\"__themeState__\"].theme)) {\r\n        preset = [\r\n          //Top row\r\n          theme.themePrimary,\r\n          theme.themeLighter,\r\n          theme.themeDarkAlt,\r\n          theme.themeDark,\r\n          theme.themeDarker,\r\n          theme.neutralLighter,\r\n          theme.neutralLight,\r\n          theme.neutralTertiaryAlt,\r\n          // Bottom row\r\n          theme.neutralTertiary,\r\n          theme.neutralSecondary,\r\n          theme.neutralPrimary,\r\n          theme.black,\r\n          theme.white,\r\n          theme.primaryText,\r\n          theme.primaryText,\r\n          theme.accent\r\n        ];\r\n      }\r\n\r\n      return preset;\r\n    }\r\n  },\r\n  watch: {\r\n    showPicker(newVal) {\r\n      this.updatePopper();\r\n    },\r\n    value(val, oldVal) {\r\n      if (val !== oldVal) {\r\n        this.getColorObj(val);\r\n      }\r\n    }\r\n  },\r\n\r\n  methods: {\r\n    hide() {\r\n      this.showPicker = false;\r\n    },\r\n    changeColor(data) {\r\n      const colorObj = tinycolor(data.rgba);\r\n      this.colorValue = colorObj.toRgbString();\r\n      this.colorText = colorObj.toHexString();\r\n      this.$emit(\"input\", this.colorValue);\r\n      this.$emit(\"change\", this.colorValue);\r\n      this.onChanged(this.colorValue);\r\n    },\r\n    changeColorText(event) {\r\n      const colorObj = tinycolor(this.colorText || \"transparent\");\r\n      this.colorValue = this.colorText ? colorObj.toRgbString() : null;\r\n      if (this.colorValue) {\r\n        this.colors = {\r\n          hex: colorObj.toHexString(),\r\n          hsl: colorObj.toHsl(),\r\n          hsv: colorObj.toHsv(),\r\n          rgba: colorObj.toRgb(),\r\n          a: colorObj.getAlpha()\r\n        };\r\n      }\r\n      this.$emit(\"input\", this.colorValue);\r\n      this.$emit(\"change\", this.colorValue);\r\n      this.onChanged(this.colorValue);\r\n    },\r\n    getColorObj(color) {\r\n      if (!color) return;\r\n      const colorObj = tinycolor(color || \"transparent\");\r\n      if (!color || color === \"transparent\") {\r\n        this.colors = {\r\n          hex: \"#ffffff\",\r\n          hsl: { h: 0, s: 0, l: 1, a: 0 },\r\n          hsv: { h: 0, s: 0, v: 1, a: 0 },\r\n          rgba: { r: 255, g: 255, b: 255, a: 0 },\r\n          a: 0\r\n        };\r\n      } else {\r\n        this.colors = {\r\n          hex: colorObj.toHexString(),\r\n          hsl: colorObj.toHsl(),\r\n          hsv: colorObj.toHsv(),\r\n          rgba: colorObj.toRgb(),\r\n          a: colorObj.getAlpha()\r\n        };\r\n      }\r\n      this.colorValue = colorObj.toRgbString();\r\n      this.colorText = colorObj.toHexString();\r\n    }\r\n  },\r\n\r\n  mounted() {\r\n    this.getColorObj(this.value);\r\n    this.popperElm = this.$refs.dropdown;\r\n    this.referenceElm = this.$refs.color;\r\n  }\r\n};\r\n</script>\r\n\r\n<style lang=\"scss\" scoped>\r\n.vue-colorpicker {\r\n  display: flex;\r\n  flex-direction: row;\r\n  width: 100%;\r\n  border: 1px solid #a6a6a6;\r\n  box-sizing: border-box;\r\n\r\n  .clear-icon {\r\n    cursor: pointer;\r\n    vertical-align: middle;\r\n    padding-top: 5px;\r\n    right: 25px;\r\n    margin-right: -14px;\r\n    position: relative;\r\n    opacity: 0.3;\r\n    display: inline-block;\r\n    box-sizing: border-box;\r\n    &:hover {\r\n      opacity: 1;\r\n    }\r\n\r\n    .ms-Icon {\r\n      vertical-align: middle;\r\n    }\r\n  }\r\n\r\n  &-textbox {\r\n    height: 32px;\r\n    vertical-align: middle;\r\n    display: inline-block;\r\n    margin-left: 0px;\r\n    box-sizing: border-box;\r\n    flex: 1;\r\n    font-size: 15px;\r\n    border: none;\r\n    border-left: 1px solid #a6a6a6; // Add border to enclose the square\r\n    padding-left: 10px;\r\n  }\r\n\r\n  &-btn {\r\n    box-sizing: border-box;\r\n    display: inline-block;\r\n    vertical-align: middle;\r\n    width: 32px;\r\n    margin-right: -1px;\r\n    height: 32px;\r\n    border: none;\r\n    background: #ffffff;\r\n    cursor: pointer;\r\n  }\r\n}\r\n</style>\r\n",".vue-colorpicker {\n  display: flex;\n  flex-direction: row;\n  width: 100%;\n  border: 1px solid #a6a6a6;\n  box-sizing: border-box; }\n  .vue-colorpicker .clear-icon {\n    cursor: pointer;\n    vertical-align: middle;\n    padding-top: 5px;\n    right: 25px;\n    margin-right: -14px;\n    position: relative;\n    opacity: 0.3;\n    display: inline-block;\n    box-sizing: border-box; }\n    .vue-colorpicker .clear-icon:hover {\n      opacity: 1; }\n    .vue-colorpicker .clear-icon .ms-Icon {\n      vertical-align: middle; }\n  .vue-colorpicker-textbox {\n    height: 32px;\n    vertical-align: middle;\n    display: inline-block;\n    margin-left: 0px;\n    box-sizing: border-box;\n    flex: 1;\n    font-size: 15px;\n    border: none;\n    border-left: 1px solid #a6a6a6;\n    padding-left: 10px; }\n  .vue-colorpicker-btn {\n    box-sizing: border-box;\n    display: inline-block;\n    vertical-align: middle;\n    width: 32px;\n    margin-right: -1px;\n    height: 32px;\n    border: none;\n    background: #ffffff;\n    cursor: pointer; }\n\n/*# sourceMappingURL=colorPicker.vue.map */"]}, media: undefined });

      };
      /* scoped */
      var __vue_scope_id__$1$1 = "data-v-1242288f";
      /* module identifier */
      var __vue_module_identifier__$1$1 = undefined;
      /* functional template */
      var __vue_is_functional_template__$1$1 = false;
      /* style inject SSR */
      

      
      var colorPicker = normalizeComponent$1(
        { render: __vue_render__$1$1, staticRenderFns: __vue_staticRenderFns__$1$1 },
        __vue_inject_styles__$1$1,
        __vue_script__$1$1,
        __vue_scope_id__$1$1,
        __vue_is_functional_template__$1$1,
        __vue_module_identifier__$1$1,
        createInjector,
        undefined
      );

    function normalizeComponent$1$1(template, style, script, scopeId, isFunctionalTemplate, moduleIdentifier
    /* server only */
    , shadowMode, createInjector, createInjectorSSR, createInjectorShadow) {
      if (typeof shadowMode !== 'boolean') {
        createInjectorSSR = createInjector;
        createInjector = shadowMode;
        shadowMode = false;
      } // Vue.extend constructor export interop.


      var options = typeof script === 'function' ? script.options : script; // render functions

      if (template && template.render) {
        options.render = template.render;
        options.staticRenderFns = template.staticRenderFns;
        options._compiled = true; // functional template

        if (isFunctionalTemplate) {
          options.functional = true;
        }
      } // scopedId


      if (scopeId) {
        options._scopeId = scopeId;
      }

      var hook;

      if (moduleIdentifier) {
        // server build
        hook = function hook(context) {
          // 2.3 injection
          context = context || // cached call
          this.$vnode && this.$vnode.ssrContext || // stateful
          this.parent && this.parent.$vnode && this.parent.$vnode.ssrContext; // functional
          // 2.2 with runInNewContext: true

          if (!context && typeof __VUE_SSR_CONTEXT__ !== 'undefined') {
            context = __VUE_SSR_CONTEXT__;
          } // inject component styles


          if (style) {
            style.call(this, createInjectorSSR(context));
          } // register component module identifier for async chunk inference


          if (context && context._registeredComponents) {
            context._registeredComponents.add(moduleIdentifier);
          }
        }; // used by ssr in case component is cached and beforeCreate
        // never gets called


        options._ssrRegister = hook;
      } else if (style) {
        hook = shadowMode ? function (context) {
          style.call(this, createInjectorShadow(context, this.$root.$options.shadowRoot));
        } : function (context) {
          style.call(this, createInjector(context));
        };
      }

      if (hook) {
        if (options.functional) {
          // register for functional component in vue file
          var originalRender = options.render;

          options.render = function renderWithStyleInjection(h, context) {
            hook.call(context);
            return originalRender(h, context);
          };
        } else {
          // inject component registration as beforeCreate hook
          var existing = options.beforeCreate;
          options.beforeCreate = existing ? [].concat(existing, hook) : [hook];
        }
      }

      return script;
    }

    var disabled$1 = {
      props: {
        disabled: {
          type: Boolean,
          "default": false
        }
      }
    };

    var script$2$1 = {
      name: 'ou-label',
      mixins: [disabled$1],
      props: {
        required: {
          type: Boolean,
          "default": false
        }
      },
      computed: {
        labelClass: function labelClass() {
          return {
            'is-disabled': this.disabled,
            'is-required': this.required
          };
        }
      }
    };

    /* script */

    var __vue_script__$2$1 = script$2$1;
    /* template */

    var __vue_render__$2$1 = function __vue_render__() {
      var _vm = this;

      var _h = _vm.$createElement;

      var _c = _vm._self._c || _h;

      return _c('label', {
        staticClass: "ms-Label",
        "class": _vm.labelClass
      }, [_vm._t("default")], 2);
    };

    var __vue_staticRenderFns__$2$1 = [];
    /* style */

    var __vue_inject_styles__$2$1 = undefined;
    /* scoped */

    var __vue_scope_id__$2$1 = undefined;
    /* module identifier */

    var __vue_module_identifier__$2$1 = undefined;
    /* functional template */

    var __vue_is_functional_template__$2$1 = false;
    /* style inject */

    /* style inject SSR */

    /* style inject shadow dom */

    var label$1 = normalizeComponent$1$1({
      render: __vue_render__$2$1,
      staticRenderFns: __vue_staticRenderFns__$2$1
    }, __vue_inject_styles__$2$1, __vue_script__$2$1, __vue_scope_id__$2$1, __vue_is_functional_template__$2$1, __vue_module_identifier__$2$1, false, undefined, undefined, undefined);

    var script$3$1 = {
      loadStyles: lib_1$1,
      "extends": label$1
    };

    /* script */

    var __vue_script__$3$1 = script$3$1;
    /* template */

    /* style */

    var __vue_inject_styles__$3$1 = function __vue_inject_styles__(inject) {
      if (!inject) { return; }
      inject("data-v-7c3d3d8b_0", {
        source: ".ms-Label[data-v-7c3d3d8b]{font-family:\"Segoe UI WestEuropean\",\"Segoe UI\",-apple-system,BlinkMacSystemFont,Roboto,\"Helvetica Neue\",sans-serif;-webkit-font-smoothing:antialiased;box-sizing:border-box;margin:0;padding:0;-webkit-box-shadow:none;-moz-box-shadow:none;box-shadow:none;color:\"[theme:neutralPrimary, default: #333333]\";font-size:12px;font-weight:400;box-sizing:border-box;display:block;padding:5px 0}.ms-Label.is-required[data-v-7c3d3d8b]::after{content:\" *\";color:\"[theme:error, default: #a80000]\"}.ms-Label.is-disabled[data-v-7c3d3d8b]{color:\"[theme:neutralTertiary, default: #a6a6a6]\"}",
        map: undefined,
        media: undefined
      });
    };
    /* scoped */


    var __vue_scope_id__$3$1 = "data-v-7c3d3d8b";
    /* module identifier */

    var __vue_module_identifier__$3$1 = undefined;
    /* functional template */

    var __vue_is_functional_template__$3$1 = undefined;
    /* style inject */

    var __vue_create_injector__$s = function __vue_create_injector__(context) {
      return function (scopeId, data) {
        if (window['wizstyle-' + scopeId]) { return; }
        if (__vue_script__$3$1.loadStyles) { __vue_script__$3$1.loadStyles(data.source); }
        window['wizstyle-' + scopeId] = true;
      };
    };
    /* style inject SSR */

    /* style inject shadow dom */


    var uiLabel$1 = normalizeComponent$1$1({}, __vue_inject_styles__$3$1, __vue_script__$3$1, __vue_scope_id__$3$1, __vue_is_functional_template__$3$1, __vue_module_identifier__$3$1, false, __vue_create_injector__$s, undefined, undefined);

    var script$4$1 = {
        components: {
            uiLabel: uiLabel$1
        },
        props: {
            label: String,
            key: String,
            value: {
                type: String,
                "default": null
            },
            onChanged: Function
        },
        methods: {
            setNumber: function (event) {
                this.value = (this.value || "0").match(/(^-?[\d]+[\.\d]*)/g)[0];
                var num = parseInt(this.value, 10);
                var val = this.value === "" ? null : isNaN(num) ? 0 : num;
                this.onChanged(val);
            }
        }
    };

    /* script */
                script$4$1.beforeCreate = function () {lib_1$1(' /*# sourceMappingURL=numberFieldProperty.vue.map */');};
                var __vue_script__$4$1 = script$4$1;
                
    /* template */
    var __vue_render__$3$1 = function() {
      var _vm = this;
      var _h = _vm.$createElement;
      var _c = _vm._self._c || _h;
      return _c(
        "div",
        [
          _c("uiLabel", [_vm._v(_vm._s(_vm.label))]),
          _vm._v(" "),
          _c("input", {
            directives: [
              {
                name: "model",
                rawName: "v-model",
                value: _vm.value,
                expression: "value"
              }
            ],
            attrs: { type: "number" },
            domProps: { value: _vm.value },
            on: {
              input: [
                function($event) {
                  if ($event.target.composing) {
                    return
                  }
                  _vm.value = $event.target.value;
                },
                _vm.setNumber
              ]
            }
          })
        ],
        1
      )
    };
    var __vue_staticRenderFns__$3$1 = [];
    __vue_render__$3$1._withStripped = true;

      /* style */
      var __vue_inject_styles__$4$1 = function (inject) {
        if (!inject) { return }
        inject("data-v-908dda44_0", { source: "\n/*# sourceMappingURL=numberFieldProperty.vue.map */", map: {"version":3,"sources":["numberFieldProperty.vue"],"names":[],"mappings":";AACA,kDAAkD","file":"numberFieldProperty.vue"}, media: undefined });

      };
      /* scoped */
      var __vue_scope_id__$4$1 = "data-v-908dda44";
      /* module identifier */
      var __vue_module_identifier__$4$1 = undefined;
      /* functional template */
      var __vue_is_functional_template__$4$1 = false;
      /* style inject SSR */
      

      
      var imageUploader$1 = normalizeComponent$1(
        { render: __vue_render__$3$1, staticRenderFns: __vue_staticRenderFns__$3$1 },
        __vue_inject_styles__$4$1,
        __vue_script__$4$1,
        __vue_scope_id__$4$1,
        __vue_is_functional_template__$4$1,
        __vue_module_identifier__$4$1,
        createInjector,
        undefined
      );

    var chromeType;
    (function (chromeType) {
        chromeType["none"] = "none";
        chromeType["title"] = "title";
        chromeType["visual"] = "visual";
    })(chromeType || (chromeType = {}));
    function createChromeProps() {
        return {
            title: null,
            chromeType: null,
            image: null,
            showTitle: true,
            showImage: true,
            textColor: null,
            backgroundColor: null,
            webpartContentClass: null,
            webpartBorder: null,
            webpartPadding: null,
            useFixedHeight: false,
            fixedHeight: null,
            paddingTop: null,
            paddingSides: null,
        };
    }

    var code = {
        inject: [],
        data: function () {
            return { isEdit: false };
        },
        methods: {
            titleChanged: function (event) {
                this.$emit("titleChanged", this.title);
            }
        },
        props: ["title", "environmentInfo"],
        created: function () { },
        watch: {}
    };

    //

    /* script */
                code.beforeCreate = function () {lib_1$1('.webpart-title[data-v-1f8d57e0] { text-align: left; flex-grow: 1; font-weight: 100; overflow: hidden; text-overflow: ellipsis; font-size: 24px; } .webpart-title .webpart-title-edit[data-v-1f8d57e0] { height: 36px; background-color: transparent; border: none; box-sizing: border-box; display: block; margin: 0; outline: 0; overflow: hidden; resize: none; white-space: pre; width: 100%; font-family: inherit; font-size: inherit; font-weight: inherit; line-height: inherit; text-align: inherit; color: inherit; } .webpart-title .webpart-title-element[data-v-1f8d57e0] { text-overflow: ellipsis; overflow: hidden; white-space: nowrap; } /*# sourceMappingURL=editableTitle.vue.map */');};
                var __vue_script__$5$1 = code;
                
    /* template */
    var __vue_render__$4$1 = function() {
      var _vm = this;
      var _h = _vm.$createElement;
      var _c = _vm._self._c || _h;
      return _c("div", { staticClass: "webpart-title" }, [
        _c("span", { staticClass: "webpart-title-element" }, [
          _vm._v(_vm._s(_vm.title))
        ])
      ])
    };
    var __vue_staticRenderFns__$4$1 = [];
    __vue_render__$4$1._withStripped = true;

      /* style */
      var __vue_inject_styles__$5$1 = function (inject) {
        if (!inject) { return }
        inject("data-v-1f8d57e0_0", { source: ".webpart-title[data-v-1f8d57e0] {\n  text-align: left;\n  flex-grow: 1;\n  font-weight: 100;\n  overflow: hidden;\n  text-overflow: ellipsis;\n  font-size: 24px;\n}\n.webpart-title .webpart-title-edit[data-v-1f8d57e0] {\n    height: 36px;\n    background-color: transparent;\n    border: none;\n    box-sizing: border-box;\n    display: block;\n    margin: 0;\n    outline: 0;\n    overflow: hidden;\n    resize: none;\n    white-space: pre;\n    width: 100%;\n    font-family: inherit;\n    font-size: inherit;\n    font-weight: inherit;\n    line-height: inherit;\n    text-align: inherit;\n    color: inherit;\n}\n.webpart-title .webpart-title-element[data-v-1f8d57e0] {\n    text-overflow: ellipsis;\n    overflow: hidden;\n    white-space: nowrap;\n}\n\n/*# sourceMappingURL=editableTitle.vue.map */", map: {"version":3,"sources":["C:\\spfx\\spfx_modules\\webpart-utilities\\src\\wizdom-webpart\\components\\editableTitle\\editableTitle.vue","editableTitle.vue"],"names":[],"mappings":"AAmBA;EACA,gBAAA;EACA,YAAA;EACA,gBAAA;EACA,gBAAA;EACA,uBAAA;EACA,eAAA;AAAA;AANA;IASA,YAAA;IACA,6BAAA;IACA,YAAA;IACA,sBAAA;IACA,cAAA;IACA,SAAA;IACA,UAAA;IACA,gBAAA;IACA,YAAA;IACA,gBAAA;IACA,WAAA;IACA,oBAAA;IACA,kBAAA;IACA,oBAAA;IACA,oBAAA;IACA,mBAAA;IACA,cAAA;AAAA;AAzBA;IA6BA,uBAAA;IACA,gBAAA;IACA,mBAAA;AAAA;;ACpBA,4CAA4C","file":"editableTitle.vue","sourcesContent":["<template>\r\n    <div class=\"webpart-title\">\r\n        <!--\r\n          Flip this to enable inline edit again\r\n          <textarea class=\"webpart-title-edit\" placeholder=\"Title\" v-if=\"environmentInfo.isInEditMode\" v-model=\"title\" @input=\"titleChanged\"></textarea>\r\n          <span class=\"webpart-title-element\" v-if=\"!environmentInfo.isInEditMode\">{{title}}</span>\r\n        \r\n        Remove the below to enable inline edit again\r\n        -->\r\n        <span class=\"webpart-title-element\">{{title}}</span>\r\n    </div>\r\n</template>\r\n\r\n<script>\r\n  import code from \"./editableTitle\";\r\n  export default code;\r\n</script>\r\n\r\n<style <style lang=\"scss\" scoped>\r\n  .webpart-title {\r\n    text-align: left;\r\n    flex-grow: 1;\r\n    font-weight: 100;\r\n    overflow: hidden;\r\n    text-overflow: ellipsis;\r\n    font-size: 24px;\r\n\r\n    .webpart-title-edit {\r\n      height: 36px;\r\n      background-color: transparent;\r\n      border: none;\r\n      box-sizing: border-box;\r\n      display: block;\r\n      margin: 0;\r\n      outline: 0;\r\n      overflow: hidden;\r\n      resize: none;\r\n      white-space: pre;\r\n      width: 100%;\r\n      font-family: inherit;\r\n      font-size: inherit;\r\n      font-weight: inherit;\r\n      line-height: inherit;\r\n      text-align: inherit;\r\n      color: inherit;\r\n    }\r\n\r\n    .webpart-title-element {\r\n      text-overflow: ellipsis;\r\n      overflow: hidden;\r\n      white-space: nowrap;\r\n    }\r\n  }\r\n</style>",".webpart-title {\n  text-align: left;\n  flex-grow: 1;\n  font-weight: 100;\n  overflow: hidden;\n  text-overflow: ellipsis;\n  font-size: 24px; }\n  .webpart-title .webpart-title-edit {\n    height: 36px;\n    background-color: transparent;\n    border: none;\n    box-sizing: border-box;\n    display: block;\n    margin: 0;\n    outline: 0;\n    overflow: hidden;\n    resize: none;\n    white-space: pre;\n    width: 100%;\n    font-family: inherit;\n    font-size: inherit;\n    font-weight: inherit;\n    line-height: inherit;\n    text-align: inherit;\n    color: inherit; }\n  .webpart-title .webpart-title-element {\n    text-overflow: ellipsis;\n    overflow: hidden;\n    white-space: nowrap; }\n\n/*# sourceMappingURL=editableTitle.vue.map */"]}, media: undefined });

      };
      /* scoped */
      var __vue_scope_id__$5$1 = "data-v-1f8d57e0";
      /* module identifier */
      var __vue_module_identifier__$5$1 = undefined;
      /* functional template */
      var __vue_is_functional_template__$5$1 = false;
      /* style inject SSR */
      

      
      var editableTitle = normalizeComponent$1(
        { render: __vue_render__$4$1, staticRenderFns: __vue_staticRenderFns__$4$1 },
        __vue_inject_styles__$5$1,
        __vue_script__$5$1,
        __vue_scope_id__$5$1,
        __vue_is_functional_template__$5$1,
        __vue_module_identifier__$5$1,
        createInjector,
        undefined
      );

    var Size;
    (function (Size) {
        Size["Small"] = "small";
        Size["Medium"] = "medium";
        Size["Large"] = "large";
        Size["Xlarge"] = "xlarge";
    })(Size || (Size = {}));

    var code$1 = {
        components: {
            editableTitle: editableTitle
        },
        directives: {
            resize: resize
        },
        inject: ["wizdomService"],
        data: function () {
            return {
                imageWidth: 0,
                contentWidth: 0,
                contentHeight: 0,
                expanded: false,
                height: 0,
                size: 0,
                isTooSmall: false
            };
        },
        methods: {
            titleChanged: function (event) {
                this.chromeProperties.title = event;
                this.$emit("titleChanged", this.chromeProperties.title);
                this.wizdomService
                    ? this.wizdomService.spContext.propertyPane.refresh()
                    : function () { };
            },
            getImageWidth: function () {
                this.imageWidth = this.$refs.imageContainer.clientWidth;
            },
            expandToggle: function () {
                this.expanded = !this.expanded;
            },
            between: function (x, min, max) {
                return x >= min && x <= max;
            },
            reCompute: function () {
                this.height = this.$refs.webpartChrome.clientHeight;
                this.contentWidth = this.$refs.webpartContent.clientWidth;
                this.contentHeight = this.$refs.webpartContent.clientHeight;
                var ps = this.webpartPaddingSides;
                this.between(this.contentWidth - (ps * 2), 0, 300) ? this.isTooSmall = true : this.isTooSmall = false;
                if (this.between(this.contentWidth, 0, 550)) {
                    this.size = Size.Small;
                }
                if (this.between(this.contentWidth, 551, 1000)) {
                    this.size = Size.Medium;
                }
                if (this.between(this.contentWidth, 1001, 1250)) {
                    this.size = Size.Large;
                }
                if (this.contentWidth > 1250)
                    { this.size = Size.Xlarge; }
                this.$emit("webpart-resize", { width: this.contentWidth, height: this.contentHeight, size: this.size });
            }
        },
        computed: {
            webpartAlias: function () {
                return this.wizdomService.spContext.manifest.alias;
            },
            showSettings: function () {
                return this.environmentInfo.isInEditMode;
            },
            headerImageUrl: function () {
                return this.chromeProperties.image || this.image;
            },
            textColorValue: function () {
                return this.chromeProperties.textColor || this.textColor;
            },
            backgroundColorValue: function () {
                return this.chromeProperties.backgroundColor || this.backgroundColor;
            },
            webpartContentClassValue: function () {
                return this.chromeProperties.webpartContentClass || this.webpartContentClass;
            },
            useWebpartBorder: function () {
                return this.chromeProperties.webpartBorder !== null ? this.chromeProperties.webpartBorder : this.webpartBorder;
            },
            webpartNeedPadding: function () {
                return this.chromeProperties.webpartPadding !== null ? this.chromeProperties.webpartPadding : this.webpartPadding;
            },
            webpartPaddingTop: function () {
                var calculatedPadding = (typeof this.chromeProperties.paddingTop === 'number' ? this.chromeProperties.paddingTop : (typeof this.paddingTop === 'number' ? this.paddingTop : 20));
                return calculatedPadding;
            },
            webpartPaddingSides: function () {
                var calculatedPadding = (typeof this.chromeProperties.paddingSides === 'number' ? this.chromeProperties.paddingSides : (typeof this.paddingSides === 'number' ? this.paddingSides : 10));
                return calculatedPadding;
            },
            hasData: function () {
                return this.dynamicData || this.dynamicData === 0;
            },
            webpartTitle: {
                get: function () {
                    return this.chromeProperties.title || this.title;
                },
                set: function (newVal) {
                    this.chromeProperties.title = newVal;
                    this.$emit("titleChanged", this.chromeProperties.title);
                    this.wizdomService
                        ? this.wizdomService.spContext.propertyPane.refresh()
                        : function () { };
                }
            },
            webpartChromeType: function () {
                return (this.chromeProperties.chromeType || this.chromeType || chromeType.none);
            },
            isValidHeight: function () {
                return (this.chromeProperties.useFixedHeight &&
                    this.chromeProperties.fixedHeight > 1 &&
                    this.chromeProperties.fixedHeight != null &&
                    this.chromeProperties.fixedHeight != undefined);
            },
            isTooBig: function () {
                return this.height > this.chromeProperties.fixedHeight;
            },
            webpartStyle: function () {
                return {
                    "height": this.isValidHeight && !this.expanded
                        ? this.chromeProperties.fixedHeight + "px"
                        : "auto",
                    "background-color": this.webpartBackgroundColorValue
                };
            },
            paddingStyle: function () {
                return this.webpartNeedPadding ? { 'padding-top': this.webpartPaddingTop + 'px', 'padding-left': this.webpartPaddingSides + 'px', 'padding-right': this.webpartPaddingSides + 'px' } : {};
            }
        },
        props: {
            chromeProperties: {
                type: Object,
                "default": createChromeProps()
            },
            dynamicData: [String, Number, Boolean, Date],
            image: String,
            textColor: String,
            backgroundColor: String,
            environmentInfo: Object,
            chromeType: chromeType,
            webpartBorder: Boolean,
            webpartPadding: Boolean,
            webpartContentClass: String,
            title: String,
            paddingTop: Number,
            paddingSides: Number
        },
        created: function () { },
        watch: {},
        mounted: function () { }
    };

    //

    /* script */
                code$1.beforeCreate = function () {lib_1$1('.wizdom-webpart[data-v-573e9c26] { display: flex; flex-direction: column; } .CanvasSection-col .wizdom-webpart .ms-Grid.revert-Padding[data-v-573e9c26] { padding: 0 8px; } .wizdom-webpart .webpart-container.webpart-exact-height[data-v-573e9c26] { flex: 1; } .wizdom-webpart .webpart-container.webpart-exact-height.hide-overflow[data-v-573e9c26] { overflow: hidden; } .wizdom-webpart .clickable[data-v-573e9c26] { user-select: none; cursor: pointer; } .wizdom-webpart .bottom-bar .expand-toggle[data-v-573e9c26] { float: right; height: 1em; width: 1em; padding: 5px 10px; } .webpart-chrome[data-v-573e9c26] { display: flex; flex-direction: column; align-items: stretch; } .webpart-chrome .webpart-header[data-v-573e9c26] { display: flex; align-items: baseline; flex-shrink: 0; } .chrome-title .webpart-chrome .webpart-header.webpart-border[data-v-573e9c26] { border: 1px solid "[theme:neutralLighter, default:#f4f4f4]"; border-bottom: none; } .webpart-chrome .webpart-header.header-title[data-v-573e9c26] { color: "[theme:bodyText, default: #333]"; } .webpart-chrome .webpart-header.header-title.header-padding[data-v-573e9c26] { padding: 5px 10px 0 10px; } .webpart-chrome .webpart-header.image-header[data-v-573e9c26] { height: 125px; width: 100%; display: flex; flex-direction: row; align-items: stretch; } .webpart-chrome .webpart-header.image-header .header-image-data[data-v-573e9c26] { display: flex; flex-direction: column; flex-wrap: nowrap; align-items: stretch; flex: 1; background-color: "[theme:themePrimary, default: #0078d4]"; height: 100%; min-width: 200px; padding-left: 24px; box-sizing: border-box; flex-basis: 40%; width: 40%; color: "[theme:white, default: #fff]"; } .webpart-chrome .webpart-header.image-header .header-image-data.header-no-image[data-v-573e9c26] { width: 100%; flex-basis: 100%; } .webpart-chrome .webpart-header.image-header .header-image-data .image-data-number[data-v-573e9c26] { font-size: 50px; font-weight: normal; line-height: 1em; margin-top: 32px; } .webpart-chrome .webpart-header.image-header .header-image-data .image-data-title[data-v-573e9c26] { display: flex; flex: 1; flex-direction: column; margin-bottom: 16px; } .webpart-chrome .webpart-header.image-header .header-image-data .image-data-title[data-v-573e9c26] .webpart-title { display: flex; align-items: center; margin-right: 5px; } .webpart-chrome .webpart-header.image-header .header-image-data .image-data-title[data-v-573e9c26] .webpart-title .webpart-title-element, .webpart-chrome .webpart-header.image-header .header-image-data .image-data-title[data-v-573e9c26] .webpart-title .webpart-title-edit { font-weight: normal; font-size: 21px; line-height: 1em; height: 1.15em; padding: 0; } .webpart-chrome .webpart-header.image-header .header-image-container[data-v-573e9c26] { flex: 2; flex-basis: 60%; height: 100%; } .webpart-chrome .webpart-header.image-header .header-image-container.header-no-image[data-v-573e9c26] { display: none; } .webpart-chrome .webpart-header.image-header .header-image-container .webpart-header-image[data-v-573e9c26] { width: 100%; background-position: center; background-size: cover; height: 100%; } .webpart-chrome .webpart-header.image-header .header-image-container .webpart-header-image.placeholder[data-v-573e9c26] { background-color: #ccc; display: flex; flex-direction: column; align-items: center; justify-content: center; } .webpart-chrome .webpart-header.image-header .header-image-container .webpart-header-image .placeholder-center.text[data-v-573e9c26] { font-size: 25px; font-weight: bold; color: #777; opacity: 0.7; } .webpart-chrome .webpart-header.image-header .header-image-container .webpart-header-image .placeholder-center.icon[data-v-573e9c26] { font-size: 35px; font-weight: bold; color: #777; opacity: 0.7; } .webpart-chrome .webpart-content[data-v-573e9c26] { box-sizing: border-box; } .webpart-chrome .webpart-content.webpart-border[data-v-573e9c26] { border: 1px solid "[theme:neutralLight, default:#eaeaea]"; } .chrome-visual .webpart-chrome .webpart-content.webpart-border[data-v-573e9c26], .chrome-title .webpart-chrome .webpart-content.webpart-border[data-v-573e9c26] { border-top: none; } /*# sourceMappingURL=wizdomWebpart.vue.map */');};
                var __vue_script__$6$1 = code$1;
                
    /* template */
    var __vue_render__$5$1 = function() {
      var _vm = this;
      var _h = _vm.$createElement;
      var _c = _vm._self._c || _h;
      return _c(
        "div",
        {
          staticClass: "wizdom-webpart",
          class: [
            "chrome-" + _vm.webpartChromeType,
            _vm.webpartContentClassValue,
            _vm.webpartAlias
          ],
          style: _vm.webpartStyle
        },
        [
          _c(
            "div",
            {
              staticClass: "webpart-container",
              class: [
                {
                  "webpart-exact-height": _vm.isValidHeight,
                  "hide-overflow": !_vm.expanded && _vm.isTooBig,
                  "webpart-fallback": _vm.isTooSmall
                },
                "webpart-size-" + _vm.size
              ]
            },
            [
              _c(
                "div",
                {
                  directives: [
                    {
                      name: "resize",
                      rawName: "v-resize:debounce.initial",
                      value: _vm.reCompute,
                      expression: "reCompute",
                      arg: "debounce",
                      modifiers: { initial: true }
                    }
                  ],
                  ref: "webpartChrome",
                  staticClass: "webpart-chrome"
                },
                [
                  _vm.webpartChromeType === "title"
                    ? _c(
                        "div",
                        {
                          ref: "webpartHeader",
                          staticClass: "webpart-header header-title",
                          class: {
                            "webpart-border": _vm.useWebpartBorder,
                            "header-padding":
                              _vm.webpartNeedPadding && _vm.useWebpartBorder
                          }
                        },
                        [
                          _c("editableTitle", {
                            attrs: {
                              environmentInfo: _vm.environmentInfo,
                              title: _vm.webpartTitle
                            },
                            on: { titleChanged: _vm.titleChanged }
                          })
                        ],
                        1
                      )
                    : _vm._e(),
                  _vm._v(" "),
                  _vm.webpartChromeType === "visual"
                    ? _c(
                        "div",
                        {
                          ref: "webpartHeader",
                          staticClass: "webpart-header image-header"
                        },
                        [
                          _vm.chromeProperties.showTitle
                            ? _c(
                                "div",
                                {
                                  staticClass: "header-image-data",
                                  class: {
                                    "header-no-image": !_vm.chromeProperties
                                      .showImage
                                  },
                                  style:
                                    (_vm.backgroundColorValue
                                      ? "background-color: " +
                                        _vm.backgroundColorValue +
                                        ";"
                                      : "") +
                                    (_vm.textColorValue
                                      ? "color: " + _vm.textColorValue + ";"
                                      : "")
                                },
                                [
                                  _vm.hasData
                                    ? _c(
                                        "div",
                                        { staticClass: "image-data-number" },
                                        [
                                          _vm._v(
                                            "\n            " +
                                              _vm._s(_vm.dynamicData) +
                                              "\n          "
                                          )
                                        ]
                                      )
                                    : _vm._e(),
                                  _vm._v(" "),
                                  _c(
                                    "div",
                                    { staticClass: "image-data-title" },
                                    [
                                      _c("editableTitle", {
                                        attrs: {
                                          environmentInfo: _vm.environmentInfo,
                                          title: _vm.webpartTitle
                                        },
                                        on: { titleChanged: _vm.titleChanged }
                                      })
                                    ],
                                    1
                                  )
                                ]
                              )
                            : _vm._e(),
                          _vm._v(" "),
                          _c(
                            "div",
                            {
                              directives: [
                                {
                                  name: "resize",
                                  rawName: "v-resize:debounce.initial",
                                  value: _vm.getImageWidth,
                                  expression: "getImageWidth",
                                  arg: "debounce",
                                  modifiers: { initial: true }
                                }
                              ],
                              ref: "imageContainer",
                              staticClass: "header-image-container",
                              class: {
                                "header-no-image": !_vm.chromeProperties.showImage
                              }
                            },
                            [
                              _vm.headerImageUrl
                                ? _c("div", {
                                    staticClass: "webpart-header-image",
                                    style:
                                      "background-image: url(" +
                                      _vm.headerImageUrl +
                                      ")",
                                    attrs: {
                                      title: _vm.environmentInfo.isInEditMode
                                        ? "Width: " +
                                          _vm.imageWidth +
                                          "px, Height: 125px"
                                        : ""
                                    }
                                  })
                                : _vm._e(),
                              _vm._v(" "),
                              !_vm.headerImageUrl
                                ? _c(
                                    "div",
                                    {
                                      staticClass:
                                        "webpart-header-image placeholder",
                                      attrs: {
                                        title:
                                          "Height: 125px, Width: " +
                                          _vm.imageWidth +
                                          "px"
                                      }
                                    },
                                    [
                                      _vm.environmentInfo.isInEditMode
                                        ? _c(
                                            "div",
                                            {
                                              staticClass: "placeholder-center icon"
                                            },
                                            [
                                              _c("i", {
                                                staticClass:
                                                  "ms-Icon ms-Icon--Camera",
                                                attrs: { "aria-hidden": "true" }
                                              })
                                            ]
                                          )
                                        : _vm._e(),
                                      _vm._v(" "),
                                      _vm.environmentInfo.isInEditMode
                                        ? _c(
                                            "div",
                                            {
                                              staticClass: "placeholder-center text"
                                            },
                                            [
                                              _vm._v(
                                                "\n              " +
                                                  _vm._s(_vm.imageWidth) +
                                                  "x125\n            "
                                              )
                                            ]
                                          )
                                        : _vm._e()
                                    ]
                                  )
                                : _vm._e()
                            ]
                          )
                        ]
                      )
                    : _vm._e(),
                  _vm._v(" "),
                  _vm.webpartChromeType === "none"
                    ? _c("div", {
                        ref: "webpartHeader",
                        staticClass: "webpart-header header-none"
                      })
                    : _vm._e(),
                  _vm._v(" "),
                  _c(
                    "div",
                    {
                      ref: "webpartContent",
                      staticClass: "webpart-content",
                      class: {
                        "webpart-border": _vm.useWebpartBorder,
                        "content-padding": _vm.webpartNeedPadding
                      },
                      style: _vm.paddingStyle
                    },
                    [_vm._t("default")],
                    2
                  )
                ]
              )
            ]
          ),
          _vm._v(" "),
          _vm.isValidHeight && _vm.isTooBig
            ? _c("div", { staticClass: "bottom-bar" }, [
                _c("span", { staticClass: "expand-toggle" }, [
                  !_vm.expanded
                    ? _c("i", {
                        staticClass: "ms-Icon ms-Icon--ChevronDown clickable",
                        attrs: { "aria-hidden": "true" },
                        on: { click: _vm.expandToggle }
                      })
                    : _vm._e(),
                  _vm._v(" "),
                  _vm.expanded
                    ? _c("i", {
                        staticClass: "ms-Icon ms-Icon--ChevronUp clickable",
                        attrs: { "aria-hidden": "true" },
                        on: { click: _vm.expandToggle }
                      })
                    : _vm._e()
                ])
              ])
            : _vm._e()
        ]
      )
    };
    var __vue_staticRenderFns__$5$1 = [];
    __vue_render__$5$1._withStripped = true;

      /* style */
      var __vue_inject_styles__$6$1 = function (inject) {
        if (!inject) { return }
        inject("data-v-573e9c26_0", { source: ".wizdom-webpart[data-v-573e9c26] {\n  display: flex;\n  flex-direction: column;\n}\n.CanvasSection-col .wizdom-webpart .ms-Grid.revert-Padding[data-v-573e9c26] {\n    padding: 0 8px;\n}\n.wizdom-webpart .webpart-container.webpart-exact-height[data-v-573e9c26] {\n    flex: 1;\n}\n.wizdom-webpart .webpart-container.webpart-exact-height.hide-overflow[data-v-573e9c26] {\n      overflow: hidden;\n}\n.wizdom-webpart .clickable[data-v-573e9c26] {\n    user-select: none;\n    cursor: pointer;\n}\n.wizdom-webpart .bottom-bar .expand-toggle[data-v-573e9c26] {\n    float: right;\n    height: 1em;\n    width: 1em;\n    padding: 5px 10px;\n}\n.webpart-chrome[data-v-573e9c26] {\n  display: flex;\n  flex-direction: column;\n  align-items: stretch;\n}\n.webpart-chrome .webpart-header[data-v-573e9c26] {\n    display: flex;\n    align-items: baseline;\n    flex-shrink: 0;\n}\n.chrome-title .webpart-chrome .webpart-header.webpart-border[data-v-573e9c26] {\n      border: 1px solid \"[theme:neutralLighter, default:#f4f4f4]\";\n      border-bottom: none;\n}\n.webpart-chrome .webpart-header.header-title[data-v-573e9c26] {\n      color: \"[theme:bodyText, default: #333]\";\n}\n.webpart-chrome .webpart-header.header-title.header-padding[data-v-573e9c26] {\n        padding: 5px 10px 0 10px;\n}\n.webpart-chrome .webpart-header.image-header[data-v-573e9c26] {\n      height: 125px;\n      width: 100%;\n      display: flex;\n      flex-direction: row;\n      align-items: stretch;\n}\n.webpart-chrome .webpart-header.image-header .header-image-data[data-v-573e9c26] {\n        display: flex;\n        flex-direction: column;\n        flex-wrap: nowrap;\n        align-items: stretch;\n        flex: 1;\n        background-color: \"[theme:themePrimary, default: #0078d4]\";\n        height: 100%;\n        min-width: 200px;\n        padding-left: 24px;\n        box-sizing: border-box;\n        flex-basis: 40%;\n        width: 40%;\n        color: \"[theme:white, default: #fff]\";\n}\n.webpart-chrome .webpart-header.image-header .header-image-data.header-no-image[data-v-573e9c26] {\n          width: 100%;\n          flex-basis: 100%;\n}\n.webpart-chrome .webpart-header.image-header .header-image-data .image-data-number[data-v-573e9c26] {\n          font-size: 50px;\n          font-weight: normal;\n          line-height: 1em;\n          margin-top: 32px;\n}\n.webpart-chrome .webpart-header.image-header .header-image-data .image-data-title[data-v-573e9c26] {\n          display: flex;\n          flex: 1;\n          flex-direction: column;\n          margin-bottom: 16px;\n}\n.webpart-chrome .webpart-header.image-header .header-image-data .image-data-title[data-v-573e9c26] .webpart-title {\n            display: flex;\n            align-items: center;\n            margin-right: 5px;\n}\n.webpart-chrome .webpart-header.image-header .header-image-data .image-data-title[data-v-573e9c26] .webpart-title .webpart-title-element,\n            .webpart-chrome .webpart-header.image-header .header-image-data .image-data-title[data-v-573e9c26] .webpart-title .webpart-title-edit {\n              font-weight: normal;\n              font-size: 21px;\n              line-height: 1em;\n              height: 1.15em;\n              padding: 0;\n}\n.webpart-chrome .webpart-header.image-header .header-image-container[data-v-573e9c26] {\n        flex: 2;\n        flex-basis: 60%;\n        height: 100%;\n}\n.webpart-chrome .webpart-header.image-header .header-image-container.header-no-image[data-v-573e9c26] {\n          display: none;\n}\n.webpart-chrome .webpart-header.image-header .header-image-container .webpart-header-image[data-v-573e9c26] {\n          width: 100%;\n          background-position: center;\n          background-size: cover;\n          height: 100%;\n}\n.webpart-chrome .webpart-header.image-header .header-image-container .webpart-header-image.placeholder[data-v-573e9c26] {\n            background-color: #ccc;\n            display: flex;\n            flex-direction: column;\n            align-items: center;\n            justify-content: center;\n}\n.webpart-chrome .webpart-header.image-header .header-image-container .webpart-header-image .placeholder-center.text[data-v-573e9c26] {\n            font-size: 25px;\n            font-weight: bold;\n            color: #777;\n            opacity: 0.7;\n}\n.webpart-chrome .webpart-header.image-header .header-image-container .webpart-header-image .placeholder-center.icon[data-v-573e9c26] {\n            font-size: 35px;\n            font-weight: bold;\n            color: #777;\n            opacity: 0.7;\n}\n.webpart-chrome .webpart-content[data-v-573e9c26] {\n    box-sizing: border-box;\n}\n.webpart-chrome .webpart-content.webpart-border[data-v-573e9c26] {\n      border: 1px solid \"[theme:neutralLight, default:#eaeaea]\";\n}\n.chrome-visual .webpart-chrome .webpart-content.webpart-border[data-v-573e9c26],\n      .chrome-title .webpart-chrome .webpart-content.webpart-border[data-v-573e9c26] {\n        border-top: none;\n}\n\n/*# sourceMappingURL=wizdomWebpart.vue.map */", map: {"version":3,"sources":["C:\\spfx\\spfx_modules\\webpart-utilities\\src\\wizdom-webpart\\wizdomWebpart.vue","wizdomWebpart.vue"],"names":[],"mappings":"AA+DA;EACA,aAAA;EACA,sBAAA;AAAA;AAIA;IAEA,cAAA;AAAA;AARA;IAgBA,OAAA;AAAA;AAhBA;MAmBA,gBAAA;AAAA;AAnBA;IAyBA,iBAAA;IACA,eAAA;AAAA;AA1BA;IAgCA,YAAA;IACA,WAAA;IACA,UAAA;IACA,iBAAA;AAAA;AAKA;EACA,aAAA;EACA,sBAAA;EACA,oBAAA;AAAA;AAHA;IAOA,aAAA;IACA,qBAAA;IACA,cAAA;AAAA;AAGA;MACA,2DAAA;MACA,mBAAA;AAAA;AAdA;MAmBA,wCAnEA;AAAA;AAgDA;QAqBA,wBA1EA;AAAA;AAqDA;MA0BA,aArEA;MAsEA,WAAA;MACA,aAAA;MACA,mBAAA;MACA,oBAAA;AAAA;AA9BA;QAiCA,aAAA;QACA,sBAAA;QACA,iBAAA;QACA,oBAAA;QACA,OAAA;QACA,0DApFA;QAqFA,YAAA;QACA,gBApFA;QAqFA,kBA7FA;QA8FA,sBAAA;QACA,eAAA;QACA,UAAA;QACA,qCA5FA;AAAA;AA+CA;UAgDA,WAAA;UACA,gBAAA;AAAA;AAjDA;UAqDA,eAAA;UACA,mBAAA;UACA,gBAAA;UACA,gBA3GA;AAAA;AAmDA;UA4DA,aAAA;UACA,OAAA;UACA,sBAAA;UAEA,mBAlHA;AAAA;AAkDA;YAoEA,aAAA;YACA,mBAAA;YACA,iBAAA;AAAA;AAtEA;;cA0EA,mBAAA;cACA,eAAA;cACA,gBAAA;cACA,cAAA;cACA,UAAA;AAAA;AA9EA;QAqFA,OAAA;QACA,eAAA;QACA,YAAA;AAAA;AAvFA;UA0FA,aAAA;AAAA;AA1FA;UA6FA,WAAA;UACA,2BAAA;UACA,sBAAA;UACA,YAAA;AAAA;AAhGA;YAmGA,sBAAA;YACA,aAAA;YACA,sBAAA;YACA,mBAAA;YACA,uBAAA;AAAA;AAvGA;YA4GA,eAAA;YACA,iBAAA;YACA,WAAA;YACA,YAAA;AAAA;AA/GA;YAkHA,eAAA;YACA,iBAAA;YACA,WAAA;YACA,YAAA;AAAA;AArHA;IA8HA,sBAAA;AAAA;AA9HA;MAgIA,yDAAA;AAAA;AACA;;QAEA,gBAAA;AAAA;;AC1HA,4CAA4C","file":"wizdomWebpart.vue","sourcesContent":["<template>\r\n  <div class=\"wizdom-webpart\" :class=\"['chrome-' + webpartChromeType, webpartContentClassValue, webpartAlias]\" :style=\"webpartStyle\">\r\n    <div class=\"webpart-container\" :class=\"[{'webpart-exact-height': isValidHeight, 'hide-overflow': !expanded && isTooBig, 'webpart-fallback':isTooSmall },'webpart-size-'+size ]\">\r\n      <div class=\"webpart-chrome\" ref=\"webpartChrome\" v-resize:debounce.initial=\"reCompute\">\r\n        <div class=\"webpart-header header-title\" :class=\"{'webpart-border':useWebpartBorder, 'header-padding':(webpartNeedPadding && useWebpartBorder)}\" ref=\"webpartHeader\" v-if=\"webpartChromeType === 'title'\">\r\n            <editableTitle :environmentInfo=\"environmentInfo\" :title=\"webpartTitle\" @titleChanged=\"titleChanged\"></editableTitle>\r\n        </div>\r\n        <div class=\"webpart-header image-header\" ref=\"webpartHeader\" v-if=\"webpartChromeType === 'visual'\">\r\n          <div class=\"header-image-data\" :class=\"{'header-no-image':!chromeProperties.showImage}\" v-if=\"chromeProperties.showTitle\" :style=\"(backgroundColorValue ? 'background-color: ' + backgroundColorValue + ';': '') + (textColorValue ? 'color: ' + textColorValue + ';': '')\">\r\n            <div class=\"image-data-number\" v-if=\"hasData\">\r\n              {{dynamicData}}\r\n            </div>\r\n            <div class=\"image-data-title\">\r\n              <editableTitle :environmentInfo=\"environmentInfo\" :title=\"webpartTitle\" @titleChanged=\"titleChanged\"></editableTitle>\r\n            </div>\r\n          </div>\r\n          <div class=\"header-image-container\" :class=\"{'header-no-image':!chromeProperties.showImage}\" v-resize:debounce.initial=\"getImageWidth\" ref=\"imageContainer\">\r\n            <div v-if=\"headerImageUrl\" class=\"webpart-header-image\" :style=\"'background-image: url(' + headerImageUrl + ')'\" :title=\"environmentInfo.isInEditMode ? 'Width: ' + imageWidth + 'px, Height: 125px' : ''\"></div>\r\n            <div v-if=\"!headerImageUrl\" class=\"webpart-header-image placeholder\" :title=\"'Height: 125px, Width: ' + imageWidth + 'px'\">\r\n              <div v-if=\"environmentInfo.isInEditMode\" class=\"placeholder-center icon\">\r\n                <i class=\"ms-Icon ms-Icon--Camera\" aria-hidden=\"true\"></i>\r\n              </div>\r\n              <div v-if=\"environmentInfo.isInEditMode\" class=\"placeholder-center text\">\r\n                {{imageWidth}}x125\r\n              </div>\r\n            </div>\r\n          </div>\r\n        </div>\r\n        <div class=\"webpart-header header-none\" ref=\"webpartHeader\" v-if=\"webpartChromeType === 'none'\">\r\n        </div>\r\n        <div class=\"webpart-content\" :class=\"{'webpart-border':useWebpartBorder, 'content-padding':webpartNeedPadding}\" :style=\"paddingStyle\" ref=\"webpartContent\">\r\n          <slot></slot>\r\n        </div>\r\n      </div>\r\n    </div>\r\n    <div v-if=\"isValidHeight && isTooBig\" class=\"bottom-bar\">\r\n      <span class=\"expand-toggle\">\r\n        <i v-if=\"!expanded\" class=\"ms-Icon ms-Icon--ChevronDown clickable\" @click=\"expandToggle\" aria-hidden=\"true\"></i>\r\n        <i v-if=\"expanded\" class=\"ms-Icon ms-Icon--ChevronUp clickable\" @click=\"expandToggle\" aria-hidden=\"true\"></i>\r\n      </span>\r\n    </div>\r\n  </div>\r\n</template>\r\n\r\n<script>\r\nimport code from \"./wizdomWebpart\";\r\nexport default code;\r\n</script>\r\n\r\n<style lang=\"scss\" scoped>\r\n$msWebpartMargin: 10px;\r\n$paddingLeft: 24px;\r\n$paddingTop: 32px;\r\n$marginSpacing: 16px;\r\n\r\n$titleOnlyTextColor: \"[theme:bodyText, default: #333]\";\r\n$textColor: \"[theme:white, default: #fff]\";\r\n$backgroundColor: \"[theme:themePrimary, default: #0078d4]\";\r\n\r\n$dataMaxWidth: 200px;\r\n$headerHeight: 125px;\r\n\r\n\r\n.wizdom-webpart {\r\n  display: flex;\r\n  flex-direction: column;\r\n  //overflow: hidden;\r\n  \r\n   \r\n  .CanvasSection-col & {\r\n    .ms-Grid.revert-Padding {\r\n      padding:0 8px;\r\n    }\r\n  }\r\n\r\n\r\n  .webpart-container {\r\n    \r\n    &.webpart-exact-height {\r\n      flex: 1;\r\n\r\n      &.hide-overflow {\r\n        overflow: hidden;\r\n      }\r\n    }\r\n  }\r\n\r\n  .clickable {\r\n    user-select: none;\r\n    cursor: pointer;\r\n  }\r\n\r\n  .bottom-bar {\r\n\r\n    .expand-toggle {\r\n      float: right;\r\n      height: 1em;\r\n      width: 1em;\r\n      padding: 5px 10px;\r\n    }\r\n  }\r\n}\r\n\r\n.webpart-chrome {\r\n  display: flex;\r\n  flex-direction: column;\r\n  align-items: stretch;\r\n  //margin: -$msWebpartMargin; // Counter the ms webpart padding\r\n\r\n  .webpart-header {\r\n    display: flex;\r\n    align-items: baseline;\r\n    flex-shrink: 0;\r\n\r\n    &.webpart-border {\r\n      .chrome-title & {\r\n        border:1px solid \"[theme:neutralLighter, default:#f4f4f4]\";\r\n        border-bottom:none;\r\n      }\r\n    }\r\n\r\n    &.header-title {\r\n      color: $titleOnlyTextColor;\r\n      &.header-padding {\r\n        padding: ($msWebpartMargin / 2) $msWebpartMargin 0 $msWebpartMargin;\r\n      }\r\n    }\r\n\r\n    &.image-header {\r\n      height: $headerHeight;\r\n      width: 100%;\r\n      display: flex;\r\n      flex-direction: row;\r\n      align-items: stretch;\r\n\r\n      .header-image-data {\r\n        display: flex;\r\n        flex-direction: column;\r\n        flex-wrap: nowrap;\r\n        align-items: stretch;\r\n        flex: 1;\r\n        background-color: $backgroundColor;\r\n        height: 100%;\r\n        min-width: $dataMaxWidth;\r\n        padding-left: $paddingLeft;\r\n        box-sizing: border-box;\r\n        flex-basis: 40%;\r\n        width: 40%;\r\n        color: $textColor;\r\n        \r\n        &.header-no-image {\r\n          width:100%;\r\n          flex-basis:100%;\r\n        }\r\n\r\n        .image-data-number {\r\n          font-size: 50px;\r\n          font-weight: normal;\r\n          line-height: 1em;\r\n          margin-top: $paddingTop;\r\n        }\r\n\r\n        .image-data-title {\r\n          display: flex;\r\n          flex: 1;\r\n          flex-direction: column;\r\n\r\n          margin-bottom: $marginSpacing;\r\n\r\n          /deep/ {\r\n            .webpart-title {\r\n              display: flex;\r\n              align-items: center;\r\n              margin-right:5px;\r\n\r\n              .webpart-title-element,\r\n              .webpart-title-edit {\r\n                font-weight: normal;\r\n                font-size: 21px;\r\n                line-height: 1em;\r\n                height: 1.15em;\r\n                padding: 0;\r\n              }\r\n            }\r\n          }\r\n        }\r\n      }\r\n      .header-image-container {\r\n        flex: 2;\r\n        flex-basis: 60%;\r\n        height: 100%;\r\n\r\n        &.header-no-image {\r\n          display:none;\r\n        }\r\n        .webpart-header-image {\r\n          width: 100%;\r\n          background-position: center;\r\n          background-size: cover;\r\n          height: 100%;\r\n\r\n          &.placeholder {\r\n            background-color: #ccc;\r\n            display: flex;\r\n            flex-direction: column;\r\n            align-items: center;\r\n            justify-content: center;\r\n          }\r\n\r\n          .placeholder-center {\r\n            &.text {\r\n              font-size: 25px;\r\n              font-weight: bold;\r\n              color: #777;\r\n              opacity: 0.7;\r\n            }\r\n            &.icon {\r\n              font-size: 35px;\r\n              font-weight: bold;\r\n              color: #777;\r\n              opacity: 0.7;\r\n            }\r\n          }\r\n        }\r\n      }\r\n    }\r\n  }\r\n\r\n  .webpart-content {\r\n    box-sizing: border-box;\r\n    &.webpart-border {\r\n      border:1px solid \"[theme:neutralLight, default:#eaeaea]\";\r\n      .chrome-visual &, \r\n      .chrome-title & {\r\n        border-top:none;\r\n      }\r\n      \r\n    }    \r\n  }\r\n}\r\n</style>\r\n",".wizdom-webpart {\n  display: flex;\n  flex-direction: column; }\n  .CanvasSection-col .wizdom-webpart .ms-Grid.revert-Padding {\n    padding: 0 8px; }\n  .wizdom-webpart .webpart-container.webpart-exact-height {\n    flex: 1; }\n    .wizdom-webpart .webpart-container.webpart-exact-height.hide-overflow {\n      overflow: hidden; }\n  .wizdom-webpart .clickable {\n    user-select: none;\n    cursor: pointer; }\n  .wizdom-webpart .bottom-bar .expand-toggle {\n    float: right;\n    height: 1em;\n    width: 1em;\n    padding: 5px 10px; }\n\n.webpart-chrome {\n  display: flex;\n  flex-direction: column;\n  align-items: stretch; }\n  .webpart-chrome .webpart-header {\n    display: flex;\n    align-items: baseline;\n    flex-shrink: 0; }\n    .chrome-title .webpart-chrome .webpart-header.webpart-border {\n      border: 1px solid \"[theme:neutralLighter, default:#f4f4f4]\";\n      border-bottom: none; }\n    .webpart-chrome .webpart-header.header-title {\n      color: \"[theme:bodyText, default: #333]\"; }\n      .webpart-chrome .webpart-header.header-title.header-padding {\n        padding: 5px 10px 0 10px; }\n    .webpart-chrome .webpart-header.image-header {\n      height: 125px;\n      width: 100%;\n      display: flex;\n      flex-direction: row;\n      align-items: stretch; }\n      .webpart-chrome .webpart-header.image-header .header-image-data {\n        display: flex;\n        flex-direction: column;\n        flex-wrap: nowrap;\n        align-items: stretch;\n        flex: 1;\n        background-color: \"[theme:themePrimary, default: #0078d4]\";\n        height: 100%;\n        min-width: 200px;\n        padding-left: 24px;\n        box-sizing: border-box;\n        flex-basis: 40%;\n        width: 40%;\n        color: \"[theme:white, default: #fff]\"; }\n        .webpart-chrome .webpart-header.image-header .header-image-data.header-no-image {\n          width: 100%;\n          flex-basis: 100%; }\n        .webpart-chrome .webpart-header.image-header .header-image-data .image-data-number {\n          font-size: 50px;\n          font-weight: normal;\n          line-height: 1em;\n          margin-top: 32px; }\n        .webpart-chrome .webpart-header.image-header .header-image-data .image-data-title {\n          display: flex;\n          flex: 1;\n          flex-direction: column;\n          margin-bottom: 16px; }\n          .webpart-chrome .webpart-header.image-header .header-image-data .image-data-title /deep/ .webpart-title {\n            display: flex;\n            align-items: center;\n            margin-right: 5px; }\n            .webpart-chrome .webpart-header.image-header .header-image-data .image-data-title /deep/ .webpart-title .webpart-title-element,\n            .webpart-chrome .webpart-header.image-header .header-image-data .image-data-title /deep/ .webpart-title .webpart-title-edit {\n              font-weight: normal;\n              font-size: 21px;\n              line-height: 1em;\n              height: 1.15em;\n              padding: 0; }\n      .webpart-chrome .webpart-header.image-header .header-image-container {\n        flex: 2;\n        flex-basis: 60%;\n        height: 100%; }\n        .webpart-chrome .webpart-header.image-header .header-image-container.header-no-image {\n          display: none; }\n        .webpart-chrome .webpart-header.image-header .header-image-container .webpart-header-image {\n          width: 100%;\n          background-position: center;\n          background-size: cover;\n          height: 100%; }\n          .webpart-chrome .webpart-header.image-header .header-image-container .webpart-header-image.placeholder {\n            background-color: #ccc;\n            display: flex;\n            flex-direction: column;\n            align-items: center;\n            justify-content: center; }\n          .webpart-chrome .webpart-header.image-header .header-image-container .webpart-header-image .placeholder-center.text {\n            font-size: 25px;\n            font-weight: bold;\n            color: #777;\n            opacity: 0.7; }\n          .webpart-chrome .webpart-header.image-header .header-image-container .webpart-header-image .placeholder-center.icon {\n            font-size: 35px;\n            font-weight: bold;\n            color: #777;\n            opacity: 0.7; }\n  .webpart-chrome .webpart-content {\n    box-sizing: border-box; }\n    .webpart-chrome .webpart-content.webpart-border {\n      border: 1px solid \"[theme:neutralLight, default:#eaeaea]\"; }\n      .chrome-visual .webpart-chrome .webpart-content.webpart-border,\n      .chrome-title .webpart-chrome .webpart-content.webpart-border {\n        border-top: none; }\n\n/*# sourceMappingURL=wizdomWebpart.vue.map */"]}, media: undefined });

      };
      /* scoped */
      var __vue_scope_id__$6$1 = "data-v-573e9c26";
      /* module identifier */
      var __vue_module_identifier__$6$1 = undefined;
      /* functional template */
      var __vue_is_functional_template__$6$1 = false;
      /* style inject SSR */
      

      
      var wizdomWebpart = normalizeComponent$1(
        { render: __vue_render__$5$1, staticRenderFns: __vue_staticRenderFns__$5$1 },
        __vue_inject_styles__$6$1,
        __vue_script__$6$1,
        __vue_scope_id__$6$1,
        __vue_is_functional_template__$6$1,
        __vue_module_identifier__$6$1,
        createInjector,
        undefined
      );

    var alignType;
    (function (alignType) {
        alignType["Left"] = "flex-start";
        alignType["Right"] = "flex-end";
        alignType["Center"] = "center";
    })(alignType || (alignType = {}));

    //
    var script$5$1 = {
      components: {
        uiIconChevronLeftMed: uiIconChevronLeftMed,
        uiIconDoubleChevronLeftMed: uiIconDoubleChevronLeftMed,
        uiIconChevronRightMed: uiIconChevronRightMed,
        uiIconDoubleChevronLeftMedMirrored: uiIconDoubleChevronLeftMedMirrored
      },
      data: function data() {
        return {
          currentPage: this.value,
          webpartWidth: this.webpartSize.size
        };
      },
      methods: {
        whichToShow: function whichToShow(index) {
          var bonusRightPages = Math.max(0, this.numbersOnSides - (this.currentPage - 1));
          var bonusLeftPages = Math.max(0, this.numbersOnSides - (this.numberOfPages - this.currentPage));
          var bonusPages = bonusRightPages + bonusLeftPages + 1;
          return this.currentPage - 1 > index - (this.numbersOnSides + bonusPages) && this.currentPage - 1 < index + (this.numbersOnSides + bonusPages);
        },
        first: function first() {
          this.currentPage = 1;
          this.$emit("onPageChanged", this.currentPage);
        },
        prev: function prev() {
          if (this.currentPage <= 1) {
            this.currentPage = 1;
          } else {
            this.currentPage--;
          }

          this.$emit("onPageChanged", this.currentPage);
        },
        next: function next() {
          if (this.currentPage >= this.numberOfPages) {
            this.currentPage = this.numberOfPages;
          } else {
            this.currentPage++;
          }

          this.$emit("onPageChanged", this.currentPage);
        },
        last: function last() {
          this.currentPage = this.numberOfPages;
          this.$emit("onPageChanged", this.currentPage);
        },
        jumpToPage: function jumpToPage(index) {
          this.currentPage = index + 1;
          this.$emit("onPageChanged", this.currentPage);
        }
      },
      watch: {
        value: function value(data) {
          this.currentPage = data;
        }
      },
      computed: {
        numberOfPages: function numberOfPages() {
          return Math.ceil(this.length / this.pageSize);
        },
        numbersOnSides: function numbersOnSides() {
          switch (this.webpartWidth) {
            case Size.Small:
              return 1;

            case Size.Medium:
              return 2;

            default:
              return 3;
          }
        }
      },
      props: {
        length: Number,
        value: Number,
        pageSize: Number,
        align: {
          type: alignType,
          "default": alignType.Left
        },
        webpartSize: {
          size: Size,
          "default": Size.Small
        }
      }
    };

    /* script */
                script$5$1.beforeCreate = function () {lib_1$1('.wiz-pagination[data-v-7901a388] { display: flex; justify-content: center; padding-left: 0; list-style: none; } .page-item[data-v-7901a388] { color: "[theme: neutralTertiary, default:#c8c8c8]"; display: flex; flex-flow: row; } .page-item__shown[data-v-7901a388] { display: flex; align-items: center; justify-content: center; width: 24px; } .page-item__link[data-v-7901a388] { text-decoration: none; line-height: 1.25; cursor: pointer; } .page-item__link[data-v-7901a388], .page-item__link[data-v-7901a388]:visited { color: "[theme:bodyText, default:#333]"; } .page-item--disabled .page-item__link[data-v-7901a388], .page-item--disabled .page-item__link[data-v-7901a388]:visited { cursor: default; } .page-item--disabled .page-item__link[data-v-7901a388], .page-item--disabled .page-item__link[data-v-7901a388]:hover, .page-item--disabled .page-item__link[data-v-7901a388]:active, .page-item--disabled .page-item__link[data-v-7901a388]:active:visited, .page-item--disabled .page-item__link[data-v-7901a388]:visited, .page-item--disabled .page-item__link[data-v-7901a388]:visited:hover, .page-item--disabled .page-item__link[data-v-7901a388]:visited:active, .page-item--disabled .page-item__link[data-v-7901a388]:visited:active:visited { color: "[theme:neutralLight, default: #eaeaea]"; } .page-item__link[data-v-7901a388]:hover, .page-item__link[data-v-7901a388]:active, .page-item__link[data-v-7901a388]:active:visited { color: "[theme:themePrimary, default:#0078d4]"; } .page-item--current .page-item__link[data-v-7901a388]:hover, .page-item--current .page-item__link[data-v-7901a388]:active, .page-item--current .page-item__link[data-v-7901a388]:active:visited { color: "[theme:themePrimary, default:#0078d4]"; } .page-item--current .page-item__link[data-v-7901a388] { color: "[theme:themePrimary, default:#0078d4]"; font-weight: 600; } .page-item__link[data-v-7901a388]:focus { outline: none; } .page-item.arrow i[data-v-7901a388] { margin-top: 0.2em; } /*# sourceMappingURL=pagination.vue.map */');};
                var __vue_script__$7$1 = script$5$1;
                
    /* template */
    var __vue_render__$6$1 = function() {
      var _vm = this;
      var _h = _vm.$createElement;
      var _c = _vm._self._c || _h;
      return _c(
        "div",
        { staticClass: "wiz-pagination", style: { "justify-content": this.align } },
        [
          _c(
            "div",
            {
              staticClass: "page-item arrow arrow--left",
              class: { "page-item--disabled": _vm.currentPage <= 1 }
            },
            [
              _c("div", { staticClass: "page-item__shown" }, [
                _c(
                  "span",
                  {
                    staticClass: "page-item__link",
                    on: {
                      click: function($event) {
                        return _vm.first()
                      }
                    }
                  },
                  [_c("uiIconDoubleChevronLeftMed")],
                  1
                )
              ])
            ]
          ),
          _vm._v(" "),
          _c(
            "div",
            {
              staticClass: "page-item arrow arrow--left",
              class: { "page-item--disabled": _vm.currentPage <= 1 }
            },
            [
              _c("div", { staticClass: "page-item__shown" }, [
                _c(
                  "span",
                  {
                    staticClass: "page-item__link",
                    on: {
                      click: function($event) {
                        return _vm.prev()
                      }
                    }
                  },
                  [_c("uiIconChevronLeftMed")],
                  1
                )
              ])
            ]
          ),
          _vm._v(" "),
          _vm._l(_vm.numberOfPages, function(page, index$$1) {
            return _c(
              "div",
              {
                key: page.id,
                staticClass: "page-item numbers",
                class: index$$1 + 1 === _vm.currentPage ? "page-item--current" : "",
                attrs: { "data-automation-id": "paginationPage" },
                on: {
                  click: function($event) {
                    return _vm.jumpToPage(index$$1)
                  }
                }
              },
              [
                _vm.whichToShow(index$$1)
                  ? _c("div", { staticClass: "page-item__shown" }, [
                      _c("span", { staticClass: "page-item__link" }, [
                        _vm._v(_vm._s(index$$1 + 1))
                      ])
                    ])
                  : _vm._e()
              ]
            )
          }),
          _vm._v(" "),
          _c(
            "div",
            {
              staticClass: "page-item arrow arrow--right",
              class: { "page-item--disabled": _vm.currentPage >= _vm.numberOfPages }
            },
            [
              _c("div", { staticClass: "page-item__shown" }, [
                _c(
                  "span",
                  {
                    staticClass: "page-item__link",
                    on: {
                      click: function($event) {
                        return _vm.next()
                      }
                    }
                  },
                  [_c("uiIconChevronRightMed")],
                  1
                )
              ])
            ]
          ),
          _vm._v(" "),
          _c(
            "div",
            {
              staticClass: "page-item arrow arrow--right",
              class: { "page-item--disabled": _vm.currentPage >= _vm.numberOfPages }
            },
            [
              _c("div", { staticClass: "page-item__shown" }, [
                _c(
                  "span",
                  {
                    staticClass: "page-item__link",
                    on: {
                      click: function($event) {
                        return _vm.last()
                      }
                    }
                  },
                  [_c("uiIconDoubleChevronLeftMedMirrored")],
                  1
                )
              ])
            ]
          )
        ],
        2
      )
    };
    var __vue_staticRenderFns__$6$1 = [];
    __vue_render__$6$1._withStripped = true;

      /* style */
      var __vue_inject_styles__$7$1 = function (inject) {
        if (!inject) { return }
        inject("data-v-7901a388_0", { source: ".wiz-pagination[data-v-7901a388] {\n  display: flex;\n  justify-content: center;\n  padding-left: 0;\n  list-style: none;\n}\n.page-item[data-v-7901a388] {\n  color: \"[theme: neutralTertiary, default:#c8c8c8]\";\n  display: flex;\n  flex-flow: row;\n}\n.page-item__shown[data-v-7901a388] {\n    display: flex;\n    align-items: center;\n    justify-content: center;\n    width: 24px;\n}\n.page-item__link[data-v-7901a388] {\n    text-decoration: none;\n    line-height: 1.25;\n    cursor: pointer;\n}\n.page-item__link[data-v-7901a388], .page-item__link[data-v-7901a388]:visited {\n      color: \"[theme:bodyText, default:#333]\";\n}\n.page-item--disabled .page-item__link[data-v-7901a388], .page-item--disabled .page-item__link[data-v-7901a388]:visited {\n        cursor: default;\n}\n.page-item--disabled .page-item__link[data-v-7901a388], .page-item--disabled .page-item__link[data-v-7901a388]:hover, .page-item--disabled .page-item__link[data-v-7901a388]:active, .page-item--disabled .page-item__link[data-v-7901a388]:active:visited, .page-item--disabled .page-item__link[data-v-7901a388]:visited, .page-item--disabled .page-item__link[data-v-7901a388]:visited:hover, .page-item--disabled .page-item__link[data-v-7901a388]:visited:active, .page-item--disabled .page-item__link[data-v-7901a388]:visited:active:visited {\n          color: \"[theme:neutralLight, default: #eaeaea]\";\n}\n.page-item__link[data-v-7901a388]:hover, .page-item__link[data-v-7901a388]:active, .page-item__link[data-v-7901a388]:active:visited {\n      color: \"[theme:themePrimary, default:#0078d4]\";\n}\n.page-item--current .page-item__link[data-v-7901a388]:hover, .page-item--current .page-item__link[data-v-7901a388]:active, .page-item--current .page-item__link[data-v-7901a388]:active:visited {\n        color: \"[theme:themePrimary, default:#0078d4]\";\n}\n.page-item--current .page-item__link[data-v-7901a388] {\n      color: \"[theme:themePrimary, default:#0078d4]\";\n      font-weight: 600;\n}\n.page-item__link[data-v-7901a388]:focus {\n      outline: none;\n}\n.page-item.arrow i[data-v-7901a388] {\n    margin-top: 0.2em;\n}\n\n/*# sourceMappingURL=pagination.vue.map */", map: {"version":3,"sources":["C:\\spfx\\spfx_modules\\webpart-utilities\\src\\wizdom-webpart\\components\\pagination\\pagination.vue","pagination.vue"],"names":[],"mappings":"AAwKA;EACA,aAAA;EACA,uBAAA;EAEA,eAAA;EACA,gBAAA;AAAA;AAGA;EACA,kDAAA;EACA,aAAA;EACA,cAAA;AAAA;AAEA;IACA,aAAA;IACA,mBAAA;IACA,uBAAA;IACA,WAAA;AAAA;AAEA;IACA,qBAAA;IACA,iBAAA;IACA,eAAA;AAAA;AAHA;MAOA,uCAAA;AAAA;AAEA;QACA,eAAA;AAAA;AADA;UAMA,+CAAA;AAAA;AAfA;MAsBA,8CAAA;AAAA;AACA;QACA,8CAAA;AAAA;AAGA;MACA,8CAAA;MACA,gBAAA;AAAA;AA7BA;MAgCA,aAAA;AAAA;AA3CA;IAgDA,iBAAA;AAAA;;AC3LA,yCAAyC","file":"pagination.vue","sourcesContent":["<template>\r\n  <div class=\"wiz-pagination\" :style=\"{ 'justify-content': this.align }\">\r\n    <div\r\n      class=\"page-item arrow arrow--left\"\r\n      :class=\"{ 'page-item--disabled': currentPage <= 1 }\"\r\n    >\r\n      <div class=\"page-item__shown\">\r\n        <span class=\"page-item__link\" @click=\"first()\">\r\n          <!-- <span class=\"ms-Icon ms-Icon--DoubleChevronLeftMed\"></span> -->\r\n          <uiIconDoubleChevronLeftMed />\r\n        </span>\r\n      </div>\r\n    </div>\r\n    <div\r\n      class=\"page-item arrow arrow--left\"\r\n      :class=\"{ 'page-item--disabled': currentPage <= 1 }\"\r\n    >\r\n      <div class=\"page-item__shown\">\r\n        <span class=\"page-item__link\" @click=\"prev()\">\r\n          <!-- <span class=\"ms-Icon ms-Icon--ChevronLeftMed\"></span> -->\r\n          <uiIconChevronLeftMed />\r\n        </span>\r\n      </div>\r\n    </div>\r\n    <div\r\n      class=\"page-item numbers\"\r\n      v-for=\"(page, index) in numberOfPages\"\r\n      :key=\"page.id\"\r\n      data-automation-id=\"paginationPage\"\r\n      :class=\"index + 1 === currentPage ? 'page-item--current' : ''\"\r\n      @click=\"jumpToPage(index)\"\r\n    >\r\n      <div class=\"page-item__shown\" v-if=\"whichToShow(index)\">\r\n        <span class=\"page-item__link\">{{ index + 1 }}</span>\r\n      </div>\r\n    </div>\r\n    <div\r\n      class=\"page-item arrow arrow--right\"\r\n      :class=\"{ 'page-item--disabled': currentPage >= numberOfPages }\"\r\n    >\r\n      <div class=\"page-item__shown\">\r\n        <span class=\"page-item__link\" @click=\"next()\">\r\n          <uiIconChevronRightMed />\r\n        </span>\r\n      </div>\r\n    </div>\r\n    <div\r\n      class=\"page-item arrow arrow--right\"\r\n      :class=\"{ 'page-item--disabled': currentPage >= numberOfPages }\"\r\n    >\r\n      <div class=\"page-item__shown\">\r\n        <span class=\"page-item__link\" @click=\"last()\">\r\n          <uiIconDoubleChevronLeftMedMirrored />\r\n        </span>\r\n      </div>\r\n    </div>\r\n  </div>\r\n</template>\r\n\r\n<script>\r\nimport {\r\n  uiIconChevronLeftMed,\r\n  uiIconDoubleChevronLeftMed,\r\n  uiIconChevronRightMed,\r\n  uiIconDoubleChevronLeftMedMirrored\r\n} from \"@wizdom-intranet/spfx-ui-fabric-vue\";\r\n\r\nimport { alignType } from \"../../types/alignType\";\r\nimport { Size } from \"../../types/size\";\r\nexport default {\r\n  components: {\r\n    uiIconChevronLeftMed,\r\n    uiIconDoubleChevronLeftMed,\r\n    uiIconChevronRightMed,\r\n    uiIconDoubleChevronLeftMedMirrored\r\n  },\r\n  data() {\r\n    return {\r\n      currentPage: this.value,\r\n      webpartWidth: this.webpartSize.size\r\n    };\r\n  },\r\n  methods: {\r\n    whichToShow(index) {\r\n      let bonusRightPages = Math.max(\r\n        0,\r\n        this.numbersOnSides - (this.currentPage - 1)\r\n      );\r\n      let bonusLeftPages = Math.max(\r\n        0,\r\n        this.numbersOnSides - (this.numberOfPages - this.currentPage)\r\n      );\r\n      let bonusPages = bonusRightPages + bonusLeftPages + 1;\r\n\r\n      return (\r\n        this.currentPage - 1 > index - (this.numbersOnSides + bonusPages) &&\r\n        this.currentPage - 1 < index + (this.numbersOnSides + bonusPages)\r\n      );\r\n    },\r\n    first() {\r\n      this.currentPage = 1;\r\n      this.$emit(\"onPageChanged\", this.currentPage);\r\n    },\r\n    prev() {\r\n      if (this.currentPage <= 1) {\r\n        this.currentPage = 1;\r\n      } else {\r\n        this.currentPage--;\r\n      }\r\n      this.$emit(\"onPageChanged\", this.currentPage);\r\n    },\r\n    next() {\r\n      if (this.currentPage >= this.numberOfPages) {\r\n        this.currentPage = this.numberOfPages;\r\n      } else {\r\n        this.currentPage++;\r\n      }\r\n      this.$emit(\"onPageChanged\", this.currentPage);\r\n    },\r\n    last() {\r\n      this.currentPage = this.numberOfPages;\r\n      this.$emit(\"onPageChanged\", this.currentPage);\r\n    },\r\n    jumpToPage(index) {\r\n      this.currentPage = index + 1;\r\n      this.$emit(\"onPageChanged\", this.currentPage);\r\n    }\r\n  },\r\n  watch: {\r\n    value(data) {\r\n      this.currentPage = data;\r\n    }\r\n  },\r\n  computed: {\r\n    numberOfPages() {\r\n      return Math.ceil(this.length / this.pageSize);\r\n    },\r\n    numbersOnSides() {\r\n      switch (this.webpartWidth) {\r\n        case Size.Small:\r\n          return 1;\r\n          break;\r\n        case Size.Medium:\r\n          return 2;\r\n          break;\r\n        default:\r\n          return 3;\r\n          break;\r\n      }\r\n    }\r\n  },\r\n  props: {\r\n    length: Number,\r\n    value: Number,\r\n    pageSize: Number,\r\n    align: {\r\n      type: alignType,\r\n      default: alignType.Left\r\n    },\r\n    webpartSize: {\r\n      size: Size,\r\n      default: Size.Small\r\n    }\r\n  }\r\n};\r\n</script>\r\n\r\n<style lang=\"scss\" scoped>\r\n.wiz-pagination {\r\n  display: flex;\r\n  justify-content: center;\r\n  // reset default browser list style..\r\n  padding-left: 0;\r\n  list-style: none;\r\n}\r\n\r\n.page-item {\r\n  color: \"[theme: neutralTertiary, default:#c8c8c8]\";\r\n  display: flex;\r\n  flex-flow: row;\r\n\r\n  &__shown {\r\n    display: flex;\r\n    align-items: center;\r\n    justify-content: center;\r\n    width: 24px;\r\n  }\r\n  &__link {\r\n    text-decoration: none;\r\n    line-height: 1.25;\r\n    cursor: pointer;\r\n\r\n    &,\r\n    &:visited {\r\n      color: \"[theme:bodyText, default:#333]\";\r\n\r\n      .page-item--disabled & {\r\n        cursor: default;\r\n        &,\r\n        &:hover,\r\n        &:active,\r\n        &:active:visited {\r\n          color: \"[theme:neutralLight, default: #eaeaea]\";\r\n        }\r\n      }\r\n    }\r\n    &:hover,\r\n    &:active,\r\n    &:active:visited {\r\n      color: \"[theme:themePrimary, default:#0078d4]\";\r\n      .page-item--current & {\r\n        color: \"[theme:themePrimary, default:#0078d4]\";\r\n      }\r\n    }\r\n    .page-item--current & {\r\n      color: \"[theme:themePrimary, default:#0078d4]\";\r\n      font-weight: 600;\r\n    }\r\n    &:focus {\r\n      outline: none;\r\n    }\r\n  }\r\n  &.arrow {\r\n    i {\r\n      margin-top: 0.2em; // keep arrows aligned even if font-size change.\r\n    }\r\n  }\r\n}\r\n</style>\r\n",".wiz-pagination {\n  display: flex;\n  justify-content: center;\n  padding-left: 0;\n  list-style: none; }\n\n.page-item {\n  color: \"[theme: neutralTertiary, default:#c8c8c8]\";\n  display: flex;\n  flex-flow: row; }\n  .page-item__shown {\n    display: flex;\n    align-items: center;\n    justify-content: center;\n    width: 24px; }\n  .page-item__link {\n    text-decoration: none;\n    line-height: 1.25;\n    cursor: pointer; }\n    .page-item__link, .page-item__link:visited {\n      color: \"[theme:bodyText, default:#333]\"; }\n      .page-item--disabled .page-item__link, .page-item--disabled .page-item__link:visited {\n        cursor: default; }\n        .page-item--disabled .page-item__link, .page-item--disabled .page-item__link:hover, .page-item--disabled .page-item__link:active, .page-item--disabled .page-item__link:active:visited, .page-item--disabled .page-item__link:visited, .page-item--disabled .page-item__link:visited:hover, .page-item--disabled .page-item__link:visited:active, .page-item--disabled .page-item__link:visited:active:visited {\n          color: \"[theme:neutralLight, default: #eaeaea]\"; }\n    .page-item__link:hover, .page-item__link:active, .page-item__link:active:visited {\n      color: \"[theme:themePrimary, default:#0078d4]\"; }\n      .page-item--current .page-item__link:hover, .page-item--current .page-item__link:active, .page-item--current .page-item__link:active:visited {\n        color: \"[theme:themePrimary, default:#0078d4]\"; }\n    .page-item--current .page-item__link {\n      color: \"[theme:themePrimary, default:#0078d4]\";\n      font-weight: 600; }\n    .page-item__link:focus {\n      outline: none; }\n  .page-item.arrow i {\n    margin-top: 0.2em; }\n\n/*# sourceMappingURL=pagination.vue.map */"]}, media: undefined });

      };
      /* scoped */
      var __vue_scope_id__$7$1 = "data-v-7901a388";
      /* module identifier */
      var __vue_module_identifier__$7$1 = undefined;
      /* functional template */
      var __vue_is_functional_template__$7$1 = false;
      /* style inject SSR */
      

      
      var pagination = normalizeComponent$1(
        { render: __vue_render__$6$1, staticRenderFns: __vue_staticRenderFns__$6$1 },
        __vue_inject_styles__$7$1,
        __vue_script__$7$1,
        __vue_scope_id__$7$1,
        __vue_is_functional_template__$7$1,
        __vue_module_identifier__$7$1,
        createInjector,
        undefined
      );

    var devices;
    (function (devices) {
        devices["mobile"] = "mobile";
        devices["sharepointApp"] = "sharepointApp";
        devices["teams"] = "teams";
        devices["desktop"] = "desktop";
    })(devices || (devices = {}));

    var component = {
        props: ['contentTypeId', 'breaking'],
        components: {
            uiIconNews,
            uiIconVideo,
            uiIconMegaphone,
            uiIconStreaming
        }
    };

    component.originalTemplate = "contentTypeIcon";
    component.template = `
<div>
    <uiIconMegaphone :title="'News' | translate" v-if="contentTypeId === 1"/>
    <uiIconVideo :title="'Media' | translate" v-else-if="contentTypeId === 2"/>
    <uiIconStreaming :title="'Streaming' | translate" v-else-if="contentTypeId === 3"/>
    <uiIconVideo :title="'Media' | translate" v-else-if="contentTypeId === 4" />
    <uiIconNews :title="'Corporate news' | translate" v-else-if="contentTypeId === 5 && !breaking"/>
    <div :title="'Breaking' | translate" v-else-if="contentTypeId === 5 && breaking" class="ms-Icon">{{"Breaking" | translate}}</div>
</div>
`;

    function stripHtml(html, maxLength) {
        // this logic is taken from wizdom365. I've modified it abit to removed the dependency on jquery
        if (html === undefined)
            return;
        var minLastLineLength = 25;
        html = html.replace(/\&/g, "&amp;"); // ensure that already encoded html doesn't lose the encoding below
        // replace prepend <br /> and </p> with |br|, which will be used for line split
        var strippedHtml = html
            .replace(/\<br/gi, "|br|<br")
            .replace(/\<\/p\>/gi, "|br||br|</p>");
        var tmp = document.createElement("DIV");
        tmp.innerHTML = strippedHtml;
        tmp.innerHTML = tmp.innerHTML.replace(/<table(.*?)table>/g, '[TABLE]|br|');
        tmp.innerHTML = tmp.innerHTML.replace(/((<ul)|(<ol))(.*?)((ul>)|(ol>))/g, '[LIST]|br|');
        tmp.innerHTML = tmp.innerHTML.replace(/<img.[^>]*?alt="(.*?)".*?>|<img(.*?)>/g, "[IMG]" + '$1' + "|br|"); //With alt text|Without alt text
        strippedHtml = tmp.textContent;
        var lines = strippedHtml.split("|br|");
        var rtnVal = [];
        var currentLength = 0;
        var dots = false;
        for (var i = 0; i < lines.length; i++) {
            if (maxLength - currentLength >= minLastLineLength || i == 0) {
                if (lines[i].length + currentLength > maxLength) {
                    rtnVal.push(lines[i].substr(0, maxLength - currentLength - 4).trim() + " ...");
                    dots = true;
                }
                else
                    rtnVal.push(lines[i].trim());
                currentLength += lines[i].length;
            }
            else
                break;
        }
        if (lines.length > rtnVal.length && !dots)
            rtnVal[rtnVal.length - 1] = rtnVal[rtnVal.length - 1].trim() + " ...";
        var rtnStr = rtnVal.join("<br />");
        while (rtnStr.indexOf("<br /><br /><br />") >= 0)
            rtnStr = rtnStr.replace("<br /><br /><br />", "<br /><br />");
        //Replace [IMG] after maxlength has been calculated. 
        //The icon length has then been counted as the "[IMG]" (5 chars) string and not '<i class="ms-Icon ms-Icon--Picture" aria-hidden="true"></i>  ' (61 chars). 
        rtnStr = rtnStr.replace(/\[IMG\]/gi, '<i class="ms-Icon ms-Icon--Picture" aria-hidden="true"></i>  ');
        rtnStr = rtnStr.replace(/\[TABLE\]/gi, '<i class="ms-Icon ms-Icon--Table" aria-hidden="true"></i>  ');
        rtnStr = rtnStr.replace(/\[LIST\]/gi, '<i class="ms-Icon ms-Icon--BulletedList" aria-hidden="true"></i>  ');
        // remove all <br /> at the end
        rtnStr = rtnStr.replace(/^(<br \/>)+|(<br \/>)+$/g, "");
        //   console.log("stripHtml result: " + rtnStr);
        return rtnStr;
    }

    var component$1 = {
        props: ['item', 'index', 'webpartProperties', 'webpartSize'],
        components: {
            uiButton,
            contentTypeIcon: component,
            uiIconMSNVideosSolid
        },
        methods: {
            readToggle: function (item) {
                this.$emit("readToggle", item);
            },
            goToLink: function () {
                if (this.item.contentType.id == 5) {
                    if (!this.item.readByCurrentUser) {
                        this.$emit("readToggle", this.item);
                    }
                    window.open(this.item.extendedProperties.ItemUrl, "_blank");
                }
                else {
                    this.$emit('showItem', this.item);
                }
            },
            likeToggle: function (item) {
                this.$emit("likeToggle", item);
            },
            getLikesTooltip: function (item) {
                this.$emit("getLikesTooltip", item);
            },
            summary: function (input, maxLength) {
                return stripHtml(input, maxLength);
            }
        },
        computed: {
            getHeight: function () {
                var heights = (_a = {},
                    _a[Size.Small] = (this.webpartSize.width * 3) / 4,
                    _a[Size.Medium] = (this.webpartSize.width * 9) / 16,
                    _a[Size.Large] = (this.webpartSize.width * 2) / 5,
                    _a[Size.Xlarge] = (this.webpartSize.width * 1) / 3,
                    _a
                );
                return this.webpartProperties.chromeProperties.fixedHeight ? { height: this.webpartProperties.chromeProperties.fixedHeight + "px" } : { height: heights[this.webpartSize.size] + "px" };
                var _a;
            }
        }
    };

    component$1.originalTemplate = "timelineBaseItem";
    component$1.template = `
<div data-v-bd4fe3a2 class="timeline-carousel__item slide" :style="getHeight" :key="index" :class="['slide--'+index, 'contentType' + item.contentType.id]">
	<contentTypeIcon data-v-bd4fe3a2 class="content-type-icon" :contentTypeId="item.contentType.id" :breaking="item.extendedProperties.breaking" />
	<div data-v-bd4fe3a2 class="image-component" :class="{'image-component--gradient' : webpartProperties.gradientOrTextshadows}" :style="item.style"></div>
	<div data-v-bd4fe3a2 class="timeline__content-area">
		<div data-v-bd4fe3a2 v-if="webpartProperties.colorBox" class="titleBox"></div>
		<div data-v-bd4fe3a2 class="content-item" :class="{'content-item--box-enabled': webpartProperties.colorBox}">
			<div data-v-bd4fe3a2 class="content-item__upper">
				<uiIconMSNVideosSolid data-v-bd4fe3a2 class="playIcon" v-if="item.contentType.id == 2" @click="goToLink" />
				<a data-v-bd4fe3a2 ref="title" class="linktext content-item__title" :href="item.path">
					<truncate data-v-bd4fe3a2 class="title" @click="goToLink" :msg="item.heading" :line="4">{{item.heading}}</truncate>
				</a>
			</div>
			<div data-v-bd4fe3a2 class="content-item__lower" v-if="item.contentType.id != 2">
				<a data-v-bd4fe3a2 class="linktext" target="_blank" :href="item.path">
					<uiButton data-v-bd4fe3a2 class="readMore" @click="goToLink" :type="webpartProperties.colorBox ? 'secondary' : 'primary'">{{item.contentPlaceholder ? 'New Article' : 'Read more' | translate}}</uiButton>
				</a>
			</div>
		</div>
	</div>
</div>
`;
    component$1.styles = `
div[data-v-bd4fe3a2] .agile__actions {
  position: absolute;
  left: 50%;
  transform: translateX(-50%);
}
.breaking[data-v-bd4fe3a2] {
  color: "[theme:white, default:#fff]";
  background-color: "[theme:accent, default:#0078d4]";
  position: absolute;
  top: 20px;
  left: 0;
  z-index: 2;
  text-align: center;
  padding: 5px 10px 5px 10px;
}
div[data-v-bd4fe3a2] .tag {
  box-sizing: border-box;
  float: left;
  border-radius: 0;
  border-width: 0;
  padding-top: 0px;
  margin-right: 8px;
  padding: 0;
  color: #fff;
  font-size: 0.8em;
  font-weight: 500;
  text-transform: uppercase;
}
.linktext[data-v-bd4fe3a2] {
  text-decoration: none;
  color: #fff;
  display: block;
}
.image-component[data-v-bd4fe3a2] {
  height: 100%;
  width: 100%;
  overflow: hidden;
  background-color: "[theme:bodyBackground, default:#ffffff]";
}
.image-component--gradient[data-v-bd4fe3a2]:after {
    top: 27%;
    z-index: 2;
    left: 0;
    width: 100%;
    height: 73%;
    pointer-events: none;
    content: "";
    position: absolute;
    background: linear-gradient(to top, rgba(0, 15, 30, 0.8), rgba(0, 15, 30, 0));
}
.timeline[data-v-bd4fe3a2] {
  transition: all 1s ease;
}
.timeline__content-area[data-v-bd4fe3a2] {
    z-index: 2;
    position: absolute;
    /*bottom: 110px;*/
    bottom: 35%;
    left: 52px;
    min-height: 124px;
    max-width: 80%;
}
.timeline__content-area .content-item[data-v-bd4fe3a2] {
      /*
			&__upper {
				-ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=100)";
				filter: alpha(opacity=100);
				-moz-opacity: 1;
				-khtml-opacity: 1;
				opacity: 1;					
			}*/
}
.timeline__content-area .content-item__lower .linktext[data-v-bd4fe3a2] {
        margin-top: 10px;
}
.timeline__content-area .content-item__title[data-v-bd4fe3a2] {
        font-size: 35px;
        line-height: 46px;
        max-height: 95px;
        padding-bottom: 4px;
        letter-spacing: 1px;
        overflow: hidden;
        overflow-wrap: break-word;
        word-wrap: break-word;
        word-break: break-word;
        -ms-hyphens: auto;
        -moz-hyphens: auto;
        -webkit-hyphens: auto;
        hyphens: auto;
        vertical-align: bottom;
        color: #fff;
        font-weight: 300;
        cursor: pointer;
        overflow-wrap: break-word;
        word-wrap: break-word;
        word-break: break-word;
        -ms-hyphens: auto;
        -moz-hyphens: auto;
        -webkit-hyphens: auto;
        hyphens: auto;
}
.timeline--placeholder[data-v-bd4fe3a2] {
    background-color: "[theme:themePrimary, default:#0078d4]";
    border: 1px solid "[theme: themeDarker, default: #004578]";
}
.timeline--placeholder .placeholder-description[data-v-bd4fe3a2] {
      font-size: 0.4em;
}
.content-item--box-enabled[data-v-bd4fe3a2] {
  padding: 20px;
  position: relative;
  z-index: 2;
}
.content-item--box-enabled .playIcon[data-v-bd4fe3a2] {
    color: "[theme:bodyBackground, default:#fff]";
    background-color: "[theme:themePrimary, default: #eaeaea]";
}
.content-type-icon[data-v-bd4fe3a2] {
  position: absolute;
  top: 0;
  left: 0;
  padding-top: 11px;
  padding-bottom: 11px;
  padding-left: 15px;
  padding-right: 15px;
  z-index: 3;
  text-transform: uppercase;
  z-index: 3;
  position: absolute;
  top: 0;
  left: 0;
  background-color: "[theme: themePrimary, default: #0078d4]";
}
.content-type-icon[data-v-bd4fe3a2] .ms-Icon {
    color: "[theme:white, default: #ffffff]";
    position: relative;
    font-size: 20px;
    text-align: center;
}
.playIcon[data-v-bd4fe3a2] {
  position: absolute;
  top: 8px;
  font-size: 60px;
  height: 33px;
  /* Needed for background positioning (the triangle) */
  width: 33px;
  /* Needed for background positioning (the triangle) */
  color: "[theme:themePrimary, default: #eaeaea]";
  background-color: "[theme:bodyBackground, default:#fff]";
  cursor: pointer;
}
.playIcon[data-v-bd4fe3a2]::before {
  position: relative;
  font-size: 64px;
  top: -20px;
  left: -15px;
}
.contentType2 .content-item__title[data-v-bd4fe3a2] {
  margin-left: 72px;
}
.webpart-size-small .content-item__title[data-v-bd4fe3a2], .webpart-size-medium .content-item__title[data-v-bd4fe3a2] {
  font-size: 24px;
  line-height: 28px;
  max-height: 56px;
}
.webpart-size-small .content-type-icon[data-v-bd4fe3a2], .webpart-size-medium .content-type-icon[data-v-bd4fe3a2] {
  padding-top: 11px;
  padding-bottom: 9px;
  padding-left: 14px;
  padding-right: 14px;
}
.webpart-size-small .contentType2 .content-item__title[data-v-bd4fe3a2], .webpart-size-medium .contentType2 .content-item__title[data-v-bd4fe3a2] {
  margin-left: 57px;
}
.webpart-size-small .contentType2 .playIcon[data-v-bd4fe3a2], .webpart-size-medium .contentType2 .playIcon[data-v-bd4fe3a2] {
  font-size: 43px;
  border-radius: 43px;
  top: -2px;
}
.webpart-size-small .contentType2 .playIcon[data-v-bd4fe3a2]::before, .webpart-size-medium .contentType2 .playIcon[data-v-bd4fe3a2]::before {
  font-size: 44px;
  top: -8px;
  left: -5px;
}
.webpart-size-small .contentType2 .content-item--box-enabled .playIcon[data-v-bd4fe3a2], .webpart-size-medium .contentType2 .content-item--box-enabled .playIcon[data-v-bd4fe3a2] {
  top: 23px;
}
.webpart-size-small .timeline__content-area[data-v-bd4fe3a2] {
  /*bottom: 80px; */
  bottom: 25%;
}
.webpart-size-small .contentType2 .timeline__content-area[data-v-bd4fe3a2] {
  /*bottom: 70px; */
  bottom: 15%;
}
.webpart-size-medium .timeline__content-area[data-v-bd4fe3a2] {
  bottom: 30%;
}
.webpart-size-medium .contentType2 .timeline__content-area[data-v-bd4fe3a2] {
  /*bottom: 90px;*/
  bottom: 20%;
}
.webpart-size-large .contentType2 .timeline__content-area[data-v-bd4fe3a2] {
  /*bottom: 110px; */
  bottom: 30%;
}
.webpart-size-large .contentType2 .content-item--box-enabled .playIcon[data-v-bd4fe3a2] {
  top: 30px;
  left: 30px;
}
.titleBox[data-v-bd4fe3a2] {
  position: absolute;
  z-index: 1;
  background-color: "[theme:themePrimary, default:#0078d4]";
  width: 100%;
  height: 100%;
  -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=70)";
  filter: alpha(opacity=70);
  -moz-opacity: 0.7;
  -khtml-opacity: 0.7;
  opacity: 0.7;
}


`;

    var gpuAccelerated = detectGpuSupport();
    var component$2 = {
        inject: ["context", "configuration", "webpartInstanceId", "getWidth", "wizdomService"],
        components: {
            uiContextualMenu,
            uiContextualMenuItem,
            uiIconAdd,
            uiIconMore,
            uiIconClock,
            uiIconLikeSolid,
            uiIconLike,
            uiIconCompleted,
            uiIconCircleRing,
            uiIconComment,
            uiButton,
            timelineBaseItem: component$1,
            uiIconPause,
            uiIconPlay
        },
        data: function () {
            return {
                asNavForMain: [],
                asNavForThumbnails: [],
                currentSlide: 0,
                timer: null,
                slideProgress: 0,
                paused: false,
                siteColUrl: this.wizdomService.spContext.pageContext.site.absoluteUrl,
                columnWidth: 0,
                numberOfItems: null
            };
        },
        methods: {
            WebpartSizeChanged: function (e) {
                this.webpartResize(e);
                this.renderTimeline();
            },
            getColumnWidth: function (event) {
                this.columnWidth = this.getWidth();
            },
            togglePause: function () {
                this.paused = !this.paused;
                this.items[this.currentSlide].style.transition = this.paused ? "undefined" : ("transform " + this.slideProgress + "s ease-in");
            },
            timerTick: function (event) {
                if (!this.paused && this.webpartProperties.rotation != 0) {
                    this.slideProgress++;
                }
                if (this.slideProgress >= this.webpartProperties.rotation && this.webpartProperties.rotation != 0) {
                    if (this.$refs.main) {
                        this.$refs.main.goToNext();
                    }
                }
            },
            beforeChange: function (event) {
                this.slideProgress = 0;
                this.currentSlide = event.nextSlide;
                this.items[event.nextSlide].style = this.setItemStyle(this.items[event.nextSlide]);
                this.items[event.currentSlide].style = this.clearItemStyle(this.items[event.currentSlide]);
            },
            showSlides: function (count) {
                return Math.min(this.items.length, count);
            },
            setItemStyle: function (item) {
                if (this.items.length > 1 && gpuAccelerated && !this.paused && this.webpartProperties.enableAnimation) {
                    return {
                        "background-image": "url('" + this.imageHandler(item, 1600, true) + "')",
                        "background-size": "cover",
                        "background-position": (item.focalPointX !== null ? item.focalPointX : 50) +
                            "% " +
                            (item.focalPointY !== null ? item.focalPointY : 50) +
                            "%",
                        transition: "transform " + (this.webpartProperties.rotation - this.slideProgress) + "s ease-in",
                        transform: "scale3d(1.4, 1.4, 1.4) translate3d(0, 0, 0)"
                    };
                }
                else {
                    return {
                        "background-image": "url('" + this.imageHandler(item, 1600, true) + "')",
                        "background-size": "cover",
                        "background-position": (item.focalPointX !== null ? item.focalPointX : 50) +
                            "% " +
                            (item.focalPointY !== null ? item.focalPointY : 50) +
                            "%"
                    };
                }
            },
            clearItemStyle: function (item) {
                var xModifier = Math.random() < 0.5 ? -1 : 1;
                var yModifier = Math.random() < 0.5 ? -1 : 1;
                if (this.items.length > 1 && gpuAccelerated && !this.paused) {
                    return {
                        "background-image": "url('" + this.imageHandler(item, 1600, true) + "')",
                        "background-size": "cover",
                        "background-position": this.calculateRandomPosition(item),
                        transition: undefined,
                        transform: "scale3d(1.2, 1.2, 1.2) translate3d(" +
                            xModifier * 5 +
                            "%, " +
                            yModifier * 5 +
                            "%, 0)"
                    };
                }
                else {
                    return {
                        "background-image": "url('" + this.imageHandler(item, 1600, true) + "')",
                        "background-size": "cover",
                        "background-position": (item.focalPointX !== null ? item.focalPointX : 50) +
                            "% " +
                            (item.focalPointY !== null ? item.focalPointY : 50) +
                            "%"
                    };
                }
            },
            calculateRandomPosition: function (item) {
                var x, y, distModifier = 0;
                distModifier = this.webpartProperties.rotation * 2;
                var xModifier = Math.random() < 0.5 ? -1 : 1;
                var yModifier = Math.random() < 0.5 ? -1 : 1;
                // Make sure it's between 0 and 100 after modification
                x = Math.min(Math.max((item.focalPointX !== null ? item.focalPointX : 50) +
                    distModifier * xModifier, 0), 100);
                y = Math.min(Math.max((item.focalPointY !== null ? item.focalPointY : 50) +
                    distModifier * yModifier, 0), 100);
                return ((item.focalPointX !== null ? item.focalPointX : 50) +
                    "% " +
                    (item.focalPointY !== null ? item.focalPointY : 50) +
                    "%"); //`${x}% ${y}%`;
            },
            imageHandler: function (item, size, videoAllowed) {
                if (videoAllowed === void 0) { videoAllowed = false; }
                if (item == undefined) ;
                else {
                    return imageHandler.imageHandler(item.extendedProperties, size, videoAllowed);
                }
            },
            renderTimeline: function () {
                var _this = this;
                if (localStorageService.getItem('nbSelect' + this.webpartProperties.viewId) != this.webpartProperties.defaultView) {
                    this.setTab(this.webpartProperties.defaultView);
                    this.refreshItems();
                }
                if (this.webpartProperties.itemsPerPage > 5)
                    this.items.splice(5); // Limit to 5
                this.numberOfItems = this.items ? this.items.length : 0;
                this.items && this.items.forEach(function (item) {
                    _this.$set(item, "style", _this.clearItemStyle(item));
                });
                // Wait for elements to render
                this.$nextTick(function () {
                    _this.asNavForMain[0] = _this.$refs.thumbnails;
                    _this.asNavForThumbnails[0] = _this.$refs.main;
                    clearInterval(_this.timer);
                    _this.timer = setInterval(_this.timerTick, 1000);
                    _this.items && _this.items.forEach(function (item) {
                        _this.$set(item, "style", _this.clearItemStyle(item));
                    });
                    // This is needed to ensure the initial slide gets it's start position set before applying the target position for the transition
                    _this.$nextTick(function () {
                        if (_this.$refs.main) {
                            _this.$refs.main.reload();
                        }
                        if (_this.$refs.thumbnails) {
                            _this.$refs.thumbnails.reload();
                        }
                        if (_this.items && _this.items.length) {
                            _this.items[0].style = _this.setItemStyle(_this.items[0]);
                        }
                    });
                });
            }
        },
        mounted: function () {
            this.$root.$on("items-loaded", this.renderTimeline);
            this.$nextTick(function () {
                window.addEventListener('resize', this.getColumnWidth);
                this.getColumnWidth();
            });
        },
        beforeDestroy: function () {
            this.$off("items-loaded");
            clearInterval(this.timer);
            window.removeEventListener('resize', this.getColumnWidth);
        },
        computed: {
            thumbnailWidth: function () {
                return this.columnWidth - 32 - this.webpartProperties.chromeProperties.paddingSides * 2;
            },
            // slideTimeMS() {
            //   return this.webpartProperties.rotation * 1000;
            // },
            progressPct: function () {
                return Math.min(((this.slideProgress ? this.slideProgress + 1 : 0) /
                    this.webpartProperties.rotation) *
                    100, 100);
            },
            mainOptions: function () {
                return {
                    dots: !this.webpartProperties.dotsOrTitles && this.items.length > 1,
                    fade: true,
                    navButtons: false
                };
            },
            navOptions: function () {
                return {
                    centerMode: true,
                    dots: false,
                    navButtons: false,
                    slidesToShow: this.items.length,
                    responsive: [
                        {
                            breakpoint: 999
                        },
                        {
                            breakpoint: 1000
                        },
                        {
                            breakpoint: 1250
                        }
                    ]
                };
            }
        }
    };

    component$2.originalTemplate = "overviewFullWidth";
    component$2.template = `
<wizdomWebpart data-v-25016680 
  :environmentInfo="environmentInfo" 
  :chromeProperties="webpartProperties.chromeProperties" 
  :webpartPadding="true"  :title="'Noticeboard' | translate" 
  chromeType="none" 
  :dynamicData="numberOfItems" 
  :id="this.webpartInstanceId" 
  @webpart-resize="WebpartSizeChanged"
>
<div data-v-25016680 class="module-root" data-automation-id="noticeboard" :class="{'fixed-height': showContentPlaceholder, height: webpartProperties.chromeProperties.fixedHeight}">
  <div data-v-25016680 v-if="(!webpartProperties.classicURL && webpartProperties.searchType === 1) ">
    {{"Input a valid classic news url" | translate}}
  </div>
  <div data-v-25016680 class="timeline" v-else-if="numberOfItems>0">
    <div data-v-25016680 class="timeline__carousel">
        <uiIconPlay data-v-25016680 class="pausePlayButton" v-if="webpartProperties.pauseButton && paused" @click="togglePause" :class="{'paused': !paused}" :title="[paused ? 'Play' : 'Pause'] | translate" />
        <uiIconPause data-v-25016680 class="pausePlayButton" v-if="webpartProperties.pauseButton && !paused" @click="togglePause" :class="{'paused': !paused}" :title="[paused ? 'Play' : 'Pause'] | translate" />

        <agile data-v-25016680
          ref="main"
          :options="mainOptions"
          :as-nav-for="asNavForMain"
          :key="webpartProperties.dotsOrTitles"
          @beforeChange="beforeChange"
        >
         
        <timelineBaseItem data-v-25016680
          v-for="(item, index) in items"
          :key="index"
          :item="item"
          :index="index"
          :webpartProperties="webpartProperties"
          :webpartSize="webpartSize"
          :imageHandler="imageHandler"
          @showItem="showItem"
          @goToLink="goToLink"
        />

        </agile>
    </div>
    <!-- <div data-v-25016680 > -->
    <div data-v-25016680 :style="{width:thumbnailWidth + 'px'}" class="thumbnails" v-if="numberOfItems > 1">
      <agile data-v-25016680
        v-if="webpartProperties.dotsOrTitles"
        ref="thumbnails"
        :options="navOptions"
        :as-nav-for="asNavForThumbnails"
        :key="items"
      >
        <div data-v-25016680
          v-for="(thumbnail, index) in items"
          :key="index"
          class="thumbnails__item slide"
          :class="'slide--'+index"
          @click="$refs.thumbnails.goTo(index)"
        >
          <div data-v-25016680 class="progress-bar-mask">
            <div data-v-25016680
              v-if="currentSlide === index"
              class="progress-bar"
              :style="{transform: 'translate3d(' + progressPct +'%, 0, 0)'}"
            ></div>
          </div>
          <div data-v-25016680
            class="thumbnails__title"
            :class="{'thumbnails__title--textShadow': !webpartProperties.gradientOrTextshadows }"
          >{{thumbnail.heading}}</div>
        </div>
      </agile>
    </div>
  <!-- </div> -->
    <showItem data-v-25016680 v-if="currentItem" v-model="currentItem" :item="currentItem" :showNext="showNextBtn"
      :showPrev="showPrevBtn" @edit="editItem" @next="showNext" @prev="showPrev" @refresh="refreshItems" @markRead="readToggle" @likeToggle="likeToggle"/>
    <newItem data-v-25016680 v-if="newEditItem" v-model="newEditItem" @itemCreated="refreshItems" @itemUpdate="refreshItems" />
  </div>
   <noItem data-v-25016680 v-if="webpartProperties.ContentPlaceholder && items && items.length === 0"
      :title="contentPlaceholderMessage.text"
      @activated="contentPlaceholderMessage.event()"
      :button="contentPlaceholderMessage.buttonText">
  </noItem>
  <selectPersonalChannels data-v-25016680
      v-if="showSelectChannels"
      v-model="showSelectChannels"
      @channelSelectionsUpdated="refreshItems"
    />
  </div>
</wizdomWebpart>
`;
    component$2.styles = `
.agile {
  position: relative;
}
.agile--rtl .agile__actions, .agile--rtl .agile__dots, .agile--rtl .agile__slides, .agile--rtl .agile__track {
  -webkit-box-orient: horizontal;
  -webkit-box-direction: reverse;
  -ms-flex-direction: row-reverse;
  flex-direction: row-reverse;
}
.agile:active, .agile :active, .agile:focus, .agile :focus {
  outline: none;
}
.agile__list {
  display: block;
  overflow: hidden;
  position: relative;
  width: 100%;
}
.agile__track {
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
  -ms-flex-direction: row;
  flex-direction: row;
  -ms-flex-wrap: nowrap;
  flex-wrap: nowrap;
}
.agile__actions, .agile__track {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
}
.agile__actions {
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between;
}
.agile__slides {
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
  -ms-flex-direction: row;
  flex-direction: row;
  -webkit-box-flex: 1;
  -ms-flex-positive: 1;
  flex-grow: 1;
  -ms-flex-negative: 0;
  flex-shrink: 0;
  -ms-flex-wrap: nowrap;
  flex-wrap: nowrap;
  -webkit-box-pack: start;
  -ms-flex-pack: start;
  justify-content: flex-start;
}
.agile--disabled .agile__slides {
  display: block;
}
.agile__slide {
  display: block;
  -webkit-box-flex: 1;
  -ms-flex-positive: 1;
  flex-grow: 1;
  -ms-flex-negative: 0;
  flex-shrink: 0;
}
.agile--fade .agile__slide {
  opacity: 0;
  position: relative;
  z-index: 0;
}
.agile--fade .agile__slide--active {
  opacity: 1;
  z-index: 2;
}
.agile--fade .agile__slide--expiring {
  opacity: 1;
  -webkit-transition-duration: 0s;
  transition-duration: 0s;
  z-index: 1;
}
.agile__nav-button[disabled] {
  cursor: default;
}
.agile__dots {
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  list-style: none;
  padding: 0;
  white-space: nowrap;
}
.agile__dot button {
  cursor: pointer;
  display: block;
  font-size: 0;
  line-height: 0;
}


div[data-v-25016680] .agile__actions {
  position: absolute;
  left: 50%;
  transform: translateX(-50%);
}
div[data-v-25016680] .agile__dots {
  z-index: 2;
  position: relative;
  top: -35px;
  bottom: 0;
  left: 50%;
  transform: translateX(-50%);
  display: -ms-flexbox;
  display: flex;
  -ms-flex-pack: center;
  justify-content: center;
  align-items: center;
  list-style: none;
  padding: 0;
  text-align: center;
  white-space: nowrap;
}
div[data-v-25016680] .agile__dot button {
  display: block;
  height: 10px;
  width: 10px;
  margin: 0 10px;
  padding: 0;
  background-color: "[theme:neutralLight, default:#eaeaea]";
  border: none;
  border-radius: 50%;
  font-size: 0;
  line-height: 0;
  cursor: pointer;
  transition-duration: 0.3s;
}
div[data-v-25016680] .agile__dot button:hover {
    background-color: "[theme:themeDarkAlt, default:#006cbe]";
}
div[data-v-25016680] .agile__dot--current button {
  background-color: "[theme:themePrimary, default:#0078d4]";
}
.agile__slide[data-v-25016680] {
  display: block;
  color: #fff;
  line-height: 1.2;
  -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=100)";
  filter: alpha(opacity=100);
  -moz-opacity: 1;
  -khtml-opacity: 1;
  opacity: 1;
  cursor: pointer;
}
.timeline .agile__slide[data-v-25016680] {
    cursor: default;
}
.agile__slide--current[data-v-25016680] {
    transform: scale(1.5);
}
.content-item[data-v-25016680] {
  height: 100%;
}
.content-item__upper[data-v-25016680] {
    position: relative;
}
.content-item__lower[data-v-25016680] {
    height: 20%;
}
.content-item__title[data-v-25016680] {
    font-size: 3em;
    overflow: hidden;
    color: #fff;
    font-weight: 400;
}
.timeline--placeholder .content-item__title[data-v-25016680] {
      padding-bottom: 40px;
}
.content-item--box-enabled[data-v-25016680]:before {
    z-index: -1;
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    height: 100%;
    width: 100%;
    background-color: "[theme:themePrimary, default:#0078d4]";
    -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=70)";
    filter: alpha(opacity=70);
    -moz-opacity: 0.7;
    -khtml-opacity: 0.7;
    opacity: 0.7;
    content: "";
}
div[data-v-25016680] .tag {
  box-sizing: border-box;
  float: left;
  border-radius: 0;
  border-width: 0;
  padding-top: 0px;
  margin-right: 8px;
  padding: 0;
  color: #fff;
  font-size: 0.8em;
  font-weight: 500;
  text-transform: uppercase;
}
.progress-bar-mask[data-v-25016680] {
  width: calc(100% - 16px);
  height: 2px;
  background-color: "[theme:neutralLight, default:#eaeaea]";
  margin-bottom: 8px;
  /*margin-bottom: 8px;*/
  overflow: hidden;
}
.progress-bar-mask .progress-bar[data-v-25016680] {
    width: 100%;
    margin-left: -100%;
    transition: transform 1s linear;
    background-color: "[theme:themePrimary, default:#0078d4]";
    height: 2px;
}
.thumbnails__item .thumbnails__title[data-v-25016680] {
  width: calc(100% - 16px);
  height: 60px;
  line-height: 19px;
  overflow-wrap: break-word;
  word-wrap: break-word;
  word-break: break-word;
  -ms-hyphens: auto;
  -moz-hyphens: auto;
  -webkit-hyphens: auto;
  hyphens: auto;
}
.linktext[data-v-25016680] {
  text-decoration: none;
  color: #fff;
  display: block;
}
.timeline[data-v-25016680] {
  transition: all 1s ease;
}
.thumbnails[data-v-25016680] {
  margin-left: 8px;
  position: absolute;
  z-index: 2;
  left: 50%;
  right: 50%;
  /*bottom: 4%;*/
  bottom: 18px;
  transform: translateX(-50%);
}
.thumbnails__title[data-v-25016680] {
    height: 3rem;
    overflow: hidden;
}
.thumbnails__title--textShadow[data-v-25016680] {
      text-shadow: 0.5px 0.5px 0.5px black;
}
.CanvasZone--fullWidth .webpart-size-xlarge .thumbnails[data-v-25016680] {
    width: calc(1212px - 16px);
}
.webpart-size-small .thumbnails__title[data-v-25016680] {
    display: none;
}
.thumbnails .webpart-size-medium__title[data-v-25016680] {
    display: block;
}
.thumbnails .agile__slide[data-v-25016680] {
    cursor: pointer;
    -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=50)";
    filter: alpha(opacity=50);
    -moz-opacity: 0.5;
    -khtml-opacity: 0.5;
    opacity: 0.5;
}
.thumbnails .agile__slide--active[data-v-25016680] {
      -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=100)";
      filter: alpha(opacity=100);
      -moz-opacity: 1;
      -khtml-opacity: 1;
      opacity: 1;
}
.timeline__carousel[data-v-25016680] {
  position: relative;
}
.pausePlayButton[data-v-25016680] {
  position: absolute;
  top: 10px;
  right: 20px;
  z-index: 6;
  font-size: 40px;
  color: #ffffff;
  -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=50)";
  filter: alpha(opacity=50);
  -moz-opacity: 0.5;
  -khtml-opacity: 0.5;
  opacity: 0.5;
  cursor: pointer;
}
.webpart-size-small .pausePlayButton[data-v-25016680] {
  top: 8px;
  right: 15px;
  font-size: 30px;
}


`;

    return component$2;

});
