@once-ui-system/core 1.6.3 → 1.7.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 (233) hide show
  1. package/LICENSE.md +21 -0
  2. package/dist/components/Avatar.d.ts +1 -0
  3. package/dist/components/Avatar.d.ts.map +1 -1
  4. package/dist/components/Avatar.js +2 -2
  5. package/dist/components/Avatar.js.map +1 -1
  6. package/dist/components/BlobFx.d.ts +8 -0
  7. package/dist/components/BlobFx.d.ts.map +1 -0
  8. package/dist/components/BlobFx.js +82 -0
  9. package/dist/components/BlobFx.js.map +1 -0
  10. package/dist/components/Button.d.ts +1 -1
  11. package/dist/components/Button.d.ts.map +1 -1
  12. package/dist/components/Button.js +2 -2
  13. package/dist/components/Button.js.map +1 -1
  14. package/dist/components/Button.module.scss +62 -32
  15. package/dist/components/CelebrationFx.d.ts +1 -0
  16. package/dist/components/CelebrationFx.d.ts.map +1 -1
  17. package/dist/components/CelebrationFx.js +7 -3
  18. package/dist/components/CelebrationFx.js.map +1 -1
  19. package/dist/components/ContextMenu.d.ts +1 -0
  20. package/dist/components/ContextMenu.d.ts.map +1 -1
  21. package/dist/components/ContextMenu.js +8 -4
  22. package/dist/components/ContextMenu.js.map +1 -1
  23. package/dist/components/Dialog.d.ts.map +1 -1
  24. package/dist/components/Dialog.js +99 -91
  25. package/dist/components/Dialog.js.map +1 -1
  26. package/dist/components/Dropdown.d.ts +1 -0
  27. package/dist/components/Dropdown.d.ts.map +1 -1
  28. package/dist/components/Dropdown.js +4 -2
  29. package/dist/components/Dropdown.js.map +1 -1
  30. package/dist/components/FadingLettersFx.d.ts +15 -0
  31. package/dist/components/FadingLettersFx.d.ts.map +1 -0
  32. package/dist/components/FadingLettersFx.js +27 -0
  33. package/dist/components/FadingLettersFx.js.map +1 -0
  34. package/dist/components/FadingLettersFx.module.scss +71 -0
  35. package/dist/components/HoloFx.d.ts +1 -0
  36. package/dist/components/HoloFx.d.ts.map +1 -1
  37. package/dist/components/HoloFx.js +10 -3
  38. package/dist/components/HoloFx.js.map +1 -1
  39. package/dist/components/IconButton.d.ts +5 -2
  40. package/dist/components/IconButton.d.ts.map +1 -1
  41. package/dist/components/IconButton.js +6 -4
  42. package/dist/components/IconButton.js.map +1 -1
  43. package/dist/components/IconButton.module.scss +14 -0
  44. package/dist/components/Input.d.ts +3 -1
  45. package/dist/components/Input.d.ts.map +1 -1
  46. package/dist/components/Input.js +18 -5
  47. package/dist/components/Input.js.map +1 -1
  48. package/dist/components/Input.module.scss +38 -3
  49. package/dist/components/Mask.d.ts +1 -0
  50. package/dist/components/Mask.d.ts.map +1 -1
  51. package/dist/components/Mask.js +56 -32
  52. package/dist/components/Mask.js.map +1 -1
  53. package/dist/components/MatrixFx.d.ts +1 -0
  54. package/dist/components/MatrixFx.d.ts.map +1 -1
  55. package/dist/components/MatrixFx.js +8 -1
  56. package/dist/components/MatrixFx.js.map +1 -1
  57. package/dist/components/Media.d.ts +5 -1
  58. package/dist/components/Media.d.ts.map +1 -1
  59. package/dist/components/Media.js +20 -7
  60. package/dist/components/Media.js.map +1 -1
  61. package/dist/components/Modal.d.ts +11 -0
  62. package/dist/components/Modal.d.ts.map +1 -0
  63. package/dist/components/Modal.js +72 -0
  64. package/dist/components/Modal.js.map +1 -0
  65. package/dist/components/NumberInput.d.ts.map +1 -1
  66. package/dist/components/NumberInput.js +1 -1
  67. package/dist/components/NumberInput.js.map +1 -1
  68. package/dist/components/Particle.d.ts +1 -0
  69. package/dist/components/Particle.d.ts.map +1 -1
  70. package/dist/components/Particle.js +86 -78
  71. package/dist/components/Particle.js.map +1 -1
  72. package/dist/components/ScrollContainer.d.ts +9 -0
  73. package/dist/components/ScrollContainer.d.ts.map +1 -0
  74. package/dist/components/ScrollContainer.js +67 -0
  75. package/dist/components/ScrollContainer.js.map +1 -0
  76. package/dist/components/ScrollLock.d.ts.map +1 -1
  77. package/dist/components/ScrollLock.js +4 -91
  78. package/dist/components/ScrollLock.js.map +1 -1
  79. package/dist/components/ServerFlex.d.ts.map +1 -1
  80. package/dist/components/ServerFlex.js +3 -3
  81. package/dist/components/ServerFlex.js.map +1 -1
  82. package/dist/components/ServerGrid.d.ts.map +1 -1
  83. package/dist/components/ServerGrid.js +2 -2
  84. package/dist/components/ServerGrid.js.map +1 -1
  85. package/dist/components/ShineFx.d.ts +1 -0
  86. package/dist/components/ShineFx.d.ts.map +1 -1
  87. package/dist/components/ShineFx.js +5 -2
  88. package/dist/components/ShineFx.js.map +1 -1
  89. package/dist/components/SplitView.d.ts +16 -0
  90. package/dist/components/SplitView.d.ts.map +1 -0
  91. package/dist/components/SplitView.js +80 -0
  92. package/dist/components/SplitView.js.map +1 -0
  93. package/dist/components/SplitView.module.scss +18 -0
  94. package/dist/components/StylePanel.d.ts.map +1 -1
  95. package/dist/components/StylePanel.js +10 -10
  96. package/dist/components/StylePanel.js.map +1 -1
  97. package/dist/components/Textarea.d.ts +2 -0
  98. package/dist/components/Textarea.d.ts.map +1 -1
  99. package/dist/components/Textarea.js +22 -12
  100. package/dist/components/Textarea.js.map +1 -1
  101. package/dist/components/ThemeInit.d.ts.map +1 -1
  102. package/dist/components/ThemeInit.js +39 -40
  103. package/dist/components/ThemeInit.js.map +1 -1
  104. package/dist/components/TiltFx.d.ts +1 -0
  105. package/dist/components/TiltFx.d.ts.map +1 -1
  106. package/dist/components/TiltFx.js +27 -10
  107. package/dist/components/TiltFx.js.map +1 -1
  108. package/dist/components/Timeline.d.ts +1 -1
  109. package/dist/components/Timeline.d.ts.map +1 -1
  110. package/dist/components/Timeline.js +50 -6
  111. package/dist/components/Timeline.js.map +1 -1
  112. package/dist/components/ToggleButton.d.ts +2 -1
  113. package/dist/components/ToggleButton.d.ts.map +1 -1
  114. package/dist/components/ToggleButton.js +3 -3
  115. package/dist/components/ToggleButton.js.map +1 -1
  116. package/dist/components/ToggleButton.module.scss +27 -8
  117. package/dist/components/TypeFx.d.ts.map +1 -1
  118. package/dist/components/TypeFx.js +66 -87
  119. package/dist/components/TypeFx.js.map +1 -1
  120. package/dist/components/WeatherFx.d.ts +1 -0
  121. package/dist/components/WeatherFx.d.ts.map +1 -1
  122. package/dist/components/WeatherFx.js +97 -2
  123. package/dist/components/WeatherFx.js.map +1 -1
  124. package/dist/components/index.d.ts +9 -1
  125. package/dist/components/index.d.ts.map +1 -1
  126. package/dist/components/index.js +9 -1
  127. package/dist/components/index.js.map +1 -1
  128. package/dist/css/styles.css +1 -1
  129. package/dist/css/styles.css.map +1 -1
  130. package/dist/css/tokens.css +1 -1
  131. package/dist/css/tokens.css.map +1 -1
  132. package/dist/data/emoji-data.json +0 -8
  133. package/dist/hooks/index.d.ts +2 -0
  134. package/dist/hooks/index.d.ts.map +1 -1
  135. package/dist/hooks/index.js +2 -0
  136. package/dist/hooks/index.js.map +1 -1
  137. package/dist/hooks/useInViewport.d.ts +3 -0
  138. package/dist/hooks/useInViewport.d.ts.map +1 -0
  139. package/dist/hooks/useInViewport.js +19 -0
  140. package/dist/hooks/useInViewport.js.map +1 -0
  141. package/dist/hooks/useReducedMotion.d.ts +8 -0
  142. package/dist/hooks/useReducedMotion.d.ts.map +1 -0
  143. package/dist/hooks/useReducedMotion.js +44 -0
  144. package/dist/hooks/useReducedMotion.js.map +1 -0
  145. package/dist/interfaces.d.ts +1 -0
  146. package/dist/interfaces.d.ts.map +1 -1
  147. package/dist/internal/dialogState.d.ts +17 -0
  148. package/dist/internal/dialogState.d.ts.map +1 -0
  149. package/dist/internal/dialogState.js +101 -0
  150. package/dist/internal/dialogState.js.map +1 -0
  151. package/dist/internal/scrollLockState.d.ts +15 -0
  152. package/dist/internal/scrollLockState.d.ts.map +1 -0
  153. package/dist/internal/scrollLockState.js +172 -0
  154. package/dist/internal/scrollLockState.js.map +1 -0
  155. package/dist/modules/code/CodeBlock.d.ts +3 -31
  156. package/dist/modules/code/CodeBlock.d.ts.map +1 -1
  157. package/dist/modules/code/CodeBlock.impl.d.ts +34 -0
  158. package/dist/modules/code/CodeBlock.impl.d.ts.map +1 -0
  159. package/dist/modules/code/CodeBlock.impl.js +487 -0
  160. package/dist/modules/code/CodeBlock.impl.js.map +1 -0
  161. package/dist/modules/code/CodeBlock.js +10 -483
  162. package/dist/modules/code/CodeBlock.js.map +1 -1
  163. package/dist/modules/data/BarChart.d.ts +1 -8
  164. package/dist/modules/data/BarChart.d.ts.map +1 -1
  165. package/dist/modules/data/BarChart.impl.d.ts +12 -0
  166. package/dist/modules/data/BarChart.impl.d.ts.map +1 -0
  167. package/dist/modules/data/BarChart.impl.js +137 -0
  168. package/dist/modules/data/BarChart.impl.js.map +1 -0
  169. package/dist/modules/data/BarChart.js +9 -132
  170. package/dist/modules/data/BarChart.js.map +1 -1
  171. package/dist/modules/data/DataTooltip.d.ts +2 -2
  172. package/dist/modules/data/DataTooltip.d.ts.map +1 -1
  173. package/dist/modules/data/Legend.d.ts +1 -1
  174. package/dist/modules/data/Legend.d.ts.map +1 -1
  175. package/dist/modules/data/LineBarChart.d.ts +1 -8
  176. package/dist/modules/data/LineBarChart.d.ts.map +1 -1
  177. package/dist/modules/data/LineBarChart.impl.d.ts +12 -0
  178. package/dist/modules/data/LineBarChart.impl.d.ts.map +1 -0
  179. package/dist/modules/data/LineBarChart.impl.js +142 -0
  180. package/dist/modules/data/LineBarChart.impl.js.map +1 -0
  181. package/dist/modules/data/LineBarChart.js +9 -137
  182. package/dist/modules/data/LineBarChart.js.map +1 -1
  183. package/dist/modules/data/LineChart.d.ts +1 -13
  184. package/dist/modules/data/LineChart.d.ts.map +1 -1
  185. package/dist/modules/data/LineChart.impl.d.ts +17 -0
  186. package/dist/modules/data/LineChart.impl.d.ts.map +1 -0
  187. package/dist/modules/data/LineChart.impl.js +148 -0
  188. package/dist/modules/data/LineChart.impl.js.map +1 -0
  189. package/dist/modules/data/LineChart.js +9 -143
  190. package/dist/modules/data/LineChart.js.map +1 -1
  191. package/dist/modules/data/PieChart.d.ts +4 -16
  192. package/dist/modules/data/PieChart.d.ts.map +1 -1
  193. package/dist/modules/data/PieChart.impl.d.ts +18 -0
  194. package/dist/modules/data/PieChart.impl.d.ts.map +1 -0
  195. package/dist/modules/data/PieChart.impl.js +102 -0
  196. package/dist/modules/data/PieChart.impl.js.map +1 -0
  197. package/dist/modules/data/PieChart.js +11 -97
  198. package/dist/modules/data/PieChart.js.map +1 -1
  199. package/dist/modules/media/MediaUpload.d.ts +2 -20
  200. package/dist/modules/media/MediaUpload.d.ts.map +1 -1
  201. package/dist/modules/media/MediaUpload.impl.d.ts +24 -0
  202. package/dist/modules/media/MediaUpload.impl.d.ts.map +1 -0
  203. package/dist/modules/media/MediaUpload.impl.js +92 -0
  204. package/dist/modules/media/MediaUpload.impl.js.map +1 -0
  205. package/dist/modules/media/MediaUpload.js +10 -88
  206. package/dist/modules/media/MediaUpload.js.map +1 -1
  207. package/dist/modules/navigation/Kbar.d.ts.map +1 -1
  208. package/dist/modules/navigation/Kbar.js +13 -28
  209. package/dist/modules/navigation/Kbar.js.map +1 -1
  210. package/dist/package.json +17 -6
  211. package/dist/styles/size.scss +20 -0
  212. package/dist/styles/typography.scss +8 -40
  213. package/dist/test/dialogTestUtils.d.ts +2 -0
  214. package/dist/test/dialogTestUtils.d.ts.map +1 -0
  215. package/dist/test/dialogTestUtils.js +9 -0
  216. package/dist/test/dialogTestUtils.js.map +1 -0
  217. package/dist/test/setup.d.ts +2 -0
  218. package/dist/test/setup.d.ts.map +1 -0
  219. package/dist/test/setup.js +59 -0
  220. package/dist/test/setup.js.map +1 -0
  221. package/dist/tokens/layout.scss +5 -0
  222. package/dist/utils/MissingDependency.d.ts +7 -0
  223. package/dist/utils/MissingDependency.d.ts.map +1 -0
  224. package/dist/utils/MissingDependency.js +6 -0
  225. package/dist/utils/MissingDependency.js.map +1 -0
  226. package/dist/utils/index.d.ts +1 -0
  227. package/dist/utils/index.d.ts.map +1 -1
  228. package/dist/utils/index.js +1 -0
  229. package/dist/utils/index.js.map +1 -1
  230. package/next-env.d.ts +5 -0
  231. package/package.json +135 -115
  232. package/tsconfig.vitest.json +20 -0
  233. package/vitest.config.ts +19 -0
@@ -2,17 +2,19 @@
2
2
  import { jsx as _jsx } from "react/jsx-runtime";
3
3
  import { forwardRef } from "react";
4
4
  import { ElementType } from "./ElementType";
5
- import { Flex, Icon, Tooltip, HoverCard } from ".";
5
+ import { Flex, Icon, Tooltip, HoverCard, Spinner } from ".";
6
6
  import buttonStyles from "./Button.module.scss";
7
7
  import iconStyles from "./IconButton.module.scss";
8
8
  import classNames from "classnames";
9
- const IconButton = forwardRef(({ icon = "refresh", size = "m", id, radius, tooltip, tooltipPosition = "top", variant = "primary", href, children, className, style, ...props }, ref) => {
9
+ const IconButton = forwardRef(({ icon = "refresh", size = "m", id, radius, rounded = false, tooltip, tooltipPosition = "top", variant = "primary", loading = false, disabled = false, href, children, className, style, ...props }, ref) => {
10
10
  const radiusSize = size === "s" || size === "m" ? "m" : "l";
11
- const button = (_jsx(ElementType, { id: id, href: href, ref: ref, className: classNames(buttonStyles.button, buttonStyles[variant], iconStyles[size], className, radius === "none"
11
+ const button = (_jsx(ElementType, { id: id, href: href, ref: ref, disabled: disabled, "data-border": rounded ? "rounded" : undefined, className: classNames(buttonStyles.button, buttonStyles[variant], iconStyles[size], className, radius === "none"
12
12
  ? "radius-none"
13
13
  : radius
14
14
  ? `radius-${radiusSize}-${radius}`
15
- : `radius-${radiusSize}`, "text-decoration-none", "button", "cursor-interactive", className), style: style, "aria-label": tooltip || icon, ...props, children: _jsx(Flex, { fill: true, center: true, children: children ? children : _jsx(Icon, { name: icon, size: "s" }) }) }));
15
+ : `radius-${radiusSize}`, "text-decoration-none", "button", disabled ? "cursor-not-allowed" : "cursor-interactive", {
16
+ [buttonStyles.disabled]: disabled,
17
+ }, className), style: style, "aria-label": tooltip || icon, "aria-disabled": disabled, ...props, children: _jsx(Flex, { fill: true, center: true, children: loading ? (_jsx(Spinner, { size: size === "l" ? "s" : "xs" })) : children ? (children) : (_jsx(Icon, { name: icon, size: "s" })) }) }));
16
18
  if (tooltip) {
17
19
  return (_jsx(HoverCard, { trigger: button, placement: tooltipPosition, fade: 0, scale: 0.9, duration: 200, offsetDistance: "4", children: _jsx(Tooltip, { label: tooltip }) }));
18
20
  }
@@ -1 +1 @@
1
- {"version":3,"file":"IconButton.js","sourceRoot":"","sources":["../../src/components/IconButton.tsx"],"names":[],"mappings":"AAAA,YAAY,CAAC;;AAEb,OAAc,EAAE,UAAU,EAAa,MAAM,OAAO,CAAC;AACrD,OAAO,EAAE,WAAW,EAAE,MAAM,eAAe,CAAC;AAC5C,OAAO,EAAE,IAAI,EAAE,IAAI,EAAE,OAAO,EAAE,SAAS,EAAE,MAAM,GAAG,CAAC;AACnD,OAAO,YAAY,MAAM,sBAAsB,CAAC;AAChD,OAAO,UAAU,MAAM,0BAA0B,CAAC;AAClD,OAAO,UAAU,MAAM,YAAY,CAAC;AA6BpC,MAAM,UAAU,GAAG,UAAU,CAC3B,CACE,EACE,IAAI,GAAG,SAAS,EAChB,IAAI,GAAG,GAAG,EACV,EAAE,EACF,MAAM,EACN,OAAO,EACP,eAAe,GAAG,KAAK,EACvB,OAAO,GAAG,SAAS,EACnB,IAAI,EACJ,QAAQ,EACR,SAAS,EACT,KAAK,EACL,GAAG,KAAK,EACT,EACD,GAAG,EACH,EAAE;IACF,MAAM,UAAU,GAAG,IAAI,KAAK,GAAG,IAAI,IAAI,KAAK,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC;IAE5D,MAAM,MAAM,GAAG,CACb,KAAC,WAAW,IACV,EAAE,EAAE,EAAE,EACN,IAAI,EAAE,IAAI,EACV,GAAG,EAAE,GAAG,EACR,SAAS,EAAE,UAAU,CACnB,YAAY,CAAC,MAAM,EACnB,YAAY,CAAC,OAAO,CAAC,EACrB,UAAU,CAAC,IAAI,CAAC,EAChB,SAAS,EACT,MAAM,KAAK,MAAM;YACf,CAAC,CAAC,aAAa;YACf,CAAC,CAAC,MAAM;gBACN,CAAC,CAAC,UAAU,UAAU,IAAI,MAAM,EAAE;gBAClC,CAAC,CAAC,UAAU,UAAU,EAAE,EAC5B,sBAAsB,EACtB,QAAQ,EACR,oBAAoB,EACpB,SAAS,CACV,EACD,KAAK,EAAE,KAAK,gBACA,OAAO,IAAI,IAAI,KACvB,KAAK,YAET,KAAC,IAAI,IAAC,IAAI,QAAC,MAAM,kBACd,QAAQ,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,KAAC,IAAI,IAAC,IAAI,EAAE,IAAI,EAAE,IAAI,EAAC,GAAG,GAAG,GAC/C,GACK,CACf,CAAC;IAEF,IAAI,OAAO,EAAE,CAAC;QACZ,OAAO,CACL,KAAC,SAAS,IACR,OAAO,EAAE,MAAM,EACf,SAAS,EAAE,eAAe,EAC1B,IAAI,EAAE,CAAC,EACP,KAAK,EAAE,GAAG,EACV,QAAQ,EAAE,GAAG,EACb,cAAc,EAAC,GAAG,YAElB,KAAC,OAAO,IAAC,KAAK,EAAE,OAAO,GAAI,GACjB,CACb,CAAC;IACJ,CAAC;IAED,OAAO,MAAM,CAAC;AAChB,CAAC,CACF,CAAC;AAEF,UAAU,CAAC,WAAW,GAAG,YAAY,CAAC;AACtC,OAAO,EAAE,UAAU,EAAE,CAAC"}
1
+ {"version":3,"file":"IconButton.js","sourceRoot":"","sources":["../../src/components/IconButton.tsx"],"names":[],"mappings":"AAAA,YAAY,CAAC;;AAEb,OAAc,EAAE,UAAU,EAAa,MAAM,OAAO,CAAC;AACrD,OAAO,EAAE,WAAW,EAAE,MAAM,eAAe,CAAC;AAC5C,OAAO,EAAE,IAAI,EAAE,IAAI,EAAE,OAAO,EAAE,SAAS,EAAE,OAAO,EAAE,MAAM,GAAG,CAAC;AAC5D,OAAO,YAAY,MAAM,sBAAsB,CAAC;AAChD,OAAO,UAAU,MAAM,0BAA0B,CAAC;AAClD,OAAO,UAAU,MAAM,YAAY,CAAC;AAgCpC,MAAM,UAAU,GAAG,UAAU,CAC3B,CACE,EACE,IAAI,GAAG,SAAS,EAChB,IAAI,GAAG,GAAG,EACV,EAAE,EACF,MAAM,EACN,OAAO,GAAG,KAAK,EACf,OAAO,EACP,eAAe,GAAG,KAAK,EACvB,OAAO,GAAG,SAAS,EACnB,OAAO,GAAG,KAAK,EACf,QAAQ,GAAG,KAAK,EAChB,IAAI,EACJ,QAAQ,EACR,SAAS,EACT,KAAK,EACL,GAAG,KAAK,EACT,EACD,GAAG,EACH,EAAE;IACF,MAAM,UAAU,GAAG,IAAI,KAAK,GAAG,IAAI,IAAI,KAAK,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC;IAE5D,MAAM,MAAM,GAAG,CACb,KAAC,WAAW,IACV,EAAE,EAAE,EAAE,EACN,IAAI,EAAE,IAAI,EACV,GAAG,EAAE,GAAG,EACR,QAAQ,EAAE,QAAQ,iBACL,OAAO,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,SAAS,EAC5C,SAAS,EAAE,UAAU,CACnB,YAAY,CAAC,MAAM,EACnB,YAAY,CAAC,OAAO,CAAC,EACrB,UAAU,CAAC,IAAI,CAAC,EAChB,SAAS,EACT,MAAM,KAAK,MAAM;YACf,CAAC,CAAC,aAAa;YACf,CAAC,CAAC,MAAM;gBACN,CAAC,CAAC,UAAU,UAAU,IAAI,MAAM,EAAE;gBAClC,CAAC,CAAC,UAAU,UAAU,EAAE,EAC5B,sBAAsB,EACtB,QAAQ,EACR,QAAQ,CAAC,CAAC,CAAC,oBAAoB,CAAC,CAAC,CAAC,oBAAoB,EACtD;YACE,CAAC,YAAY,CAAC,QAAQ,CAAC,EAAE,QAAQ;SAClC,EACD,SAAS,CACV,EACD,KAAK,EAAE,KAAK,gBACA,OAAO,IAAI,IAAI,mBACZ,QAAQ,KACnB,KAAK,YAET,KAAC,IAAI,IAAC,IAAI,QAAC,MAAM,kBACd,OAAO,CAAC,CAAC,CAAC,CACT,KAAC,OAAO,IAAC,IAAI,EAAE,IAAI,KAAK,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,IAAI,GAAI,CAC7C,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,CACb,QAAQ,CACT,CAAC,CAAC,CAAC,CACF,KAAC,IAAI,IAAC,IAAI,EAAE,IAAI,EAAE,IAAI,EAAC,GAAG,GAAG,CAC9B,GACI,GACK,CACf,CAAC;IAEF,IAAI,OAAO,EAAE,CAAC;QACZ,OAAO,CACL,KAAC,SAAS,IACR,OAAO,EAAE,MAAM,EACf,SAAS,EAAE,eAAe,EAC1B,IAAI,EAAE,CAAC,EACP,KAAK,EAAE,GAAG,EACV,QAAQ,EAAE,GAAG,EACb,cAAc,EAAC,GAAG,YAElB,KAAC,OAAO,IAAC,KAAK,EAAE,OAAO,GAAI,GACjB,CACb,CAAC;IACJ,CAAC;IAED,OAAO,MAAM,CAAC;AAChB,CAAC,CACF,CAAC;AAEF,UAAU,CAAC,WAAW,GAAG,YAAY,CAAC;AACtC,OAAO,EAAE,UAAU,EAAE,CAAC"}
@@ -1,3 +1,10 @@
1
+ .xs {
2
+ min-height: var(--static-space-20);
3
+ min-width: var(--static-space-20);
4
+ height: var(--static-space-20);
5
+ width: var(--static-space-20);
6
+ }
7
+
1
8
  .s {
2
9
  min-height: var(--static-space-24);
3
10
  min-width: var(--static-space-24);
@@ -17,4 +24,11 @@
17
24
  min-width: var(--static-space-40);
18
25
  height: var(--static-space-40);
19
26
  width: var(--static-space-40);
27
+ }
28
+
29
+ .xl {
30
+ min-height: var(--static-space-48);
31
+ min-width: var(--static-space-48);
32
+ height: var(--static-space-48);
33
+ width: var(--static-space-48);
20
34
  }
@@ -3,7 +3,7 @@ interface InputProps extends InputHTMLAttributes<HTMLInputElement> {
3
3
  id: string;
4
4
  label?: string;
5
5
  placeholder?: string;
6
- height?: "s" | "m";
6
+ height?: "xs" | "s" | "m" | "l" | "xl";
7
7
  error?: boolean;
8
8
  errorMessage?: ReactNode;
9
9
  description?: ReactNode;
@@ -12,9 +12,11 @@ interface InputProps extends InputHTMLAttributes<HTMLInputElement> {
12
12
  style?: React.CSSProperties;
13
13
  hasPrefix?: ReactNode;
14
14
  hasSuffix?: ReactNode;
15
+ variant?: "default" | "ghost";
15
16
  characterCount?: boolean;
16
17
  cursor?: undefined | "interactive";
17
18
  validate?: (value: ReactNode) => ReactNode | null;
19
+ loading?: boolean;
18
20
  }
19
21
  declare const Input: React.ForwardRefExoticComponent<InputProps & React.RefAttributes<HTMLInputElement>>;
20
22
  export { Input };
@@ -1 +1 @@
1
- {"version":3,"file":"Input.d.ts","sourceRoot":"","sources":["../../src/components/Input.tsx"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,EAIZ,mBAAmB,EAEnB,SAAS,EACV,MAAM,OAAO,CAAC;AAMf,UAAU,UAAW,SAAQ,mBAAmB,CAAC,gBAAgB,CAAC;IAChE,EAAE,EAAE,MAAM,CAAC;IACX,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,MAAM,CAAC,EAAE,GAAG,GAAG,GAAG,CAAC;IACnB,KAAK,CAAC,EAAE,OAAO,CAAC;IAChB,YAAY,CAAC,EAAE,SAAS,CAAC;IACzB,WAAW,CAAC,EAAE,SAAS,CAAC;IACxB,MAAM,CAAC,EACH,MAAM,GACN,KAAK,GACL,OAAO,GACP,QAAQ,GACR,MAAM,GACN,UAAU,GACV,WAAW,GACX,cAAc,GACd,aAAa,CAAC;IAClB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,KAAK,CAAC,EAAE,KAAK,CAAC,aAAa,CAAC;IAC5B,SAAS,CAAC,EAAE,SAAS,CAAC;IACtB,SAAS,CAAC,EAAE,SAAS,CAAC;IACtB,cAAc,CAAC,EAAE,OAAO,CAAC;IACzB,MAAM,CAAC,EAAE,SAAS,GAAG,aAAa,CAAC;IACnC,QAAQ,CAAC,EAAE,CAAC,KAAK,EAAE,SAAS,KAAK,SAAS,GAAG,IAAI,CAAC;CACnD;AAED,QAAA,MAAM,KAAK,qFAuLV,CAAC;AAIF,OAAO,EAAE,KAAK,EAAE,CAAC;AACjB,YAAY,EAAE,UAAU,EAAE,CAAC"}
1
+ {"version":3,"file":"Input.d.ts","sourceRoot":"","sources":["../../src/components/Input.tsx"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,EAIZ,mBAAmB,EAEnB,SAAS,EACV,MAAM,OAAO,CAAC;AAMf,UAAU,UAAW,SAAQ,mBAAmB,CAAC,gBAAgB,CAAC;IAChE,EAAE,EAAE,MAAM,CAAC;IACX,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,MAAM,CAAC,EAAE,IAAI,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,IAAI,CAAC;IACvC,KAAK,CAAC,EAAE,OAAO,CAAC;IAChB,YAAY,CAAC,EAAE,SAAS,CAAC;IACzB,WAAW,CAAC,EAAE,SAAS,CAAC;IACxB,MAAM,CAAC,EACH,MAAM,GACN,KAAK,GACL,OAAO,GACP,QAAQ,GACR,MAAM,GACN,UAAU,GACV,WAAW,GACX,cAAc,GACd,aAAa,CAAC;IAClB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,KAAK,CAAC,EAAE,KAAK,CAAC,aAAa,CAAC;IAC5B,SAAS,CAAC,EAAE,SAAS,CAAC;IACtB,SAAS,CAAC,EAAE,SAAS,CAAC;IACtB,OAAO,CAAC,EAAE,SAAS,GAAG,OAAO,CAAC;IAC9B,cAAc,CAAC,EAAE,OAAO,CAAC;IACzB,MAAM,CAAC,EAAE,SAAS,GAAG,aAAa,CAAC;IACnC,QAAQ,CAAC,EAAE,CAAC,KAAK,EAAE,SAAS,KAAK,SAAS,GAAG,IAAI,CAAC;IAClD,OAAO,CAAC,EAAE,OAAO,CAAC;CACnB;AAED,QAAA,MAAM,KAAK,qFA+MV,CAAC;AAIF,OAAO,EAAE,KAAK,EAAE,CAAC;AACjB,YAAY,EAAE,UAAU,EAAE,CAAC"}
@@ -2,10 +2,10 @@
2
2
  import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
3
3
  import { useState, useEffect, forwardRef, useCallback, } from "react";
4
4
  import classNames from "classnames";
5
- import { Column, Row, Text } from ".";
5
+ import { Column, Row, Text, Spinner } from ".";
6
6
  import styles from "./Input.module.scss";
7
7
  import { useDebounce } from "../hooks/useDebounce";
8
- const Input = forwardRef(({ id, label, placeholder, height = "m", error = false, errorMessage, description, radius, className, style, hasPrefix, hasSuffix, characterCount, children, onFocus, onBlur, validate, cursor, ...props }, ref) => {
8
+ const Input = forwardRef(({ id, label, placeholder, height = "m", error = false, errorMessage, description, radius, className, style, hasPrefix, hasSuffix, variant = "default", characterCount, loading = false, children, onFocus, onBlur, validate, cursor, ...props }, ref) => {
9
9
  const [isFocused, setIsFocused] = useState(false);
10
10
  const [isFilled, setIsFilled] = useState(!!props.value);
11
11
  const [validationError, setValidationError] = useState(null);
@@ -51,7 +51,14 @@ const Input = forwardRef(({ id, label, placeholder, height = "m", error = false,
51
51
  validateInput();
52
52
  }, [debouncedValue, validateInput]);
53
53
  const displayError = validationError || errorMessage;
54
- const inputClassNames = classNames(styles.input, "font-body", "font-default", "font-m", cursor === "interactive" ? "cursor-interactive" : undefined, {
54
+ const fontSizeMap = {
55
+ xs: "font-xs",
56
+ s: "font-s",
57
+ m: "font-m",
58
+ l: "font-l",
59
+ xl: "font-xl",
60
+ };
61
+ const inputClassNames = classNames(styles.input, "font-body", "font-default", fontSizeMap[height], cursor === "interactive" ? "cursor-interactive" : undefined, {
55
62
  [styles.filled]: isFilled,
56
63
  [styles.focused]: isFocused,
57
64
  [styles.withPrefix]: hasPrefix,
@@ -62,17 +69,23 @@ const Input = forwardRef(({ id, label, placeholder, height = "m", error = false,
62
69
  });
63
70
  return (_jsxs(Column, { gap: "8", style: style, fillWidth: true, fitHeight: true, className: classNames(className, {
64
71
  [styles.error]: (error || (displayError && debouncedValue !== "")) && props.value !== "",
65
- }), children: [_jsxs(Row, { transition: "micro-medium", border: "neutral-medium", background: "neutral-alpha-weak", overflow: "hidden", vertical: "stretch", className: classNames(styles.base, {
72
+ }), children: [_jsxs(Row, { transition: "micro-medium", border: variant === "ghost" ? "transparent" : "neutral-medium", background: variant === "ghost" ? "transparent" : "neutral-alpha-weak", overflow: "hidden", vertical: "stretch", className: classNames(styles.base, {
73
+ [styles.xs]: height === "xs",
74
+ }, {
66
75
  [styles.s]: height === "s",
67
76
  }, {
68
77
  [styles.m]: height === "m",
78
+ }, {
79
+ [styles.l]: height === "l",
80
+ }, {
81
+ [styles.xl]: height === "xl",
69
82
  }, radius === "none" ? "radius-none" : radius ? `radius-l-${radius}` : "radius-l"), children: [hasPrefix && (_jsx(Row, { paddingLeft: "12", className: styles.prefix, position: "static", children: hasPrefix })), _jsxs(Column, { fillWidth: true, children: [_jsx("input", { ...props, ref: ref, id: id, placeholder: placeholder, onFocus: handleFocus, onBlur: handleBlur, className: inputClassNames, "aria-describedby": displayError ? `${id}-error` : undefined, "aria-invalid": !!displayError }), label && (_jsx(Text, { as: "label", variant: "label-default-m", htmlFor: id, className: classNames(styles.label, styles.inputLabel, {
70
83
  [styles.floating]: isFocused || isFilled || placeholder,
71
84
  }), children: label })), children] }), characterCount && props.maxLength && (_jsx(Row, { paddingRight: "12", className: styles.suffix, position: "static", children: _jsx(Text, { variant: "label-default-s", onBackground: props.maxLength - String(props.value || '').length <= 5
72
85
  ? "danger-weak"
73
86
  : props.maxLength - String(props.value || '').length <= 10
74
87
  ? "warning-weak"
75
- : "neutral-weak", children: props.maxLength - String(props.value || '').length }) })), hasSuffix && (_jsx(Row, { paddingRight: "12", className: styles.suffix, position: "static", children: hasSuffix }))] }), displayError && errorMessage !== false && (_jsx(Row, { paddingX: "16", id: `${id}-error`, textVariant: "body-default-s", onBackground: "danger-weak", children: validationError || errorMessage })), description && (_jsx(Row, { paddingX: "16", id: `${id}-description`, textVariant: "body-default-s", onBackground: "neutral-weak", children: description }))] }));
88
+ : "neutral-weak", children: props.maxLength - String(props.value || '').length }) })), loading && (_jsx(Row, { paddingRight: "12", className: styles.suffix, position: "static", children: _jsx(Spinner, { size: "s" }) })), hasSuffix && !loading && (_jsx(Row, { paddingRight: "12", className: styles.suffix, position: "static", children: hasSuffix }))] }), displayError && errorMessage !== false && (_jsx(Row, { paddingX: "16", id: `${id}-error`, textVariant: "body-default-s", onBackground: "danger-weak", children: validationError || errorMessage })), description && (_jsx(Row, { paddingX: "16", id: `${id}-description`, textVariant: "body-default-s", onBackground: "neutral-weak", children: description }))] }));
76
89
  });
77
90
  Input.displayName = "Input";
78
91
  export { Input };
@@ -1 +1 @@
1
- {"version":3,"file":"Input.js","sourceRoot":"","sources":["../../src/components/Input.tsx"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"Input.js","sourceRoot":"","sources":["../../src/components/Input.tsx"],"names":[],"mappings":"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"}
@@ -51,10 +51,22 @@
51
51
  }
52
52
 
53
53
  .textareaLabel {
54
- top: var(--static-space-16);
54
+ top: var(--static-space-12);
55
+ }
55
56
 
56
- &.floating {
57
- transform: scale(0.75) translateY(calc(-1 * var(--static-space-16)));
57
+ .xs {
58
+ min-height: var(--static-space-40);
59
+
60
+ .label {
61
+ &.floating {
62
+ top: calc(var(--static-space-4) - var(--static-space-1));
63
+ }
64
+ }
65
+
66
+ .inputLabel {
67
+ &.floating {
68
+ transform: scale(0.6);
69
+ }
58
70
  }
59
71
  }
60
72
 
@@ -69,6 +81,8 @@
69
81
  }
70
82
 
71
83
  .m {
84
+ min-height: var(--static-space-56);
85
+
72
86
  .label {
73
87
  &.floating {
74
88
  top: calc(var(--static-space-8) - var(--static-space-2));
@@ -76,6 +90,26 @@
76
90
  }
77
91
  }
78
92
 
93
+ .l {
94
+ min-height: var(--static-space-64);
95
+
96
+ .label {
97
+ &.floating {
98
+ top: calc(var(--static-space-8) - var(--static-space-2));
99
+ }
100
+ }
101
+ }
102
+
103
+ .xl {
104
+ min-height: var(--static-space-72);
105
+
106
+ .label {
107
+ &.floating {
108
+ top: calc(var(--static-space-12) - var(--static-space-2));
109
+ }
110
+ }
111
+ }
112
+
79
113
  .input {
80
114
  width: 100%;
81
115
  height: 100%;
@@ -84,6 +118,7 @@
84
118
  color: var(--neutral-on-background-strong);
85
119
  padding: 0 var(--static-space-16);
86
120
  outline: none;
121
+ border-radius: var(--radius-8);
87
122
 
88
123
  &.placeholder {
89
124
  padding-top: 0;
@@ -5,6 +5,7 @@ export interface MaskProps extends Omit<React.ComponentProps<typeof Flex>, "radi
5
5
  x?: number;
6
6
  y?: number;
7
7
  radius?: number;
8
+ reducedMotion?: boolean | "auto";
8
9
  className?: string;
9
10
  style?: React.CSSProperties;
10
11
  children?: React.ReactNode;
@@ -1 +1 @@
1
- {"version":3,"file":"Mask.d.ts","sourceRoot":"","sources":["../../src/components/Mask.tsx"],"names":[],"mappings":"AAEA,OAAO,KAAiE,MAAM,OAAO,CAAC;AACtF,OAAO,EAAE,IAAI,EAAE,MAAM,GAAG,CAAC;AAIzB,MAAM,WAAW,SAAU,SAAQ,IAAI,CAAC,KAAK,CAAC,cAAc,CAAC,OAAO,IAAI,CAAC,EAAE,QAAQ,GAAG,QAAQ,CAAC;IAC7F,MAAM,CAAC,EAAE,OAAO,CAAC;IACjB,CAAC,CAAC,EAAE,MAAM,CAAC;IACX,CAAC,CAAC,EAAE,MAAM,CAAC;IACX,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,KAAK,CAAC,EAAE,KAAK,CAAC,aAAa,CAAC;IAC5B,QAAQ,CAAC,EAAE,KAAK,CAAC,SAAS,CAAC;CAC5B;AAED,QAAA,MAAM,IAAI,+FAqGT,CAAC;AAGF,OAAO,EAAE,IAAI,EAAE,CAAC"}
1
+ {"version":3,"file":"Mask.d.ts","sourceRoot":"","sources":["../../src/components/Mask.tsx"],"names":[],"mappings":"AAEA,OAAO,KAAoE,MAAM,OAAO,CAAC;AACzF,OAAO,EAAE,IAAI,EAAE,MAAM,GAAG,CAAC;AAMzB,MAAM,WAAW,SAAU,SAAQ,IAAI,CAAC,KAAK,CAAC,cAAc,CAAC,OAAO,IAAI,CAAC,EAAE,QAAQ,GAAG,QAAQ,CAAC;IAC7F,MAAM,CAAC,EAAE,OAAO,CAAC;IACjB,CAAC,CAAC,EAAE,MAAM,CAAC;IACX,CAAC,CAAC,EAAE,MAAM,CAAC;IACX,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,aAAa,CAAC,EAAE,OAAO,GAAG,MAAM,CAAC;IACjC,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,KAAK,CAAC,EAAE,KAAK,CAAC,aAAa,CAAC;IAC5B,QAAQ,CAAC,EAAE,KAAK,CAAC,SAAS,CAAC;CAC5B;AAED,QAAA,MAAM,IAAI,+FA8HT,CAAC;AAGF,OAAO,EAAE,IAAI,EAAE,CAAC"}
@@ -1,13 +1,19 @@
1
1
  "use client";
2
2
  import { jsx as _jsx } from "react/jsx-runtime";
3
- import { forwardRef, useEffect, useRef, useState } from "react";
3
+ import { forwardRef, useCallback, useEffect, useRef } from "react";
4
4
  import { Flex } from ".";
5
5
  import styles from "./Mask.module.scss";
6
6
  import classNames from "classnames";
7
- const Mask = forwardRef(({ cursor = false, x, y, radius = 50, children, className, style, ...rest }, forwardedRef) => {
8
- const [cursorPosition, setCursorPosition] = useState({ x: 0, y: 0 });
9
- const [smoothPosition, setSmoothPosition] = useState({ x: 0, y: 0 });
7
+ import { useInViewport } from "../hooks/useInViewport";
8
+ import { useReducedMotion } from "../hooks/useReducedMotion";
9
+ const Mask = forwardRef(({ cursor = false, x, y, radius = 50, reducedMotion = "auto", children, className, style, ...rest }, forwardedRef) => {
10
10
  const maskRef = useRef(null);
11
+ const cursorPosRef = useRef({ x: 0, y: 0 });
12
+ const smoothPosRef = useRef({ x: 0, y: 0 });
13
+ const rafIdRef = useRef(null);
14
+ const isInViewport = useInViewport(maskRef);
15
+ const { shouldAnimate } = useReducedMotion(reducedMotion);
16
+ const isActive = cursor && isInViewport && shouldAnimate;
11
17
  useEffect(() => {
12
18
  if (forwardedRef) {
13
19
  if (typeof forwardedRef === "function") {
@@ -18,49 +24,67 @@ const Mask = forwardRef(({ cursor = false, x, y, radius = 50, children, classNam
18
24
  }
19
25
  }
20
26
  }, [forwardedRef]);
27
+ const writeCssVars = useCallback((px, py) => {
28
+ const el = maskRef.current;
29
+ if (!el)
30
+ return;
31
+ el.style.setProperty("--mask-position-x", `${px}px`);
32
+ el.style.setProperty("--mask-position-y", `${py}px`);
33
+ }, []);
21
34
  useEffect(() => {
22
- if (!cursor)
35
+ if (!isActive)
23
36
  return;
24
37
  const handleMouseMove = (event) => {
25
- if (maskRef.current) {
26
- const rect = maskRef.current.getBoundingClientRect();
27
- setCursorPosition({
28
- x: event.clientX - rect.left,
29
- y: event.clientY - rect.top,
30
- });
31
- }
38
+ const el = maskRef.current;
39
+ if (!el)
40
+ return;
41
+ const rect = el.getBoundingClientRect();
42
+ cursorPosRef.current = {
43
+ x: event.clientX - rect.left,
44
+ y: event.clientY - rect.top,
45
+ };
32
46
  };
33
- document.addEventListener("mousemove", handleMouseMove);
47
+ document.addEventListener("mousemove", handleMouseMove, { passive: true });
34
48
  return () => {
35
49
  document.removeEventListener("mousemove", handleMouseMove);
36
50
  };
37
- }, [cursor]);
51
+ }, [isActive]);
38
52
  useEffect(() => {
39
- if (!cursor)
53
+ if (!isActive) {
54
+ if (rafIdRef.current != null) {
55
+ cancelAnimationFrame(rafIdRef.current);
56
+ rafIdRef.current = null;
57
+ }
40
58
  return;
41
- let animationFrameId;
42
- const updateSmoothPosition = () => {
43
- setSmoothPosition((prev) => {
44
- const dx = cursorPosition.x - prev.x;
45
- const dy = cursorPosition.y - prev.y;
46
- const easingFactor = 0.05;
47
- return {
48
- x: Math.round(prev.x + dx * easingFactor),
49
- y: Math.round(prev.y + dy * easingFactor),
50
- };
51
- });
52
- animationFrameId = requestAnimationFrame(updateSmoothPosition);
59
+ }
60
+ const easingFactor = 0.05;
61
+ const convergenceThreshold = 0.5;
62
+ const tick = () => {
63
+ const target = cursorPosRef.current;
64
+ const prev = smoothPosRef.current;
65
+ const dx = target.x - prev.x;
66
+ const dy = target.y - prev.y;
67
+ if (Math.abs(dx) > convergenceThreshold || Math.abs(dy) > convergenceThreshold) {
68
+ const nx = prev.x + dx * easingFactor;
69
+ const ny = prev.y + dy * easingFactor;
70
+ smoothPosRef.current = { x: nx, y: ny };
71
+ writeCssVars(nx, ny);
72
+ }
73
+ rafIdRef.current = requestAnimationFrame(tick);
53
74
  };
54
- animationFrameId = requestAnimationFrame(updateSmoothPosition);
75
+ rafIdRef.current = requestAnimationFrame(tick);
55
76
  return () => {
56
- cancelAnimationFrame(animationFrameId);
77
+ if (rafIdRef.current != null) {
78
+ cancelAnimationFrame(rafIdRef.current);
79
+ rafIdRef.current = null;
80
+ }
57
81
  };
58
- }, [cursorPosition, cursor]);
82
+ }, [isActive, writeCssVars]);
59
83
  const maskStyle = () => {
60
84
  if (cursor) {
61
85
  return {
62
- "--mask-position-x": `${smoothPosition.x}px`,
63
- "--mask-position-y": `${smoothPosition.y}px`,
86
+ "--mask-position-x": `${smoothPosRef.current.x}px`,
87
+ "--mask-position-y": `${smoothPosRef.current.y}px`,
64
88
  "--mask-radius": `${radius}vh`,
65
89
  };
66
90
  }
@@ -1 +1 @@
1
- {"version":3,"file":"Mask.js","sourceRoot":"","sources":["../../src/components/Mask.tsx"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"Mask.js","sourceRoot":"","sources":["../../src/components/Mask.tsx"],"names":[],"mappings":"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"}
@@ -18,6 +18,7 @@ interface MatrixFxProps extends React.ComponentProps<typeof Flex> {
18
18
  flicker?: boolean;
19
19
  bulge?: BulgeConfig;
20
20
  fps?: number;
21
+ reducedMotion?: boolean | "auto";
21
22
  children?: React.ReactNode;
22
23
  }
23
24
  declare const MatrixFx: React.ForwardRefExoticComponent<Omit<MatrixFxProps, "ref"> & React.RefAttributes<HTMLDivElement>>;
@@ -1 +1 @@
1
- {"version":3,"file":"MatrixFx.d.ts","sourceRoot":"","sources":["../../src/components/MatrixFx.tsx"],"names":[],"mappings":"AAEA,OAAO,KAA4B,MAAM,OAAO,CAAC;AACjD,OAAO,EAAE,IAAI,EAAE,MAAM,GAAG,CAAC;AAEzB,UAAU,WAAW;IACnB,IAAI,CAAC,EAAE,QAAQ,GAAG,MAAM,CAAC;IACzB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,MAAM,CAAC,EAAE,OAAO,CAAC;IACjB,KAAK,CAAC,EAAE,MAAM,CAAC;CAChB;AAkBD,UAAU,aAAc,SAAQ,KAAK,CAAC,cAAc,CAAC,OAAO,IAAI,CAAC;IAC/D,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,MAAM,CAAC,EAAE,MAAM,EAAE,CAAC;IAClB,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,UAAU,CAAC,EAAE,QAAQ,GAAG,KAAK,GAAG,QAAQ,GAAG,MAAM,GAAG,OAAO,CAAC;IAC5D,OAAO,CAAC,EAAE,OAAO,GAAG,SAAS,GAAG,OAAO,GAAG,OAAO,GAAG,QAAQ,CAAC;IAC7D,MAAM,CAAC,EAAE,OAAO,CAAC;IACjB,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,KAAK,CAAC,EAAE,WAAW,CAAC;IACpB,GAAG,CAAC,EAAE,MAAM,CAAC;IACb,QAAQ,CAAC,EAAE,KAAK,CAAC,SAAS,CAAC;CAC5B;AAED,QAAA,MAAM,QAAQ,mGAs4Bb,CAAC;AAGF,OAAO,EAAE,QAAQ,EAAE,CAAC;AACpB,YAAY,EAAE,WAAW,EAAE,CAAC"}
1
+ {"version":3,"file":"MatrixFx.d.ts","sourceRoot":"","sources":["../../src/components/MatrixFx.tsx"],"names":[],"mappings":"AAEA,OAAO,KAA4B,MAAM,OAAO,CAAC;AACjD,OAAO,EAAE,IAAI,EAAE,MAAM,GAAG,CAAC;AAGzB,UAAU,WAAW;IACnB,IAAI,CAAC,EAAE,QAAQ,GAAG,MAAM,CAAC;IACzB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,MAAM,CAAC,EAAE,OAAO,CAAC;IACjB,KAAK,CAAC,EAAE,MAAM,CAAC;CAChB;AAkBD,UAAU,aAAc,SAAQ,KAAK,CAAC,cAAc,CAAC,OAAO,IAAI,CAAC;IAC/D,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,MAAM,CAAC,EAAE,MAAM,EAAE,CAAC;IAClB,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,UAAU,CAAC,EAAE,QAAQ,GAAG,KAAK,GAAG,QAAQ,GAAG,MAAM,GAAG,OAAO,CAAC;IAC5D,OAAO,CAAC,EAAE,OAAO,GAAG,SAAS,GAAG,OAAO,GAAG,OAAO,GAAG,QAAQ,CAAC;IAC7D,MAAM,CAAC,EAAE,OAAO,CAAC;IACjB,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,KAAK,CAAC,EAAE,WAAW,CAAC;IACpB,GAAG,CAAC,EAAE,MAAM,CAAC;IACb,aAAa,CAAC,EAAE,OAAO,GAAG,MAAM,CAAC;IACjC,QAAQ,CAAC,EAAE,KAAK,CAAC,SAAS,CAAC;CAC5B;AAED,QAAA,MAAM,QAAQ,mGA84Bb,CAAC;AAGF,OAAO,EAAE,QAAQ,EAAE,CAAC;AACpB,YAAY,EAAE,WAAW,EAAE,CAAC"}
@@ -2,7 +2,9 @@
2
2
  import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
3
3
  import React, { useEffect, useRef } from "react";
4
4
  import { Flex } from ".";
5
- const MatrixFx = React.forwardRef(({ speed = 1, colors = ["brand-solid-medium"], size = 3, spacing = 3, revealFrom = "center", trigger = "instant", active = false, flicker = false, bulge, fps = 60, children, ...rest }, forwardedRef) => {
5
+ import { useReducedMotion } from "../hooks/useReducedMotion";
6
+ const MatrixFx = React.forwardRef(({ speed = 1, colors = ["brand-solid-medium"], size = 3, spacing = 3, revealFrom = "center", trigger = "instant", active = false, flicker = false, bulge, fps = 60, reducedMotion = "auto", children, ...rest }, forwardedRef) => {
7
+ const { shouldAnimate } = useReducedMotion(reducedMotion);
6
8
  const containerRef = useRef(null);
7
9
  const canvasRef = useRef(null);
8
10
  const animationRef = useRef(undefined);
@@ -161,6 +163,11 @@ const MatrixFx = React.forwardRef(({ speed = 1, colors = ["brand-solid-medium"],
161
163
  const maxRadius = Math.sqrt(centerX * centerX + centerY * centerY);
162
164
  // Cache for static rendering (when animation completes)
163
165
  let cachedImageData = null;
166
+ // When reduced motion is active, force static rendering after first frame
167
+ if (!shouldAnimate) {
168
+ isStaticRef.current = true;
169
+ mountAnimationCompleteRef.current = true;
170
+ }
164
171
  const animate = (currentTime = 0) => {
165
172
  // Skip rendering if not visible in viewport
166
173
  if (!isVisibleRef.current) {
@@ -1 +1 @@
1
- {"version":3,"file":"MatrixFx.js","sourceRoot":"","sources":["../../src/components/MatrixFx.tsx"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"MatrixFx.js","sourceRoot":"","sources":["../../src/components/MatrixFx.tsx"],"names":[],"mappings":"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"}