@keenmate/pure-admin-core 1.3.0 → 1.4.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.
Files changed (39) hide show
  1. package/README.md +25 -1
  2. package/dist/css/main.css +892 -762
  3. package/package.json +6 -5
  4. package/src/scss/_core.scss +4 -0
  5. package/src/scss/_fonts.scss +1 -17
  6. package/src/scss/_rtl-helpers.scss +161 -0
  7. package/src/scss/core-components/_alerts.scss +3 -3
  8. package/src/scss/core-components/_base.scss +4 -3
  9. package/src/scss/core-components/_buttons.scss +9 -9
  10. package/src/scss/core-components/_callouts.scss +14 -9
  11. package/src/scss/core-components/_cards.scss +41 -0
  12. package/src/scss/core-components/_checkbox-lists.scss +6 -6
  13. package/src/scss/core-components/_code.scss +10 -10
  14. package/src/scss/core-components/_command-palette.scss +5 -14
  15. package/src/scss/core-components/_comparison.scss +3 -3
  16. package/src/scss/core-components/_data-display.scss +6 -6
  17. package/src/scss/core-components/_detail-panel.scss +43 -26
  18. package/src/scss/core-components/_file-selector.scss +2 -2
  19. package/src/scss/core-components/_grid.scss +13 -24
  20. package/src/scss/core-components/_lists.scss +12 -12
  21. package/src/scss/core-components/_modals.scss +2 -8
  22. package/src/scss/core-components/_pagers.scss +1 -1
  23. package/src/scss/core-components/_profile.scss +11 -6
  24. package/src/scss/core-components/_settings-panel.scss +22 -9
  25. package/src/scss/core-components/_tables.scss +76 -30
  26. package/src/scss/core-components/_tabs.scss +27 -14
  27. package/src/scss/core-components/_timeline.scss +5 -5
  28. package/src/scss/core-components/_toasts.scss +57 -21
  29. package/src/scss/core-components/_tooltips.scss +11 -6
  30. package/src/scss/core-components/_utilities.scss +80 -31
  31. package/src/scss/core-components/forms/_input-groups.scss +23 -22
  32. package/src/scss/core-components/forms/_input-wrapper.scss +3 -3
  33. package/src/scss/core-components/forms/_query-editor.scss +1 -1
  34. package/src/scss/core-components/layout/_layout-responsive.scss +3 -4
  35. package/src/scss/core-components/layout/_navbar-elements.scss +17 -6
  36. package/src/scss/core-components/layout/_navbar.scss +11 -22
  37. package/src/scss/core-components/layout/_sidebar-states.scss +25 -16
  38. package/src/scss/core-components/layout/_sidebar.scss +22 -16
  39. package/src/scss/variables/_system.scss +1 -0
@@ -18,7 +18,7 @@
18
18
 
19
19
  .pa-layout__sidebar {
20
20
  background-color: var(--pa-sidebar-bg);
21
- border-right: $border-width-base solid var(--pa-border-color);
21
+ border-inline-end: $border-width-base solid var(--pa-border-color); // RTL: flips to border-left
22
22
  flex-shrink: 0;
23
23
  position: relative;
24
24
  }
@@ -27,7 +27,7 @@
27
27
  .pa-sidebar-resize {
28
28
  position: absolute;
29
29
  top: 0;
30
- right: 0;
30
+ inset-inline-end: 0; // RTL: flips to left
31
31
  width: 6px;
32
32
  height: 100%;
33
33
  cursor: ew-resize;
@@ -38,7 +38,7 @@
38
38
  content: '';
39
39
  position: absolute;
40
40
  top: 0;
41
- left: 50%;
41
+ inset-inline-start: 50%;
42
42
  transform: translateX(-50%);
43
43
  width: 2px;
44
44
  height: 100%;
@@ -66,7 +66,7 @@ body.pa-sidebar-resizing {
66
66
  body.pa-layout--sticky .pa-layout__sidebar {
67
67
  overflow-y: auto;
68
68
  overflow-y: overlay; // Chromium: scrollbar overlays content, doesn't reduce width
69
- overflow-x: visible; // Allow tooltips to escape right
69
+ overflow-x: visible; // Allow tooltips to escape (right in LTR, left in RTL)
70
70
  }
71
71
 
72
72
  // Sidebar component (separate BEM block)
@@ -93,7 +93,7 @@ body.pa-layout--sticky .pa-layout__sidebar {
93
93
  color: var(--pa-sidebar-text-secondary);
94
94
  text-decoration: none;
95
95
  font-weight: $font-weight-medium;
96
- border-right: $border-width-thick solid transparent; // Reserve space to prevent shift on active
96
+ border-inline-end: $border-width-thick solid transparent; // RTL: flips to border-left
97
97
 
98
98
  body.loaded & {
99
99
  transition: all $transition-fast $easing-snappy;
@@ -107,8 +107,8 @@ body.pa-layout--sticky .pa-layout__sidebar {
107
107
  &--active {
108
108
  color: var(--pa-sidebar-text);
109
109
  background-color: var(--pa-accent-hover);
110
- border-right-color: var(--pa-accent); // Only change color, not width
111
- font-weight: $font-weight-semibold; // Make active item bolder
110
+ border-inline-end-color: var(--pa-accent); // RTL: flips to border-left-color
111
+ font-weight: $font-weight-semibold;
112
112
  }
113
113
  }
114
114
 
@@ -122,7 +122,7 @@ body.pa-layout--sticky .pa-layout__sidebar {
122
122
  background: none;
123
123
  border: none;
124
124
  width: 100%;
125
- text-align: left;
125
+ text-align: start; // RTL: flips to right
126
126
  font-weight: $font-weight-medium;
127
127
  cursor: pointer;
128
128
 
@@ -181,9 +181,9 @@ body.pa-layout--sticky .pa-layout__sidebar {
181
181
 
182
182
  // Level 2 submenu links
183
183
  &__submenu > &__item > &__link {
184
- padding-left: $sidebar-submenu-indent;
184
+ padding-inline-start: $sidebar-submenu-indent; // RTL: flips to padding-right
185
185
  font-size: $font-size-md;
186
- border-right: $border-width-medium solid transparent; // Reserve space to prevent shift on active
186
+ border-inline-end: $border-width-medium solid transparent; // RTL: flips to border-left
187
187
 
188
188
  &:hover {
189
189
  background-color: var(--pa-sidebar-submenu-hover-bg);
@@ -191,38 +191,44 @@ body.pa-layout--sticky .pa-layout__sidebar {
191
191
 
192
192
  &--active {
193
193
  background-color: var(--pa-sidebar-submenu-active-bg);
194
- border-right-color: var(--pa-accent); // Only change color, not width
194
+ border-inline-end-color: var(--pa-accent); // RTL: flips to border-left-color
195
195
  }
196
196
  }
197
197
 
198
198
  // Level 2 submenu toggles (for third level)
199
199
  &__submenu > &__item > &__toggle {
200
- padding-left: $sidebar-submenu-indent;
200
+ padding-inline-start: $sidebar-submenu-indent; // RTL: flips to padding-right
201
201
  font-size: $font-size-md;
202
202
  }
203
203
 
204
204
  // Level 3 submenu links
205
205
  &__submenu &__submenu > &__item > &__link {
206
- padding-left: calc($sidebar-submenu-indent * $sidebar-submenu-indent-multiplier);
206
+ padding-inline-start: calc($sidebar-submenu-indent * $sidebar-submenu-indent-multiplier); // RTL: flips
207
207
  font-size: $font-size-sm;
208
- border-right: $border-width-base solid transparent; // Reserve space to prevent shift on active
208
+ border-inline-end: $border-width-base solid transparent; // RTL: flips to border-left
209
209
 
210
210
  &--active {
211
- border-right-color: var(--pa-accent); // Only change color, not width
211
+ border-inline-end-color: var(--pa-accent); // RTL: flips to border-left-color
212
212
  }
213
213
  }
214
214
 
215
215
  // Chevron icon for toggle buttons
216
216
  &__chevron {
217
- margin-left: auto;
217
+ margin-inline-start: auto; // RTL: flips to margin-right: auto
218
218
  font-size: $font-size-xs;
219
219
 
220
220
  body.loaded & {
221
221
  transition: transform $transition-fast $easing-snappy;
222
222
  }
223
223
 
224
+ // Chevron points right (›) in LTR, left (‹) in RTL
225
+ // When open, rotates 90deg clockwise in LTR, -90deg (counter-clockwise) in RTL
224
226
  .pa-sidebar__item--open & {
225
227
  transform: rotate(90deg);
226
228
  }
229
+
230
+ [dir="rtl"] .pa-sidebar__item--open & {
231
+ transform: rotate(-90deg);
232
+ }
227
233
  }
228
234
  }
@@ -8,6 +8,7 @@ $z-index-base: 0 !default;
8
8
  $z-index-content: 1000 !default;
9
9
  $z-index-sidebar: 2000 !default;
10
10
  $z-index-sidebar-fixed: 3000 !default;
11
+ $z-index-detail-panel-card: 3500 !default; // Card overlay detail panel (below header)
11
12
  $z-index-header: 4000 !default;
12
13
  $z-index-profile-panel: 5000 !default;
13
14
  $z-index-modal-backdrop: 6000 !default;