| Server IP : 46.105.57.169 / Your IP : 216.73.216.67 Web Server : Apache System : Linux webm002.cluster120.gra.hosting.ovh.net 6.18.42-ovh-vps-grsec-zfs+ #1 SMP PREEMPT_DYNAMIC Wed Aug 5 15:59:48 CEST 2026 x86_64 User : verseaumee ( 152031) PHP Version : 8.5.7 Disable Function : _dyuweyrj4,_dyuweyrj4r,dl MySQL : OFF | cURL : ON | WGET : ON | Perl : ON | Python : ON | Sudo : OFF | Pkexec : OFF Directory : /home/verseaumee/123click/assets/ |
Upload File : |
js/metismenujs.js 0000604 00000025575 15075446534 0010110 0 ustar 00 /*!
* metismenujs - v1.2.1
* MetisMenu: Collapsible menu plugin with Vanilla-JS
* https://github.com/onokumus/metismenujs#readme
*
* Made by Osman Nuri Okumus <onokumus@gmail.com> (https://github.com/onokumus)
* Under MIT License
*/
(function (global, factory) {
typeof exports === 'object' && typeof module !== 'undefined' ? module.exports = factory() :
typeof define === 'function' && define.amd ? define(factory) :
(global = global || self, global.MetisMenu = factory());
}(this, (function () { 'use strict';
/*! *****************************************************************************
Copyright (c) Microsoft Corporation.
Permission to use, copy, modify, and/or distribute this software for any
purpose with or without fee is hereby granted.
THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES WITH
REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY
AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY SPECIAL, DIRECT,
INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM
LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR
OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR
PERFORMANCE OF THIS SOFTWARE.
***************************************************************************** */
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);
};
var Default = {
parentTrigger: 'li',
subMenu: 'ul',
toggle: true,
triggerElement: 'a',
};
var ClassName = {
ACTIVE: 'mm-active',
COLLAPSE: 'mm-collapse',
COLLAPSED: 'mm-collapsed',
COLLAPSING: 'mm-collapsing',
METIS: 'metismenu',
SHOW: 'mm-show',
};
function matches(element, selector) {
var nativeMatches = element.matches
|| element.webkitMatchesSelector
|| element.msMatchesSelector;
return nativeMatches.call(element, selector);
}
function closest(element, selector) {
if (element.closest) {
return element.closest(selector);
}
var el = element;
while (el) {
if (matches(el, selector)) {
return el;
}
el = el.parentElement;
}
return null;
}
var MetisMenu = /** @class */ (function () {
/**
* Creates an instance of MetisMenu.
*
* @constructor
* @param {Element | string} element
* @param {IMMOptions} [options]
* @memberof MetisMenu
*/
function MetisMenu(element, options) {
this.element = MetisMenu.isElement(element) ? element : document.querySelector(element);
this.config = __assign(__assign({}, Default), options);
this.disposed = false;
this.triggerArr = [];
this.init();
}
MetisMenu.attach = function (el, opt) {
return new MetisMenu(el, opt);
};
MetisMenu.prototype.init = function () {
var _this = this;
var METIS = ClassName.METIS, ACTIVE = ClassName.ACTIVE, COLLAPSE = ClassName.COLLAPSE;
this.element.classList.add(METIS);
[].slice.call(this.element.querySelectorAll(this.config.subMenu)).forEach(function (ul) {
ul.classList.add(COLLAPSE);
var li = closest(ul, _this.config.parentTrigger);
if (li === null || li === void 0 ? void 0 : li.classList.contains(ACTIVE)) {
_this.show(ul);
}
else {
_this.hide(ul);
}
var a = li === null || li === void 0 ? void 0 : li.querySelector(_this.config.triggerElement);
if ((a === null || a === void 0 ? void 0 : a.getAttribute('aria-disabled')) === 'true') {
return;
}
a === null || a === void 0 ? void 0 : a.setAttribute('aria-expanded', 'false');
a === null || a === void 0 ? void 0 : a.addEventListener('click', _this.clickEvent.bind(_this));
_this.triggerArr.push(a);
});
};
MetisMenu.prototype.clickEvent = function (evt) {
if (!this.disposed) {
var target = evt === null || evt === void 0 ? void 0 : evt.currentTarget;
if (target && target.tagName === 'A') {
evt.preventDefault();
}
var li = closest(target, this.config.parentTrigger);
var ul = li === null || li === void 0 ? void 0 : li.querySelector(this.config.subMenu);
this.toggle(ul);
}
};
MetisMenu.prototype.update = function () {
this.disposed = false;
this.init();
};
MetisMenu.prototype.dispose = function () {
var _this = this;
this.triggerArr.forEach(function (arr) {
arr.removeEventListener('click', _this.clickEvent.bind(_this));
});
this.disposed = true;
};
MetisMenu.prototype.on = function (evtType, handler, options) {
this.element.addEventListener(evtType, handler, options);
return this;
};
MetisMenu.prototype.off = function (evtType, handler, options) {
this.element.removeEventListener(evtType, handler, options);
return this;
};
MetisMenu.prototype.emit = function (evtType, evtData, shouldBubble) {
if (shouldBubble === void 0) { shouldBubble = false; }
var evt;
if (typeof CustomEvent === 'function') {
evt = new CustomEvent(evtType, {
bubbles: shouldBubble,
detail: evtData,
});
}
else {
evt = document.createEvent('CustomEvent');
evt.initCustomEvent(evtType, shouldBubble, false, evtData);
}
this.element.dispatchEvent(evt);
return this;
};
MetisMenu.prototype.toggle = function (ul) {
var li = closest(ul, this.config.parentTrigger);
if (li === null || li === void 0 ? void 0 : li.classList.contains(ClassName.ACTIVE)) {
this.hide(ul);
}
else {
this.show(ul);
}
};
MetisMenu.prototype.show = function (el) {
var _this = this;
var _a;
var ul = el;
var ACTIVE = ClassName.ACTIVE, COLLAPSE = ClassName.COLLAPSE, COLLAPSED = ClassName.COLLAPSED, COLLAPSING = ClassName.COLLAPSING, SHOW = ClassName.SHOW;
if (this.isTransitioning || ul.classList.contains(COLLAPSING)) {
return;
}
var complete = function () {
ul.classList.remove(COLLAPSING);
ul.style.height = '';
ul.removeEventListener('transitionend', complete);
_this.setTransitioning(false);
_this.emit('shown.metisMenu', {
shownElement: ul,
});
};
var li = closest(ul, this.config.parentTrigger);
li === null || li === void 0 ? void 0 : li.classList.add(ACTIVE);
var a = li === null || li === void 0 ? void 0 : li.querySelector(this.config.triggerElement);
a === null || a === void 0 ? void 0 : a.setAttribute('aria-expanded', 'true');
a === null || a === void 0 ? void 0 : a.classList.remove(COLLAPSED);
ul.style.height = '0px';
ul.classList.remove(COLLAPSE);
ul.classList.remove(SHOW);
ul.classList.add(COLLAPSING);
var eleParentSiblins = [].slice
.call((_a = li === null || li === void 0 ? void 0 : li.parentNode) === null || _a === void 0 ? void 0 : _a.children)
.filter(function (c) { return c !== li; });
if (this.config.toggle && eleParentSiblins.length > 0) {
eleParentSiblins.forEach(function (sibli) {
var sibUl = sibli.querySelector(_this.config.subMenu);
if (sibUl) {
_this.hide(sibUl);
}
});
}
this.setTransitioning(true);
ul.classList.add(COLLAPSE);
ul.classList.add(SHOW);
ul.style.height = ul.scrollHeight + "px";
this.emit('show.metisMenu', {
showElement: ul,
});
ul.addEventListener('transitionend', complete);
};
MetisMenu.prototype.hide = function (el) {
var _this = this;
var ACTIVE = ClassName.ACTIVE, COLLAPSE = ClassName.COLLAPSE, COLLAPSED = ClassName.COLLAPSED, COLLAPSING = ClassName.COLLAPSING, SHOW = ClassName.SHOW;
var ul = el;
if (this.isTransitioning || !ul.classList.contains(SHOW)) {
return;
}
this.emit('hide.metisMenu', {
hideElement: ul,
});
var li = closest(ul, this.config.parentTrigger);
li === null || li === void 0 ? void 0 : li.classList.remove(ACTIVE);
var complete = function () {
ul.classList.remove(COLLAPSING);
ul.classList.add(COLLAPSE);
ul.style.height = '';
ul.removeEventListener('transitionend', complete);
_this.setTransitioning(false);
_this.emit('hidden.metisMenu', {
hiddenElement: ul,
});
};
ul.style.height = ul.getBoundingClientRect().height + "px";
ul.style.height = ul.offsetHeight + "px";
ul.classList.add(COLLAPSING);
ul.classList.remove(COLLAPSE);
ul.classList.remove(SHOW);
this.setTransitioning(true);
ul.addEventListener('transitionend', complete);
ul.style.height = '0px';
var a = li === null || li === void 0 ? void 0 : li.querySelector(this.config.triggerElement);
a === null || a === void 0 ? void 0 : a.setAttribute('aria-expanded', 'false');
a === null || a === void 0 ? void 0 : a.classList.add(COLLAPSED);
};
MetisMenu.prototype.setTransitioning = function (isTransitioning) {
this.isTransitioning = isTransitioning;
};
MetisMenu.isElement = function (element) {
return Boolean(element.classList);
};
return MetisMenu;
}());
return MetisMenu;
})));
//# sourceMappingURL=metismenujs.js.map
js/metismenujs.js.map 0000604 00000066312 15075446534 0010656 0 ustar 00 {"version":3,"file":"metismenujs.js","sources":["../node_modules/tslib/tslib.es6.js","../src/constant.ts","../src/util.ts","../src/index.ts"],"sourcesContent":["/*! *****************************************************************************\r\nCopyright (c) Microsoft Corporation.\r\n\r\nPermission to use, copy, modify, and/or distribute this software for any\r\npurpose with or without fee is hereby granted.\r\n\r\nTHE SOFTWARE IS PROVIDED \"AS IS\" AND THE AUTHOR DISCLAIMS ALL WARRANTIES WITH\r\nREGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY\r\nAND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY SPECIAL, DIRECT,\r\nINDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM\r\nLOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR\r\nOTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR\r\nPERFORMANCE OF THIS SOFTWARE.\r\n***************************************************************************** */\r\n/* global Reflect, Promise */\r\n\r\nvar extendStatics = function(d, b) {\r\n extendStatics = Object.setPrototypeOf ||\r\n ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||\r\n function (d, b) { for (var p in b) if (b.hasOwnProperty(p)) d[p] = b[p]; };\r\n return extendStatics(d, b);\r\n};\r\n\r\nexport function __extends(d, b) {\r\n extendStatics(d, b);\r\n function __() { this.constructor = d; }\r\n d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());\r\n}\r\n\r\nexport var __assign = function() {\r\n __assign = Object.assign || function __assign(t) {\r\n for (var s, i = 1, n = arguments.length; i < n; i++) {\r\n s = arguments[i];\r\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p)) t[p] = s[p];\r\n }\r\n return t;\r\n }\r\n return __assign.apply(this, arguments);\r\n}\r\n\r\nexport function __rest(s, e) {\r\n var t = {};\r\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0)\r\n t[p] = s[p];\r\n if (s != null && typeof Object.getOwnPropertySymbols === \"function\")\r\n for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {\r\n if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i]))\r\n t[p[i]] = s[p[i]];\r\n }\r\n return t;\r\n}\r\n\r\nexport function __decorate(decorators, target, key, desc) {\r\n var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;\r\n if (typeof Reflect === \"object\" && typeof Reflect.decorate === \"function\") r = Reflect.decorate(decorators, target, key, desc);\r\n 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;\r\n return c > 3 && r && Object.defineProperty(target, key, r), r;\r\n}\r\n\r\nexport function __param(paramIndex, decorator) {\r\n return function (target, key) { decorator(target, key, paramIndex); }\r\n}\r\n\r\nexport function __metadata(metadataKey, metadataValue) {\r\n if (typeof Reflect === \"object\" && typeof Reflect.metadata === \"function\") return Reflect.metadata(metadataKey, metadataValue);\r\n}\r\n\r\nexport function __awaiter(thisArg, _arguments, P, generator) {\r\n function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }\r\n return new (P || (P = Promise))(function (resolve, reject) {\r\n function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }\r\n function rejected(value) { try { step(generator[\"throw\"](value)); } catch (e) { reject(e); } }\r\n function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }\r\n step((generator = generator.apply(thisArg, _arguments || [])).next());\r\n });\r\n}\r\n\r\nexport function __generator(thisArg, body) {\r\n var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g;\r\n return g = { next: verb(0), \"throw\": verb(1), \"return\": verb(2) }, typeof Symbol === \"function\" && (g[Symbol.iterator] = function() { return this; }), g;\r\n function verb(n) { return function (v) { return step([n, v]); }; }\r\n function step(op) {\r\n if (f) throw new TypeError(\"Generator is already executing.\");\r\n while (_) try {\r\n 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;\r\n if (y = 0, t) op = [op[0] & 2, t.value];\r\n switch (op[0]) {\r\n case 0: case 1: t = op; break;\r\n case 4: _.label++; return { value: op[1], done: false };\r\n case 5: _.label++; y = op[1]; op = [0]; continue;\r\n case 7: op = _.ops.pop(); _.trys.pop(); continue;\r\n default:\r\n if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { _ = 0; continue; }\r\n if (op[0] === 3 && (!t || (op[1] > t[0] && op[1] < t[3]))) { _.label = op[1]; break; }\r\n if (op[0] === 6 && _.label < t[1]) { _.label = t[1]; t = op; break; }\r\n if (t && _.label < t[2]) { _.label = t[2]; _.ops.push(op); break; }\r\n if (t[2]) _.ops.pop();\r\n _.trys.pop(); continue;\r\n }\r\n op = body.call(thisArg, _);\r\n } catch (e) { op = [6, e]; y = 0; } finally { f = t = 0; }\r\n if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true };\r\n }\r\n}\r\n\r\nexport var __createBinding = Object.create ? (function(o, m, k, k2) {\r\n if (k2 === undefined) k2 = k;\r\n Object.defineProperty(o, k2, { enumerable: true, get: function() { return m[k]; } });\r\n}) : (function(o, m, k, k2) {\r\n if (k2 === undefined) k2 = k;\r\n o[k2] = m[k];\r\n});\r\n\r\nexport function __exportStar(m, exports) {\r\n for (var p in m) if (p !== \"default\" && !exports.hasOwnProperty(p)) __createBinding(exports, m, p);\r\n}\r\n\r\nexport function __values(o) {\r\n var s = typeof Symbol === \"function\" && Symbol.iterator, m = s && o[s], i = 0;\r\n if (m) return m.call(o);\r\n if (o && typeof o.length === \"number\") return {\r\n next: function () {\r\n if (o && i >= o.length) o = void 0;\r\n return { value: o && o[i++], done: !o };\r\n }\r\n };\r\n throw new TypeError(s ? \"Object is not iterable.\" : \"Symbol.iterator is not defined.\");\r\n}\r\n\r\nexport function __read(o, n) {\r\n var m = typeof Symbol === \"function\" && o[Symbol.iterator];\r\n if (!m) return o;\r\n var i = m.call(o), r, ar = [], e;\r\n try {\r\n while ((n === void 0 || n-- > 0) && !(r = i.next()).done) ar.push(r.value);\r\n }\r\n catch (error) { e = { error: error }; }\r\n finally {\r\n try {\r\n if (r && !r.done && (m = i[\"return\"])) m.call(i);\r\n }\r\n finally { if (e) throw e.error; }\r\n }\r\n return ar;\r\n}\r\n\r\nexport function __spread() {\r\n for (var ar = [], i = 0; i < arguments.length; i++)\r\n ar = ar.concat(__read(arguments[i]));\r\n return ar;\r\n}\r\n\r\nexport function __spreadArrays() {\r\n for (var s = 0, i = 0, il = arguments.length; i < il; i++) s += arguments[i].length;\r\n for (var r = Array(s), k = 0, i = 0; i < il; i++)\r\n for (var a = arguments[i], j = 0, jl = a.length; j < jl; j++, k++)\r\n r[k] = a[j];\r\n return r;\r\n};\r\n\r\nexport function __await(v) {\r\n return this instanceof __await ? (this.v = v, this) : new __await(v);\r\n}\r\n\r\nexport function __asyncGenerator(thisArg, _arguments, generator) {\r\n if (!Symbol.asyncIterator) throw new TypeError(\"Symbol.asyncIterator is not defined.\");\r\n var g = generator.apply(thisArg, _arguments || []), i, q = [];\r\n return i = {}, verb(\"next\"), verb(\"throw\"), verb(\"return\"), i[Symbol.asyncIterator] = function () { return this; }, i;\r\n 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); }); }; }\r\n function resume(n, v) { try { step(g[n](v)); } catch (e) { settle(q[0][3], e); } }\r\n function step(r) { r.value instanceof __await ? Promise.resolve(r.value.v).then(fulfill, reject) : settle(q[0][2], r); }\r\n function fulfill(value) { resume(\"next\", value); }\r\n function reject(value) { resume(\"throw\", value); }\r\n function settle(f, v) { if (f(v), q.shift(), q.length) resume(q[0][0], q[0][1]); }\r\n}\r\n\r\nexport function __asyncDelegator(o) {\r\n var i, p;\r\n return i = {}, verb(\"next\"), verb(\"throw\", function (e) { throw e; }), verb(\"return\"), i[Symbol.iterator] = function () { return this; }, i;\r\n 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; }\r\n}\r\n\r\nexport function __asyncValues(o) {\r\n if (!Symbol.asyncIterator) throw new TypeError(\"Symbol.asyncIterator is not defined.\");\r\n var m = o[Symbol.asyncIterator], i;\r\n 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);\r\n 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); }); }; }\r\n function settle(resolve, reject, d, v) { Promise.resolve(v).then(function(v) { resolve({ value: v, done: d }); }, reject); }\r\n}\r\n\r\nexport function __makeTemplateObject(cooked, raw) {\r\n if (Object.defineProperty) { Object.defineProperty(cooked, \"raw\", { value: raw }); } else { cooked.raw = raw; }\r\n return cooked;\r\n};\r\n\r\nvar __setModuleDefault = Object.create ? (function(o, v) {\r\n Object.defineProperty(o, \"default\", { enumerable: true, value: v });\r\n}) : function(o, v) {\r\n o[\"default\"] = v;\r\n};\r\n\r\nexport function __importStar(mod) {\r\n if (mod && mod.__esModule) return mod;\r\n var result = {};\r\n if (mod != null) for (var k in mod) if (Object.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);\r\n __setModuleDefault(result, mod);\r\n return result;\r\n}\r\n\r\nexport function __importDefault(mod) {\r\n return (mod && mod.__esModule) ? mod : { default: mod };\r\n}\r\n\r\nexport function __classPrivateFieldGet(receiver, privateMap) {\r\n if (!privateMap.has(receiver)) {\r\n throw new TypeError(\"attempted to get private field on non-instance\");\r\n }\r\n return privateMap.get(receiver);\r\n}\r\n\r\nexport function __classPrivateFieldSet(receiver, privateMap, value) {\r\n if (!privateMap.has(receiver)) {\r\n throw new TypeError(\"attempted to set private field on non-instance\");\r\n }\r\n privateMap.set(receiver, value);\r\n return value;\r\n}\r\n","import { IMMOptions } from './interface';\n\nexport type MetisMenuEvents =\n | 'show.metisMenu'\n | 'shown.metisMenu'\n | 'hide.metisMenu'\n | 'hidden.metisMenu';\n\nexport const Default: IMMOptions = {\n parentTrigger: 'li',\n subMenu: 'ul',\n toggle: true,\n triggerElement: 'a',\n};\n\nexport const ClassName = {\n ACTIVE: 'mm-active',\n COLLAPSE: 'mm-collapse',\n COLLAPSED: 'mm-collapsed',\n COLLAPSING: 'mm-collapsing',\n METIS: 'metismenu',\n SHOW: 'mm-show',\n};\n","export function matches(element: Element, selector: string): boolean {\n const nativeMatches = element.matches\n || element.webkitMatchesSelector\n || element.msMatchesSelector;\n return nativeMatches.call(element, selector);\n}\n\nexport function closest(element: Element, selector: string): Element | null {\n if (element.closest) {\n return element.closest(selector);\n }\n\n let el: Element | null = element;\n while (el) {\n if (matches(el, selector)) {\n return el;\n }\n el = el.parentElement;\n }\n return null;\n}\n","/* eslint-disable max-len */\nimport { ClassName, Default, MetisMenuEvents } from './constant';\nimport { IMMOptions } from './interface';\nimport { EventType, SpecificEventListener, CustomEventListener } from './types';\nimport { closest } from './util';\n\nclass MetisMenu {\n protected config: IMMOptions;\n\n protected element: Element;\n\n protected isTransitioning!: boolean;\n\n protected disposed: boolean;\n\n protected triggerArr: Array<Element>;\n\n /**\n * Creates an instance of MetisMenu.\n *\n * @constructor\n * @param {Element | string} element\n * @param {IMMOptions} [options]\n * @memberof MetisMenu\n */\n\n constructor(element: Element | string, options?: IMMOptions) {\n this.element = MetisMenu.isElement(element) ? element : document.querySelector<HTMLElement>(element)!;\n this.config = { ...Default, ...options };\n this.disposed = false;\n this.triggerArr = [];\n this.init();\n }\n\n static attach(el: Element, opt?: IMMOptions) {\n return new MetisMenu(el, opt);\n }\n\n private init(): void {\n const { METIS, ACTIVE, COLLAPSE } = ClassName;\n this.element.classList.add(METIS);\n\n [].slice.call(this.element.querySelectorAll<HTMLElement>(this.config.subMenu!)).forEach((ul: Element) => {\n ul.classList.add(COLLAPSE!);\n const li = closest(ul, this.config.parentTrigger!);\n\n if (li?.classList.contains(ACTIVE!)) {\n this.show(ul as HTMLElement);\n } else {\n this.hide(ul);\n }\n\n const a = li?.querySelector<HTMLElement>(this.config.triggerElement!);\n if (a?.getAttribute('aria-disabled') === 'true') {\n return;\n }\n\n a?.setAttribute('aria-expanded', 'false');\n\n a?.addEventListener('click', this.clickEvent.bind(this));\n this.triggerArr.push(a!);\n });\n }\n\n private clickEvent(evt?: Event) {\n if (!this.disposed) {\n const target = evt?.currentTarget as Element | null;\n if (target && target.tagName === 'A') {\n evt!.preventDefault();\n }\n\n const li = closest(target!, this.config.parentTrigger!);\n const ul = li?.querySelector(this.config.subMenu!);\n this.toggle(ul!);\n }\n }\n\n update() {\n this.disposed = false;\n this.init();\n }\n\n dispose() {\n this.triggerArr.forEach((arr) => {\n arr.removeEventListener('click', this.clickEvent.bind(this));\n });\n this.disposed = true;\n }\n\n on<K extends EventType>(evtType: K, handler: SpecificEventListener<K>, options?: AddEventListenerOptions | boolean): MetisMenu;\n\n on<E extends Event>(evtType: E, handler: CustomEventListener<E>, options?: AddEventListenerOptions | boolean): MetisMenu;\n\n on(evtType: MetisMenuEvents, handler: EventListener, options?: AddEventListenerOptions | boolean) {\n this.element.addEventListener(evtType, handler, options);\n return this;\n }\n\n off<K extends EventType>(evtType: K, handler: SpecificEventListener<K>, options?: AddEventListenerOptions | boolean): MetisMenu;\n\n off<E extends Event>(evtType: E, handler: CustomEventListener<E>, options?: AddEventListenerOptions | boolean): MetisMenu;\n\n off(evtType: MetisMenuEvents, handler: EventListener, options?: AddEventListenerOptions | boolean) {\n this.element.removeEventListener(evtType, handler, options);\n return this;\n }\n\n emit<T extends object>(evtType: string, evtData: T, shouldBubble = false) {\n let evt: CustomEvent<T>;\n if (typeof CustomEvent === 'function') {\n evt = new CustomEvent<T>(evtType, {\n bubbles: shouldBubble,\n detail: evtData,\n });\n } else {\n evt = document.createEvent('CustomEvent');\n evt.initCustomEvent(evtType, shouldBubble, false, evtData);\n }\n this.element.dispatchEvent(evt);\n return this;\n }\n\n toggle(ul: Element) {\n const li = closest(ul, this.config.parentTrigger!);\n if (li?.classList.contains(ClassName.ACTIVE)) {\n this.hide(ul);\n } else {\n this.show(ul);\n }\n }\n\n show(el: Element) {\n const ul = el as HTMLElement;\n const {\n ACTIVE, COLLAPSE, COLLAPSED, COLLAPSING, SHOW,\n } = ClassName;\n\n if (this.isTransitioning || ul.classList.contains(COLLAPSING!)) {\n return;\n }\n const complete = () => {\n ul.classList.remove(COLLAPSING!);\n ul.style.height = '';\n ul.removeEventListener('transitionend', complete);\n this.setTransitioning(false);\n this.emit('shown.metisMenu', {\n shownElement: ul,\n });\n };\n\n const li = closest(ul, this.config.parentTrigger!);\n li?.classList.add(ACTIVE!);\n\n const a = li?.querySelector<HTMLElement>(this.config.triggerElement!);\n a?.setAttribute('aria-expanded', 'true');\n a?.classList.remove(COLLAPSED!);\n\n ul.style.height = '0px';\n ul.classList.remove(COLLAPSE!);\n ul.classList.remove(SHOW!);\n ul.classList.add(COLLAPSING!);\n const eleParentSiblins = [].slice\n .call(li?.parentNode?.children)\n .filter((c) => c !== li);\n if (this.config.toggle && eleParentSiblins.length > 0) {\n eleParentSiblins.forEach((sibli: Element) => {\n const sibUl = sibli.querySelector<HTMLElement>(this.config.subMenu!);\n if (sibUl) {\n this.hide(sibUl);\n }\n });\n }\n\n this.setTransitioning(true);\n\n ul.classList.add(COLLAPSE!);\n ul.classList.add(SHOW!);\n ul.style.height = `${ul.scrollHeight}px`;\n this.emit('show.metisMenu', {\n showElement: ul,\n });\n ul.addEventListener('transitionend', complete);\n }\n\n hide(el: Element) {\n const {\n ACTIVE, COLLAPSE, COLLAPSED, COLLAPSING, SHOW,\n } = ClassName;\n const ul = el as HTMLElement;\n if (this.isTransitioning || !ul.classList.contains(SHOW!)) {\n return;\n }\n this.emit('hide.metisMenu', {\n hideElement: ul,\n });\n\n const li = closest(ul, this.config.parentTrigger!);\n li?.classList.remove(ACTIVE!);\n\n const complete = () => {\n ul.classList.remove(COLLAPSING!);\n ul.classList.add(COLLAPSE!);\n ul.style.height = '';\n ul.removeEventListener('transitionend', complete);\n this.setTransitioning(false);\n this.emit('hidden.metisMenu', {\n hiddenElement: ul,\n });\n };\n\n ul.style.height = `${ul.getBoundingClientRect().height}px`;\n ul.style.height = `${ul.offsetHeight}px`;\n\n ul.classList.add(COLLAPSING!);\n ul.classList.remove(COLLAPSE!);\n ul.classList.remove(SHOW!);\n this.setTransitioning(true);\n\n ul.addEventListener('transitionend', complete);\n\n ul.style.height = '0px';\n\n const a = li?.querySelector(this.config.triggerElement!);\n a?.setAttribute('aria-expanded', 'false');\n a?.classList.add(COLLAPSED!);\n }\n\n private setTransitioning(isTransitioning: boolean) {\n this.isTransitioning = isTransitioning;\n }\n\n static isElement(element: unknown): element is Element {\n return Boolean((element as Element).classList);\n }\n}\n\nexport default MetisMenu;\n"],"names":[],"mappings":"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"} js/metismenujs.min.js.map 0000604 00000061340 15075446534 0011434 0 ustar 00 {"version":3,"sources":["../node_modules/tslib/tslib.es6.js","../src/constant.ts","../src/util.ts","../src/index.ts"],"sourcesContent":["/*! *****************************************************************************\r\nCopyright (c) Microsoft Corporation.\r\n\r\nPermission to use, copy, modify, and/or distribute this software for any\r\npurpose with or without fee is hereby granted.\r\n\r\nTHE SOFTWARE IS PROVIDED \"AS IS\" AND THE AUTHOR DISCLAIMS ALL WARRANTIES WITH\r\nREGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY\r\nAND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY SPECIAL, DIRECT,\r\nINDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM\r\nLOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR\r\nOTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR\r\nPERFORMANCE OF THIS SOFTWARE.\r\n***************************************************************************** */\r\n/* global Reflect, Promise */\r\n\r\nvar extendStatics = function(d, b) {\r\n extendStatics = Object.setPrototypeOf ||\r\n ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||\r\n function (d, b) { for (var p in b) if (b.hasOwnProperty(p)) d[p] = b[p]; };\r\n return extendStatics(d, b);\r\n};\r\n\r\nexport function __extends(d, b) {\r\n extendStatics(d, b);\r\n function __() { this.constructor = d; }\r\n d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());\r\n}\r\n\r\nexport var __assign = function() {\r\n __assign = Object.assign || function __assign(t) {\r\n for (var s, i = 1, n = arguments.length; i < n; i++) {\r\n s = arguments[i];\r\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p)) t[p] = s[p];\r\n }\r\n return t;\r\n }\r\n return __assign.apply(this, arguments);\r\n}\r\n\r\nexport function __rest(s, e) {\r\n var t = {};\r\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0)\r\n t[p] = s[p];\r\n if (s != null && typeof Object.getOwnPropertySymbols === \"function\")\r\n for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {\r\n if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i]))\r\n t[p[i]] = s[p[i]];\r\n }\r\n return t;\r\n}\r\n\r\nexport function __decorate(decorators, target, key, desc) {\r\n var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;\r\n if (typeof Reflect === \"object\" && typeof Reflect.decorate === \"function\") r = Reflect.decorate(decorators, target, key, desc);\r\n 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;\r\n return c > 3 && r && Object.defineProperty(target, key, r), r;\r\n}\r\n\r\nexport function __param(paramIndex, decorator) {\r\n return function (target, key) { decorator(target, key, paramIndex); }\r\n}\r\n\r\nexport function __metadata(metadataKey, metadataValue) {\r\n if (typeof Reflect === \"object\" && typeof Reflect.metadata === \"function\") return Reflect.metadata(metadataKey, metadataValue);\r\n}\r\n\r\nexport function __awaiter(thisArg, _arguments, P, generator) {\r\n function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }\r\n return new (P || (P = Promise))(function (resolve, reject) {\r\n function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }\r\n function rejected(value) { try { step(generator[\"throw\"](value)); } catch (e) { reject(e); } }\r\n function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }\r\n step((generator = generator.apply(thisArg, _arguments || [])).next());\r\n });\r\n}\r\n\r\nexport function __generator(thisArg, body) {\r\n var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g;\r\n return g = { next: verb(0), \"throw\": verb(1), \"return\": verb(2) }, typeof Symbol === \"function\" && (g[Symbol.iterator] = function() { return this; }), g;\r\n function verb(n) { return function (v) { return step([n, v]); }; }\r\n function step(op) {\r\n if (f) throw new TypeError(\"Generator is already executing.\");\r\n while (_) try {\r\n 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;\r\n if (y = 0, t) op = [op[0] & 2, t.value];\r\n switch (op[0]) {\r\n case 0: case 1: t = op; break;\r\n case 4: _.label++; return { value: op[1], done: false };\r\n case 5: _.label++; y = op[1]; op = [0]; continue;\r\n case 7: op = _.ops.pop(); _.trys.pop(); continue;\r\n default:\r\n if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { _ = 0; continue; }\r\n if (op[0] === 3 && (!t || (op[1] > t[0] && op[1] < t[3]))) { _.label = op[1]; break; }\r\n if (op[0] === 6 && _.label < t[1]) { _.label = t[1]; t = op; break; }\r\n if (t && _.label < t[2]) { _.label = t[2]; _.ops.push(op); break; }\r\n if (t[2]) _.ops.pop();\r\n _.trys.pop(); continue;\r\n }\r\n op = body.call(thisArg, _);\r\n } catch (e) { op = [6, e]; y = 0; } finally { f = t = 0; }\r\n if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true };\r\n }\r\n}\r\n\r\nexport var __createBinding = Object.create ? (function(o, m, k, k2) {\r\n if (k2 === undefined) k2 = k;\r\n Object.defineProperty(o, k2, { enumerable: true, get: function() { return m[k]; } });\r\n}) : (function(o, m, k, k2) {\r\n if (k2 === undefined) k2 = k;\r\n o[k2] = m[k];\r\n});\r\n\r\nexport function __exportStar(m, exports) {\r\n for (var p in m) if (p !== \"default\" && !exports.hasOwnProperty(p)) __createBinding(exports, m, p);\r\n}\r\n\r\nexport function __values(o) {\r\n var s = typeof Symbol === \"function\" && Symbol.iterator, m = s && o[s], i = 0;\r\n if (m) return m.call(o);\r\n if (o && typeof o.length === \"number\") return {\r\n next: function () {\r\n if (o && i >= o.length) o = void 0;\r\n return { value: o && o[i++], done: !o };\r\n }\r\n };\r\n throw new TypeError(s ? \"Object is not iterable.\" : \"Symbol.iterator is not defined.\");\r\n}\r\n\r\nexport function __read(o, n) {\r\n var m = typeof Symbol === \"function\" && o[Symbol.iterator];\r\n if (!m) return o;\r\n var i = m.call(o), r, ar = [], e;\r\n try {\r\n while ((n === void 0 || n-- > 0) && !(r = i.next()).done) ar.push(r.value);\r\n }\r\n catch (error) { e = { error: error }; }\r\n finally {\r\n try {\r\n if (r && !r.done && (m = i[\"return\"])) m.call(i);\r\n }\r\n finally { if (e) throw e.error; }\r\n }\r\n return ar;\r\n}\r\n\r\nexport function __spread() {\r\n for (var ar = [], i = 0; i < arguments.length; i++)\r\n ar = ar.concat(__read(arguments[i]));\r\n return ar;\r\n}\r\n\r\nexport function __spreadArrays() {\r\n for (var s = 0, i = 0, il = arguments.length; i < il; i++) s += arguments[i].length;\r\n for (var r = Array(s), k = 0, i = 0; i < il; i++)\r\n for (var a = arguments[i], j = 0, jl = a.length; j < jl; j++, k++)\r\n r[k] = a[j];\r\n return r;\r\n};\r\n\r\nexport function __await(v) {\r\n return this instanceof __await ? (this.v = v, this) : new __await(v);\r\n}\r\n\r\nexport function __asyncGenerator(thisArg, _arguments, generator) {\r\n if (!Symbol.asyncIterator) throw new TypeError(\"Symbol.asyncIterator is not defined.\");\r\n var g = generator.apply(thisArg, _arguments || []), i, q = [];\r\n return i = {}, verb(\"next\"), verb(\"throw\"), verb(\"return\"), i[Symbol.asyncIterator] = function () { return this; }, i;\r\n 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); }); }; }\r\n function resume(n, v) { try { step(g[n](v)); } catch (e) { settle(q[0][3], e); } }\r\n function step(r) { r.value instanceof __await ? Promise.resolve(r.value.v).then(fulfill, reject) : settle(q[0][2], r); }\r\n function fulfill(value) { resume(\"next\", value); }\r\n function reject(value) { resume(\"throw\", value); }\r\n function settle(f, v) { if (f(v), q.shift(), q.length) resume(q[0][0], q[0][1]); }\r\n}\r\n\r\nexport function __asyncDelegator(o) {\r\n var i, p;\r\n return i = {}, verb(\"next\"), verb(\"throw\", function (e) { throw e; }), verb(\"return\"), i[Symbol.iterator] = function () { return this; }, i;\r\n 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; }\r\n}\r\n\r\nexport function __asyncValues(o) {\r\n if (!Symbol.asyncIterator) throw new TypeError(\"Symbol.asyncIterator is not defined.\");\r\n var m = o[Symbol.asyncIterator], i;\r\n 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);\r\n 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); }); }; }\r\n function settle(resolve, reject, d, v) { Promise.resolve(v).then(function(v) { resolve({ value: v, done: d }); }, reject); }\r\n}\r\n\r\nexport function __makeTemplateObject(cooked, raw) {\r\n if (Object.defineProperty) { Object.defineProperty(cooked, \"raw\", { value: raw }); } else { cooked.raw = raw; }\r\n return cooked;\r\n};\r\n\r\nvar __setModuleDefault = Object.create ? (function(o, v) {\r\n Object.defineProperty(o, \"default\", { enumerable: true, value: v });\r\n}) : function(o, v) {\r\n o[\"default\"] = v;\r\n};\r\n\r\nexport function __importStar(mod) {\r\n if (mod && mod.__esModule) return mod;\r\n var result = {};\r\n if (mod != null) for (var k in mod) if (Object.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);\r\n __setModuleDefault(result, mod);\r\n return result;\r\n}\r\n\r\nexport function __importDefault(mod) {\r\n return (mod && mod.__esModule) ? mod : { default: mod };\r\n}\r\n\r\nexport function __classPrivateFieldGet(receiver, privateMap) {\r\n if (!privateMap.has(receiver)) {\r\n throw new TypeError(\"attempted to get private field on non-instance\");\r\n }\r\n return privateMap.get(receiver);\r\n}\r\n\r\nexport function __classPrivateFieldSet(receiver, privateMap, value) {\r\n if (!privateMap.has(receiver)) {\r\n throw new TypeError(\"attempted to set private field on non-instance\");\r\n }\r\n privateMap.set(receiver, value);\r\n return value;\r\n}\r\n","import { IMMOptions } from './interface';\n\nexport type MetisMenuEvents =\n | 'show.metisMenu'\n | 'shown.metisMenu'\n | 'hide.metisMenu'\n | 'hidden.metisMenu';\n\nexport const Default: IMMOptions = {\n parentTrigger: 'li',\n subMenu: 'ul',\n toggle: true,\n triggerElement: 'a',\n};\n\nexport const ClassName = {\n ACTIVE: 'mm-active',\n COLLAPSE: 'mm-collapse',\n COLLAPSED: 'mm-collapsed',\n COLLAPSING: 'mm-collapsing',\n METIS: 'metismenu',\n SHOW: 'mm-show',\n};\n","export function matches(element: Element, selector: string): boolean {\n const nativeMatches = element.matches\n || element.webkitMatchesSelector\n || element.msMatchesSelector;\n return nativeMatches.call(element, selector);\n}\n\nexport function closest(element: Element, selector: string): Element | null {\n if (element.closest) {\n return element.closest(selector);\n }\n\n let el: Element | null = element;\n while (el) {\n if (matches(el, selector)) {\n return el;\n }\n el = el.parentElement;\n }\n return null;\n}\n","/* eslint-disable max-len */\nimport { ClassName, Default, MetisMenuEvents } from './constant';\nimport { IMMOptions } from './interface';\nimport { EventType, SpecificEventListener, CustomEventListener } from './types';\nimport { closest } from './util';\n\nclass MetisMenu {\n protected config: IMMOptions;\n\n protected element: Element;\n\n protected isTransitioning!: boolean;\n\n protected disposed: boolean;\n\n protected triggerArr: Array<Element>;\n\n /**\n * Creates an instance of MetisMenu.\n *\n * @constructor\n * @param {Element | string} element\n * @param {IMMOptions} [options]\n * @memberof MetisMenu\n */\n\n constructor(element: Element | string, options?: IMMOptions) {\n this.element = MetisMenu.isElement(element) ? element : document.querySelector<HTMLElement>(element)!;\n this.config = { ...Default, ...options };\n this.disposed = false;\n this.triggerArr = [];\n this.init();\n }\n\n static attach(el: Element, opt?: IMMOptions) {\n return new MetisMenu(el, opt);\n }\n\n private init(): void {\n const { METIS, ACTIVE, COLLAPSE } = ClassName;\n this.element.classList.add(METIS);\n\n [].slice.call(this.element.querySelectorAll<HTMLElement>(this.config.subMenu!)).forEach((ul: Element) => {\n ul.classList.add(COLLAPSE!);\n const li = closest(ul, this.config.parentTrigger!);\n\n if (li?.classList.contains(ACTIVE!)) {\n this.show(ul as HTMLElement);\n } else {\n this.hide(ul);\n }\n\n const a = li?.querySelector<HTMLElement>(this.config.triggerElement!);\n if (a?.getAttribute('aria-disabled') === 'true') {\n return;\n }\n\n a?.setAttribute('aria-expanded', 'false');\n\n a?.addEventListener('click', this.clickEvent.bind(this));\n this.triggerArr.push(a!);\n });\n }\n\n private clickEvent(evt?: Event) {\n if (!this.disposed) {\n const target = evt?.currentTarget as Element | null;\n if (target && target.tagName === 'A') {\n evt!.preventDefault();\n }\n\n const li = closest(target!, this.config.parentTrigger!);\n const ul = li?.querySelector(this.config.subMenu!);\n this.toggle(ul!);\n }\n }\n\n update() {\n this.disposed = false;\n this.init();\n }\n\n dispose() {\n this.triggerArr.forEach((arr) => {\n arr.removeEventListener('click', this.clickEvent.bind(this));\n });\n this.disposed = true;\n }\n\n on<K extends EventType>(evtType: K, handler: SpecificEventListener<K>, options?: AddEventListenerOptions | boolean): MetisMenu;\n\n on<E extends Event>(evtType: E, handler: CustomEventListener<E>, options?: AddEventListenerOptions | boolean): MetisMenu;\n\n on(evtType: MetisMenuEvents, handler: EventListener, options?: AddEventListenerOptions | boolean) {\n this.element.addEventListener(evtType, handler, options);\n return this;\n }\n\n off<K extends EventType>(evtType: K, handler: SpecificEventListener<K>, options?: AddEventListenerOptions | boolean): MetisMenu;\n\n off<E extends Event>(evtType: E, handler: CustomEventListener<E>, options?: AddEventListenerOptions | boolean): MetisMenu;\n\n off(evtType: MetisMenuEvents, handler: EventListener, options?: AddEventListenerOptions | boolean) {\n this.element.removeEventListener(evtType, handler, options);\n return this;\n }\n\n emit<T extends object>(evtType: string, evtData: T, shouldBubble = false) {\n let evt: CustomEvent<T>;\n if (typeof CustomEvent === 'function') {\n evt = new CustomEvent<T>(evtType, {\n bubbles: shouldBubble,\n detail: evtData,\n });\n } else {\n evt = document.createEvent('CustomEvent');\n evt.initCustomEvent(evtType, shouldBubble, false, evtData);\n }\n this.element.dispatchEvent(evt);\n return this;\n }\n\n toggle(ul: Element) {\n const li = closest(ul, this.config.parentTrigger!);\n if (li?.classList.contains(ClassName.ACTIVE)) {\n this.hide(ul);\n } else {\n this.show(ul);\n }\n }\n\n show(el: Element) {\n const ul = el as HTMLElement;\n const {\n ACTIVE, COLLAPSE, COLLAPSED, COLLAPSING, SHOW,\n } = ClassName;\n\n if (this.isTransitioning || ul.classList.contains(COLLAPSING!)) {\n return;\n }\n const complete = () => {\n ul.classList.remove(COLLAPSING!);\n ul.style.height = '';\n ul.removeEventListener('transitionend', complete);\n this.setTransitioning(false);\n this.emit('shown.metisMenu', {\n shownElement: ul,\n });\n };\n\n const li = closest(ul, this.config.parentTrigger!);\n li?.classList.add(ACTIVE!);\n\n const a = li?.querySelector<HTMLElement>(this.config.triggerElement!);\n a?.setAttribute('aria-expanded', 'true');\n a?.classList.remove(COLLAPSED!);\n\n ul.style.height = '0px';\n ul.classList.remove(COLLAPSE!);\n ul.classList.remove(SHOW!);\n ul.classList.add(COLLAPSING!);\n const eleParentSiblins = [].slice\n .call(li?.parentNode?.children)\n .filter((c) => c !== li);\n if (this.config.toggle && eleParentSiblins.length > 0) {\n eleParentSiblins.forEach((sibli: Element) => {\n const sibUl = sibli.querySelector<HTMLElement>(this.config.subMenu!);\n if (sibUl) {\n this.hide(sibUl);\n }\n });\n }\n\n this.setTransitioning(true);\n\n ul.classList.add(COLLAPSE!);\n ul.classList.add(SHOW!);\n ul.style.height = `${ul.scrollHeight}px`;\n this.emit('show.metisMenu', {\n showElement: ul,\n });\n ul.addEventListener('transitionend', complete);\n }\n\n hide(el: Element) {\n const {\n ACTIVE, COLLAPSE, COLLAPSED, COLLAPSING, SHOW,\n } = ClassName;\n const ul = el as HTMLElement;\n if (this.isTransitioning || !ul.classList.contains(SHOW!)) {\n return;\n }\n this.emit('hide.metisMenu', {\n hideElement: ul,\n });\n\n const li = closest(ul, this.config.parentTrigger!);\n li?.classList.remove(ACTIVE!);\n\n const complete = () => {\n ul.classList.remove(COLLAPSING!);\n ul.classList.add(COLLAPSE!);\n ul.style.height = '';\n ul.removeEventListener('transitionend', complete);\n this.setTransitioning(false);\n this.emit('hidden.metisMenu', {\n hiddenElement: ul,\n });\n };\n\n ul.style.height = `${ul.getBoundingClientRect().height}px`;\n ul.style.height = `${ul.offsetHeight}px`;\n\n ul.classList.add(COLLAPSING!);\n ul.classList.remove(COLLAPSE!);\n ul.classList.remove(SHOW!);\n this.setTransitioning(true);\n\n ul.addEventListener('transitionend', complete);\n\n ul.style.height = '0px';\n\n const a = li?.querySelector(this.config.triggerElement!);\n a?.setAttribute('aria-expanded', 'false');\n a?.classList.add(COLLAPSED!);\n }\n\n private setTransitioning(isTransitioning: boolean) {\n this.isTransitioning = isTransitioning;\n }\n\n static isElement(element: unknown): element is Element {\n return Boolean((element as Element).classList);\n }\n}\n\nexport default MetisMenu;\n"],"names":["__assign","Object","assign","t","s","i","n","arguments","length","p","prototype","hasOwnProperty","call","apply","this","Default","parentTrigger","subMenu","toggle","triggerElement","ClassName","closest","element","selector","el","matches","webkitMatchesSelector","msMatchesSelector","parentElement","MetisMenu","options","isElement","document","querySelector","config","disposed","triggerArr","init","attach","opt","_this","ACTIVE","COLLAPSE","classList","add","slice","querySelectorAll","forEach","ul","li","contains","show","hide","a","getAttribute","setAttribute","addEventListener","clickEvent","bind","push","evt","target","currentTarget","tagName","preventDefault","update","dispose","arr","removeEventListener","on","evtType","handler","off","emit","evtData","shouldBubble","CustomEvent","bubbles","detail","createEvent","initCustomEvent","dispatchEvent","complete","eleParentSiblins","COLLAPSED","COLLAPSING","SHOW","isTransitioning","remove","style","height","setTransitioning","shownElement","_a","parentNode","children","filter","c","sibli","sibUl","scrollHeight","showElement","hideElement","hiddenElement","getBoundingClientRect","offsetHeight","Boolean"],"mappings":"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"} js/metismenujs.min.js.gz 0000604 00000004127 15075446534 0011277 0 ustar 00 � �X[o�8~ϯ`4�!����]MVq��_2��bP�A�h�S��T2F������]`� ��x��t/��.PJ$)a�_}D�W��+��x��$ ��.��"�&��2�B�}�����Fʭ�u�kXɗn��.g�{��[�緌�qJ�.�>aL�r��"
��ESm�>���^�!M���~g�XL24.ЈF� ؤ{v��Y$)g���y���/I���nK�
���<��ӱr0_QFb�\Ly�'��|���Gl�g��oHƺ�1�n����M��-=������^�t��
|�\�ABf��u/���?�s��g�����7ّ��4ʸ�+ �b�'��|$YJ� ��kE`�Un�
>Cwy�b�\^� Rp/aF�
C��`��!:�= W�<�hE�
���:�$q��!@����?�p�g�����Y��-�On����x����p>�������?Y�9�2\<h�Yp��f
f �>��n��{m9?���Maz��l� ���p4\���w��$��] A�)
>��?(��o7
��Q���ɟ���`�0�=���� ��`:�<�[��+W�y���_̧����?�*���t��Fӹv�i�F��W�Gpz��6 g�s~��t��a���W^L����>�0ԈSm���@�i^a�φs���i��p&�AU%� OJ��`����^Wk���.��a��W����<c6�����}��7�p^��meH0��0��l��I�&���O?�>��)�$oz_�7���f\r��&����-���$� N�c˯�G��7�!yp�p�Mv�2����y�°1���^��g%��"_j����� �_bit��(�Z���4�B����+���[x[P�x��,o�g�.6���YD;C�teK7J��t��Jpe�� �O�E_1�`�$7
e�!b���Y~�rls�@~y�R�:&���ۊ��k2W��P,�<IGׅq]��%F�(��A�e/�.��ߜd�r[X��.�lE����
s �, u*V���+#(
�g����QF%��n(em���V�N^
�XT�MaT�^�y����ƙ��W��� ����0�U_��"���$��[�/WM�nч��Bi�ۮNVs����A�T�����N_��܃ӖT�AU�� [8��U��=�nhL�[��2�<r��i�.{�Q��1q���rw�6�D��H_ǟm�
?BQC�4Ŗ��ٸK;ꊶ.\,�Use����I�� #�mEP��ʍ���%e�
�
ҷ�q�����q�Vx3�(�~�1�{�&E�d5�;�tM����(-.Cqe���)�F1Q�ܒU�'�@T�xLW�z����6��Dcc�N%�l��CI��z���Jͱ!zl��i�A{g$���t
I��DU�I�u�8�M>��ٯ
e�s��o �V��x*�����7�&��D3%���F��8�r� ��z�k�`��p_��FM�(� @�#�q3�H��tH�mU�a8u��xCG��\F�j����N�k��=P��~��?�5-ʶ ��~(�����g,p����ē8���νo�-��g��T,��-�B�c}�ON��q�j7����P+�^�6D�jx���� ��,��O�|�Uwp�T��BenZ�HY�UK�+M��Τ�`g'�M��'PX�-
�b%�wبq` �� ����L(�V�v/��L�T#�4�KU|Pu���&L�H�M�&<&P���V��hC�t�x���zV{�d87١v*�ӹ����N�4����=o} �fPȑD�}t��H�ŭ��#�''Ƀ~�`�2�8�d�%+ p����V��h��<g0�f9�Ya�#��Z��O
t����H�p���v���e(��8���g��;2sp�<�
L`ިW�&���'�4�T� k��JЇ������ 7H(�͠3m�P0�2��|y�����DN�Ii�^���q��j~9��O��� �����M�Is �qֆ�T�{R_ռ�t�yBBfW�DԮ���ϳ�����f#���L7��U��I��S js/metismenujs.min.js 0000604 00000012523 15075446534 0010657 0 ustar 00 /*!
* metismenujs - v1.2.1
* MetisMenu: Collapsible menu plugin with Vanilla-JS
* https://github.com/onokumus/metismenujs#readme
*
* Made by Osman Nuri Okumus <onokumus@gmail.com> (https://github.com/onokumus)
* Under MIT License
*/
!function(t,e){"object"==typeof exports&&"undefined"!=typeof module?module.exports=e():"function"==typeof define&&define.amd?define(e):(t=t||self).MetisMenu=e()}(this,function(){"use strict";
/*! *****************************************************************************
Copyright (c) Microsoft Corporation.
Permission to use, copy, modify, and/or distribute this software for any
purpose with or without fee is hereby granted.
THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES WITH
REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY
AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY SPECIAL, DIRECT,
INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM
LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR
OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR
PERFORMANCE OF THIS SOFTWARE.
***************************************************************************** */var i=function(){return(i=Object.assign||function(t){for(var e,i=1,n=arguments.length;i<n;i++)for(var s in e=arguments[i])Object.prototype.hasOwnProperty.call(e,s)&&(t[s]=e[s]);return t}).apply(this,arguments)},n={parentTrigger:"li",subMenu:"ul",toggle:!0,triggerElement:"a"},g="mm-active",f="mm-collapse",m="mm-collapsed",p="mm-collapsing",t="metismenu",v="mm-show";function y(t,e){if(t.closest)return t.closest(e);for(var i,n,s=t;s;){if(n=e,((i=s).matches||i.webkitMatchesSelector||i.msMatchesSelector).call(i,n))return s;s=s.parentElement}return null}function s(t,e){this.element=s.isElement(t)?t:document.querySelector(t),this.config=i(i({},n),e),this.disposed=!1,this.triggerArr=[],this.init()}return s.attach=function(t,e){return new s(t,e)},s.prototype.init=function(){var n=this,s=g,r=f;this.element.classList.add(t),[].slice.call(this.element.querySelectorAll(this.config.subMenu)).forEach(function(t){t.classList.add(r);var e=y(t,n.config.parentTrigger);null!=e&&e.classList.contains(s)?n.show(t):n.hide(t);var i=null==e?void 0:e.querySelector(n.config.triggerElement);"true"!==(null==i?void 0:i.getAttribute("aria-disabled"))&&(null!=i&&i.setAttribute("aria-expanded","false"),null!=i&&i.addEventListener("click",n.clickEvent.bind(n)),n.triggerArr.push(i))})},s.prototype.clickEvent=function(t){var e,i,n;this.disposed||((e=null==t?void 0:t.currentTarget)&&"A"===e.tagName&&t.preventDefault(),n=null==(i=y(e,this.config.parentTrigger))?void 0:i.querySelector(this.config.subMenu),this.toggle(n))},s.prototype.update=function(){this.disposed=!1,this.init()},s.prototype.dispose=function(){var e=this;this.triggerArr.forEach(function(t){t.removeEventListener("click",e.clickEvent.bind(e))}),this.disposed=!0},s.prototype.on=function(t,e,i){return this.element.addEventListener(t,e,i),this},s.prototype.off=function(t,e,i){return this.element.removeEventListener(t,e,i),this},s.prototype.emit=function(t,e,i){var n;return void 0===i&&(i=!1),"function"==typeof CustomEvent?n=new CustomEvent(t,{bubbles:i,detail:e}):(n=document.createEvent("CustomEvent")).initCustomEvent(t,i,!1,e),this.element.dispatchEvent(n),this},s.prototype.toggle=function(t){var e=y(t,this.config.parentTrigger);null!=e&&e.classList.contains(g)?this.hide(t):this.show(t)},s.prototype.show=function(t){var e,i,n,s,r,o=this,l=t,a=g,c=f,u=m,h=p,d=v;this.isTransitioning||l.classList.contains(h)||(i=function(){l.classList.remove(h),l.style.height="",l.removeEventListener("transitionend",i),o.setTransitioning(!1),o.emit("shown.metisMenu",{shownElement:l})},null!=(n=y(l,this.config.parentTrigger))&&n.classList.add(a),null!=(s=null==n?void 0:n.querySelector(this.config.triggerElement))&&s.setAttribute("aria-expanded","true"),null!=s&&s.classList.remove(u),l.style.height="0px",l.classList.remove(c),l.classList.remove(d),l.classList.add(h),r=[].slice.call(null===(e=null==n?void 0:n.parentNode)||void 0===e?void 0:e.children).filter(function(t){return t!==n}),this.config.toggle&&0<r.length&&r.forEach(function(t){var e=t.querySelector(o.config.subMenu);e&&o.hide(e)}),this.setTransitioning(!0),l.classList.add(c),l.classList.add(d),l.style.height=l.scrollHeight+"px",this.emit("show.metisMenu",{showElement:l}),l.addEventListener("transitionend",i))},s.prototype.hide=function(t){var e,i,n,s=this,r=g,o=f,l=m,a=p,c=v,u=t;!this.isTransitioning&&u.classList.contains(c)&&(this.emit("hide.metisMenu",{hideElement:u}),null!=(e=y(u,this.config.parentTrigger))&&e.classList.remove(r),i=function(){u.classList.remove(a),u.classList.add(o),u.style.height="",u.removeEventListener("transitionend",i),s.setTransitioning(!1),s.emit("hidden.metisMenu",{hiddenElement:u})},u.style.height=u.getBoundingClientRect().height+"px",u.style.height=u.offsetHeight+"px",u.classList.add(a),u.classList.remove(o),u.classList.remove(c),this.setTransitioning(!0),u.addEventListener("transitionend",i),u.style.height="0px",null!=(n=null==e?void 0:e.querySelector(this.config.triggerElement))&&n.setAttribute("aria-expanded","false"),null!=n&&n.classList.add(l))},s.prototype.setTransitioning=function(t){this.isTransitioning=t},s.isElement=function(t){return Boolean(t.classList)},s});
//# sourceMappingURL=metismenujs.min.js.map LICENSE 0000604 00000002063 15075446534 0005563 0 ustar 00 MIT License
Copyright (c) 2018 Osman Nuri Okumuş
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.