admin-lte 4.0.0-rc6 → 4.0.0

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 (107) hide show
  1. package/CHANGELOG.md +96 -0
  2. package/README.md +44 -18
  3. package/dist/UI/general.html +311 -92
  4. package/dist/UI/icons.html +311 -92
  5. package/dist/UI/timeline.html +311 -92
  6. package/dist/css/adminlte.css +2814 -1138
  7. package/dist/css/adminlte.css.map +1 -1
  8. package/dist/css/adminlte.min.css +2 -2
  9. package/dist/css/adminlte.min.css.map +1 -1
  10. package/dist/css/adminlte.rtl.css +2814 -1138
  11. package/dist/css/adminlte.rtl.css.map +1 -1
  12. package/dist/css/adminlte.rtl.min.css +2 -2
  13. package/dist/css/adminlte.rtl.min.css.map +1 -1
  14. package/dist/docs/browser-support.html +291 -385
  15. package/dist/docs/color-mode.html +283 -381
  16. package/dist/docs/components/main-header.html +269 -363
  17. package/dist/docs/components/main-sidebar.html +284 -378
  18. package/dist/docs/customization.html +1056 -0
  19. package/dist/docs/deployment.html +1121 -0
  20. package/dist/docs/faq.html +887 -397
  21. package/dist/docs/getting-started.html +967 -0
  22. package/dist/docs/how-to-contribute.html +365 -450
  23. package/dist/docs/index.html +16 -0
  24. package/dist/docs/integrations.html +1207 -0
  25. package/dist/docs/introduction.html +483 -434
  26. package/dist/docs/javascript/accessibility.html +925 -0
  27. package/dist/docs/javascript/card-widget.html +995 -0
  28. package/dist/docs/javascript/direct-chat.html +872 -0
  29. package/dist/docs/javascript/fullscreen.html +881 -0
  30. package/dist/docs/javascript/layout.html +884 -0
  31. package/dist/docs/javascript/plugins-overview.html +1120 -0
  32. package/dist/docs/javascript/pushmenu.html +522 -377
  33. package/dist/docs/javascript/treeview.html +498 -390
  34. package/dist/docs/layout-blueprint.html +1063 -0
  35. package/dist/docs/layout.html +316 -402
  36. package/dist/docs/license.html +282 -375
  37. package/dist/docs/migration.html +1125 -0
  38. package/dist/docs/recipes.html +1161 -0
  39. package/dist/docs/rtl.html +933 -0
  40. package/dist/examples/lockscreen.html +66 -2
  41. package/dist/examples/login-v2.html +65 -1
  42. package/dist/examples/login.html +65 -1
  43. package/dist/examples/register-v2.html +65 -1
  44. package/dist/examples/register.html +65 -1
  45. package/dist/forms/elements.html +1381 -0
  46. package/dist/forms/{general.html → layout.html} +382 -452
  47. package/dist/forms/validation.html +1251 -0
  48. package/dist/forms/wizard.html +1386 -0
  49. package/dist/generate/theme.html +135 -5
  50. package/dist/index.html +311 -92
  51. package/dist/index2.html +314 -92
  52. package/dist/index3.html +311 -92
  53. package/dist/js/adminlte.js +135 -314
  54. package/dist/js/adminlte.js.map +1 -1
  55. package/dist/js/adminlte.min.js +3 -3
  56. package/dist/js/adminlte.min.js.map +1 -1
  57. package/dist/layout/collapsed-sidebar-without-hover.html +1120 -0
  58. package/dist/layout/collapsed-sidebar.html +311 -92
  59. package/dist/layout/fixed-complete.html +311 -92
  60. package/dist/layout/fixed-footer.html +311 -92
  61. package/dist/layout/fixed-header.html +311 -92
  62. package/dist/layout/fixed-sidebar.html +311 -92
  63. package/dist/layout/layout-custom-area.html +311 -92
  64. package/dist/layout/layout-rtl.html +311 -92
  65. package/dist/layout/logo-switch.html +135 -5
  66. package/dist/layout/sidebar-mini.html +311 -92
  67. package/dist/layout/unfixed-sidebar.html +311 -92
  68. package/dist/mailbox/compose.html +1127 -0
  69. package/dist/mailbox/inbox.html +1477 -0
  70. package/dist/mailbox/read.html +1178 -0
  71. package/dist/pages/404.html +213 -0
  72. package/dist/pages/500.html +201 -0
  73. package/dist/pages/calendar.html +1242 -0
  74. package/dist/pages/chat.html +1403 -0
  75. package/dist/pages/faq.html +1359 -0
  76. package/dist/pages/file-manager.html +1811 -0
  77. package/dist/pages/invoice.html +1175 -0
  78. package/dist/pages/kanban.html +1415 -0
  79. package/dist/pages/maintenance.html +204 -0
  80. package/dist/pages/pricing.html +1255 -0
  81. package/dist/pages/profile.html +1358 -0
  82. package/dist/pages/projects.html +1620 -0
  83. package/dist/pages/settings.html +1363 -0
  84. package/dist/tables/data.html +1295 -0
  85. package/dist/tables/simple.html +311 -92
  86. package/dist/widgets/cards.html +311 -92
  87. package/dist/widgets/info-box.html +311 -92
  88. package/dist/widgets/small-box.html +311 -92
  89. package/netlify.toml +16 -0
  90. package/package.json +32 -26
  91. package/src/scss/_accessibility.scss +44 -0
  92. package/src/scss/_app-footer.scss +9 -0
  93. package/src/scss/_app-header.scss +27 -0
  94. package/src/scss/_app-sidebar.scss +73 -74
  95. package/src/scss/_bootstrap-variables.scss +12 -5
  96. package/src/scss/_docs.scss +816 -0
  97. package/src/scss/_table.scss +4 -4
  98. package/src/scss/adminlte.scss +4 -1
  99. package/src/scss/pages/_login_and_register.scss +1 -1
  100. package/src/ts/accessibility.ts +9 -7
  101. package/src/ts/adminlte.ts +2 -14
  102. package/src/ts/fullscreen.ts +8 -4
  103. package/src/ts/layout.ts +34 -16
  104. package/src/ts/push-menu.ts +257 -104
  105. package/src/ts/util/index.ts +10 -0
  106. package/.claude/settings.local.json +0 -33
  107. package/CLAUDE.md +0 -79
@@ -78,11 +78,18 @@
78
78
  <i class="bi bi-list"></i>
79
79
  </a>
80
80
  </li>
81
+
81
82
  <li class="nav-item d-none d-md-block">
82
- <a href="#" class="nav-link">Home</a>
83
+ <a href="../index.html" class="nav-link">
84
+ <i class="bi bi-grid-1x2 me-1" aria-hidden="true"></i>
85
+ Live preview
86
+ </a>
83
87
  </li>
84
88
  <li class="nav-item d-none d-md-block">
85
- <a href="#" class="nav-link">Contact</a>
89
+ <a href="../docs/introduction.html" class="nav-link">
90
+ <i class="bi bi-book me-1" aria-hidden="true"></i>
91
+ Documentation
92
+ </a>
86
93
  </li>
87
94
  </ul>
88
95
  <!--end::Start Navbar Links-->
@@ -220,11 +227,70 @@
220
227
  <li class="nav-item">
221
228
  <a class="nav-link" href="#" data-lte-toggle="fullscreen">
222
229
  <i data-lte-icon="maximize" class="bi bi-arrows-fullscreen"></i>
223
- <i data-lte-icon="minimize" class="bi bi-fullscreen-exit" style="display: none"></i>
230
+ <i data-lte-icon="minimize" class="bi bi-fullscreen-exit d-none"></i>
224
231
  </a>
225
232
  </li>
226
233
  <!--end::Fullscreen Toggle-->
227
234
 
235
+ <!--begin::Color Mode Toggle (#6010)-->
236
+ <li class="nav-item dropdown">
237
+ <a
238
+ class="nav-link"
239
+ href="#"
240
+ id="bd-theme"
241
+ aria-label="Toggle color scheme"
242
+ data-bs-toggle="dropdown"
243
+ aria-expanded="false"
244
+ >
245
+ <i class="bi bi-sun-fill" data-lte-theme-icon="light"></i>
246
+ <i class="bi bi-moon-fill d-none" data-lte-theme-icon="dark"></i>
247
+ <i class="bi bi-circle-half d-none" data-lte-theme-icon="auto"></i>
248
+ </a>
249
+ <ul
250
+ class="dropdown-menu dropdown-menu-end"
251
+ aria-labelledby="bd-theme"
252
+ style="--bs-dropdown-min-width: 8rem"
253
+ >
254
+ <li>
255
+ <button
256
+ type="button"
257
+ class="dropdown-item d-flex align-items-center"
258
+ data-bs-theme-value="light"
259
+ aria-pressed="false"
260
+ >
261
+ <i class="bi bi-sun-fill me-2"></i>
262
+ Light
263
+ <i class="bi bi-check-lg ms-auto d-none"></i>
264
+ </button>
265
+ </li>
266
+ <li>
267
+ <button
268
+ type="button"
269
+ class="dropdown-item d-flex align-items-center"
270
+ data-bs-theme-value="dark"
271
+ aria-pressed="false"
272
+ >
273
+ <i class="bi bi-moon-fill me-2"></i>
274
+ Dark
275
+ <i class="bi bi-check-lg ms-auto d-none"></i>
276
+ </button>
277
+ </li>
278
+ <li>
279
+ <button
280
+ type="button"
281
+ class="dropdown-item d-flex align-items-center active"
282
+ data-bs-theme-value="auto"
283
+ aria-pressed="true"
284
+ >
285
+ <i class="bi bi-circle-half me-2"></i>
286
+ Auto
287
+ <i class="bi bi-check-lg ms-auto d-none"></i>
288
+ </button>
289
+ </li>
290
+ </ul>
291
+ </li>
292
+ <!--end::Color Mode Toggle-->
293
+
228
294
  <!--begin::User Menu Dropdown-->
229
295
  <li class="nav-item dropdown user-menu">
230
296
  <a href="#" class="nav-link dropdown-toggle" data-bs-toggle="dropdown">
@@ -382,7 +448,7 @@
382
448
  <i class="nav-icon bi bi-clipboard-fill"></i>
383
449
  <p>
384
450
  Layout Options
385
- <span class="nav-badge badge text-bg-secondary me-3">6</span>
451
+ <span class="nav-badge badge text-bg-secondary me-3">7</span>
386
452
  <i class="nav-arrow bi bi-chevron-right"></i>
387
453
  </p>
388
454
  </a>
@@ -435,6 +501,12 @@
435
501
  <p>Sidebar Mini <small>+ Collapsed</small></p>
436
502
  </a>
437
503
  </li>
504
+ <li class="nav-item">
505
+ <a href="../layout/collapsed-sidebar-without-hover.html" class="nav-link">
506
+ <i class="nav-icon bi bi-circle"></i>
507
+ <p>Sidebar Mini <small>+ Collapsed + No Hover</small></p>
508
+ </a>
509
+ </li>
438
510
  <li class="nav-item">
439
511
  <a href="../layout/logo-switch.html" class="nav-link">
440
512
  <i class="nav-icon bi bi-circle"></i>
@@ -478,6 +550,36 @@
478
550
  </li>
479
551
  </ul>
480
552
  </li>
553
+ <li class="nav-item">
554
+ <a href="#" class="nav-link">
555
+ <i class="nav-icon bi bi-envelope"></i>
556
+ <p>
557
+ Mailbox
558
+ <i class="nav-arrow bi bi-chevron-right"></i>
559
+ </p>
560
+ </a>
561
+ <ul class="nav nav-treeview">
562
+ <li class="nav-item">
563
+ <a href="../mailbox/inbox.html" class="nav-link">
564
+ <i class="nav-icon bi bi-circle"></i>
565
+ <p>Inbox</p>
566
+ </a>
567
+ </li>
568
+ <li class="nav-item">
569
+ <a href="../mailbox/read.html" class="nav-link">
570
+ <i class="nav-icon bi bi-circle"></i>
571
+ <p>Read Message</p>
572
+ </a>
573
+ </li>
574
+ <li class="nav-item">
575
+ <a href="../mailbox/compose.html" class="nav-link">
576
+ <i class="nav-icon bi bi-circle"></i>
577
+ <p>Compose</p>
578
+ </a>
579
+ </li>
580
+ </ul>
581
+ </li>
582
+
481
583
  <li class="nav-item">
482
584
  <a href="#" class="nav-link">
483
585
  <i class="nav-icon bi bi-pencil-square"></i>
@@ -488,9 +590,27 @@
488
590
  </a>
489
591
  <ul class="nav nav-treeview">
490
592
  <li class="nav-item">
491
- <a href="../forms/general.html" class="nav-link">
593
+ <a href="../forms/elements.html" class="nav-link">
594
+ <i class="nav-icon bi bi-circle"></i>
595
+ <p>Elements</p>
596
+ </a>
597
+ </li>
598
+ <li class="nav-item">
599
+ <a href="../forms/layout.html" class="nav-link">
600
+ <i class="nav-icon bi bi-circle"></i>
601
+ <p>Layout</p>
602
+ </a>
603
+ </li>
604
+ <li class="nav-item">
605
+ <a href="../forms/validation.html" class="nav-link">
606
+ <i class="nav-icon bi bi-circle"></i>
607
+ <p>Validation</p>
608
+ </a>
609
+ </li>
610
+ <li class="nav-item">
611
+ <a href="../forms/wizard.html" class="nav-link">
492
612
  <i class="nav-icon bi bi-circle"></i>
493
- <p>General Elements</p>
613
+ <p>Wizard</p>
494
614
  </a>
495
615
  </li>
496
616
  </ul>
@@ -510,6 +630,114 @@
510
630
  <p>Simple Tables</p>
511
631
  </a>
512
632
  </li>
633
+ <li class="nav-item">
634
+ <a href="../tables/data.html" class="nav-link">
635
+ <i class="nav-icon bi bi-circle"></i>
636
+ <p>Data Tables</p>
637
+ </a>
638
+ </li>
639
+ </ul>
640
+ </li>
641
+
642
+ <li class="nav-header">PAGES</li>
643
+ <li class="nav-item">
644
+ <a href="#" class="nav-link">
645
+ <i class="nav-icon bi bi-file-earmark-text"></i>
646
+ <p>
647
+ Pages
648
+ <i class="nav-arrow bi bi-chevron-right"></i>
649
+ </p>
650
+ </a>
651
+ <ul class="nav nav-treeview">
652
+ <li class="nav-item">
653
+ <a href="../pages/profile.html" class="nav-link">
654
+ <i class="nav-icon bi bi-circle"></i>
655
+ <p>Profile</p>
656
+ </a>
657
+ </li>
658
+ <li class="nav-item">
659
+ <a href="../pages/settings.html" class="nav-link">
660
+ <i class="nav-icon bi bi-circle"></i>
661
+ <p>Settings</p>
662
+ </a>
663
+ </li>
664
+ <li class="nav-item">
665
+ <a href="../pages/invoice.html" class="nav-link">
666
+ <i class="nav-icon bi bi-circle"></i>
667
+ <p>Invoice</p>
668
+ </a>
669
+ </li>
670
+ <li class="nav-item">
671
+ <a href="../pages/calendar.html" class="nav-link">
672
+ <i class="nav-icon bi bi-circle"></i>
673
+ <p>Calendar</p>
674
+ </a>
675
+ </li>
676
+ <li class="nav-item">
677
+ <a href="../pages/kanban.html" class="nav-link">
678
+ <i class="nav-icon bi bi-circle"></i>
679
+ <p>Kanban</p>
680
+ </a>
681
+ </li>
682
+ <li class="nav-item">
683
+ <a href="../pages/chat.html" class="nav-link">
684
+ <i class="nav-icon bi bi-circle"></i>
685
+ <p>Chat</p>
686
+ </a>
687
+ </li>
688
+ <li class="nav-item">
689
+ <a href="../pages/file-manager.html" class="nav-link">
690
+ <i class="nav-icon bi bi-circle"></i>
691
+ <p>File Manager</p>
692
+ </a>
693
+ </li>
694
+ <li class="nav-item">
695
+ <a href="../pages/projects.html" class="nav-link">
696
+ <i class="nav-icon bi bi-circle"></i>
697
+ <p>Projects</p>
698
+ </a>
699
+ </li>
700
+ <li class="nav-item">
701
+ <a href="../pages/pricing.html" class="nav-link">
702
+ <i class="nav-icon bi bi-circle"></i>
703
+ <p>Pricing</p>
704
+ </a>
705
+ </li>
706
+ <li class="nav-item">
707
+ <a href="../pages/faq.html" class="nav-link">
708
+ <i class="nav-icon bi bi-circle"></i>
709
+ <p>FAQ</p>
710
+ </a>
711
+ </li>
712
+ <li class="nav-item">
713
+ <a href="#" class="nav-link">
714
+ <i class="nav-icon bi bi-circle"></i>
715
+ <p>
716
+ Error
717
+ <i class="nav-arrow bi bi-chevron-right"></i>
718
+ </p>
719
+ </a>
720
+ <ul class="nav nav-treeview">
721
+ <li class="nav-item">
722
+ <a href="../pages/404.html" class="nav-link">
723
+ <i class="nav-icon bi bi-circle"></i>
724
+ <p>404</p>
725
+ </a>
726
+ </li>
727
+ <li class="nav-item">
728
+ <a href="../pages/500.html" class="nav-link">
729
+ <i class="nav-icon bi bi-circle"></i>
730
+ <p>500</p>
731
+ </a>
732
+ </li>
733
+ <li class="nav-item">
734
+ <a href="../pages/maintenance.html" class="nav-link">
735
+ <i class="nav-icon bi bi-circle"></i>
736
+ <p>Maintenance</p>
737
+ </a>
738
+ </li>
739
+ </ul>
740
+ </li>
513
741
  </ul>
514
742
  </li>
515
743
 
@@ -578,90 +806,6 @@
578
806
  </ul>
579
807
  </li>
580
808
 
581
- <li class="nav-header">DOCUMENTATIONS</li>
582
- <li class="nav-item">
583
- <a href="../docs/introduction.html" class="nav-link">
584
- <i class="nav-icon bi bi-download"></i>
585
- <p>Installation</p>
586
- </a>
587
- </li>
588
- <li class="nav-item">
589
- <a href="../docs/layout.html" class="nav-link">
590
- <i class="nav-icon bi bi-grip-horizontal"></i>
591
- <p>Layout</p>
592
- </a>
593
- </li>
594
- <li class="nav-item">
595
- <a href="../docs/color-mode.html" class="nav-link">
596
- <i class="nav-icon bi bi-star-half"></i>
597
- <p>Color Mode</p>
598
- </a>
599
- </li>
600
- <li class="nav-item">
601
- <a href="#" class="nav-link">
602
- <i class="nav-icon bi bi-ui-checks-grid"></i>
603
- <p>
604
- Components
605
- <i class="nav-arrow bi bi-chevron-right"></i>
606
- </p>
607
- </a>
608
- <ul class="nav nav-treeview">
609
- <li class="nav-item">
610
- <a href="../docs/components/main-header.html" class="nav-link">
611
- <i class="nav-icon bi bi-circle"></i>
612
- <p>Main Header</p>
613
- </a>
614
- </li>
615
- <li class="nav-item">
616
- <a href="../docs/components/main-sidebar.html" class="nav-link">
617
- <i class="nav-icon bi bi-circle"></i>
618
- <p>Main Sidebar</p>
619
- </a>
620
- </li>
621
- </ul>
622
- </li>
623
- <li class="nav-item">
624
- <a href="#" class="nav-link">
625
- <i class="nav-icon bi bi-filetype-js"></i>
626
- <p>
627
- Javascript
628
- <i class="nav-arrow bi bi-chevron-right"></i>
629
- </p>
630
- </a>
631
- <ul class="nav nav-treeview">
632
- <li class="nav-item">
633
- <a href="../docs/javascript/treeview.html" class="nav-link">
634
- <i class="nav-icon bi bi-circle"></i>
635
- <p>Treeview</p>
636
- </a>
637
- </li>
638
- </ul>
639
- </li>
640
- <li class="nav-item">
641
- <a href="../docs/browser-support.html" class="nav-link">
642
- <i class="nav-icon bi bi-browser-edge"></i>
643
- <p>Browser Support</p>
644
- </a>
645
- </li>
646
- <li class="nav-item">
647
- <a href="../docs/how-to-contribute.html" class="nav-link">
648
- <i class="nav-icon bi bi-hand-thumbs-up-fill"></i>
649
- <p>How To Contribute</p>
650
- </a>
651
- </li>
652
- <li class="nav-item">
653
- <a href="../docs/faq.html" class="nav-link">
654
- <i class="nav-icon bi bi-question-circle-fill"></i>
655
- <p>FAQ</p>
656
- </a>
657
- </li>
658
- <li class="nav-item">
659
- <a href="../docs/license.html" class="nav-link">
660
- <i class="nav-icon bi bi-patch-check-fill"></i>
661
- <p>License</p>
662
- </a>
663
- </li>
664
-
665
809
  <li class="nav-header">MULTI LEVEL EXAMPLE</li>
666
810
  <li class="nav-item">
667
811
  <a href="#" class="nav-link">
@@ -749,6 +893,17 @@
749
893
  </li>
750
894
  </ul>
751
895
  <!--end::Sidebar Menu-->
896
+
897
+ <!-- Docs CTA (bottom of sidebar) -->
898
+ <div class="p-3 mt-3 border-top border-secondary border-opacity-25">
899
+ <a
900
+ href="../docs/introduction.html"
901
+ class="btn btn-sm btn-outline-light w-100 d-flex align-items-center justify-content-center gap-2"
902
+ >
903
+ <i class="bi bi-book" aria-hidden="true"></i>
904
+ View documentation
905
+ </a>
906
+ </div>
752
907
  </nav>
753
908
  </div>
754
909
  <!--end::Sidebar Wrapper-->
@@ -1129,7 +1284,7 @@
1129
1284
  <!--end::To the end-->
1130
1285
  <!--begin::Copyright-->
1131
1286
  <strong>
1132
- Copyright &copy; 2014-2025&nbsp;
1287
+ Copyright &copy; 2014-2026&nbsp;
1133
1288
  <a href="https://adminlte.io" class="text-decoration-none">AdminLTE.io</a>.
1134
1289
  </strong>
1135
1290
  All rights reserved.
@@ -1185,7 +1340,71 @@
1185
1340
  }
1186
1341
  });
1187
1342
  </script>
1188
- <!--end::OverlayScrollbars Configure-->
1343
+ <!--end::OverlayScrollbars Configure--><!--begin::Color Mode Toggle (#6010)-->
1344
+ <script>
1345
+ (() => {
1346
+ 'use strict';
1347
+
1348
+ const STORAGE_KEY = 'lte-theme';
1349
+
1350
+ const getStoredTheme = () => localStorage.getItem(STORAGE_KEY);
1351
+ const setStoredTheme = (theme) => localStorage.setItem(STORAGE_KEY, theme);
1352
+
1353
+ const prefersDark = () => globalThis.matchMedia('(prefers-color-scheme: dark)').matches;
1354
+
1355
+ const getPreferredTheme = () => {
1356
+ const stored = getStoredTheme();
1357
+ if (stored) return stored;
1358
+ return prefersDark() ? 'dark' : 'light';
1359
+ };
1360
+
1361
+ const setTheme = (theme) => {
1362
+ const resolved = theme === 'auto' ? (prefersDark() ? 'dark' : 'light') : theme;
1363
+ document.documentElement.setAttribute('data-bs-theme', resolved);
1364
+ };
1365
+
1366
+ setTheme(getPreferredTheme());
1367
+
1368
+ const showActiveTheme = (theme) => {
1369
+ // Highlight the active dropdown option
1370
+ document.querySelectorAll('[data-bs-theme-value]').forEach((el) => {
1371
+ el.classList.remove('active');
1372
+ el.setAttribute('aria-pressed', 'false');
1373
+ const check = el.querySelector('.bi-check-lg');
1374
+ if (check) check.classList.add('d-none');
1375
+ });
1376
+ const active = document.querySelector(`[data-bs-theme-value="${theme}"]`);
1377
+ if (active) {
1378
+ active.classList.add('active');
1379
+ active.setAttribute('aria-pressed', 'true');
1380
+ const check = active.querySelector('.bi-check-lg');
1381
+ if (check) check.classList.remove('d-none');
1382
+ }
1383
+ // Sync the topbar trigger icon
1384
+ document.querySelectorAll('[data-lte-theme-icon]').forEach((icon) => {
1385
+ icon.classList.toggle('d-none', icon.dataset.lteThemeIcon !== theme);
1386
+ });
1387
+ };
1388
+
1389
+ globalThis.matchMedia('(prefers-color-scheme: dark)').addEventListener('change', () => {
1390
+ const stored = getStoredTheme();
1391
+ if (!stored || stored === 'auto') setTheme(getPreferredTheme());
1392
+ });
1393
+
1394
+ document.addEventListener('DOMContentLoaded', () => {
1395
+ showActiveTheme(getPreferredTheme());
1396
+ document.querySelectorAll('[data-bs-theme-value]').forEach((toggle) => {
1397
+ toggle.addEventListener('click', () => {
1398
+ const theme = toggle.getAttribute('data-bs-theme-value');
1399
+ setStoredTheme(theme);
1400
+ setTheme(theme);
1401
+ showActiveTheme(theme);
1402
+ });
1403
+ });
1404
+ });
1405
+ })();
1406
+ </script>
1407
+ <!--end::Color Mode Toggle-->
1189
1408
  <!--end::Script-->
1190
1409
  </body>
1191
1410
  <!--end::Body-->