admin-lte 4.0.0-beta2 → 4.0.0-rc2

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 (69) hide show
  1. package/.browserslistrc +9 -4
  2. package/.prettierrc +6 -0
  3. package/ACCESSIBILITY-COMPLIANCE.md +369 -0
  4. package/CHANGELOG.md +314 -0
  5. package/README.md +43 -7
  6. package/dist/css/adminlte.css +1417 -1269
  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 +1437 -1263
  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/js/adminlte.js +786 -345
  15. package/dist/js/adminlte.js.map +1 -1
  16. package/dist/js/adminlte.min.js +3 -3
  17. package/dist/js/adminlte.min.js.map +1 -1
  18. package/dist/pages/UI/general.html +1918 -889
  19. package/dist/pages/UI/icons.html +848 -450
  20. package/dist/pages/UI/timeline.html +926 -496
  21. package/dist/pages/docs/browser-support.html +855 -442
  22. package/dist/pages/docs/color-mode.html +1002 -549
  23. package/dist/pages/docs/components/main-header.html +1032 -543
  24. package/dist/pages/docs/components/main-sidebar.html +848 -441
  25. package/dist/pages/docs/faq.html +846 -438
  26. package/dist/pages/docs/how-to-contribute.html +918 -478
  27. package/dist/pages/docs/introduction.html +900 -465
  28. package/dist/pages/docs/javascript/treeview.html +853 -451
  29. package/dist/pages/docs/layout.html +867 -479
  30. package/dist/pages/docs/license.html +843 -440
  31. package/dist/pages/examples/lockscreen.html +141 -66
  32. package/dist/pages/examples/login-v2.html +169 -85
  33. package/dist/pages/examples/login.html +159 -80
  34. package/dist/pages/examples/register-v2.html +179 -88
  35. package/dist/pages/examples/register.html +164 -81
  36. package/dist/pages/forms/general.html +1255 -605
  37. package/dist/pages/generate/theme.html +861 -386
  38. package/dist/pages/index.html +1417 -801
  39. package/dist/pages/index2.html +1884 -1057
  40. package/dist/pages/index3.html +1215 -690
  41. package/dist/pages/layout/collapsed-sidebar.html +861 -446
  42. package/dist/pages/layout/fixed-complete.html +862 -0
  43. package/dist/pages/layout/fixed-footer.html +861 -0
  44. package/dist/pages/layout/fixed-header.html +861 -0
  45. package/dist/pages/layout/fixed-sidebar.html +861 -446
  46. package/dist/pages/layout/layout-custom-area.html +891 -464
  47. package/dist/pages/layout/layout-rtl.html +861 -446
  48. package/dist/pages/layout/logo-switch.html +498 -233
  49. package/dist/pages/layout/sidebar-mini.html +861 -446
  50. package/dist/pages/layout/unfixed-sidebar.html +859 -445
  51. package/dist/pages/tables/simple.html +1111 -692
  52. package/dist/pages/widgets/cards.html +1066 -550
  53. package/dist/pages/widgets/info-box.html +1084 -577
  54. package/dist/pages/widgets/small-box.html +946 -480
  55. package/eslint.config.js +81 -0
  56. package/package.json +40 -36
  57. package/src/scss/_accessibility.scss +292 -0
  58. package/src/scss/_app-footer.scss +8 -0
  59. package/src/scss/_app-header.scss +8 -0
  60. package/src/scss/_bootstrap-variables.scss +11 -9
  61. package/src/scss/_table.scss +1 -9
  62. package/src/scss/_variables.scss +2 -1
  63. package/src/scss/adminlte.scss +4 -1
  64. package/src/ts/accessibility.ts +533 -0
  65. package/src/ts/adminlte.ts +48 -9
  66. package/src/ts/card-widget.ts +1 -2
  67. package/src/ts/push-menu.ts +1 -2
  68. package/src/ts/util/index.ts +39 -7
  69. package/.astro/settings.json +0 -5
@@ -1,234 +1,499 @@
1
- <!DOCTYPE html>
2
- <html lang="en"> <!--begin::Head-->
3
-
4
- <head>
5
- <meta http-equiv="Content-Type" content="text/html; charset=utf-8">
6
- <title>AdminLTE 4 | Sidebar Mini</title><!--begin::Primary Meta Tags-->
7
- <meta name="viewport" content="width=device-width, initial-scale=1.0">
8
- <meta name="title" content="AdminLTE 4 | Sidebar Mini">
9
- <meta name="author" content="ColorlibHQ">
10
- <meta name="description" content="AdminLTE is a Free Bootstrap 5 Admin Dashboard, 30 example pages using Vanilla JS.">
11
- <meta name="keywords" content="bootstrap 5, bootstrap, bootstrap 5 admin dashboard, bootstrap 5 dashboard, bootstrap 5 charts, bootstrap 5 calendar, bootstrap 5 datepicker, bootstrap 5 tables, bootstrap 5 datatable, vanilla js datatable, colorlibhq, colorlibhq dashboard, colorlibhq admin dashboard"><!--end::Primary Meta Tags--><!--begin::Fonts-->
12
- <link rel="stylesheet" href="https://cdn.jsdelivr.net/npm/@fontsource/source-sans-3@5.0.12/index.css" integrity="sha256-tXJfXfp6Ewt1ilPzLDtQnJV4hclT9XuaZUKyUvmyr+Q=" crossorigin="anonymous"><!--end::Fonts--><!--begin::Third Party Plugin(OverlayScrollbars)-->
13
- <link rel="stylesheet" href="https://cdn.jsdelivr.net/npm/overlayscrollbars@2.3.0/styles/overlayscrollbars.min.css" integrity="sha256-dSokZseQNT08wYEWiz5iLI8QPlKxG+TswNRD8k35cpg=" crossorigin="anonymous"><!--end::Third Party Plugin(OverlayScrollbars)--><!--begin::Third Party Plugin(Bootstrap Icons)-->
14
- <link rel="stylesheet" href="https://cdn.jsdelivr.net/npm/bootstrap-icons@1.11.0/font/bootstrap-icons.min.css" integrity="sha256-Qsx5lrStHZyR9REqhUF8iQt73X06c8LGIUPzpOhwRrI=" crossorigin="anonymous"><!--end::Third Party Plugin(Bootstrap Icons)--><!--begin::Required Plugin(AdminLTE)-->
15
- <link rel="stylesheet" href="../../../dist/css/adminlte.css"><!--end::Required Plugin(AdminLTE)-->
16
- </head> <!--end::Head--> <!--begin::Body-->
17
-
18
- <body class="layout-fixed sidebar-expand-lg sidebar-mini bg-body-tertiary"> <!--begin::App Wrapper-->
19
- <div class="app-wrapper"> <!--begin::Header-->
20
- <nav class="app-header navbar navbar-expand bg-body"> <!--begin::Container-->
21
- <div class="container-fluid"> <!--begin::Start Navbar Links-->
22
- <ul class="navbar-nav">
23
- <li class="nav-item"> <a class="nav-link" data-lte-toggle="sidebar" href="#" role="button"> <i class="bi bi-list"></i> </a> </li>
24
- <li class="nav-item d-none d-md-block"> <a href="#" class="nav-link">Home</a> </li>
25
- <li class="nav-item d-none d-md-block"> <a href="#" class="nav-link">Contact</a> </li>
26
- </ul> <!--end::Start Navbar Links--> <!--begin::End Navbar Links-->
27
- <ul class="navbar-nav ms-auto"> <!--begin::Navbar Search-->
28
- <li class="nav-item"> <a class="nav-link" data-widget="navbar-search" href="#" role="button"> <i class="bi bi-search"></i> </a> </li> <!--end::Navbar Search--> <!--begin::Messages Dropdown Menu-->
29
- <li class="nav-item dropdown"> <a class="nav-link" data-bs-toggle="dropdown" href="#"> <i class="bi bi-chat-text"></i> <span class="navbar-badge badge text-bg-danger">3</span> </a>
30
- <div class="dropdown-menu dropdown-menu-lg dropdown-menu-end"> <a href="#" class="dropdown-item"> <!--begin::Message-->
31
- <div class="d-flex">
32
- <div class="flex-shrink-0"> <img src="../../../dist/assets/img/user1-128x128.jpg" alt="User Avatar" class="img-size-50 rounded-circle me-3"> </div>
33
- <div class="flex-grow-1">
34
- <h3 class="dropdown-item-title">
35
- Brad Diesel
36
- <span class="float-end fs-7 text-danger"><i class="bi bi-star-fill"></i></span>
37
- </h3>
38
- <p class="fs-7">Call me whenever you can...</p>
39
- <p class="fs-7 text-secondary"> <i class="bi bi-clock-fill me-1"></i> 4 Hours Ago
40
- </p>
41
- </div>
42
- </div> <!--end::Message-->
43
- </a>
44
- <div class="dropdown-divider"></div> <a href="#" class="dropdown-item"> <!--begin::Message-->
45
- <div class="d-flex">
46
- <div class="flex-shrink-0"> <img src="../../../dist/assets/img/user8-128x128.jpg" alt="User Avatar" class="img-size-50 rounded-circle me-3"> </div>
47
- <div class="flex-grow-1">
48
- <h3 class="dropdown-item-title">
49
- John Pierce
50
- <span class="float-end fs-7 text-secondary"> <i class="bi bi-star-fill"></i> </span>
51
- </h3>
52
- <p class="fs-7">I got your message bro</p>
53
- <p class="fs-7 text-secondary"> <i class="bi bi-clock-fill me-1"></i> 4 Hours Ago
54
- </p>
55
- </div>
56
- </div> <!--end::Message-->
57
- </a>
58
- <div class="dropdown-divider"></div> <a href="#" class="dropdown-item"> <!--begin::Message-->
59
- <div class="d-flex">
60
- <div class="flex-shrink-0"> <img src="../../../dist/assets/img/user3-128x128.jpg" alt="User Avatar" class="img-size-50 rounded-circle me-3"> </div>
61
- <div class="flex-grow-1">
62
- <h3 class="dropdown-item-title">
63
- Nora Silvester
64
- <span class="float-end fs-7 text-warning"> <i class="bi bi-star-fill"></i> </span>
65
- </h3>
66
- <p class="fs-7">The subject goes here</p>
67
- <p class="fs-7 text-secondary"> <i class="bi bi-clock-fill me-1"></i> 4 Hours Ago
68
- </p>
69
- </div>
70
- </div> <!--end::Message-->
71
- </a>
72
- <div class="dropdown-divider"></div> <a href="#" class="dropdown-item dropdown-footer">See All Messages</a>
73
- </div>
74
- </li> <!--end::Messages Dropdown Menu--> <!--begin::Notifications Dropdown Menu-->
75
- <li class="nav-item dropdown"> <a class="nav-link" data-bs-toggle="dropdown" href="#"> <i class="bi bi-bell-fill"></i> <span class="navbar-badge badge text-bg-warning">15</span> </a>
76
- <div class="dropdown-menu dropdown-menu-lg dropdown-menu-end"> <span class="dropdown-item dropdown-header">15 Notifications</span>
77
- <div class="dropdown-divider"></div> <a href="#" class="dropdown-item"> <i class="bi bi-envelope me-2"></i> 4 new messages
78
- <span class="float-end text-secondary fs-7">3 mins</span> </a>
79
- <div class="dropdown-divider"></div> <a href="#" class="dropdown-item"> <i class="bi bi-people-fill me-2"></i> 8 friend requests
80
- <span class="float-end text-secondary fs-7">12 hours</span> </a>
81
- <div class="dropdown-divider"></div> <a href="#" class="dropdown-item"> <i class="bi bi-file-earmark-fill me-2"></i> 3 new reports
82
- <span class="float-end text-secondary fs-7">2 days</span> </a>
83
- <div class="dropdown-divider"></div> <a href="#" class="dropdown-item dropdown-footer">
84
- See All Notifications
85
- </a>
86
- </div>
87
- </li> <!--end::Notifications Dropdown Menu--> <!--begin::Fullscreen Toggle-->
88
- <li class="nav-item"> <a class="nav-link" href="#" data-lte-toggle="fullscreen"> <i data-lte-icon="maximize" class="bi bi-arrows-fullscreen"></i> <i data-lte-icon="minimize" class="bi bi-fullscreen-exit" style="display: none;"></i> </a> </li> <!--end::Fullscreen Toggle--> <!--begin::User Menu Dropdown-->
89
- <li class="nav-item dropdown user-menu"> <a href="#" class="nav-link dropdown-toggle" data-bs-toggle="dropdown"> <img src="../../../dist/assets/img/user2-160x160.jpg" class="user-image rounded-circle shadow" alt="User Image"> <span class="d-none d-md-inline">Alexander Pierce</span> </a>
90
- <ul class="dropdown-menu dropdown-menu-lg dropdown-menu-end"> <!--begin::User Image-->
91
- <li class="user-header text-bg-primary"> <img src="../../../dist/assets/img/user2-160x160.jpg" class="rounded-circle shadow" alt="User Image">
92
- <p>
93
- Alexander Pierce - Web Developer
94
- <small>Member since Nov. 2023</small>
95
- </p>
96
- </li> <!--end::User Image--> <!--begin::Menu Body-->
97
- <li class="user-body"> <!--begin::Row-->
98
- <div class="row">
99
- <div class="col-4 text-center"> <a href="#">Followers</a> </div>
100
- <div class="col-4 text-center"> <a href="#">Sales</a> </div>
101
- <div class="col-4 text-center"> <a href="#">Friends</a> </div>
102
- </div> <!--end::Row-->
103
- </li> <!--end::Menu Body--> <!--begin::Menu Footer-->
104
- <li class="user-footer"> <a href="#" class="btn btn-default btn-flat">Profile</a> <a href="#" class="btn btn-default btn-flat float-end">Sign out</a> </li> <!--end::Menu Footer-->
105
- </ul>
106
- </li> <!--end::User Menu Dropdown-->
107
- </ul> <!--end::End Navbar Links-->
108
- </div> <!--end::Container-->
109
- </nav> <!--end::Header--> <!--begin::Sidebar-->
110
- <aside class="app-sidebar bg-body-secondary shadow" data-bs-theme="dark"> <!--begin::Sidebar Brand-->
111
- <div class="sidebar-brand"> <!--begin::Brand Link--> <a href="../index.html" class="brand-link logo-switch"> <!--begin::Brand Image Small--> <img src="../../../dist/assets/img/AdminLTELogo.png" alt="AdminLTE Logo Small" class="brand-image-xl logo-xs opacity-75 shadow"> <!--end::Brand Image Small--> <!--begin::Brand Image Large--> <img src="../../../dist/assets/img/AdminLTEFullLogo.png" alt="AdminLTE Logo Large" class="brand-image-xs logo-xl opacity-75"> <!--end::Brand Image Large--> </a> <!--end::Brand Link--> </div> <!-- Sidebar --> <!--begin::Sidebar Wrapper-->
112
- <div class="sidebar-wrapper">
113
- <nav class="mt-2"> <!--begin::Sidebar Menu-->
114
- <ul class="nav sidebar-menu flex-column" data-lte-toggle="treeview" role="menu" data-accordion="false">
115
- <li class="nav-header">MULTI LEVEL EXAMPLE</li>
116
- <li class="nav-item"> <a href="#" class="nav-link"> <i class="nav-icon bi bi-circle-fill"></i>
117
- <p>Level 1</p>
118
- </a> </li>
119
- <li class="nav-item"> <a href="#" class="nav-link"> <i class="nav-icon bi bi-circle-fill"></i>
120
- <p>
121
- Level 1
122
- <i class="nav-arrow bi bi-chevron-right"></i>
123
- </p>
124
- </a>
125
- <ul class="nav nav-treeview">
126
- <li class="nav-item"> <a href="#" class="nav-link"> <i class="nav-icon bi bi-circle"></i>
127
- <p>Level 2</p>
128
- </a> </li>
129
- <li class="nav-item"> <a href="#" class="nav-link"> <i class="nav-icon bi bi-circle"></i>
130
- <p>
131
- Level 2
132
- <i class="nav-arrow bi bi-chevron-right"></i>
133
- </p>
134
- </a>
135
- <ul class="nav nav-treeview">
136
- <li class="nav-item"> <a href="#" class="nav-link"> <i class="nav-icon bi bi-record-circle-fill"></i>
137
- <p>Level 3</p>
138
- </a> </li>
139
- <li class="nav-item"> <a href="#" class="nav-link"> <i class="nav-icon bi bi-record-circle-fill"></i>
140
- <p>Level 3</p>
141
- </a> </li>
142
- <li class="nav-item"> <a href="#" class="nav-link"> <i class="nav-icon bi bi-record-circle-fill"></i>
143
- <p>Level 3</p>
144
- </a> </li>
145
- </ul>
146
- </li>
147
- <li class="nav-item"> <a href="#" class="nav-link"> <i class="nav-icon bi bi-circle"></i>
148
- <p>Level 2</p>
149
- </a> </li>
150
- </ul>
151
- </li>
152
- <li class="nav-item"> <a href="#" class="nav-link"> <i class="nav-icon bi bi-circle-fill"></i>
153
- <p>Level 1</p>
154
- </a> </li>
155
- </ul> <!--end::Sidebar Menu-->
156
- </nav>
157
- </div> <!--end::Sidebar Wrapper-->
158
- </aside> <!--end::Sidebar--> <!--begin::App Main-->
159
- <main class="app-main"> <!--begin::App Content Header-->
160
- <div class="app-content-header"> <!--begin::Container-->
161
- <div class="container-fluid"> <!--begin::Row-->
162
- <div class="row">
163
- <div class="col-sm-6">
164
- <h3 class="mb-0">Logo Switch</h3>
165
- </div>
166
- <div class="col-sm-6">
167
- <ol class="breadcrumb float-sm-end">
168
- <li class="breadcrumb-item"><a href="#">Home</a></li>
169
- <li class="breadcrumb-item active" aria-current="page">
170
- Logo Switch
171
- </li>
172
- </ol>
173
- </div>
174
- </div> <!--end::Row-->
175
- </div> <!--end::Container-->
176
- </div> <!--end::App Content Header--> <!--begin::App Content-->
177
- <div class="app-content"> <!--begin::Container-->
178
- <div class="container-fluid"> <!--begin::Row-->
179
- <div class="row">
180
- <div class="col-12"> <!-- Default box -->
181
- <div class="card">
182
- <div class="card-header">
183
- <h3 class="card-title">Title</h3>
184
- <div class="card-tools"> <button type="button" class="btn btn-tool" data-lte-toggle="card-collapse" title="Collapse"> <i data-lte-icon="expand" class="bi bi-plus-lg"></i> <i data-lte-icon="collapse" class="bi bi-dash-lg"></i> </button> <button type="button" class="btn btn-tool" data-lte-toggle="card-remove" title="Remove"> <i class="bi bi-x-lg"></i> </button> </div>
185
- </div>
186
- <div class="card-body">
187
- Start creating your amazing application!
188
- </div> <!-- /.card-body -->
189
- <div class="card-footer">Footer</div> <!-- /.card-footer-->
190
- </div> <!-- /.card -->
191
- </div>
192
- </div> <!--begin::Row-->
193
- </div> <!--end::Container-->
194
- </div> <!--end::App Content-->
195
- </main> <!--end::App Main--> <!--begin::Footer-->
196
- <footer class="app-footer"> <!--begin::To the end-->
197
- <div class="float-end d-none d-sm-inline">Anything you want</div> <!--end::To the end--> <!--begin::Copyright--> <strong>
198
- Copyright &copy; 2014-2024&nbsp;
199
- <a href="https://adminlte.io" class="text-decoration-none">AdminLTE.io</a>.
200
- </strong>
201
- All rights reserved.
202
- <!--end::Copyright-->
203
- </footer> <!--end::Footer-->
204
- </div> <!--end::App Wrapper--> <!--begin::Script--> <!--begin::Third Party Plugin(OverlayScrollbars)-->
205
- <script src="https://cdn.jsdelivr.net/npm/overlayscrollbars@2.3.0/browser/overlayscrollbars.browser.es6.min.js" integrity="sha256-H2VM7BKda+v2Z4+DRy69uknwxjyDRhszjXFhsL4gD3w=" crossorigin="anonymous"></script> <!--end::Third Party Plugin(OverlayScrollbars)--><!--begin::Required Plugin(popperjs for Bootstrap 5)-->
206
- <script src="https://cdn.jsdelivr.net/npm/@popperjs/core@2.11.8/dist/umd/popper.min.js" integrity="sha256-whL0tQWoY1Ku1iskqPFvmZ+CHsvmRWx/PIoEvIeWh4I=" crossorigin="anonymous"></script> <!--end::Required Plugin(popperjs for Bootstrap 5)--><!--begin::Required Plugin(Bootstrap 5)-->
207
- <script src="https://cdn.jsdelivr.net/npm/bootstrap@5.3.2/dist/js/bootstrap.min.js" integrity="sha256-YMa+wAM6QkVyz999odX7lPRxkoYAan8suedu4k2Zur8=" crossorigin="anonymous"></script> <!--end::Required Plugin(Bootstrap 5)--><!--begin::Required Plugin(AdminLTE)-->
208
- <script src="../../../dist/js/adminlte.js"></script> <!--end::Required Plugin(AdminLTE)--><!--begin::OverlayScrollbars Configure-->
1
+ <!doctype html>
2
+ <html lang="en">
3
+ <!--begin::Head-->
4
+ <head>
5
+ <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
6
+ <title>AdminLTE 4 | Sidebar Mini</title>
7
+ <!--begin::Accessibility Meta Tags-->
8
+ <meta name="viewport" content="width=device-width, initial-scale=1.0, user-scalable=yes" />
9
+ <meta name="color-scheme" content="light dark" />
10
+ <meta name="theme-color" content="#007bff" media="(prefers-color-scheme: light)" />
11
+ <meta name="theme-color" content="#1a1a1a" media="(prefers-color-scheme: dark)" />
12
+ <!--end::Accessibility Meta Tags-->
13
+ <!--begin::Primary Meta Tags-->
14
+ <meta name="title" content="AdminLTE 4 | Sidebar Mini" />
15
+ <meta name="author" content="ColorlibHQ" />
16
+ <meta
17
+ name="description"
18
+ content="AdminLTE is a Free Bootstrap 5 Admin Dashboard, 30 example pages using Vanilla JS. Fully accessible with WCAG 2.1 AA compliance."
19
+ />
20
+ <meta
21
+ name="keywords"
22
+ content="bootstrap 5, bootstrap, bootstrap 5 admin dashboard, bootstrap 5 dashboard, bootstrap 5 charts, bootstrap 5 calendar, bootstrap 5 datepicker, bootstrap 5 tables, bootstrap 5 datatable, vanilla js datatable, colorlibhq, colorlibhq dashboard, colorlibhq admin dashboard, accessible admin panel, WCAG compliant"
23
+ />
24
+ <!--end::Primary Meta Tags-->
25
+ <!--begin::Accessibility Features-->
26
+ <!-- Skip links will be dynamically added by accessibility.js -->
27
+ <meta name="supported-color-schemes" content="light dark" />
28
+ <link rel="preload" href="../../../dist/css/adminlte.css" as="style" />
29
+ <!--end::Accessibility Features-->
30
+ <!--begin::Fonts-->
31
+ <link
32
+ rel="stylesheet"
33
+ href="https://cdn.jsdelivr.net/npm/@fontsource/source-sans-3@5.0.12/index.css"
34
+ integrity="sha256-tXJfXfp6Ewt1ilPzLDtQnJV4hclT9XuaZUKyUvmyr+Q="
35
+ crossorigin="anonymous"
36
+ media="print"
37
+ onload="this.media='all'"
38
+ />
39
+ <!--end::Fonts-->
40
+ <!--begin::Third Party Plugin(OverlayScrollbars)-->
41
+ <link
42
+ rel="stylesheet"
43
+ href="https://cdn.jsdelivr.net/npm/overlayscrollbars@2.10.1/styles/overlayscrollbars.min.css"
44
+ integrity="sha256-tZHrRjVqNSRyWg2wbppGnT833E/Ys0DHWGwT04GiqQg="
45
+ crossorigin="anonymous"
46
+ />
47
+ <!--end::Third Party Plugin(OverlayScrollbars)-->
48
+ <!--begin::Third Party Plugin(Bootstrap Icons)-->
49
+ <link
50
+ rel="stylesheet"
51
+ href="https://cdn.jsdelivr.net/npm/bootstrap-icons@1.11.3/font/bootstrap-icons.min.css"
52
+ integrity="sha256-9kPW/n5nn53j4WMRYAxe9c1rCY96Oogo/MKSVdKzPmI="
53
+ crossorigin="anonymous"
54
+ />
55
+ <!--end::Third Party Plugin(Bootstrap Icons)-->
56
+ <!--begin::Required Plugin(AdminLTE)-->
57
+ <link rel="stylesheet" href="../../../dist/css/adminlte.css" />
58
+ <!--end::Required Plugin(AdminLTE)-->
59
+ </head>
60
+ <!--end::Head-->
61
+ <!--begin::Body-->
62
+ <body class="layout-fixed sidebar-expand-lg sidebar-mini bg-body-tertiary">
63
+ <!--begin::App Wrapper-->
64
+ <div class="app-wrapper">
65
+ <!--begin::Header-->
66
+ <nav class="app-header navbar navbar-expand bg-body">
67
+ <!--begin::Container-->
68
+ <div class="container-fluid">
69
+ <!--begin::Start Navbar Links-->
70
+ <ul class="navbar-nav">
71
+ <li class="nav-item">
72
+ <a class="nav-link" data-lte-toggle="sidebar" href="#" role="button">
73
+ <i class="bi bi-list"></i>
74
+ </a>
75
+ </li>
76
+ <li class="nav-item d-none d-md-block"><a href="#" class="nav-link">Home</a></li>
77
+ <li class="nav-item d-none d-md-block"><a href="#" class="nav-link">Contact</a></li>
78
+ </ul>
79
+ <!--end::Start Navbar Links-->
80
+ <!--begin::End Navbar Links-->
81
+ <ul class="navbar-nav ms-auto">
82
+ <!--begin::Navbar Search-->
83
+ <li class="nav-item">
84
+ <a class="nav-link" data-widget="navbar-search" href="#" role="button">
85
+ <i class="bi bi-search"></i>
86
+ </a>
87
+ </li>
88
+ <!--end::Navbar Search-->
89
+ <!--begin::Messages Dropdown Menu-->
90
+ <li class="nav-item dropdown">
91
+ <a class="nav-link" data-bs-toggle="dropdown" href="#">
92
+ <i class="bi bi-chat-text"></i>
93
+ <span class="navbar-badge badge text-bg-danger">3</span>
94
+ </a>
95
+ <div class="dropdown-menu dropdown-menu-lg dropdown-menu-end">
96
+ <a href="#" class="dropdown-item">
97
+ <!--begin::Message-->
98
+ <div class="d-flex">
99
+ <div class="flex-shrink-0">
100
+ <img
101
+ src="../../../dist/assets/img/user1-128x128.jpg"
102
+ alt="User Avatar"
103
+ class="img-size-50 rounded-circle me-3"
104
+ />
105
+ </div>
106
+ <div class="flex-grow-1">
107
+ <h3 class="dropdown-item-title">
108
+ Brad Diesel
109
+ <span class="float-end fs-7 text-danger"
110
+ ><i class="bi bi-star-fill"></i
111
+ ></span>
112
+ </h3>
113
+ <p class="fs-7">Call me whenever you can...</p>
114
+ <p class="fs-7 text-secondary">
115
+ <i class="bi bi-clock-fill me-1"></i> 4 Hours Ago
116
+ </p>
117
+ </div>
118
+ </div>
119
+ <!--end::Message-->
120
+ </a>
121
+ <div class="dropdown-divider"></div>
122
+ <a href="#" class="dropdown-item">
123
+ <!--begin::Message-->
124
+ <div class="d-flex">
125
+ <div class="flex-shrink-0">
126
+ <img
127
+ src="../../../dist/assets/img/user8-128x128.jpg"
128
+ alt="User Avatar"
129
+ class="img-size-50 rounded-circle me-3"
130
+ />
131
+ </div>
132
+ <div class="flex-grow-1">
133
+ <h3 class="dropdown-item-title">
134
+ John Pierce
135
+ <span class="float-end fs-7 text-secondary">
136
+ <i class="bi bi-star-fill"></i>
137
+ </span>
138
+ </h3>
139
+ <p class="fs-7">I got your message bro</p>
140
+ <p class="fs-7 text-secondary">
141
+ <i class="bi bi-clock-fill me-1"></i> 4 Hours Ago
142
+ </p>
143
+ </div>
144
+ </div>
145
+ <!--end::Message-->
146
+ </a>
147
+ <div class="dropdown-divider"></div>
148
+ <a href="#" class="dropdown-item">
149
+ <!--begin::Message-->
150
+ <div class="d-flex">
151
+ <div class="flex-shrink-0">
152
+ <img
153
+ src="../../../dist/assets/img/user3-128x128.jpg"
154
+ alt="User Avatar"
155
+ class="img-size-50 rounded-circle me-3"
156
+ />
157
+ </div>
158
+ <div class="flex-grow-1">
159
+ <h3 class="dropdown-item-title">
160
+ Nora Silvester
161
+ <span class="float-end fs-7 text-warning">
162
+ <i class="bi bi-star-fill"></i>
163
+ </span>
164
+ </h3>
165
+ <p class="fs-7">The subject goes here</p>
166
+ <p class="fs-7 text-secondary">
167
+ <i class="bi bi-clock-fill me-1"></i> 4 Hours Ago
168
+ </p>
169
+ </div>
170
+ </div>
171
+ <!--end::Message-->
172
+ </a>
173
+ <div class="dropdown-divider"></div>
174
+ <a href="#" class="dropdown-item dropdown-footer">See All Messages</a>
175
+ </div>
176
+ </li>
177
+ <!--end::Messages Dropdown Menu-->
178
+ <!--begin::Notifications Dropdown Menu-->
179
+ <li class="nav-item dropdown">
180
+ <a class="nav-link" data-bs-toggle="dropdown" href="#">
181
+ <i class="bi bi-bell-fill"></i>
182
+ <span class="navbar-badge badge text-bg-warning">15</span>
183
+ </a>
184
+ <div class="dropdown-menu dropdown-menu-lg dropdown-menu-end">
185
+ <span class="dropdown-item dropdown-header">15 Notifications</span>
186
+ <div class="dropdown-divider"></div>
187
+ <a href="#" class="dropdown-item">
188
+ <i class="bi bi-envelope me-2"></i> 4 new messages
189
+ <span class="float-end text-secondary fs-7">3 mins</span>
190
+ </a>
191
+ <div class="dropdown-divider"></div>
192
+ <a href="#" class="dropdown-item">
193
+ <i class="bi bi-people-fill me-2"></i> 8 friend requests
194
+ <span class="float-end text-secondary fs-7">12 hours</span>
195
+ </a>
196
+ <div class="dropdown-divider"></div>
197
+ <a href="#" class="dropdown-item">
198
+ <i class="bi bi-file-earmark-fill me-2"></i> 3 new reports
199
+ <span class="float-end text-secondary fs-7">2 days</span>
200
+ </a>
201
+ <div class="dropdown-divider"></div>
202
+ <a href="#" class="dropdown-item dropdown-footer"> See All Notifications </a>
203
+ </div>
204
+ </li>
205
+ <!--end::Notifications Dropdown Menu-->
206
+ <!--begin::Fullscreen Toggle-->
207
+ <li class="nav-item">
208
+ <a class="nav-link" href="#" data-lte-toggle="fullscreen">
209
+ <i data-lte-icon="maximize" class="bi bi-arrows-fullscreen"></i>
210
+ <i data-lte-icon="minimize" class="bi bi-fullscreen-exit" style="display: none"></i>
211
+ </a>
212
+ </li>
213
+ <!--end::Fullscreen Toggle-->
214
+ <!--begin::User Menu Dropdown-->
215
+ <li class="nav-item dropdown user-menu">
216
+ <a href="#" class="nav-link dropdown-toggle" data-bs-toggle="dropdown">
217
+ <img
218
+ src="../../../dist/assets/img/user2-160x160.jpg"
219
+ class="user-image rounded-circle shadow"
220
+ alt="User Image"
221
+ />
222
+ <span class="d-none d-md-inline">Alexander Pierce</span>
223
+ </a>
224
+ <ul class="dropdown-menu dropdown-menu-lg dropdown-menu-end">
225
+ <!--begin::User Image-->
226
+ <li class="user-header text-bg-primary">
227
+ <img
228
+ src="../../../dist/assets/img/user2-160x160.jpg"
229
+ class="rounded-circle shadow"
230
+ alt="User Image"
231
+ />
232
+ <p>
233
+ Alexander Pierce - Web Developer
234
+ <small>Member since Nov. 2023</small>
235
+ </p>
236
+ </li>
237
+ <!--end::User Image-->
238
+ <!--begin::Menu Body-->
239
+ <li class="user-body">
240
+ <!--begin::Row-->
241
+ <div class="row">
242
+ <div class="col-4 text-center"><a href="#">Followers</a></div>
243
+ <div class="col-4 text-center"><a href="#">Sales</a></div>
244
+ <div class="col-4 text-center"><a href="#">Friends</a></div>
245
+ </div>
246
+ <!--end::Row-->
247
+ </li>
248
+ <!--end::Menu Body-->
249
+ <!--begin::Menu Footer-->
250
+ <li class="user-footer">
251
+ <a href="#" class="btn btn-default btn-flat">Profile</a>
252
+ <a href="#" class="btn btn-default btn-flat float-end">Sign out</a>
253
+ </li>
254
+ <!--end::Menu Footer-->
255
+ </ul>
256
+ </li>
257
+ <!--end::User Menu Dropdown-->
258
+ </ul>
259
+ <!--end::End Navbar Links-->
260
+ </div>
261
+ <!--end::Container-->
262
+ </nav>
263
+ <!--end::Header-->
264
+ <!--begin::Sidebar-->
265
+ <aside class="app-sidebar bg-body-secondary shadow" data-bs-theme="dark">
266
+ <!--begin::Sidebar Brand-->
267
+ <div class="sidebar-brand">
268
+ <!--begin::Brand Link-->
269
+ <a href="../index.html" class="brand-link logo-switch">
270
+ <!--begin::Brand Image Small-->
271
+ <img
272
+ src="../../../dist/assets/img/AdminLTELogo.png"
273
+ alt="AdminLTE Logo Small"
274
+ class="brand-image-xl logo-xs opacity-75 shadow"
275
+ />
276
+ <!--end::Brand Image Small-->
277
+ <!--begin::Brand Image Large-->
278
+ <img
279
+ src="../../../dist/assets/img/AdminLTEFullLogo.png"
280
+ alt="AdminLTE Logo Large"
281
+ class="brand-image-xs logo-xl opacity-75"
282
+ />
283
+ <!--end::Brand Image Large-->
284
+ </a>
285
+ <!--end::Brand Link-->
286
+ </div>
287
+ <!-- Sidebar -->
288
+ <!--begin::Sidebar Wrapper-->
289
+ <div class="sidebar-wrapper">
290
+ <nav class="mt-2">
291
+ <!--begin::Sidebar Menu-->
292
+ <ul
293
+ class="nav sidebar-menu flex-column"
294
+ data-lte-toggle="treeview"
295
+ role="menu"
296
+ data-accordion="false"
297
+ >
298
+ <li class="nav-header">MULTI LEVEL EXAMPLE</li>
299
+ <li class="nav-item">
300
+ <a href="#" class="nav-link">
301
+ <i class="nav-icon bi bi-circle-fill"></i>
302
+ <p>Level 1</p>
303
+ </a>
304
+ </li>
305
+ <li class="nav-item">
306
+ <a href="#" class="nav-link">
307
+ <i class="nav-icon bi bi-circle-fill"></i>
308
+ <p>
309
+ Level 1
310
+ <i class="nav-arrow bi bi-chevron-right"></i>
311
+ </p>
312
+ </a>
313
+ <ul class="nav nav-treeview">
314
+ <li class="nav-item">
315
+ <a href="#" class="nav-link">
316
+ <i class="nav-icon bi bi-circle"></i>
317
+ <p>Level 2</p>
318
+ </a>
319
+ </li>
320
+ <li class="nav-item">
321
+ <a href="#" class="nav-link">
322
+ <i class="nav-icon bi bi-circle"></i>
323
+ <p>
324
+ Level 2
325
+ <i class="nav-arrow bi bi-chevron-right"></i>
326
+ </p>
327
+ </a>
328
+ <ul class="nav nav-treeview">
329
+ <li class="nav-item">
330
+ <a href="#" class="nav-link">
331
+ <i class="nav-icon bi bi-record-circle-fill"></i>
332
+ <p>Level 3</p>
333
+ </a>
334
+ </li>
335
+ <li class="nav-item">
336
+ <a href="#" class="nav-link">
337
+ <i class="nav-icon bi bi-record-circle-fill"></i>
338
+ <p>Level 3</p>
339
+ </a>
340
+ </li>
341
+ <li class="nav-item">
342
+ <a href="#" class="nav-link">
343
+ <i class="nav-icon bi bi-record-circle-fill"></i>
344
+ <p>Level 3</p>
345
+ </a>
346
+ </li>
347
+ </ul>
348
+ </li>
349
+ <li class="nav-item">
350
+ <a href="#" class="nav-link">
351
+ <i class="nav-icon bi bi-circle"></i>
352
+ <p>Level 2</p>
353
+ </a>
354
+ </li>
355
+ </ul>
356
+ </li>
357
+ <li class="nav-item">
358
+ <a href="#" class="nav-link">
359
+ <i class="nav-icon bi bi-circle-fill"></i>
360
+ <p>Level 1</p>
361
+ </a>
362
+ </li>
363
+ </ul>
364
+ <!--end::Sidebar Menu-->
365
+ </nav>
366
+ </div>
367
+ <!--end::Sidebar Wrapper-->
368
+ </aside>
369
+ <!--end::Sidebar-->
370
+ <!--begin::App Main-->
371
+ <main class="app-main">
372
+ <!--begin::App Content Header-->
373
+ <div class="app-content-header">
374
+ <!--begin::Container-->
375
+ <div class="container-fluid">
376
+ <!--begin::Row-->
377
+ <div class="row">
378
+ <div class="col-sm-6"><h3 class="mb-0">Logo Switch</h3></div>
379
+ <div class="col-sm-6">
380
+ <ol class="breadcrumb float-sm-end">
381
+ <li class="breadcrumb-item"><a href="#">Home</a></li>
382
+ <li class="breadcrumb-item active" aria-current="page">Logo Switch</li>
383
+ </ol>
384
+ </div>
385
+ </div>
386
+ <!--end::Row-->
387
+ </div>
388
+ <!--end::Container-->
389
+ </div>
390
+ <!--end::App Content Header-->
391
+ <!--begin::App Content-->
392
+ <div class="app-content">
393
+ <!--begin::Container-->
394
+ <div class="container-fluid">
395
+ <!--begin::Row-->
396
+ <div class="row">
397
+ <div class="col-12">
398
+ <!-- Default box -->
399
+ <div class="card">
400
+ <div class="card-header">
401
+ <h3 class="card-title">Title</h3>
402
+ <div class="card-tools">
403
+ <button
404
+ type="button"
405
+ class="btn btn-tool"
406
+ data-lte-toggle="card-collapse"
407
+ title="Collapse"
408
+ >
409
+ <i data-lte-icon="expand" class="bi bi-plus-lg"></i>
410
+ <i data-lte-icon="collapse" class="bi bi-dash-lg"></i>
411
+ </button>
412
+ <button
413
+ type="button"
414
+ class="btn btn-tool"
415
+ data-lte-toggle="card-remove"
416
+ title="Remove"
417
+ >
418
+ <i class="bi bi-x-lg"></i>
419
+ </button>
420
+ </div>
421
+ </div>
422
+ <div class="card-body">Start creating your amazing application!</div>
423
+ <!-- /.card-body -->
424
+ <div class="card-footer">Footer</div>
425
+ <!-- /.card-footer-->
426
+ </div>
427
+ <!-- /.card -->
428
+ </div>
429
+ </div>
430
+ <!--begin::Row-->
431
+ </div>
432
+ <!--end::Container-->
433
+ </div>
434
+ <!--end::App Content-->
435
+ </main>
436
+ <!--end::App Main-->
437
+ <!--begin::Footer-->
438
+ <footer class="app-footer">
439
+ <!--begin::To the end-->
440
+ <div class="float-end d-none d-sm-inline">Anything you want</div>
441
+ <!--end::To the end-->
442
+ <!--begin::Copyright-->
443
+ <strong>
444
+ Copyright &copy; 2014-2025&nbsp;
445
+ <a href="https://adminlte.io" class="text-decoration-none">AdminLTE.io</a>.
446
+ </strong>
447
+ All rights reserved.
448
+ <!--end::Copyright-->
449
+ </footer>
450
+ <!--end::Footer-->
451
+ </div>
452
+ <!--end::App Wrapper-->
453
+ <!--begin::Script-->
454
+ <!--begin::Third Party Plugin(OverlayScrollbars)-->
455
+ <script
456
+ src="https://cdn.jsdelivr.net/npm/overlayscrollbars@2.10.1/browser/overlayscrollbars.browser.es6.min.js"
457
+ integrity="sha256-dghWARbRe2eLlIJ56wNB+b760ywulqK3DzZYEpsg2fQ="
458
+ crossorigin="anonymous"
459
+ ></script>
460
+ <!--end::Third Party Plugin(OverlayScrollbars)--><!--begin::Required Plugin(popperjs for Bootstrap 5)-->
461
+ <script
462
+ src="https://cdn.jsdelivr.net/npm/@popperjs/core@2.11.8/dist/umd/popper.min.js"
463
+ integrity="sha384-I7E8VVD/ismYTF4hNIPjVp/Zjvgyol6VFvRkX/vR+Vc4jQkC+hVqc2pM8ODewa9r"
464
+ crossorigin="anonymous"
465
+ ></script>
466
+ <!--end::Required Plugin(popperjs for Bootstrap 5)--><!--begin::Required Plugin(Bootstrap 5)-->
467
+ <script
468
+ src="https://cdn.jsdelivr.net/npm/bootstrap@5.3.3/dist/js/bootstrap.min.js"
469
+ integrity="sha384-0pUGZvbkm6XF6gxjEnlmuGrJXVbNuzT9qBBavbLwCsOGabYfZo0T0to5eqruptLy"
470
+ crossorigin="anonymous"
471
+ ></script>
472
+ <!--end::Required Plugin(Bootstrap 5)--><!--begin::Required Plugin(AdminLTE)-->
473
+ <script src="../../../dist/js/adminlte.js"></script>
474
+ <!--end::Required Plugin(AdminLTE)--><!--begin::OverlayScrollbars Configure-->
209
475
  <script>
210
- const SELECTOR_SIDEBAR_WRAPPER = ".sidebar-wrapper";
211
- const Default = {
212
- scrollbarTheme: "os-theme-light",
213
- scrollbarAutoHide: "leave",
214
- scrollbarClickScroll: true,
215
- };
216
- document.addEventListener("DOMContentLoaded", function() {
217
- const sidebarWrapper = document.querySelector(SELECTOR_SIDEBAR_WRAPPER);
218
- if (
219
- sidebarWrapper &&
220
- typeof OverlayScrollbarsGlobal?.OverlayScrollbars !== "undefined"
221
- ) {
222
- OverlayScrollbarsGlobal.OverlayScrollbars(sidebarWrapper, {
223
- scrollbars: {
224
- theme: Default.scrollbarTheme,
225
- autoHide: Default.scrollbarAutoHide,
226
- clickScroll: Default.scrollbarClickScroll,
227
- },
228
- });
229
- }
230
- });
231
- </script> <!--end::OverlayScrollbars Configure--> <!--end::Script-->
232
- </body><!--end::Body-->
233
-
234
- </html>
476
+ const SELECTOR_SIDEBAR_WRAPPER = '.sidebar-wrapper';
477
+ const Default = {
478
+ scrollbarTheme: 'os-theme-light',
479
+ scrollbarAutoHide: 'leave',
480
+ scrollbarClickScroll: true,
481
+ };
482
+ document.addEventListener('DOMContentLoaded', function () {
483
+ const sidebarWrapper = document.querySelector(SELECTOR_SIDEBAR_WRAPPER);
484
+ if (sidebarWrapper && OverlayScrollbarsGlobal?.OverlayScrollbars !== undefined) {
485
+ OverlayScrollbarsGlobal.OverlayScrollbars(sidebarWrapper, {
486
+ scrollbars: {
487
+ theme: Default.scrollbarTheme,
488
+ autoHide: Default.scrollbarAutoHide,
489
+ clickScroll: Default.scrollbarClickScroll,
490
+ },
491
+ });
492
+ }
493
+ });
494
+ </script>
495
+ <!--end::OverlayScrollbars Configure-->
496
+ <!--end::Script-->
497
+ </body>
498
+ <!--end::Body-->
499
+ </html>