adminlte.min.js.map 29.9 KB
Newer Older
1
{"version":3,"sources":["../../build/js/ControlSidebar.js","../../build/js/Layout.js","../../build/js/PushMenu.js","../../build/js/Treeview.js","../../build/js/Widget.js"],"names":["$","NAME","DATA_KEY","JQUERY_NO_CONFLICT","Selector","ClassName","Default","ControlSidebar","jQuery","fn","show","this","_config","slide","removeClass","collapse","addClass","toggle","_setMargin","hasClass","_getConfig","config","extend","css","innerHeight","_jQueryInterface","operation","each","data","Error","document","on","event","preventDefault","call","Constructor","noConflict","element","_element","Layout","fixLayoutHeight","heights","window","height","outerHeight","max","_max","header","footer","overlayScrollbars","scrollbarTheme","scrollbarAutoHide","sidebar","_init","resize","numbers","keys","forEach","key","EVENT_KEY","Event","PushMenu","shownEvent","SHOWN","trigger","collapsedEvent","COLLAPSED","isShown","width","_options","screenCollapseSize","autoCollapse","log","autoCollapseSize","_addOverlay","overlay","append","button","currentTarget","closest","options","length","Treeview","init","_setupListeners","expand","treeviewMenu","parentLi","expandedEvent","EXPANDED","accordion","openMenuLi","siblings","first","openTreeview","find","slideDown","animationSpeed","_this","slideUp","_this2","$relativeTarget","next","is","parents","LOAD_DATA_API","Widget","_parent","children","_settings","collapsed","expanded","remove","removed","REMOVED","card","collapseTrigger","click","removeTrigger","match","_typeof","settings"],"mappings":"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","sourcesContent":["/**\n * --------------------------------------------\n * AdminLTE ControlSidebar.js\n * License MIT\n * --------------------------------------------\n */\n\nconst ControlSidebar = (($) => {\n  /**\n   * Constants\n   * ====================================================\n   */\n\n  const NAME               = 'ControlSidebar'\n  const DATA_KEY           = 'lte.control.sidebar'\n  const EVENT_KEY          = `.${DATA_KEY}`\n  const JQUERY_NO_CONFLICT = $.fn[NAME]\n  const DATA_API_KEY       = '.data-api'\n\n  const Event = {\n    CLICK_DATA_API: `click${EVENT_KEY}${DATA_API_KEY}`\n  }\n\n  const Selector = {\n    CONTROL_SIDEBAR: '.control-sidebar',\n    DATA_TOGGLE    : '[data-widget=\"control-sidebar\"]',\n    MAIN_HEADER    : '.main-header'\n  }\n\n  const ClassName = {\n    CONTROL_SIDEBAR_OPEN : 'control-sidebar-open',\n    CONTROL_SIDEBAR_SLIDE: 'control-sidebar-slide-open'\n  }\n\n  const Default = {\n    slide: true\n  }\n\n  /**\n   * Class Definition\n   * ====================================================\n   */\n\n  class ControlSidebar {\n    constructor(element, config) {\n      this._element = element\n      this._config  = this._getConfig(config)\n    }\n\n    // Public\n\n    show() {\n      // Show the control sidebar\n      if (this._config.slide) {\n        $('body').removeClass(ClassName.CONTROL_SIDEBAR_SLIDE)\n      } else {\n        $('body').removeClass(ClassName.CONTROL_SIDEBAR_OPEN)\n      }\n    }\n\n    collapse() {\n      // Collapse the control sidebar\n      if (this._config.slide) {\n        $('body').addClass(ClassName.CONTROL_SIDEBAR_SLIDE)\n      } else {\n        $('body').addClass(ClassName.CONTROL_SIDEBAR_OPEN)\n      }\n    }\n\n    toggle() {\n      this._setMargin()\n\n      const shouldOpen = $('body').hasClass(ClassName.CONTROL_SIDEBAR_OPEN) || $('body')\n        .hasClass(ClassName.CONTROL_SIDEBAR_SLIDE)\n      if (shouldOpen) {\n        // Open the control sidebar\n        this.show()\n      } else {\n        // Close the control sidebar\n        this.collapse()\n      }\n    }\n\n    // Private\n\n    _getConfig(config) {\n      return $.extend({}, Default, config)\n    }\n\n    _setMargin() {\n      $(Selector.CONTROL_SIDEBAR).css({\n        top: $(Selector.MAIN_HEADER).innerHeight()\n      })\n    }\n\n    // Static\n\n    static _jQueryInterface(operation) {\n      return this.each(function () {\n        let data = $(this).data(DATA_KEY)\n\n        if (!data) {\n          data = new ControlSidebar(this, $(this).data())\n          $(this).data(DATA_KEY, data)\n        }\n\n        if (data[operation] === 'undefined') {\n          throw new Error(`${operation} is not a function`)\n        }\n\n        data[operation]()\n      })\n    }\n  }\n\n  /**\n   *\n   * Data Api implementation\n   * ====================================================\n   */\n  $(document).on('click', Selector.DATA_TOGGLE, function (event) {\n    event.preventDefault()\n\n    ControlSidebar._jQueryInterface.call($(this), 'toggle')\n  })\n\n  /**\n   * jQuery API\n   * ====================================================\n   */\n\n  $.fn[NAME] = ControlSidebar._jQueryInterface\n  $.fn[NAME].Constructor = ControlSidebar\n  $.fn[NAME].noConflict  = function () {\n    $.fn[NAME] = JQUERY_NO_CONFLICT\n    return ControlSidebar._jQueryInterface\n  }\n\n  return ControlSidebar\n})(jQuery)\n\nexport default ControlSidebar\n","/**\n * --------------------------------------------\n * AdminLTE Layout.js\n * License MIT\n * --------------------------------------------\n */\n\nconst Layout = (($) => {\n  /**\n   * Constants\n   * ====================================================\n   */\n\n  const NAME               = 'Layout'\n  const DATA_KEY           = 'lte.layout'\n  const EVENT_KEY          = `.${DATA_KEY}`\n  const JQUERY_NO_CONFLICT = $.fn[NAME]\n\n  const Event = {\n    SIDEBAR: 'sidebar'\n  }\n\n  const Selector = {\n    HEADER         : '.main-header',\n    SIDEBAR        : '.main-sidebar .sidebar',\n    CONTENT        : '.content-wrapper',\n    BRAND          : '.brand-link',\n    CONTENT_HEADER : '.content-header',\n    WRAPPER        : '.wrapper',\n    CONTROL_SIDEBAR: '.control-sidebar',\n    LAYOUT_FIXED   : '.layout-fixed',\n    FOOTER         : '.main-footer'\n  }\n\n  const ClassName = {\n    HOLD        : 'hold-transition',\n    SIDEBAR     : 'main-sidebar',\n    LAYOUT_FIXED: 'layout-fixed',\n    NAVBAR_FIXED: 'layout-navbar-fixed',\n    FOOTER_FIXED: 'layout-footer-fixed',\n  }\n\n  const Default = {\n    scrollbarTheme : 'os-theme-light',\n    scrollbarAutoHide: 'l'\n  }\n\n  /**\n   * Class Definition\n   * ====================================================\n   */\n\n  class Layout {\n    constructor(element, config) {\n      this._config  = config\n      this._element = element\n\n      this._init()\n    }\n\n    // Public\n\n    fixLayoutHeight() {\n      const heights = {\n        window     : $(window).height(),\n        header     : $(Selector.HEADER).outerHeight(),\n        footer     : $(Selector.FOOTER).outerHeight(),\n        sidebar    : $(Selector.SIDEBAR).height(),\n      }\n\n      const max = this._max(heights)\n\n\n      if ($('body').hasClass(ClassName.LAYOUT_FIXED)) {\n        $(Selector.CONTENT).css('min-height', max - heights.header - heights.footer)\n        // $(Selector.SIDEBAR).css('min-height', max - heights.header)\n        $(Selector.CONTROL_SIDEBAR + ' .control-sidebar-content').css('height', max - heights.header)\n        \n        if (typeof $.fn.overlayScrollbars !== 'undefined') {\n          $(Selector.SIDEBAR).overlayScrollbars({\n            className       : this._config.scrollbarTheme,\n            sizeAutoCapable : true,\n            scrollbars : {\n              autoHide: this._config.scrollbarAutoHide, \n              clickScrolling : true\n            }\n          })\n          $(Selector.CONTROL_SIDEBAR + ' .control-sidebar-content').overlayScrollbars({\n            className       : this._config.scrollbarTheme,\n            sizeAutoCapable : true,\n            scrollbars : {\n              autoHide: this._config.scrollbarAutoHide, \n              clickScrolling : true\n            }\n          })\n        }\n      } else {\n        if (heights.window > heights.sidebar) {\n          $(Selector.CONTENT).css('min-height', heights.window - heights.header - heights.footer)\n        } else {\n          $(Selector.CONTENT).css('min-height', heights.sidebar - heights.header)\n        }\n      }\n      if ($('body').hasClass(ClassName.NAVBAR_FIXED)) {\n          $(Selector.BRAND).css('height', heights.header)\n          $(Selector.SIDEBAR).css('margin-top', heights.header)\n          $(Selector.SIDEBAR).css('margin-top', heights.header)\n      }\n      if ($('body').hasClass(ClassName.FOOTER_FIXED)) {\n        $(Selector.CONTENT).css('margin-bottom', heights.footer)\n      } \n    }\n\n    // Private\n\n    _init() {\n      // Enable transitions\n      $('body').removeClass(ClassName.HOLD)\n\n      // Activate layout height watcher\n      this.fixLayoutHeight()\n      $(Selector.SIDEBAR)\n        .on('collapsed.lte.treeview expanded.lte.treeview collapsed.lte.pushmenu expanded.lte.pushmenu', () => {\n          this.fixLayoutHeight()\n        })\n\n      $(window).resize(() => {\n        this.fixLayoutHeight()\n      })\n\n      $('body, html').css('height', 'auto')\n    }\n\n    _max(numbers) {\n      // Calculate the maximum number in a list\n      let max = 0\n\n      Object.keys(numbers).forEach((key) => {\n        if (numbers[key] > max) {\n          max = numbers[key]\n        }\n      })\n\n      return max\n    }\n\n    // Static\n\n    static _jQueryInterface(config) {\n      return this.each(function () {\n        let data      = $(this).data(DATA_KEY)\n        const _config = $.extend({}, Default, $(this).data())\n\n        if (!data) {\n          data = new Layout($(this), _config)\n          $(this).data(DATA_KEY, data)\n        }\n\n        if (config === 'init') {\n          data[config]()\n        }\n      })\n    }\n  }\n\n  /**\n   * Data API\n   * ====================================================\n   */\n\n  $(window).on('load', () => {\n    Layout._jQueryInterface.call($('body'))\n  })\n\n  /**\n   * jQuery API\n   * ====================================================\n   */\n\n  $.fn[NAME] = Layout._jQueryInterface\n  $.fn[NAME].Constructor = Layout\n  $.fn[NAME].noConflict = function () {\n    $.fn[NAME] = JQUERY_NO_CONFLICT\n    return Layout._jQueryInterface\n  }\n\n  return Layout\n})(jQuery)\n\nexport default Layout\n","/**\n * --------------------------------------------\n * AdminLTE PushMenu.js\n * License MIT\n * --------------------------------------------\n */\n\nconst PushMenu = (($) => {\n  /**\n   * Constants\n   * ====================================================\n   */\n\n  const NAME               = 'PushMenu'\n  const DATA_KEY           = 'lte.pushmenu'\n  const EVENT_KEY          = `.${DATA_KEY}`\n  const JQUERY_NO_CONFLICT = $.fn[NAME]\n\n  const Event = {\n    COLLAPSED: `collapsed${EVENT_KEY}`,\n    SHOWN    : `shown${EVENT_KEY}`\n  }\n\n  const Default = {\n    autoCollapseSize: false,\n    screenCollapseSize: 768\n  }\n\n  const Selector = {\n    TOGGLE_BUTTON    : '[data-widget=\"pushmenu\"]',\n    SIDEBAR_MINI     : '.sidebar-mini',\n    SIDEBAR_COLLAPSED: '.sidebar-collapse',\n    BODY             : 'body',\n    OVERLAY          : '#sidebar-overlay',\n    WRAPPER          : '.wrapper'\n  }\n\n  const ClassName = {\n    SIDEBAR_OPEN: 'sidebar-open',\n    COLLAPSED   : 'sidebar-collapse',\n    OPEN        : 'sidebar-open',\n    SIDEBAR_MINI: 'sidebar-mini'\n  }\n\n  /**\n   * Class Definition\n   * ====================================================\n   */\n\n  class PushMenu {\n    constructor(element, options) {\n      this._element = element\n      this._options = $.extend({}, Default, options)\n\n      this._init()\n\n      if (!$(Selector.OVERLAY).length) {\n        this._addOverlay()\n      }\n    }\n\n    // Public\n\n    show() {\n      $(Selector.BODY).addClass(ClassName.OPEN).removeClass(ClassName.COLLAPSED)\n\n      const shownEvent = $.Event(Event.SHOWN)\n      $(this._element).trigger(shownEvent)\n    }\n\n    collapse() {\n      $(Selector.BODY).removeClass(ClassName.OPEN).addClass(ClassName.COLLAPSED)\n\n      const collapsedEvent = $.Event(Event.COLLAPSED)\n      $(this._element).trigger(collapsedEvent)\n    }\n\n    isShown() {\n      if ($(window).width() >= this._options.screenCollapseSize) {\n        return !$(Selector.BODY).hasClass(ClassName.COLLAPSED)\n      } else {\n        return $(Selector.BODY).hasClass(ClassName.OPEN)\n      }\n\n    }\n\n    toggle() {\n      if (this.isShown()) {\n        this.collapse()\n      } else {\n        this.show()\n      }\n    }\n\n    autoCollapse() {\n      console.log(this._options)\n      if (this._options.autoCollapseSize) {\n        if ($(window).width() <= this._options.autoCollapseSize) {\n          if (this.isShown()) {\n            this.toggle()\n          }\n        } else {\n          if (!this.isShown()) {\n            this.toggle()\n          }\n        }\n      }\n    }\n\n    // Private\n\n    _init() {\n      this.autoCollapse()\n\n      $(window).resize(() => {\n        this.autoCollapse()\n      })\n    }\n\n    _addOverlay() {\n      const overlay = $('<div />', {\n        id: 'sidebar-overlay'\n      })\n\n      overlay.on('click', () => {\n        this.collapse()\n      })\n\n      $(Selector.WRAPPER).append(overlay)\n    }\n\n    // Static\n\n    static _jQueryInterface(operation) {\n      return this.each(function () {\n        let data = $(this).data(DATA_KEY)\n        const _options = $.extend({}, Default, $(this).data())\n\n        if (!data) {\n          data = new PushMenu(this, _options)\n          $(this).data(DATA_KEY, data)\n        }\n\n        if (operation === 'init') {\n          data[operation]()\n        }\n      })\n    }\n  }\n\n  /**\n   * Data API\n   * ====================================================\n   */\n\n  $(document).on('click', Selector.TOGGLE_BUTTON, (event) => {\n    event.preventDefault()\n\n    let button = event.currentTarget\n\n    if ($(button).data('widget') !== 'pushmenu') {\n      button = $(button).closest(Selector.TOGGLE_BUTTON)\n    }\n\n    PushMenu._jQueryInterface.call($(button), 'toggle')\n  })\n\n  $(window).on('load', () => {\n    PushMenu._jQueryInterface.call($(Selector.TOGGLE_BUTTON))\n  })\n\n  /**\n   * jQuery API\n   * ====================================================\n   */\n\n  $.fn[NAME] = PushMenu._jQueryInterface\n  $.fn[NAME].Constructor = PushMenu\n  $.fn[NAME].noConflict  = function () {\n    $.fn[NAME] = JQUERY_NO_CONFLICT\n    return PushMenu._jQueryInterface\n  }\n\n  return PushMenu\n})(jQuery)\n\nexport default PushMenu\n","/**\n * --------------------------------------------\n * AdminLTE Treeview.js\n * License MIT\n * --------------------------------------------\n */\n\nconst Treeview = (($) => {\n  /**\n   * Constants\n   * ====================================================\n   */\n\n  const NAME               = 'Treeview'\n  const DATA_KEY           = 'lte.treeview'\n  const EVENT_KEY          = `.${DATA_KEY}`\n  const JQUERY_NO_CONFLICT = $.fn[NAME]\n\n  const Event = {\n    SELECTED     : `selected${EVENT_KEY}`,\n    EXPANDED     : `expanded${EVENT_KEY}`,\n    COLLAPSED    : `collapsed${EVENT_KEY}`,\n    LOAD_DATA_API: `load${EVENT_KEY}`\n  }\n\n  const Selector = {\n    LI           : '.nav-item',\n    LINK         : '.nav-link',\n    TREEVIEW_MENU: '.nav-treeview',\n    OPEN         : '.menu-open',\n    DATA_WIDGET  : '[data-widget=\"treeview\"]'\n  }\n\n  const ClassName = {\n    LI           : 'nav-item',\n    LINK         : 'nav-link',\n    TREEVIEW_MENU: 'nav-treeview',\n    OPEN         : 'menu-open'\n  }\n\n  const Default = {\n    trigger       : `${Selector.DATA_WIDGET} ${Selector.LINK}`,\n    animationSpeed: 300,\n    accordion     : true\n  }\n\n  /**\n   * Class Definition\n   * ====================================================\n   */\n  class Treeview {\n    constructor(element, config) {\n      this._config  = config\n      this._element = element\n    }\n\n    // Public\n\n    init() {\n      this._setupListeners()\n    }\n\n    expand(treeviewMenu, parentLi) {\n      const expandedEvent = $.Event(Event.EXPANDED)\n\n      if (this._config.accordion) {\n        const openMenuLi   = parentLi.siblings(Selector.OPEN).first()\n        const openTreeview = openMenuLi.find(Selector.TREEVIEW_MENU).first()\n        this.collapse(openTreeview, openMenuLi)\n      }\n\n      treeviewMenu.slideDown(this._config.animationSpeed, () => {\n        parentLi.addClass(ClassName.OPEN)\n        $(this._element).trigger(expandedEvent)\n      })\n    }\n\n    collapse(treeviewMenu, parentLi) {\n      const collapsedEvent = $.Event(Event.COLLAPSED)\n\n      treeviewMenu.slideUp(this._config.animationSpeed, () => {\n        parentLi.removeClass(ClassName.OPEN)\n        $(this._element).trigger(collapsedEvent)\n        treeviewMenu.find(`${Selector.OPEN} > ${Selector.TREEVIEW_MENU}`).slideUp()\n        treeviewMenu.find(Selector.OPEN).removeClass(ClassName.OPEN)\n      })\n    }\n\n    toggle(event) {\n      const $relativeTarget = $(event.currentTarget)\n      const treeviewMenu    = $relativeTarget.next()\n\n      if (!treeviewMenu.is(Selector.TREEVIEW_MENU)) {\n        return\n      }\n\n      event.preventDefault()\n\n      const parentLi = $relativeTarget.parents(Selector.LI).first()\n      const isOpen   = parentLi.hasClass(ClassName.OPEN)\n\n      if (isOpen) {\n        this.collapse($(treeviewMenu), parentLi)\n      } else {\n        this.expand($(treeviewMenu), parentLi)\n      }\n    }\n\n    // Private\n\n    _setupListeners() {\n      $(document).on('click', this._config.trigger, (event) => {\n        this.toggle(event)\n      })\n    }\n\n    // Static\n\n    static _jQueryInterface(config) {\n      return this.each(function () {\n        let data      = $(this).data(DATA_KEY)\n        const _config = $.extend({}, Default, $(this).data())\n\n        if (!data) {\n          data = new Treeview($(this), _config)\n          $(this).data(DATA_KEY, data)\n        }\n\n        if (config === 'init') {\n          data[config]()\n        }\n      })\n    }\n  }\n\n  /**\n   * Data API\n   * ====================================================\n   */\n\n  $(window).on(Event.LOAD_DATA_API, () => {\n    $(Selector.DATA_WIDGET).each(function () {\n      Treeview._jQueryInterface.call($(this), 'init')\n    })\n  })\n\n  /**\n   * jQuery API\n   * ====================================================\n   */\n\n  $.fn[NAME] = Treeview._jQueryInterface\n  $.fn[NAME].Constructor = Treeview\n  $.fn[NAME].noConflict  = function () {\n    $.fn[NAME] = JQUERY_NO_CONFLICT\n    return Treeview._jQueryInterface\n  }\n\n  return Treeview\n})(jQuery)\n\nexport default Treeview","/**\n * --------------------------------------------\n * AdminLTE Widget.js\n * License MIT\n * --------------------------------------------\n */\n\nconst Widget = (($) => {\n  /**\n   * Constants\n   * ====================================================\n   */\n\n  const NAME               = 'Widget'\n  const DATA_KEY           = 'lte.widget'\n  const EVENT_KEY          = `.${DATA_KEY}`\n  const JQUERY_NO_CONFLICT = $.fn[NAME]\n\n  const Event = {\n    EXPANDED : `expanded${EVENT_KEY}`,\n    COLLAPSED: `collapsed${EVENT_KEY}`,\n    REMOVED  : `removed${EVENT_KEY}`\n  }\n\n  const Selector = {\n    DATA_REMOVE   : '[data-widget=\"remove\"]',\n    DATA_COLLAPSE : '[data-widget=\"collapse\"]',\n    CARD          : '.card',\n    CARD_HEADER   : '.card-header',\n    CARD_BODY     : '.card-body',\n    CARD_FOOTER   : '.card-footer',\n    COLLAPSED     : '.collapsed-card',\n    COLLAPSE_ICON : '.fa-minus',\n    EXPAND_ICON   : '.fa-plus'\n  }\n\n  const ClassName = {\n    COLLAPSED     : 'collapsed-card',\n    COLLAPSE_ICON : 'fa-minus',\n    EXPAND_ICON   : 'fa-plus'\n  }\n\n  const Default = {\n    animationSpeed : 'normal',\n    collapseTrigger: Selector.DATA_COLLAPSE,\n    removeTrigger  : Selector.DATA_REMOVE\n  }\n\n  class Widget {\n    constructor(element, settings) {\n      this._element  = element\n      this._parent   = element.parents(Selector.CARD).first()\n      this._settings = $.extend({}, Default, settings)\n    }\n\n    collapse() {\n      this._parent.children(`${Selector.CARD_BODY}, ${Selector.CARD_FOOTER}`)\n        .slideUp(this._settings.animationSpeed, () => {\n          this._parent.addClass(ClassName.COLLAPSED)\n        })\n\n      this._element.children(Selector.COLLAPSE_ICON)\n        .addClass(ClassName.EXPAND_ICON)\n        .removeClass(ClassName.COLLAPSE_ICON)\n\n      const collapsed = $.Event(Event.COLLAPSED)\n\n      this._element.trigger(collapsed, this._parent)\n    }\n\n    expand() {\n      this._parent.children(`${Selector.CARD_BODY}, ${Selector.CARD_FOOTER}`)\n        .slideDown(this._settings.animationSpeed, () => {\n          this._parent.removeClass(ClassName.COLLAPSED)\n        })\n\n      this._element.children(Selector.EXPAND_ICON)\n        .addClass(ClassName.COLLAPSE_ICON)\n        .removeClass(ClassName.EXPAND_ICON)\n\n      const expanded = $.Event(Event.EXPANDED)\n\n      this._element.trigger(expanded, this._parent)\n    }\n\n    remove() {\n      this._parent.slideUp()\n\n      const removed = $.Event(Event.REMOVED)\n\n      this._element.trigger(removed, this._parent)\n    }\n\n    toggle() {\n      if (this._parent.hasClass(ClassName.COLLAPSED)) {\n        this.expand()\n        return\n      }\n\n      this.collapse()\n    }\n\n    // Private\n\n    _init(card) {\n      this._parent = card\n\n      $(this).find(this._settings.collapseTrigger).click(() => {\n        this.toggle()\n      })\n\n      $(this).find(this._settings.removeTrigger).click(() => {\n        this.remove()\n      })\n    }\n\n    // Static\n\n    static _jQueryInterface(config) {\n      return this.each(function () {\n        let data = $(this).data(DATA_KEY)\n\n        if (!data) {\n          data = new Widget($(this), data)\n          $(this).data(DATA_KEY, typeof config === 'string' ? data : config)\n        }\n\n        if (typeof config === 'string' && config.match(/remove|toggle/)) {\n          data[config]()\n        } else if (typeof config === 'object') {\n          data._init($(this))\n        }\n      })\n    }\n  }\n\n  /**\n   * Data API\n   * ====================================================\n   */\n\n  $(document).on('click', Selector.DATA_COLLAPSE, function (event) {\n    if (event) {\n      event.preventDefault()\n    }\n\n    Widget._jQueryInterface.call($(this), 'toggle')\n  })\n\n  $(document).on('click', Selector.DATA_REMOVE, function (event) {\n    if (event) {\n      event.preventDefault()\n    }\n\n    Widget._jQueryInterface.call($(this), 'remove')\n  })\n\n  /**\n   * jQuery API\n   * ====================================================\n   */\n\n  $.fn[NAME] = Widget._jQueryInterface\n  $.fn[NAME].Constructor = Widget\n  $.fn[NAME].noConflict  = function () {\n    $.fn[NAME] = JQUERY_NO_CONFLICT\n    return Widget._jQueryInterface\n  }\n\n  return Widget\n})(jQuery)\n\nexport default Widget\n"]}