@cdx-ui/components 0.3.5 → 0.3.7

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 (416) hide show
  1. package/README.md +1 -1
  2. package/coverage.svg +1 -1
  3. package/docs/components/bar-chart/content.md +703 -0
  4. package/docs/components/content.md +10 -1
  5. package/docs/components/country-flag/content.md +232 -0
  6. package/docs/components/data-grid/content.md +3 -1
  7. package/docs/components/icon/content.md +1 -1
  8. package/docs/components/input/content.md +1 -0
  9. package/docs/components/line-chart/content.md +567 -0
  10. package/docs/components/pie-chart/content.md +493 -0
  11. package/docs/components/progress-bar/content.md +164 -3
  12. package/docs/components/progress-segmented/content.md +1 -1
  13. package/docs/components/select/content.md +1 -0
  14. package/docs/components/stepper/content.md +599 -0
  15. package/docs/components/system-alert/content.md +533 -0
  16. package/docs/foundations/expressions/icons/content.md +2 -1
  17. package/docs/foundations/styles/tokens/all-tokens/content.md +2 -1
  18. package/docs/getting-started/developers/content.md +1 -1
  19. package/docs/llms.txt +12 -0
  20. package/docs/patterns/content.md +1 -0
  21. package/docs/patterns/dashboard/content.md +423 -19
  22. package/docs/patterns/insights/content.md +659 -0
  23. package/docs/resources/content.md +1 -0
  24. package/docs/resources/release-notes/0.3.5/content.md +7 -0
  25. package/docs/resources/release-notes/0.3.6/content.md +29 -0
  26. package/docs/resources/release-notes/content.md +2 -0
  27. package/docs/resources/skills/content.md +66 -0
  28. package/lib/commonjs/components/BarChart/geometry.js +1130 -0
  29. package/lib/commonjs/components/BarChart/geometry.js.map +1 -0
  30. package/lib/commonjs/components/BarChart/index.js +935 -0
  31. package/lib/commonjs/components/BarChart/index.js.map +1 -0
  32. package/lib/commonjs/components/BarChart/styles.js +26 -0
  33. package/lib/commonjs/components/BarChart/styles.js.map +1 -0
  34. package/lib/commonjs/components/Button/index.js +2 -2
  35. package/lib/commonjs/components/Button/index.js.map +1 -1
  36. package/lib/commonjs/components/CountryFlag/index.js +56 -0
  37. package/lib/commonjs/components/CountryFlag/index.js.map +1 -0
  38. package/lib/commonjs/components/Input/index.js.map +1 -1
  39. package/lib/commonjs/components/LineChart/geometry.js +698 -0
  40. package/lib/commonjs/components/LineChart/geometry.js.map +1 -0
  41. package/lib/commonjs/components/LineChart/index.js +744 -0
  42. package/lib/commonjs/components/LineChart/index.js.map +1 -0
  43. package/lib/commonjs/components/LineChart/styles.js +25 -0
  44. package/lib/commonjs/components/LineChart/styles.js.map +1 -0
  45. package/lib/commonjs/components/PieChart/geometry.js +216 -0
  46. package/lib/commonjs/components/PieChart/geometry.js.map +1 -0
  47. package/lib/commonjs/components/PieChart/index.js +476 -0
  48. package/lib/commonjs/components/PieChart/index.js.map +1 -0
  49. package/lib/commonjs/components/PieChart/styles.js +88 -0
  50. package/lib/commonjs/components/PieChart/styles.js.map +1 -0
  51. package/lib/commonjs/components/ProgressBar/index.js +44 -12
  52. package/lib/commonjs/components/ProgressBar/index.js.map +1 -1
  53. package/lib/commonjs/components/ProgressBar/styles.js +31 -2
  54. package/lib/commonjs/components/ProgressBar/styles.js.map +1 -1
  55. package/lib/commonjs/components/ProgressCircle/ProgressCircleRing.js +9 -31
  56. package/lib/commonjs/components/ProgressCircle/ProgressCircleRing.js.map +1 -1
  57. package/lib/commonjs/components/ProgressCircle/ProgressRing.js +52 -0
  58. package/lib/commonjs/components/ProgressCircle/ProgressRing.js.map +1 -0
  59. package/lib/commonjs/components/ScrollShadow/useScrollShadow.js +8 -7
  60. package/lib/commonjs/components/ScrollShadow/useScrollShadow.js.map +1 -1
  61. package/lib/commonjs/components/Select/index.js.map +1 -1
  62. package/lib/commonjs/components/Stepper/index.js +369 -0
  63. package/lib/commonjs/components/Stepper/index.js.map +1 -0
  64. package/lib/commonjs/components/Stepper/styles.js +211 -0
  65. package/lib/commonjs/components/Stepper/styles.js.map +1 -0
  66. package/lib/commonjs/components/Stepper/useStepperLabelFit.js +22 -0
  67. package/lib/commonjs/components/Stepper/useStepperLabelFit.js.map +1 -0
  68. package/lib/commonjs/components/Stepper/useStepperLabelFit.web.js +52 -0
  69. package/lib/commonjs/components/Stepper/useStepperLabelFit.web.js.map +1 -0
  70. package/lib/commonjs/components/Stepper/useStepperRingColors.js +31 -0
  71. package/lib/commonjs/components/Stepper/useStepperRingColors.js.map +1 -0
  72. package/lib/commonjs/components/SystemAlert/animation.js +218 -0
  73. package/lib/commonjs/components/SystemAlert/animation.js.map +1 -0
  74. package/lib/commonjs/components/SystemAlert/index.js +525 -0
  75. package/lib/commonjs/components/SystemAlert/index.js.map +1 -0
  76. package/lib/commonjs/components/SystemAlert/styles.js +178 -0
  77. package/lib/commonjs/components/SystemAlert/styles.js.map +1 -0
  78. package/lib/commonjs/components/SystemAlert/useSystemAlertStatusBarStyle.js +53 -0
  79. package/lib/commonjs/components/SystemAlert/useSystemAlertStatusBarStyle.js.map +1 -0
  80. package/lib/commonjs/components/Tabs/index.js +4 -0
  81. package/lib/commonjs/components/Tabs/index.js.map +1 -1
  82. package/lib/commonjs/components/Tabs/styles.js +1 -1
  83. package/lib/commonjs/components/Tabs/styles.js.map +1 -1
  84. package/lib/commonjs/components/chart/ChartInspector.js +610 -0
  85. package/lib/commonjs/components/chart/ChartInspector.js.map +1 -0
  86. package/lib/commonjs/components/chart/format.js +93 -0
  87. package/lib/commonjs/components/chart/format.js.map +1 -0
  88. package/lib/commonjs/components/chart/hiddenSvgProps.js +23 -0
  89. package/lib/commonjs/components/chart/hiddenSvgProps.js.map +1 -0
  90. package/lib/commonjs/components/chart/index.js +2 -0
  91. package/lib/commonjs/components/chart/index.js.map +1 -0
  92. package/lib/commonjs/components/chart/motion.js +97 -0
  93. package/lib/commonjs/components/chart/motion.js.map +1 -0
  94. package/lib/commonjs/components/chart/palette.js +178 -0
  95. package/lib/commonjs/components/chart/palette.js.map +1 -0
  96. package/lib/commonjs/components/chart/size.js +34 -0
  97. package/lib/commonjs/components/chart/size.js.map +1 -0
  98. package/lib/commonjs/components/chart/ticks.js +59 -0
  99. package/lib/commonjs/components/chart/ticks.js.map +1 -0
  100. package/lib/commonjs/components/chart/types.js +6 -0
  101. package/lib/commonjs/components/chart/types.js.map +1 -0
  102. package/lib/commonjs/components/chart/useChartHostWidth.js +27 -0
  103. package/lib/commonjs/components/chart/useChartHostWidth.js.map +1 -0
  104. package/lib/commonjs/components/index.js +72 -0
  105. package/lib/commonjs/components/index.js.map +1 -1
  106. package/lib/commonjs/figma/Accordion.figma.js +2 -2
  107. package/lib/commonjs/figma/Accordion.figma.js.map +1 -1
  108. package/lib/commonjs/figma/Alert.figma.js +7 -7
  109. package/lib/commonjs/figma/Alert.figma.js.map +1 -1
  110. package/lib/commonjs/figma/Badge.Indicator.figma.js +6 -5
  111. package/lib/commonjs/figma/Badge.Indicator.figma.js.map +1 -1
  112. package/lib/commonjs/figma/Badge.figma.js +22 -22
  113. package/lib/commonjs/figma/Badge.figma.js.map +1 -1
  114. package/lib/commonjs/figma/Button.figma.js +5 -2
  115. package/lib/commonjs/figma/Button.figma.js.map +1 -1
  116. package/lib/commonjs/figma/CLAUDE.md +1 -0
  117. package/lib/commonjs/figma/Card.Header.figma.js +8 -4
  118. package/lib/commonjs/figma/Card.Header.figma.js.map +1 -1
  119. package/lib/commonjs/figma/Card.figma.js +2 -1
  120. package/lib/commonjs/figma/Card.figma.js.map +1 -1
  121. package/lib/commonjs/figma/Chip.figma.js +2 -2
  122. package/lib/commonjs/figma/Chip.figma.js.map +1 -1
  123. package/lib/commonjs/figma/CurrencyInput.figma.js +1 -1
  124. package/lib/commonjs/figma/CurrencyInput.figma.js.map +1 -1
  125. package/lib/commonjs/figma/Dialog.figma.js +5 -2
  126. package/lib/commonjs/figma/Dialog.figma.js.map +1 -1
  127. package/lib/commonjs/figma/Divider.figma.js +1 -1
  128. package/lib/commonjs/figma/Divider.figma.js.map +1 -1
  129. package/lib/commonjs/figma/Drawer.figma.js +3 -3
  130. package/lib/commonjs/figma/Drawer.figma.js.map +1 -1
  131. package/lib/commonjs/figma/IconButton.figma.js +10 -4
  132. package/lib/commonjs/figma/IconButton.figma.js.map +1 -1
  133. package/lib/commonjs/figma/Input.figma.js +2 -1
  134. package/lib/commonjs/figma/Input.figma.js.map +1 -1
  135. package/lib/commonjs/figma/Insight.figma.js +3 -3
  136. package/lib/commonjs/figma/Insight.figma.js.map +1 -1
  137. package/lib/commonjs/figma/ProgressBar.figma.js +11 -2
  138. package/lib/commonjs/figma/ProgressBar.figma.js.map +1 -1
  139. package/lib/commonjs/figma/ProgressSegmented.figma.js +9 -1
  140. package/lib/commonjs/figma/ProgressSegmented.figma.js.map +1 -1
  141. package/lib/commonjs/figma/Select.figma.js +2 -1
  142. package/lib/commonjs/figma/Select.figma.js.map +1 -1
  143. package/lib/commonjs/figma/SystemAlert.Button.figma.js +28 -0
  144. package/lib/commonjs/figma/SystemAlert.Button.figma.js.map +1 -0
  145. package/lib/commonjs/figma/SystemAlert.Close.figma.js +22 -0
  146. package/lib/commonjs/figma/SystemAlert.Close.figma.js.map +1 -0
  147. package/lib/commonjs/figma/SystemAlert.Description.figma.js +20 -0
  148. package/lib/commonjs/figma/SystemAlert.Description.figma.js.map +1 -0
  149. package/lib/commonjs/figma/SystemAlert.IconButton.figma.js +31 -0
  150. package/lib/commonjs/figma/SystemAlert.IconButton.figma.js.map +1 -0
  151. package/lib/commonjs/figma/SystemAlert.figma.js +47 -0
  152. package/lib/commonjs/figma/SystemAlert.figma.js.map +1 -0
  153. package/lib/commonjs/styles.css +0 -1
  154. package/lib/module/components/BarChart/geometry.js +1110 -0
  155. package/lib/module/components/BarChart/geometry.js.map +1 -0
  156. package/lib/module/components/BarChart/index.js +929 -0
  157. package/lib/module/components/BarChart/index.js.map +1 -0
  158. package/lib/module/components/BarChart/styles.js +22 -0
  159. package/lib/module/components/BarChart/styles.js.map +1 -0
  160. package/lib/module/components/Button/index.js +2 -2
  161. package/lib/module/components/Button/index.js.map +1 -1
  162. package/lib/module/components/CountryFlag/index.js +52 -0
  163. package/lib/module/components/CountryFlag/index.js.map +1 -0
  164. package/lib/module/components/Input/index.js.map +1 -1
  165. package/lib/module/components/LineChart/geometry.js +685 -0
  166. package/lib/module/components/LineChart/geometry.js.map +1 -0
  167. package/lib/module/components/LineChart/index.js +738 -0
  168. package/lib/module/components/LineChart/index.js.map +1 -0
  169. package/lib/module/components/LineChart/styles.js +21 -0
  170. package/lib/module/components/LineChart/styles.js.map +1 -0
  171. package/lib/module/components/PieChart/geometry.js +209 -0
  172. package/lib/module/components/PieChart/geometry.js.map +1 -0
  173. package/lib/module/components/PieChart/index.js +471 -0
  174. package/lib/module/components/PieChart/index.js.map +1 -0
  175. package/lib/module/components/PieChart/styles.js +84 -0
  176. package/lib/module/components/PieChart/styles.js.map +1 -0
  177. package/lib/module/components/ProgressBar/index.js +47 -15
  178. package/lib/module/components/ProgressBar/index.js.map +1 -1
  179. package/lib/module/components/ProgressBar/styles.js +31 -2
  180. package/lib/module/components/ProgressBar/styles.js.map +1 -1
  181. package/lib/module/components/ProgressCircle/ProgressCircleRing.js +10 -32
  182. package/lib/module/components/ProgressCircle/ProgressCircleRing.js.map +1 -1
  183. package/lib/module/components/ProgressCircle/ProgressRing.js +48 -0
  184. package/lib/module/components/ProgressCircle/ProgressRing.js.map +1 -0
  185. package/lib/module/components/ScrollShadow/useScrollShadow.js +8 -7
  186. package/lib/module/components/ScrollShadow/useScrollShadow.js.map +1 -1
  187. package/lib/module/components/Select/index.js.map +1 -1
  188. package/lib/module/components/Stepper/index.js +360 -0
  189. package/lib/module/components/Stepper/index.js.map +1 -0
  190. package/lib/module/components/Stepper/styles.js +206 -0
  191. package/lib/module/components/Stepper/styles.js.map +1 -0
  192. package/lib/module/components/Stepper/useStepperLabelFit.js +18 -0
  193. package/lib/module/components/Stepper/useStepperLabelFit.js.map +1 -0
  194. package/lib/module/components/Stepper/useStepperLabelFit.web.js +48 -0
  195. package/lib/module/components/Stepper/useStepperLabelFit.web.js.map +1 -0
  196. package/lib/module/components/Stepper/useStepperRingColors.js +28 -0
  197. package/lib/module/components/Stepper/useStepperRingColors.js.map +1 -0
  198. package/lib/module/components/SystemAlert/animation.js +213 -0
  199. package/lib/module/components/SystemAlert/animation.js.map +1 -0
  200. package/lib/module/components/SystemAlert/index.js +515 -0
  201. package/lib/module/components/SystemAlert/index.js.map +1 -0
  202. package/lib/module/components/SystemAlert/styles.js +174 -0
  203. package/lib/module/components/SystemAlert/styles.js.map +1 -0
  204. package/lib/module/components/SystemAlert/useSystemAlertStatusBarStyle.js +49 -0
  205. package/lib/module/components/SystemAlert/useSystemAlertStatusBarStyle.js.map +1 -0
  206. package/lib/module/components/Tabs/index.js +4 -0
  207. package/lib/module/components/Tabs/index.js.map +1 -1
  208. package/lib/module/components/Tabs/styles.js +1 -1
  209. package/lib/module/components/Tabs/styles.js.map +1 -1
  210. package/lib/module/components/chart/ChartInspector.js +600 -0
  211. package/lib/module/components/chart/ChartInspector.js.map +1 -0
  212. package/lib/module/components/chart/format.js +84 -0
  213. package/lib/module/components/chart/format.js.map +1 -0
  214. package/lib/module/components/chart/hiddenSvgProps.js +20 -0
  215. package/lib/module/components/chart/hiddenSvgProps.js.map +1 -0
  216. package/lib/module/components/chart/index.js +2 -0
  217. package/lib/module/components/chart/index.js.map +1 -0
  218. package/lib/module/components/chart/motion.js +89 -0
  219. package/lib/module/components/chart/motion.js.map +1 -0
  220. package/lib/module/components/chart/palette.js +168 -0
  221. package/lib/module/components/chart/palette.js.map +1 -0
  222. package/lib/module/components/chart/size.js +29 -0
  223. package/lib/module/components/chart/size.js.map +1 -0
  224. package/lib/module/components/chart/ticks.js +55 -0
  225. package/lib/module/components/chart/ticks.js.map +1 -0
  226. package/lib/module/components/chart/types.js +4 -0
  227. package/lib/module/components/chart/types.js.map +1 -0
  228. package/lib/module/components/chart/useChartHostWidth.js +23 -0
  229. package/lib/module/components/chart/useChartHostWidth.js.map +1 -0
  230. package/lib/module/components/index.js +6 -0
  231. package/lib/module/components/index.js.map +1 -1
  232. package/lib/module/figma/Accordion.figma.js +2 -2
  233. package/lib/module/figma/Accordion.figma.js.map +1 -1
  234. package/lib/module/figma/Alert.figma.js +7 -7
  235. package/lib/module/figma/Alert.figma.js.map +1 -1
  236. package/lib/module/figma/Badge.Indicator.figma.js +6 -5
  237. package/lib/module/figma/Badge.Indicator.figma.js.map +1 -1
  238. package/lib/module/figma/Badge.figma.js +22 -22
  239. package/lib/module/figma/Badge.figma.js.map +1 -1
  240. package/lib/module/figma/Button.figma.js +5 -2
  241. package/lib/module/figma/Button.figma.js.map +1 -1
  242. package/lib/module/figma/CLAUDE.md +1 -0
  243. package/lib/module/figma/Card.Header.figma.js +8 -4
  244. package/lib/module/figma/Card.Header.figma.js.map +1 -1
  245. package/lib/module/figma/Card.figma.js +2 -1
  246. package/lib/module/figma/Card.figma.js.map +1 -1
  247. package/lib/module/figma/Chip.figma.js +2 -2
  248. package/lib/module/figma/Chip.figma.js.map +1 -1
  249. package/lib/module/figma/CurrencyInput.figma.js +1 -1
  250. package/lib/module/figma/CurrencyInput.figma.js.map +1 -1
  251. package/lib/module/figma/Dialog.figma.js +5 -2
  252. package/lib/module/figma/Dialog.figma.js.map +1 -1
  253. package/lib/module/figma/Divider.figma.js +1 -1
  254. package/lib/module/figma/Divider.figma.js.map +1 -1
  255. package/lib/module/figma/Drawer.figma.js +3 -3
  256. package/lib/module/figma/Drawer.figma.js.map +1 -1
  257. package/lib/module/figma/IconButton.figma.js +10 -4
  258. package/lib/module/figma/IconButton.figma.js.map +1 -1
  259. package/lib/module/figma/Input.figma.js +2 -1
  260. package/lib/module/figma/Input.figma.js.map +1 -1
  261. package/lib/module/figma/Insight.figma.js +3 -3
  262. package/lib/module/figma/Insight.figma.js.map +1 -1
  263. package/lib/module/figma/ProgressBar.figma.js +12 -2
  264. package/lib/module/figma/ProgressBar.figma.js.map +1 -1
  265. package/lib/module/figma/ProgressSegmented.figma.js +9 -1
  266. package/lib/module/figma/ProgressSegmented.figma.js.map +1 -1
  267. package/lib/module/figma/Select.figma.js +2 -1
  268. package/lib/module/figma/Select.figma.js.map +1 -1
  269. package/lib/module/figma/SystemAlert.Button.figma.js +22 -0
  270. package/lib/module/figma/SystemAlert.Button.figma.js.map +1 -0
  271. package/lib/module/figma/SystemAlert.Close.figma.js +18 -0
  272. package/lib/module/figma/SystemAlert.Close.figma.js.map +1 -0
  273. package/lib/module/figma/SystemAlert.Description.figma.js +14 -0
  274. package/lib/module/figma/SystemAlert.Description.figma.js.map +1 -0
  275. package/lib/module/figma/SystemAlert.IconButton.figma.js +25 -0
  276. package/lib/module/figma/SystemAlert.IconButton.figma.js.map +1 -0
  277. package/lib/module/figma/SystemAlert.figma.js +41 -0
  278. package/lib/module/figma/SystemAlert.figma.js.map +1 -0
  279. package/lib/module/styles.css +0 -1
  280. package/lib/typescript/components/BarChart/geometry.d.ts +236 -0
  281. package/lib/typescript/components/BarChart/geometry.d.ts.map +1 -0
  282. package/lib/typescript/components/BarChart/index.d.ts +193 -0
  283. package/lib/typescript/components/BarChart/index.d.ts.map +1 -0
  284. package/lib/typescript/components/BarChart/styles.d.ts +32 -0
  285. package/lib/typescript/components/BarChart/styles.d.ts.map +1 -0
  286. package/lib/typescript/components/CountryFlag/index.d.ts +35 -0
  287. package/lib/typescript/components/CountryFlag/index.d.ts.map +1 -0
  288. package/lib/typescript/components/Input/index.d.ts +2 -0
  289. package/lib/typescript/components/Input/index.d.ts.map +1 -1
  290. package/lib/typescript/components/LineChart/geometry.d.ts +248 -0
  291. package/lib/typescript/components/LineChart/geometry.d.ts.map +1 -0
  292. package/lib/typescript/components/LineChart/index.d.ts +105 -0
  293. package/lib/typescript/components/LineChart/index.d.ts.map +1 -0
  294. package/lib/typescript/components/LineChart/styles.d.ts +12 -0
  295. package/lib/typescript/components/LineChart/styles.d.ts.map +1 -0
  296. package/lib/typescript/components/PieChart/geometry.d.ts +43 -0
  297. package/lib/typescript/components/PieChart/geometry.d.ts.map +1 -0
  298. package/lib/typescript/components/PieChart/index.d.ts +147 -0
  299. package/lib/typescript/components/PieChart/index.d.ts.map +1 -0
  300. package/lib/typescript/components/PieChart/styles.d.ts +27 -0
  301. package/lib/typescript/components/PieChart/styles.d.ts.map +1 -0
  302. package/lib/typescript/components/ProgressBar/index.d.ts +16 -1
  303. package/lib/typescript/components/ProgressBar/index.d.ts.map +1 -1
  304. package/lib/typescript/components/ProgressBar/styles.d.ts +7 -2
  305. package/lib/typescript/components/ProgressBar/styles.d.ts.map +1 -1
  306. package/lib/typescript/components/ProgressCircle/ProgressCircleRing.d.ts.map +1 -1
  307. package/lib/typescript/components/ProgressCircle/ProgressRing.d.ts +17 -0
  308. package/lib/typescript/components/ProgressCircle/ProgressRing.d.ts.map +1 -0
  309. package/lib/typescript/components/ScrollShadow/useScrollShadow.d.ts.map +1 -1
  310. package/lib/typescript/components/Select/index.d.ts +2 -0
  311. package/lib/typescript/components/Select/index.d.ts.map +1 -1
  312. package/lib/typescript/components/Stepper/index.d.ts +68 -0
  313. package/lib/typescript/components/Stepper/index.d.ts.map +1 -0
  314. package/lib/typescript/components/Stepper/styles.d.ts +46 -0
  315. package/lib/typescript/components/Stepper/styles.d.ts.map +1 -0
  316. package/lib/typescript/components/Stepper/useStepperLabelFit.d.ts +15 -0
  317. package/lib/typescript/components/Stepper/useStepperLabelFit.d.ts.map +1 -0
  318. package/lib/typescript/components/Stepper/useStepperLabelFit.web.d.ts +10 -0
  319. package/lib/typescript/components/Stepper/useStepperLabelFit.web.d.ts.map +1 -0
  320. package/lib/typescript/components/Stepper/useStepperRingColors.d.ts +6 -0
  321. package/lib/typescript/components/Stepper/useStepperRingColors.d.ts.map +1 -0
  322. package/lib/typescript/components/SystemAlert/animation.d.ts +56 -0
  323. package/lib/typescript/components/SystemAlert/animation.d.ts.map +1 -0
  324. package/lib/typescript/components/SystemAlert/index.d.ts +110 -0
  325. package/lib/typescript/components/SystemAlert/index.d.ts.map +1 -0
  326. package/lib/typescript/components/SystemAlert/styles.d.ts +38 -0
  327. package/lib/typescript/components/SystemAlert/styles.d.ts.map +1 -0
  328. package/lib/typescript/components/SystemAlert/useSystemAlertStatusBarStyle.d.ts +14 -0
  329. package/lib/typescript/components/SystemAlert/useSystemAlertStatusBarStyle.d.ts.map +1 -0
  330. package/lib/typescript/components/Tabs/index.d.ts.map +1 -1
  331. package/lib/typescript/components/chart/ChartInspector.d.ts +101 -0
  332. package/lib/typescript/components/chart/ChartInspector.d.ts.map +1 -0
  333. package/lib/typescript/components/chart/format.d.ts +16 -0
  334. package/lib/typescript/components/chart/format.d.ts.map +1 -0
  335. package/lib/typescript/components/chart/hiddenSvgProps.d.ts +17 -0
  336. package/lib/typescript/components/chart/hiddenSvgProps.d.ts.map +1 -0
  337. package/lib/typescript/components/chart/index.d.ts +3 -0
  338. package/lib/typescript/components/chart/index.d.ts.map +1 -0
  339. package/lib/typescript/components/chart/motion.d.ts +27 -0
  340. package/lib/typescript/components/chart/motion.d.ts.map +1 -0
  341. package/lib/typescript/components/chart/palette.d.ts +44 -0
  342. package/lib/typescript/components/chart/palette.d.ts.map +1 -0
  343. package/lib/typescript/components/chart/size.d.ts +25 -0
  344. package/lib/typescript/components/chart/size.d.ts.map +1 -0
  345. package/lib/typescript/components/chart/ticks.d.ts +3 -0
  346. package/lib/typescript/components/chart/ticks.d.ts.map +1 -0
  347. package/lib/typescript/components/chart/types.d.ts +163 -0
  348. package/lib/typescript/components/chart/types.d.ts.map +1 -0
  349. package/lib/typescript/components/chart/useChartHostWidth.d.ts +9 -0
  350. package/lib/typescript/components/chart/useChartHostWidth.d.ts.map +1 -0
  351. package/lib/typescript/components/index.d.ts +6 -0
  352. package/lib/typescript/components/index.d.ts.map +1 -1
  353. package/lib/typescript/figma/Alert.figma.d.ts.map +1 -1
  354. package/lib/typescript/figma/Badge.Indicator.figma.d.ts.map +1 -1
  355. package/lib/typescript/figma/Badge.figma.d.ts.map +1 -1
  356. package/lib/typescript/figma/Button.figma.d.ts.map +1 -1
  357. package/lib/typescript/figma/Card.Header.figma.d.ts.map +1 -1
  358. package/lib/typescript/figma/Card.figma.d.ts.map +1 -1
  359. package/lib/typescript/figma/Dialog.figma.d.ts.map +1 -1
  360. package/lib/typescript/figma/IconButton.figma.d.ts.map +1 -1
  361. package/lib/typescript/figma/Input.figma.d.ts.map +1 -1
  362. package/lib/typescript/figma/ProgressBar.figma.d.ts.map +1 -1
  363. package/lib/typescript/figma/ProgressSegmented.figma.d.ts.map +1 -1
  364. package/lib/typescript/figma/Select.figma.d.ts.map +1 -1
  365. package/lib/typescript/figma/SystemAlert.Button.figma.d.ts +11 -0
  366. package/lib/typescript/figma/SystemAlert.Button.figma.d.ts.map +1 -0
  367. package/lib/typescript/figma/SystemAlert.Close.figma.d.ts +11 -0
  368. package/lib/typescript/figma/SystemAlert.Close.figma.d.ts.map +1 -0
  369. package/lib/typescript/figma/SystemAlert.Description.figma.d.ts +8 -0
  370. package/lib/typescript/figma/SystemAlert.Description.figma.d.ts.map +1 -0
  371. package/lib/typescript/figma/SystemAlert.IconButton.figma.d.ts +11 -0
  372. package/lib/typescript/figma/SystemAlert.IconButton.figma.d.ts.map +1 -0
  373. package/lib/typescript/figma/SystemAlert.figma.d.ts +8 -0
  374. package/lib/typescript/figma/SystemAlert.figma.d.ts.map +1 -0
  375. package/package.json +5 -5
  376. package/src/components/BarChart/geometry.ts +1469 -0
  377. package/src/components/BarChart/index.tsx +1417 -0
  378. package/src/components/BarChart/styles.ts +31 -0
  379. package/src/components/Button/index.tsx +1 -1
  380. package/src/components/CountryFlag/index.tsx +53 -0
  381. package/src/components/Input/index.tsx +2 -0
  382. package/src/components/LineChart/geometry.ts +957 -0
  383. package/src/components/LineChart/index.tsx +1106 -0
  384. package/src/components/LineChart/styles.ts +26 -0
  385. package/src/components/PieChart/geometry.ts +295 -0
  386. package/src/components/PieChart/index.tsx +715 -0
  387. package/src/components/PieChart/styles.ts +101 -0
  388. package/src/components/ProgressBar/index.tsx +66 -14
  389. package/src/components/ProgressBar/styles.ts +35 -4
  390. package/src/components/ProgressCircle/ProgressCircleRing.tsx +10 -39
  391. package/src/components/ProgressCircle/ProgressRing.tsx +60 -0
  392. package/src/components/ScrollShadow/useScrollShadow.ts +12 -11
  393. package/src/components/Select/index.tsx +2 -0
  394. package/src/components/Stepper/index.tsx +452 -0
  395. package/src/components/Stepper/styles.ts +234 -0
  396. package/src/components/Stepper/useStepperLabelFit.ts +21 -0
  397. package/src/components/Stepper/useStepperLabelFit.web.ts +53 -0
  398. package/src/components/Stepper/useStepperRingColors.ts +29 -0
  399. package/src/components/SystemAlert/animation.ts +252 -0
  400. package/src/components/SystemAlert/index.tsx +684 -0
  401. package/src/components/SystemAlert/styles.ts +212 -0
  402. package/src/components/SystemAlert/useSystemAlertStatusBarStyle.ts +57 -0
  403. package/src/components/Tabs/index.tsx +4 -0
  404. package/src/components/Tabs/styles.ts +1 -1
  405. package/src/components/chart/ChartInspector.tsx +726 -0
  406. package/src/components/chart/format.ts +95 -0
  407. package/src/components/chart/hiddenSvgProps.ts +15 -0
  408. package/src/components/chart/index.ts +24 -0
  409. package/src/components/chart/motion.ts +98 -0
  410. package/src/components/chart/palette.tsx +247 -0
  411. package/src/components/chart/size.ts +21 -0
  412. package/src/components/chart/ticks.ts +53 -0
  413. package/src/components/chart/types.ts +183 -0
  414. package/src/components/chart/useChartHostWidth.ts +26 -0
  415. package/src/components/index.ts +6 -0
  416. package/src/styles.css +0 -1
@@ -0,0 +1,360 @@
1
+ "use strict";
2
+
3
+ import { Children, createContext, forwardRef, isValidElement, useContext, useMemo } from 'react';
4
+ import { Text, View } from 'react-native';
5
+ import { Slot, StepperRoot, StepperStep, StepperStepTrigger, dataAttributes, mergeDataAttributes, useStepperContext, useStepperIndex, useStepperStep } from '@cdx-ui/primitives';
6
+ import { CheckCircle } from '@cdx-ui/icons';
7
+ import { cn, flattenChildren, mergeRefs } from '@cdx-ui/utils';
8
+ import { Icon } from '../Icon';
9
+ import { ProgressRing } from '../ProgressCircle/ProgressRing';
10
+ import { getStepperLayout, STEPPER_INDICATOR_SIZE, STEPPER_RING_STROKE_WIDTH, stepperContentVariants, stepperDescriptionVariants, stepperIndicatorCheckVariants, stepperIndicatorDiscVariants, stepperIndicatorNumeralVariants, stepperIndicatorRingVariants, stepperIndicatorVariants, stepperSeparatorVariants, stepperStepBodyVariants, stepperStepLabelVariants, stepperStepMainVariants, stepperStepTriggerVariants, stepperStepVariants, stepperTitleVariants, stepperVariants } from './styles';
11
+ import { useStepperLabelFit } from './useStepperLabelFit';
12
+ import { useStepperRingColors } from './useStepperRingColors';
13
+ import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
14
+ export { useStepperStep } from '@cdx-ui/primitives';
15
+ const StepperLabelFitContext = /*#__PURE__*/createContext('shrink');
16
+
17
+ /** Counts steps the way `StepperRoot` numbers them, so the label-fit decision resets with them. */
18
+ function countSteps(children, asChild) {
19
+ const source = asChild && /*#__PURE__*/isValidElement(children) ? children.props.children : children;
20
+ return flattenChildren(source).filter(child => /*#__PURE__*/isValidElement(child)).length;
21
+ }
22
+ const HIDDEN_FROM_AT = {
23
+ 'aria-hidden': true,
24
+ accessibilityElementsHidden: true,
25
+ importantForAccessibility: 'no-hide-descendants'
26
+ };
27
+
28
+ // =============================================================================
29
+ // ROOT
30
+ // =============================================================================
31
+
32
+ const StepperRootComponent = /*#__PURE__*/forwardRef(({
33
+ className,
34
+ style,
35
+ orientation = 'vertical',
36
+ labelPlacement = 'end',
37
+ children,
38
+ ...props
39
+ }, ref) => {
40
+ const layout = getStepperLayout(orientation, labelPlacement);
41
+ const {
42
+ fit,
43
+ measureRef
44
+ } = useStepperLabelFit(layout === 'horizontal-end', countSteps(children, props.asChild));
45
+ const rootRef = useMemo(() => measureRef === undefined ? ref : mergeRefs(ref, measureRef), [ref, measureRef]);
46
+ return /*#__PURE__*/_jsx(StepperLabelFitContext.Provider, {
47
+ value: fit,
48
+ children: /*#__PURE__*/_jsx(StepperRoot, {
49
+ ref: rootRef,
50
+ className: cn(stepperVariants({
51
+ layout
52
+ }), className),
53
+ style: style,
54
+ orientation: orientation,
55
+ labelPlacement: labelPlacement,
56
+ ...props,
57
+ ...mergeDataAttributes(props, dataAttributes({
58
+ slot: 'stepper'
59
+ })),
60
+ children: children
61
+ })
62
+ });
63
+ });
64
+ StepperRootComponent.displayName = 'Stepper';
65
+
66
+ // =============================================================================
67
+ // STEP
68
+ // =============================================================================
69
+
70
+ function isSlot(child, type) {
71
+ return /*#__PURE__*/isValidElement(child) && child.type === type;
72
+ }
73
+ const StepperStepComponent = /*#__PURE__*/forwardRef(({
74
+ asChild,
75
+ className,
76
+ style,
77
+ children,
78
+ ...props
79
+ }, ref) => {
80
+ const {
81
+ orientation,
82
+ labelPlacement,
83
+ count
84
+ } = useStepperContext();
85
+ const layout = getStepperLayout(orientation, labelPlacement);
86
+ const labelFit = useContext(StepperLabelFitContext);
87
+ const isLast = useStepperIndex() === count - 1;
88
+ const stepClass = cn(stepperStepVariants({
89
+ layout,
90
+ isLast,
91
+ labelFit
92
+ }), className);
93
+ const slotAttributes = mergeDataAttributes(props, dataAttributes({
94
+ slot: 'stepper-step'
95
+ }));
96
+ if (asChild) {
97
+ return /*#__PURE__*/_jsx(StepperStep, {
98
+ ref: ref,
99
+ asChild: true,
100
+ className: stepClass,
101
+ style: style,
102
+ ...props,
103
+ ...slotAttributes,
104
+ children: children
105
+ });
106
+ }
107
+
108
+ // Indicator, Title and Description form the step trigger, which carries the accessible
109
+ // name; everything else is the body below the title. The Separator sits in the indicator
110
+ // track: before the main column when vertical, after it when horizontal.
111
+ const childArray = Children.toArray(children);
112
+ const indicator = childArray.find(child => isSlot(child, StepperIndicatorComponent));
113
+ const title = childArray.find(child => isSlot(child, StepperTitleComponent));
114
+ const description = childArray.find(child => isSlot(child, StepperDescriptionComponent));
115
+ const separator = childArray.find(child => isSlot(child, StepperSeparatorComponent));
116
+ const body = childArray.filter(child => !isSlot(child, StepperIndicatorComponent) && !isSlot(child, StepperTitleComponent) && !isSlot(child, StepperDescriptionComponent) && !isSlot(child, StepperSeparatorComponent));
117
+ const hasLabel = title !== undefined || description !== undefined;
118
+ return /*#__PURE__*/_jsxs(StepperStep, {
119
+ ref: ref,
120
+ className: stepClass,
121
+ style: style,
122
+ ...props,
123
+ ...slotAttributes,
124
+ children: [layout === 'vertical' ? separator : null, /*#__PURE__*/_jsxs(View, {
125
+ className: cn(stepperStepMainVariants({
126
+ layout,
127
+ labelFit
128
+ })),
129
+ children: [/*#__PURE__*/_jsxs(StepperStepTrigger, {
130
+ className: stepperStepTriggerVariants({
131
+ layout
132
+ }),
133
+ ...dataAttributes({
134
+ slot: 'stepper-step-trigger'
135
+ }),
136
+ children: [indicator, hasLabel ? /*#__PURE__*/_jsxs(View, {
137
+ className: cn(stepperStepLabelVariants({
138
+ layout,
139
+ labelFit
140
+ })),
141
+ children: [title, description]
142
+ }) : null]
143
+ }), body.length > 0 ? /*#__PURE__*/_jsx(View, {
144
+ className: stepperStepBodyVariants({
145
+ layout
146
+ }),
147
+ children: body
148
+ }) : null]
149
+ }), layout === 'vertical' ? null : separator]
150
+ });
151
+ });
152
+ StepperStepComponent.displayName = 'Stepper.Step';
153
+
154
+ // =============================================================================
155
+ // INDICATOR
156
+ // =============================================================================
157
+
158
+ const StepperIndicatorComponent = /*#__PURE__*/forwardRef(({
159
+ asChild,
160
+ className,
161
+ style,
162
+ children,
163
+ ...props
164
+ }, ref) => {
165
+ const {
166
+ index,
167
+ isCurrent,
168
+ isComplete,
169
+ hasProgress,
170
+ progress
171
+ } = useStepperStep();
172
+ const ringColors = useStepperRingColors(isCurrent);
173
+ const currentAttribute = dataAttributes({
174
+ current: isCurrent
175
+ });
176
+ const indicatorClass = cn(stepperIndicatorVariants(), className);
177
+ const indicatorAttributes = mergeDataAttributes(props, dataAttributes({
178
+ slot: 'stepper-indicator',
179
+ current: isCurrent,
180
+ complete: isComplete,
181
+ progress: hasProgress
182
+ }));
183
+ if (asChild) {
184
+ return /*#__PURE__*/_jsx(Slot, {
185
+ ref: ref,
186
+ className: indicatorClass,
187
+ style: style,
188
+ ...props,
189
+ ...HIDDEN_FROM_AT,
190
+ ...indicatorAttributes,
191
+ children: children
192
+ });
193
+ }
194
+ const hasCustomGlyph = children !== undefined && children !== null;
195
+ return /*#__PURE__*/_jsxs(View, {
196
+ ref: ref,
197
+ className: indicatorClass,
198
+ style: style,
199
+ ...props,
200
+ ...HIDDEN_FROM_AT,
201
+ ...indicatorAttributes,
202
+ children: [hasProgress ? /*#__PURE__*/_jsx(View, {
203
+ className: stepperIndicatorRingVariants(),
204
+ children: /*#__PURE__*/_jsx(ProgressRing, {
205
+ size: STEPPER_INDICATOR_SIZE,
206
+ strokeWidth: STEPPER_RING_STROKE_WIDTH,
207
+ value: progress,
208
+ trackColor: ringColors.track,
209
+ indicatorColor: ringColors.indicator
210
+ })
211
+ }) : null, isComplete && !hasCustomGlyph ? /*#__PURE__*/_jsx(Icon, {
212
+ as: CheckCircle,
213
+ filled: true,
214
+ className: stepperIndicatorCheckVariants(),
215
+ ...currentAttribute
216
+ }) : /*#__PURE__*/_jsx(View, {
217
+ className: stepperIndicatorDiscVariants(),
218
+ ...currentAttribute,
219
+ children: hasCustomGlyph ? children : /*#__PURE__*/_jsx(Text, {
220
+ className: stepperIndicatorNumeralVariants(),
221
+ ...currentAttribute,
222
+ children: String(index + 1)
223
+ })
224
+ })]
225
+ });
226
+ });
227
+ StepperIndicatorComponent.displayName = 'Stepper.Indicator';
228
+
229
+ // =============================================================================
230
+ // TITLE
231
+ // =============================================================================
232
+
233
+ const StepperTitleComponent = /*#__PURE__*/forwardRef(({
234
+ asChild,
235
+ className,
236
+ style,
237
+ ...props
238
+ }, ref) => {
239
+ const {
240
+ isCurrent,
241
+ orientation,
242
+ labelPlacement
243
+ } = useStepperStep();
244
+ const isCentered = getStepperLayout(orientation, labelPlacement) === 'horizontal-bottom';
245
+ const Comp = asChild ? Slot : Text;
246
+ return /*#__PURE__*/_jsx(Comp, {
247
+ ref: ref,
248
+ className: cn(stepperTitleVariants({
249
+ isCentered
250
+ }), className),
251
+ style: style,
252
+ ...props,
253
+ ...mergeDataAttributes(props, dataAttributes({
254
+ slot: 'stepper-title',
255
+ current: isCurrent
256
+ }))
257
+ });
258
+ });
259
+ StepperTitleComponent.displayName = 'Stepper.Title';
260
+
261
+ // =============================================================================
262
+ // DESCRIPTION
263
+ // =============================================================================
264
+
265
+ const StepperDescriptionComponent = /*#__PURE__*/forwardRef(({
266
+ asChild,
267
+ className,
268
+ style,
269
+ ...props
270
+ }, ref) => {
271
+ const {
272
+ orientation,
273
+ labelPlacement
274
+ } = useStepperStep();
275
+ const isCentered = getStepperLayout(orientation, labelPlacement) === 'horizontal-bottom';
276
+ const Comp = asChild ? Slot : Text;
277
+ return /*#__PURE__*/_jsx(Comp, {
278
+ ref: ref,
279
+ className: cn(stepperDescriptionVariants({
280
+ isCentered
281
+ }), className),
282
+ style: style,
283
+ ...props,
284
+ ...mergeDataAttributes(props, dataAttributes({
285
+ slot: 'stepper-description'
286
+ }))
287
+ });
288
+ });
289
+ StepperDescriptionComponent.displayName = 'Stepper.Description';
290
+
291
+ // =============================================================================
292
+ // CONTENT
293
+ // =============================================================================
294
+
295
+ const StepperContentComponent = /*#__PURE__*/forwardRef(({
296
+ asChild,
297
+ className,
298
+ style,
299
+ ...props
300
+ }, ref) => {
301
+ const Comp = asChild ? Slot : View;
302
+ return /*#__PURE__*/_jsx(Comp, {
303
+ ref: ref,
304
+ className: cn(stepperContentVariants(), className),
305
+ style: style,
306
+ ...props,
307
+ ...mergeDataAttributes(props, dataAttributes({
308
+ slot: 'stepper-content'
309
+ }))
310
+ });
311
+ });
312
+ StepperContentComponent.displayName = 'Stepper.Content';
313
+
314
+ // =============================================================================
315
+ // SEPARATOR
316
+ // =============================================================================
317
+
318
+ const StepperSeparatorComponent = /*#__PURE__*/forwardRef(({
319
+ asChild,
320
+ className,
321
+ style,
322
+ ...props
323
+ }, ref) => {
324
+ const {
325
+ isLast,
326
+ orientation,
327
+ labelPlacement
328
+ } = useStepperStep();
329
+ if (isLast) {
330
+ return null;
331
+ }
332
+ const Comp = asChild ? Slot : View;
333
+ return /*#__PURE__*/_jsx(Comp, {
334
+ ref: ref,
335
+ className: cn(stepperSeparatorVariants({
336
+ layout: getStepperLayout(orientation, labelPlacement)
337
+ }), className),
338
+ style: style,
339
+ ...props,
340
+ ...HIDDEN_FROM_AT,
341
+ ...mergeDataAttributes(props, dataAttributes({
342
+ slot: 'stepper-separator'
343
+ }))
344
+ });
345
+ });
346
+ StepperSeparatorComponent.displayName = 'Stepper.Separator';
347
+
348
+ // =============================================================================
349
+ // COMPOUND EXPORT
350
+ // =============================================================================
351
+
352
+ export const Stepper = Object.assign(StepperRootComponent, {
353
+ Step: StepperStepComponent,
354
+ Indicator: StepperIndicatorComponent,
355
+ Title: StepperTitleComponent,
356
+ Description: StepperDescriptionComponent,
357
+ Content: StepperContentComponent,
358
+ Separator: StepperSeparatorComponent
359
+ });
360
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["Children","createContext","forwardRef","isValidElement","useContext","useMemo","Text","View","Slot","StepperRoot","StepperStep","StepperStepTrigger","dataAttributes","mergeDataAttributes","useStepperContext","useStepperIndex","useStepperStep","CheckCircle","cn","flattenChildren","mergeRefs","Icon","ProgressRing","getStepperLayout","STEPPER_INDICATOR_SIZE","STEPPER_RING_STROKE_WIDTH","stepperContentVariants","stepperDescriptionVariants","stepperIndicatorCheckVariants","stepperIndicatorDiscVariants","stepperIndicatorNumeralVariants","stepperIndicatorRingVariants","stepperIndicatorVariants","stepperSeparatorVariants","stepperStepBodyVariants","stepperStepLabelVariants","stepperStepMainVariants","stepperStepTriggerVariants","stepperStepVariants","stepperTitleVariants","stepperVariants","useStepperLabelFit","useStepperRingColors","jsx","_jsx","jsxs","_jsxs","StepperLabelFitContext","countSteps","children","asChild","source","props","filter","child","length","HIDDEN_FROM_AT","accessibilityElementsHidden","importantForAccessibility","StepperRootComponent","className","style","orientation","labelPlacement","ref","layout","fit","measureRef","rootRef","undefined","Provider","value","slot","displayName","isSlot","type","StepperStepComponent","count","labelFit","isLast","stepClass","slotAttributes","childArray","toArray","indicator","find","StepperIndicatorComponent","title","StepperTitleComponent","description","StepperDescriptionComponent","separator","StepperSeparatorComponent","body","hasLabel","index","isCurrent","isComplete","hasProgress","progress","ringColors","currentAttribute","current","indicatorClass","indicatorAttributes","complete","hasCustomGlyph","size","strokeWidth","trackColor","track","indicatorColor","as","filled","String","isCentered","Comp","StepperContentComponent","Stepper","Object","assign","Step","Indicator","Title","Description","Content","Separator"],"sourceRoot":"../../../../src","sources":["components/Stepper/index.tsx"],"mappings":"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","ignoreList":[]}
@@ -0,0 +1,206 @@
1
+ "use strict";
2
+
3
+ import { Platform } from 'react-native';
4
+ import { cva } from '@cdx-ui/utils';
5
+ import { TRANSITION_COLORS } from '../../styles/constants';
6
+
7
+ /** Indicator frame in px. The ring is drawn at this size around the 24px disc. */
8
+ export const STEPPER_INDICATOR_SIZE = 34;
9
+ export const STEPPER_RING_STROKE_WIDTH = 3;
10
+ export function getStepperLayout(orientation, labelPlacement) {
11
+ if (orientation === 'vertical') {
12
+ return 'vertical';
13
+ }
14
+ return labelPlacement === 'bottom' ? 'horizontal-bottom' : 'horizontal-end';
15
+ }
16
+
17
+ // Horizontal layouts:
18
+ // - `horizontal-end` (label after the indicator): steps start at their content width and every
19
+ // step but the last grows; that growth goes to its in-flow separator. With `labelFit: 'words'`
20
+ // (web, while the row fits) steps keep their min-content width so labels wrap between words;
21
+ // with `'shrink'` RN Web's `min-width: 0` lets them shrink further so the row never overflows.
22
+ // - `horizontal-bottom` (label centered below): equal columns; the separator is absolute, so it
23
+ // never affects column layout.
24
+ export const stepperVariants = cva([], {
25
+ variants: {
26
+ layout: {
27
+ vertical: 'flex-col',
28
+ 'horizontal-end': 'w-full flex-row items-start',
29
+ 'horizontal-bottom': 'w-full flex-row items-start'
30
+ }
31
+ },
32
+ defaultVariants: {
33
+ layout: 'vertical'
34
+ }
35
+ });
36
+ export const stepperStepVariants = cva([], {
37
+ variants: {
38
+ layout: {
39
+ vertical: 'flex-row',
40
+ 'horizontal-end': 'min-w-0 flex-row items-start',
41
+ 'horizontal-bottom': 'relative min-w-0 flex-1 basis-0 items-center'
42
+ },
43
+ isLast: {
44
+ true: '',
45
+ false: ''
46
+ },
47
+ labelFit: {
48
+ words: '',
49
+ shrink: ''
50
+ }
51
+ },
52
+ compoundVariants: [{
53
+ layout: 'horizontal-end',
54
+ isLast: false,
55
+ className: 'grow shrink basis-auto pe-2'
56
+ }, {
57
+ layout: 'horizontal-end',
58
+ isLast: true,
59
+ className: 'shrink'
60
+ }, {
61
+ layout: 'horizontal-end',
62
+ labelFit: 'words',
63
+ className: 'min-w-auto'
64
+ }],
65
+ defaultVariants: {
66
+ layout: 'vertical',
67
+ isLast: false,
68
+ labelFit: 'shrink'
69
+ }
70
+ });
71
+
72
+ // Unexported layout wrappers inside `Stepper.Step` (no `data-slot`).
73
+ export const stepperStepMainVariants = cva(['min-w-0'], {
74
+ variants: {
75
+ layout: {
76
+ vertical: 'flex-1',
77
+ 'horizontal-end': 'shrink',
78
+ 'horizontal-bottom': 'items-center self-stretch px-2'
79
+ },
80
+ labelFit: {
81
+ words: '',
82
+ shrink: ''
83
+ }
84
+ },
85
+ compoundVariants: [{
86
+ layout: 'horizontal-end',
87
+ labelFit: 'words',
88
+ className: 'min-w-auto'
89
+ }],
90
+ defaultVariants: {
91
+ layout: 'vertical',
92
+ labelFit: 'shrink'
93
+ }
94
+ });
95
+
96
+ // Each layout pads the hover and press fill and cancels it with an equal negative margin, so a
97
+ // step keeps its geometry when it becomes clickable. The 24px disc sits 5px inside its 34px
98
+ // frame, so sides bounded by the disc get 4px and sides bounded by text get 9px; the fill then
99
+ // looks evenly padded. Each layout aligns the trigger to its content (`self-start`, or
100
+ // `self-center` under a centered label) so the fill hugs the indicator and label instead of
101
+ // spanning the step. Hover, press and focus-visible use the `Tabs` hover tokens and the Forge
102
+ // focus ring until the designer specifies clickable-step states.
103
+ export const stepperStepTriggerVariants = cva(['rounded-md', TRANSITION_COLORS, Platform.select({
104
+ default: 'data-[active=true]:bg-surface-secondary-active',
105
+ web: ['outline-none data-[clickable=true]:cursor-pointer', 'data-[hover=true]:bg-surface-secondary-hover data-[active=true]:data-[hover=true]:bg-surface-secondary-active', 'web:data-[focus-visible=true]:ring-2 web:data-[focus-visible=true]:ring-stroke-focus web:data-[focus-visible=true]:ring-offset-2'].join(' ')
106
+ })], {
107
+ variants: {
108
+ layout: {
109
+ vertical: 'flex-row items-start self-start gap-2 -my-1 -ms-1 -me-[9px] py-1 ps-1 pe-[9px]',
110
+ 'horizontal-end': 'flex-row items-start self-start gap-2 -my-1 -ms-1 -me-[9px] py-1 ps-1 pe-[9px]',
111
+ 'horizontal-bottom': 'min-w-0 items-center self-center gap-1 -mx-[9px] -mt-1 -mb-[9px] px-[9px] pt-1 pb-[9px]'
112
+ }
113
+ },
114
+ defaultVariants: {
115
+ layout: 'vertical'
116
+ }
117
+ });
118
+ export const stepperStepLabelVariants = cva(['min-w-0'], {
119
+ variants: {
120
+ layout: {
121
+ vertical: 'shrink py-[7px]',
122
+ 'horizontal-end': 'shrink py-[7px]',
123
+ 'horizontal-bottom': 'self-stretch'
124
+ },
125
+ labelFit: {
126
+ words: '',
127
+ shrink: ''
128
+ }
129
+ },
130
+ compoundVariants: [{
131
+ layout: 'horizontal-end',
132
+ labelFit: 'words',
133
+ className: 'min-w-auto'
134
+ }],
135
+ defaultVariants: {
136
+ layout: 'vertical',
137
+ labelFit: 'shrink'
138
+ }
139
+ });
140
+ export const stepperStepBodyVariants = cva([], {
141
+ variants: {
142
+ layout: {
143
+ vertical: 'ps-[42px]',
144
+ 'horizontal-end': 'ps-[42px]',
145
+ 'horizontal-bottom': 'self-stretch'
146
+ }
147
+ },
148
+ defaultVariants: {
149
+ layout: 'vertical'
150
+ }
151
+ });
152
+
153
+ // Indicator, disc, numeral and check each emit their own `data-current` because native
154
+ // Uniwind cannot style a child from its parent's data attributes.
155
+ export const stepperIndicatorVariants = cva(['relative size-[34px] shrink-0 items-center justify-center']);
156
+ export const stepperIndicatorRingVariants = cva(['pointer-events-none absolute inset-0']);
157
+ export const stepperIndicatorDiscVariants = cva(['size-6 items-center justify-center rounded-full', 'bg-surface-neutral-strong data-[current=true]:bg-surface-brand-strong']);
158
+ export const stepperIndicatorNumeralVariants = cva(['body-sm font-medium', 'text-content-neutral-on-strong data-[current=true]:text-content-brand-on-strong']);
159
+ export const stepperIndicatorCheckVariants = cva(['size-7 text-content-neutral data-[current=true]:text-content-brand']);
160
+
161
+ // Native text alignment does not inherit from a parent `View`, so centered labels set it on
162
+ // each text part.
163
+ export const stepperTitleVariants = cva(['body-md text-content-secondary', 'data-[current=true]:font-medium data-[current=true]:text-content-primary'], {
164
+ variants: {
165
+ isCentered: {
166
+ true: 'text-center',
167
+ false: ''
168
+ }
169
+ },
170
+ defaultVariants: {
171
+ isCentered: false
172
+ }
173
+ });
174
+ export const stepperDescriptionVariants = cva(['body-sm text-content-secondary'], {
175
+ variants: {
176
+ isCentered: {
177
+ true: 'text-center',
178
+ false: ''
179
+ }
180
+ },
181
+ defaultVariants: {
182
+ isCentered: false
183
+ }
184
+ });
185
+ export const stepperContentVariants = cva(['gap-2 py-2']);
186
+
187
+ // Vertical: rendered before the step's main column with zero net width, centered under the
188
+ // 34px frame; `self-stretch` follows the title and content.
189
+ // `horizontal-end`: in flow after the label, centered on the frame's height; it takes the
190
+ // step's growth, and the step's `pe-2` leaves 8px before the next indicator.
191
+ // `horizontal-bottom`: absolute from this column's center to the next one's (columns are equal
192
+ // and have no gap), inset 25px at each end: half the 34px frame plus 8px.
193
+ // `z-10` keeps the line above a clickable trigger's hover and press fill.
194
+ export const stepperSeparatorVariants = cva(['z-10 bg-stroke-secondary'], {
195
+ variants: {
196
+ layout: {
197
+ vertical: 'relative mt-[34px] min-h-6 w-px self-stretch ms-[16.5px] -me-[17.5px]',
198
+ 'horizontal-end': 'relative mt-[16.5px] h-px min-w-6 flex-1 ms-2',
199
+ 'horizontal-bottom': 'absolute top-[16.5px] start-[50%] end-[-50%] h-px ms-[25px] me-[25px]'
200
+ }
201
+ },
202
+ defaultVariants: {
203
+ layout: 'vertical'
204
+ }
205
+ });
206
+ //# sourceMappingURL=styles.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["Platform","cva","TRANSITION_COLORS","STEPPER_INDICATOR_SIZE","STEPPER_RING_STROKE_WIDTH","getStepperLayout","orientation","labelPlacement","stepperVariants","variants","layout","vertical","defaultVariants","stepperStepVariants","isLast","true","false","labelFit","words","shrink","compoundVariants","className","stepperStepMainVariants","stepperStepTriggerVariants","select","default","web","join","stepperStepLabelVariants","stepperStepBodyVariants","stepperIndicatorVariants","stepperIndicatorRingVariants","stepperIndicatorDiscVariants","stepperIndicatorNumeralVariants","stepperIndicatorCheckVariants","stepperTitleVariants","isCentered","stepperDescriptionVariants","stepperContentVariants","stepperSeparatorVariants"],"sourceRoot":"../../../../src","sources":["components/Stepper/styles.ts"],"mappings":"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","ignoreList":[]}
@@ -0,0 +1,18 @@
1
+ "use strict";
2
+
3
+ /**
4
+ * How `horizontal-end` labels give way when the row runs out of room. `'words'` keeps each
5
+ * step at least as wide as its longest word, so labels wrap only between words; `'shrink'` lets
6
+ * steps shrink below that so the row never overflows.
7
+ */
8
+
9
+ const NATIVE_RESULT = {
10
+ fit: 'shrink',
11
+ measureRef: undefined
12
+ };
13
+
14
+ /** Native layout has no min-content sizing, so steps always shrink to fit. */
15
+ export function useStepperLabelFit(_enabled, _count) {
16
+ return NATIVE_RESULT;
17
+ }
18
+ //# sourceMappingURL=useStepperLabelFit.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["NATIVE_RESULT","fit","measureRef","undefined","useStepperLabelFit","_enabled","_count"],"sourceRoot":"../../../../src","sources":["components/Stepper/useStepperLabelFit.ts"],"mappings":";;AAGA;AACA;AACA;AACA;AACA;;AAQA,MAAMA,aAAoC,GAAG;EAAEC,GAAG,EAAE,QAAQ;EAAEC,UAAU,EAAEC;AAAU,CAAC;;AAErF;AACA,OAAO,SAASC,kBAAkBA,CAACC,QAAiB,EAAEC,MAAc,EAAyB;EAC3F,OAAON,aAAa;AACtB","ignoreList":[]}
@@ -0,0 +1,48 @@
1
+ "use strict";
2
+
3
+ import { useCallback, useEffect, useLayoutEffect, useState } from 'react';
4
+ /**
5
+ * CSS flex cannot keep min-content minimums only while they fit: `min-width: auto` overflows a
6
+ * tight row and `min-width: 0` breaks words even when there is room. So labels start at
7
+ * `'words'`, and if the root then overflows they switch to `'shrink'` before paint. The decision
8
+ * is kept until the root's width or the step count changes.
9
+ */
10
+ export function useStepperLabelFit(enabled, count) {
11
+ const [node, setNode] = useState(null);
12
+ const [width, setWidth] = useState(0);
13
+ const [decision, setDecision] = useState(null);
14
+ const key = `${String(width)}:${String(count)}`;
15
+ const fit = decision?.key === key ? decision.fit : 'words';
16
+ useEffect(() => {
17
+ if (!enabled || node === null || typeof ResizeObserver === 'undefined') {
18
+ return undefined;
19
+ }
20
+ const observer = new ResizeObserver(() => {
21
+ setWidth(node.clientWidth);
22
+ });
23
+ observer.observe(node);
24
+ return () => observer.disconnect();
25
+ }, [enabled, node]);
26
+
27
+ // No deps: label text can change without resizing the root, and the measurement is cheap.
28
+ // eslint-disable-next-line react-hooks/exhaustive-deps
29
+ useLayoutEffect(() => {
30
+ if (!enabled || node === null || fit !== 'words') {
31
+ return;
32
+ }
33
+ if (node.scrollWidth > node.clientWidth + 1) {
34
+ setDecision({
35
+ key,
36
+ fit: 'shrink'
37
+ });
38
+ }
39
+ });
40
+ const measureRef = useCallback(value => {
41
+ setNode(value);
42
+ }, []);
43
+ return {
44
+ fit: enabled ? fit : 'shrink',
45
+ measureRef: enabled ? measureRef : undefined
46
+ };
47
+ }
48
+ //# sourceMappingURL=useStepperLabelFit.web.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["useCallback","useEffect","useLayoutEffect","useState","useStepperLabelFit","enabled","count","node","setNode","width","setWidth","decision","setDecision","key","String","fit","ResizeObserver","undefined","observer","clientWidth","observe","disconnect","scrollWidth","measureRef","value"],"sourceRoot":"../../../../src","sources":["components/Stepper/useStepperLabelFit.web.ts"],"mappings":";;AAAA,SAASA,WAAW,EAAEC,SAAS,EAAEC,eAAe,EAAEC,QAAQ,QAA0B,OAAO;AAW3F;AACA;AACA;AACA;AACA;AACA;AACA,OAAO,SAASC,kBAAkBA,CAACC,OAAgB,EAAEC,KAAa,EAAyB;EACzF,MAAM,CAACC,IAAI,EAAEC,OAAO,CAAC,GAAGL,QAAQ,CAAqB,IAAI,CAAC;EAC1D,MAAM,CAACM,KAAK,EAAEC,QAAQ,CAAC,GAAGP,QAAQ,CAAC,CAAC,CAAC;EACrC,MAAM,CAACQ,QAAQ,EAAEC,WAAW,CAAC,GAAGT,QAAQ,CAAqB,IAAI,CAAC;EAElE,MAAMU,GAAG,GAAG,GAAGC,MAAM,CAACL,KAAK,CAAC,IAAIK,MAAM,CAACR,KAAK,CAAC,EAAE;EAC/C,MAAMS,GAAoB,GAAGJ,QAAQ,EAAEE,GAAG,KAAKA,GAAG,GAAGF,QAAQ,CAACI,GAAG,GAAG,OAAO;EAE3Ed,SAAS,CAAC,MAAM;IACd,IAAI,CAACI,OAAO,IAAIE,IAAI,KAAK,IAAI,IAAI,OAAOS,cAAc,KAAK,WAAW,EAAE;MACtE,OAAOC,SAAS;IAClB;IACA,MAAMC,QAAQ,GAAG,IAAIF,cAAc,CAAC,MAAM;MACxCN,QAAQ,CAACH,IAAI,CAACY,WAAW,CAAC;IAC5B,CAAC,CAAC;IACFD,QAAQ,CAACE,OAAO,CAACb,IAAI,CAAC;IACtB,OAAO,MAAMW,QAAQ,CAACG,UAAU,CAAC,CAAC;EACpC,CAAC,EAAE,CAAChB,OAAO,EAAEE,IAAI,CAAC,CAAC;;EAEnB;EACA;EACAL,eAAe,CAAC,MAAM;IACpB,IAAI,CAACG,OAAO,IAAIE,IAAI,KAAK,IAAI,IAAIQ,GAAG,KAAK,OAAO,EAAE;MAChD;IACF;IACA,IAAIR,IAAI,CAACe,WAAW,GAAGf,IAAI,CAACY,WAAW,GAAG,CAAC,EAAE;MAC3CP,WAAW,CAAC;QAAEC,GAAG;QAAEE,GAAG,EAAE;MAAS,CAAC,CAAC;IACrC;EACF,CAAC,CAAC;EAEF,MAAMQ,UAAU,GAAGvB,WAAW,CAAqBwB,KAAK,IAAK;IAC3DhB,OAAO,CAACgB,KAAsC,CAAC;EACjD,CAAC,EAAE,EAAE,CAAC;EAEN,OAAO;IAAET,GAAG,EAAEV,OAAO,GAAGU,GAAG,GAAG,QAAQ;IAAEQ,UAAU,EAAElB,OAAO,GAAGkB,UAAU,GAAGN;EAAU,CAAC;AACxF","ignoreList":[]}