@shohojdhara/atomix 0.3.15 → 0.4.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 (245) hide show
  1. package/build-tools/index.d.ts +31 -30
  2. package/build-tools/package.json +4 -21
  3. package/dist/atomix.css +20924 -2611
  4. package/dist/atomix.css.map +1 -1
  5. package/dist/atomix.min.css +76 -2
  6. package/dist/atomix.min.css.map +1 -1
  7. package/dist/build-tools/index.d.ts +31 -30
  8. package/dist/build-tools/package.json +4 -21
  9. package/dist/charts.js.map +1 -1
  10. package/dist/core.js.map +1 -1
  11. package/dist/forms.js.map +1 -1
  12. package/dist/heavy.js.map +1 -1
  13. package/dist/index.d.ts +144 -18
  14. package/dist/index.esm.js +110 -55
  15. package/dist/index.esm.js.map +1 -1
  16. package/dist/index.js +110 -55
  17. package/dist/index.js.map +1 -1
  18. package/dist/index.min.js +1 -1
  19. package/dist/index.min.js.map +1 -1
  20. package/dist/layout.js.map +1 -1
  21. package/dist/theme.d.ts +9 -9
  22. package/dist/theme.js.map +1 -1
  23. package/package.json +1 -1
  24. package/src/components/Accordion/Accordion.stories.tsx +32 -23
  25. package/src/components/Accordion/Accordion.test.tsx +70 -50
  26. package/src/components/Accordion/Accordion.tsx +99 -94
  27. package/src/components/AtomixGlass/AtomixGlass.test.tsx +1 -1
  28. package/src/components/AtomixGlass/GlassFilter.tsx +9 -16
  29. package/src/components/AtomixGlass/glass-utils.ts +4 -3
  30. package/src/components/AtomixGlass/shader-utils.ts +128 -52
  31. package/src/components/AtomixGlass/stories/Playground.stories.tsx +1 -1
  32. package/src/components/AtomixGlass/stories/Shaders.stories.tsx +1 -1
  33. package/src/components/Avatar/Avatar.stories.tsx +45 -62
  34. package/src/components/Avatar/Avatar.tsx +58 -56
  35. package/src/components/Badge/Badge.stories.tsx +20 -9
  36. package/src/components/Badge/Badge.test.tsx +41 -41
  37. package/src/components/Badge/Badge.tsx +64 -62
  38. package/src/components/Block/Block.stories.tsx +14 -4
  39. package/src/components/Breadcrumb/Breadcrumb.stories.tsx +9 -8
  40. package/src/components/Breadcrumb/Breadcrumb.tsx +62 -60
  41. package/src/components/Button/Button.stories.tsx +13 -22
  42. package/src/components/Button/Button.test.tsx +97 -81
  43. package/src/components/Button/Button.tsx +46 -14
  44. package/src/components/Button/ButtonGroup.stories.tsx +37 -32
  45. package/src/components/Button/ButtonGroup.tsx +4 -15
  46. package/src/components/Callout/Callout.stories.tsx +109 -16
  47. package/src/components/Card/Card.stories.tsx +67 -36
  48. package/src/components/Card/Card.tsx +30 -14
  49. package/src/components/Chart/AreaChart.tsx +1 -1
  50. package/src/components/Chart/CandlestickChart.tsx +23 -16
  51. package/src/components/Chart/Chart.stories.tsx +4 -9
  52. package/src/components/Chart/Chart.tsx +40 -44
  53. package/src/components/Chart/ChartRenderer.tsx +39 -12
  54. package/src/components/Chart/ChartToolbar.tsx +21 -5
  55. package/src/components/Chart/DonutChart.tsx +1 -1
  56. package/src/components/Chart/FunnelChart.tsx +4 -1
  57. package/src/components/Chart/GaugeChart.tsx +3 -1
  58. package/src/components/Chart/HeatmapChart.tsx +50 -37
  59. package/src/components/Chart/LineChart.tsx +3 -2
  60. package/src/components/Chart/MultiAxisChart.tsx +24 -16
  61. package/src/components/Chart/RadarChart.tsx +19 -17
  62. package/src/components/Chart/ScatterChart.tsx +29 -21
  63. package/src/components/ColorModeToggle/ColorModeToggle.stories.tsx +6 -2
  64. package/src/components/ColorModeToggle/ColorModeToggle.tsx +15 -3
  65. package/src/components/Countdown/Countdown.stories.tsx +7 -7
  66. package/src/components/DataTable/DataTable.stories.tsx +43 -38
  67. package/src/components/DataTable/DataTable.test.tsx +26 -148
  68. package/src/components/DataTable/DataTable.tsx +485 -456
  69. package/src/components/DatePicker/DatePicker.stories.tsx +32 -47
  70. package/src/components/DatePicker/DatePicker.tsx +31 -26
  71. package/src/components/Dropdown/Dropdown.stories.tsx +2 -5
  72. package/src/components/Dropdown/Dropdown.tsx +313 -299
  73. package/src/components/EdgePanel/EdgePanel.stories.tsx +6 -19
  74. package/src/components/EdgePanel/EdgePanel.tsx +1 -3
  75. package/src/components/Footer/Footer.stories.tsx +21 -16
  76. package/src/components/Footer/Footer.tsx +130 -128
  77. package/src/components/Footer/FooterLink.tsx +2 -2
  78. package/src/components/Form/Checkbox.test.tsx +49 -49
  79. package/src/components/Form/Checkbox.tsx +108 -100
  80. package/src/components/Form/Form.stories.tsx +2 -10
  81. package/src/components/Form/Input.stories.tsx +22 -39
  82. package/src/components/Form/Input.test.tsx +38 -44
  83. package/src/components/Form/Radio.stories.tsx +6 -12
  84. package/src/components/Form/Radio.tsx +68 -66
  85. package/src/components/Form/Select.tsx +184 -182
  86. package/src/components/Form/Textarea.test.tsx +27 -32
  87. package/src/components/Hero/Hero.stories.tsx +56 -23
  88. package/src/components/Hero/Hero.tsx +201 -55
  89. package/src/components/Icon/index.ts +7 -1
  90. package/src/components/List/List.tsx +19 -23
  91. package/src/components/Modal/Modal.stories.tsx +2 -1
  92. package/src/components/Modal/Modal.tsx +130 -127
  93. package/src/components/Navigation/Menu/MegaMenu.tsx +70 -70
  94. package/src/components/Navigation/Nav/NavDropdown.tsx +1 -5
  95. package/src/components/Navigation/SideMenu/SideMenu.stories.tsx +128 -28
  96. package/src/components/Navigation/SideMenu/SideMenu.tsx +5 -7
  97. package/src/components/Navigation/SideMenu/SideMenuItem.tsx +4 -5
  98. package/src/components/Pagination/Pagination.stories.tsx +7 -4
  99. package/src/components/Pagination/Pagination.tsx +199 -202
  100. package/src/components/PhotoViewer/PhotoViewer.tsx +4 -1
  101. package/src/components/Popover/Popover.stories.tsx +99 -192
  102. package/src/components/Popover/Popover.tsx +41 -37
  103. package/src/components/Progress/Progress.stories.tsx +35 -44
  104. package/src/components/River/River.stories.tsx +2 -1
  105. package/src/components/SectionIntro/SectionIntro.stories.tsx +71 -71
  106. package/src/components/Slider/Slider.stories.tsx +12 -4
  107. package/src/components/Spinner/Spinner.stories.tsx +3 -1
  108. package/src/components/Spinner/Spinner.test.tsx +23 -23
  109. package/src/components/Spinner/Spinner.tsx +43 -46
  110. package/src/components/Steps/Steps.stories.tsx +8 -6
  111. package/src/components/Tabs/Tabs.stories.tsx +12 -9
  112. package/src/components/Tabs/Tabs.tsx +74 -72
  113. package/src/components/Toggle/Toggle.stories.tsx +27 -13
  114. package/src/components/Toggle/Toggle.test.tsx +65 -70
  115. package/src/components/Toggle/Toggle.tsx +4 -1
  116. package/src/components/Tooltip/Tooltip.stories.tsx +24 -20
  117. package/src/components/Tooltip/Tooltip.tsx +104 -106
  118. package/src/components/Upload/Upload.stories.tsx +129 -127
  119. package/src/components/Upload/Upload.tsx +287 -283
  120. package/src/components/VideoPlayer/VideoPlayer.tsx +6 -1
  121. package/src/components/index.ts +13 -2
  122. package/src/layouts/Grid/Grid.stories.tsx +9 -3
  123. package/src/layouts/MasonryGrid/MasonryGrid.tsx +5 -1
  124. package/src/lib/__tests__/theme-tools.test.ts +32 -6
  125. package/src/lib/composables/shared-mouse-tracker.ts +13 -14
  126. package/src/lib/composables/useAtomixGlass.ts +106 -49
  127. package/src/lib/composables/useChartExport.ts +1 -1
  128. package/src/lib/composables/useDataTable.ts +29 -17
  129. package/src/lib/composables/useHero.ts +58 -14
  130. package/src/lib/composables/useHeroBackgroundSlider.ts +2 -9
  131. package/src/lib/composables/useInput.ts +10 -8
  132. package/src/lib/composables/useSideMenu.ts +6 -5
  133. package/src/lib/composables/useTooltip.ts +1 -2
  134. package/src/lib/composables/useVideoPlayer.ts +44 -35
  135. package/src/lib/config/index.ts +154 -154
  136. package/src/lib/constants/cssVariables.ts +29 -29
  137. package/src/lib/hooks/__tests__/useComponentCustomization.test.ts +2 -6
  138. package/src/lib/hooks/index.ts +1 -1
  139. package/src/lib/hooks/useComponentCustomization.ts +11 -17
  140. package/src/lib/hooks/usePerformanceMonitor.ts +6 -7
  141. package/src/lib/patterns/__tests__/slots.test.ts +1 -1
  142. package/src/lib/patterns/index.ts +1 -1
  143. package/src/lib/patterns/slots.tsx +8 -13
  144. package/src/lib/storybook/InteractiveDemo.tsx +13 -18
  145. package/src/lib/storybook/PreviewContainer.tsx +1 -1
  146. package/src/lib/storybook/VariantsGrid.tsx +3 -7
  147. package/src/lib/storybook/index.ts +1 -1
  148. package/src/lib/theme/adapters/cssVariableMapper.ts +47 -74
  149. package/src/lib/theme/adapters/index.ts +3 -9
  150. package/src/lib/theme/adapters/themeAdapter.ts +41 -26
  151. package/src/lib/theme/config/index.ts +1 -1
  152. package/src/lib/theme/config/types.ts +2 -2
  153. package/src/lib/theme/config/validator.ts +10 -5
  154. package/src/lib/theme/constants/constants.ts +2 -2
  155. package/src/lib/theme/constants/index.ts +1 -2
  156. package/src/lib/theme/core/__tests__/createTheme.test.ts +20 -22
  157. package/src/lib/theme/core/composeTheme.ts +32 -26
  158. package/src/lib/theme/core/createTheme.ts +1 -1
  159. package/src/lib/theme/core/createThemeObject.ts +308 -301
  160. package/src/lib/theme/core/index.ts +3 -3
  161. package/src/lib/theme/devtools/CLI.ts +106 -104
  162. package/src/lib/theme/devtools/Comparator.tsx +50 -32
  163. package/src/lib/theme/devtools/DesignTokensCustomizer.stories.tsx +50 -48
  164. package/src/lib/theme/devtools/DesignTokensCustomizer.tsx +257 -63
  165. package/src/lib/theme/devtools/Inspector.tsx +75 -60
  166. package/src/lib/theme/devtools/LiveEditor.tsx +97 -76
  167. package/src/lib/theme/devtools/Preview.tsx +150 -106
  168. package/src/lib/theme/devtools/ThemeValidator.ts +29 -21
  169. package/src/lib/theme/devtools/index.ts +3 -9
  170. package/src/lib/theme/devtools/useHistory.ts +23 -21
  171. package/src/lib/theme/errors/errors.ts +12 -11
  172. package/src/lib/theme/errors/index.ts +2 -7
  173. package/src/lib/theme/generators/generateCSS.ts +9 -13
  174. package/src/lib/theme/generators/generateCSSNested.ts +1 -6
  175. package/src/lib/theme/generators/generateCSSVariables.ts +673 -630
  176. package/src/lib/theme/generators/index.ts +1 -4
  177. package/src/lib/theme/i18n/index.ts +1 -1
  178. package/src/lib/theme/i18n/rtl.ts +13 -13
  179. package/src/lib/theme/index.ts +7 -16
  180. package/src/lib/theme/runtime/ThemeApplicator.ts +4 -4
  181. package/src/lib/theme/runtime/ThemeContext.tsx +1 -1
  182. package/src/lib/theme/runtime/ThemeErrorBoundary.tsx +19 -23
  183. package/src/lib/theme/runtime/ThemeProvider.tsx +230 -239
  184. package/src/lib/theme/runtime/__tests__/ThemeProvider.integration.test.tsx +1 -1
  185. package/src/lib/theme/runtime/__tests__/ThemeProvider.test.tsx +24 -29
  186. package/src/lib/theme/runtime/index.ts +2 -5
  187. package/src/lib/theme/runtime/useTheme.ts +18 -18
  188. package/src/lib/theme/runtime/useThemeTokens.ts +22 -22
  189. package/src/lib/theme/test/testTheme.ts +15 -16
  190. package/src/lib/theme/tokens/index.ts +2 -7
  191. package/src/lib/theme/tokens/tokens.ts +25 -24
  192. package/src/lib/theme/types.ts +428 -411
  193. package/src/lib/theme/utils/__tests__/themeValidation.test.ts +3 -3
  194. package/src/lib/theme/utils/componentTheming.ts +18 -18
  195. package/src/lib/theme/utils/domUtils.ts +277 -289
  196. package/src/lib/theme/utils/index.ts +1 -2
  197. package/src/lib/theme/utils/injectCSS.ts +10 -14
  198. package/src/lib/theme/utils/naming.ts +20 -16
  199. package/src/lib/theme/utils/themeHelpers.ts +10 -12
  200. package/src/lib/theme/utils/themeUtils.ts +85 -86
  201. package/src/lib/theme/utils/themeValidation.ts +82 -33
  202. package/src/lib/theme-tools.ts +8 -6
  203. package/src/lib/types/components.ts +172 -71
  204. package/src/lib/types/partProps.ts +1 -1
  205. package/src/lib/utils/__tests__/csv.test.ts +1 -1
  206. package/src/lib/utils/componentUtils.ts +8 -12
  207. package/src/lib/utils/csv.ts +3 -1
  208. package/src/lib/utils/dataTableExport.ts +1 -5
  209. package/src/lib/utils/fontPreloader.ts +10 -19
  210. package/src/lib/utils/icons.ts +4 -1
  211. package/src/lib/utils/index.ts +2 -6
  212. package/src/lib/utils/memoryMonitor.ts +10 -8
  213. package/src/lib/utils/themeNaming.ts +2 -2
  214. package/src/styles/01-settings/_index.scss +0 -1
  215. package/src/styles/01-settings/_settings.colors.scss +8 -8
  216. package/src/styles/01-settings/_settings.design-tokens.scss +61 -50
  217. package/src/styles/01-settings/_settings.navbar.scss +1 -1
  218. package/src/styles/01-settings/_settings.spacing.scss +3 -4
  219. package/src/styles/01-settings/_settings.tooltip.scss +1 -1
  220. package/src/styles/01-settings/_settings.typography.scss +1 -1
  221. package/src/styles/02-tools/_tools.button.scss +51 -21
  222. package/src/styles/02-tools/_tools.utility-api.scss +30 -18
  223. package/src/styles/03-generic/_generic.root.scss +4 -3
  224. package/src/styles/06-components/_components.atomix-glass.scss +13 -9
  225. package/src/styles/06-components/_components.button.scss +16 -4
  226. package/src/styles/06-components/_components.callout.scss +27 -21
  227. package/src/styles/06-components/_components.card.scss +5 -14
  228. package/src/styles/06-components/_components.chart.scss +22 -19
  229. package/src/styles/06-components/_components.checkbox.scss +3 -1
  230. package/src/styles/06-components/_components.color-mode-toggle.scss +3 -1
  231. package/src/styles/06-components/_components.edge-panel.scss +9 -2
  232. package/src/styles/06-components/_components.footer.scss +1 -1
  233. package/src/styles/06-components/_components.side-menu.scss +5 -5
  234. package/src/styles/06-components/_components.toggle.scss +18 -0
  235. package/src/styles/06-components/_index.scss +1 -1
  236. package/src/styles/06-components/old.chart.styles.scss +0 -2
  237. package/src/styles/99-utilities/_utilities.border.scss +69 -27
  238. package/src/styles/99-utilities/_utilities.display.scss +1 -1
  239. package/src/styles/99-utilities/_utilities.opacity.scss +10 -0
  240. package/src/styles/99-utilities/_utilities.position.scss +16 -9
  241. package/src/styles/99-utilities/_utilities.scss +1 -1
  242. package/src/styles/99-utilities/_utilities.sizes.scss +47 -18
  243. package/src/styles/99-utilities/_utilities.spacing.scss +118 -66
  244. package/src/styles/99-utilities/_utilities.text-gradient.scss +30 -30
  245. package/src/styles/99-utilities/_utilities.text.scss +67 -46
@@ -121,20 +121,24 @@
121
121
  mix-blend-mode: screen;
122
122
  z-index: var(--atomix-z-index-5, 5);
123
123
  background: var(--atomix-glass-border-gradient-1, none);
124
- box-shadow: var(--atomix-glass-border-shadow,
125
- 0 0 0 0.03125rem rgba(255, 255, 255, 0.5) inset,
126
- 0 0.25rem 0.75rem rgba(255, 255, 255, 0.25) inset,
127
- 0 0.25rem 1rem rgba(0, 0, 0, 0.35));
124
+ box-shadow: var(
125
+ --atomix-glass-border-shadow,
126
+ 0 0 0 0.03125rem rgba(255, 255, 255, 0.5) inset,
127
+ 0 0.25rem 0.75rem rgba(255, 255, 255, 0.25) inset,
128
+ 0 0.25rem 1rem rgba(0, 0, 0, 0.35)
129
+ );
128
130
  }
129
131
 
130
132
  &__border-2 {
131
133
  mix-blend-mode: overlay;
132
134
  z-index: var(--atomix-z-index-6, 6);
133
135
  background: var(--atomix-glass-border-gradient-2, none);
134
- box-shadow: var(--atomix-glass-border-shadow,
135
- 0 0 0 0.03125rem rgba(255, 255, 255, 0.5) inset,
136
- 0 0.25rem 0.75rem rgba(255, 255, 255, 0.25) inset,
137
- 0 0.25rem 1rem rgba(0, 0, 0, 0.35));
136
+ box-shadow: var(
137
+ --atomix-glass-border-shadow,
138
+ 0 0 0 0.03125rem rgba(255, 255, 255, 0.5) inset,
139
+ 0 0.25rem 0.75rem rgba(255, 255, 255, 0.25) inset,
140
+ 0 0.25rem 1rem rgba(0, 0, 0, 0.35)
141
+ );
138
142
  }
139
143
 
140
144
  // Container styles
@@ -254,4 +258,4 @@
254
258
  @media (prefers-contrast: high) {
255
259
  border-width: var(--atomix-spacing-0-5, 0.125rem);
256
260
  }
257
- }
261
+ }
@@ -149,15 +149,27 @@
149
149
  }
150
150
 
151
151
  &--active {
152
- --#{config.$prefix}btn-bg: var(--#{config.$prefix}btn-active-bg, var(--#{config.$prefix}btn-hover-bg));
153
- --#{config.$prefix}btn-color: var(--#{config.$prefix}btn-active-color, var(--#{config.$prefix}btn-hover-color));
154
- --#{config.$prefix}btn-border-color: var(--#{config.$prefix}btn-active-border-color, var(--#{config.$prefix}btn-hover-border-color));
152
+ --#{config.$prefix}btn-bg: var(
153
+ --#{config.$prefix}btn-active-bg,
154
+ var(--#{config.$prefix}btn-hover-bg)
155
+ );
156
+ --#{config.$prefix}btn-color: var(
157
+ --#{config.$prefix}btn-active-color,
158
+ var(--#{config.$prefix}btn-hover-color)
159
+ );
160
+ --#{config.$prefix}btn-border-color: var(
161
+ --#{config.$prefix}btn-active-border-color,
162
+ var(--#{config.$prefix}btn-hover-border-color)
163
+ );
155
164
  box-shadow: inset 0 2px 4px rgba(0, 0, 0, 0.1);
156
165
  }
157
166
 
158
167
  &--selected {
159
168
  --#{config.$prefix}btn-border-width: 2px;
160
- --#{config.$prefix}btn-border-color: var(--#{config.$prefix}brand-border-subtle, var(--#{config.$prefix}primary));
169
+ --#{config.$prefix}btn-border-color: var(
170
+ --#{config.$prefix}brand-border-subtle,
171
+ var(--#{config.$prefix}primary)
172
+ );
161
173
  box-shadow: 0 0 0 2px rgba(var(--#{config.$prefix}primary-rgb, 124, 58, 237), 0.2);
162
174
  }
163
175
 
@@ -43,9 +43,13 @@
43
43
  padding: var(--#{config.$prefix}callout-padding-y) var(--#{config.$prefix}callout-padding-x);
44
44
  @include dynamic-background(var(--#{config.$prefix}callout-bg));
45
45
  border-radius: var(--#{config.$prefix}callout-border-radius);
46
- border: var(--#{config.$prefix}callout-border-witdh) solid var(--#{config.$prefix}callout-border-color);
47
- transition: opacity var(--#{config.$prefix}callout-transition-duration) var(--#{config.$prefix}callout-transition-timing),
48
- transform var(--#{config.$prefix}callout-transition-duration) var(--#{config.$prefix}callout-transition-timing);
46
+ border: var(--#{config.$prefix}callout-border-witdh) solid
47
+ var(--#{config.$prefix}callout-border-color);
48
+ transition:
49
+ opacity var(--#{config.$prefix}callout-transition-duration)
50
+ var(--#{config.$prefix}callout-transition-timing),
51
+ transform var(--#{config.$prefix}callout-transition-duration)
52
+ var(--#{config.$prefix}callout-transition-timing);
49
53
 
50
54
  &__content {
51
55
  width: 100%;
@@ -135,7 +139,8 @@
135
139
  position: relative;
136
140
  max-width: rem.rem(350px);
137
141
  width: 100%;
138
- padding: var(--#{config.$prefix}callout-tost-padding-y) var(--#{config.$prefix}callout-tost-padding-x);
142
+ padding: var(--#{config.$prefix}callout-tost-padding-y)
143
+ var(--#{config.$prefix}callout-tost-padding-x);
139
144
  flex-direction: column;
140
145
  align-items: flex-start;
141
146
  justify-content: flex-start;
@@ -151,7 +156,9 @@
151
156
  }
152
157
 
153
158
  &__actions {
154
- padding-left: calc(var(--#{config.$prefix}callout-icon-size) + var(--#{config.$prefix}callout-message-spacer));
159
+ padding-left: calc(
160
+ var(--#{config.$prefix}callout-icon-size) + var(--#{config.$prefix}callout-message-spacer)
161
+ );
155
162
  margin-top: var(--#{config.$prefix}callout-actions-spacer-y);
156
163
  }
157
164
 
@@ -170,29 +177,23 @@
170
177
 
171
178
  @each $color, $value in maps.$theme-colors {
172
179
  &--#{$color} {
173
- @if ($color =='primary') {
180
+ @if ($color == 'primary') {
174
181
  --#{config.$prefix}callout-bg: var(--#{config.$prefix}brand-bg-subtle);
175
182
  --#{config.$prefix}callout-border-color: var(--#{config.$prefix}brand-border-subtle);
176
183
  --#{config.$prefix}callout-icon-color: var(--#{config.$prefix}brand-text-emphasis);
177
- }
178
-
179
- @else if($color =='light') {
184
+ } @else if($color == 'light') {
180
185
  --#{config.$prefix}callout-title-color: var(--#{config.$prefix}dark);
181
186
  --#{config.$prefix}callout-text-color: var(--#{config.$prefix}dark);
182
187
  --#{config.$prefix}callout-bg: var(--#{config.$prefix}light);
183
188
  --#{config.$prefix}callout-border-color: var(--#{config.$prefix}primary-border-subtle);
184
189
  --#{config.$prefix}callout-icon-color: var(--#{config.$prefix}tertiary-text-emphasis);
185
- }
186
-
187
- @else if($color =='dark') {
190
+ } @else if($color == 'dark') {
188
191
  --#{config.$prefix}callout-title-color: var(--#{config.$prefix}light);
189
192
  --#{config.$prefix}callout-text-color: #{$gray-4};
190
193
  --#{config.$prefix}callout-bg: var(--#{config.$prefix}dark);
191
194
  --#{config.$prefix}callout-border-color: var(--#{config.$prefix}dark-border-subtle);
192
195
  --#{config.$prefix}callout-icon-color: var(--#{config.$prefix}light);
193
- }
194
-
195
- @else {
196
+ } @else {
196
197
  --#{config.$prefix}callout-bg: var(--#{config.$prefix}#{$color}-bg-subtle);
197
198
  --#{config.$prefix}callout-border-color: var(--#{config.$prefix}#{$color}-border-subtle);
198
199
  --#{config.$prefix}callout-icon-color: var(--#{config.$prefix}#{$color}-text-emphasis);
@@ -212,12 +213,15 @@
212
213
  justify-content: center;
213
214
  align-items: center;
214
215
  padding: var(--#{config.$prefix}callout-padding-y) var(--#{config.$prefix}callout-padding-x);
215
- border: var(--#{config.$prefix}callout-border-width) solid color-mix(in srgb, var(--#{config.$prefix}callout-border-color) 20%, transparent);
216
+ border: var(--#{config.$prefix}callout-border-width) solid
217
+ color-mix(in srgb, var(--#{config.$prefix}callout-border-color) 20%, transparent);
216
218
  max-width: var(--#{config.$prefix}callout-width);
217
219
  border-radius: var(--#{config.$prefix}callout-border-radius);
218
220
  width: 100%;
219
- @include dynamic-background(var(--#{config.$prefix}callout-bg),
220
- $background-transparency-enable: true);
221
+ @include dynamic-background(
222
+ var(--#{config.$prefix}callout-bg),
223
+ $background-transparency-enable: true
224
+ );
221
225
  }
222
226
 
223
227
  // Adjust text colors for glass effect
@@ -231,8 +235,10 @@
231
235
 
232
236
  // Glass effect for toast variant
233
237
  &#{$root}--toast {
234
- @include dynamic-background(var(--#{config.$prefix}callout-bg),
235
- $background-transparency-enable: true);
238
+ @include dynamic-background(
239
+ var(--#{config.$prefix}callout-bg),
240
+ $background-transparency-enable: true
241
+ );
236
242
  box-shadow:
237
243
  0 8px 32px rgba(0, 0, 0, 0.1),
238
244
  0 0 0 1px rgba(255, 255, 255, 0.1) inset;
@@ -311,4 +317,4 @@
311
317
  opacity: 1;
312
318
  transform: translateY(0);
313
319
  }
314
- }
320
+ }
@@ -199,8 +199,6 @@
199
199
  }
200
200
  }
201
201
 
202
-
203
-
204
202
  &--sm {
205
203
  --#{$prefix}card-spacer-y: #{rem(map.get(spacing.$spacing-sizes, 2))}; // 8px
206
204
  --#{$prefix}card-spacer-x: #{rem(map.get(spacing.$spacing-sizes, 2))}; // 8px
@@ -222,7 +220,6 @@
222
220
  @include dynamic-background(var(--#{$prefix}card-bg));
223
221
  }
224
222
 
225
-
226
223
  &--glass {
227
224
  max-width: none;
228
225
  @include dynamic-background(var(--#{$prefix}card-bg), $background-transparency-enable: true);
@@ -350,16 +347,14 @@
350
347
 
351
348
  @each $color, $value in maps.$theme-colors {
352
349
  &--#{$color} {
353
- @if ($color =='primary') {
350
+ @if ($color == 'primary') {
354
351
  --#{$prefix}card-bg: var(--#{$prefix}brand-bg-subtle);
355
352
  --#{$prefix}card-bg-hover: var(--#{$prefix}brand-bg-subtle);
356
353
  --#{$prefix}card-border-color: var(--#{$prefix}brand-border-subtle);
357
354
  --#{$prefix}card-title-color: var(--#{$prefix}brand-text-emphasis);
358
355
  --#{$prefix}card-icon-bg: var(--#{$prefix}brand-text-emphasis);
359
356
  --#{$prefix}card-icon-color: var(--#{$prefix}brand-bg-subtle);
360
- }
361
-
362
- @else if ($color =='dark') {
357
+ } @else if ($color == 'dark') {
363
358
  --#{$prefix}card-bg: var(--#{$prefix}dark);
364
359
  --#{$prefix}card-bg-hover: var(--#{$prefix}dark-hover);
365
360
  --#{$prefix}card-border-color: var(--#{$prefix}dark);
@@ -367,9 +362,7 @@
367
362
  --#{$prefix}card-text-color: var(--#{$prefix}light);
368
363
  --#{$prefix}card-icon-bg: var(--#{$prefix}light);
369
364
  --#{$prefix}card-icon-color: var(--#{$prefix}dark);
370
- }
371
-
372
- @else if ($color =='light') {
365
+ } @else if ($color == 'light') {
373
366
  --#{$prefix}card-bg: var(--#{$prefix}light);
374
367
  --#{$prefix}card-bg-hover: var(--#{$prefix}light-hover);
375
368
  --#{$prefix}card-border-color: var(--#{$prefix}light);
@@ -377,9 +370,7 @@
377
370
  --#{$prefix}card-text-color: var(--#{$prefix}dark);
378
371
  --#{$prefix}card-icon-bg: var(--#{$prefix}dark);
379
372
  --#{$prefix}card-icon-color: var(--#{$prefix}light);
380
- }
381
-
382
- @else {
373
+ } @else {
383
374
  --#{$prefix}card-bg: var(--#{$prefix}#{$color}-bg-subtle);
384
375
  --#{$prefix}card-bg-hover: var(--#{$prefix}#{$color}-bg-subtle);
385
376
  --#{$prefix}card-border-color: var(--#{$prefix}#{$color}-border-subtle);
@@ -456,4 +447,4 @@
456
447
  to {
457
448
  transform: rotate(360deg);
458
449
  }
459
- }
450
+ }
@@ -31,7 +31,7 @@
31
31
  border: var(--#{$prefix}chart-border-width) solid var(--#{$prefix}chart-border-color);
32
32
  border-radius: var(--#{$prefix}chart-border-radius);
33
33
  overflow: hidden;
34
- box-shadow:
34
+ box-shadow:
35
35
  0 1px 3px rgba(0, 0, 0, 0.12),
36
36
  0 1px 2px rgba(0, 0, 0, 0.24),
37
37
  0 0 0 1px rgba(var(--#{$prefix}primary-rgb), 0.05);
@@ -48,7 +48,7 @@
48
48
  content: '';
49
49
  position: absolute;
50
50
  inset: 0;
51
- background:
51
+ background:
52
52
  linear-gradient(
53
53
  135deg,
54
54
  rgba(var(--#{$prefix}primary-rgb), 0.08) 0%,
@@ -85,9 +85,13 @@
85
85
  rgba(var(--#{$prefix}secondary-rgb), 0.05),
86
86
  transparent
87
87
  );
88
- -webkit-mask: linear-gradient(#fff 0 0) content-box, linear-gradient(#fff 0 0);
88
+ -webkit-mask:
89
+ linear-gradient(#fff 0 0) content-box,
90
+ linear-gradient(#fff 0 0);
89
91
  -webkit-mask-composite: xor;
90
- mask: linear-gradient(#fff 0 0) content-box, linear-gradient(#fff 0 0);
92
+ mask:
93
+ linear-gradient(#fff 0 0) content-box,
94
+ linear-gradient(#fff 0 0);
91
95
  mask-composite: exclude;
92
96
  pointer-events: none;
93
97
  z-index: 2;
@@ -96,7 +100,7 @@
96
100
  }
97
101
 
98
102
  &:hover {
99
- box-shadow:
103
+ box-shadow:
100
104
  0 8px 24px rgba(0, 0, 0, 0.12),
101
105
  0 4px 8px rgba(0, 0, 0, 0.16),
102
106
  0 0 0 1px rgba(var(--#{$prefix}primary-rgb), 0.1),
@@ -143,14 +147,14 @@
143
147
  background: var(--#{$prefix}body-bg);
144
148
  }
145
149
  &--elevated {
146
- box-shadow:
150
+ box-shadow:
147
151
  0 12px 32px rgba(0, 0, 0, 0.15),
148
152
  0 6px 12px rgba(0, 0, 0, 0.2),
149
153
  0 0 0 1px rgba(var(--#{$prefix}primary-rgb), 0.1),
150
154
  0 0 60px rgba(var(--#{$prefix}primary-rgb), 0.12);
151
155
 
152
156
  &:hover {
153
- box-shadow:
157
+ box-shadow:
154
158
  0 16px 40px rgba(0, 0, 0, 0.18),
155
159
  0 8px 16px rgba(0, 0, 0, 0.24),
156
160
  0 0 0 1px rgba(var(--#{$prefix}primary-rgb), 0.15),
@@ -190,12 +194,12 @@
190
194
 
191
195
  &--selected {
192
196
  border-color: rgba(var(--#{$prefix}primary-rgb), 0.3);
193
- box-shadow:
197
+ box-shadow:
194
198
  0 4px 16px rgba(0, 0, 0, 0.1),
195
199
  0 2px 4px rgba(0, 0, 0, 0.12),
196
200
  0 0 0 2px rgba(var(--#{$prefix}primary-rgb), 0.2),
197
201
  0 0 30px rgba(var(--#{$prefix}primary-rgb), 0.15);
198
- background:
202
+ background:
199
203
  linear-gradient(
200
204
  135deg,
201
205
  rgba(var(--#{$prefix}primary-rgb), 0.08) 0%,
@@ -213,7 +217,7 @@
213
217
  cursor: pointer;
214
218
 
215
219
  &:hover {
216
- box-shadow:
220
+ box-shadow:
217
221
  0 8px 24px rgba(0, 0, 0, 0.12),
218
222
  0 4px 8px rgba(0, 0, 0, 0.16),
219
223
  0 0 0 1px rgba(var(--#{$prefix}primary-rgb), 0.1),
@@ -222,7 +226,7 @@
222
226
  }
223
227
 
224
228
  &:active {
225
- box-shadow:
229
+ box-shadow:
226
230
  0 2px 8px rgba(0, 0, 0, 0.1),
227
231
  0 1px 2px rgba(0, 0, 0, 0.12);
228
232
  }
@@ -601,14 +605,13 @@
601
605
  content: '';
602
606
  position: absolute;
603
607
  inset: 0;
604
- background:
605
- linear-gradient(
606
- 180deg,
607
- rgba(var(--#{$prefix}primary-rgb), 0.03) 0%,
608
- transparent 30%,
609
- transparent 70%,
610
- rgba(var(--#{$prefix}secondary-rgb), 0.02) 100%
611
- );
608
+ background: linear-gradient(
609
+ 180deg,
610
+ rgba(var(--#{$prefix}primary-rgb), 0.03) 0%,
611
+ transparent 30%,
612
+ transparent 70%,
613
+ rgba(var(--#{$prefix}secondary-rgb), 0.02) 100%
614
+ );
612
615
  pointer-events: none;
613
616
  z-index: 1;
614
617
  }
@@ -61,7 +61,9 @@
61
61
  content: '';
62
62
  transform: scale(0);
63
63
  opacity: 0;
64
- transition: transform 120ms ease-in-out, opacity 120ms ease-in-out;
64
+ transition:
65
+ transform 120ms ease-in-out,
66
+ opacity 120ms ease-in-out;
65
67
  font-size: 0.65em;
66
68
  line-height: 1;
67
69
  font-family: 'Lux Icon';
@@ -12,7 +12,9 @@
12
12
  cursor: pointer;
13
13
  padding: rem(8px);
14
14
  border-radius: 50%;
15
- transition: background-color 0.2s ease, opacity 0.2s ease;
15
+ transition:
16
+ background-color 0.2s ease,
17
+ opacity 0.2s ease;
16
18
  color: var(--#{$prefix}body-color);
17
19
 
18
20
  &:hover:not(:disabled) {
@@ -36,7 +36,6 @@
36
36
  position: absolute;
37
37
  inset: 0;
38
38
  @include dynamic-background(var(--#{$prefix}edge-panel-backdrop-bg));
39
- backdrop-filter: blur(var(--#{$prefix}edge-panel-backdrop-blur));
40
39
  opacity: 0;
41
40
  z-index: map.get($z-layers, 1);
42
41
  transition: opacity var(--#{$prefix}edge-panel-animation-duration) ease;
@@ -378,6 +377,10 @@
378
377
  padding: 0;
379
378
  border-radius: inherit;
380
379
  transition: opacity 0.3s ease;
380
+ @include dynamic-background(
381
+ var(--#{$prefix}edge-panel-bg),
382
+ $background-transparency-enable: true
383
+ );
381
384
  }
382
385
 
383
386
  .c-edge-panel__header {
@@ -407,6 +410,10 @@
407
410
  }
408
411
 
409
412
  .c-edge-panel__backdrop {
413
+ @include dynamic-background(
414
+ var(--#{$prefix}edge-panel-backdrop-bg),
415
+ $background-transparency-enable: true
416
+ );
410
417
  animation: fadeIn 0.3s ease forwards;
411
418
  z-index: 0;
412
419
 
@@ -432,7 +439,7 @@
432
439
  }
433
440
  }
434
441
 
435
- &.c-edge-panel--top .c-edge-panel__glass-content{
442
+ &.c-edge-panel--top .c-edge-panel__glass-content {
436
443
  animation: slideInTop 0.3s ease forwards;
437
444
  }
438
445
 
@@ -45,7 +45,7 @@
45
45
  border-radius: 0;
46
46
  box-shadow: none;
47
47
  background: transparent;
48
-
48
+
49
49
  #{$root}__glass {
50
50
  @include dynamic-background(rgba(var(--#{$prefix}footer-bg-rgb), 0.5, true));
51
51
  color: var(--#{$prefix}footer-color);
@@ -81,7 +81,7 @@
81
81
  font-weight: var(--#{config.$prefix}side-menu-title-font-weight);
82
82
  margin: 0;
83
83
  margin-bottom: var(--#{config.$prefix}side-menu-title-spacer-y);
84
-
84
+
85
85
  // When title is inside toggler, remove bottom margin
86
86
  #{$root}__toggler & {
87
87
  margin-bottom: 0;
@@ -256,7 +256,7 @@
256
256
  transform: rotate(90deg);
257
257
  }
258
258
  }
259
-
259
+
260
260
  // Nested wrapper open state (when nested toggler is open)
261
261
  &__toggler--nested.is-open + #{$root}__nested-wrapper {
262
262
  height: auto;
@@ -281,16 +281,16 @@
281
281
  #{$root}__toggler-icon {
282
282
  transition: none;
283
283
  }
284
-
284
+
285
285
  #{$root}__toggler:active {
286
286
  transform: none;
287
287
  }
288
-
288
+
289
289
  #{$root}__link:active {
290
290
  transform: none;
291
291
  }
292
292
  }
293
-
293
+
294
294
  // High contrast mode support
295
295
  @media (prefers-contrast: high) {
296
296
  #{$root}__toggler:focus-visible,
@@ -98,4 +98,22 @@
98
98
  }
99
99
  }
100
100
  }
101
+
102
+ // Glass morphism effect styles
103
+ &--glass {
104
+ --#{$prefix}toggle-switch-bg: transparent;
105
+
106
+ #{$root}__switch {
107
+ @include dynamic-background(
108
+ var(--#{$prefix}toggle-switch-bg),
109
+ $background-transparency-enable: true
110
+ );
111
+
112
+ &::before {
113
+ opacity: 0.5;
114
+ backdrop-filter: var(--#{$prefix}-glass-container-backdrop);
115
+ }
116
+ }
117
+ }
101
118
  }
119
+
@@ -51,4 +51,4 @@
51
51
  @forward 'components.upload';
52
52
  @forward 'components.video-player';
53
53
  @forward 'components.photoviewer';
54
- @forward 'components.image-gallery';
54
+ @forward 'components.image-gallery';
@@ -2354,7 +2354,6 @@ $chart-gradients: (
2354
2354
  font-size: $font-size-xs;
2355
2355
  }
2356
2356
 
2357
-
2358
2357
  .pie-slice:hover,
2359
2358
  .donut-slice:hover {
2360
2359
  transform: scale(1.02);
@@ -2724,7 +2723,6 @@ $chart-gradients: (
2724
2723
  }
2725
2724
  }
2726
2725
 
2727
-
2728
2726
  // CSS Grid support for complex layouts
2729
2727
  .c-chart--grid {
2730
2728
  display: grid;