admin-lte 4.0.0-alpha1 → 4.0.0-alpha2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (151) hide show
  1. package/.bundlewatch.config.json +2 -2
  2. package/.cache/.eslintcache +1 -0
  3. package/.cache/.stylelintcache +1 -0
  4. package/.eslintignore +1 -0
  5. package/.eslintrc.json +16 -0
  6. package/.stylelintrc.json +47 -0
  7. package/LICENSE +1 -1
  8. package/README.md +5 -6
  9. package/dist/css/adminlte.css +2383 -2754
  10. package/dist/css/adminlte.css.map +1 -1
  11. package/dist/css/adminlte.min.css +2 -2
  12. package/dist/css/adminlte.min.css.map +1 -1
  13. package/dist/css/{rtl/adminlte.rtl.css → adminlte.rtl.css} +2377 -2749
  14. package/dist/css/adminlte.rtl.css.map +1 -0
  15. package/dist/css/adminlte.rtl.min.css +7 -0
  16. package/dist/css/adminlte.rtl.min.css.map +1 -0
  17. package/dist/js/adminlte.js +173 -182
  18. package/dist/js/adminlte.js.map +1 -1
  19. package/dist/js/adminlte.min.js +6 -1
  20. package/dist/js/adminlte.min.js.map +1 -1
  21. package/dist/pages/UI/timeline.html +698 -0
  22. package/dist/pages/docs/browser-support.html +614 -0
  23. package/dist/pages/docs/color-mode.html +855 -0
  24. package/dist/pages/docs/components/main-header.html +926 -0
  25. package/dist/pages/docs/layout.html +617 -0
  26. package/dist/pages/docs.html +617 -0
  27. package/dist/pages/examples/login.html +114 -187
  28. package/dist/pages/examples/register.html +117 -190
  29. package/dist/pages/forms/general.html +598 -647
  30. package/dist/pages/index.html +1091 -0
  31. package/dist/pages/index2.html +1452 -0
  32. package/dist/pages/index3.html +950 -0
  33. package/dist/pages/layout/fixed-sidebar.html +590 -638
  34. package/dist/pages/layout/layout-rtl.html +623 -0
  35. package/dist/pages/layout/sidebar-mini.html +623 -0
  36. package/dist/pages/layout/unfixed-sidebar.html +589 -638
  37. package/dist/pages/tables/simple.html +837 -938
  38. package/dist/pages/widgets/cards.html +814 -698
  39. package/dist/pages/widgets/info-box.html +864 -951
  40. package/dist/pages/widgets/small-box.html +625 -678
  41. package/index.html +1 -6
  42. package/package.json +53 -36
  43. package/src/config/assets.config.mjs +8 -0
  44. package/src/config/astro.config.mjs +17 -0
  45. package/src/config/postcss.config.mjs +15 -0
  46. package/src/config/rollup.config.js +20 -0
  47. package/src/html/.eslintrc.json +24 -0
  48. package/src/html/.tsconfig.json +4 -0
  49. package/src/html/components/_head.astro +31 -0
  50. package/src/html/components/_scripts.astro +40 -0
  51. package/src/html/components/dashboard/_footer.astro +12 -0
  52. package/src/html/components/dashboard/_sidenav.astro +323 -0
  53. package/src/{partials/dashboard/_topbar.html → html/components/dashboard/_topbar.astro} +20 -46
  54. package/src/html/components/docs/browser-support/index.md +22 -0
  55. package/src/html/components/docs/color-mode/navbar-html.md +80 -0
  56. package/src/{partials/_scripts.html → html/components/docs/color-mode/toggle-script.md} +5 -52
  57. package/src/html/components/docs/components/main-header-1.md +159 -0
  58. package/src/html/components/docs/introduction/index.md +35 -0
  59. package/src/html/env.d.ts +1 -0
  60. package/src/html/pages/UI/timeline.astro +158 -0
  61. package/src/html/pages/docs/browser-support.astro +58 -0
  62. package/src/html/pages/docs/color-mode.astro +224 -0
  63. package/src/html/pages/docs/components/main-header.astro +232 -0
  64. package/src/html/pages/docs/index.astro +58 -0
  65. package/src/html/pages/docs/layout.astro +77 -0
  66. package/src/{pages/examples/login.html → html/pages/examples/login.astro} +13 -13
  67. package/src/{pages/examples/register.html → html/pages/examples/register.astro} +13 -13
  68. package/src/{pages/forms/general.html → html/pages/forms/general.astro} +26 -30
  69. package/src/{index.html → html/pages/index.astro} +266 -189
  70. package/src/{index2.html → html/pages/index2.astro} +229 -284
  71. package/src/{index3.html → html/pages/index3.astro} +151 -169
  72. package/src/{pages/layout/fixed-sidebar.html → html/pages/layout/fixed-sidebar.astro} +26 -29
  73. package/src/html/pages/layout/layout-rtl.astro +84 -0
  74. package/src/html/pages/layout/sidebar-mini.astro +83 -0
  75. package/src/{pages/layout/unfixed-sidebar.html → html/pages/layout/unfixed-sidebar.astro} +26 -30
  76. package/src/{pages/tables/simple.html → html/pages/tables/simple.astro} +26 -30
  77. package/src/html/pages/widgets/cards.astro +308 -0
  78. package/src/{pages/widgets/info-box.html → html/pages/widgets/info-box.astro} +26 -31
  79. package/src/html/pages/widgets/small-box.astro +121 -0
  80. package/src/scss/_app-footer.scss +15 -0
  81. package/src/scss/_app-header.scss +26 -0
  82. package/src/scss/_app-main.scss +20 -0
  83. package/src/scss/_app-sidebar.scss +429 -0
  84. package/src/scss/{_wrapper.scss → _app-wrapper.scss} +8 -4
  85. package/src/scss/_bootstrap-variables.scss +41 -26
  86. package/src/scss/_callouts.scss +34 -0
  87. package/src/scss/_cards.scss +30 -224
  88. package/src/scss/_direct-chat.scss +15 -9
  89. package/src/scss/_docs.scss +4 -0
  90. package/src/scss/_dropdown.scss +7 -5
  91. package/src/scss/_info-box.scss +2 -6
  92. package/src/scss/_miscellaneous.scss +0 -455
  93. package/src/scss/_mixins.scss +0 -6
  94. package/src/scss/_root.scss +2 -58
  95. package/src/scss/_small-box.scss +15 -38
  96. package/src/scss/_table.scss +0 -50
  97. package/src/scss/_timeline.scss +120 -0
  98. package/src/scss/_variables-dark.scss +15 -8
  99. package/src/scss/_variables.scss +30 -135
  100. package/src/scss/adminlte.scss +1 -1
  101. package/src/scss/mixins/_animations.scss +4 -0
  102. package/src/scss/mixins/_scrollbar.scss +2 -2
  103. package/src/scss/pages/_login_and_register.scss +1 -2
  104. package/src/scss/parts/_core.scss +7 -15
  105. package/src/scss/parts/_extra-components.scss +1 -2
  106. package/src/ts/adminlte.ts +0 -2
  107. package/src/ts/card-widget.ts +42 -18
  108. package/src/ts/direct-chat.ts +33 -8
  109. package/src/ts/layout.ts +6 -4
  110. package/src/ts/push-menu.ts +94 -145
  111. package/src/ts/treeview.ts +17 -23
  112. package/src/ts/util/index.ts +2 -2
  113. package/src/utils/index.js +11 -0
  114. package/tsconfig.json +11 -3
  115. package/.stylelintrc +0 -40
  116. package/CHECKLIST.md +0 -0
  117. package/dist/css/rtl/adminlte.rtl.css.map +0 -1
  118. package/dist/css/rtl/adminlte.rtl.min.css +0 -7
  119. package/dist/css/rtl/adminlte.rtl.min.css.map +0 -1
  120. package/dist/index.html +0 -1065
  121. package/dist/index2.html +0 -1629
  122. package/dist/index3.html +0 -1015
  123. package/gulpfile.js +0 -315
  124. package/src/pages/widgets/cards.html +0 -143
  125. package/src/pages/widgets/small-box.html +0 -124
  126. package/src/partials/_head.html +0 -31
  127. package/src/partials/dashboard/_footer.html +0 -9
  128. package/src/partials/dashboard/_sidenav.html +0 -244
  129. package/src/scss/_brand-container.scss +0 -72
  130. package/src/scss/_content-header.scss +0 -9
  131. package/src/scss/_content-wrapper.scss +0 -6
  132. package/src/scss/_content.scss +0 -3
  133. package/src/scss/_layout-fixed.scss +0 -43
  134. package/src/scss/_layout-mobile.scss +0 -22
  135. package/src/scss/_main-footer.scss +0 -28
  136. package/src/scss/_main-header.scss +0 -40
  137. package/src/scss/_main-sidebar.scss +0 -63
  138. package/src/scss/_nav-sidebar.scss +0 -66
  139. package/src/scss/_products.scss +0 -55
  140. package/src/scss/_sidebar-close.scss +0 -6
  141. package/src/scss/_sidebar-collapse.scss +0 -120
  142. package/src/scss/_sidebar-horizontal.scss +0 -67
  143. package/src/scss/_sidebar.scss +0 -11
  144. package/src/scss/_users-list.scss +0 -45
  145. package/src/scss/mixins/_brand-variant.scss +0 -9
  146. package/src/scss/mixins/_cards.scss +0 -53
  147. package/src/scss/mixins/_direct-chat.scss +0 -17
  148. package/src/scss/mixins/_header-variant.scss +0 -22
  149. package/src/scss/mixins/_nav-treeview-dark.scss +0 -87
  150. package/src/scss/mixins/_nav-treeview-light.scss +0 -89
  151. package/src/scss/mixins/_sidebar-color.scss +0 -9
@@ -1,3 +1,8 @@
1
+ /*!
2
+ * AdminLTE v4.0.0-alpha2 (https://adminlte.io)
3
+ * Copyright 2014-2023 Colorlib <https://colorlib.com>
4
+ * Licensed under MIT (https://github.com/ColorlibHQ/AdminLTE/blob/master/LICENSE)
5
+ */
1
6
  (function (global, factory) {
2
7
  typeof exports === 'object' && typeof module !== 'undefined' ? factory(exports) :
3
8
  typeof define === 'function' && define.amd ? define(['exports'], factory) :
@@ -83,14 +88,14 @@
83
88
  * ------------------------------------------------------------------------
84
89
  */
85
90
  const CLASS_NAME_HOLD_TRANSITIONS = 'hold-transition';
91
+ const CLASS_NAME_APP_LOADED = 'app-loaded';
86
92
  /**
87
93
  * Class Definition
88
94
  * ====================================================
89
95
  */
90
96
  class Layout {
91
- constructor(element, config) {
97
+ constructor(element) {
92
98
  this._element = element;
93
- this._config = config;
94
99
  }
95
100
  holdTransition() {
96
101
  let resizeTimer;
@@ -104,8 +109,11 @@
104
109
  }
105
110
  }
106
111
  domReady(() => {
107
- const data = new Layout(document.body, undefined);
112
+ const data = new Layout(document.body);
108
113
  data.holdTransition();
114
+ setTimeout(() => {
115
+ document.body.classList.add(CLASS_NAME_APP_LOADED);
116
+ }, 400);
109
117
  });
110
118
 
111
119
  /**
@@ -119,27 +127,27 @@
119
127
  * Constants
120
128
  * ------------------------------------------------------------------------
121
129
  */
130
+ const DATA_KEY$3 = 'lte.push-menu';
131
+ const EVENT_KEY$3 = `.${DATA_KEY$3}`;
132
+ const EVENT_OPEN = `open${EVENT_KEY$3}`;
133
+ const EVENT_COLLAPSE = `collapse${EVENT_KEY$3}`;
122
134
  const CLASS_NAME_SIDEBAR_MINI = 'sidebar-mini';
123
- const CLASS_NAME_SIDEBAR_MINI_HAD = 'sidebar-mini-had';
124
- const CLASS_NAME_SIDEBAR_HORIZONTAL = 'sidebar-horizontal';
125
135
  const CLASS_NAME_SIDEBAR_COLLAPSE = 'sidebar-collapse';
126
- const CLASS_NAME_SIDEBAR_CLOSE = 'sidebar-close';
127
136
  const CLASS_NAME_SIDEBAR_OPEN = 'sidebar-open';
128
- const CLASS_NAME_SIDEBAR_OPENING = 'sidebar-is-opening';
129
- const CLASS_NAME_SIDEBAR_COLLAPSING = 'sidebar-is-collapsing';
130
137
  const CLASS_NAME_SIDEBAR_IS_HOVER = 'sidebar-is-hover';
138
+ const CLASS_NAME_SIDEBAR_EXPAND = 'sidebar-expand';
139
+ const CLASS_NAME_SIDEBAR_OVERLAY = 'sidebar-overlay';
131
140
  const CLASS_NAME_MENU_OPEN$1 = 'menu-open';
132
- const CLASS_NAME_LAYOUT_MOBILE = 'layout-mobile';
133
- const SELECTOR_SIDEBAR = '.sidebar';
134
- const SELECTOR_NAV_SIDEBAR = '.nav-sidebar';
141
+ const SELECTOR_APP_SIDEBAR = '.app-sidebar';
142
+ const SELECTOR_SIDEBAR_WRAPPER = '.sidebar-wrapper';
143
+ const SELECTOR_SIDEBAR_MENU = '.sidebar-menu';
135
144
  const SELECTOR_NAV_ITEM$1 = '.nav-item';
136
145
  const SELECTOR_NAV_TREEVIEW = '.nav-treeview';
137
- const SELECTOR_MINI_TOGGLE = '[data-lte-toggle="sidebar-mini"]';
138
- const SELECTOR_FULL_TOGGLE = '[data-lte-toggle="sidebar-full"]';
139
- const SELECTOR_SIDEBAR_SM = `.${CLASS_NAME_LAYOUT_MOBILE}`;
140
- const SELECTOR_CONTENT_WRAPPER = '.content-wrapper';
146
+ const SELECTOR_APP_WRAPPER = '.app-wrapper';
147
+ const SELECTOR_SIDEBAR_EXPAND = `[class*="${CLASS_NAME_SIDEBAR_EXPAND}"]`;
148
+ const SELECTOR_SIDEBAR_TOGGLE = '[data-lte-toggle="sidebar"]';
141
149
  const Defaults = {
142
- onLayouMobile: 992
150
+ sidebarBreakpoint: 992
143
151
  };
144
152
  /**
145
153
  * Class Definition
@@ -148,108 +156,67 @@
148
156
  class PushMenu {
149
157
  constructor(element, config) {
150
158
  this._element = element;
151
- const bodyElement = document.body;
152
- this._bodyClass = bodyElement.classList;
153
- this._config = config;
154
- }
155
- sidebarOpening() {
156
- this._bodyClass.add(CLASS_NAME_SIDEBAR_OPENING);
157
- setTimeout(() => {
158
- this._bodyClass.remove(CLASS_NAME_SIDEBAR_OPENING);
159
- }, 1000);
160
- }
161
- sidebarColllapsing() {
162
- this._bodyClass.add(CLASS_NAME_SIDEBAR_COLLAPSING);
163
- setTimeout(() => {
164
- this._bodyClass.remove(CLASS_NAME_SIDEBAR_COLLAPSING);
165
- }, 1000);
159
+ this._config = Object.assign(Object.assign({}, Defaults), config);
166
160
  }
161
+ // TODO
167
162
  menusClose() {
168
163
  const navTreeview = document.querySelectorAll(SELECTOR_NAV_TREEVIEW);
169
- for (const navTree of navTreeview) {
164
+ navTreeview.forEach(navTree => {
170
165
  navTree.style.removeProperty('display');
171
166
  navTree.style.removeProperty('height');
172
- }
173
- const navSidebar = document.querySelector(SELECTOR_NAV_SIDEBAR);
167
+ });
168
+ const navSidebar = document.querySelector(SELECTOR_SIDEBAR_MENU);
174
169
  const navItem = navSidebar === null || navSidebar === void 0 ? void 0 : navSidebar.querySelectorAll(SELECTOR_NAV_ITEM$1);
175
170
  if (navItem) {
176
- for (const navI of navItem) {
171
+ navItem.forEach(navI => {
177
172
  navI.classList.remove(CLASS_NAME_MENU_OPEN$1);
178
- }
173
+ });
179
174
  }
180
175
  }
181
176
  expand() {
182
- this.sidebarOpening();
183
- this._bodyClass.remove(CLASS_NAME_SIDEBAR_CLOSE);
184
- this._bodyClass.remove(CLASS_NAME_SIDEBAR_COLLAPSE);
185
- this._bodyClass.add(CLASS_NAME_SIDEBAR_OPEN);
177
+ const event = new Event(EVENT_OPEN);
178
+ document.body.classList.remove(CLASS_NAME_SIDEBAR_COLLAPSE);
179
+ document.body.classList.add(CLASS_NAME_SIDEBAR_OPEN);
180
+ this._element.dispatchEvent(event);
186
181
  }
187
182
  collapse() {
188
- this.sidebarColllapsing();
189
- this._bodyClass.add(CLASS_NAME_SIDEBAR_COLLAPSE);
190
- }
191
- close() {
192
- this._bodyClass.add(CLASS_NAME_SIDEBAR_CLOSE);
193
- this._bodyClass.remove(CLASS_NAME_SIDEBAR_OPEN);
194
- this._bodyClass.remove(CLASS_NAME_SIDEBAR_COLLAPSE);
195
- if (this._bodyClass.contains(CLASS_NAME_SIDEBAR_HORIZONTAL)) {
196
- this.menusClose();
197
- }
183
+ const event = new Event(EVENT_COLLAPSE);
184
+ document.body.classList.remove(CLASS_NAME_SIDEBAR_OPEN);
185
+ document.body.classList.add(CLASS_NAME_SIDEBAR_COLLAPSE);
186
+ this._element.dispatchEvent(event);
198
187
  }
199
188
  sidebarHover() {
200
- const selSidebar = document.querySelector(SELECTOR_SIDEBAR);
189
+ const selSidebar = document.querySelector(SELECTOR_SIDEBAR_WRAPPER);
201
190
  if (selSidebar) {
202
191
  selSidebar.addEventListener('mouseover', () => {
203
- this._bodyClass.add(CLASS_NAME_SIDEBAR_IS_HOVER);
192
+ document.body.classList.add(CLASS_NAME_SIDEBAR_IS_HOVER);
204
193
  });
205
194
  selSidebar.addEventListener('mouseout', () => {
206
- this._bodyClass.remove(CLASS_NAME_SIDEBAR_IS_HOVER);
195
+ document.body.classList.remove(CLASS_NAME_SIDEBAR_IS_HOVER);
207
196
  });
208
197
  }
209
198
  }
210
- addSidebaBreakPoint() {
211
- const bodyClass = document.body.classList;
212
- const widthOutput = window.innerWidth;
213
- if (widthOutput < Defaults.onLayouMobile) {
214
- bodyClass.add(CLASS_NAME_LAYOUT_MOBILE);
215
- }
216
- if (widthOutput >= Defaults.onLayouMobile) {
217
- bodyClass.remove(CLASS_NAME_LAYOUT_MOBILE);
218
- this.expand();
219
- }
220
- }
221
- removeOverlaySidebar() {
222
- const bodyClass = document.body.classList;
223
- if (bodyClass.contains(CLASS_NAME_LAYOUT_MOBILE)) {
224
- bodyClass.remove(CLASS_NAME_SIDEBAR_OPEN);
225
- bodyClass.remove(CLASS_NAME_SIDEBAR_COLLAPSE);
226
- bodyClass.add(CLASS_NAME_SIDEBAR_CLOSE);
227
- }
228
- }
229
- closeSidebar() {
230
- const widthOutput = window.innerWidth;
231
- if (widthOutput < Defaults.onLayouMobile) {
232
- document.body.classList.add(CLASS_NAME_SIDEBAR_CLOSE);
233
- }
234
- }
235
- toggleFull() {
236
- if (this._bodyClass.contains(CLASS_NAME_SIDEBAR_CLOSE)) {
237
- this.expand();
199
+ addSidebarBreakPoint() {
200
+ var _a, _b, _c;
201
+ const sidebarExpandList = (_b = (_a = document.querySelector(SELECTOR_SIDEBAR_EXPAND)) === null || _a === void 0 ? void 0 : _a.classList) !== null && _b !== void 0 ? _b : [];
202
+ const sidebarExpand = (_c = Array.from(sidebarExpandList).find(className => className.startsWith(CLASS_NAME_SIDEBAR_EXPAND))) !== null && _c !== void 0 ? _c : '';
203
+ const sidebar = document.getElementsByClassName(sidebarExpand)[0];
204
+ const sidebarContent = window.getComputedStyle(sidebar, '::before').getPropertyValue('content');
205
+ this._config = Object.assign(Object.assign({}, this._config), { sidebarBreakpoint: Number(sidebarContent.replace(/[^\d.-]/g, '')) });
206
+ if (window.innerWidth <= this._config.sidebarBreakpoint) {
207
+ this.collapse();
238
208
  }
239
209
  else {
240
- this.close();
241
- }
242
- if (this._bodyClass.contains(CLASS_NAME_SIDEBAR_MINI)) {
243
- this._bodyClass.remove(CLASS_NAME_SIDEBAR_MINI);
244
- this._bodyClass.add(CLASS_NAME_SIDEBAR_MINI_HAD);
210
+ if (!document.body.classList.contains(CLASS_NAME_SIDEBAR_MINI)) {
211
+ this.expand();
212
+ }
213
+ if (document.body.classList.contains(CLASS_NAME_SIDEBAR_MINI)) {
214
+ this.collapse();
215
+ }
245
216
  }
246
217
  }
247
- toggleMini() {
248
- if (this._bodyClass.contains(CLASS_NAME_SIDEBAR_MINI_HAD)) {
249
- this._bodyClass.remove(CLASS_NAME_SIDEBAR_MINI_HAD);
250
- this._bodyClass.add(CLASS_NAME_SIDEBAR_MINI);
251
- }
252
- if (this._bodyClass.contains(CLASS_NAME_SIDEBAR_COLLAPSE)) {
218
+ toggle() {
219
+ if (document.body.classList.contains(CLASS_NAME_SIDEBAR_COLLAPSE)) {
253
220
  this.expand();
254
221
  }
255
222
  else {
@@ -257,15 +224,8 @@
257
224
  }
258
225
  }
259
226
  init() {
260
- this.addSidebaBreakPoint();
227
+ this.addSidebarBreakPoint();
261
228
  this.sidebarHover();
262
- const selSidebarSm = document.querySelector(SELECTOR_SIDEBAR_SM);
263
- const selContentWrapper = selSidebarSm === null || selSidebarSm === void 0 ? void 0 : selSidebarSm.querySelector(SELECTOR_CONTENT_WRAPPER);
264
- if (selContentWrapper) {
265
- selContentWrapper.addEventListener('touchstart', this.removeOverlaySidebar);
266
- selContentWrapper.addEventListener('click', this.removeOverlaySidebar);
267
- }
268
- this.closeSidebar();
269
229
  }
270
230
  }
271
231
  /**
@@ -274,39 +234,45 @@
274
234
  * ------------------------------------------------------------------------
275
235
  */
276
236
  domReady(() => {
277
- const data = new PushMenu(undefined, undefined);
278
- data.init();
279
- window.addEventListener('resize', () => {
237
+ var _a;
238
+ const sidebar = document === null || document === void 0 ? void 0 : document.querySelector(SELECTOR_APP_SIDEBAR);
239
+ if (sidebar) {
240
+ const data = new PushMenu(sidebar, Defaults);
280
241
  data.init();
281
- });
282
- const fullBtn = document.querySelectorAll(SELECTOR_FULL_TOGGLE);
283
- for (const btn of fullBtn) {
284
- btn.addEventListener('click', event => {
285
- event.preventDefault();
286
- let button = event.currentTarget;
287
- if ((button === null || button === void 0 ? void 0 : button.dataset.lteToggle) !== 'sidebar-full') {
288
- button = button === null || button === void 0 ? void 0 : button.closest(SELECTOR_FULL_TOGGLE);
289
- }
290
- if (button) {
291
- const data = new PushMenu(button, undefined);
292
- data.toggleFull();
293
- }
242
+ window.addEventListener('resize', () => {
243
+ data.init();
294
244
  });
295
245
  }
296
- const miniBtn = document.querySelectorAll(SELECTOR_MINI_TOGGLE);
297
- for (const btn of miniBtn) {
246
+ const sidebarOverlay = document.createElement('div');
247
+ sidebarOverlay.className = CLASS_NAME_SIDEBAR_OVERLAY;
248
+ (_a = document.querySelector(SELECTOR_APP_WRAPPER)) === null || _a === void 0 ? void 0 : _a.append(sidebarOverlay);
249
+ sidebarOverlay.addEventListener('touchstart', event => {
250
+ event.preventDefault();
251
+ const target = event.currentTarget;
252
+ const data = new PushMenu(target, Defaults);
253
+ data.collapse();
254
+ });
255
+ sidebarOverlay.addEventListener('click', event => {
256
+ event.preventDefault();
257
+ const target = event.currentTarget;
258
+ const data = new PushMenu(target, Defaults);
259
+ data.collapse();
260
+ });
261
+ const fullBtn = document.querySelectorAll(SELECTOR_SIDEBAR_TOGGLE);
262
+ fullBtn.forEach(btn => {
298
263
  btn.addEventListener('click', event => {
299
264
  event.preventDefault();
300
265
  let button = event.currentTarget;
301
- if ((button === null || button === void 0 ? void 0 : button.dataset.lteToggle) !== 'sidebar-mini') {
302
- button = button === null || button === void 0 ? void 0 : button.closest(SELECTOR_FULL_TOGGLE);
266
+ if ((button === null || button === void 0 ? void 0 : button.dataset.lteToggle) !== 'sidebar') {
267
+ button = button === null || button === void 0 ? void 0 : button.closest(SELECTOR_SIDEBAR_TOGGLE);
303
268
  }
304
269
  if (button) {
305
- const data = new PushMenu(button, undefined);
306
- data.toggleMini();
270
+ event === null || event === void 0 ? void 0 : event.preventDefault();
271
+ const data = new PushMenu(button, Defaults);
272
+ data.toggle();
307
273
  }
308
274
  });
309
- }
275
+ });
310
276
  });
311
277
 
312
278
  /**
@@ -321,13 +287,12 @@
321
287
  * ------------------------------------------------------------------------
322
288
  */
323
289
  // const NAME = 'Treeview'
324
- const DATA_KEY = 'lte.treeview';
325
- const EVENT_KEY = `.${DATA_KEY}`;
326
- const EVENT_EXPANDED = `expanded${EVENT_KEY}`;
327
- const EVENT_COLLAPSED = `collapsed${EVENT_KEY}`;
290
+ const DATA_KEY$2 = 'lte.treeview';
291
+ const EVENT_KEY$2 = `.${DATA_KEY$2}`;
292
+ const EVENT_EXPANDED$2 = `expanded${EVENT_KEY$2}`;
293
+ const EVENT_COLLAPSED$2 = `collapsed${EVENT_KEY$2}`;
328
294
  // const EVENT_LOAD_DATA_API = `load${EVENT_KEY}`
329
295
  const CLASS_NAME_MENU_OPEN = 'menu-open';
330
- const CLASS_NAME_MENU_IS_OPEN = 'menu-is-open';
331
296
  const SELECTOR_NAV_ITEM = '.nav-item';
332
297
  const SELECTOR_TREEVIEW_MENU = '.nav-treeview';
333
298
  const SELECTOR_DATA_TOGGLE$1 = '[data-lte-toggle="treeview"]';
@@ -340,37 +305,28 @@
340
305
  */
341
306
  class Treeview {
342
307
  constructor(element, config) {
343
- var _a, _b;
344
308
  this._element = element;
345
- this._config = { ...Default$1, ...config };
346
- this._navItem = (_a = this._element) === null || _a === void 0 ? void 0 : _a.closest(SELECTOR_NAV_ITEM);
347
- this._childNavItem = (_b = this._navItem) === null || _b === void 0 ? void 0 : _b.querySelector(SELECTOR_TREEVIEW_MENU);
309
+ this._config = Object.assign(Object.assign({}, Default$1), config);
310
+ this._childNavItem = this._element.querySelector(SELECTOR_TREEVIEW_MENU);
348
311
  }
349
312
  open() {
350
- const event = new Event(EVENT_EXPANDED);
351
- if (this._navItem) {
352
- this._navItem.classList.add(CLASS_NAME_MENU_OPEN);
353
- this._navItem.classList.add(CLASS_NAME_MENU_IS_OPEN);
354
- }
313
+ const event = new Event(EVENT_EXPANDED$2);
314
+ this._element.classList.add(CLASS_NAME_MENU_OPEN);
355
315
  if (this._childNavItem) {
356
316
  slideDown(this._childNavItem, this._config.animationSpeed);
357
- this._element.dispatchEvent(event);
358
317
  }
318
+ this._element.dispatchEvent(event);
359
319
  }
360
320
  close() {
361
- const event = new Event(EVENT_COLLAPSED);
362
- if (this._navItem) {
363
- this._navItem.classList.remove(CLASS_NAME_MENU_IS_OPEN);
364
- this._navItem.classList.remove(CLASS_NAME_MENU_OPEN);
365
- }
321
+ const event = new Event(EVENT_COLLAPSED$2);
322
+ this._element.classList.remove(CLASS_NAME_MENU_OPEN);
366
323
  if (this._childNavItem) {
367
324
  slideUp(this._childNavItem, this._config.animationSpeed);
368
- this._element.dispatchEvent(event);
369
325
  }
326
+ this._element.dispatchEvent(event);
370
327
  }
371
328
  toggle() {
372
- var _a;
373
- if ((_a = this._navItem) === null || _a === void 0 ? void 0 : _a.classList.contains(CLASS_NAME_MENU_OPEN)) {
329
+ if (this._element.classList.contains(CLASS_NAME_MENU_OPEN)) {
374
330
  this.close();
375
331
  }
376
332
  else {
@@ -385,14 +341,16 @@
385
341
  */
386
342
  domReady(() => {
387
343
  const button = document.querySelectorAll(SELECTOR_DATA_TOGGLE$1);
388
- for (const btn of button) {
344
+ button.forEach(btn => {
389
345
  btn.addEventListener('click', event => {
390
- // event.preventDefault()
391
- const treeviewMenu = event.target;
392
- const data = new Treeview(treeviewMenu, Default$1);
393
- data.toggle();
346
+ const target = event.target;
347
+ const targetItem = target.closest(SELECTOR_NAV_ITEM);
348
+ if (targetItem) {
349
+ const data = new Treeview(targetItem, Default$1);
350
+ data.toggle();
351
+ }
394
352
  });
395
- }
353
+ });
396
354
  });
397
355
 
398
356
  /**
@@ -405,6 +363,10 @@
405
363
  * Constants
406
364
  * ====================================================
407
365
  */
366
+ const DATA_KEY$1 = 'lte.direct-chat';
367
+ const EVENT_KEY$1 = `.${DATA_KEY$1}`;
368
+ const EVENT_EXPANDED$1 = `expanded${EVENT_KEY$1}`;
369
+ const EVENT_COLLAPSED$1 = `collapsed${EVENT_KEY$1}`;
408
370
  const SELECTOR_DATA_TOGGLE = '[data-lte-toggle="chat-pane"]';
409
371
  const SELECTOR_DIRECT_CHAT = '.direct-chat';
410
372
  const CLASS_NAME_DIRECT_CHAT_OPEN = 'direct-chat-contacts-open';
@@ -413,10 +375,20 @@
413
375
  * ====================================================
414
376
  */
415
377
  class DirectChat {
416
- toggle(chatPane) {
417
- var _a;
418
- // chatPane
419
- (_a = chatPane.closest(SELECTOR_DIRECT_CHAT)) === null || _a === void 0 ? void 0 : _a.classList.toggle(CLASS_NAME_DIRECT_CHAT_OPEN);
378
+ constructor(element) {
379
+ this._element = element;
380
+ }
381
+ toggle() {
382
+ if (this._element.classList.contains(CLASS_NAME_DIRECT_CHAT_OPEN)) {
383
+ const event = new Event(EVENT_COLLAPSED$1);
384
+ this._element.classList.remove(CLASS_NAME_DIRECT_CHAT_OPEN);
385
+ this._element.dispatchEvent(event);
386
+ }
387
+ else {
388
+ const event = new Event(EVENT_EXPANDED$1);
389
+ this._element.classList.add(CLASS_NAME_DIRECT_CHAT_OPEN);
390
+ this._element.dispatchEvent(event);
391
+ }
420
392
  }
421
393
  }
422
394
  /**
@@ -426,14 +398,17 @@
426
398
  */
427
399
  domReady(() => {
428
400
  const button = document.querySelectorAll(SELECTOR_DATA_TOGGLE);
429
- for (const btn of button) {
401
+ button.forEach(btn => {
430
402
  btn.addEventListener('click', event => {
431
403
  event.preventDefault();
432
- const chatPane = event.target;
433
- const data = new DirectChat();
434
- data.toggle(chatPane);
404
+ const target = event.target;
405
+ const chatPane = target.closest(SELECTOR_DIRECT_CHAT);
406
+ if (chatPane) {
407
+ const data = new DirectChat(chatPane);
408
+ data.toggle();
409
+ }
435
410
  });
436
- }
411
+ });
437
412
  });
438
413
 
439
414
  /**
@@ -446,6 +421,13 @@
446
421
  * Constants
447
422
  * ====================================================
448
423
  */
424
+ const DATA_KEY = 'lte.card-widget';
425
+ const EVENT_KEY = `.${DATA_KEY}`;
426
+ const EVENT_COLLAPSED = `collapsed${EVENT_KEY}`;
427
+ const EVENT_EXPANDED = `expanded${EVENT_KEY}`;
428
+ const EVENT_REMOVE = `remove${EVENT_KEY}`;
429
+ const EVENT_MAXIMIZED = `maximized${EVENT_KEY}`;
430
+ const EVENT_MINIMIZED = `minimized${EVENT_KEY}`;
449
431
  const CLASS_NAME_CARD = 'card';
450
432
  const CLASS_NAME_COLLAPSED = 'collapsed-card';
451
433
  const CLASS_NAME_COLLAPSING = 'collapsing-card';
@@ -476,20 +458,19 @@
476
458
  if (element.classList.contains(CLASS_NAME_CARD)) {
477
459
  this._parent = element;
478
460
  }
479
- this._config = { ...Default, ...config };
461
+ this._config = Object.assign(Object.assign({}, Default), config);
480
462
  }
481
463
  collapse() {
482
- var _a, _b;
464
+ var _a, _b, _c;
465
+ const event = new Event(EVENT_COLLAPSED);
483
466
  if (this._parent) {
484
467
  this._parent.classList.add(CLASS_NAME_COLLAPSING);
485
468
  const elm = (_a = this._parent) === null || _a === void 0 ? void 0 : _a.querySelectorAll(`${SELECTOR_CARD_BODY}, ${SELECTOR_CARD_FOOTER}`);
486
- if (elm !== undefined) {
487
- for (const el of elm) {
488
- if (el instanceof HTMLElement) {
489
- slideUp(el, this._config.animationSpeed);
490
- }
469
+ elm.forEach(el => {
470
+ if (el instanceof HTMLElement) {
471
+ slideUp(el, this._config.animationSpeed);
491
472
  }
492
- }
473
+ });
493
474
  setTimeout(() => {
494
475
  if (this._parent) {
495
476
  this._parent.classList.add(CLASS_NAME_COLLAPSED);
@@ -502,19 +483,19 @@
502
483
  icon.classList.remove(this._config.collapseIcon);
503
484
  icon.classList.add(this._config.expandIcon);
504
485
  }
486
+ (_c = this._element) === null || _c === void 0 ? void 0 : _c.dispatchEvent(event);
505
487
  }
506
488
  expand() {
507
- var _a, _b;
489
+ var _a, _b, _c;
490
+ const event = new Event(EVENT_EXPANDED);
508
491
  if (this._parent) {
509
492
  this._parent.classList.add(CLASS_NAME_EXPANDING);
510
493
  const elm = (_a = this._parent) === null || _a === void 0 ? void 0 : _a.querySelectorAll(`${SELECTOR_CARD_BODY}, ${SELECTOR_CARD_FOOTER}`);
511
- if (elm !== undefined) {
512
- for (const el of elm) {
513
- if (el instanceof HTMLElement) {
514
- slideDown(el, this._config.animationSpeed);
515
- }
494
+ elm.forEach(el => {
495
+ if (el instanceof HTMLElement) {
496
+ slideDown(el, this._config.animationSpeed);
516
497
  }
517
- }
498
+ });
518
499
  setTimeout(() => {
519
500
  if (this._parent) {
520
501
  this._parent.classList.remove(CLASS_NAME_COLLAPSED);
@@ -527,11 +508,15 @@
527
508
  icon.classList.add(this._config.collapseIcon);
528
509
  icon.classList.remove(this._config.expandIcon);
529
510
  }
511
+ (_c = this._element) === null || _c === void 0 ? void 0 : _c.dispatchEvent(event);
530
512
  }
531
513
  remove() {
514
+ var _a;
515
+ const event = new Event(EVENT_REMOVE);
532
516
  if (this._parent) {
533
517
  slideUp(this._parent, this._config.animationSpeed);
534
518
  }
519
+ (_a = this._element) === null || _a === void 0 ? void 0 : _a.dispatchEvent(event);
535
520
  }
536
521
  toggle() {
537
522
  var _a;
@@ -542,6 +527,8 @@
542
527
  this.collapse();
543
528
  }
544
529
  maximize() {
530
+ var _a;
531
+ const event = new Event(EVENT_MAXIMIZED);
545
532
  if (this._parent) {
546
533
  const maxElm = this._parent.querySelector(`${this._config.maximizeTrigger} .${this._config.maximizeIcon}`);
547
534
  if (maxElm) {
@@ -564,8 +551,11 @@
564
551
  }
565
552
  }, 150);
566
553
  }
554
+ (_a = this._element) === null || _a === void 0 ? void 0 : _a.dispatchEvent(event);
567
555
  }
568
556
  minimize() {
557
+ var _a;
558
+ const event = new Event(EVENT_MINIMIZED);
569
559
  if (this._parent) {
570
560
  const minElm = this._parent.querySelector(`${this._config.maximizeTrigger} .${this._config.minimizeIcon}`);
571
561
  if (minElm) {
@@ -587,6 +577,7 @@
587
577
  }
588
578
  }, 10);
589
579
  }
580
+ (_a = this._element) === null || _a === void 0 ? void 0 : _a.dispatchEvent(event);
590
581
  }
591
582
  toggleMaximize() {
592
583
  var _a;
@@ -604,32 +595,32 @@
604
595
  */
605
596
  domReady(() => {
606
597
  const collapseBtn = document.querySelectorAll(SELECTOR_DATA_COLLAPSE);
607
- for (const btn of collapseBtn) {
598
+ collapseBtn.forEach(btn => {
608
599
  btn.addEventListener('click', event => {
609
600
  event.preventDefault();
610
601
  const target = event.target;
611
602
  const data = new CardWidget(target, Default);
612
603
  data.toggle();
613
604
  });
614
- }
605
+ });
615
606
  const removeBtn = document.querySelectorAll(SELECTOR_DATA_REMOVE);
616
- for (const btn of removeBtn) {
607
+ removeBtn.forEach(btn => {
617
608
  btn.addEventListener('click', event => {
618
609
  event.preventDefault();
619
610
  const target = event.target;
620
611
  const data = new CardWidget(target, Default);
621
612
  data.remove();
622
613
  });
623
- }
614
+ });
624
615
  const maxBtn = document.querySelectorAll(SELECTOR_DATA_MAXIMIZE);
625
- for (const btn of maxBtn) {
616
+ maxBtn.forEach(btn => {
626
617
  btn.addEventListener('click', event => {
627
618
  event.preventDefault();
628
619
  const target = event.target;
629
620
  const data = new CardWidget(target, Default);
630
621
  data.toggleMaximize();
631
622
  });
632
- }
623
+ });
633
624
  });
634
625
 
635
626
  exports.CardWidget = CardWidget;