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
@@ -0,0 +1,121 @@
1
+ ---
2
+ import Head from '@components/_head.astro';
3
+ import Footer from '@components/dashboard/_footer.astro';
4
+ import Topbar from '@components/dashboard/_topbar.astro';
5
+ import Sidenav from '@components/dashboard/_sidenav.astro';
6
+ import Scripts from '@components/_scripts.astro';
7
+
8
+ const title = 'AdminLTE 4 | Widgets - Small Box'
9
+ const path = '../../../dist'
10
+ const mainPage = 'widgets'
11
+ const page = 'small-box'
12
+ ---
13
+ <!DOCTYPE html>
14
+ <html lang="en">
15
+ <head>
16
+ <Head title={title} path={path} />
17
+ </head>
18
+ <body class="layout-fixed sidebar-expand-lg bg-body-tertiary">
19
+ <div class="app-wrapper">
20
+ <Topbar path={path} />
21
+ <Sidenav path={path} mainPage={mainPage} page={page} />
22
+ <!-- Main content -->
23
+ <main class="app-main">
24
+ <div class="app-content-header">
25
+ <div class="container-fluid">
26
+ <div class="row">
27
+ <div class="col-sm-6">
28
+ <h3 class="mb-0">Small Box</h3>
29
+ </div>
30
+ <div class="col-sm-6">
31
+ <ol class="breadcrumb float-sm-end">
32
+ <li class="breadcrumb-item"><a href="#">Home</a></li>
33
+ <li class="breadcrumb-item active" aria-current="page">Small Box</li>
34
+ </ol>
35
+ </div>
36
+ </div>
37
+ </div>
38
+ </div>
39
+ <!-- Main content -->
40
+ <div class="app-content">
41
+ <div class="container-fluid">
42
+ <!-- Small Box (Stat card) -->
43
+ <h5 class="mb-2">Small Box</h5>
44
+ <!-- Small boxes (Stat box) -->
45
+ <div class="row">
46
+ <div class="col-lg-3 col-6">
47
+ <!-- small box -->
48
+ <div class="small-box text-bg-primary">
49
+ <div class="inner">
50
+ <h3>150</h3>
51
+
52
+ <p>New Orders</p>
53
+ </div>
54
+ <svg class="small-box-icon" fill="currentColor" viewBox="0 0 24 24" xmlns="http://www.w3.org/2000/svg" aria-hidden="true">
55
+ <path d="M2.25 2.25a.75.75 0 000 1.5h1.386c.17 0 .318.114.362.278l2.558 9.592a3.752 3.752 0 00-2.806 3.63c0 .414.336.75.75.75h15.75a.75.75 0 000-1.5H5.378A2.25 2.25 0 017.5 15h11.218a.75.75 0 00.674-.421 60.358 60.358 0 002.96-7.228.75.75 0 00-.525-.965A60.864 60.864 0 005.68 4.509l-.232-.867A1.875 1.875 0 003.636 2.25H2.25zM3.75 20.25a1.5 1.5 0 113 0 1.5 1.5 0 01-3 0zM16.5 20.25a1.5 1.5 0 113 0 1.5 1.5 0 01-3 0z"></path>
56
+ </svg>
57
+ <a href="#" class="small-box-footer">More info <i class="fa-solid fa-arrow-circle-right"></i></a>
58
+ </div>
59
+ </div>
60
+ <!-- ./col -->
61
+ <div class="col-lg-3 col-6">
62
+ <!-- small box -->
63
+ <div class="small-box text-bg-success">
64
+ <div class="inner">
65
+ <h3>53<sup class="fs-5">%</sup></h3>
66
+
67
+ <p>Bounce Rate</p>
68
+ </div>
69
+ <svg class="small-box-icon" fill="currentColor" viewBox="0 0 24 24" xmlns="http://www.w3.org/2000/svg" aria-hidden="true">
70
+ <path d="M18.375 2.25c-1.035 0-1.875.84-1.875 1.875v15.75c0 1.035.84 1.875 1.875 1.875h.75c1.035 0 1.875-.84 1.875-1.875V4.125c0-1.036-.84-1.875-1.875-1.875h-.75zM9.75 8.625c0-1.036.84-1.875 1.875-1.875h.75c1.036 0 1.875.84 1.875 1.875v11.25c0 1.035-.84 1.875-1.875 1.875h-.75a1.875 1.875 0 01-1.875-1.875V8.625zM3 13.125c0-1.036.84-1.875 1.875-1.875h.75c1.036 0 1.875.84 1.875 1.875v6.75c0 1.035-.84 1.875-1.875 1.875h-.75A1.875 1.875 0 013 19.875v-6.75z"></path>
71
+ </svg>
72
+ <a href="#" class="small-box-footer">More info <i class="fa-solid fa-arrow-circle-right"></i></a>
73
+ </div>
74
+ </div>
75
+ <!-- ./col -->
76
+ <div class="col-lg-3 col-6">
77
+ <!-- small box -->
78
+ <div class="small-box text-bg-warning">
79
+ <div class="inner">
80
+ <h3>44</h3>
81
+
82
+ <p>User Registrations</p>
83
+ </div>
84
+ <svg class="small-box-icon" fill="currentColor" viewBox="0 0 24 24" xmlns="http://www.w3.org/2000/svg" aria-hidden="true">
85
+ <path d="M6.25 6.375a4.125 4.125 0 118.25 0 4.125 4.125 0 01-8.25 0zM3.25 19.125a7.125 7.125 0 0114.25 0v.003l-.001.119a.75.75 0 01-.363.63 13.067 13.067 0 01-6.761 1.873c-2.472 0-4.786-.684-6.76-1.873a.75.75 0 01-.364-.63l-.001-.122zM19.75 7.5a.75.75 0 00-1.5 0v2.25H16a.75.75 0 000 1.5h2.25v2.25a.75.75 0 001.5 0v-2.25H22a.75.75 0 000-1.5h-2.25V7.5z"></path>
86
+ </svg>
87
+ <a href="#" class="small-box-footer">More info <i class="fa-solid fa-arrow-circle-right"></i></a>
88
+ </div>
89
+ </div>
90
+ <!-- ./col -->
91
+ <div class="col-lg-3 col-6">
92
+ <!-- small box -->
93
+ <div class="small-box text-bg-danger">
94
+ <div class="inner">
95
+ <h3>65</h3>
96
+
97
+ <p>Unique Visitors</p>
98
+ </div>
99
+ <svg class="small-box-icon" fill="currentColor" viewBox="0 0 24 24" xmlns="http://www.w3.org/2000/svg" aria-hidden="true">
100
+ <path clip-rule="evenodd" fill-rule="evenodd" d="M2.25 13.5a8.25 8.25 0 018.25-8.25.75.75 0 01.75.75v6.75H18a.75.75 0 01.75.75 8.25 8.25 0 01-16.5 0z"></path>
101
+ <path clip-rule="evenodd" fill-rule="evenodd" d="M12.75 3a.75.75 0 01.75-.75 8.25 8.25 0 018.25 8.25.75.75 0 01-.75.75h-7.5a.75.75 0 01-.75-.75V3z"></path>
102
+ </svg>
103
+ <a href="#" class="small-box-footer">More info <i class="fa-solid fa-arrow-circle-right"></i></a>
104
+ </div>
105
+ </div>
106
+ <!-- ./col -->
107
+ </div>
108
+ <!-- /.row -->
109
+ </div><!-- /.container-fluid -->
110
+ </div>
111
+ <!-- /.content -->
112
+ </main>
113
+ <!-- /.app-content -->
114
+
115
+ <Footer />
116
+ </div>
117
+ <!-- ./app-wrapper -->
118
+
119
+ <Scripts path={path} />
120
+ </body>
121
+ </html>
@@ -0,0 +1,15 @@
1
+ //
2
+ // Core: Main Footer
3
+ //
4
+
5
+ .app-footer {
6
+ grid-area: #{$lte-prefix}app-footer;
7
+ width: inherit;
8
+ max-width: 100vw;
9
+ padding: $lte-app-footer-padding;
10
+ color: $lte-app-footer-color;
11
+ background-color: $lte-app-footer-bg;
12
+ border-top: $lte-app-footer-border-top;
13
+ @include transition($lte-transition-speed $lte-transition-fn);
14
+ }
15
+
@@ -0,0 +1,26 @@
1
+ //
2
+ // Core: Main Header
3
+ //
4
+
5
+ .app-header {
6
+ z-index: $lte-zindex-app-header;
7
+ grid-area: #{$lte-prefix}app-header;
8
+ max-width: 100vw;
9
+ border-bottom: $lte-app-header-bottom-border;
10
+ @include transition($lte-transition-speed $lte-transition-fn);
11
+
12
+ .nav-link {
13
+ position: relative;
14
+ height: $nav-link-height;
15
+ }
16
+ }
17
+
18
+ // Navbar badge
19
+ .navbar-badge {
20
+ position: absolute;
21
+ top: 9px;
22
+ right: 5px;
23
+ padding: 2px 4px;
24
+ font-size: .6rem;
25
+ font-weight: 400;
26
+ }
@@ -0,0 +1,20 @@
1
+ .app-main {
2
+ grid-area: #{$lte-prefix}app-main;
3
+ max-width: 100vw;
4
+ padding-bottom: 1rem;
5
+ @include transition($lte-transition-speed $lte-transition-fn);
6
+
7
+ .app-content-header {
8
+ padding: 1rem $lte-content-padding-x;
9
+
10
+ .breadcrumb {
11
+ padding: 0;
12
+ margin-bottom: 0;
13
+ line-height: 2.5rem;
14
+ }
15
+ }
16
+
17
+ .app-content {
18
+ padding: $lte-content-padding-y $lte-content-padding-x;
19
+ }
20
+ }
@@ -0,0 +1,429 @@
1
+ .app-sidebar {
2
+ --#{$lte-prefix}sidebar-hover-bg: #{$lte-sidebar-hover-bg};
3
+ --#{$lte-prefix}sidebar-color: #{$lte-sidebar-color};
4
+ --#{$lte-prefix}sidebar-hover-color: #{$lte-sidebar-hover-color};
5
+ --#{$lte-prefix}sidebar-active-color: #{$lte-sidebar-active-color};
6
+ --#{$lte-prefix}sidebar-menu-active-bg: #{$lte-sidebar-menu-active-bg};
7
+ --#{$lte-prefix}sidebar-menu-active-color: #{$lte-sidebar-menu-active-color};
8
+ --#{$lte-prefix}sidebar-submenu-bg: #{$lte-sidebar-submenu-bg};
9
+ --#{$lte-prefix}sidebar-submenu-color: #{$lte-sidebar-submenu-color};
10
+ --#{$lte-prefix}sidebar-submenu-hover-color: #{$lte-sidebar-submenu-hover-color};
11
+ --#{$lte-prefix}sidebar-submenu-hover-bg: #{$lte-sidebar-submenu-hover-bg};
12
+ --#{$lte-prefix}sidebar-submenu-active-color: #{$lte-sidebar-submenu-active-color};
13
+ --#{$lte-prefix}sidebar-submenu-active-bg: #{$lte-sidebar-submenu-active-bg};
14
+ --#{$lte-prefix}sidebar-header-color: #{$lte-sidebar-header-color};
15
+
16
+ z-index: $lte-zindex-sidebar;
17
+ grid-area: #{$lte-prefix}app-sidebar;
18
+ min-width: var(--#{$lte-prefix}sidebar-width);
19
+ max-width: var(--#{$lte-prefix}sidebar-width);
20
+ @include transition($lte-sidebar-transition);
21
+ }
22
+
23
+ .sidebar-brand {
24
+ display: flex;
25
+ justify-content: space-between;
26
+ padding: $lte-brand-link-padding-y $lte-brand-link-padding-x;
27
+ overflow: hidden;
28
+ font-size: $navbar-brand-font-size;
29
+ white-space: nowrap;
30
+ border-bottom: $lte-brand-link-border-buttom solid var(--#{$prefix}border-color);
31
+ @include transition(width $lte-transition-speed $lte-transition-fn);
32
+
33
+ .brand-link {
34
+ flex: 1;
35
+ &:hover {
36
+ text-decoration: none;
37
+ }
38
+
39
+ .brand-image {
40
+ float: left;
41
+ width: auto;
42
+ max-height: 33px;
43
+ margin-top: -3px;
44
+ margin-right: .5rem;
45
+ margin-left: .8rem;
46
+ line-height: .8;
47
+ }
48
+ }
49
+
50
+ .brand-text {
51
+ color: rgba(var(--#{$prefix}emphasis-color-rgb), .8);
52
+ @include transition(flex $lte-transition-speed $lte-transition-fn, width $lte-transition-speed $lte-transition-fn);
53
+ &:hover {
54
+ color: var(--#{$prefix}emphasis-color);
55
+ }
56
+ }
57
+ }
58
+
59
+ .sidebar-wrapper {
60
+ padding-top: $lte-sidebar-padding-y;
61
+ padding-right: $lte-sidebar-padding-x;
62
+ padding-bottom: $lte-sidebar-padding-y;
63
+ padding-left: $lte-sidebar-padding-x;
64
+ overflow-x: hidden;
65
+ overflow-y: auto;
66
+ @include scrollbar-color-gray();
67
+ @include scrollbar-width-thin();
68
+
69
+ // Sidebar Menu. First level links
70
+ .sidebar-menu > .nav-item {
71
+ &.menu-open {
72
+ .nav-link.active:not(:hover) {
73
+ --#{$lte-prefix}sidebar-menu-active-bg: transparent;
74
+ }
75
+ }
76
+
77
+ // links
78
+ > .nav-link {
79
+ &:active,
80
+ &:focus {
81
+ color: var(--#{$lte-prefix}sidebar-color);
82
+ }
83
+ }
84
+
85
+ > .nav-link.active:not(:hover) {
86
+ color: var(--#{$lte-prefix}sidebar-menu-active-color);
87
+ background-color: var(--#{$lte-prefix}sidebar-menu-active-bg);
88
+ }
89
+
90
+ // Hover and active states
91
+ &.menu-open > .nav-link,
92
+ &:hover > .nav-link,
93
+ > .nav-link:focus {
94
+ color: var(--#{$lte-prefix}sidebar-hover-color);
95
+ background-color: var(--#{$lte-prefix}sidebar-hover-bg);
96
+ }
97
+
98
+ // First Level Submenu
99
+ > .nav-treeview {
100
+ background-color: var(--#{$lte-prefix}sidebar-submenu-bg);
101
+ }
102
+ }
103
+
104
+ // Section Heading
105
+ .nav-header {
106
+ color: var(--#{$lte-prefix}sidebar-header-color);
107
+ background-color: inherit;
108
+ }
109
+
110
+ // All links within the sidebar menu
111
+ a {
112
+ color: var(--#{$lte-prefix}sidebar-color);
113
+
114
+ &:hover,
115
+ &:focus {
116
+ text-decoration: none;
117
+ }
118
+ }
119
+
120
+ // All submenus
121
+ .nav-treeview {
122
+ > .nav-item {
123
+ > .nav-link {
124
+ color: var(--#{$lte-prefix}sidebar-submenu-color);
125
+
126
+ &:hover,
127
+ &:focus {
128
+ color: var(--#{$lte-prefix}sidebar-submenu-hover-color);
129
+ // background-color: var(--#{$lte-prefix}sidebar-submenu-hover-bg);
130
+ }
131
+ }
132
+
133
+ > .nav-link.active {
134
+ &,
135
+ &:hover,
136
+ &:focus {
137
+ color: var(--#{$lte-prefix}sidebar-submenu-active-color);
138
+ background-color: var(--#{$lte-prefix}sidebar-submenu-active-bg);
139
+ }
140
+ }
141
+
142
+ > .nav-link:hover {
143
+ background-color: var(--#{$lte-prefix}sidebar-submenu-hover-bg);
144
+ }
145
+ }
146
+ }
147
+ }
148
+
149
+ // Sidebar navigation menu
150
+ .sidebar-menu {
151
+ // All levels
152
+ .nav-item {
153
+ > .nav-link {
154
+ margin-bottom: .2rem;
155
+
156
+ .nav-arrow {
157
+ @include transition(transform $lte-transition-fn $lte-transition-speed);
158
+ transform: none #{"/*rtl:rotate(180deg)*/"};
159
+ }
160
+ }
161
+ }
162
+
163
+ // All levels
164
+ .nav-link > .nav-badge,
165
+ .nav-link > p > .nav-badge {
166
+ position: absolute;
167
+ right: 1rem;
168
+ }
169
+
170
+ .nav-link > .nav-arrow,
171
+ .nav-link > p > .nav-arrow {
172
+ position: absolute;
173
+ top: .7rem;
174
+ right: 1rem;
175
+ }
176
+
177
+ .nav-link {
178
+ position: relative;
179
+ width: subtract(var(--#{$lte-prefix}sidebar-width), $lte-sidebar-padding-x * 2);
180
+ @include transition(width $lte-transition-fn $lte-transition-speed);
181
+ @include border-radius($border-radius);
182
+
183
+ p {
184
+ display: inline;
185
+ padding-left: .5rem;
186
+ margin: 0;
187
+ }
188
+
189
+ .nav-icon {
190
+ padding-left: .3rem;
191
+ }
192
+ }
193
+
194
+ .nav-header {
195
+ padding: $nav-link-padding-y ($nav-link-padding-y * 1.5);
196
+ font-size: .9rem;
197
+ }
198
+
199
+ // Tree view menu
200
+ .nav-treeview {
201
+ display: none;
202
+ padding: 0;
203
+ list-style: none;
204
+ }
205
+
206
+ .menu-open {
207
+ > .nav-treeview {
208
+ display: block;
209
+ }
210
+
211
+ > .nav-link {
212
+ .nav-arrow {
213
+ transform: rotate(90deg) #{"/*rtl:rotate(90deg)*/"};
214
+ }
215
+ }
216
+ }
217
+ }
218
+
219
+ // A fix for text overflow while transitioning from sidebar mini to full sidebar
220
+ .sidebar-menu,
221
+ .sidebar-menu > .nav-header,
222
+ .sidebar-menu .nav-link {
223
+ white-space: nowrap;
224
+ }
225
+
226
+ .sidebar-mini.sidebar-collapse {
227
+ .app-sidebar {
228
+ min-width: $lte-sidebar-mini-width;
229
+ max-width: $lte-sidebar-mini-width;
230
+ }
231
+
232
+ // Make the sidebar headers
233
+ .sidebar-menu .nav-header {
234
+ display: none;
235
+ }
236
+
237
+ .sidebar-menu {
238
+ .nav-link {
239
+ width: $lte-sidebar-mini-width - $lte-sidebar-padding-x * 2;
240
+ }
241
+ }
242
+
243
+ .sidebar-menu .nav-link p {
244
+ width: 0;
245
+ white-space: nowrap;
246
+ }
247
+
248
+ .sidebar-menu .nav-link p,
249
+ .brand-text {
250
+ visibility: hidden;
251
+ animation-name: fadeOut;
252
+ animation-fill-mode: both;
253
+ }
254
+
255
+ &.sidebar-is-hover {
256
+ .app-sidebar {
257
+ min-width: var(--#{$lte-prefix}sidebar-width);
258
+ max-width: var(--#{$lte-prefix}sidebar-width);
259
+ }
260
+
261
+ .sidebar-menu .nav-header {
262
+ display: inline-block;
263
+ }
264
+
265
+ .sidebar-menu .nav-link {
266
+ width: subtract(var(--#{$lte-prefix}sidebar-width), $lte-sidebar-padding-x * 2);
267
+ }
268
+
269
+ .sidebar-menu .nav-link p,
270
+ .brand-text {
271
+ margin-left: 0;
272
+ visibility: visible;
273
+ animation-name: fadeIn;
274
+ animation-duration: $lte-transition-speed;
275
+ animation-fill-mode: both;
276
+ }
277
+ }
278
+ }
279
+
280
+ .sidebar-collapse:not(.sidebar-mini) {
281
+ .app-sidebar {
282
+ // stylelint-disable-next-line
283
+ margin-left: calc(var(--#{$lte-prefix}sidebar-width) * -1);
284
+ }
285
+ }
286
+
287
+ .sidebar-expand {
288
+ @each $breakpoint in map-keys($grid-breakpoints) {
289
+ $next: breakpoint-next($breakpoint, $grid-breakpoints);
290
+ $infix: breakpoint-infix($next, $grid-breakpoints);
291
+
292
+ /* stylelint-disable-next-line scss/selector-no-union-class-name */
293
+ &#{$infix} {
294
+ @include media-breakpoint-up($next) {
295
+ &.layout-fixed {
296
+ .app-sidebar {
297
+ position: fixed;
298
+ top: 0;
299
+ bottom: 0;
300
+ left: 0;
301
+ max-height: 100vh;
302
+
303
+ .sidebar-wrapper {
304
+ height: subtract(100vh, add($lte-app-header-height-inner, $lte-app-header-bottom-border-width));
305
+ }
306
+ }
307
+
308
+ .app-header,
309
+ .app-main,
310
+ .app-footer {
311
+ margin-left: var(--#{$lte-prefix}sidebar-width);
312
+ }
313
+
314
+ &.sidebar-collapse {
315
+ .app-header,
316
+ .app-main,
317
+ .app-footer {
318
+ margin-left: 0;
319
+ }
320
+ }
321
+
322
+ &.sidebar-mini.sidebar-collapse {
323
+ .app-header,
324
+ .app-main,
325
+ .app-footer {
326
+ margin-left: $lte-sidebar-mini-width;
327
+ }
328
+ }
329
+ }
330
+ }
331
+
332
+ @include media-breakpoint-down($next) {
333
+ $max: breakpoint-max($next);
334
+
335
+ &::before {
336
+ display: none;
337
+ content: "#{$max}";
338
+ }
339
+
340
+ .app-sidebar {
341
+ position: fixed;
342
+ top: 0;
343
+ bottom: 0;
344
+ left: 0;
345
+ max-height: 100vh;
346
+ margin-left: calc(var(--#{$lte-prefix}sidebar-width) * -1); // stylelint-disable-line function-disallowed-list
347
+
348
+ .sidebar-wrapper {
349
+ height: subtract(100vh, add($lte-app-header-height-inner, $lte-app-header-bottom-border-width));
350
+ overflow-x: hidden;
351
+ overflow-y: auto;
352
+ }
353
+ }
354
+
355
+ &.sidebar-mini .app-sidebar {
356
+ margin-left: -$lte-sidebar-mini-width;
357
+ }
358
+
359
+ &.sidebar-open {
360
+ .app-sidebar {
361
+ margin-left: 0;
362
+ }
363
+
364
+ .sidebar-overlay {
365
+ position: fixed;
366
+ top: 0;
367
+ left: 0;
368
+ z-index: $lte-zindex-sidebar-overlay;
369
+ width: 100%;
370
+ height: 100%;
371
+ background-color: rgba(0, 0, 0, .2);
372
+ animation-name: fadeIn;
373
+ animation-fill-mode: both;
374
+ }
375
+ }
376
+ }
377
+ }
378
+ }
379
+ }
380
+
381
+ // To prevent onload transition and animation
382
+ .app-loaded {
383
+ &.sidebar-mini.sidebar-collapse {
384
+ .sidebar-menu .nav-link p,
385
+ .brand-text {
386
+ animation-duration: $lte-transition-speed;
387
+ }
388
+ }
389
+ }
390
+ body:not(.app-loaded) {
391
+ .app-header,
392
+ .app-sidebar,
393
+ .app-main,
394
+ .app-footer {
395
+ @include transition(none !important);
396
+ animation-duration: 0s !important;
397
+ }
398
+ }
399
+ .hold-transition {
400
+ .app-header,
401
+ .app-sidebar,
402
+ .app-main,
403
+ .app-footer {
404
+ @include transition(none !important);
405
+ animation-duration: 0s !important;
406
+ }
407
+ }
408
+
409
+ @if $enable-dark-mode {
410
+ @include color-mode(dark) {
411
+ &.app-sidebar,
412
+ .app-sidebar {
413
+ --#{$lte-prefix}sidebar-hover-bg: #{$lte-sidebar-hover-bg-dark};
414
+ --#{$lte-prefix}sidebar-color: #{$lte-sidebar-color-dark};
415
+ --#{$lte-prefix}sidebar-hover-color: #{$lte-sidebar-hover-color-dark};
416
+ --#{$lte-prefix}sidebar-active-color: #{$lte-sidebar-active-color-dark};
417
+ --#{$lte-prefix}sidebar-menu-active-bg: #{$lte-sidebar-menu-active-bg-dark};
418
+ --#{$lte-prefix}sidebar-menu-active-color: #{$lte-sidebar-menu-active-color-dark};
419
+ --#{$lte-prefix}sidebar-submenu-bg: #{$lte-sidebar-submenu-bg-dark};
420
+ --#{$lte-prefix}sidebar-submenu-color: #{$lte-sidebar-submenu-color-dark};
421
+ --#{$lte-prefix}sidebar-submenu-hover-color: #{$lte-sidebar-submenu-hover-color-dark};
422
+ --#{$lte-prefix}sidebar-submenu-hover-bg: #{$lte-sidebar-submenu-hover-bg-dark};
423
+ --#{$lte-prefix}sidebar-submenu-active-color: #{$lte-sidebar-submenu-active-color-dark};
424
+ --#{$lte-prefix}sidebar-submenu-active-bg: #{$lte-sidebar-submenu-active-bg-dark};
425
+ --#{$lte-prefix}sidebar-header-color: #{$lte-sidebar-header-color-dark};
426
+ }
427
+ }
428
+ }
429
+
@@ -2,13 +2,13 @@
2
2
  // Core: Layout
3
3
  //
4
4
 
5
- .wrapper {
5
+ .app-wrapper {
6
6
  position: relative;
7
7
  display: grid;
8
8
  grid-template-areas:
9
- "main-sidebar main-header"
10
- "main-sidebar content-wrapper"
11
- "main-sidebar main-footer";
9
+ "#{$lte-prefix}app-sidebar #{$lte-prefix}app-header"
10
+ "#{$lte-prefix}app-sidebar #{$lte-prefix}app-main"
11
+ "#{$lte-prefix}app-sidebar #{$lte-prefix}app-footer";
12
12
  grid-template-rows: min-content 1fr min-content;
13
13
  grid-template-columns: auto 1fr;
14
14
  grid-gap: 0;
@@ -16,4 +16,8 @@
16
16
  align-items: stretch;
17
17
  max-width: 100vw;
18
18
  min-height: 100vh;
19
+
20
+ > * {
21
+ min-width: 0;
22
+ }
19
23
  }