mirror of https://github.com/ColorlibHQ/AdminLTE
1 line
36 KiB
Plaintext
1 line
36 KiB
Plaintext
{"version":3,"file":"adminlte.js","sources":["../../build/js/ControlSidebar.js","../../build/js/Layout.js","../../build/js/PushMenu.js","../../build/js/Treeview.js","../../build/js/Widget.js"],"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 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"],"names":["ControlSidebar","$","NAME","DATA_KEY","JQUERY_NO_CONFLICT","fn","Selector","ClassName","Default","element","config","_element","_config","_getConfig","show","slide","removeClass","CONTROL_SIDEBAR_SLIDE","CONTROL_SIDEBAR_OPEN","collapse","addClass","toggle","_setMargin","shouldOpen","hasClass","extend","CONTROL_SIDEBAR","css","MAIN_HEADER","innerHeight","_jQueryInterface","operation","each","data","Error","document","on","DATA_TOGGLE","event","preventDefault","call","Constructor","noConflict","jQuery","Layout","_init","fixLayoutHeight","heights","window","height","HEADER","outerHeight","FOOTER","SIDEBAR","max","_max","LAYOUT_FIXED","CONTENT","header","footer","overlayScrollbars","scrollbarTheme","scrollbarAutoHide","sidebar","NAVBAR_FIXED","BRAND","FOOTER_FIXED","HOLD","resize","numbers","keys","forEach","key","PushMenu","EVENT_KEY","Event","options","_options","OVERLAY","length","_addOverlay","BODY","OPEN","COLLAPSED","shownEvent","SHOWN","trigger","collapsedEvent","isShown","width","screenCollapseSize","autoCollapse","autoCollapseSize","overlay","WRAPPER","append","TOGGLE_BUTTON","button","currentTarget","closest","Treeview","DATA_WIDGET","LINK","init","_setupListeners","expand","treeviewMenu","parentLi","expandedEvent","EXPANDED","accordion","openMenuLi","siblings","first","openTreeview","find","TREEVIEW_MENU","slideDown","animationSpeed","slideUp","$relativeTarget","next","is","parents","LI","isOpen","LOAD_DATA_API","Widget","DATA_COLLAPSE","DATA_REMOVE","settings","_parent","CARD","_settings","children","CARD_BODY","CARD_FOOTER","COLLAPSE_ICON","EXPAND_ICON","collapsed","expanded","remove","removed","REMOVED","card","collapseTrigger","click","removeTrigger","match"],"mappings":"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"} |