admin-lte 4.0.0-rc7 → 4.0.1
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.
- package/CHANGELOG.md +69 -0
- package/README.md +202 -102
- package/dist/UI/general.html +330 -129
- package/dist/UI/icons.html +330 -129
- package/dist/UI/timeline.html +330 -129
- package/dist/css/adminlte.css +2798 -1167
- package/dist/css/adminlte.css.map +1 -1
- package/dist/css/adminlte.min.css +2 -2
- package/dist/css/adminlte.min.css.map +1 -1
- package/dist/css/adminlte.rtl.css +2798 -1167
- package/dist/css/adminlte.rtl.css.map +1 -1
- package/dist/css/adminlte.rtl.min.css +2 -2
- package/dist/css/adminlte.rtl.min.css.map +1 -1
- package/dist/docs/browser-support.html +287 -399
- package/dist/docs/color-mode.html +268 -384
- package/dist/docs/components/main-header.html +264 -376
- package/dist/docs/components/main-sidebar.html +279 -391
- package/dist/docs/customization.html +1080 -0
- package/dist/docs/deployment.html +1145 -0
- package/dist/docs/faq.html +883 -411
- package/dist/docs/getting-started.html +991 -0
- package/dist/docs/how-to-contribute.html +361 -464
- package/dist/docs/index.html +16 -0
- package/dist/docs/integrations.html +1231 -0
- package/dist/docs/introduction.html +479 -448
- package/dist/docs/javascript/accessibility.html +387 -493
- package/dist/docs/javascript/card-widget.html +472 -452
- package/dist/docs/javascript/direct-chat.html +350 -423
- package/dist/docs/javascript/fullscreen.html +374 -418
- package/dist/docs/javascript/layout.html +371 -438
- package/dist/docs/javascript/plugins-overview.html +1144 -0
- package/dist/docs/javascript/pushmenu.html +511 -494
- package/dist/docs/javascript/treeview.html +492 -402
- package/dist/docs/layout-blueprint.html +1087 -0
- package/dist/docs/layout.html +313 -417
- package/dist/docs/license.html +278 -389
- package/dist/docs/migration.html +1149 -0
- package/dist/docs/recipes.html +1185 -0
- package/dist/docs/rtl.html +957 -0
- package/dist/examples/lockscreen.html +91 -1
- package/dist/examples/login-v2.html +91 -1
- package/dist/examples/login.html +91 -1
- package/dist/examples/register-v2.html +91 -1
- package/dist/examples/register.html +91 -1
- package/dist/forms/elements.html +1405 -0
- package/dist/forms/{general.html → layout.html} +401 -489
- package/dist/forms/validation.html +1275 -0
- package/dist/forms/wizard.html +1410 -0
- package/dist/generate/theme.html +160 -4
- package/dist/index.html +330 -129
- package/dist/index2.html +333 -129
- package/dist/index3.html +330 -129
- package/dist/js/adminlte.js +8 -5
- package/dist/js/adminlte.js.map +1 -1
- package/dist/js/adminlte.min.js +2 -2
- package/dist/js/adminlte.min.js.map +1 -1
- package/dist/layout/collapsed-sidebar-without-hover.html +330 -129
- package/dist/layout/collapsed-sidebar.html +330 -129
- package/dist/layout/fixed-complete.html +330 -129
- package/dist/layout/fixed-footer.html +330 -129
- package/dist/layout/fixed-header.html +330 -129
- package/dist/layout/fixed-sidebar.html +330 -129
- package/dist/layout/layout-custom-area.html +330 -129
- package/dist/layout/layout-rtl.html +330 -129
- package/dist/layout/logo-switch.html +160 -4
- package/dist/layout/sidebar-mini.html +330 -129
- package/dist/layout/unfixed-sidebar.html +330 -129
- package/dist/mailbox/compose.html +1151 -0
- package/dist/mailbox/inbox.html +1509 -0
- package/dist/mailbox/read.html +1202 -0
- package/dist/pages/404.html +239 -0
- package/dist/pages/500.html +227 -0
- package/dist/pages/calendar.html +1266 -0
- package/dist/pages/chat.html +1427 -0
- package/dist/pages/faq.html +1383 -0
- package/dist/pages/file-manager.html +1835 -0
- package/dist/pages/invoice.html +1199 -0
- package/dist/pages/kanban.html +1439 -0
- package/dist/pages/maintenance.html +230 -0
- package/dist/pages/pricing.html +1279 -0
- package/dist/pages/profile.html +1382 -0
- package/dist/pages/projects.html +1644 -0
- package/dist/pages/settings.html +1387 -0
- package/dist/tables/data.html +1319 -0
- package/dist/tables/simple.html +330 -129
- package/dist/widgets/cards.html +330 -129
- package/dist/widgets/info-box.html +330 -129
- package/dist/widgets/small-box.html +330 -129
- package/github-issue-response.md +40 -0
- package/netlify.toml +16 -0
- package/package.json +31 -24
- package/src/scss/_app-header.scss +27 -0
- package/src/scss/_app-sidebar.scss +24 -30
- package/src/scss/_bootstrap-variables.scss +11 -4
- package/src/scss/_docs.scss +816 -0
- package/src/scss/_table.scss +4 -4
- package/src/scss/adminlte.scss +4 -1
- package/src/ts/accessibility.ts +9 -1
- package/src/ts/adminlte.ts +1 -1
- package/src/ts/fullscreen.ts +8 -4
- package/src/ts/push-menu.ts +66 -5
- package/.claude/settings.local.json +0 -37
- package/CLAUDE.md +0 -79
- package/release.md +0 -75
|
@@ -5,6 +5,32 @@
|
|
|
5
5
|
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
|
|
6
6
|
<title>AdminLTE 4 | Sidebar Mini</title>
|
|
7
7
|
|
|
8
|
+
<!--begin::Theme Init (prevents flash of incorrect theme on load, #6043)-->
|
|
9
|
+
<script>
|
|
10
|
+
(() => {
|
|
11
|
+
'use strict';
|
|
12
|
+
const STORAGE_KEY = 'lte-theme';
|
|
13
|
+
let stored = null;
|
|
14
|
+
try {
|
|
15
|
+
stored = localStorage.getItem(STORAGE_KEY);
|
|
16
|
+
} catch {
|
|
17
|
+
// localStorage may be unavailable (private mode, sandboxed iframe).
|
|
18
|
+
}
|
|
19
|
+
const prefersDark = globalThis.matchMedia('(prefers-color-scheme: dark)').matches;
|
|
20
|
+
// Mirror the resolution in _scripts.astro: explicit "dark"/"light" win,
|
|
21
|
+
// otherwise ("auto" or unset) fall back to the OS preference.
|
|
22
|
+
let resolved = 'light';
|
|
23
|
+
if (stored === 'dark' || stored === 'light') {
|
|
24
|
+
resolved = stored;
|
|
25
|
+
} else if (prefersDark) {
|
|
26
|
+
resolved = 'dark';
|
|
27
|
+
}
|
|
28
|
+
document.documentElement.setAttribute('data-bs-theme', resolved);
|
|
29
|
+
document.documentElement.style.colorScheme = resolved;
|
|
30
|
+
})();
|
|
31
|
+
</script>
|
|
32
|
+
<!--end::Theme Init-->
|
|
33
|
+
|
|
8
34
|
<!--begin::Accessibility Meta Tags-->
|
|
9
35
|
<meta name="viewport" content="width=device-width, initial-scale=1.0, user-scalable=yes" />
|
|
10
36
|
<meta name="color-scheme" content="light dark" />
|
|
@@ -78,11 +104,18 @@
|
|
|
78
104
|
<i class="bi bi-list"></i>
|
|
79
105
|
</a>
|
|
80
106
|
</li>
|
|
107
|
+
|
|
81
108
|
<li class="nav-item d-none d-md-block">
|
|
82
|
-
<a href="
|
|
109
|
+
<a href="../index.html" class="nav-link">
|
|
110
|
+
<i class="bi bi-grid-1x2 me-1" aria-hidden="true"></i>
|
|
111
|
+
Live preview
|
|
112
|
+
</a>
|
|
83
113
|
</li>
|
|
84
114
|
<li class="nav-item d-none d-md-block">
|
|
85
|
-
<a href="
|
|
115
|
+
<a href="../docs/introduction.html" class="nav-link">
|
|
116
|
+
<i class="bi bi-book me-1" aria-hidden="true"></i>
|
|
117
|
+
Documentation
|
|
118
|
+
</a>
|
|
86
119
|
</li>
|
|
87
120
|
</ul>
|
|
88
121
|
<!--end::Start Navbar Links-->
|
|
@@ -220,11 +253,70 @@
|
|
|
220
253
|
<li class="nav-item">
|
|
221
254
|
<a class="nav-link" href="#" data-lte-toggle="fullscreen">
|
|
222
255
|
<i data-lte-icon="maximize" class="bi bi-arrows-fullscreen"></i>
|
|
223
|
-
<i data-lte-icon="minimize" class="bi bi-fullscreen-exit
|
|
256
|
+
<i data-lte-icon="minimize" class="bi bi-fullscreen-exit d-none"></i>
|
|
224
257
|
</a>
|
|
225
258
|
</li>
|
|
226
259
|
<!--end::Fullscreen Toggle-->
|
|
227
260
|
|
|
261
|
+
<!--begin::Color Mode Toggle (#6010)-->
|
|
262
|
+
<li class="nav-item dropdown">
|
|
263
|
+
<a
|
|
264
|
+
class="nav-link"
|
|
265
|
+
href="#"
|
|
266
|
+
id="bd-theme"
|
|
267
|
+
aria-label="Toggle color scheme"
|
|
268
|
+
data-bs-toggle="dropdown"
|
|
269
|
+
aria-expanded="false"
|
|
270
|
+
>
|
|
271
|
+
<i class="bi bi-sun-fill" data-lte-theme-icon="light"></i>
|
|
272
|
+
<i class="bi bi-moon-fill d-none" data-lte-theme-icon="dark"></i>
|
|
273
|
+
<i class="bi bi-circle-half d-none" data-lte-theme-icon="auto"></i>
|
|
274
|
+
</a>
|
|
275
|
+
<ul
|
|
276
|
+
class="dropdown-menu dropdown-menu-end"
|
|
277
|
+
aria-labelledby="bd-theme"
|
|
278
|
+
style="--bs-dropdown-min-width: 8rem"
|
|
279
|
+
>
|
|
280
|
+
<li>
|
|
281
|
+
<button
|
|
282
|
+
type="button"
|
|
283
|
+
class="dropdown-item d-flex align-items-center"
|
|
284
|
+
data-bs-theme-value="light"
|
|
285
|
+
aria-pressed="false"
|
|
286
|
+
>
|
|
287
|
+
<i class="bi bi-sun-fill me-2"></i>
|
|
288
|
+
Light
|
|
289
|
+
<i class="bi bi-check-lg ms-auto d-none"></i>
|
|
290
|
+
</button>
|
|
291
|
+
</li>
|
|
292
|
+
<li>
|
|
293
|
+
<button
|
|
294
|
+
type="button"
|
|
295
|
+
class="dropdown-item d-flex align-items-center"
|
|
296
|
+
data-bs-theme-value="dark"
|
|
297
|
+
aria-pressed="false"
|
|
298
|
+
>
|
|
299
|
+
<i class="bi bi-moon-fill me-2"></i>
|
|
300
|
+
Dark
|
|
301
|
+
<i class="bi bi-check-lg ms-auto d-none"></i>
|
|
302
|
+
</button>
|
|
303
|
+
</li>
|
|
304
|
+
<li>
|
|
305
|
+
<button
|
|
306
|
+
type="button"
|
|
307
|
+
class="dropdown-item d-flex align-items-center active"
|
|
308
|
+
data-bs-theme-value="auto"
|
|
309
|
+
aria-pressed="true"
|
|
310
|
+
>
|
|
311
|
+
<i class="bi bi-circle-half me-2"></i>
|
|
312
|
+
Auto
|
|
313
|
+
<i class="bi bi-check-lg ms-auto d-none"></i>
|
|
314
|
+
</button>
|
|
315
|
+
</li>
|
|
316
|
+
</ul>
|
|
317
|
+
</li>
|
|
318
|
+
<!--end::Color Mode Toggle-->
|
|
319
|
+
|
|
228
320
|
<!--begin::User Menu Dropdown-->
|
|
229
321
|
<li class="nav-item dropdown user-menu">
|
|
230
322
|
<a href="#" class="nav-link dropdown-toggle" data-bs-toggle="dropdown">
|
|
@@ -520,7 +612,71 @@
|
|
|
520
612
|
}
|
|
521
613
|
});
|
|
522
614
|
</script>
|
|
523
|
-
<!--end::OverlayScrollbars Configure-->
|
|
615
|
+
<!--end::OverlayScrollbars Configure--><!--begin::Color Mode Toggle (#6010)-->
|
|
616
|
+
<script>
|
|
617
|
+
(() => {
|
|
618
|
+
'use strict';
|
|
619
|
+
|
|
620
|
+
const STORAGE_KEY = 'lte-theme';
|
|
621
|
+
|
|
622
|
+
const getStoredTheme = () => localStorage.getItem(STORAGE_KEY);
|
|
623
|
+
const setStoredTheme = (theme) => localStorage.setItem(STORAGE_KEY, theme);
|
|
624
|
+
|
|
625
|
+
const prefersDark = () => globalThis.matchMedia('(prefers-color-scheme: dark)').matches;
|
|
626
|
+
|
|
627
|
+
const getPreferredTheme = () => {
|
|
628
|
+
const stored = getStoredTheme();
|
|
629
|
+
if (stored) return stored;
|
|
630
|
+
return prefersDark() ? 'dark' : 'light';
|
|
631
|
+
};
|
|
632
|
+
|
|
633
|
+
const setTheme = (theme) => {
|
|
634
|
+
const resolved = theme === 'auto' ? (prefersDark() ? 'dark' : 'light') : theme;
|
|
635
|
+
document.documentElement.setAttribute('data-bs-theme', resolved);
|
|
636
|
+
};
|
|
637
|
+
|
|
638
|
+
setTheme(getPreferredTheme());
|
|
639
|
+
|
|
640
|
+
const showActiveTheme = (theme) => {
|
|
641
|
+
// Highlight the active dropdown option
|
|
642
|
+
document.querySelectorAll('[data-bs-theme-value]').forEach((el) => {
|
|
643
|
+
el.classList.remove('active');
|
|
644
|
+
el.setAttribute('aria-pressed', 'false');
|
|
645
|
+
const check = el.querySelector('.bi-check-lg');
|
|
646
|
+
if (check) check.classList.add('d-none');
|
|
647
|
+
});
|
|
648
|
+
const active = document.querySelector(`[data-bs-theme-value="${theme}"]`);
|
|
649
|
+
if (active) {
|
|
650
|
+
active.classList.add('active');
|
|
651
|
+
active.setAttribute('aria-pressed', 'true');
|
|
652
|
+
const check = active.querySelector('.bi-check-lg');
|
|
653
|
+
if (check) check.classList.remove('d-none');
|
|
654
|
+
}
|
|
655
|
+
// Sync the topbar trigger icon
|
|
656
|
+
document.querySelectorAll('[data-lte-theme-icon]').forEach((icon) => {
|
|
657
|
+
icon.classList.toggle('d-none', icon.dataset.lteThemeIcon !== theme);
|
|
658
|
+
});
|
|
659
|
+
};
|
|
660
|
+
|
|
661
|
+
globalThis.matchMedia('(prefers-color-scheme: dark)').addEventListener('change', () => {
|
|
662
|
+
const stored = getStoredTheme();
|
|
663
|
+
if (!stored || stored === 'auto') setTheme(getPreferredTheme());
|
|
664
|
+
});
|
|
665
|
+
|
|
666
|
+
document.addEventListener('DOMContentLoaded', () => {
|
|
667
|
+
showActiveTheme(getPreferredTheme());
|
|
668
|
+
document.querySelectorAll('[data-bs-theme-value]').forEach((toggle) => {
|
|
669
|
+
toggle.addEventListener('click', () => {
|
|
670
|
+
const theme = toggle.getAttribute('data-bs-theme-value');
|
|
671
|
+
setStoredTheme(theme);
|
|
672
|
+
setTheme(theme);
|
|
673
|
+
showActiveTheme(theme);
|
|
674
|
+
});
|
|
675
|
+
});
|
|
676
|
+
});
|
|
677
|
+
})();
|
|
678
|
+
</script>
|
|
679
|
+
<!--end::Color Mode Toggle-->
|
|
524
680
|
<!--end::Script-->
|
|
525
681
|
</body>
|
|
526
682
|
<!--end::Body-->
|