@goliapkg/gds 1.7.0 → 2.0.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (592) hide show
  1. package/dist/{avatar-l3SaMCmU.js → avatar-Ct8OOGx6.js} +5 -5
  2. package/dist/avatar-Ct8OOGx6.js.map +1 -0
  3. package/dist/{badge-DTJq6AXr.js → badge-BCvi5RVF.js} +4 -4
  4. package/dist/badge-BCvi5RVF.js.map +1 -0
  5. package/dist/{button-avu-rQU4.js → button-BD3VHhwq.js} +2 -2
  6. package/dist/button-BD3VHhwq.js.map +1 -0
  7. package/dist/fonts.css +77 -11
  8. package/dist/{gesture-irjS0hVM.js → gesture-I79dlTuS.js} +1 -1
  9. package/dist/gesture-I79dlTuS.js.map +1 -0
  10. package/dist/highlight-BAGZc-4h.js.map +1 -1
  11. package/dist/hooks-BE-_EmDI.js.map +1 -1
  12. package/dist/{icon-button-YatlVZnz.js → icon-button-Bns79124.js} +3 -3
  13. package/dist/icon-button-Bns79124.js.map +1 -0
  14. package/dist/index.d.ts +3 -3
  15. package/dist/index.d.ts.map +1 -1
  16. package/dist/index.js +29 -29
  17. package/dist/l0-tokens/color-derive.d.ts.map +1 -1
  18. package/dist/l0-tokens/color-health.d.ts.map +1 -1
  19. package/dist/l0-tokens/color-math.d.ts.map +1 -1
  20. package/dist/l0-tokens/deps.d.ts.map +1 -1
  21. package/dist/l0-tokens/font-system.d.ts.map +1 -1
  22. package/dist/l0-tokens/generate-defaults.d.ts.map +1 -1
  23. package/dist/l0-tokens/glass-system.d.ts.map +1 -1
  24. package/dist/l0-tokens/index.d.ts +12 -12
  25. package/dist/l0-tokens/index.d.ts.map +1 -1
  26. package/dist/l0-tokens/index.js +1 -1
  27. package/dist/l0-tokens/motion-system.d.ts +1 -0
  28. package/dist/l0-tokens/motion-system.d.ts.map +1 -1
  29. package/dist/l0-tokens/shadow-system.d.ts.map +1 -1
  30. package/dist/l0-tokens/size-system.d.ts.map +1 -1
  31. package/dist/l0-tokens-DZkyVlac.js.map +1 -1
  32. package/dist/l1-systems/index.d.ts +2 -2
  33. package/dist/l1-systems/index.d.ts.map +1 -1
  34. package/dist/l1-systems/index.js +9 -9
  35. package/dist/l1-systems/theme.d.ts +30 -2
  36. package/dist/l1-systems/theme.d.ts.map +1 -1
  37. package/dist/l1-systems/use-theme.d.ts.map +1 -1
  38. package/dist/l2-primitives/aspect-ratio.d.ts.map +1 -1
  39. package/dist/l2-primitives/badge-dot.d.ts.map +1 -1
  40. package/dist/l2-primitives/badge.d.ts.map +1 -1
  41. package/dist/l2-primitives/button.d.ts.map +1 -1
  42. package/dist/l2-primitives/divider.d.ts.map +1 -1
  43. package/dist/l2-primitives/dot.d.ts.map +1 -1
  44. package/dist/l2-primitives/focus-ring.d.ts +9 -3
  45. package/dist/l2-primitives/focus-ring.d.ts.map +1 -1
  46. package/dist/l2-primitives/glow-effect.d.ts +8 -2
  47. package/dist/l2-primitives/glow-effect.d.ts.map +1 -1
  48. package/dist/l2-primitives/gradient-border.d.ts +8 -2
  49. package/dist/l2-primitives/gradient-border.d.ts.map +1 -1
  50. package/dist/l2-primitives/highlight.d.ts.map +1 -1
  51. package/dist/l2-primitives/index.js +8 -8
  52. package/dist/l2-primitives/input.d.ts +16 -0
  53. package/dist/l2-primitives/input.d.ts.map +1 -1
  54. package/dist/l2-primitives/kbd.d.ts.map +1 -1
  55. package/dist/l2-primitives/label.d.ts.map +1 -1
  56. package/dist/l2-primitives/loading.d.ts +21 -6
  57. package/dist/l2-primitives/loading.d.ts.map +1 -1
  58. package/dist/l2-primitives/number-input.d.ts.map +1 -1
  59. package/dist/l2-primitives/number-stepper.d.ts.map +1 -1
  60. package/dist/l2-primitives/progress.d.ts.map +1 -1
  61. package/dist/l2-primitives/scroll-area.d.ts.map +1 -1
  62. package/dist/l2-primitives/separator.d.ts.map +1 -1
  63. package/dist/l2-primitives/shimmer.d.ts.map +1 -1
  64. package/dist/l2-primitives/skeleton.d.ts.map +1 -1
  65. package/dist/l2-primitives/slider.d.ts.map +1 -1
  66. package/dist/l2-primitives/spinner.d.ts.map +1 -1
  67. package/dist/l2-primitives/truncate.d.ts +8 -2
  68. package/dist/l2-primitives/truncate.d.ts.map +1 -1
  69. package/dist/l2-primitives/visually-hidden.d.ts.map +1 -1
  70. package/dist/{l2-primitives-Le0006ck.js → l2-primitives-Cn0KNxbB.js} +84 -67
  71. package/dist/l2-primitives-Cn0KNxbB.js.map +1 -0
  72. package/dist/l3-atoms/animated-border.d.ts +1 -1
  73. package/dist/l3-atoms/animated-border.d.ts.map +1 -1
  74. package/dist/l3-atoms/animated-counter.d.ts.map +1 -1
  75. package/dist/l3-atoms/animated-number.d.ts.map +1 -1
  76. package/dist/l3-atoms/avatar-badge.d.ts.map +1 -1
  77. package/dist/l3-atoms/avatar.d.ts.map +1 -1
  78. package/dist/l3-atoms/barcode.d.ts.map +1 -1
  79. package/dist/l3-atoms/blinking.d.ts.map +1 -1
  80. package/dist/l3-atoms/bounce-dot.d.ts.map +1 -1
  81. package/dist/l3-atoms/checkbox-group.d.ts.map +1 -1
  82. package/dist/l3-atoms/checkbox.d.ts.map +1 -1
  83. package/dist/l3-atoms/chip.d.ts.map +1 -1
  84. package/dist/l3-atoms/color-swatch.d.ts.map +1 -1
  85. package/dist/l3-atoms/copy-button.d.ts.map +1 -1
  86. package/dist/l3-atoms/count-badge.d.ts.map +1 -1
  87. package/dist/l3-atoms/count-up.d.ts.map +1 -1
  88. package/dist/l3-atoms/countdown-badge.d.ts.map +1 -1
  89. package/dist/l3-atoms/countdown.d.ts.map +1 -1
  90. package/dist/l3-atoms/cursor-follow.d.ts.map +1 -1
  91. package/dist/l3-atoms/diff-indicator.d.ts.map +1 -1
  92. package/dist/l3-atoms/glow-dot.d.ts.map +1 -1
  93. package/dist/l3-atoms/gradient-text.d.ts.map +1 -1
  94. package/dist/l3-atoms/heat-cell.d.ts.map +1 -1
  95. package/dist/l3-atoms/hotkey.d.ts.map +1 -1
  96. package/dist/l3-atoms/index.d.ts +4 -4
  97. package/dist/l3-atoms/index.d.ts.map +1 -1
  98. package/dist/l3-atoms/index.js +6 -6
  99. package/dist/l3-atoms/info-tip.d.ts.map +1 -1
  100. package/dist/l3-atoms/key-value.d.ts.map +1 -1
  101. package/dist/l3-atoms/keyboard-shortcut.d.ts.map +1 -1
  102. package/dist/l3-atoms/live-dot.d.ts.map +1 -1
  103. package/dist/l3-atoms/loading-dots.d.ts.map +1 -1
  104. package/dist/l3-atoms/magnetic-button.d.ts.map +1 -1
  105. package/dist/l3-atoms/marquee.d.ts.map +1 -1
  106. package/dist/l3-atoms/meter.d.ts.map +1 -1
  107. package/dist/l3-atoms/number-flow.d.ts.map +1 -1
  108. package/dist/l3-atoms/online-indicator.d.ts.map +1 -1
  109. package/dist/l3-atoms/orbit.d.ts +1 -1
  110. package/dist/l3-atoms/orbit.d.ts.map +1 -1
  111. package/dist/l3-atoms/percentage-circle.d.ts.map +1 -1
  112. package/dist/l3-atoms/percentage.d.ts.map +1 -1
  113. package/dist/l3-atoms/price.d.ts.map +1 -1
  114. package/dist/l3-atoms/progress-circle.d.ts.map +1 -1
  115. package/dist/l3-atoms/progress-ring.d.ts.map +1 -1
  116. package/dist/l3-atoms/pulse-indicator.d.ts.map +1 -1
  117. package/dist/l3-atoms/pulse-ring.d.ts.map +1 -1
  118. package/dist/l3-atoms/qr-code.d.ts.map +1 -1
  119. package/dist/l3-atoms/quick-action.d.ts.map +1 -1
  120. package/dist/l3-atoms/radio-group.d.ts.map +1 -1
  121. package/dist/l3-atoms/range-slider.d.ts.map +1 -1
  122. package/dist/l3-atoms/rating.d.ts.map +1 -1
  123. package/dist/l3-atoms/ribbon-banner.d.ts.map +1 -1
  124. package/dist/l3-atoms/ribbon.d.ts.map +1 -1
  125. package/dist/l3-atoms/ripple-effect.d.ts.map +1 -1
  126. package/dist/l3-atoms/scroll-to-top.d.ts.map +1 -1
  127. package/dist/l3-atoms/segmented-control.d.ts +1 -1
  128. package/dist/l3-atoms/segmented-control.d.ts.map +1 -1
  129. package/dist/l3-atoms/shortcut-display.d.ts.map +1 -1
  130. package/dist/l3-atoms/skeleton-group.d.ts.map +1 -1
  131. package/dist/l3-atoms/sparkle.d.ts.map +1 -1
  132. package/dist/l3-atoms/stagger.d.ts +1 -1
  133. package/dist/l3-atoms/stagger.d.ts.map +1 -1
  134. package/dist/l3-atoms/star-rating.d.ts.map +1 -1
  135. package/dist/l3-atoms/status-badge.d.ts.map +1 -1
  136. package/dist/l3-atoms/status-dot.d.ts.map +1 -1
  137. package/dist/l3-atoms/switch-group.d.ts.map +1 -1
  138. package/dist/l3-atoms/switch.d.ts.map +1 -1
  139. package/dist/l3-atoms/text-badge.d.ts.map +1 -1
  140. package/dist/l3-atoms/text-effect.d.ts.map +1 -1
  141. package/dist/l3-atoms/textarea-counter.d.ts.map +1 -1
  142. package/dist/l3-atoms/theme-toggle.d.ts.map +1 -1
  143. package/dist/l3-atoms/toggle-group.d.ts.map +1 -1
  144. package/dist/l3-atoms/tooltip.d.ts.map +1 -1
  145. package/dist/l3-atoms/trend-arrow.d.ts.map +1 -1
  146. package/dist/l3-atoms/trend-indicator.d.ts +1 -1
  147. package/dist/l3-atoms/trend-indicator.d.ts.map +1 -1
  148. package/dist/l3-atoms/truncated-list.d.ts.map +1 -1
  149. package/dist/l3-atoms/verified-badge.d.ts.map +1 -1
  150. package/dist/l3-atoms/visual-counter.d.ts.map +1 -1
  151. package/dist/l3-atoms/volume-slider.d.ts +1 -1
  152. package/dist/l3-atoms/volume-slider.d.ts.map +1 -1
  153. package/dist/l3-atoms/zoom-on-hover.d.ts.map +1 -1
  154. package/dist/{l3-atoms-Cvu01YHO.js → l3-atoms-BCJNqPHk.js} +199 -236
  155. package/dist/l3-atoms-BCJNqPHk.js.map +1 -0
  156. package/dist/l4-molecules/accordion.d.ts +2 -2
  157. package/dist/l4-molecules/accordion.d.ts.map +1 -1
  158. package/dist/l4-molecules/action-card.d.ts.map +1 -1
  159. package/dist/l4-molecules/action-menu.d.ts.map +1 -1
  160. package/dist/l4-molecules/activity-log.d.ts.map +1 -1
  161. package/dist/l4-molecules/alert.d.ts.map +1 -1
  162. package/dist/l4-molecules/audit-entry.d.ts.map +1 -1
  163. package/dist/l4-molecules/banner.d.ts.map +1 -1
  164. package/dist/l4-molecules/before-after.d.ts.map +1 -1
  165. package/dist/l4-molecules/breadcrumb.d.ts.map +1 -1
  166. package/dist/l4-molecules/bulk-action-bar.d.ts.map +1 -1
  167. package/dist/l4-molecules/callout.d.ts.map +1 -1
  168. package/dist/l4-molecules/card.d.ts +1 -1
  169. package/dist/l4-molecules/card.d.ts.map +1 -1
  170. package/dist/l4-molecules/category-tag.d.ts.map +1 -1
  171. package/dist/l4-molecules/cert-badge.d.ts.map +1 -1
  172. package/dist/l4-molecules/chip-group.d.ts.map +1 -1
  173. package/dist/l4-molecules/circular-menu.d.ts.map +1 -1
  174. package/dist/l4-molecules/code-block.d.ts.map +1 -1
  175. package/dist/l4-molecules/code-snippet.d.ts.map +1 -1
  176. package/dist/l4-molecules/collapsible.d.ts +1 -1
  177. package/dist/l4-molecules/collapsible.d.ts.map +1 -1
  178. package/dist/l4-molecules/color-picker.d.ts.map +1 -1
  179. package/dist/l4-molecules/combobox-list.d.ts +4 -1
  180. package/dist/l4-molecules/combobox-list.d.ts.map +1 -1
  181. package/dist/l4-molecules/combobox.d.ts +5 -0
  182. package/dist/l4-molecules/combobox.d.ts.map +1 -1
  183. package/dist/l4-molecules/command-bar-float.d.ts.map +1 -1
  184. package/dist/l4-molecules/command-bar.d.ts.map +1 -1
  185. package/dist/l4-molecules/command-menu.d.ts.map +1 -1
  186. package/dist/l4-molecules/comparison-bar.d.ts.map +1 -1
  187. package/dist/l4-molecules/confirm-dialog.d.ts.map +1 -1
  188. package/dist/l4-molecules/context-menu.d.ts +1 -1
  189. package/dist/l4-molecules/context-menu.d.ts.map +1 -1
  190. package/dist/l4-molecules/copy-field.d.ts.map +1 -1
  191. package/dist/l4-molecules/copy-to-clipboard.d.ts.map +1 -1
  192. package/dist/l4-molecules/countdown-timer.d.ts.map +1 -1
  193. package/dist/l4-molecules/currency-display.d.ts.map +1 -1
  194. package/dist/l4-molecules/currency-input.d.ts.map +1 -1
  195. package/dist/l4-molecules/data-card.d.ts.map +1 -1
  196. package/dist/l4-molecules/date-display.d.ts.map +1 -1
  197. package/dist/l4-molecules/date-range-input.d.ts.map +1 -1
  198. package/dist/l4-molecules/description.d.ts.map +1 -1
  199. package/dist/l4-molecules/dialog.d.ts.map +1 -1
  200. package/dist/l4-molecules/dock.d.ts.map +1 -1
  201. package/dist/l4-molecules/download-button.d.ts.map +1 -1
  202. package/dist/l4-molecules/drawer.d.ts.map +1 -1
  203. package/dist/l4-molecules/drop-zone.d.ts.map +1 -1
  204. package/dist/l4-molecules/dropdown.d.ts +1 -1
  205. package/dist/l4-molecules/dropdown.d.ts.map +1 -1
  206. package/dist/l4-molecules/editable.d.ts.map +1 -1
  207. package/dist/l4-molecules/email-composer-field.d.ts +38 -0
  208. package/dist/l4-molecules/email-composer-field.d.ts.map +1 -0
  209. package/dist/l4-molecules/emoji-picker.d.ts.map +1 -1
  210. package/dist/l4-molecules/empty-placeholder.d.ts.map +1 -1
  211. package/dist/l4-molecules/empty-search.d.ts.map +1 -1
  212. package/dist/l4-molecules/environment-badge.d.ts.map +1 -1
  213. package/dist/l4-molecules/feature-flag.d.ts.map +1 -1
  214. package/dist/l4-molecules/field-group.d.ts.map +1 -1
  215. package/dist/l4-molecules/file-upload.d.ts.map +1 -1
  216. package/dist/l4-molecules/filter-bar.d.ts.map +1 -1
  217. package/dist/l4-molecules/flip-card.d.ts.map +1 -1
  218. package/dist/l4-molecules/form-actions.d.ts.map +1 -1
  219. package/dist/l4-molecules/form-field.d.ts.map +1 -1
  220. package/dist/l4-molecules/glass-button.d.ts.map +1 -1
  221. package/dist/l4-molecules/glass-card.d.ts.map +1 -1
  222. package/dist/l4-molecules/glitch-text.d.ts.map +1 -1
  223. package/dist/l4-molecules/hover-card.d.ts.map +1 -1
  224. package/dist/l4-molecules/index.d.ts +11 -5
  225. package/dist/l4-molecules/index.d.ts.map +1 -1
  226. package/dist/l4-molecules/index.js +4 -4
  227. package/dist/l4-molecules/info-row.d.ts.map +1 -1
  228. package/dist/l4-molecules/inline-edit.d.ts.map +1 -1
  229. package/dist/l4-molecules/input-group.d.ts.map +1 -1
  230. package/dist/l4-molecules/input-with-button.d.ts.map +1 -1
  231. package/dist/l4-molecules/key-value-list.d.ts.map +1 -1
  232. package/dist/l4-molecules/kv-table.d.ts.map +1 -1
  233. package/dist/l4-molecules/link-preview.d.ts.map +1 -1
  234. package/dist/l4-molecules/list-item.d.ts.map +1 -1
  235. package/dist/l4-molecules/live-metric.d.ts.map +1 -1
  236. package/dist/l4-molecules/matrix-rain.d.ts.map +1 -1
  237. package/dist/l4-molecules/media-container.d.ts.map +1 -1
  238. package/dist/l4-molecules/media-object.d.ts.map +1 -1
  239. package/dist/l4-molecules/mention-input.d.ts.map +1 -1
  240. package/dist/l4-molecules/mention-list.d.ts +1 -1
  241. package/dist/l4-molecules/mention-list.d.ts.map +1 -1
  242. package/dist/l4-molecules/metric-row.d.ts.map +1 -1
  243. package/dist/l4-molecules/metric-tile.d.ts.map +1 -1
  244. package/dist/l4-molecules/morphing-shape.d.ts.map +1 -1
  245. package/dist/l4-molecules/multi-select-list.d.ts.map +1 -1
  246. package/dist/l4-molecules/multi-select.d.ts.map +1 -1
  247. package/dist/l4-molecules/nav-item.d.ts.map +1 -1
  248. package/dist/l4-molecules/network-status.d.ts.map +1 -1
  249. package/dist/l4-molecules/noise-overlay.d.ts.map +1 -1
  250. package/dist/l4-molecules/notification-bell.d.ts.map +1 -1
  251. package/dist/l4-molecules/notification-dot.d.ts.map +1 -1
  252. package/dist/l4-molecules/notification.d.ts.map +1 -1
  253. package/dist/l4-molecules/num-table.d.ts.map +1 -1
  254. package/dist/l4-molecules/otp-input.d.ts.map +1 -1
  255. package/dist/l4-molecules/overflow-menu.d.ts.map +1 -1
  256. package/dist/l4-molecules/page-nav.d.ts.map +1 -1
  257. package/dist/l4-molecules/pagination.d.ts.map +1 -1
  258. package/dist/l4-molecules/panel.d.ts.map +1 -1
  259. package/dist/l4-molecules/particle-field.d.ts.map +1 -1
  260. package/dist/l4-molecules/password-input.d.ts.map +1 -1
  261. package/dist/l4-molecules/phone-input.d.ts.map +1 -1
  262. package/dist/l4-molecules/pin-input.d.ts.map +1 -1
  263. package/dist/l4-molecules/popover.d.ts.map +1 -1
  264. package/dist/l4-molecules/progress-steps.d.ts.map +1 -1
  265. package/dist/l4-molecules/quick-stat.d.ts.map +1 -1
  266. package/dist/l4-molecules/radio-card.d.ts.map +1 -1
  267. package/dist/l4-molecules/reveal.d.ts.map +1 -1
  268. package/dist/l4-molecules/scoreboard.d.ts.map +1 -1
  269. package/dist/l4-molecules/search-input.d.ts.map +1 -1
  270. package/dist/l4-molecules/select.d.ts.map +1 -1
  271. package/dist/l4-molecules/sheet.d.ts.map +1 -1
  272. package/dist/l4-molecules/slider-field.d.ts.map +1 -1
  273. package/dist/l4-molecules/sortable-header.d.ts.map +1 -1
  274. package/dist/l4-molecules/split-button.d.ts +1 -1
  275. package/dist/l4-molecules/split-button.d.ts.map +1 -1
  276. package/dist/l4-molecules/stacked-progress.d.ts.map +1 -1
  277. package/dist/l4-molecules/stat-comparison.d.ts.map +1 -1
  278. package/dist/l4-molecules/stat-trend.d.ts.map +1 -1
  279. package/dist/l4-molecules/status-bar-component.d.ts.map +1 -1
  280. package/dist/l4-molecules/stepper.d.ts.map +1 -1
  281. package/dist/l4-molecules/tab-group.d.ts +5 -1
  282. package/dist/l4-molecules/tab-group.d.ts.map +1 -1
  283. package/dist/l4-molecules/tabs.d.ts +4 -1
  284. package/dist/l4-molecules/tabs.d.ts.map +1 -1
  285. package/dist/l4-molecules/tag-input.d.ts.map +1 -1
  286. package/dist/l4-molecules/task-item.d.ts.map +1 -1
  287. package/dist/l4-molecules/text-reveal.d.ts.map +1 -1
  288. package/dist/l4-molecules/text-scramble.d.ts.map +1 -1
  289. package/dist/l4-molecules/tilt-card.d.ts.map +1 -1
  290. package/dist/l4-molecules/time-picker-grid.d.ts.map +1 -1
  291. package/dist/l4-molecules/time-picker.d.ts.map +1 -1
  292. package/dist/l4-molecules/timeline-item.d.ts.map +1 -1
  293. package/dist/l4-molecules/toast-provider.d.ts +10 -0
  294. package/dist/l4-molecules/toast-provider.d.ts.map +1 -0
  295. package/dist/l4-molecules/toast-store.d.ts +42 -0
  296. package/dist/l4-molecules/toast-store.d.ts.map +1 -0
  297. package/dist/l4-molecules/toast.d.ts.map +1 -1
  298. package/dist/l4-molecules/toggle-field.d.ts.map +1 -1
  299. package/dist/l4-molecules/toolbar-generic.d.ts.map +1 -1
  300. package/dist/l4-molecules/upload-progress.d.ts.map +1 -1
  301. package/dist/l4-molecules/user-card.d.ts.map +1 -1
  302. package/dist/l4-molecules/user-info.d.ts.map +1 -1
  303. package/dist/l4-molecules/user-menu.d.ts.map +1 -1
  304. package/dist/l4-molecules/version-badge.d.ts.map +1 -1
  305. package/dist/l4-molecules/watermark.d.ts.map +1 -1
  306. package/dist/l4-molecules/wizard.d.ts.map +1 -1
  307. package/dist/{l4-molecules-CSmApFmt.js → l4-molecules-DtNnQaFU.js} +1703 -1517
  308. package/dist/l4-molecules-DtNnQaFU.js.map +1 -0
  309. package/dist/l5-organisms/activity-feed.d.ts.map +1 -1
  310. package/dist/l5-organisms/animate-presence.d.ts.map +1 -1
  311. package/dist/l5-organisms/audio-player.d.ts.map +1 -1
  312. package/dist/l5-organisms/audit-log.d.ts.map +1 -1
  313. package/dist/l5-organisms/avatar-list.d.ts.map +1 -1
  314. package/dist/l5-organisms/calendar-utils.d.ts.map +1 -1
  315. package/dist/l5-organisms/calendar.d.ts.map +1 -1
  316. package/dist/l5-organisms/carousel.d.ts.map +1 -1
  317. package/dist/l5-organisms/changelog.d.ts.map +1 -1
  318. package/dist/l5-organisms/command-palette-list.d.ts +3 -1
  319. package/dist/l5-organisms/command-palette-list.d.ts.map +1 -1
  320. package/dist/l5-organisms/command-palette.d.ts +10 -1
  321. package/dist/l5-organisms/command-palette.d.ts.map +1 -1
  322. package/dist/l5-organisms/comment-thread.d.ts.map +1 -1
  323. package/dist/l5-organisms/confetti.d.ts.map +1 -1
  324. package/dist/l5-organisms/contact-card.d.ts.map +1 -1
  325. package/dist/l5-organisms/container-list.d.ts.map +1 -1
  326. package/dist/l5-organisms/cookie-banner.d.ts.map +1 -1
  327. package/dist/l5-organisms/cron-schedule.d.ts.map +1 -1
  328. package/dist/l5-organisms/data-grid.d.ts.map +1 -1
  329. package/dist/l5-organisms/data-list.d.ts.map +1 -1
  330. package/dist/l5-organisms/data-table/data-table-body.d.ts.map +1 -1
  331. package/dist/l5-organisms/data-table/data-table-head.d.ts.map +1 -1
  332. package/dist/l5-organisms/data-table/data-table-pagination.d.ts.map +1 -1
  333. package/dist/l5-organisms/data-table/data-table-toolbar.d.ts.map +1 -1
  334. package/dist/l5-organisms/data-table/data-table-types.d.ts +1 -1
  335. package/dist/l5-organisms/data-table/data-table-types.d.ts.map +1 -1
  336. package/dist/l5-organisms/data-table/data-table.d.ts.map +1 -1
  337. package/dist/l5-organisms/data-table/index.d.ts +1 -1
  338. package/dist/l5-organisms/data-table/index.d.ts.map +1 -1
  339. package/dist/l5-organisms/date-picker.d.ts.map +1 -1
  340. package/dist/l5-organisms/deploy-log.d.ts.map +1 -1
  341. package/dist/l5-organisms/description-list.d.ts.map +1 -1
  342. package/dist/l5-organisms/diff-algorithm.d.ts.map +1 -1
  343. package/dist/l5-organisms/diff-viewer.d.ts.map +1 -1
  344. package/dist/l5-organisms/email-composer.d.ts +118 -0
  345. package/dist/l5-organisms/email-composer.d.ts.map +1 -0
  346. package/dist/l5-organisms/email-list-item.d.ts.map +1 -1
  347. package/dist/l5-organisms/email-thread.d.ts +85 -0
  348. package/dist/l5-organisms/email-thread.d.ts.map +1 -0
  349. package/dist/l5-organisms/embed.d.ts.map +1 -1
  350. package/dist/l5-organisms/employee-card.d.ts.map +1 -1
  351. package/dist/l5-organisms/error-boundary.d.ts.map +1 -1
  352. package/dist/l5-organisms/file-browser.d.ts.map +1 -1
  353. package/dist/l5-organisms/file-card.d.ts.map +1 -1
  354. package/dist/l5-organisms/form-builder.d.ts.map +1 -1
  355. package/dist/l5-organisms/gantt-chart/gantt-chart-utils.d.ts.map +1 -1
  356. package/dist/l5-organisms/gantt-chart/gantt-chart.d.ts.map +1 -1
  357. package/dist/l5-organisms/gantt-chart/index.d.ts +1 -1
  358. package/dist/l5-organisms/gantt-chart/index.d.ts.map +1 -1
  359. package/dist/l5-organisms/heatmap-table.d.ts.map +1 -1
  360. package/dist/l5-organisms/image-preview.d.ts.map +1 -1
  361. package/dist/l5-organisms/index.d.ts +18 -12
  362. package/dist/l5-organisms/index.d.ts.map +1 -1
  363. package/dist/l5-organisms/index.js +2 -2
  364. package/dist/l5-organisms/infinite-scroll.d.ts.map +1 -1
  365. package/dist/l5-organisms/json-node.d.ts +1 -1
  366. package/dist/l5-organisms/json-node.d.ts.map +1 -1
  367. package/dist/l5-organisms/kanban.d.ts +2 -2
  368. package/dist/l5-organisms/kanban.d.ts.map +1 -1
  369. package/dist/l5-organisms/markdown-editor.d.ts.map +1 -1
  370. package/dist/l5-organisms/markdown-parser.d.ts.map +1 -1
  371. package/dist/l5-organisms/markdown-preview.d.ts +6 -0
  372. package/dist/l5-organisms/markdown-preview.d.ts.map +1 -1
  373. package/dist/l5-organisms/notification-center.d.ts.map +1 -1
  374. package/dist/l5-organisms/notification-toast.d.ts.map +1 -1
  375. package/dist/l5-organisms/parallax.d.ts.map +1 -1
  376. package/dist/l5-organisms/payslip-card.d.ts.map +1 -1
  377. package/dist/l5-organisms/permission-matrix.d.ts.map +1 -1
  378. package/dist/l5-organisms/progress-timeline.d.ts.map +1 -1
  379. package/dist/l5-organisms/property-editor.d.ts.map +1 -1
  380. package/dist/l5-organisms/quick-links.d.ts.map +1 -1
  381. package/dist/l5-organisms/recent-activity.d.ts.map +1 -1
  382. package/dist/l5-organisms/responsive-stack.d.ts.map +1 -1
  383. package/dist/l5-organisms/responsive-table.d.ts.map +1 -1
  384. package/dist/l5-organisms/rich-select-list.d.ts +1 -1
  385. package/dist/l5-organisms/rich-select-list.d.ts.map +1 -1
  386. package/dist/l5-organisms/rich-select.d.ts.map +1 -1
  387. package/dist/l5-organisms/rich-text-editor.d.ts +56 -0
  388. package/dist/l5-organisms/rich-text-editor.d.ts.map +1 -0
  389. package/dist/l5-organisms/search-results.d.ts.map +1 -1
  390. package/dist/l5-organisms/service-card.d.ts.map +1 -1
  391. package/dist/l5-organisms/signature-drawing.d.ts +1 -1
  392. package/dist/l5-organisms/signature-drawing.d.ts.map +1 -1
  393. package/dist/l5-organisms/signature-pad.d.ts.map +1 -1
  394. package/dist/l5-organisms/sortable-table.d.ts.map +1 -1
  395. package/dist/l5-organisms/spotlight.d.ts.map +1 -1
  396. package/dist/l5-organisms/stacked-list.d.ts.map +1 -1
  397. package/dist/l5-organisms/step-form.d.ts.map +1 -1
  398. package/dist/l5-organisms/system-health.d.ts.map +1 -1
  399. package/dist/l5-organisms/table.d.ts.map +1 -1
  400. package/dist/l5-organisms/task-board.d.ts.map +1 -1
  401. package/dist/l5-organisms/timeline.d.ts +1 -1
  402. package/dist/l5-organisms/timeline.d.ts.map +1 -1
  403. package/dist/l5-organisms/tour.d.ts.map +1 -1
  404. package/dist/l5-organisms/transaction-list.d.ts.map +1 -1
  405. package/dist/l5-organisms/tree.d.ts.map +1 -1
  406. package/dist/l5-organisms/video-controls.d.ts.map +1 -1
  407. package/dist/l5-organisms/video-player.d.ts.map +1 -1
  408. package/dist/l5-organisms/virtual-list.d.ts.map +1 -1
  409. package/dist/l5-organisms/weather-widget.d.ts.map +1 -1
  410. package/dist/l5-organisms-Bu2Z8LSj.js +6147 -0
  411. package/dist/l5-organisms-Bu2Z8LSj.js.map +1 -0
  412. package/dist/l6-charts/annotated-chart.d.ts +1 -1
  413. package/dist/l6-charts/annotated-chart.d.ts.map +1 -1
  414. package/dist/l6-charts/area-chart.d.ts.map +1 -1
  415. package/dist/l6-charts/bar-chart.d.ts.map +1 -1
  416. package/dist/l6-charts/box-plot.d.ts.map +1 -1
  417. package/dist/l6-charts/bullet-chart.d.ts.map +1 -1
  418. package/dist/l6-charts/bump-chart.d.ts.map +1 -1
  419. package/dist/l6-charts/calendar-heatmap.d.ts.map +1 -1
  420. package/dist/l6-charts/candlestick-chart.d.ts.map +1 -1
  421. package/dist/l6-charts/chord-diagram.d.ts.map +1 -1
  422. package/dist/l6-charts/chord-math.d.ts.map +1 -1
  423. package/dist/l6-charts/choropleth-map.d.ts +1 -1
  424. package/dist/l6-charts/choropleth-map.d.ts.map +1 -1
  425. package/dist/l6-charts/combo-chart.d.ts.map +1 -1
  426. package/dist/l6-charts/donut-gauge.d.ts.map +1 -1
  427. package/dist/l6-charts/flame-chart.d.ts.map +1 -1
  428. package/dist/l6-charts/flow-chart.d.ts.map +1 -1
  429. package/dist/l6-charts/funnel-chart.d.ts.map +1 -1
  430. package/dist/l6-charts/gauge.d.ts.map +1 -1
  431. package/dist/l6-charts/heatmap-chart.d.ts.map +1 -1
  432. package/dist/l6-charts/heatmap-utils.d.ts.map +1 -1
  433. package/dist/l6-charts/histogram.d.ts.map +1 -1
  434. package/dist/l6-charts/index.d.ts +1 -1
  435. package/dist/l6-charts/index.d.ts.map +1 -1
  436. package/dist/l6-charts/index.js +1 -1
  437. package/dist/l6-charts/line-chart.d.ts.map +1 -1
  438. package/dist/l6-charts/network-graph.d.ts.map +1 -1
  439. package/dist/l6-charts/order-book-chart.d.ts.map +1 -1
  440. package/dist/l6-charts/pie-chart.d.ts.map +1 -1
  441. package/dist/l6-charts/polar-area-chart.d.ts +1 -1
  442. package/dist/l6-charts/polar-area-chart.d.ts.map +1 -1
  443. package/dist/l6-charts/radar-chart.d.ts.map +1 -1
  444. package/dist/l6-charts/radial-bar-chart.d.ts.map +1 -1
  445. package/dist/l6-charts/realtime-chart.d.ts.map +1 -1
  446. package/dist/l6-charts/sankey-chart.d.ts.map +1 -1
  447. package/dist/l6-charts/scatter-chart.d.ts.map +1 -1
  448. package/dist/l6-charts/sparkline.d.ts.map +1 -1
  449. package/dist/l6-charts/stock-ticker.d.ts.map +1 -1
  450. package/dist/l6-charts/stream-chart.d.ts.map +1 -1
  451. package/dist/l6-charts/sunburst-chart.d.ts.map +1 -1
  452. package/dist/l6-charts/sunburst-math.d.ts.map +1 -1
  453. package/dist/l6-charts/timeline-chart.d.ts.map +1 -1
  454. package/dist/l6-charts/treemap-chart.d.ts.map +1 -1
  455. package/dist/l6-charts/violin-plot.d.ts.map +1 -1
  456. package/dist/l6-charts/waffle-chart.d.ts.map +1 -1
  457. package/dist/l6-charts/waterfall-chart.d.ts.map +1 -1
  458. package/dist/l6-charts/word-cloud.d.ts.map +1 -1
  459. package/dist/{l6-charts-DPMj1m0E.js → l6-charts-ngP5gbBh.js} +51 -51
  460. package/dist/l6-charts-ngP5gbBh.js.map +1 -0
  461. package/dist/l7-patterns/admin-layout.d.ts +6 -0
  462. package/dist/l7-patterns/admin-layout.d.ts.map +1 -1
  463. package/dist/l7-patterns/analytics-dashboard.d.ts.map +1 -1
  464. package/dist/l7-patterns/app-shell.d.ts +44 -0
  465. package/dist/l7-patterns/app-shell.d.ts.map +1 -0
  466. package/dist/l7-patterns/bento-grid.d.ts.map +1 -1
  467. package/dist/l7-patterns/calendar-view.d.ts.map +1 -1
  468. package/dist/l7-patterns/comparison-table.d.ts.map +1 -1
  469. package/dist/l7-patterns/composition-pattern.d.ts.map +1 -1
  470. package/dist/l7-patterns/cta-banner.d.ts.map +1 -1
  471. package/dist/l7-patterns/dashboard-layout.d.ts.map +1 -1
  472. package/dist/l7-patterns/data-export-card.d.ts.map +1 -1
  473. package/dist/l7-patterns/devops-layout.d.ts.map +1 -1
  474. package/dist/l7-patterns/empty-state.d.ts.map +1 -1
  475. package/dist/l7-patterns/faq.d.ts.map +1 -1
  476. package/dist/l7-patterns/feature-card.d.ts.map +1 -1
  477. package/dist/l7-patterns/footer.d.ts.map +1 -1
  478. package/dist/l7-patterns/form-layout.d.ts.map +1 -1
  479. package/dist/l7-patterns/form-pattern.d.ts.map +1 -1
  480. package/dist/l7-patterns/glass-panel.d.ts.map +1 -1
  481. package/dist/l7-patterns/grid-layout.d.ts.map +1 -1
  482. package/dist/l7-patterns/hero.d.ts.map +1 -1
  483. package/dist/l7-patterns/hr-dashboard.d.ts.map +1 -1
  484. package/dist/l7-patterns/inbox-layout.d.ts +50 -3
  485. package/dist/l7-patterns/inbox-layout.d.ts.map +1 -1
  486. package/dist/l7-patterns/index.d.ts +8 -4
  487. package/dist/l7-patterns/index.d.ts.map +1 -1
  488. package/dist/l7-patterns/index.js +2 -2
  489. package/dist/l7-patterns/kpi-dashboard.d.ts.map +1 -1
  490. package/dist/l7-patterns/loading-states.d.ts.map +1 -1
  491. package/dist/l7-patterns/login-form.d.ts.map +1 -1
  492. package/dist/l7-patterns/mail-composer.d.ts.map +1 -1
  493. package/dist/l7-patterns/masonry.d.ts.map +1 -1
  494. package/dist/l7-patterns/media-grid.d.ts.map +1 -1
  495. package/dist/l7-patterns/metric-card.d.ts.map +1 -1
  496. package/dist/l7-patterns/nav-bar.d.ts.map +1 -1
  497. package/dist/l7-patterns/notification-list.d.ts.map +1 -1
  498. package/dist/l7-patterns/onboarding-card.d.ts.map +1 -1
  499. package/dist/l7-patterns/page-header.d.ts.map +1 -1
  500. package/dist/l7-patterns/panel-group.d.ts +42 -0
  501. package/dist/l7-patterns/panel-group.d.ts.map +1 -0
  502. package/dist/l7-patterns/payroll-dashboard.d.ts.map +1 -1
  503. package/dist/l7-patterns/pricing-card.d.ts.map +1 -1
  504. package/dist/l7-patterns/profile-card.d.ts.map +1 -1
  505. package/dist/l7-patterns/project-dashboard.d.ts.map +1 -1
  506. package/dist/l7-patterns/responsive-container.d.ts.map +1 -1
  507. package/dist/l7-patterns/server-overview.d.ts.map +1 -1
  508. package/dist/l7-patterns/settings-layout.d.ts +6 -1
  509. package/dist/l7-patterns/settings-layout.d.ts.map +1 -1
  510. package/dist/l7-patterns/sidebar.d.ts +14 -0
  511. package/dist/l7-patterns/sidebar.d.ts.map +1 -1
  512. package/dist/l7-patterns/skeleton-pattern.d.ts.map +1 -1
  513. package/dist/l7-patterns/splash-screen.d.ts.map +1 -1
  514. package/dist/l7-patterns/split-view.d.ts.map +1 -1
  515. package/dist/l7-patterns/stat.d.ts.map +1 -1
  516. package/dist/l7-patterns/stats-card.d.ts.map +1 -1
  517. package/dist/l7-patterns/status-page.d.ts.map +1 -1
  518. package/dist/l7-patterns/stepper-form.d.ts.map +1 -1
  519. package/dist/l7-patterns/sticky-header.d.ts.map +1 -1
  520. package/dist/l7-patterns/testimonial.d.ts.map +1 -1
  521. package/dist/l7-patterns/timeline-steps.d.ts.map +1 -1
  522. package/dist/l7-patterns/toolbar.d.ts.map +1 -1
  523. package/dist/l7-patterns/wizard-layout.d.ts.map +1 -1
  524. package/dist/l7-patterns-CwonNW9o.js +2272 -0
  525. package/dist/l7-patterns-CwonNW9o.js.map +1 -0
  526. package/dist/loading-dots-C1LPHGa0.js +62 -0
  527. package/dist/loading-dots-C1LPHGa0.js.map +1 -0
  528. package/dist/motion-DUPegem-.js.map +1 -1
  529. package/dist/portal-Bbl6F_Wj.js.map +1 -1
  530. package/dist/{progress-wAKN3Czz.js → progress-dZIQEiTw.js} +5 -5
  531. package/dist/progress-dZIQEiTw.js.map +1 -0
  532. package/dist/{resize-handle-ilSc7QRM.js → resize-handle-BjSNhgJK.js} +5 -5
  533. package/dist/resize-handle-BjSNhgJK.js.map +1 -0
  534. package/dist/sanitize-BF45M9xp.js +33 -0
  535. package/dist/sanitize-BF45M9xp.js.map +1 -0
  536. package/dist/{scales-B23Guac-.js → scales-DlVrSOA2.js} +98 -96
  537. package/dist/scales-DlVrSOA2.js.map +1 -0
  538. package/dist/{separator-Dqs23A9D.js → separator-CRll1Ycp.js} +5 -5
  539. package/dist/separator-CRll1Ycp.js.map +1 -0
  540. package/dist/skeleton-C9FFZSYN.js.map +1 -1
  541. package/dist/spinner-C15eER04.js +201 -0
  542. package/dist/spinner-C15eER04.js.map +1 -0
  543. package/dist/stepper-DJ8pn-9D.js +199 -0
  544. package/dist/stepper-DJ8pn-9D.js.map +1 -0
  545. package/dist/{switch-DC85Os9r.js → switch-BAS-GXJV.js} +6 -6
  546. package/dist/switch-BAS-GXJV.js.map +1 -0
  547. package/dist/{textarea-BJCl_aH2.js → textarea-Btdu41rY.js} +4 -4
  548. package/dist/textarea-Btdu41rY.js.map +1 -0
  549. package/dist/toast-QxCZG0Oy.js +614 -0
  550. package/dist/toast-QxCZG0Oy.js.map +1 -0
  551. package/dist/tokens.css +466 -101
  552. package/dist/{use-theme-CONuDdW3.js → use-theme-D_THp_K2.js} +87 -66
  553. package/dist/use-theme-D_THp_K2.js.map +1 -0
  554. package/dist/utils/gesture.d.ts.map +1 -1
  555. package/dist/utils/hooks.d.ts.map +1 -1
  556. package/dist/utils/index.d.ts +2 -0
  557. package/dist/utils/index.d.ts.map +1 -1
  558. package/dist/utils/index.js +3 -2
  559. package/dist/utils/sanitize.d.ts +7 -0
  560. package/dist/utils/sanitize.d.ts.map +1 -0
  561. package/dist/utils/tiptap.d.ts +12 -0
  562. package/dist/utils/tiptap.d.ts.map +1 -0
  563. package/dist/utils/types.d.ts.map +1 -1
  564. package/package.json +80 -14
  565. package/dist/avatar-l3SaMCmU.js.map +0 -1
  566. package/dist/badge-DTJq6AXr.js.map +0 -1
  567. package/dist/button-avu-rQU4.js.map +0 -1
  568. package/dist/gesture-irjS0hVM.js.map +0 -1
  569. package/dist/icon-button-YatlVZnz.js.map +0 -1
  570. package/dist/l2-primitives-Le0006ck.js.map +0 -1
  571. package/dist/l3-atoms-Cvu01YHO.js.map +0 -1
  572. package/dist/l4-molecules-CSmApFmt.js.map +0 -1
  573. package/dist/l5-organisms-Css3AvsZ.js +0 -4955
  574. package/dist/l5-organisms-Css3AvsZ.js.map +0 -1
  575. package/dist/l6-charts-DPMj1m0E.js.map +0 -1
  576. package/dist/l7-patterns-8fc4b3eE.js +0 -1969
  577. package/dist/l7-patterns-8fc4b3eE.js.map +0 -1
  578. package/dist/loading-dots-fB4X_Zh0.js +0 -24
  579. package/dist/loading-dots-fB4X_Zh0.js.map +0 -1
  580. package/dist/progress-wAKN3Czz.js.map +0 -1
  581. package/dist/resize-handle-ilSc7QRM.js.map +0 -1
  582. package/dist/scales-B23Guac-.js.map +0 -1
  583. package/dist/separator-Dqs23A9D.js.map +0 -1
  584. package/dist/spinner-N7UNjdsQ.js +0 -144
  585. package/dist/spinner-N7UNjdsQ.js.map +0 -1
  586. package/dist/stepper-DWJfv7TA.js +0 -140
  587. package/dist/stepper-DWJfv7TA.js.map +0 -1
  588. package/dist/switch-DC85Os9r.js.map +0 -1
  589. package/dist/textarea-BJCl_aH2.js.map +0 -1
  590. package/dist/toast-DN5xANLM.js +0 -442
  591. package/dist/toast-DN5xANLM.js.map +0 -1
  592. package/dist/use-theme-CONuDdW3.js.map +0 -1
@@ -0,0 +1 @@
1
+ {"version":3,"file":"l3-atoms-BCJNqPHk.js","names":[],"sources":["../src/l3-atoms/animated-border.tsx","../src/l3-atoms/animated-counter.tsx","../src/l3-atoms/animated-number.tsx","../src/l3-atoms/avatar-badge.tsx","../src/l3-atoms/barcode.tsx","../src/l3-atoms/blinking.tsx","../src/l3-atoms/bounce-dot.tsx","../src/l3-atoms/checkbox-group.tsx","../src/l3-atoms/color-swatch.tsx","../src/l3-atoms/copy-button.tsx","../src/l3-atoms/count-badge.tsx","../src/l3-atoms/count-up.tsx","../src/l3-atoms/countdown.tsx","../src/l3-atoms/countdown-badge.tsx","../src/l3-atoms/cursor-follow.tsx","../src/l3-atoms/diff-indicator.tsx","../src/l3-atoms/glow-dot.tsx","../src/l3-atoms/gradient-text.tsx","../src/l3-atoms/heat-cell.tsx","../src/l3-atoms/hotkey.tsx","../src/l3-atoms/info-tip.tsx","../src/l3-atoms/key-value.tsx","../src/l3-atoms/keyboard-shortcut.tsx","../src/l3-atoms/live-dot.tsx","../src/l3-atoms/magnetic-button.tsx","../src/l3-atoms/marquee.tsx","../src/l3-atoms/meter.tsx","../src/l3-atoms/number-flow.tsx","../src/l3-atoms/online-indicator.tsx","../src/l3-atoms/orbit.tsx","../src/l3-atoms/percentage.tsx","../src/l3-atoms/percentage-circle.tsx","../src/l3-atoms/price.tsx","../src/l3-atoms/progress-circle.tsx","../src/l3-atoms/progress-ring.tsx","../src/l3-atoms/pulse-indicator.tsx","../src/l3-atoms/pulse-ring.tsx","../src/l3-atoms/qr-code.tsx","../src/l3-atoms/quick-action.tsx","../src/l3-atoms/radio-group.tsx","../src/l3-atoms/rating.tsx","../src/l3-atoms/relative-time.tsx","../src/l3-atoms/ribbon.tsx","../src/l3-atoms/ribbon-banner.tsx","../src/l3-atoms/ripple-effect.tsx","../src/l3-atoms/scroll-progress.tsx","../src/l3-atoms/scroll-to-top.tsx","../src/l3-atoms/segmented-control.tsx","../src/l3-atoms/shortcut-display.tsx","../src/l3-atoms/skeleton-group.tsx","../src/l3-atoms/sparkle.tsx","../src/l3-atoms/stagger.tsx","../src/l3-atoms/star-rating.tsx","../src/l3-atoms/status-badge.tsx","../src/l3-atoms/status-dot.tsx","../src/l3-atoms/switch-group.tsx","../src/l3-atoms/text-badge.tsx","../src/l3-atoms/text-effect.tsx","../src/l3-atoms/textarea-counter.tsx","../src/l3-atoms/theme-toggle.tsx","../src/l3-atoms/toggle-group.tsx","../src/l3-atoms/trend-arrow.tsx","../src/l3-atoms/trend-indicator.tsx","../src/l3-atoms/truncated-list.tsx","../src/l3-atoms/typewriter.tsx","../src/l3-atoms/verified-badge.tsx","../src/l3-atoms/visual-counter.tsx","../src/l3-atoms/volume-slider.tsx","../src/l3-atoms/zoom-on-hover.tsx"],"sourcesContent":["import type { ReactNode } from 'react'\n\nimport { cx } from '../utils/cx'\n\ntype AnimatedBorderProps = {\n children: ReactNode\n className?: string\n variant?: 'dash' | 'gradient' | 'pulse'\n}\n\nconst variantClasses = {\n dash: 'border-2 border-dashed border-accent/40 animate-[dash-march_1s_linear_infinite]',\n gradient:\n 'border-0 bg-gradient-to-r from-accent via-success to-accent bg-[length:200%_100%] animate-[gradient-shift_3s_ease_infinite] p-[2px]',\n pulse:\n 'border-2 border-accent animate-[border-pulse_2s_ease-in-out_infinite]',\n}\n\nexport function AnimatedBorder({\n children,\n className,\n variant = 'gradient',\n}: AnimatedBorderProps) {\n if (variant === 'gradient') {\n return (\n <div\n className={cx('rounded-lg', variantClasses.gradient, className)}\n data-component=\"animated-border\"\n >\n <div className=\"bg-bg rounded-[calc(0.5rem-2px)]\">{children}</div>\n </div>\n )\n }\n return (\n <div\n className={cx('rounded-lg', variantClasses[variant], className)}\n data-component=\"animated-border\"\n >\n {children}\n </div>\n )\n}\n\nexport type { AnimatedBorderProps }\n","// animated-counter — number display with animated transitions\nimport { forwardRef, useEffect, useRef, useState } from 'react'\n\nimport { cx } from '../utils/cx'\n\ntype AnimatedCounterProps = React.HTMLAttributes<HTMLSpanElement> & {\n duration?: number\n format?: (n: number) => string\n prefix?: string\n suffix?: string\n value: number\n}\n\nconst defaultFormat = (n: number): string => {\n if (Number.isInteger(n)) return n.toLocaleString()\n return n.toLocaleString(undefined, { maximumFractionDigits: 2 })\n}\n\nexport const AnimatedCounter = forwardRef<\n HTMLSpanElement,\n AnimatedCounterProps\n>(function AnimatedCounter(\n {\n className,\n duration = 500,\n format = defaultFormat,\n prefix,\n suffix,\n value,\n ...props\n },\n ref\n) {\n const [display, setDisplay] = useState(value)\n const prevRef = useRef(value)\n const rafRef = useRef<number>(0)\n\n useEffect(() => {\n const from = prevRef.current\n const to = value\n prevRef.current = to\n\n if (from === to) return\n\n const startTime = performance.now()\n const diff = to - from\n\n const animate = (now: number) => {\n const elapsed = now - startTime\n const progress = Math.min(1, elapsed / duration)\n // ease out cubic\n const eased = 1 - Math.pow(1 - progress, 3)\n setDisplay(from + diff * eased)\n\n if (progress < 1) {\n rafRef.current = requestAnimationFrame(animate)\n } else {\n setDisplay(to)\n }\n }\n\n rafRef.current = requestAnimationFrame(animate)\n return () => cancelAnimationFrame(rafRef.current)\n }, [value, duration])\n\n return (\n <span\n className={cx('tabular-nums select-none', className)}\n data-component=\"animated-counter\"\n ref={ref}\n {...props}\n >\n {prefix !== undefined && <span>{prefix}</span>}\n {format(display)}\n {suffix !== undefined && <span>{suffix}</span>}\n </span>\n )\n})\n\nexport type { AnimatedCounterProps }\n","// animated-number — number display that animates when value changes\nimport { forwardRef, useEffect, useRef, useState } from 'react'\n\nimport { cx } from '../utils/cx'\n\nexport type AnimatedNumberProps = {\n value: number\n duration?: number\n format?: (n: number) => string\n className?: string\n}\n\nfunction defaultFormat(n: number): string {\n return n.toLocaleString()\n}\n\nfunction easeOut(t: number): number {\n return 1 - Math.pow(1 - t, 3)\n}\n\nexport const AnimatedNumber = forwardRef<HTMLSpanElement, AnimatedNumberProps>(\n function AnimatedNumber(\n { value, duration = 500, format = defaultFormat, className },\n ref\n ) {\n const [display, setDisplay] = useState(value)\n const prevRef = useRef(value)\n\n useEffect(() => {\n const from = prevRef.current\n prevRef.current = value\n\n if (duration <= 0) {\n setDisplay(value)\n return\n }\n\n const start = performance.now()\n let raf: number\n\n function tick(now: number) {\n const elapsed = now - start\n const progress = Math.min(elapsed / duration, 1)\n setDisplay(from + (value - from) * easeOut(progress))\n if (progress < 1) {\n raf = requestAnimationFrame(tick)\n }\n }\n\n raf = requestAnimationFrame(tick)\n return () => cancelAnimationFrame(raf)\n }, [value, duration])\n\n return (\n <span\n ref={ref}\n className={cx('tabular-nums', className)}\n data-component=\"animated-number\"\n >\n {format(display)}\n </span>\n )\n }\n)\n","import { forwardRef } from 'react'\n\nimport { Badge } from '../l2-primitives/badge'\nimport { cx } from '../utils/cx'\nimport type { AvatarProps } from './avatar'\nimport { Avatar } from './avatar'\n\ntype AvatarBadgeProps = AvatarProps & {\n count?: number\n maxCount?: number\n}\n\nexport const AvatarBadge = forwardRef<HTMLSpanElement, AvatarBadgeProps>(\n function AvatarBadge(\n { count, maxCount = 99, className, ...avatarProps },\n ref\n ) {\n const showBadge = count !== undefined && count > 0\n\n return (\n <span\n className={cx('relative inline-flex', className)}\n data-component=\"avatar-badge\"\n ref={ref}\n >\n <Avatar {...avatarProps} />\n {showBadge && (\n <Badge\n className=\"absolute -top-1 -right-1 z-10\"\n count={count}\n countMax={maxCount}\n />\n )}\n </span>\n )\n }\n)\n\nexport type { AvatarBadgeProps }\n","// barcode — simple barcode display using SVG (code 128 style appearance)\nimport { forwardRef, useMemo } from 'react'\n\nimport { cx } from '../utils/cx'\n\nexport type BarcodeProps = {\n value: string\n width?: number\n height?: number\n showValue?: boolean\n color?: string\n className?: string\n}\n\n// generate bar pattern from character codes\nfunction generateBars(value: string): number[] {\n const bars: number[] = []\n\n // start pattern — thick bars\n bars.push(3, 1, 1, 1, 3, 1)\n\n for (let i = 0; i < value.length; i++) {\n const code = value.charCodeAt(i)\n // alternate thick/thin based on char code bits\n bars.push(\n (code & 1) !== 0 ? 2 : 1,\n (code & 2) !== 0 ? 2 : 1,\n (code & 4) !== 0 ? 2 : 1,\n (code & 8) !== 0 ? 2 : 1,\n (code & 16) !== 0 ? 2 : 1,\n 1\n )\n }\n\n // stop pattern — thick bars\n bars.push(3, 1, 1, 1, 3)\n\n return bars\n}\n\nexport const Barcode = forwardRef<SVGSVGElement, BarcodeProps>(function Barcode(\n {\n value,\n width = 200,\n height = 60,\n showValue = true,\n color = 'currentColor',\n className,\n },\n ref\n) {\n const bars = useMemo(() => generateBars(value), [value])\n\n const totalUnits = bars.reduce((sum, b) => sum + b, 0)\n const barHeight = showValue ? height - 16 : height\n const unitWidth = width / totalUnits\n\n let x = 0\n const rects: Array<{ x: number; w: number }> = []\n for (let i = 0; i < bars.length; i++) {\n const w = bars[i] * unitWidth\n // even indices are bars, odd are spaces\n if (i % 2 === 0) {\n rects.push({ x, w })\n }\n x += w\n }\n\n return (\n <svg\n ref={ref}\n width={width}\n height={height}\n viewBox={`0 0 ${width} ${height}`}\n className={cx('shrink-0', className)}\n data-component=\"barcode\"\n data-testid=\"barcode-svg\"\n role=\"img\"\n aria-label={`Barcode: ${value}`}\n >\n {rects.map((r, i) => (\n <rect\n key={i}\n x={r.x}\n y={0}\n width={r.w}\n height={barHeight}\n fill={color}\n />\n ))}\n {showValue && (\n <text\n x={width / 2}\n y={height - 2}\n textAnchor=\"middle\"\n fontSize={11}\n fill={color}\n fontFamily=\"monospace\"\n data-testid=\"barcode-text\"\n >\n {value}\n </text>\n )}\n </svg>\n )\n})\n","import { forwardRef } from 'react'\n\nimport { cx } from '../utils/cx'\n\nconst speedMap = {\n default: 'animate-pulse',\n fast: 'animate-pulse [animation-duration:0.5s]',\n slow: 'animate-pulse [animation-duration:3s]',\n} as const\n\ntype BlinkingSpeed = 'slow' | 'default' | 'fast'\n\ntype BlinkingProps = React.HTMLAttributes<HTMLSpanElement> & {\n active?: boolean\n speed?: BlinkingSpeed\n}\n\nexport const Blinking = forwardRef<HTMLSpanElement, BlinkingProps>(\n function Blinking(\n { active = true, children, className, speed = 'default', ...props },\n ref\n ) {\n return (\n <span\n className={cx(active && speedMap[speed], className)}\n data-component=\"blinking\"\n ref={ref}\n {...props}\n >\n {children}\n </span>\n )\n }\n)\n\nexport type { BlinkingProps, BlinkingSpeed }\n","// bounce-dot — bouncing dot loader animation\nimport { forwardRef } from 'react'\n\nimport { cx } from '../utils/cx'\n\ntype BounceDotProps = React.HTMLAttributes<HTMLDivElement> & {\n color?: string\n count?: number\n size?: 'default' | 'lg' | 'sm'\n}\n\nconst sizeClasses = {\n default: 'h-2 w-2',\n lg: 'h-3 w-3',\n sm: 'h-1.5 w-1.5',\n} as const\n\nexport const BounceDot = forwardRef<HTMLDivElement, BounceDotProps>(\n function BounceDot(\n { className, color, count = 3, size = 'default', ...props },\n ref\n ) {\n const dots = Array.from({ length: count }, (_, i) => i)\n\n return (\n <div\n className={cx('inline-flex items-center gap-1', className)}\n data-component=\"bounce-dot\"\n ref={ref}\n role=\"status\"\n {...props}\n >\n {dots.map((i) => (\n <span\n className={cx(\n 'bg-fg-muted animate-[bounce-dot_1.4s_ease-in-out_infinite] rounded-full',\n sizeClasses[size]\n )}\n key={i}\n style={{\n animationDelay: `${i * 160}ms`,\n ...(color !== undefined ? { backgroundColor: color } : {}),\n }}\n />\n ))}\n </div>\n )\n }\n)\n\nexport type { BounceDotProps }\n","// checkbox-group — group of checkboxes with optional select-all\nimport { forwardRef } from 'react'\n\nimport { cx } from '../utils/cx'\nimport { Checkbox } from './checkbox'\n\ntype CheckboxGroupOption = {\n label: string\n value: string\n}\n\ntype CheckboxGroupProps = Omit<\n React.HTMLAttributes<HTMLDivElement>,\n 'onChange'\n> & {\n disabled?: boolean\n onChange: (value: string[]) => void\n options: CheckboxGroupOption[]\n selectAll?: boolean\n value: string[]\n}\n\nexport const CheckboxGroup = forwardRef<HTMLDivElement, CheckboxGroupProps>(\n function CheckboxGroup(\n {\n className,\n disabled = false,\n onChange,\n options,\n selectAll = false,\n value,\n ...props\n },\n ref\n ) {\n const allSelected =\n options.length > 0 && options.every((o) => value.includes(o.value))\n\n const handleToggle = (optValue: string, checked: boolean) => {\n if (checked) {\n onChange([...value, optValue])\n } else {\n onChange(value.filter((v) => v !== optValue))\n }\n }\n\n const handleSelectAll = (checked: boolean) => {\n if (checked) {\n onChange(options.map((o) => o.value))\n } else {\n onChange([])\n }\n }\n\n return (\n <div\n ref={ref}\n className={cx('gds-gap flex flex-col', className)}\n data-component=\"checkbox-group\"\n role=\"group\"\n {...props}\n >\n {selectAll && (\n <Checkbox\n checked={allSelected}\n disabled={disabled}\n label=\"Select all\"\n onChange={handleSelectAll}\n />\n )}\n {options.map((opt) => (\n <Checkbox\n checked={value.includes(opt.value)}\n disabled={disabled}\n key={opt.value}\n label={opt.label}\n onChange={(checked) => handleToggle(opt.value, checked)}\n />\n ))}\n </div>\n )\n }\n)\n\nexport type { CheckboxGroupOption, CheckboxGroupProps }\n","// color-swatch — color display block with optional copy-to-clipboard\nimport { cva } from 'class-variance-authority'\nimport { forwardRef, useCallback, useRef, useState } from 'react'\n\nimport { focusCls } from '../utils/a11y'\nimport { cx } from '../utils/cx'\nimport type { VariantProps } from '../utils/types'\n\nconst colorSwatchVariants = cva('rounded-md', {\n defaultVariants: { size: 'default' },\n variants: {\n size: {\n default: 'h-10 w-10',\n lg: 'h-14 w-14',\n sm: 'h-7 w-7',\n },\n },\n})\n\ntype ColorSwatchProps = React.HTMLAttributes<HTMLSpanElement> &\n VariantProps<typeof colorSwatchVariants> & {\n color: string\n copyable?: boolean\n label?: string\n }\n\nexport const ColorSwatch = forwardRef<HTMLSpanElement, ColorSwatchProps>(\n function ColorSwatch(\n { className, color, copyable = false, label, size, ...props },\n ref\n ) {\n const [copied, setCopied] = useState(false)\n const timerRef = useRef<ReturnType<typeof setTimeout> | null>(null)\n\n const handleClick = useCallback(async () => {\n if (!copyable) return\n await navigator.clipboard.writeText(color)\n setCopied(true)\n if (timerRef.current !== null) {\n clearTimeout(timerRef.current)\n }\n timerRef.current = setTimeout(() => {\n setCopied(false)\n timerRef.current = null\n }, 2000)\n }, [color, copyable])\n\n const swatchEl = (\n <span\n className={cx(colorSwatchVariants({ size }), 'block')}\n style={{ backgroundColor: color }}\n />\n )\n\n return (\n <span\n className={cx('inline-flex flex-col items-center gap-1', className)}\n data-component=\"color-swatch\"\n ref={ref}\n {...props}\n >\n {copyable ? (\n <button\n aria-label={`Copy ${color}`}\n className={cx('rounded-md select-none', focusCls)}\n onClick={handleClick}\n type=\"button\"\n >\n {swatchEl}\n </button>\n ) : (\n swatchEl\n )}\n <span className=\"text-fg-muted font-mono text-[10px]\">\n {copied ? 'Copied!' : color}\n </span>\n {label !== undefined && (\n <span className=\"text-fg-muted/60 text-[10px]\">{label}</span>\n )}\n </span>\n )\n }\n)\n\nexport { colorSwatchVariants }\nexport type { ColorSwatchProps }\n","// copy-button — button that copies text to clipboard with feedback\nimport { forwardRef, useCallback, useEffect, useRef, useState } from 'react'\n\nimport { Button } from '../l2-primitives/button'\nimport { cx } from '../utils/cx'\n\nexport type CopyButtonProps = {\n text: string\n label?: string\n copiedLabel?: string\n variant?: 'default' | 'ghost'\n size?: 'default' | 'sm'\n className?: string\n}\n\nexport const CopyButton = forwardRef<HTMLButtonElement, CopyButtonProps>(\n function CopyButton(\n {\n text,\n label = 'Copy',\n copiedLabel = 'Copied!',\n variant = 'default',\n size = 'default',\n className,\n },\n ref\n ) {\n const [copied, setCopied] = useState(false)\n const timerRef = useRef<ReturnType<typeof setTimeout>>(null)\n\n useEffect(() => {\n return () => {\n if (timerRef.current !== null) clearTimeout(timerRef.current)\n }\n }, [])\n\n const handleCopy = useCallback(() => {\n navigator.clipboard.writeText(text).catch(() => {})\n setCopied(true)\n if (timerRef.current !== null) clearTimeout(timerRef.current)\n timerRef.current = setTimeout(() => setCopied(false), 1500)\n }, [text])\n\n const buttonVariant = variant === 'ghost' ? 'ghost' : 'secondary'\n\n return (\n <Button\n ref={ref}\n variant={buttonVariant}\n size={size}\n className={cx(className)}\n onClick={handleCopy}\n data-component=\"copy-button\"\n icon={\n copied ? (\n <svg\n width=\"14\"\n height=\"14\"\n viewBox=\"0 0 14 14\"\n fill=\"none\"\n stroke=\"currentColor\"\n strokeWidth=\"2\"\n >\n <path d=\"M2 7l3 3 7-7\" />\n </svg>\n ) : (\n <svg\n width=\"14\"\n height=\"14\"\n viewBox=\"0 0 14 14\"\n fill=\"none\"\n stroke=\"currentColor\"\n strokeWidth=\"1.5\"\n >\n <rect x=\"4\" y=\"4\" width=\"8\" height=\"8\" rx=\"1.5\" />\n <path d=\"M10 4V2.5A1.5 1.5 0 008.5 1h-6A1.5 1.5 0 001 2.5v6A1.5 1.5 0 002.5 10H4\" />\n </svg>\n )\n }\n >\n {copied ? copiedLabel : label}\n </Button>\n )\n }\n)\n","import { forwardRef } from 'react'\n\nimport { cx } from '../utils/cx'\n\nconst variantMap = {\n accent: 'bg-accent text-accent-fg',\n danger: 'bg-danger text-white',\n success: 'bg-success text-white',\n} as const\n\ntype CountBadgeVariant = 'accent' | 'danger' | 'success'\n\ntype CountBadgeProps = React.HTMLAttributes<HTMLSpanElement> & {\n count: number\n max?: number\n variant?: CountBadgeVariant\n}\n\nexport const CountBadge = forwardRef<HTMLSpanElement, CountBadgeProps>(\n function CountBadge(\n { className, count, max = 99, variant = 'danger', ...props },\n ref\n ) {\n const display = count > max ? `${max}+` : String(count)\n\n return (\n <span\n className={cx(\n 'inline-flex min-w-5 items-center justify-center rounded-full px-1.5 py-0.5 text-[10px] leading-none font-bold select-none',\n variantMap[variant],\n className\n )}\n data-component=\"count-badge\"\n data-variant={variant}\n ref={ref}\n {...props}\n >\n {display}\n </span>\n )\n }\n)\n\nexport type { CountBadgeProps, CountBadgeVariant }\n","// count-up — animated number counter from 0 to target\nimport { forwardRef, useEffect, useState } from 'react'\n\nimport { cx } from '../utils/cx'\n\nexport type CountUpProps = {\n value: number\n duration?: number\n decimals?: number\n prefix?: string\n suffix?: string\n separator?: string\n className?: string\n}\n\nfunction formatNumber(n: number, decimals: number, separator: string): string {\n const fixed = n.toFixed(decimals)\n if (separator === '') return fixed\n\n const [intPart, decPart] = fixed.split('.')\n const formatted = intPart.replace(/\\B(?=(\\d{3})+(?!\\d))/g, separator)\n if (decPart !== undefined) return `${formatted}.${decPart}`\n return formatted\n}\n\n// ease-out cubic\nfunction easeOut(t: number): number {\n const t1 = t - 1\n return t1 * t1 * t1 + 1\n}\n\nexport const CountUp = forwardRef<HTMLSpanElement, CountUpProps>(\n function CountUp(\n {\n value,\n duration = 1500,\n decimals = 0,\n prefix,\n suffix,\n separator = ',',\n className,\n },\n ref\n ) {\n const [current, setCurrent] = useState(0)\n\n useEffect(() => {\n if (duration <= 0) {\n setCurrent(value)\n return\n }\n const start = performance.now()\n let raf: number\n\n function tick(now: number) {\n const elapsed = now - start\n const progress = Math.min(elapsed / duration, 1)\n setCurrent(easeOut(progress) * value)\n if (progress < 1) {\n raf = requestAnimationFrame(tick)\n }\n }\n\n raf = requestAnimationFrame(tick)\n return () => cancelAnimationFrame(raf)\n }, [value, duration])\n\n return (\n <span\n ref={ref}\n className={cx('tabular-nums', className)}\n data-component=\"count-up\"\n >\n {prefix ?? ''}\n {formatNumber(current, decimals, separator)}\n {suffix ?? ''}\n </span>\n )\n }\n)\n","// countdown — countdown timer to a target date\nimport { forwardRef, useEffect, useState } from 'react'\n\nimport { cx } from '../utils/cx'\n\nexport type CountdownProps = {\n targetDate: Date | string | number\n onComplete?: () => void\n showDays?: boolean\n showSeconds?: boolean\n className?: string\n}\n\ntype TimeRemaining = {\n days: number\n hours: number\n minutes: number\n seconds: number\n total: number\n}\n\nfunction calcRemaining(target: number): TimeRemaining {\n const total = Math.max(0, target - Date.now())\n const seconds = Math.floor((total / 1000) % 60)\n const minutes = Math.floor((total / 1000 / 60) % 60)\n const hours = Math.floor((total / 1000 / 60 / 60) % 24)\n const days = Math.floor(total / 1000 / 60 / 60 / 24)\n return { days, hours, minutes, seconds, total }\n}\n\nfunction pad(n: number): string {\n return n.toString().padStart(2, '0')\n}\n\nexport const Countdown = forwardRef<HTMLDivElement, CountdownProps>(\n function Countdown(\n { targetDate, onComplete, showDays = true, showSeconds = true, className },\n ref\n ) {\n const target = new Date(targetDate).getTime()\n const [remaining, setRemaining] = useState<TimeRemaining>(() =>\n calcRemaining(target)\n )\n\n useEffect(() => {\n if (remaining.total <= 0) return\n\n const interval = setInterval(() => {\n const next = calcRemaining(target)\n setRemaining(next)\n if (next.total <= 0) {\n clearInterval(interval)\n if (onComplete !== undefined) onComplete()\n }\n }, 1000)\n\n return () => clearInterval(interval)\n }, [target, onComplete, remaining.total])\n\n const segments: Array<{ label: string; value: string }> = []\n\n if (showDays) {\n segments.push({ label: 'D', value: pad(remaining.days) })\n }\n segments.push({ label: 'H', value: pad(remaining.hours) })\n segments.push({ label: 'M', value: pad(remaining.minutes) })\n if (showSeconds) {\n segments.push({ label: 'S', value: pad(remaining.seconds) })\n }\n\n return (\n <div\n ref={ref}\n className={cx('inline-flex items-center gap-1', className)}\n data-component=\"countdown\"\n >\n {segments.map((seg, i) => (\n <div key={seg.label} className=\"flex items-center gap-1\">\n {i > 0 && (\n <span\n className=\"text-fg-muted gds-text-body\"\n data-testid=\"separator\"\n >\n :\n </span>\n )}\n <span\n className=\"bg-bg-tertiary gds-radius-button gds-text-body text-fg inline-flex items-center justify-center rounded px-1.5 py-0.5 tabular-nums\"\n data-testid={`segment-${seg.label}`}\n >\n {seg.value}\n </span>\n </div>\n ))}\n </div>\n )\n }\n)\n","// countdown-badge — badge showing a count with max overflow\nimport { cva } from 'class-variance-authority'\nimport { forwardRef } from 'react'\n\nimport { cx } from '../utils/cx'\nimport type { VariantProps } from '../utils/types'\n\nconst countdownBadgeVariants = cva(\n 'inline-flex select-none items-center justify-center rounded-full text-[10px] font-bold text-accent-fg min-w-[18px] h-[18px] px-1',\n {\n defaultVariants: { variant: 'default' },\n variants: {\n variant: {\n danger: 'bg-danger animate-pulse',\n default: 'bg-accent',\n },\n },\n }\n)\n\ntype CountdownBadgeProps = React.HTMLAttributes<HTMLSpanElement> &\n VariantProps<typeof countdownBadgeVariants> & {\n count: number\n max?: number\n }\n\nexport const CountdownBadge = forwardRef<HTMLSpanElement, CountdownBadgeProps>(\n function CountdownBadge(\n { className, count, max = 99, variant, ...props },\n ref\n ) {\n if (count <= 0) return null\n\n const display = count > max ? `${max}+` : String(count)\n\n return (\n <span\n className={cx(countdownBadgeVariants({ variant }), className)}\n data-component=\"countdown-badge\"\n ref={ref}\n {...props}\n >\n {display}\n </span>\n )\n }\n)\n\nexport { countdownBadgeVariants }\nexport type { CountdownBadgeProps }\n","import { forwardRef, useCallback, useRef, useState } from 'react'\n\nimport { cx } from '../utils/cx'\nimport { mergeRefs } from '../utils/dom'\n\ntype CursorFollowProps = React.HTMLAttributes<HTMLDivElement> & {\n offset?: { x?: number; y?: number }\n smooth?: boolean\n}\n\nexport const CursorFollow = forwardRef<HTMLDivElement, CursorFollowProps>(\n function CursorFollow(\n { children, className, offset, smooth = true, ...props },\n ref\n ) {\n const containerRef = useRef<HTMLDivElement>(null)\n const [pos, setPos] = useState({ x: 0, y: 0 })\n\n const ox = offset?.x ?? 0\n const oy = offset?.y ?? 0\n\n const handleMouseMove = useCallback(\n (e: React.MouseEvent<HTMLDivElement>) => {\n const rect = containerRef.current?.getBoundingClientRect()\n if (rect === undefined) return\n setPos({ x: e.clientX - rect.left + ox, y: e.clientY - rect.top + oy })\n },\n [ox, oy]\n )\n\n return (\n <div\n className={cx('relative', className)}\n data-component=\"cursor-follow\"\n onMouseMove={handleMouseMove}\n ref={mergeRefs(containerRef, ref)}\n {...props}\n >\n <div\n className=\"pointer-events-none absolute\"\n style={{\n transform: `translate(${pos.x}px, ${pos.y}px)`,\n transition: smooth ? 'transform 80ms ease-out' : undefined,\n }}\n >\n {children}\n </div>\n </div>\n )\n }\n)\n\nexport type { CursorFollowProps }\n","import { forwardRef } from 'react'\n\nimport { cx } from '../utils/cx'\n\ntype DiffIndicatorProps = React.HTMLAttributes<HTMLSpanElement> & {\n inverted?: boolean\n unit?: string\n value: number\n}\n\nexport const DiffIndicator = forwardRef<HTMLSpanElement, DiffIndicatorProps>(\n function DiffIndicator(\n { className, inverted = false, unit, value, ...props },\n ref\n ) {\n const isPositive = value > 0\n const isNegative = value < 0\n // inverted: lower is good (e.g. error rate), so positive = bad, negative = good\n const isGood = inverted ? isNegative : isPositive\n const isBad = inverted ? isPositive : isNegative\n\n const colorCls = isGood\n ? 'text-success'\n : isBad\n ? 'text-danger'\n : 'text-fg-muted'\n const arrow = isPositive ? '\\u2191' : isNegative ? '\\u2193' : ''\n const sign = isPositive ? '+' : ''\n const display = `${arrow}${sign}${value}${unit !== undefined ? unit : ''}`\n\n return (\n <span\n className={cx(\n 'inline-flex items-center gap-0.5 text-sm font-medium tabular-nums',\n colorCls,\n className\n )}\n data-component=\"diff-indicator\"\n data-direction={isPositive ? 'up' : isNegative ? 'down' : 'neutral'}\n ref={ref}\n {...props}\n >\n {display}\n </span>\n )\n }\n)\n\nexport type { DiffIndicatorProps }\n","// glow-dot — colored dot with glow effect (LED indicator)\nimport { forwardRef } from 'react'\n\nimport { cx } from '../utils/cx'\n\ntype GlowDotColor = 'accent' | 'danger' | 'success' | 'warning'\ntype GlowDotSize = 'default' | 'lg' | 'sm'\n\ntype GlowDotProps = React.HTMLAttributes<HTMLSpanElement> & {\n color?: GlowDotColor\n /** Enable pulse animation for attention states */\n pulse?: boolean\n size?: GlowDotSize\n}\n\nconst colorMap: Record<GlowDotColor, string> = {\n accent: 'bg-accent shadow-[0_0_6px_var(--color-accent)]',\n success: 'bg-success shadow-[0_0_6px_var(--color-success)]',\n warning: 'bg-warning shadow-[0_0_6px_var(--color-warning)]',\n danger: 'bg-danger shadow-[0_0_6px_var(--color-danger)]',\n}\n\nconst sizeMap: Record<GlowDotSize, string> = {\n sm: 'h-1.5 w-1.5',\n default: 'h-2.5 w-2.5',\n lg: 'h-3.5 w-3.5',\n}\n\nexport const GlowDot = forwardRef<HTMLSpanElement, GlowDotProps>(\n function GlowDot(\n { color = 'accent', pulse, size = 'default', className, ...props },\n ref\n ) {\n return (\n <span\n ref={ref}\n className={cx(\n 'inline-block rounded-full',\n colorMap[color],\n sizeMap[size],\n pulse === true && 'animate-pulse',\n className\n )}\n data-component=\"glow-dot\"\n data-variant={color}\n {...props}\n />\n )\n }\n)\n\nexport type { GlowDotColor, GlowDotProps, GlowDotSize }\n","// gradient-text — text with gradient color fill\nimport { forwardRef } from 'react'\n\nimport { cx } from '../utils/cx'\n\ntype GradientTextProps = React.HTMLAttributes<HTMLSpanElement> & {\n children: string\n from?: string\n to?: string\n}\n\nexport const GradientText = forwardRef<HTMLSpanElement, GradientTextProps>(\n function GradientText(\n { children, className, from = '#6366f1', to = '#ec4899', ...props },\n ref\n ) {\n return (\n <span\n className={cx('inline-block bg-clip-text text-transparent', className)}\n data-component=\"gradient-text\"\n ref={ref}\n style={{\n backgroundImage: `linear-gradient(to right, ${from}, ${to})`,\n }}\n {...props}\n >\n {children}\n </span>\n )\n }\n)\n\nexport type { GradientTextProps }\n","import { forwardRef } from 'react'\n\nimport { cx } from '../utils/cx'\n\ntype HeatCellProps = React.HTMLAttributes<HTMLDivElement> & {\n color?: string\n max?: number\n showValue?: boolean\n size?: number\n value: number\n}\n\nconst HeatCell = forwardRef<HTMLDivElement, HeatCellProps>(function HeatCell(\n {\n className,\n color = 'var(--color-accent)',\n max = 100,\n showValue = false,\n size = 32,\n value,\n ...props\n },\n ref\n) {\n const intensity = max > 0 ? Math.min(Math.max(value / max, 0), 1) : 0\n\n return (\n <div\n className={cx(\n 'inline-flex items-center justify-center rounded text-[10px] font-medium',\n className\n )}\n data-component=\"heat-cell\"\n ref={ref}\n style={{\n backgroundColor: color,\n height: size,\n opacity: 0.1 + intensity * 0.9,\n width: size,\n }}\n {...props}\n >\n {showValue && (\n <span className=\"text-white mix-blend-difference\">{value}</span>\n )}\n </div>\n )\n})\n\nexport { HeatCell }\nexport type { HeatCellProps }\n","// hotkey — keyboard shortcut key combination display\nimport { forwardRef } from 'react'\n\nimport { Kbd } from '../l2-primitives/kbd'\nimport { cx } from '../utils/cx'\n\ntype HotkeyProps = React.HTMLAttributes<HTMLSpanElement> & {\n keys: string[]\n}\n\nexport const Hotkey = forwardRef<HTMLSpanElement, HotkeyProps>(function Hotkey(\n { className, keys, ...props },\n ref\n) {\n return (\n <span\n className={cx('inline-flex items-center gap-1', className)}\n data-component=\"hotkey\"\n ref={ref}\n {...props}\n >\n {keys.map((key, i) => (\n <span className=\"contents\" key={i}>\n {i > 0 && <span className=\"text-fg-muted text-[10px]\">+</span>}\n <Kbd>{key}</Kbd>\n </span>\n ))}\n </span>\n )\n})\n\nexport type { HotkeyProps }\n","import type { ReactNode } from 'react'\nimport { forwardRef } from 'react'\n\nimport { cx } from '../utils/cx'\nimport { Tooltip } from './tooltip'\n\ntype InfoTipProps = React.HTMLAttributes<HTMLDivElement> & {\n content: ReactNode\n size?: 'default' | 'sm'\n}\n\nconst sizeClasses = {\n default: 'h-4 w-4',\n sm: 'h-3.5 w-3.5',\n} as const\n\nexport const InfoTip = forwardRef<HTMLDivElement, InfoTipProps>(\n function InfoTip({ className, content, size = 'default', ...props }, ref) {\n return (\n <Tooltip content={content} ref={ref} {...props}>\n <span\n className={cx(\n 'text-fg-muted/60 hover:text-fg-muted inline-flex cursor-help items-center',\n className\n )}\n data-component=\"info-tip\"\n >\n <svg\n className={sizeClasses[size]}\n fill=\"none\"\n stroke=\"currentColor\"\n strokeWidth=\"2\"\n viewBox=\"0 0 24 24\"\n >\n <circle cx=\"12\" cy=\"12\" r=\"10\" />\n <path d=\"M12 16v-4M12 8h.01\" />\n </svg>\n </span>\n </Tooltip>\n )\n }\n)\n\nexport type { InfoTipProps }\n","// key-value — simple inline key: value pair for compact data display\nimport type { ReactNode } from 'react'\nimport { forwardRef } from 'react'\n\nimport { cx } from '../utils/cx'\n\ntype KeyValueProps = React.HTMLAttributes<HTMLDivElement> & {\n label: string\n mono?: boolean\n value: ReactNode\n}\n\nexport const KeyValue = forwardRef<HTMLDivElement, KeyValueProps>(\n function KeyValue({ label, value, mono = false, className, ...props }, ref) {\n return (\n <div\n ref={ref}\n className={cx(\n 'gds-text-body inline-flex items-baseline gap-1.5',\n className\n )}\n data-component=\"key-value\"\n {...props}\n >\n <span className=\"text-fg-muted gds-text-caption shrink-0\">{label}</span>\n <span className={cx('text-fg', mono && 'font-mono')}>{value}</span>\n </div>\n )\n }\n)\n\nexport type { KeyValueProps }\n","import type { ReactNode } from 'react'\nimport { forwardRef, useCallback, useEffect } from 'react'\n\nimport { Kbd } from '../l2-primitives/kbd'\nimport { cx } from '../utils/cx'\n\ntype KeyboardShortcutProps = {\n keys: string\n onTrigger: () => void\n showBadge?: boolean\n disabled?: boolean\n className?: string\n}\n\nfunction parseKeys(keys: string) {\n const parts = keys.toLowerCase().split('+')\n const modifiers = {\n ctrl: false,\n meta: false,\n shift: false,\n alt: false,\n }\n let mainKey = ''\n\n for (const part of parts) {\n if (part === 'ctrl') {\n modifiers.ctrl = true\n } else if (part === 'meta' || part === 'cmd') {\n modifiers.meta = true\n } else if (part === 'shift') {\n modifiers.shift = true\n } else if (part === 'alt') {\n modifiers.alt = true\n } else {\n mainKey = part\n }\n }\n\n return { modifiers, mainKey }\n}\n\nfunction formatKeyLabel(part: string): string {\n const map: Record<string, string> = {\n ctrl: 'Ctrl',\n meta: '\\u2318',\n cmd: '\\u2318',\n shift: '\\u21E7',\n alt: 'Alt',\n }\n return map[part.toLowerCase()] ?? part.toUpperCase()\n}\n\nexport const KeyboardShortcut = forwardRef<\n HTMLSpanElement,\n KeyboardShortcutProps\n>(function KeyboardShortcut(\n { keys, onTrigger, showBadge = false, disabled = false, className },\n ref\n) {\n const { modifiers, mainKey } = parseKeys(keys)\n\n const handler = useCallback(\n (e: KeyboardEvent) => {\n if (disabled) return\n if (e.ctrlKey !== modifiers.ctrl) return\n if (e.metaKey !== modifiers.meta) return\n if (e.shiftKey !== modifiers.shift) return\n if (e.altKey !== modifiers.alt) return\n if (e.key.toLowerCase() !== mainKey) return\n\n e.preventDefault()\n onTrigger()\n },\n [\n disabled,\n modifiers.ctrl,\n modifiers.meta,\n modifiers.shift,\n modifiers.alt,\n mainKey,\n onTrigger,\n ]\n )\n\n useEffect(() => {\n window.addEventListener('keydown', handler)\n return () => window.removeEventListener('keydown', handler)\n }, [handler])\n\n if (!showBadge) return null\n\n const parts = keys.split('+')\n const badges: ReactNode[] = parts.map((part, i) => (\n <Kbd key={i}>{formatKeyLabel(part)}</Kbd>\n ))\n\n return (\n <span\n ref={ref}\n className={cx('inline-flex items-center gap-1', className)}\n data-component=\"keyboard-shortcut\"\n >\n {badges}\n </span>\n )\n})\n\nexport type { KeyboardShortcutProps }\n","import { forwardRef } from 'react'\n\nimport { cx } from '../utils/cx'\n\ntype LiveDotProps = React.HTMLAttributes<HTMLSpanElement> & {\n label?: string\n}\n\nexport const LiveDot = forwardRef<HTMLSpanElement, LiveDotProps>(\n function LiveDot({ className, label = 'LIVE', ...props }, ref) {\n return (\n <span\n className={cx('inline-flex items-center gap-1.5', className)}\n data-component=\"live-dot\"\n ref={ref}\n {...props}\n >\n <span className=\"relative flex h-2 w-2\">\n <span className=\"bg-danger absolute inline-flex h-full w-full animate-ping rounded-full opacity-75\" />\n <span className=\"bg-danger relative inline-flex h-2 w-2 rounded-full\" />\n </span>\n <span className=\"text-danger text-xs font-bold tracking-wide uppercase\">\n {label}\n </span>\n </span>\n )\n }\n)\n\nexport type { LiveDotProps }\n","// magnetic-button — element that subtly moves toward the cursor when hovering\nimport { forwardRef, useCallback, useRef, useState } from 'react'\n\nimport { cx } from '../utils/cx'\nimport { mergeRefs } from '../utils/dom'\n\nexport type MagneticButtonProps = {\n children: React.ReactNode\n strength?: number\n radius?: number\n className?: string\n}\n\nexport const MagneticButton = forwardRef<HTMLDivElement, MagneticButtonProps>(\n function MagneticButton(\n { children, strength = 0.3, radius = 100, className },\n ref\n ) {\n const innerRef = useRef<HTMLDivElement>(null)\n const [transform, setTransform] = useState({ x: 0, y: 0 })\n\n const handleMouseMove = useCallback(\n (e: React.MouseEvent<HTMLDivElement>) => {\n const el = innerRef.current\n if (el === null) return\n const rect = el.getBoundingClientRect()\n const cx = rect.left + rect.width / 2\n const cy = rect.top + rect.height / 2\n const dx = e.clientX - cx\n const dy = e.clientY - cy\n const dist = Math.sqrt(dx * dx + dy * dy)\n if (dist > radius) {\n setTransform({ x: 0, y: 0 })\n return\n }\n setTransform({ x: dx * strength, y: dy * strength })\n },\n [strength, radius]\n )\n\n const handleMouseLeave = useCallback(() => {\n setTransform({ x: 0, y: 0 })\n }, [])\n\n return (\n <div\n ref={mergeRefs(innerRef, ref)}\n data-component=\"magnetic-button\"\n className={cx('inline-block', className)}\n style={{\n transform: `translate(${transform.x}px, ${transform.y}px)`,\n transition: 'transform 200ms ease-out',\n }}\n onMouseMove={handleMouseMove}\n onMouseLeave={handleMouseLeave}\n >\n {children}\n </div>\n )\n }\n)\n","// marquee — infinite horizontal scrolling content\nimport { forwardRef, useEffect, useRef, useState } from 'react'\n\nimport { cx } from '../utils/cx'\n\nexport type MarqueeProps = {\n children: React.ReactNode\n speed?: number\n direction?: 'left' | 'right'\n pauseOnHover?: boolean\n className?: string\n}\n\nexport const Marquee = forwardRef<HTMLDivElement, MarqueeProps>(\n function Marquee(\n {\n children,\n speed = 30,\n direction = 'left',\n pauseOnHover = true,\n className,\n },\n ref\n ) {\n const innerRef = useRef<HTMLDivElement>(null)\n const [duration, setDuration] = useState(10)\n\n useEffect(() => {\n if (innerRef.current === null) return\n const width = innerRef.current.scrollWidth / 2\n if (width > 0) setDuration(width / speed)\n }, [speed, children])\n\n const translateFrom = direction === 'left' ? '0%' : '-50%'\n const translateTo = direction === 'left' ? '-50%' : '0%'\n\n return (\n <div\n ref={ref}\n className={cx('overflow-hidden', className)}\n data-component=\"marquee\"\n >\n <div\n ref={innerRef}\n className={cx(\n 'inline-flex will-change-transform',\n pauseOnHover && 'hover:[animation-play-state:paused]'\n )}\n style={\n {\n animation: `marquee-scroll ${duration}s linear infinite`,\n '--marquee-from': translateFrom,\n '--marquee-to': translateTo,\n } as React.CSSProperties\n }\n >\n <div className=\"flex shrink-0\">{children}</div>\n <div className=\"flex shrink-0\" aria-hidden>\n {children}\n </div>\n </div>\n </div>\n )\n }\n)\n","import { cva } from 'class-variance-authority'\nimport { forwardRef } from 'react'\n\nimport { cx } from '../utils/cx'\nimport type { VariantProps } from '../utils/types'\n\nconst meterVariants = cva('overflow-hidden gds-radius-badge bg-bg-tertiary', {\n defaultVariants: { size: 'default' },\n variants: {\n size: {\n default: 'h-2.5',\n lg: 'h-4',\n sm: 'h-1.5',\n },\n },\n})\n\nconst variantColors: Record<string, string> = {\n danger: 'bg-danger',\n default: 'bg-accent',\n success: 'bg-success',\n warning: 'bg-warning',\n}\n\nfunction getAutoColor(pct: number): string {\n if (pct >= 0.8) return 'bg-danger'\n if (pct >= 0.6) return 'bg-warning'\n if (pct >= 0.4) return 'bg-accent'\n return 'bg-success'\n}\n\ntype MeterProps = React.HTMLAttributes<HTMLDivElement> &\n VariantProps<typeof meterVariants> & {\n label?: string\n max?: number\n min?: number\n showValue?: boolean\n value: number\n variant?: 'auto' | 'danger' | 'default' | 'success' | 'warning'\n }\n\nexport const Meter = forwardRef<HTMLDivElement, MeterProps>(function Meter(\n {\n className,\n label,\n max = 100,\n min = 0,\n showValue = true,\n size,\n value,\n variant = 'auto',\n ...props\n },\n ref\n) {\n const range = max - min\n const pct = range > 0 ? Math.max(0, Math.min(1, (value - min) / range)) : 0\n const barColor =\n variant === 'auto'\n ? getAutoColor(pct)\n : (variantColors[variant] ?? 'bg-accent')\n\n return (\n <div\n className={cx('w-full', className)}\n data-component=\"meter\"\n ref={ref}\n {...props}\n >\n {(label !== undefined || showValue) && (\n <div className=\"mb-1 flex items-center justify-between\">\n {label !== undefined && (\n <span className=\"gds-text-body text-fg font-medium\">{label}</span>\n )}\n {showValue && (\n <span className=\"gds-text-label text-fg-muted font-mono tabular-nums\">\n {Math.round(pct * 100)}%\n </span>\n )}\n </div>\n )}\n <div\n aria-label={label}\n aria-valuemax={max}\n aria-valuemin={min}\n aria-valuenow={value}\n className={meterVariants({ size })}\n role=\"meter\"\n >\n <div\n className={cx(\n 'gds-radius-badge h-full transition-all duration-500',\n barColor\n )}\n style={{ width: `${pct * 100}%` }}\n />\n </div>\n </div>\n )\n})\n\nexport { meterVariants }\nexport type { MeterProps }\n","import { forwardRef, useMemo } from 'react'\n\nimport { cx } from '../utils/cx'\n\ntype NumberFlowProps = {\n className?: string\n format?: (n: number) => string\n value: number\n}\n\nexport const NumberFlow = forwardRef<HTMLSpanElement, NumberFlowProps>(\n function NumberFlow({ className, format = String, value }, ref) {\n const chars = useMemo(() => format(value).split(''), [value, format])\n return (\n <span\n className={cx(\n 'inline-flex items-center tabular-nums select-none',\n className\n )}\n data-component=\"number-flow\"\n ref={ref}\n >\n {chars.map((char, i) => {\n if (char >= '0' && char <= '9') {\n return (\n <span\n className=\"inline-block overflow-hidden\"\n key={`${i}-slot`}\n style={{ lineHeight: 1 }}\n >\n <span className=\"inline-block transition-transform duration-300 ease-out\">\n {char}\n </span>\n </span>\n )\n }\n return <span key={`${i}-static`}>{char}</span>\n })}\n </span>\n )\n }\n)\n\nexport type { NumberFlowProps }\n","import { forwardRef } from 'react'\n\nimport { cx } from '../utils/cx'\n\ntype OnlineIndicatorProps = React.HTMLAttributes<HTMLSpanElement> & {\n label?: string\n online: boolean\n}\n\nexport const OnlineIndicator = forwardRef<\n HTMLSpanElement,\n OnlineIndicatorProps\n>(function OnlineIndicator({ className, label, online, ...props }, ref) {\n const dotCls = online ? 'bg-success' : 'bg-fg-muted/40'\n const text = label ?? (online ? 'Online' : 'Offline')\n\n return (\n <span\n className={cx('gds-gap-sm inline-flex items-center', className)}\n data-component=\"online-indicator\"\n ref={ref}\n {...props}\n >\n <span className={cx('h-2 w-2 shrink-0 rounded-full', dotCls)} />\n <span className=\"gds-text-label text-fg-muted\">{text}</span>\n </span>\n )\n})\n\nexport type { OnlineIndicatorProps }\n","import type { ReactNode } from 'react'\n\nimport { cx } from '../utils/cx'\n\ntype OrbitProps = {\n children: ReactNode[]\n className?: string\n duration?: number\n radius?: number\n}\n\nexport function Orbit({\n children,\n className,\n duration = 10,\n radius = 100,\n}: OrbitProps) {\n const count = children.length\n return (\n <div\n className={cx('relative select-none', className)}\n data-component=\"orbit\"\n style={{ height: radius * 2, width: radius * 2 }}\n >\n {children.map((child, i) => {\n const angle = (360 / count) * i\n return (\n <div\n className=\"absolute top-1/2 left-1/2\"\n key={i}\n style={{\n animation: `orbit-spin ${duration}s linear infinite`,\n animationDelay: `${-(duration / count) * i}s`,\n height: 0,\n width: 0,\n }}\n >\n <div\n className=\"-translate-x-1/2 -translate-y-1/2\"\n style={{\n transform: `rotate(${angle}deg) translateX(${radius}px) rotate(-${angle}deg)`,\n }}\n >\n {child}\n </div>\n </div>\n )\n })}\n </div>\n )\n}\n\nexport type { OrbitProps }\n","import { forwardRef } from 'react'\n\nimport { cx } from '../utils/cx'\n\ntype PercentageProps = React.HTMLAttributes<HTMLSpanElement> & {\n precision?: number\n showSign?: boolean\n value: number\n}\n\nexport const Percentage = forwardRef<HTMLSpanElement, PercentageProps>(\n function Percentage(\n { className, precision = 1, showSign = false, value, ...props },\n ref\n ) {\n const isPositive = value > 0\n const isNegative = value < 0\n const colorCls = isPositive\n ? 'text-success'\n : isNegative\n ? 'text-danger'\n : 'text-fg-muted'\n const sign = showSign && isPositive ? '+' : ''\n const display = `${sign}${value.toFixed(precision)}%`\n\n return (\n <span\n className={cx(\n 'inline-flex text-sm font-medium tabular-nums',\n colorCls,\n className\n )}\n data-component=\"percentage\"\n ref={ref}\n {...props}\n >\n {display}\n </span>\n )\n }\n)\n\nexport type { PercentageProps }\n","// percentage-circle — circular percentage display with color coding\nimport { forwardRef, useMemo } from 'react'\n\nimport { cx } from '../utils/cx'\n\ntype PercentageCircleProps = React.HTMLAttributes<HTMLDivElement> & {\n size?: 'default' | 'lg' | 'sm'\n value: number\n}\n\nconst sizeClasses = {\n default: 'h-16 w-16 text-lg',\n lg: 'h-20 w-20 text-xl',\n sm: 'h-12 w-12 text-sm',\n} as const\n\nconst strokeWidths = {\n default: 3,\n lg: 3.5,\n sm: 2.5,\n} as const\n\nexport const PercentageCircle = forwardRef<\n HTMLDivElement,\n PercentageCircleProps\n>(function PercentageCircle(\n { className, size = 'default', value, ...props },\n ref\n) {\n const clamped = Math.max(0, Math.min(100, value))\n\n const colorClass = useMemo(() => {\n if (clamped >= 80) return 'text-success'\n if (clamped >= 50) return 'text-warning'\n return 'text-danger'\n }, [clamped])\n\n const radius = 18\n const circumference = 2 * Math.PI * radius\n const offset = circumference - (clamped / 100) * circumference\n\n return (\n <div\n className={cx(\n 'relative inline-flex items-center justify-center select-none',\n sizeClasses[size],\n className\n )}\n data-component=\"percentage-circle\"\n ref={ref}\n {...props}\n >\n <svg\n className=\"absolute inset-0 h-full w-full -rotate-90\"\n viewBox=\"0 0 40 40\"\n >\n <circle\n className=\"text-fg-muted/10\"\n cx=\"20\"\n cy=\"20\"\n fill=\"none\"\n r={radius}\n stroke=\"currentColor\"\n strokeWidth={strokeWidths[size]}\n />\n <circle\n className={cx('transition-all duration-500', colorClass)}\n cx=\"20\"\n cy=\"20\"\n fill=\"none\"\n r={radius}\n stroke=\"currentColor\"\n strokeDasharray={circumference}\n strokeDashoffset={offset}\n strokeLinecap=\"round\"\n strokeWidth={strokeWidths[size]}\n />\n </svg>\n <span className={cx('font-mono font-bold', colorClass)}>{clamped}%</span>\n </div>\n )\n})\n\nexport type { PercentageCircleProps }\n","import { forwardRef } from 'react'\n\nimport { cx } from '../utils/cx'\n\ntype PriceProps = React.HTMLAttributes<HTMLSpanElement> & {\n currency?: string\n showSign?: boolean\n value: number\n}\n\nexport const Price = forwardRef<HTMLSpanElement, PriceProps>(function Price(\n { className, currency = '\\u00a5', showSign = false, value, ...props },\n ref\n) {\n const isNeg = value < 0\n const isPos = value > 0\n const colorCls = isNeg ? 'text-danger' : isPos ? 'text-success' : 'text-fg'\n const sign = showSign && isPos ? '+' : ''\n const formatted = Math.abs(value).toLocaleString()\n\n return (\n <span\n className={cx('tabular-nums', colorCls, className)}\n data-component=\"price\"\n ref={ref}\n {...props}\n >\n {isNeg ? '-' : sign}\n {currency}\n {formatted}\n </span>\n )\n})\n\nexport type { PriceProps }\n","// progress-circle — circular progress indicator using SVG\nimport { forwardRef } from 'react'\n\nimport { cx } from '../utils/cx'\n\nconst variantColors: Record<string, string> = {\n accent: 'stroke-accent',\n danger: 'stroke-danger',\n success: 'stroke-success',\n warning: 'stroke-warning',\n}\n\ntype ProgressCircleProps = {\n value: number\n size?: number\n strokeWidth?: number\n showValue?: boolean\n variant?: 'accent' | 'danger' | 'success' | 'warning'\n className?: string\n}\n\nconst ProgressCircle = forwardRef<SVGSVGElement, ProgressCircleProps>(\n function ProgressCircle(\n {\n value,\n size = 64,\n strokeWidth = 4,\n showValue = true,\n variant = 'accent',\n className,\n },\n ref\n ) {\n const radius = (size - strokeWidth) / 2\n const circumference = 2 * Math.PI * radius\n const clamped = Math.max(0, Math.min(100, value))\n const offset = circumference * (1 - clamped / 100)\n const center = size / 2\n const colorCls = variantColors[variant] ?? 'stroke-accent'\n\n return (\n <svg\n ref={ref}\n className={cx('shrink-0', className)}\n data-component=\"progress-circle\"\n height={size}\n viewBox={`0 0 ${size} ${size}`}\n width={size}\n >\n <circle\n className=\"stroke-border/30\"\n cx={center}\n cy={center}\n fill=\"none\"\n r={radius}\n strokeWidth={strokeWidth}\n />\n <circle\n className={cx('transition-all duration-500', colorCls)}\n cx={center}\n cy={center}\n fill=\"none\"\n r={radius}\n strokeDasharray={circumference}\n strokeDashoffset={offset}\n strokeLinecap=\"round\"\n strokeWidth={strokeWidth}\n style={{ transform: 'rotate(-90deg)', transformOrigin: 'center' }}\n />\n {showValue && (\n <text\n className=\"fill-fg font-medium\"\n dominantBaseline=\"central\"\n fontSize={size * 0.22}\n textAnchor=\"middle\"\n x={center}\n y={center}\n >\n {Math.round(clamped)}%\n </text>\n )}\n </svg>\n )\n }\n)\n\nexport { ProgressCircle }\nexport type { ProgressCircleProps }\n","// progress-ring — circular progress indicator with percentage label\nimport { forwardRef } from 'react'\n\nimport { cx } from '../utils/cx'\n\ntype ProgressRingProps = React.HTMLAttributes<HTMLDivElement> & {\n size?: number\n strokeWidth?: number\n value: number\n}\n\nexport const ProgressRing = forwardRef<HTMLDivElement, ProgressRingProps>(\n function ProgressRing(\n { className, size = 48, strokeWidth = 4, value, ...props },\n ref\n ) {\n const clamped = Math.max(0, Math.min(100, value))\n const radius = (size - strokeWidth) / 2\n const circumference = 2 * Math.PI * radius\n const offset = circumference * (1 - clamped / 100)\n const center = size / 2\n\n return (\n <div\n aria-valuemax={100}\n aria-valuemin={0}\n aria-valuenow={clamped}\n className={cx(\n 'inline-flex items-center justify-center select-none',\n className\n )}\n data-component=\"progress-ring\"\n ref={ref}\n role=\"progressbar\"\n {...props}\n >\n <svg\n className=\"rotate-[-90deg]\"\n height={size}\n viewBox={`0 0 ${size} ${size}`}\n width={size}\n >\n <circle\n className=\"stroke-bg-tertiary\"\n cx={center}\n cy={center}\n fill=\"none\"\n r={radius}\n strokeWidth={strokeWidth}\n />\n <circle\n className=\"stroke-accent transition-all duration-500\"\n cx={center}\n cy={center}\n fill=\"none\"\n r={radius}\n strokeDasharray={circumference}\n strokeDashoffset={offset}\n strokeLinecap=\"round\"\n strokeWidth={strokeWidth}\n />\n </svg>\n <span\n className=\"text-fg absolute font-mono text-xs font-bold\"\n style={{ fontSize: size * 0.22 }}\n >\n {clamped}%\n </span>\n </div>\n )\n }\n)\n\nexport type { ProgressRingProps }\n","import { forwardRef } from 'react'\n\nimport { cx } from '../utils/cx'\n\nconst colorMap = {\n accent: 'bg-accent',\n danger: 'bg-danger',\n success: 'bg-success',\n warning: 'bg-warning',\n} as const\n\nconst sizeMap = {\n default: 'h-2.5 w-2.5',\n lg: 'h-3.5 w-3.5',\n sm: 'h-2 w-2',\n} as const\n\ntype PulseIndicatorProps = React.HTMLAttributes<HTMLSpanElement> & {\n color?: 'accent' | 'danger' | 'success' | 'warning'\n label?: string\n size?: 'default' | 'lg' | 'sm'\n}\n\nexport const PulseIndicator = forwardRef<HTMLSpanElement, PulseIndicatorProps>(\n function PulseIndicator(\n { className, color = 'success', label, size = 'default', ...props },\n ref\n ) {\n return (\n <span\n className={cx(\n 'inline-flex items-center',\n label !== undefined && 'gds-gap-sm',\n className\n )}\n data-component=\"pulse-indicator\"\n ref={ref}\n {...props}\n >\n <span className=\"relative inline-flex\">\n <span\n className={cx('rounded-full', colorMap[color], sizeMap[size])}\n />\n <span\n className={cx(\n 'absolute inset-0 animate-ping rounded-full opacity-50',\n colorMap[color]\n )}\n />\n </span>\n {label !== undefined && (\n <span className=\"gds-text-label text-fg-muted\">{label}</span>\n )}\n </span>\n )\n }\n)\n\nexport type { PulseIndicatorProps }\n","// pulse-ring — concentric pulsing ring animation\nimport { forwardRef } from 'react'\n\nimport { cx } from '../utils/cx'\n\ntype PulseRingProps = React.HTMLAttributes<HTMLDivElement> & {\n active?: boolean\n color?: string\n count?: number\n size?: number\n}\n\nexport const PulseRing = forwardRef<HTMLDivElement, PulseRingProps>(\n function PulseRing(\n { active = true, className, color, count = 3, size = 80, ...props },\n ref\n ) {\n if (!active) {\n return (\n <div\n className={cx('relative inline-flex', className)}\n data-component=\"pulse-ring\"\n ref={ref}\n {...props}\n />\n )\n }\n\n const rings = Array.from({ length: count }, (_, i) => i)\n\n return (\n <div\n className={cx(\n 'relative inline-flex items-center justify-center',\n className\n )}\n data-component=\"pulse-ring\"\n ref={ref}\n style={{ height: size, width: size }}\n {...props}\n >\n {rings.map((i) => (\n <span\n className=\"absolute inset-0 rounded-full border-2 opacity-0\"\n key={i}\n style={{\n animation: `gds-pulse-ring ${1.5 + count * 0.2}s ease-out ${i * (1.5 / count)}s infinite`,\n borderColor: color ?? 'var(--color-accent)',\n }}\n />\n ))}\n <style>{`\n @keyframes gds-pulse-ring {\n 0% { transform: scale(0.3); opacity: 0.8; }\n 100% { transform: scale(1); opacity: 0; }\n }\n `}</style>\n </div>\n )\n }\n)\n\nexport type { PulseRingProps }\n","// qr-code — decorative data matrix visualization using SVG\nimport { forwardRef, useMemo } from 'react'\n\nimport { cx } from '../utils/cx'\n\nexport type QRCodeProps = {\n value: string\n size?: number\n color?: string\n bgColor?: string\n className?: string\n}\n\n// simple hash from string to seed deterministic pattern\nfunction hashStr(str: string): number {\n let hash = 5381\n for (let i = 0; i < str.length; i++) {\n hash = ((hash << 5) + hash + str.charCodeAt(i)) | 0\n }\n return Math.abs(hash)\n}\n\n// seeded pseudo-random\nfunction seededRand(seed: number): () => number {\n let s = seed\n return () => {\n s = (s * 1103515245 + 12345) & 0x7fffffff\n return s / 0x7fffffff\n }\n}\n\nconst GRID = 21\nconst MODULE = 1\n\n// draw a finder pattern (7x7) at position\nfunction finderPattern(\n ox: number,\n oy: number\n): Array<{ x: number; y: number }> {\n const cells: Array<{ x: number; y: number }> = []\n for (let r = 0; r < 7; r++) {\n for (let c = 0; c < 7; c++) {\n const isOuter = r === 0 || r === 6 || c === 0 || c === 6\n const isInner = r >= 2 && r <= 4 && c >= 2 && c <= 4\n if (isOuter || isInner) {\n cells.push({ x: ox + c, y: oy + r })\n }\n }\n }\n return cells\n}\n\nexport const QRCode = forwardRef<SVGSVGElement, QRCodeProps>(function QRCode(\n {\n value,\n size = 128,\n color = 'currentColor',\n bgColor = 'transparent',\n className,\n },\n ref\n) {\n const cells = useMemo(() => {\n const result: Array<{ x: number; y: number }> = []\n\n // finder patterns\n result.push(...finderPattern(0, 0))\n result.push(...finderPattern(GRID - 7, 0))\n result.push(...finderPattern(0, GRID - 7))\n\n // data area — hash-based fill\n const rand = seededRand(hashStr(value))\n for (let r = 0; r < GRID; r++) {\n for (let c = 0; c < GRID; c++) {\n const inFinder =\n (r < 8 && c < 8) ||\n (r < 8 && c >= GRID - 8) ||\n (r >= GRID - 8 && c < 8)\n if (inFinder) continue\n if (rand() > 0.55) {\n result.push({ x: c, y: r })\n }\n }\n }\n return result\n }, [value])\n\n return (\n <svg\n ref={ref}\n width={size}\n height={size}\n viewBox={`0 0 ${GRID} ${GRID}`}\n className={cx('shrink-0', className)}\n data-component=\"qr-code\"\n data-testid=\"qr-code-svg\"\n role=\"img\"\n aria-label={`QR code for: ${value}`}\n >\n <rect width={GRID} height={GRID} fill={bgColor} />\n {cells.map((cell, i) => (\n <rect\n key={i}\n x={cell.x}\n y={cell.y}\n width={MODULE}\n height={MODULE}\n fill={color}\n />\n ))}\n </svg>\n )\n})\n","// quick-action — floating action button / quick action shortcut\nimport { cva } from 'class-variance-authority'\nimport type { ReactNode } from 'react'\nimport { forwardRef } from 'react'\n\nimport { focusCls } from '../utils/a11y'\nimport { cx } from '../utils/cx'\nimport type { VariantProps } from '../utils/types'\n\nconst quickActionVariants = cva(\n 'inline-flex shrink-0 select-none items-center justify-center rounded-full transition-transform active:scale-95 hover:scale-105',\n {\n defaultVariants: { size: 'default', variant: 'primary' },\n variants: {\n variant: {\n primary: 'bg-accent text-accent-fg gds-shadow-lg',\n secondary: 'border border-border bg-surface text-fg gds-shadow-md',\n },\n size: {\n default: 'h-11 w-11',\n lg: 'h-14 w-14',\n sm: 'h-9 w-9',\n },\n },\n }\n)\n\ntype QuickActionProps = Omit<\n React.ButtonHTMLAttributes<HTMLButtonElement>,\n 'children'\n> &\n VariantProps<typeof quickActionVariants> & {\n icon: ReactNode\n label?: string\n }\n\nexport const QuickAction = forwardRef<HTMLButtonElement, QuickActionProps>(\n function QuickAction(\n { className, disabled, icon, label, onClick, size, variant, ...props },\n ref\n ) {\n return (\n <div className=\"inline-flex flex-col items-center gap-1\">\n <button\n className={cx(\n quickActionVariants({ size, variant }),\n focusCls,\n disabled === true && 'pointer-events-none opacity-40',\n className\n )}\n data-component=\"quick-action\"\n data-variant={variant ?? 'primary'}\n disabled={disabled}\n onClick={onClick}\n ref={ref}\n type=\"button\"\n {...props}\n >\n <span className=\"gds-icon-child\">{icon}</span>\n </button>\n {label !== undefined && (\n <span className=\"text-fg-muted text-[10px] select-none\">{label}</span>\n )}\n </div>\n )\n }\n)\n\nexport { quickActionVariants }\nexport type { QuickActionProps }\n","import { forwardRef } from 'react'\n\nimport { focusCls } from '../utils/a11y'\nimport { cx } from '../utils/cx'\n\ntype RadioOption = {\n disabled?: boolean\n label: string\n value: string\n}\n\ntype RadioGroupProps = Omit<\n React.HTMLAttributes<HTMLDivElement>,\n 'onChange'\n> & {\n direction?: 'horizontal' | 'vertical'\n disabled?: boolean\n onChange?: (value: string) => void\n options: RadioOption[]\n value?: string\n}\n\nexport const RadioGroup = forwardRef<HTMLDivElement, RadioGroupProps>(\n function RadioGroup(\n {\n className,\n direction = 'vertical',\n disabled = false,\n onChange,\n options,\n value,\n ...props\n },\n ref\n ) {\n return (\n <div\n className={cx(\n 'gds-gap flex',\n direction === 'vertical' ? 'flex-col' : 'flex-row flex-wrap',\n className\n )}\n data-component=\"radio-group\"\n ref={ref}\n role=\"radiogroup\"\n {...props}\n >\n {options.map((opt) => {\n const selected = opt.value === value\n const isDisabled = disabled || opt.disabled === true\n\n return (\n <button\n aria-checked={selected}\n className={cx(\n 'gds-gap-sm gds-text-body inline-flex items-center select-none',\n focusCls,\n isDisabled && 'cursor-not-allowed opacity-50'\n )}\n disabled={isDisabled}\n key={opt.value}\n onClick={() => onChange?.(opt.value)}\n role=\"radio\"\n type=\"button\"\n >\n <span\n className={cx(\n 'gds-icon gds-radius-badge inline-flex shrink-0 items-center justify-center border transition-colors',\n selected\n ? 'border-accent'\n : 'border-border hover:border-accent/50'\n )}\n >\n {selected && (\n <span className=\"gds-radius-badge bg-accent h-2 w-2\" />\n )}\n </span>\n <span className=\"text-fg\">{opt.label}</span>\n </button>\n )\n })}\n </div>\n )\n }\n)\n\nexport type { RadioGroupProps, RadioOption }\n","import type { ReactNode } from 'react'\nimport { forwardRef, useCallback, useState } from 'react'\n\nimport { focusCls } from '../utils/a11y'\nimport { cx } from '../utils/cx'\n\nconst sizeMap = {\n default: 'gds-sq-xs',\n lg: 'gds-sq-sm',\n sm: 'gds-icon',\n}\n\n// default star SVG\nfunction DefaultStar({ filled }: { filled: boolean }) {\n return (\n <svg\n className={cx(\n sizeMap.default,\n filled ? 'fill-warning text-warning' : 'text-fg-muted/20'\n )}\n fill={filled ? 'currentColor' : 'none'}\n stroke=\"currentColor\"\n strokeWidth={1.5}\n viewBox=\"0 0 24 24\"\n >\n <path\n d=\"M12 2l3.09 6.26L22 9.27l-5 4.87 1.18 6.88L12 17.77l-6.18 3.25L7 14.14 2 9.27l6.91-1.01L12 2z\"\n strokeLinecap=\"round\"\n strokeLinejoin=\"round\"\n />\n </svg>\n )\n}\n\ntype RatingProps = Omit<React.HTMLAttributes<HTMLDivElement>, 'onChange'> & {\n max?: number\n onChange?: (value: number) => void\n readonly?: boolean\n renderStar?: (filled: boolean, index: number) => ReactNode\n size?: 'default' | 'lg' | 'sm'\n value: number\n}\n\nexport const Rating = forwardRef<HTMLDivElement, RatingProps>(function Rating(\n {\n className,\n max = 5,\n onChange,\n readonly = false,\n renderStar,\n size = 'default',\n value,\n ...props\n },\n ref\n) {\n const [hovered, setHovered] = useState<number | null>(null)\n\n const handleLeave = useCallback(() => setHovered(null), [])\n\n return (\n <div\n className={cx('gds-gap-xs inline-flex', className)}\n data-component=\"rating\"\n onMouseLeave={readonly ? undefined : handleLeave}\n ref={ref}\n role=\"group\"\n {...props}\n >\n {Array.from({ length: max }, (_, i) => {\n const starIndex = i + 1\n const filled =\n hovered !== null ? starIndex <= hovered : starIndex <= value\n\n if (readonly) {\n return (\n <span className={sizeMap[size]} key={i}>\n {renderStar !== undefined ? (\n renderStar(filled, i)\n ) : (\n <DefaultStar filled={filled} />\n )}\n </span>\n )\n }\n\n return (\n <button\n className={cx('transition-transform hover:scale-110', focusCls)}\n key={i}\n onClick={() => onChange?.(starIndex)}\n onMouseEnter={() => setHovered(starIndex)}\n type=\"button\"\n >\n <span className={sizeMap[size]}>\n {renderStar !== undefined ? (\n renderStar(filled, i)\n ) : (\n <DefaultStar filled={filled} />\n )}\n </span>\n </button>\n )\n })}\n </div>\n )\n})\n\nexport type { RatingProps }\n","// relative-time — live-updating relative time display\nimport { forwardRef, useEffect, useRef, useState } from 'react'\n\nimport { cx } from '../utils/cx'\n\ntype RelativeTimeProps = React.HTMLAttributes<HTMLTimeElement> & {\n date: Date | number | string\n prefix?: string\n}\n\nfunction formatRelativeTime(date: Date | number | string): string {\n const d = date instanceof Date ? date : new Date(date)\n const now = Date.now()\n const diffMs = now - d.getTime()\n const seconds = Math.floor(diffMs / 1000)\n\n if (seconds < 60) return 'just now'\n const minutes = Math.floor(seconds / 60)\n if (minutes < 60) return `${minutes}m ago`\n const hours = Math.floor(minutes / 60)\n if (hours < 24) return `${hours}h ago`\n const days = Math.floor(hours / 24)\n if (days === 1) return 'yesterday'\n if (days < 30) return `${days}d ago`\n const months = Math.floor(days / 30)\n if (months < 12) return `${months}mo ago`\n return `${Math.floor(months / 12)}y ago`\n}\n\nfunction formatDateTime(date: Date): string {\n return date.toLocaleString()\n}\n\nexport const RelativeTime = forwardRef<HTMLTimeElement, RelativeTimeProps>(\n function RelativeTime({ className, date, prefix, ...props }, ref) {\n const [text, setText] = useState(() => formatRelativeTime(date))\n const intervalRef = useRef<ReturnType<typeof setInterval> | null>(null)\n\n useEffect(() => {\n setText(formatRelativeTime(date))\n intervalRef.current = setInterval(() => {\n setText(formatRelativeTime(date))\n }, 30_000)\n return () => {\n if (intervalRef.current !== null) {\n clearInterval(intervalRef.current)\n }\n }\n }, [date])\n\n const d = date instanceof Date ? date : new Date(date)\n const fullDateTime = formatDateTime(d)\n\n return (\n <time\n className={cx('text-fg-muted font-mono', className)}\n data-component=\"relative-time\"\n dateTime={d.toISOString()}\n ref={ref}\n title={fullDateTime}\n {...props}\n >\n {prefix !== undefined ? `${prefix} ${text}` : text}\n </time>\n )\n }\n)\n\nexport type { RelativeTimeProps }\n","// ribbon — corner ribbon/banner for containers\nimport type { ReactNode } from 'react'\nimport { forwardRef } from 'react'\n\nimport { cx } from '../utils/cx'\n\nconst variantMap = {\n accent: 'bg-accent text-accent-fg',\n danger: 'bg-danger text-white',\n success: 'bg-success text-white',\n warning: 'bg-warning text-white',\n} as const\n\ntype RibbonProps = React.HTMLAttributes<HTMLDivElement> & {\n children: ReactNode\n label: string\n variant?: 'accent' | 'danger' | 'success' | 'warning'\n position?: 'top-left' | 'top-right'\n}\n\nexport const Ribbon = forwardRef<HTMLDivElement, RibbonProps>(function Ribbon(\n {\n children,\n label,\n variant = 'accent',\n position = 'top-right',\n className,\n ...props\n },\n ref\n) {\n const isRight = position === 'top-right'\n return (\n <div\n ref={ref}\n className={cx('relative overflow-hidden', className)}\n data-component=\"ribbon\"\n {...props}\n >\n <div\n className={cx(\n 'pointer-events-none absolute top-3 z-10 px-6 py-0.5 text-[10px] font-bold tracking-wider uppercase shadow-sm',\n variantMap[variant],\n isRight ? '-right-6 rotate-45' : '-left-6 -rotate-45'\n )}\n >\n {label}\n </div>\n {children}\n </div>\n )\n})\n\nexport type { RibbonProps }\n","// ribbon-banner — corner ribbon overlay for containers\nimport { forwardRef } from 'react'\n\nimport { cx } from '../utils/cx'\n\ntype RibbonBannerProps = React.HTMLAttributes<HTMLDivElement> & {\n color?: string\n position?: 'top-left' | 'top-right'\n text: string\n}\n\nexport const RibbonBanner = forwardRef<HTMLDivElement, RibbonBannerProps>(\n function RibbonBanner(\n { className, color, position = 'top-right', text, ...props },\n ref\n ) {\n const isRight = position === 'top-right'\n\n return (\n <div\n className={cx(\n 'absolute top-0 z-10 overflow-hidden',\n isRight ? 'right-0' : 'left-0',\n className\n )}\n data-component=\"ribbon-banner\"\n ref={ref}\n style={{ height: 80, width: 80 }}\n {...props}\n >\n <div\n className=\"text-accent-fg flex items-center justify-center text-xs font-bold select-none\"\n style={{\n backgroundColor: color ?? 'var(--color-accent)',\n left: isRight ? undefined : -20,\n position: 'absolute',\n right: isRight ? -20 : undefined,\n top: 16,\n transform: isRight ? 'rotate(45deg)' : 'rotate(-45deg)',\n width: 120,\n }}\n >\n {text}\n </div>\n </div>\n )\n }\n)\n\nexport type { RibbonBannerProps }\n","// ripple-effect — material design ripple on click\nimport { forwardRef, useCallback, useState } from 'react'\n\nimport { cx } from '../utils/cx'\n\ntype Ripple = { id: number; x: number; y: number; size: number }\n\nexport type RippleEffectProps = {\n children: React.ReactNode\n color?: string\n disabled?: boolean\n className?: string\n}\n\nlet nextId = 0\n\nexport const RippleEffect = forwardRef<HTMLDivElement, RippleEffectProps>(\n function RippleEffect(\n { children, color = 'currentColor', disabled = false, className },\n ref\n ) {\n const [ripples, setRipples] = useState<Ripple[]>([])\n\n const handlePointerDown = useCallback(\n (e: React.PointerEvent<HTMLDivElement>) => {\n if (disabled) return\n const rect = e.currentTarget.getBoundingClientRect()\n const x = e.clientX - rect.left\n const y = e.clientY - rect.top\n const size = Math.max(rect.width, rect.height) * 2\n setRipples((prev) => [...prev, { id: nextId++, x, y, size }])\n },\n [disabled]\n )\n\n const removeRipple = useCallback((id: number) => {\n setRipples((prev) => prev.filter((r) => r.id !== id))\n }, [])\n\n return (\n <div\n ref={ref}\n data-component=\"ripple-effect\"\n className={cx('relative overflow-hidden', className)}\n onPointerDown={handlePointerDown}\n >\n {children}\n {ripples.map((r) => (\n <span\n key={r.id}\n className=\"animate-ripple pointer-events-none absolute rounded-full\"\n style={{\n left: r.x - r.size / 2,\n top: r.y - r.size / 2,\n width: r.size,\n height: r.size,\n backgroundColor: color,\n }}\n onAnimationEnd={() => removeRipple(r.id)}\n />\n ))}\n </div>\n )\n }\n)\n","// scroll-progress — page scroll progress bar\nimport { forwardRef, useCallback, useEffect, useState } from 'react'\n\nimport { cx } from '../utils/cx'\n\ntype ScrollProgressProps = React.HTMLAttributes<HTMLDivElement> & {\n color?: string\n height?: number\n}\n\nexport const ScrollProgress = forwardRef<HTMLDivElement, ScrollProgressProps>(\n function ScrollProgress({ className, color, height = 3, ...props }, ref) {\n const [progress, setProgress] = useState(0)\n\n const handleScroll = useCallback(() => {\n const scrollTop = document.documentElement.scrollTop\n const scrollHeight =\n document.documentElement.scrollHeight -\n document.documentElement.clientHeight\n if (scrollHeight > 0) {\n setProgress((scrollTop / scrollHeight) * 100)\n }\n }, [])\n\n useEffect(() => {\n window.addEventListener('scroll', handleScroll, { passive: true })\n return () => window.removeEventListener('scroll', handleScroll)\n }, [handleScroll])\n\n return (\n <div\n className={cx('fixed top-0 right-0 left-0 z-50', className)}\n data-component=\"scroll-progress\"\n ref={ref}\n style={{ height: `${height}px` }}\n {...props}\n >\n <div\n className=\"bg-accent h-full transition-[width] duration-100 ease-out\"\n style={{\n width: `${progress}%`,\n ...(color !== undefined ? { backgroundColor: color } : {}),\n }}\n />\n </div>\n )\n }\n)\n\nexport type { ScrollProgressProps }\n","// scroll-to-top — floating button that appears when scrolled down\nimport { forwardRef, useEffect, useState } from 'react'\n\nimport { focusCls } from '../utils/a11y'\nimport { cx } from '../utils/cx'\n\nexport type ScrollToTopProps = {\n threshold?: number\n smooth?: boolean\n className?: string\n}\n\nexport const ScrollToTop = forwardRef<HTMLButtonElement, ScrollToTopProps>(\n function ScrollToTop({ threshold = 300, smooth = true, className }, ref) {\n const [visible, setVisible] = useState(() => {\n if (typeof window === 'undefined') return false\n return window.scrollY >= threshold\n })\n\n useEffect(() => {\n const handler = () => setVisible(window.scrollY >= threshold)\n window.addEventListener('scroll', handler, { passive: true })\n return () => window.removeEventListener('scroll', handler)\n }, [threshold])\n\n if (!visible) return null\n\n return (\n <button\n ref={ref}\n type=\"button\"\n aria-label=\"Scroll to top\"\n onClick={() =>\n window.scrollTo({ top: 0, behavior: smooth ? 'smooth' : 'auto' })\n }\n className={cx(\n 'bg-accent text-accent-fg hover:bg-accent/90 fixed right-6 bottom-6 z-40 flex h-10 w-10 items-center justify-center rounded-full shadow-lg transition-opacity',\n focusCls,\n className\n )}\n data-component=\"scroll-to-top\"\n >\n <svg\n width=\"16\"\n height=\"16\"\n viewBox=\"0 0 16 16\"\n fill=\"none\"\n stroke=\"currentColor\"\n strokeWidth=\"2\"\n strokeLinecap=\"round\"\n strokeLinejoin=\"round\"\n >\n <path d=\"M8 12V4M4 7l4-3 4 3\" />\n </svg>\n </button>\n )\n }\n)\n","// segmented-control — mutually exclusive button group (iOS-style)\nimport { forwardRef } from 'react'\n\nimport { focusCls } from '../utils/a11y'\nimport { cx } from '../utils/cx'\nimport { glassClass } from '../utils/glass'\n\ntype SegmentedControlOption = {\n value: string\n label: string\n}\n\ntype SegmentedControlSize = 'default' | 'sm'\n\ntype SegmentedControlProps = Omit<\n React.HTMLAttributes<HTMLDivElement>,\n 'onChange'\n> & {\n options: SegmentedControlOption[]\n value: string\n onChange: (value: string) => void\n size?: SegmentedControlSize\n disabled?: boolean\n glass?: boolean\n}\n\nconst sizeClasses: Record<SegmentedControlSize, string> = {\n default: 'px-3 py-1.5 text-xs',\n sm: 'px-2 py-1 text-[11px]',\n}\n\nconst SegmentedControl = forwardRef<HTMLDivElement, SegmentedControlProps>(\n function SegmentedControl(\n {\n options,\n value,\n onChange,\n size = 'default',\n disabled,\n glass,\n className,\n ...props\n },\n ref\n ) {\n return (\n <div\n ref={ref}\n className={cx(\n 'gds-radius-button bg-bg-tertiary inline-flex p-0.5 select-none',\n glass === true && glassClass(glass),\n disabled === true && 'pointer-events-none opacity-50',\n className\n )}\n data-component=\"segmented-control\"\n data-state={disabled === true ? 'disabled' : 'enabled'}\n role=\"radiogroup\"\n {...props}\n >\n {options.map((option) => {\n const isActive = option.value === value\n return (\n <button\n key={option.value}\n type=\"button\"\n role=\"radio\"\n aria-checked={isActive}\n disabled={disabled}\n onClick={() => {\n if (!isActive) {\n onChange(option.value)\n }\n }}\n className={cx(\n 'gds-radius-button transition-all',\n sizeClasses[size ?? 'default'],\n focusCls,\n isActive\n ? 'bg-bg text-fg gds-shadow-sm font-medium'\n : 'text-fg-muted hover:text-fg'\n )}\n >\n {option.label}\n </button>\n )\n })}\n </div>\n )\n }\n)\n\nexport { SegmentedControl }\nexport type {\n SegmentedControlOption,\n SegmentedControlProps,\n SegmentedControlSize,\n}\n","// shortcut-display — keyboard shortcut with optional description\nimport { forwardRef } from 'react'\n\nimport { Kbd } from '../l2-primitives/kbd'\nimport { cx } from '../utils/cx'\n\ntype ShortcutDisplayProps = React.HTMLAttributes<HTMLSpanElement> & {\n description?: string\n keys: string[]\n}\n\nexport const ShortcutDisplay = forwardRef<\n HTMLSpanElement,\n ShortcutDisplayProps\n>(function ShortcutDisplay({ className, description, keys, ...props }, ref) {\n return (\n <span\n className={cx('inline-flex items-center gap-2', className)}\n data-component=\"shortcut-display\"\n ref={ref}\n {...props}\n >\n <span className=\"inline-flex items-center gap-0.5\">\n {keys.map((key, i) => (\n <Kbd key={i}>{key}</Kbd>\n ))}\n </span>\n {description !== undefined && (\n <span className=\"text-fg-muted text-xs\">{description}</span>\n )}\n </span>\n )\n})\n\nexport type { ShortcutDisplayProps }\n","// skeleton-group — predefined skeleton layouts for common loading patterns\nimport { forwardRef } from 'react'\n\nimport { Skeleton } from '../l2-primitives/skeleton'\nimport { cx } from '../utils/cx'\n\ntype SkeletonGroupVariant = 'avatar-text' | 'card' | 'form-field'\n\ntype SkeletonGroupProps = {\n className?: string\n count?: number\n variant?: SkeletonGroupVariant\n}\n\nconst layouts: Record<SkeletonGroupVariant, () => React.ReactNode> = {\n 'avatar-text': () => (\n <div className=\"flex items-center gap-3\">\n <Skeleton variant=\"circle\" />\n <div className=\"flex flex-1 flex-col gap-2\">\n <Skeleton variant=\"text\" width=\"60%\" />\n <Skeleton variant=\"text\" width=\"40%\" />\n </div>\n </div>\n ),\n card: () => (\n <div className=\"flex flex-col gap-3\">\n <Skeleton variant=\"rect\" />\n <Skeleton variant=\"text\" />\n <Skeleton variant=\"text\" width=\"80%\" />\n <Skeleton variant=\"text\" width=\"50%\" />\n </div>\n ),\n 'form-field': () => (\n <div className=\"flex flex-col gap-2\">\n <Skeleton variant=\"text\" width=\"30%\" />\n <Skeleton variant=\"rect\" height={36} />\n </div>\n ),\n}\n\nexport const SkeletonGroup = forwardRef<HTMLDivElement, SkeletonGroupProps>(\n function SkeletonGroup(\n { className, count = 1, variant = 'avatar-text' },\n ref\n ) {\n const render = layouts[variant]\n\n return (\n <div\n ref={ref}\n className={cx('flex flex-col gap-4', className)}\n data-component=\"skeleton-group\"\n data-variant={variant}\n >\n {Array.from({ length: count }, (_, i) => (\n <div key={i}>{render()}</div>\n ))}\n </div>\n )\n }\n)\n\nexport type { SkeletonGroupProps, SkeletonGroupVariant }\n","// sparkle — animated sparkle/star particles around a child element\nimport { forwardRef } from 'react'\n\nimport { cx } from '../utils/cx'\n\nexport type SparkleProps = {\n children: React.ReactNode\n active?: boolean\n count?: number\n color?: string\n className?: string\n}\n\nconst STAR_PATH = 'M12 0l3 9 9 3-9 3-3 9-3-9-9-3 9-3z'\n\nfunction starStyle(i: number, count: number): React.CSSProperties {\n const angle = (360 / count) * i\n const rad = (angle * Math.PI) / 180\n const dist = 70 + (i % 3) * 15\n const x = Math.cos(rad) * dist\n const y = Math.sin(rad) * dist\n return {\n position: 'absolute',\n top: '50%',\n left: '50%',\n width: 10,\n height: 10,\n transform: `translate(${x}%, ${y}%)`,\n animation: `gds-sparkle 1.4s ease-in-out ${i * 0.2}s infinite`,\n opacity: 0,\n }\n}\n\nexport const Sparkle = forwardRef<HTMLSpanElement, SparkleProps>(\n function Sparkle(\n {\n children,\n active = true,\n count = 3,\n color = 'var(--gds-accent)',\n className,\n },\n ref\n ) {\n const particles = Array.from({ length: count }, (_, i) => i)\n\n return (\n <span\n ref={ref}\n className={cx('relative inline-block', className)}\n data-component=\"sparkle\"\n >\n {children}\n {active &&\n particles.map((i) => (\n <svg\n key={i}\n viewBox=\"0 0 24 24\"\n fill={color}\n style={starStyle(i, count)}\n aria-hidden=\"true\"\n >\n <path d={STAR_PATH} />\n </svg>\n ))}\n {active && (\n <style>{`\n @keyframes gds-sparkle {\n 0%, 100% { opacity: 0; transform: scale(0) rotate(0deg); }\n 50% { opacity: 1; transform: scale(1) rotate(180deg); }\n }\n `}</style>\n )}\n </span>\n )\n }\n)\n","import type { ReactNode } from 'react'\nimport { Children } from 'react'\n\nimport { cx } from '../utils/cx'\n\ntype StaggerProps = {\n animation?: 'fade' | 'scale' | 'slide-up'\n children: ReactNode[]\n className?: string\n delay?: number\n}\n\nconst animationClasses: Record<string, string> = {\n fade: 'animate-[stagger-fade_0.4s_ease_both]',\n scale: 'animate-[stagger-scale_0.4s_ease_both]',\n 'slide-up': 'animate-[stagger-slide-up_0.4s_ease_both]',\n}\n\nexport function Stagger({\n animation = 'fade',\n children,\n className,\n delay = 80,\n}: StaggerProps) {\n const items = Children.toArray(children)\n return (\n <div className={cx('', className)} data-component=\"stagger\">\n {items.map((child, i) => (\n <div\n className={animationClasses[animation]}\n key={i}\n style={{ animationDelay: `${i * delay}ms` }}\n >\n {child}\n </div>\n ))}\n </div>\n )\n}\n\nexport type { StaggerProps }\n","// star-rating — read-only star rating display with half-star support\nimport { forwardRef } from 'react'\n\nimport { cx } from '../utils/cx'\n\nconst sizeMap = { sm: 14, default: 18, lg: 24 }\nconst STAR_D =\n 'M12 2l3.09 6.26L22 9.27l-5 4.87 1.18 6.88L12 17.77l-6.18 3.25L7 14.14 2 9.27l6.91-1.01L12 2z'\n\ntype StarRatingProps = {\n value: number\n max?: number\n size?: 'sm' | 'default' | 'lg'\n color?: string\n className?: string\n}\n\nfunction StarIcon({\n fill,\n s,\n color,\n}: {\n fill: 'full' | 'half' | 'empty'\n s: number\n color: string\n}) {\n const id = `half-${Math.random().toString(36).slice(2, 8)}`\n if (fill === 'full') {\n return (\n <svg\n width={s}\n height={s}\n viewBox=\"0 0 24 24\"\n fill={color}\n stroke={color}\n strokeWidth={1}\n >\n <path d={STAR_D} />\n </svg>\n )\n }\n if (fill === 'half') {\n return (\n <svg\n width={s}\n height={s}\n viewBox=\"0 0 24 24\"\n stroke={color}\n strokeWidth={1}\n >\n <defs>\n <clipPath id={id}>\n <rect x=\"0\" y=\"0\" width=\"12\" height=\"24\" />\n </clipPath>\n </defs>\n <path d={STAR_D} fill=\"none\" />\n <path d={STAR_D} fill={color} clipPath={`url(#${id})`} />\n </svg>\n )\n }\n return (\n <svg\n width={s}\n height={s}\n viewBox=\"0 0 24 24\"\n fill=\"none\"\n stroke=\"currentColor\"\n strokeWidth={1}\n className=\"text-fg-muted/30\"\n >\n <path d={STAR_D} />\n </svg>\n )\n}\n\nconst StarRating = forwardRef<HTMLDivElement, StarRatingProps>(\n function StarRating(\n { value, max = 5, size = 'default', color = 'currentColor', className },\n ref\n ) {\n const s = sizeMap[size]\n const c = color === 'currentColor' ? 'var(--color-warning)' : color\n\n return (\n <div\n ref={ref}\n className={cx('inline-flex items-center gap-0.5', className)}\n data-component=\"star-rating\"\n role=\"img\"\n aria-label={`${value} out of ${max} stars`}\n >\n {Array.from({ length: max }, (_, i) => {\n const diff = value - i\n const fill = diff >= 1 ? 'full' : diff >= 0.5 ? 'half' : 'empty'\n return <StarIcon key={i} fill={fill} s={s} color={c} />\n })}\n </div>\n )\n }\n)\n\nexport { StarRating }\nexport type { StarRatingProps }\n","import type { ReactNode } from 'react'\nimport { forwardRef } from 'react'\n\nimport { cx } from '../utils/cx'\nimport { glassClass } from '../utils/glass'\n\ntype StatusType =\n | 'active'\n | 'draft'\n | 'error'\n | 'inactive'\n | 'pending'\n | 'warning'\n\nconst statusColorMap: Record<StatusType, string> = {\n active: 'bg-success/10 text-success',\n draft: 'bg-fg-muted/10 text-fg-muted',\n error: 'bg-danger/10 text-danger',\n inactive: 'bg-fg-muted/10 text-fg-muted',\n pending: 'bg-warning/10 text-warning',\n warning: 'bg-warning/10 text-warning',\n}\n\ntype StatusBadgeProps = React.HTMLAttributes<HTMLSpanElement> & {\n glass?: boolean\n icon?: ReactNode\n label?: string\n size?: 'default' | 'sm'\n status: StatusType\n}\n\nexport const StatusBadge = forwardRef<HTMLSpanElement, StatusBadgeProps>(\n function StatusBadge(\n { className, glass, icon, label, size = 'default', status, ...props },\n ref\n ) {\n const displayLabel = label ?? status\n const sizeClasses =\n size === 'sm'\n ? 'gds-pad-x-sm py-px gds-text-caption'\n : 'gds-pad-x-sm gds-pad-y-sm gds-text-body'\n\n return (\n <span\n className={cx(\n 'gds-gap-xs gds-radius-badge inline-flex items-center font-medium select-none',\n sizeClasses,\n statusColorMap[status],\n glassClass(glass),\n glass === true && 'border border-white/10 bg-white/5',\n className\n )}\n data-component=\"status-badge\"\n data-state={status}\n ref={ref}\n {...props}\n >\n {icon !== undefined && (\n <span className=\"gds-icon-child-sm\">{icon}</span>\n )}\n {displayLabel}\n </span>\n )\n }\n)\n\nconst statusBadgeVariants = {\n status: statusColorMap,\n size: {\n default: 'gds-pad-x-sm gds-pad-y-sm gds-text-body',\n sm: 'gds-pad-x-sm py-px gds-text-caption',\n },\n} as const\n\nexport { statusBadgeVariants }\nexport type { StatusBadgeProps, StatusType }\n","import { forwardRef } from 'react'\n\nimport { cx } from '../utils/cx'\n\ntype StatusDotStatus = 'connected' | 'connecting' | 'disconnected'\n\ntype StatusDotProps = React.HTMLAttributes<HTMLSpanElement> & {\n label?: string\n status: StatusDotStatus\n}\n\nconst dotCls: Record<StatusDotStatus, string> = {\n connected: 'bg-success',\n connecting: 'bg-warning animate-pulse',\n disconnected: 'bg-danger',\n}\n\nexport const StatusDot = forwardRef<HTMLSpanElement, StatusDotProps>(\n function StatusDot({ className, label, status, ...props }, ref) {\n return (\n <span\n className={cx('gds-gap-sm inline-flex items-center', className)}\n data-component=\"status-dot\"\n data-state={status}\n ref={ref}\n {...props}\n >\n <span className={cx('h-2 w-2 shrink-0 rounded-full', dotCls[status])} />\n {label !== undefined && (\n <span className=\"gds-text-label text-fg-muted\">{label}</span>\n )}\n </span>\n )\n }\n)\n\nconst statusDotVariants = {\n status: dotCls,\n} as const\n\nexport { statusDotVariants }\nexport type { StatusDotProps, StatusDotStatus }\n","// switch-group — list of labeled switches for settings pages\nimport { forwardRef } from 'react'\n\nimport { cx } from '../utils/cx'\nimport { Switch } from './switch'\n\ntype SwitchGroupItem = {\n checked: boolean\n description?: string\n id: string\n label: string\n}\n\ntype SwitchGroupProps = {\n className?: string\n disabled?: boolean\n items: SwitchGroupItem[]\n onChange: (id: string, checked: boolean) => void\n}\n\nexport const SwitchGroup = forwardRef<HTMLDivElement, SwitchGroupProps>(\n function SwitchGroup({ className, disabled = false, items, onChange }, ref) {\n return (\n <div\n ref={ref}\n className={cx('flex flex-col gap-3', className)}\n data-component=\"switch-group\"\n role=\"group\"\n >\n {items.map((item) => (\n <div\n key={item.id}\n className=\"gds-pad-x gds-pad-y-sm flex items-center justify-between gap-4\"\n >\n <div className=\"min-w-0 flex-1\">\n <div className=\"gds-text-body text-fg font-medium\">\n {item.label}\n </div>\n {item.description !== undefined && (\n <div className=\"gds-text-caption text-fg-muted mt-0.5\">\n {item.description}\n </div>\n )}\n </div>\n <Switch\n checked={item.checked}\n disabled={disabled}\n onChange={(checked) => onChange(item.id, checked)}\n />\n </div>\n ))}\n </div>\n )\n }\n)\n\nexport type { SwitchGroupItem, SwitchGroupProps }\n","import { forwardRef } from 'react'\n\nimport { cx } from '../utils/cx'\n\nconst variantMap = {\n accent: 'bg-accent/15 text-accent',\n danger: 'bg-danger/15 text-danger',\n muted: 'bg-fg-muted/10 text-fg-muted',\n success: 'bg-success/15 text-success',\n warning: 'bg-warning/15 text-warning',\n} as const\n\nconst sizeMap = {\n default: 'px-1.5 py-0.5 text-[10px]',\n sm: 'px-1 py-px text-[9px]',\n} as const\n\ntype TextBadgeProps = React.HTMLAttributes<HTMLSpanElement> & {\n label: string\n size?: 'default' | 'sm'\n variant?: 'accent' | 'danger' | 'muted' | 'success' | 'warning'\n}\n\nexport const TextBadge = forwardRef<HTMLSpanElement, TextBadgeProps>(\n function TextBadge(\n { className, label, size = 'default', variant = 'accent', ...props },\n ref\n ) {\n return (\n <span\n className={cx(\n 'inline-flex items-center rounded-full leading-none font-bold tracking-wider uppercase select-none',\n variantMap[variant],\n sizeMap[size],\n className\n )}\n data-component=\"text-badge\"\n data-variant={variant}\n ref={ref}\n {...props}\n >\n {label}\n </span>\n )\n }\n)\n\nexport type { TextBadgeProps }\n","import { forwardRef } from 'react'\n\nimport { cx } from '../utils/cx'\n\ntype TextEffectType = 'glow' | 'gradient' | 'highlight'\n\ntype TextEffectProps = React.HTMLAttributes<HTMLSpanElement> & {\n children: string\n effect: TextEffectType\n gradientFrom?: string\n gradientTo?: string\n}\n\nexport const TextEffect = forwardRef<HTMLSpanElement, TextEffectProps>(\n function TextEffect(\n { children, className, effect, gradientFrom, gradientTo, style, ...props },\n ref\n ) {\n const from = gradientFrom ?? 'var(--gds-accent)'\n const to = gradientTo ?? 'var(--gds-success)'\n\n if (effect === 'gradient') {\n return (\n <span\n className={cx('bg-clip-text text-transparent', className)}\n data-component=\"text-effect\"\n data-variant={effect}\n ref={ref}\n style={{\n backgroundImage: `linear-gradient(135deg, ${from}, ${to})`,\n ...style,\n }}\n {...props}\n >\n {children}\n </span>\n )\n }\n\n if (effect === 'highlight') {\n return (\n <span\n className={cx('bg-accent/20 box-decoration-clone px-1', className)}\n data-component=\"text-effect\"\n data-variant={effect}\n ref={ref}\n style={style}\n {...props}\n >\n {children}\n </span>\n )\n }\n\n // glow\n return (\n <span\n className={cx(className)}\n data-component=\"text-effect\"\n data-variant={effect}\n ref={ref}\n style={{\n textShadow: `0 0 8px var(--gds-accent), 0 0 16px var(--gds-accent)`,\n ...style,\n }}\n {...props}\n >\n {children}\n </span>\n )\n }\n)\n\nexport type { TextEffectProps, TextEffectType }\n","// textarea-counter — textarea with character count display\nimport { forwardRef } from 'react'\n\nimport type { TextareaProps } from '../l2-primitives/textarea'\nimport { Textarea } from '../l2-primitives/textarea'\nimport { cx } from '../utils/cx'\n\ntype TextareaCounterProps = Omit<TextareaProps, 'onChange'> & {\n maxLength?: number\n onChange: (value: string) => void\n value: string\n}\n\nexport const TextareaCounter = forwardRef<\n HTMLTextAreaElement,\n TextareaCounterProps\n>(function TextareaCounter(\n { className, error, maxLength, onChange, value, ...props },\n ref\n) {\n const count = value.length\n const nearLimit = maxLength !== undefined && count >= maxLength * 0.9\n\n return (\n <div\n className={cx('flex flex-col', className)}\n data-component=\"textarea-counter\"\n >\n <Textarea\n error={error ?? nearLimit}\n maxLength={maxLength}\n onChange={(e) => onChange(e.target.value)}\n ref={ref}\n value={value}\n {...props}\n />\n <div\n className={cx(\n 'mt-1 text-right text-[11px]',\n nearLimit ? 'text-danger' : 'text-fg-muted'\n )}\n >\n {maxLength !== undefined ? `${count} / ${maxLength}` : count}\n </div>\n </div>\n )\n})\n\nexport type { TextareaCounterProps }\n","// theme-toggle — dark/light mode toggle with icon transition\nimport { forwardRef } from 'react'\n\nimport { focusCls } from '../utils/a11y'\nimport { cx } from '../utils/cx'\n\ntype ThemeToggleMode = 'dark' | 'light'\n\nexport type ThemeToggleProps = {\n mode: ThemeToggleMode\n onChange: (mode: ThemeToggleMode) => void\n size?: 'default' | 'sm'\n className?: string\n}\n\nconst sizeMap = {\n default: 'h-8 w-8',\n sm: 'h-6 w-6',\n}\n\nconst iconSizeMap = {\n default: 16,\n sm: 14,\n}\n\nexport const ThemeToggle = forwardRef<HTMLButtonElement, ThemeToggleProps>(\n function ThemeToggle({ mode, onChange, size = 'default', className }, ref) {\n const isDark = mode === 'dark'\n const iconSize = iconSizeMap[size]\n\n return (\n <button\n ref={ref}\n type=\"button\"\n aria-label={isDark ? 'Switch to light mode' : 'Switch to dark mode'}\n onClick={() => onChange(isDark ? 'light' : 'dark')}\n className={cx(\n 'text-fg-muted hover:text-fg inline-flex items-center justify-center rounded-full transition-colors select-none',\n sizeMap[size],\n focusCls,\n className\n )}\n data-component=\"theme-toggle\"\n data-state={mode}\n >\n {isDark ? (\n // sun icon — shown in dark mode, click to switch to light\n <svg\n width={iconSize}\n height={iconSize}\n viewBox=\"0 0 16 16\"\n fill=\"none\"\n stroke=\"currentColor\"\n strokeWidth=\"1.5\"\n strokeLinecap=\"round\"\n className=\"transition-transform duration-200\"\n >\n <circle cx=\"8\" cy=\"8\" r=\"3\" />\n <path d=\"M8 1v2M8 13v2M1 8h2M13 8h2M3.05 3.05l1.41 1.41M11.54 11.54l1.41 1.41M3.05 12.95l1.41-1.41M11.54 4.46l1.41-1.41\" />\n </svg>\n ) : (\n // moon icon — shown in light mode, click to switch to dark\n <svg\n width={iconSize}\n height={iconSize}\n viewBox=\"0 0 16 16\"\n fill=\"none\"\n stroke=\"currentColor\"\n strokeWidth=\"1.5\"\n strokeLinecap=\"round\"\n className=\"transition-transform duration-200\"\n >\n <path d=\"M13.5 8.5a5.5 5.5 0 01-7-7A5.5 5.5 0 108 14a5.48 5.48 0 005.5-5.5z\" />\n </svg>\n )}\n </button>\n )\n }\n)\n","// toggle-group — group of toggle buttons, one or more can be active\nimport type { ReactNode } from 'react'\nimport { forwardRef } from 'react'\n\nimport { focusCls } from '../utils/a11y'\nimport { cx } from '../utils/cx'\n\ntype ToggleGroupItem = {\n value: string\n label: ReactNode\n}\n\ntype ToggleGroupSize = 'default' | 'lg' | 'sm'\n\ntype ToggleGroupProps = Omit<\n React.HTMLAttributes<HTMLDivElement>,\n 'onChange'\n> & {\n items: ToggleGroupItem[]\n value: string[]\n onChange: (value: string[]) => void\n exclusive?: boolean\n size?: ToggleGroupSize\n disabled?: boolean\n}\n\nconst toggleGroupVariants = {\n size: {\n sm: 'px-2 py-1 text-[11px]',\n default: 'px-3 py-1.5 text-xs',\n lg: 'px-4 py-2 text-sm',\n },\n} as const\n\nconst toggleItemVariants = toggleGroupVariants\n\nconst ToggleGroup = forwardRef<HTMLDivElement, ToggleGroupProps>(\n function ToggleGroup(\n {\n items,\n value,\n onChange,\n exclusive,\n size = 'default',\n disabled,\n className,\n ...props\n },\n ref\n ) {\n function handleClick(itemValue: string) {\n if (exclusive === true) {\n // exclusive: always select the clicked one (no deselect)\n if (!value.includes(itemValue)) {\n onChange([itemValue])\n }\n return\n }\n // multi: toggle\n if (value.includes(itemValue)) {\n onChange(value.filter((v) => v !== itemValue))\n } else {\n onChange([...value, itemValue])\n }\n }\n\n return (\n <div\n ref={ref}\n className={cx(\n 'gds-radius-button border-border bg-bg inline-flex overflow-hidden border select-none',\n disabled === true && 'pointer-events-none opacity-50',\n className\n )}\n data-component=\"toggle-group\"\n data-state={disabled === true ? 'disabled' : 'enabled'}\n role=\"group\"\n {...props}\n >\n {items.map((item, index) => {\n const isActive = value.includes(item.value)\n const isLast = index === items.length - 1\n return (\n <button\n key={item.value}\n aria-pressed={isActive}\n className={cx(\n 'transition-colors',\n toggleGroupVariants.size[size ?? 'default'],\n !isLast && 'border-border border-r',\n focusCls,\n isActive\n ? 'bg-accent/10 text-accent'\n : 'text-fg-muted hover:bg-bg-tertiary'\n )}\n disabled={disabled}\n onClick={() => handleClick(item.value)}\n type=\"button\"\n >\n {item.label}\n </button>\n )\n })}\n </div>\n )\n }\n)\n\nexport { ToggleGroup, toggleGroupVariants, toggleItemVariants }\nexport type { ToggleGroupItem, ToggleGroupProps, ToggleGroupSize }\n","import { forwardRef } from 'react'\n\nimport { cx } from '../utils/cx'\n\ntype TrendArrowDirection = 'up' | 'down' | 'flat'\ntype TrendArrowSize = 'sm' | 'default'\n\ntype TrendArrowProps = React.HTMLAttributes<HTMLSpanElement> & {\n direction: TrendArrowDirection\n size?: TrendArrowSize\n}\n\nconst sizeMap: Record<TrendArrowSize, number> = { sm: 12, default: 16 }\n\nconst TrendArrow = forwardRef<HTMLSpanElement, TrendArrowProps>(\n function TrendArrow(\n { className, direction, size = 'default', ...props },\n ref\n ) {\n const s = sizeMap[size]\n const colorCls =\n direction === 'up'\n ? 'text-success'\n : direction === 'down'\n ? 'text-danger'\n : 'text-fg-muted'\n\n return (\n <span\n className={cx('inline-flex', colorCls, className)}\n data-component=\"trend-arrow\"\n data-direction={direction}\n ref={ref}\n {...props}\n >\n <svg\n fill=\"none\"\n height={s}\n stroke=\"currentColor\"\n strokeLinecap=\"round\"\n strokeLinejoin=\"round\"\n strokeWidth={2}\n viewBox=\"0 0 24 24\"\n width={s}\n >\n {direction === 'up' && <path d=\"M12 19V5M5 12l7-7 7 7\" />}\n {direction === 'down' && <path d=\"M12 5v14M19 12l-7 7-7-7\" />}\n {direction === 'flat' && <path d=\"M5 12h14\" />}\n </svg>\n </span>\n )\n }\n)\n\nexport { TrendArrow }\nexport type { TrendArrowDirection, TrendArrowProps, TrendArrowSize }\n","import { cx } from '../utils/cx'\n\ntype TrendIndicatorProps = {\n className?: string\n inverse?: boolean\n label?: string\n value: number\n}\n\nexport function TrendIndicator({\n className,\n inverse = false,\n label,\n value,\n}: TrendIndicatorProps) {\n const isPositive = value > 0\n const isNegative = value < 0\n const isZero = value === 0\n\n const colorClass = isZero\n ? 'text-fg-muted'\n : isPositive\n ? inverse\n ? 'text-danger'\n : 'text-success'\n : inverse\n ? 'text-success'\n : 'text-danger'\n\n const arrow = isPositive ? '\\u25B2' : isNegative ? '\\u25BC' : '\\u2500'\n const sign = isPositive ? '+' : ''\n\n return (\n <span\n className={cx(\n 'inline-flex items-center gap-1 text-sm font-medium select-none',\n colorClass,\n className\n )}\n data-component=\"trend-indicator\"\n >\n <span className=\"text-[10px]\">{arrow}</span>\n <span>\n {sign}\n {value}%\n </span>\n {label !== undefined && (\n <span className=\"text-fg-muted text-xs font-normal\">{label}</span>\n )}\n </span>\n )\n}\n\nexport type { TrendIndicatorProps }\n","import type { ReactNode } from 'react'\nimport { forwardRef } from 'react'\n\nimport { cx } from '../utils/cx'\n\ntype TruncatedListProps = React.HTMLAttributes<HTMLDivElement> & {\n items: ReactNode[]\n max?: number\n moreLabel?: (count: number) => string\n}\n\nexport const TruncatedList = forwardRef<HTMLDivElement, TruncatedListProps>(\n function TruncatedList(\n { className, items, max = 3, moreLabel, ...props },\n ref\n ) {\n const visible = items.slice(0, max)\n const remaining = items.length - max\n\n return (\n <div\n className={cx(\n 'gds-gap-sm inline-flex flex-wrap items-center',\n className\n )}\n data-component=\"truncated-list\"\n ref={ref}\n {...props}\n >\n {visible.map((item, i) => (\n <span key={i}>{item}</span>\n ))}\n {remaining > 0 && (\n <span className=\"gds-text-label text-fg-muted\">\n {moreLabel !== undefined\n ? moreLabel(remaining)\n : `+${remaining} more`}\n </span>\n )}\n </div>\n )\n }\n)\n\nexport type { TruncatedListProps }\n","// typewriter — characters appear one by one\nimport { forwardRef, useEffect, useState } from 'react'\n\nimport { cx } from '../utils/cx'\n\nexport type TypewriterProps = {\n text: string\n speed?: number\n delay?: number\n cursor?: boolean\n onComplete?: () => void\n className?: string\n}\n\nexport const Typewriter = forwardRef<HTMLSpanElement, TypewriterProps>(\n function Typewriter(\n { text, speed = 50, delay = 0, cursor = true, onComplete, className },\n ref\n ) {\n const [length, setLength] = useState(0)\n const [started, setStarted] = useState(delay <= 0)\n\n useEffect(() => {\n if (delay <= 0) return\n const timer = setTimeout(() => setStarted(true), delay)\n return () => clearTimeout(timer)\n }, [delay])\n\n useEffect(() => {\n if (!started) return\n if (length >= text.length) {\n if (onComplete !== undefined) onComplete()\n return\n }\n const timer = setTimeout(() => setLength((prev) => prev + 1), speed)\n return () => clearTimeout(timer)\n }, [length, text.length, speed, started, onComplete])\n\n // reset when text changes\n useEffect(() => {\n setLength(0)\n if (delay <= 0) setStarted(true)\n }, [text, delay])\n\n return (\n <span ref={ref} className={cx(className)} data-component=\"typewriter\">\n {text.slice(0, length)}\n {cursor && (\n <span\n className=\"inline-block animate-pulse\"\n data-testid=\"cursor\"\n aria-hidden\n >\n |\n </span>\n )}\n </span>\n )\n }\n)\n","import { forwardRef } from 'react'\n\nimport { cx } from '../utils/cx'\n\ntype VerifiedBadgeVariant = 'default' | 'gold' | 'official'\n\ntype VerifiedBadgeProps = React.HTMLAttributes<HTMLSpanElement> & {\n size?: 'default' | 'sm'\n variant?: VerifiedBadgeVariant\n}\n\nconst variantColors: Record<VerifiedBadgeVariant, string> = {\n default: 'text-accent',\n gold: 'text-warning',\n official: 'text-success',\n}\n\nconst sizeMap = { default: 16, sm: 12 } as const\n\nexport const VerifiedBadge = forwardRef<HTMLSpanElement, VerifiedBadgeProps>(\n function VerifiedBadge(\n { className, size = 'default', variant = 'default', ...props },\n ref\n ) {\n const s = sizeMap[size]\n return (\n <span\n className={cx(\n 'inline-flex shrink-0 items-center',\n variantColors[variant],\n className\n )}\n data-component=\"verified-badge\"\n data-variant={variant}\n ref={ref}\n {...props}\n >\n <svg fill=\"currentColor\" height={s} viewBox=\"0 0 24 24\" width={s}>\n <path d=\"M12 1l3.09 2.26L19 3.27l.01 3.91L22 10.18 19.82 13l.18 3.91-3.91 1.01L13.09 21 12 23l-3.09-2.26L5 21.73l-.01-3.91L2 14.82 4.18 12l-.18-3.91 3.91-1.01L10.91 4 12 1zm-1.5 12.5l5-5-1.41-1.41L10.5 10.67 8.41 8.59 7 10l3.5 3.5z\" />\n </svg>\n </span>\n )\n }\n)\n\nexport type { VerifiedBadgeProps, VerifiedBadgeVariant }\n","// visual-counter — number display with +/- controls\nimport { forwardRef } from 'react'\n\nimport { focusCls } from '../utils/a11y'\nimport { cx } from '../utils/cx'\n\ntype VisualCounterProps = Omit<\n React.HTMLAttributes<HTMLDivElement>,\n 'onChange'\n> & {\n value: number\n onChange: (value: number) => void\n min?: number\n max?: number\n step?: number\n disabled?: boolean\n}\n\nexport const VisualCounter = forwardRef<HTMLDivElement, VisualCounterProps>(\n function VisualCounter(\n {\n value,\n onChange,\n min,\n max,\n step = 1,\n disabled = false,\n className,\n ...props\n },\n ref\n ) {\n const atMin = min !== undefined && value <= min\n const atMax = max !== undefined && value >= max\n\n return (\n <div\n ref={ref}\n className={cx('inline-flex items-center gap-1 select-none', className)}\n data-component=\"visual-counter\"\n {...props}\n >\n <button\n type=\"button\"\n className={cx(\n 'border-border text-fg-muted hover:bg-bg-tertiary flex h-7 w-7 items-center justify-center rounded-md border transition-colors disabled:opacity-40',\n focusCls\n )}\n disabled={disabled || atMin}\n onClick={() => onChange(Math.max(min ?? -Infinity, value - step))}\n >\n −\n </button>\n <span className=\"gds-text text-fg min-w-[2rem] text-center tabular-nums\">\n {value}\n </span>\n <button\n type=\"button\"\n className={cx(\n 'border-border text-fg-muted hover:bg-bg-tertiary flex h-7 w-7 items-center justify-center rounded-md border transition-colors disabled:opacity-40',\n focusCls\n )}\n disabled={disabled || atMax}\n onClick={() => onChange(Math.min(max ?? Infinity, value + step))}\n >\n +\n </button>\n </div>\n )\n }\n)\n\nexport type { VisualCounterProps }\n","import { useCallback } from 'react'\n\nimport { cx } from '../utils/cx'\n\ntype VolumeSliderProps = {\n className?: string\n onChange: (v: number) => void\n value: number\n}\n\nconst TOTAL_BARS = 10\n\nexport function VolumeSlider({\n className,\n onChange,\n value,\n}: VolumeSliderProps) {\n const filledBars = Math.round((value / 100) * TOTAL_BARS)\n\n const handleBarClick = useCallback(\n (barIndex: number) => {\n onChange(Math.round(((barIndex + 1) / TOTAL_BARS) * 100))\n },\n [onChange]\n )\n\n return (\n <div\n className={cx(\n 'inline-flex flex-col-reverse items-center gap-1 select-none',\n className\n )}\n data-component=\"volume-slider\"\n >\n {Array.from({ length: TOTAL_BARS }, (_, i) => (\n <button\n className={cx(\n 'h-2 w-8 cursor-pointer rounded-sm transition-colors',\n i < filledBars ? 'bg-accent' : 'bg-bg-tertiary'\n )}\n key={i}\n onClick={() => handleBarClick(i)}\n type=\"button\"\n />\n ))}\n </div>\n )\n}\n\nexport type { VolumeSliderProps }\n","// zoom-on-hover — wrapper that scales content on hover\nimport type { ReactNode } from 'react'\nimport { forwardRef } from 'react'\n\nimport { cx } from '../utils/cx'\n\ntype ZoomOnHoverProps = React.HTMLAttributes<HTMLDivElement> & {\n children: ReactNode\n duration?: number\n scale?: number\n}\n\nexport const ZoomOnHover = forwardRef<HTMLDivElement, ZoomOnHoverProps>(\n function ZoomOnHover(\n { children, className, duration = 300, scale = 1.1, ...props },\n ref\n ) {\n return (\n <div\n className={cx('overflow-hidden', className)}\n data-component=\"zoom-on-hover\"\n ref={ref}\n {...props}\n >\n <div\n className=\"transition-transform ease-out\"\n style={{ transitionDuration: `${duration}ms` }}\n onMouseEnter={(e) => {\n e.currentTarget.style.transform = `scale(${scale})`\n }}\n onMouseLeave={(e) => {\n e.currentTarget.style.transform = 'scale(1)'\n }}\n >\n {children}\n </div>\n </div>\n )\n }\n)\n\nexport type { ZoomOnHoverProps }\n"],"mappings":"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"}
@@ -6,7 +6,7 @@ export type AccordionProps = {
6
6
  defaultExpanded?: string[];
7
7
  className?: string;
8
8
  };
9
- export declare function Accordion({ children, type, defaultExpanded, className }: AccordionProps): import("react/jsx-runtime").JSX.Element;
9
+ export declare function Accordion({ children, type, defaultExpanded, className, }: AccordionProps): import("react/jsx-runtime").JSX.Element;
10
10
  export type AccordionItemProps = {
11
11
  id: string;
12
12
  title: string;
@@ -14,6 +14,6 @@ export type AccordionItemProps = {
14
14
  disabled?: boolean;
15
15
  className?: string;
16
16
  };
17
- export declare function AccordionItem({ id, title, children, disabled, className }: AccordionItemProps): import("react/jsx-runtime").JSX.Element;
17
+ export declare function AccordionItem({ id, title, children, disabled, className, }: AccordionItemProps): import("react/jsx-runtime").JSX.Element;
18
18
  export {};
19
19
  //# sourceMappingURL=accordion.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"accordion.d.ts","sourceRoot":"","sources":["../../src/l4-molecules/accordion.tsx"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,OAAO,CAAA;AAMtC,KAAK,aAAa,GAAG,UAAU,GAAG,QAAQ,CAAA;AAY1C,MAAM,MAAM,cAAc,GAAG;IAC3B,QAAQ,EAAE,SAAS,CAAA;IACnB,IAAI,CAAC,EAAE,aAAa,CAAA;IACpB,eAAe,CAAC,EAAE,MAAM,EAAE,CAAA;IAC1B,SAAS,CAAC,EAAE,MAAM,CAAA;CACnB,CAAA;AAED,wBAAgB,SAAS,CAAC,EAAE,QAAQ,EAAE,IAAe,EAAE,eAAoB,EAAE,SAAS,EAAE,EAAE,cAAc,2CAmBvG;AAED,MAAM,MAAM,kBAAkB,GAAG;IAC/B,EAAE,EAAE,MAAM,CAAA;IACV,KAAK,EAAE,MAAM,CAAA;IACb,QAAQ,EAAE,SAAS,CAAA;IACnB,QAAQ,CAAC,EAAE,OAAO,CAAA;IAClB,SAAS,CAAC,EAAE,MAAM,CAAA;CACnB,CAAA;AAED,wBAAgB,aAAa,CAAC,EAAE,EAAE,EAAE,KAAK,EAAE,QAAQ,EAAE,QAAQ,EAAE,SAAS,EAAE,EAAE,kBAAkB,2CAoC7F"}
1
+ {"version":3,"file":"accordion.d.ts","sourceRoot":"","sources":["../../src/l4-molecules/accordion.tsx"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAiB,SAAS,EAAE,MAAM,OAAO,CAAA;AAMrD,KAAK,aAAa,GAAG,UAAU,GAAG,QAAQ,CAAA;AAY1C,MAAM,MAAM,cAAc,GAAG;IAC3B,QAAQ,EAAE,SAAS,CAAA;IACnB,IAAI,CAAC,EAAE,aAAa,CAAA;IACpB,eAAe,CAAC,EAAE,MAAM,EAAE,CAAA;IAC1B,SAAS,CAAC,EAAE,MAAM,CAAA;CACnB,CAAA;AAED,wBAAgB,SAAS,CAAC,EACxB,QAAQ,EACR,IAAe,EACf,eAAoB,EACpB,SAAS,GACV,EAAE,cAAc,2CAsDhB;AAED,MAAM,MAAM,kBAAkB,GAAG;IAC/B,EAAE,EAAE,MAAM,CAAA;IACV,KAAK,EAAE,MAAM,CAAA;IACb,QAAQ,EAAE,SAAS,CAAA;IACnB,QAAQ,CAAC,EAAE,OAAO,CAAA;IAClB,SAAS,CAAC,EAAE,MAAM,CAAA;CACnB,CAAA;AAED,wBAAgB,aAAa,CAAC,EAC5B,EAAE,EACF,KAAK,EACL,QAAQ,EACR,QAAQ,EACR,SAAS,GACV,EAAE,kBAAkB,2CAuCpB"}
@@ -1 +1 @@
1
- {"version":3,"file":"action-card.d.ts","sourceRoot":"","sources":["../../src/l4-molecules/action-card.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,OAAO,CAAA;AAKtC,KAAK,eAAe,GAAG,IAAI,CAAC,KAAK,CAAC,cAAc,CAAC,cAAc,CAAC,EAAE,SAAS,CAAC,GAAG;IAC7E,WAAW,CAAC,EAAE,MAAM,CAAA;IACpB,IAAI,CAAC,EAAE,SAAS,CAAA;IAChB,OAAO,EAAE,MAAM,IAAI,CAAA;IACnB,KAAK,EAAE,MAAM,CAAA;CACd,CAAA;AAED,eAAO,MAAM,UAAU;kBANP,MAAM;WACb,SAAS;aACP,MAAM,IAAI;WACZ,MAAM;kDAiCd,CAAA;AAED,YAAY,EAAE,eAAe,EAAE,CAAA"}
1
+ {"version":3,"file":"action-card.d.ts","sourceRoot":"","sources":["../../src/l4-molecules/action-card.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,OAAO,CAAA;AAKtC,KAAK,eAAe,GAAG,IAAI,CAAC,KAAK,CAAC,cAAc,CAAC,cAAc,CAAC,EAAE,SAAS,CAAC,GAAG;IAC7E,WAAW,CAAC,EAAE,MAAM,CAAA;IACpB,IAAI,CAAC,EAAE,SAAS,CAAA;IAChB,OAAO,EAAE,MAAM,IAAI,CAAA;IACnB,KAAK,EAAE,MAAM,CAAA;CACd,CAAA;AAED,eAAO,MAAM,UAAU;kBANP,MAAM;WACb,SAAS;aACP,MAAM,IAAI;WACZ,MAAM;kDAwCd,CAAA;AAED,YAAY,EAAE,eAAe,EAAE,CAAA"}
@@ -1 +1 @@
1
- {"version":3,"file":"action-menu.d.ts","sourceRoot":"","sources":["../../src/l4-molecules/action-menu.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,OAAO,CAAA;AAQtC,KAAK,cAAc,GAAG;IACpB,EAAE,EAAE,MAAM,CAAA;IACV,KAAK,EAAE,MAAM,CAAA;IACb,IAAI,CAAC,EAAE,SAAS,CAAA;IAChB,MAAM,CAAC,EAAE,OAAO,CAAA;CACjB,CAAA;AAED,KAAK,eAAe,GAAG;IACrB,KAAK,EAAE,cAAc,EAAE,CAAA;IACvB,QAAQ,EAAE,CAAC,EAAE,EAAE,MAAM,KAAK,IAAI,CAAA;IAC9B,QAAQ,CAAC,EAAE,OAAO,CAAA;IAClB,SAAS,CAAC,EAAE,MAAM,CAAA;CACnB,CAAA;AAUD,eAAO,MAAM,UAAU,4GAwCtB,CAAA;AAED,YAAY,EAAE,cAAc,EAAE,eAAe,EAAE,CAAA"}
1
+ {"version":3,"file":"action-menu.d.ts","sourceRoot":"","sources":["../../src/l4-molecules/action-menu.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,OAAO,CAAA;AAQtC,KAAK,cAAc,GAAG;IACpB,EAAE,EAAE,MAAM,CAAA;IACV,KAAK,EAAE,MAAM,CAAA;IACb,IAAI,CAAC,EAAE,SAAS,CAAA;IAChB,MAAM,CAAC,EAAE,OAAO,CAAA;CACjB,CAAA;AAED,KAAK,eAAe,GAAG;IACrB,KAAK,EAAE,cAAc,EAAE,CAAA;IACvB,QAAQ,EAAE,CAAC,EAAE,EAAE,MAAM,KAAK,IAAI,CAAA;IAC9B,QAAQ,CAAC,EAAE,OAAO,CAAA;IAClB,SAAS,CAAC,EAAE,MAAM,CAAA;CACnB,CAAA;AAUD,eAAO,MAAM,UAAU,4GAmDtB,CAAA;AAED,YAAY,EAAE,cAAc,EAAE,eAAe,EAAE,CAAA"}
@@ -1 +1 @@
1
- {"version":3,"file":"activity-log.d.ts","sourceRoot":"","sources":["../../src/l4-molecules/activity-log.tsx"],"names":[],"mappings":"AAKA,MAAM,MAAM,aAAa,GAAG;IAC1B,MAAM,EAAE,MAAM,CAAA;IACd,KAAK,EAAE,MAAM,CAAA;IACb,EAAE,EAAE,MAAM,CAAA;IACV,MAAM,CAAC,EAAE,MAAM,CAAA;IACf,SAAS,EAAE,MAAM,CAAA;CAClB,CAAA;AAED,MAAM,MAAM,gBAAgB,GAAG;IAC7B,SAAS,CAAC,EAAE,MAAM,CAAA;IAClB,OAAO,EAAE,aAAa,EAAE,CAAA;CACzB,CAAA;AAED,eAAO,MAAM,WAAW,6GA4BvB,CAAA"}
1
+ {"version":3,"file":"activity-log.d.ts","sourceRoot":"","sources":["../../src/l4-molecules/activity-log.tsx"],"names":[],"mappings":"AAKA,MAAM,MAAM,aAAa,GAAG;IAC1B,MAAM,EAAE,MAAM,CAAA;IACd,KAAK,EAAE,MAAM,CAAA;IACb,EAAE,EAAE,MAAM,CAAA;IACV,MAAM,CAAC,EAAE,MAAM,CAAA;IACf,SAAS,EAAE,MAAM,CAAA;CAClB,CAAA;AAED,MAAM,MAAM,gBAAgB,GAAG;IAC7B,SAAS,CAAC,EAAE,MAAM,CAAA;IAClB,OAAO,EAAE,aAAa,EAAE,CAAA;CACzB,CAAA;AAED,eAAO,MAAM,WAAW,6GAkCvB,CAAA"}
@@ -1 +1 @@
1
- {"version":3,"file":"alert.d.ts","sourceRoot":"","sources":["../../src/l4-molecules/alert.tsx"],"names":[],"mappings":"AAOA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,gBAAgB,CAAA;AAElD,QAAA,MAAM,aAAa;;8EAclB,CAAA;AA8BD,MAAM,MAAM,UAAU,GAAG,KAAK,CAAC,cAAc,CAAC,cAAc,CAAC,GAC3D,YAAY,CAAC,OAAO,aAAa,CAAC,GAAG;IACnC,KAAK,CAAC,EAAE,MAAM,CAAA;IACd,OAAO,CAAC,EAAE,MAAM,IAAI,CAAA;IACpB,KAAK,CAAC,EAAE,OAAO,CAAA;CAChB,CAAA;AAEH,eAAO,MAAM,KAAK;;;YALN,MAAM;cACJ,MAAM,IAAI;YACZ,OAAO;kDAwClB,CAAA;AAED,OAAO,EAAE,aAAa,EAAE,CAAA"}
1
+ {"version":3,"file":"alert.d.ts","sourceRoot":"","sources":["../../src/l4-molecules/alert.tsx"],"names":[],"mappings":"AAOA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,gBAAgB,CAAA;AAElD,QAAA,MAAM,aAAa;;8EAclB,CAAA;AA4ED,MAAM,MAAM,UAAU,GAAG,KAAK,CAAC,cAAc,CAAC,cAAc,CAAC,GAC3D,YAAY,CAAC,OAAO,aAAa,CAAC,GAAG;IACnC,KAAK,CAAC,EAAE,MAAM,CAAA;IACd,OAAO,CAAC,EAAE,MAAM,IAAI,CAAA;IACpB,KAAK,CAAC,EAAE,OAAO,CAAA;CAChB,CAAA;AAEH,eAAO,MAAM,KAAK;;;YALN,MAAM;cACJ,MAAM,IAAI;YACZ,OAAO;kDAoDjB,CAAA;AAEF,OAAO,EAAE,aAAa,EAAE,CAAA"}
@@ -1 +1 @@
1
- {"version":3,"file":"audit-entry.d.ts","sourceRoot":"","sources":["../../src/l4-molecules/audit-entry.tsx"],"names":[],"mappings":"AAIA,KAAK,iBAAiB,GAAG,QAAQ,GAAG,SAAS,GAAG,SAAS,GAAG,SAAS,CAAA;AAErE,KAAK,eAAe,GAAG,KAAK,CAAC,cAAc,CAAC,cAAc,CAAC,GAAG;IAC5D,MAAM,EAAE,MAAM,CAAA;IACd,MAAM,CAAC,EAAE,MAAM,CAAA;IACf,SAAS,EAAE,MAAM,CAAA;IACjB,IAAI,EAAE,MAAM,CAAA;IACZ,OAAO,CAAC,EAAE,iBAAiB,CAAA;CAC5B,CAAA;AASD,eAAO,MAAM,UAAU;YAdb,MAAM;aACL,MAAM;eACJ,MAAM;UACX,MAAM;cACF,iBAAiB;kDA6B5B,CAAA;AAED,YAAY,EAAE,eAAe,EAAE,iBAAiB,EAAE,CAAA"}
1
+ {"version":3,"file":"audit-entry.d.ts","sourceRoot":"","sources":["../../src/l4-molecules/audit-entry.tsx"],"names":[],"mappings":"AAIA,KAAK,iBAAiB,GAAG,QAAQ,GAAG,SAAS,GAAG,SAAS,GAAG,SAAS,CAAA;AAErE,KAAK,eAAe,GAAG,KAAK,CAAC,cAAc,CAAC,cAAc,CAAC,GAAG;IAC5D,MAAM,EAAE,MAAM,CAAA;IACd,MAAM,CAAC,EAAE,MAAM,CAAA;IACf,SAAS,EAAE,MAAM,CAAA;IACjB,IAAI,EAAE,MAAM,CAAA;IACZ,OAAO,CAAC,EAAE,iBAAiB,CAAA;CAC5B,CAAA;AASD,eAAO,MAAM,UAAU;YAdb,MAAM;aACL,MAAM;eACJ,MAAM;UACX,MAAM;cACF,iBAAiB;kDA4C5B,CAAA;AAED,YAAY,EAAE,eAAe,EAAE,iBAAiB,EAAE,CAAA"}
@@ -1 +1 @@
1
- {"version":3,"file":"banner.d.ts","sourceRoot":"","sources":["../../src/l4-molecules/banner.tsx"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,OAAO,CAAA;AAOtC,KAAK,aAAa,GAAG,QAAQ,GAAG,MAAM,GAAG,SAAS,GAAG,SAAS,CAAA;AAgC9D,MAAM,MAAM,WAAW,GAAG;IACxB,OAAO,EAAE,SAAS,CAAA;IAClB,OAAO,CAAC,EAAE,aAAa,CAAA;IACvB,WAAW,CAAC,EAAE,OAAO,CAAA;IACrB,SAAS,CAAC,EAAE,MAAM,IAAI,CAAA;IACtB,KAAK,CAAC,EAAE,OAAO,CAAA;IACf,SAAS,CAAC,EAAE,MAAM,CAAA;CACnB,CAAA;AAED,eAAO,MAAM,MAAM,wGAgClB,CAAA;AAED,YAAY,EAAE,aAAa,EAAE,CAAA"}
1
+ {"version":3,"file":"banner.d.ts","sourceRoot":"","sources":["../../src/l4-molecules/banner.tsx"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,OAAO,CAAA;AAOtC,KAAK,aAAa,GAAG,QAAQ,GAAG,MAAM,GAAG,SAAS,GAAG,SAAS,CAAA;AAqE9D,MAAM,MAAM,WAAW,GAAG;IACxB,OAAO,EAAE,SAAS,CAAA;IAClB,OAAO,CAAC,EAAE,aAAa,CAAA;IACvB,WAAW,CAAC,EAAE,OAAO,CAAA;IACrB,SAAS,CAAC,EAAE,MAAM,IAAI,CAAA;IACtB,KAAK,CAAC,EAAE,OAAO,CAAA;IACf,SAAS,CAAC,EAAE,MAAM,CAAA;CACnB,CAAA;AAED,eAAO,MAAM,MAAM,wGAmDjB,CAAA;AAEF,YAAY,EAAE,aAAa,EAAE,CAAA"}
@@ -1 +1 @@
1
- {"version":3,"file":"before-after.d.ts","sourceRoot":"","sources":["../../src/l4-molecules/before-after.tsx"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,OAAO,CAAA;AAKtC,MAAM,MAAM,gBAAgB,GAAG;IAC7B,MAAM,EAAE,SAAS,CAAA;IACjB,KAAK,EAAE,SAAS,CAAA;IAChB,eAAe,CAAC,EAAE,MAAM,CAAA;IACxB,SAAS,CAAC,EAAE,MAAM,CAAA;CACnB,CAAA;AAED,eAAO,MAAM,WAAW,6GAmFvB,CAAA"}
1
+ {"version":3,"file":"before-after.d.ts","sourceRoot":"","sources":["../../src/l4-molecules/before-after.tsx"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,OAAO,CAAA;AAKtC,MAAM,MAAM,gBAAgB,GAAG;IAC7B,MAAM,EAAE,SAAS,CAAA;IACjB,KAAK,EAAE,SAAS,CAAA;IAChB,eAAe,CAAC,EAAE,MAAM,CAAA;IACxB,SAAS,CAAC,EAAE,MAAM,CAAA;CACnB,CAAA;AAED,eAAO,MAAM,WAAW,6GA4FvB,CAAA"}
@@ -1 +1 @@
1
- {"version":3,"file":"breadcrumb.d.ts","sourceRoot":"","sources":["../../src/l4-molecules/breadcrumb.tsx"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,OAAO,CAAA;AAKtC,MAAM,MAAM,cAAc,GAAG;IAC3B,KAAK,EAAE,MAAM,CAAA;IACb,IAAI,CAAC,EAAE,MAAM,CAAA;IACb,IAAI,CAAC,EAAE,SAAS,CAAA;CACjB,CAAA;AAED,MAAM,MAAM,eAAe,GAAG;IAC5B,KAAK,EAAE,cAAc,EAAE,CAAA;IACvB,SAAS,CAAC,EAAE,SAAS,CAAA;IACrB,QAAQ,CAAC,EAAE,MAAM,CAAA;IACjB,SAAS,CAAC,EAAE,MAAM,CAAA;CACnB,CAAA;AAQD,eAAO,MAAM,UAAU,yGAsCtB,CAAA"}
1
+ {"version":3,"file":"breadcrumb.d.ts","sourceRoot":"","sources":["../../src/l4-molecules/breadcrumb.tsx"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,OAAO,CAAA;AAKtC,MAAM,MAAM,cAAc,GAAG;IAC3B,KAAK,EAAE,MAAM,CAAA;IACb,IAAI,CAAC,EAAE,MAAM,CAAA;IACb,IAAI,CAAC,EAAE,SAAS,CAAA;CACjB,CAAA;AAED,MAAM,MAAM,eAAe,GAAG;IAC5B,KAAK,EAAE,cAAc,EAAE,CAAA;IACvB,SAAS,CAAC,EAAE,SAAS,CAAA;IACrB,QAAQ,CAAC,EAAE,MAAM,CAAA;IACjB,SAAS,CAAC,EAAE,MAAM,CAAA;CACnB,CAAA;AAgBD,eAAO,MAAM,UAAU,yGAoDtB,CAAA"}
@@ -1 +1 @@
1
- {"version":3,"file":"bulk-action-bar.d.ts","sourceRoot":"","sources":["../../src/l4-molecules/bulk-action-bar.tsx"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,OAAO,CAAA;AAMtC,KAAK,kBAAkB,GAAG;IACxB,OAAO,EAAE,SAAS,CAAA;IAClB,SAAS,CAAC,EAAE,MAAM,CAAA;IAClB,KAAK,EAAE,MAAM,CAAA;IACb,OAAO,CAAC,EAAE,MAAM,IAAI,CAAA;CACrB,CAAA;AAQD,eAAO,MAAM,aAAa,+GA+BzB,CAAA;AAED,YAAY,EAAE,kBAAkB,EAAE,CAAA"}
1
+ {"version":3,"file":"bulk-action-bar.d.ts","sourceRoot":"","sources":["../../src/l4-molecules/bulk-action-bar.tsx"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,OAAO,CAAA;AAMtC,KAAK,kBAAkB,GAAG;IACxB,OAAO,EAAE,SAAS,CAAA;IAClB,SAAS,CAAC,EAAE,MAAM,CAAA;IAClB,KAAK,EAAE,MAAM,CAAA;IACb,OAAO,CAAC,EAAE,MAAM,IAAI,CAAA;CACrB,CAAA;AAgBD,eAAO,MAAM,aAAa,+GAkCzB,CAAA;AAED,YAAY,EAAE,kBAAkB,EAAE,CAAA"}
@@ -1 +1 @@
1
- {"version":3,"file":"callout.d.ts","sourceRoot":"","sources":["../../src/l4-molecules/callout.tsx"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,OAAO,CAAA;AAMtC,KAAK,cAAc,GAAG,MAAM,GAAG,KAAK,GAAG,SAAS,GAAG,QAAQ,CAAA;AAgC3D,MAAM,MAAM,YAAY,GAAG;IACzB,OAAO,CAAC,EAAE,cAAc,CAAA;IACxB,KAAK,CAAC,EAAE,MAAM,CAAA;IACd,QAAQ,EAAE,SAAS,CAAA;IACnB,IAAI,CAAC,EAAE,SAAS,CAAA;IAChB,KAAK,CAAC,EAAE,OAAO,CAAA;IACf,SAAS,CAAC,EAAE,MAAM,CAAA;CACnB,CAAA;AAED,eAAO,MAAM,OAAO,yGAwBnB,CAAA"}
1
+ {"version":3,"file":"callout.d.ts","sourceRoot":"","sources":["../../src/l4-molecules/callout.tsx"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,OAAO,CAAA;AAMtC,KAAK,cAAc,GAAG,MAAM,GAAG,KAAK,GAAG,SAAS,GAAG,QAAQ,CAAA;AAoE3D,MAAM,MAAM,YAAY,GAAG;IACzB,OAAO,CAAC,EAAE,cAAc,CAAA;IACxB,KAAK,CAAC,EAAE,MAAM,CAAA;IACd,QAAQ,EAAE,SAAS,CAAA;IACnB,IAAI,CAAC,EAAE,SAAS,CAAA;IAChB,KAAK,CAAC,EAAE,OAAO,CAAA;IACf,SAAS,CAAC,EAAE,MAAM,CAAA;CACnB,CAAA;AAED,eAAO,MAAM,OAAO,yGA2BnB,CAAA"}
@@ -20,7 +20,7 @@ export type CardHeaderProps = {
20
20
  description?: string;
21
21
  title?: string;
22
22
  };
23
- export declare function CardHeader({ action, children, className, description, title }: CardHeaderProps): import("react/jsx-runtime").JSX.Element;
23
+ export declare function CardHeader({ action, children, className, description, title, }: CardHeaderProps): import("react/jsx-runtime").JSX.Element;
24
24
  export type CardContentProps = {
25
25
  children: ReactNode;
26
26
  className?: string;
@@ -1 +1 @@
1
- {"version":3,"file":"card.d.ts","sourceRoot":"","sources":["../../src/l4-molecules/card.tsx"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,OAAO,CAAA;AAMtC,KAAK,WAAW,GAAG,SAAS,GAAG,IAAI,GAAG,MAAM,GAAG,IAAI,CAAA;AASnD,MAAM,MAAM,SAAS,GAAG;IACtB,QAAQ,EAAE,SAAS,CAAA;IACnB,SAAS,CAAC,EAAE,MAAM,CAAA;IAClB,+CAA+C;IAC/C,KAAK,CAAC,EAAE,OAAO,CAAA;IACf,sCAAsC;IACtC,OAAO,CAAC,EAAE,OAAO,CAAA;IACjB,2DAA2D;IAC3D,OAAO,CAAC,EAAE,MAAM,IAAI,CAAA;IACpB,2BAA2B;IAC3B,OAAO,CAAC,EAAE,WAAW,CAAA;CACtB,CAAA;AAED,eAAO,MAAM,IAAI,sGAgChB,CAAA;AAED,MAAM,MAAM,eAAe,GAAG;IAC5B,MAAM,CAAC,EAAE,SAAS,CAAA;IAClB,QAAQ,CAAC,EAAE,SAAS,CAAA;IACpB,SAAS,CAAC,EAAE,MAAM,CAAA;IAClB,WAAW,CAAC,EAAE,MAAM,CAAA;IACpB,KAAK,CAAC,EAAE,MAAM,CAAA;CACf,CAAA;AAED,wBAAgB,UAAU,CAAC,EAAE,MAAM,EAAE,QAAQ,EAAE,SAAS,EAAE,WAAW,EAAE,KAAK,EAAE,EAAE,eAAe,2CAa9F;AAED,MAAM,MAAM,gBAAgB,GAAG;IAC7B,QAAQ,EAAE,SAAS,CAAA;IACnB,SAAS,CAAC,EAAE,MAAM,CAAA;CACnB,CAAA;AAED,wBAAgB,WAAW,CAAC,EAAE,QAAQ,EAAE,SAAS,EAAE,EAAE,gBAAgB,2CAEpE;AAED,MAAM,MAAM,eAAe,GAAG;IAC5B,QAAQ,EAAE,SAAS,CAAA;IACnB,SAAS,CAAC,EAAE,MAAM,CAAA;CACnB,CAAA;AAED,wBAAgB,UAAU,CAAC,EAAE,QAAQ,EAAE,SAAS,EAAE,EAAE,eAAe,2CAElE"}
1
+ {"version":3,"file":"card.d.ts","sourceRoot":"","sources":["../../src/l4-molecules/card.tsx"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,OAAO,CAAA;AAMtC,KAAK,WAAW,GAAG,SAAS,GAAG,IAAI,GAAG,MAAM,GAAG,IAAI,CAAA;AASnD,MAAM,MAAM,SAAS,GAAG;IACtB,QAAQ,EAAE,SAAS,CAAA;IACnB,SAAS,CAAC,EAAE,MAAM,CAAA;IAClB,+CAA+C;IAC/C,KAAK,CAAC,EAAE,OAAO,CAAA;IACf,sCAAsC;IACtC,OAAO,CAAC,EAAE,OAAO,CAAA;IACjB,2DAA2D;IAC3D,OAAO,CAAC,EAAE,MAAM,IAAI,CAAA;IACpB,2BAA2B;IAC3B,OAAO,CAAC,EAAE,WAAW,CAAA;CACtB,CAAA;AAED,eAAO,MAAM,IAAI,sGAwCf,CAAA;AAEF,MAAM,MAAM,eAAe,GAAG;IAC5B,MAAM,CAAC,EAAE,SAAS,CAAA;IAClB,QAAQ,CAAC,EAAE,SAAS,CAAA;IACpB,SAAS,CAAC,EAAE,MAAM,CAAA;IAClB,WAAW,CAAC,EAAE,MAAM,CAAA;IACpB,KAAK,CAAC,EAAE,MAAM,CAAA;CACf,CAAA;AAED,wBAAgB,UAAU,CAAC,EACzB,MAAM,EACN,QAAQ,EACR,SAAS,EACT,WAAW,EACX,KAAK,GACN,EAAE,eAAe,2CAuBjB;AAED,MAAM,MAAM,gBAAgB,GAAG;IAC7B,QAAQ,EAAE,SAAS,CAAA;IACnB,SAAS,CAAC,EAAE,MAAM,CAAA;CACnB,CAAA;AAED,wBAAgB,WAAW,CAAC,EAAE,QAAQ,EAAE,SAAS,EAAE,EAAE,gBAAgB,2CAEpE;AAED,MAAM,MAAM,eAAe,GAAG;IAC5B,QAAQ,EAAE,SAAS,CAAA;IACnB,SAAS,CAAC,EAAE,MAAM,CAAA;CACnB,CAAA;AAED,wBAAgB,UAAU,CAAC,EAAE,QAAQ,EAAE,SAAS,EAAE,EAAE,eAAe,2CAWlE"}
@@ -1 +1 @@
1
- {"version":3,"file":"category-tag.d.ts","sourceRoot":"","sources":["../../src/l4-molecules/category-tag.tsx"],"names":[],"mappings":"AAKA,KAAK,gBAAgB,GAAG,KAAK,CAAC,cAAc,CAAC,cAAc,CAAC,GAAG;IAC7D,KAAK,EAAE,MAAM,CAAA;IACb,KAAK,CAAC,EAAE,MAAM,CAAA;IACd,KAAK,EAAE,MAAM,CAAA;IACb,OAAO,CAAC,EAAE,MAAM,IAAI,CAAA;CACrB,CAAA;AAED,eAAO,MAAM,WAAW;WANf,MAAM;YACL,MAAM;WACP,MAAM;cACH,MAAM,IAAI;kDA4BrB,CAAA;AAED,YAAY,EAAE,gBAAgB,EAAE,CAAA"}
1
+ {"version":3,"file":"category-tag.d.ts","sourceRoot":"","sources":["../../src/l4-molecules/category-tag.tsx"],"names":[],"mappings":"AAKA,KAAK,gBAAgB,GAAG,KAAK,CAAC,cAAc,CAAC,cAAc,CAAC,GAAG;IAC7D,KAAK,EAAE,MAAM,CAAA;IACb,KAAK,CAAC,EAAE,MAAM,CAAA;IACd,KAAK,EAAE,MAAM,CAAA;IACb,OAAO,CAAC,EAAE,MAAM,IAAI,CAAA;CACrB,CAAA;AAED,eAAO,MAAM,WAAW;WANf,MAAM;YACL,MAAM;WACP,MAAM;cACH,MAAM,IAAI;kDA2CrB,CAAA;AAED,YAAY,EAAE,gBAAgB,EAAE,CAAA"}
@@ -1 +1 @@
1
- {"version":3,"file":"cert-badge.d.ts","sourceRoot":"","sources":["../../src/l4-molecules/cert-badge.tsx"],"names":[],"mappings":"AAIA,KAAK,eAAe,GAAG,SAAS,GAAG,UAAU,GAAG,OAAO,CAAA;AAEvD,KAAK,cAAc,GAAG,KAAK,CAAC,cAAc,CAAC,cAAc,CAAC,GAAG;IAC3D,MAAM,EAAE,MAAM,CAAA;IACd,SAAS,EAAE,MAAM,CAAA;IACjB,MAAM,EAAE,eAAe,CAAA;CACxB,CAAA;AAcD,eAAO,MAAM,SAAS;YAjBZ,MAAM;eACH,MAAM;YACT,eAAe;kDA8BxB,CAAA;AAED,YAAY,EAAE,cAAc,EAAE,eAAe,EAAE,CAAA"}
1
+ {"version":3,"file":"cert-badge.d.ts","sourceRoot":"","sources":["../../src/l4-molecules/cert-badge.tsx"],"names":[],"mappings":"AAIA,KAAK,eAAe,GAAG,SAAS,GAAG,UAAU,GAAG,OAAO,CAAA;AAEvD,KAAK,cAAc,GAAG,KAAK,CAAC,cAAc,CAAC,cAAc,CAAC,GAAG;IAC3D,MAAM,EAAE,MAAM,CAAA;IACd,SAAS,EAAE,MAAM,CAAA;IACjB,MAAM,EAAE,eAAe,CAAA;CACxB,CAAA;AAcD,eAAO,MAAM,SAAS;YAjBZ,MAAM;eACH,MAAM;YACT,eAAe;kDAkCxB,CAAA;AAED,YAAY,EAAE,cAAc,EAAE,eAAe,EAAE,CAAA"}
@@ -1 +1 @@
1
- {"version":3,"file":"chip-group.d.ts","sourceRoot":"","sources":["../../src/l4-molecules/chip-group.tsx"],"names":[],"mappings":"AAMA,KAAK,eAAe,GAAG;IAAE,KAAK,EAAE,MAAM,CAAC;IAAC,KAAK,EAAE,MAAM,CAAA;CAAE,CAAA;AAEvD,KAAK,cAAc,GAAG,IAAI,CAAC,KAAK,CAAC,cAAc,CAAC,cAAc,CAAC,EAAE,UAAU,CAAC,GAAG;IAC7E,OAAO,EAAE,eAAe,EAAE,CAAA;IAC1B,KAAK,EAAE,MAAM,EAAE,CAAA;IACf,QAAQ,EAAE,CAAC,KAAK,EAAE,MAAM,EAAE,KAAK,IAAI,CAAA;IACnC,SAAS,CAAC,EAAE,OAAO,CAAA;IACnB,SAAS,CAAC,EAAE,MAAM,CAAA;CACnB,CAAA;AAED,eAAO,MAAM,SAAS;aAPX,eAAe,EAAE;WACnB,MAAM,EAAE;cACL,CAAC,KAAK,EAAE,MAAM,EAAE,KAAK,IAAI;gBACvB,OAAO;gBACP,MAAM;kDAwCnB,CAAA;AAED,YAAY,EAAE,eAAe,EAAE,cAAc,EAAE,CAAA"}
1
+ {"version":3,"file":"chip-group.d.ts","sourceRoot":"","sources":["../../src/l4-molecules/chip-group.tsx"],"names":[],"mappings":"AAMA,KAAK,eAAe,GAAG;IAAE,KAAK,EAAE,MAAM,CAAC;IAAC,KAAK,EAAE,MAAM,CAAA;CAAE,CAAA;AAEvD,KAAK,cAAc,GAAG,IAAI,CAAC,KAAK,CAAC,cAAc,CAAC,cAAc,CAAC,EAAE,UAAU,CAAC,GAAG;IAC7E,OAAO,EAAE,eAAe,EAAE,CAAA;IAC1B,KAAK,EAAE,MAAM,EAAE,CAAA;IACf,QAAQ,EAAE,CAAC,KAAK,EAAE,MAAM,EAAE,KAAK,IAAI,CAAA;IACnC,SAAS,CAAC,EAAE,OAAO,CAAA;IACnB,SAAS,CAAC,EAAE,MAAM,CAAA;CACnB,CAAA;AAED,eAAO,MAAM,SAAS;aAPX,eAAe,EAAE;WACnB,MAAM,EAAE;cACL,CAAC,KAAK,EAAE,MAAM,EAAE,KAAK,IAAI;gBACvB,OAAO;gBACP,MAAM;kDA2CnB,CAAA;AAED,YAAY,EAAE,eAAe,EAAE,cAAc,EAAE,CAAA"}
@@ -1 +1 @@
1
- {"version":3,"file":"circular-menu.d.ts","sourceRoot":"","sources":["../../src/l4-molecules/circular-menu.tsx"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,OAAO,CAAA;AAOtC,MAAM,MAAM,gBAAgB,GAAG;IAC7B,IAAI,EAAE,SAAS,CAAA;IACf,EAAE,EAAE,MAAM,CAAA;IACV,KAAK,EAAE,MAAM,CAAA;CACd,CAAA;AAED,MAAM,MAAM,iBAAiB,GAAG;IAC9B,SAAS,CAAC,EAAE,MAAM,CAAA;IAClB,KAAK,EAAE,gBAAgB,EAAE,CAAA;IACzB,MAAM,CAAC,EAAE,MAAM,CAAA;IACf,OAAO,EAAE,SAAS,CAAA;CACnB,CAAA;AAED,eAAO,MAAM,YAAY,8GAoDxB,CAAA"}
1
+ {"version":3,"file":"circular-menu.d.ts","sourceRoot":"","sources":["../../src/l4-molecules/circular-menu.tsx"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,OAAO,CAAA;AAOtC,MAAM,MAAM,gBAAgB,GAAG;IAC7B,IAAI,EAAE,SAAS,CAAA;IACf,EAAE,EAAE,MAAM,CAAA;IACV,KAAK,EAAE,MAAM,CAAA;CACd,CAAA;AAED,MAAM,MAAM,iBAAiB,GAAG;IAC9B,SAAS,CAAC,EAAE,MAAM,CAAA;IAClB,KAAK,EAAE,gBAAgB,EAAE,CAAA;IACzB,MAAM,CAAC,EAAE,MAAM,CAAA;IACf,OAAO,EAAE,SAAS,CAAA;CACnB,CAAA;AAED,eAAO,MAAM,YAAY,8GAwDxB,CAAA"}
@@ -1 +1 @@
1
- {"version":3,"file":"code-block.d.ts","sourceRoot":"","sources":["../../src/l4-molecules/code-block.tsx"],"names":[],"mappings":"AAOA,MAAM,MAAM,cAAc,GAAG;IAC3B,IAAI,EAAE,MAAM,CAAA;IACZ,QAAQ,CAAC,EAAE,MAAM,CAAA;IACjB,eAAe,CAAC,EAAE,OAAO,CAAA;IACzB,SAAS,CAAC,EAAE,MAAM,GAAG,MAAM,CAAA;IAC3B,KAAK,CAAC,EAAE,OAAO,CAAA;IACf,SAAS,CAAC,EAAE,MAAM,CAAA;CACnB,CAAA;AAED,eAAO,MAAM,SAAS,2GAmFrB,CAAA"}
1
+ {"version":3,"file":"code-block.d.ts","sourceRoot":"","sources":["../../src/l4-molecules/code-block.tsx"],"names":[],"mappings":"AAOA,MAAM,MAAM,cAAc,GAAG;IAC3B,IAAI,EAAE,MAAM,CAAA;IACZ,QAAQ,CAAC,EAAE,MAAM,CAAA;IACjB,eAAe,CAAC,EAAE,OAAO,CAAA;IACzB,SAAS,CAAC,EAAE,MAAM,GAAG,MAAM,CAAA;IAC3B,KAAK,CAAC,EAAE,OAAO,CAAA;IACf,SAAS,CAAC,EAAE,MAAM,CAAA;CACnB,CAAA;AAED,eAAO,MAAM,SAAS,2GA8GrB,CAAA"}
@@ -1 +1 @@
1
- {"version":3,"file":"code-snippet.d.ts","sourceRoot":"","sources":["../../src/l4-molecules/code-snippet.tsx"],"names":[],"mappings":"AAOA,MAAM,MAAM,gBAAgB,GAAG;IAC7B,IAAI,EAAE,MAAM,CAAA;IACZ,QAAQ,CAAC,EAAE,MAAM,CAAA;IACjB,QAAQ,CAAC,EAAE,OAAO,CAAA;IAClB,eAAe,CAAC,EAAE,OAAO,CAAA;IACzB,KAAK,CAAC,EAAE,OAAO,CAAA;IACf,SAAS,CAAC,EAAE,MAAM,CAAA;CACnB,CAAA;AAED,eAAO,MAAM,WAAW,6GAgFvB,CAAA"}
1
+ {"version":3,"file":"code-snippet.d.ts","sourceRoot":"","sources":["../../src/l4-molecules/code-snippet.tsx"],"names":[],"mappings":"AAOA,MAAM,MAAM,gBAAgB,GAAG;IAC7B,IAAI,EAAE,MAAM,CAAA;IACZ,QAAQ,CAAC,EAAE,MAAM,CAAA;IACjB,QAAQ,CAAC,EAAE,OAAO,CAAA;IAClB,eAAe,CAAC,EAAE,OAAO,CAAA;IACzB,KAAK,CAAC,EAAE,OAAO,CAAA;IACf,SAAS,CAAC,EAAE,MAAM,CAAA;CACnB,CAAA;AAED,eAAO,MAAM,WAAW,6GA+GvB,CAAA"}
@@ -19,5 +19,5 @@ type CollapsibleContentProps = {
19
19
  };
20
20
  declare function CollapsibleContent({ children, className }: CollapsibleContentProps): import("react/jsx-runtime").JSX.Element;
21
21
  export { Collapsible, CollapsibleContent, CollapsibleTrigger };
22
- export type { CollapsibleContentProps, CollapsibleProps, CollapsibleTriggerProps };
22
+ export type { CollapsibleContentProps, CollapsibleProps, CollapsibleTriggerProps, };
23
23
  //# sourceMappingURL=collapsible.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"collapsible.d.ts","sourceRoot":"","sources":["../../src/l4-molecules/collapsible.tsx"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,OAAO,CAAA;AAKtC,KAAK,gBAAgB,GAAG;IACtB,OAAO,EAAE,SAAS,CAAA;IAClB,QAAQ,EAAE,SAAS,CAAA;IACnB,WAAW,CAAC,EAAE,OAAO,CAAA;IACrB,IAAI,CAAC,EAAE,OAAO,CAAA;IACd,YAAY,CAAC,EAAE,CAAC,IAAI,EAAE,OAAO,KAAK,IAAI,CAAA;IACtC,SAAS,CAAC,EAAE,MAAM,CAAA;CACnB,CAAA;AAED,QAAA,MAAM,WAAW,6GAyChB,CAAA;AAGD,KAAK,uBAAuB,GAAG;IAAE,QAAQ,EAAE,SAAS,CAAC;IAAC,SAAS,CAAC,EAAE,MAAM,CAAA;CAAE,CAAA;AAC1E,iBAAS,kBAAkB,CAAC,EAAE,QAAQ,EAAE,SAAS,EAAE,EAAE,uBAAuB,2CAE3E;AAED,KAAK,uBAAuB,GAAG;IAAE,QAAQ,EAAE,SAAS,CAAC;IAAC,SAAS,CAAC,EAAE,MAAM,CAAA;CAAE,CAAA;AAC1E,iBAAS,kBAAkB,CAAC,EAAE,QAAQ,EAAE,SAAS,EAAE,EAAE,uBAAuB,2CAE3E;AAED,OAAO,EAAE,WAAW,EAAE,kBAAkB,EAAE,kBAAkB,EAAE,CAAA;AAC9D,YAAY,EAAE,uBAAuB,EAAE,gBAAgB,EAAE,uBAAuB,EAAE,CAAA"}
1
+ {"version":3,"file":"collapsible.d.ts","sourceRoot":"","sources":["../../src/l4-molecules/collapsible.tsx"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,OAAO,CAAA;AAKtC,KAAK,gBAAgB,GAAG;IACtB,OAAO,EAAE,SAAS,CAAA;IAClB,QAAQ,EAAE,SAAS,CAAA;IACnB,WAAW,CAAC,EAAE,OAAO,CAAA;IACrB,IAAI,CAAC,EAAE,OAAO,CAAA;IACd,YAAY,CAAC,EAAE,CAAC,IAAI,EAAE,OAAO,KAAK,IAAI,CAAA;IACtC,SAAS,CAAC,EAAE,MAAM,CAAA;CACnB,CAAA;AAED,QAAA,MAAM,WAAW,6GAoDhB,CAAA;AAGD,KAAK,uBAAuB,GAAG;IAAE,QAAQ,EAAE,SAAS,CAAC;IAAC,SAAS,CAAC,EAAE,MAAM,CAAA;CAAE,CAAA;AAC1E,iBAAS,kBAAkB,CAAC,EAAE,QAAQ,EAAE,SAAS,EAAE,EAAE,uBAAuB,2CAE3E;AAED,KAAK,uBAAuB,GAAG;IAAE,QAAQ,EAAE,SAAS,CAAC;IAAC,SAAS,CAAC,EAAE,MAAM,CAAA;CAAE,CAAA;AAC1E,iBAAS,kBAAkB,CAAC,EAAE,QAAQ,EAAE,SAAS,EAAE,EAAE,uBAAuB,2CAE3E;AAED,OAAO,EAAE,WAAW,EAAE,kBAAkB,EAAE,kBAAkB,EAAE,CAAA;AAC9D,YAAY,EACV,uBAAuB,EACvB,gBAAgB,EAChB,uBAAuB,GACxB,CAAA"}
@@ -1 +1 @@
1
- {"version":3,"file":"color-picker.d.ts","sourceRoot":"","sources":["../../src/l4-molecules/color-picker.tsx"],"names":[],"mappings":"AAaA,MAAM,MAAM,gBAAgB,GAAG;IAC7B,KAAK,EAAE,MAAM,CAAA;IACb,QAAQ,EAAE,CAAC,KAAK,EAAE,MAAM,KAAK,IAAI,CAAA;IACjC,OAAO,CAAC,EAAE,MAAM,EAAE,CAAA;IAClB,SAAS,CAAC,EAAE,OAAO,CAAA;IACnB,QAAQ,CAAC,EAAE,OAAO,CAAA;IAClB,SAAS,CAAC,EAAE,MAAM,CAAA;CACnB,CAAA;AAED,eAAO,MAAM,WAAW,6GAmFvB,CAAA"}
1
+ {"version":3,"file":"color-picker.d.ts","sourceRoot":"","sources":["../../src/l4-molecules/color-picker.tsx"],"names":[],"mappings":"AAqBA,MAAM,MAAM,gBAAgB,GAAG;IAC7B,KAAK,EAAE,MAAM,CAAA;IACb,QAAQ,EAAE,CAAC,KAAK,EAAE,MAAM,KAAK,IAAI,CAAA;IACjC,OAAO,CAAC,EAAE,MAAM,EAAE,CAAA;IAClB,SAAS,CAAC,EAAE,OAAO,CAAA;IACnB,QAAQ,CAAC,EAAE,OAAO,CAAA;IAClB,SAAS,CAAC,EAAE,MAAM,CAAA;CACnB,CAAA;AAED,eAAO,MAAM,WAAW,6GAgGvB,CAAA"}