@thewhatmatters/wmds 0.4.9 → 0.4.28

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 (406) hide show
  1. package/CHANGELOG.md +303 -0
  2. package/CONSUMING.md +62 -1
  3. package/README.md +1 -1
  4. package/bin/wmds-check.mjs +47 -0
  5. package/dist/colors.css +92 -0
  6. package/dist/components/atoms/Badge/Badge.d.ts +13 -5
  7. package/dist/components/atoms/Badge/Badge.d.ts.map +1 -1
  8. package/dist/components/atoms/Badge/Badge.js +56 -48
  9. package/dist/components/atoms/Badge/badgeStyles.d.ts +15 -0
  10. package/dist/components/atoms/Badge/badgeStyles.d.ts.map +1 -1
  11. package/dist/components/atoms/Badge/badgeStyles.js +42 -20
  12. package/dist/components/atoms/Band/Band.d.ts +27 -0
  13. package/dist/components/atoms/Band/Band.d.ts.map +1 -0
  14. package/dist/components/atoms/Band/Band.js +22 -0
  15. package/dist/components/atoms/Band/bandStyles.d.ts +20 -0
  16. package/dist/components/atoms/Band/bandStyles.d.ts.map +1 -0
  17. package/dist/components/atoms/Band/bandStyles.js +23 -0
  18. package/dist/components/atoms/Button/Button.d.ts +1 -1
  19. package/dist/components/atoms/Button/Button.d.ts.map +1 -1
  20. package/dist/components/atoms/Button/Button.js +67 -48
  21. package/dist/components/atoms/Button/ButtonStatusButton.d.ts.map +1 -1
  22. package/dist/components/atoms/Button/ButtonStatusButton.js +12 -5
  23. package/dist/components/atoms/Button/buttonStatusMotion.d.ts.map +1 -1
  24. package/dist/components/atoms/Button/buttonStatusMotion.js +6 -1
  25. package/dist/components/atoms/Button/buttonStyles.d.ts +2 -2
  26. package/dist/components/atoms/Button/buttonStyles.d.ts.map +1 -1
  27. package/dist/components/atoms/Button/buttonStyles.js +16 -14
  28. package/dist/components/atoms/Checkbox/Checkbox.d.ts.map +1 -1
  29. package/dist/components/atoms/Checkbox/Checkbox.js +69 -68
  30. package/dist/components/atoms/Checkbox/checkboxStyles.d.ts +1 -1
  31. package/dist/components/atoms/Checkbox/checkboxStyles.d.ts.map +1 -1
  32. package/dist/components/atoms/Checkbox/checkboxStyles.js +1 -1
  33. package/dist/components/atoms/IconButton/IconButton.d.ts.map +1 -1
  34. package/dist/components/atoms/IconButton/IconButton.js +13 -12
  35. package/dist/components/atoms/IconButton/iconButtonStyles.d.ts +2 -2
  36. package/dist/components/atoms/IconButton/iconButtonStyles.d.ts.map +1 -1
  37. package/dist/components/atoms/IconButton/iconButtonStyles.js +1 -1
  38. package/dist/components/atoms/InlinePill/InlinePill.d.ts +42 -0
  39. package/dist/components/atoms/InlinePill/InlinePill.d.ts.map +1 -0
  40. package/dist/components/atoms/InlinePill/InlinePill.js +48 -0
  41. package/dist/components/atoms/InlinePill/inlinePillStyles.d.ts +27 -0
  42. package/dist/components/atoms/InlinePill/inlinePillStyles.d.ts.map +1 -0
  43. package/dist/components/atoms/InlinePill/inlinePillStyles.js +19 -0
  44. package/dist/components/atoms/Input/Input.d.ts +9 -4
  45. package/dist/components/atoms/Input/Input.d.ts.map +1 -1
  46. package/dist/components/atoms/Input/Input.js +59 -59
  47. package/dist/components/atoms/Input/inputShellStyles.d.ts +10 -4
  48. package/dist/components/atoms/Input/inputShellStyles.d.ts.map +1 -1
  49. package/dist/components/atoms/Input/inputShellStyles.js +40 -40
  50. package/dist/components/atoms/RiveHand/RiveHand.d.ts.map +1 -1
  51. package/dist/components/atoms/RiveHand/RiveHand.js +83 -81
  52. package/dist/components/atoms/Skeleton/skeletonStyles.js +1 -1
  53. package/dist/components/atoms/Switch/Switch.d.ts.map +1 -1
  54. package/dist/components/atoms/Switch/Switch.js +45 -44
  55. package/dist/components/atoms/Switch/switchStyles.d.ts +1 -1
  56. package/dist/components/atoms/Switch/switchStyles.d.ts.map +1 -1
  57. package/dist/components/atoms/Switch/switchStyles.js +1 -1
  58. package/dist/components/atoms/Table/Table.d.ts +54 -0
  59. package/dist/components/atoms/Table/Table.d.ts.map +1 -0
  60. package/dist/components/atoms/Table/Table.js +66 -0
  61. package/dist/components/atoms/Table/tableStyles.d.ts +18 -0
  62. package/dist/components/atoms/Table/tableStyles.d.ts.map +1 -0
  63. package/dist/components/atoms/Table/tableStyles.js +14 -0
  64. package/dist/components/atoms/TextArea/TextArea.d.ts +6 -0
  65. package/dist/components/atoms/TextArea/TextArea.d.ts.map +1 -1
  66. package/dist/components/atoms/TextArea/TextArea.js +86 -78
  67. package/dist/components/atoms/TextArea/textareaShellStyles.d.ts +2 -2
  68. package/dist/components/atoms/TextArea/textareaShellStyles.d.ts.map +1 -1
  69. package/dist/components/atoms/TextArea/textareaShellStyles.js +5 -5
  70. package/dist/components/molecules/Accordion/accordionStyles.d.ts +1 -1
  71. package/dist/components/molecules/Accordion/accordionStyles.d.ts.map +1 -1
  72. package/dist/components/molecules/Accordion/accordionStyles.js +1 -1
  73. package/dist/components/molecules/Breadcrumb/Breadcrumb.d.ts.map +1 -1
  74. package/dist/components/molecules/Breadcrumb/Breadcrumb.js +80 -122
  75. package/dist/components/molecules/Card/Card.d.ts +28 -6
  76. package/dist/components/molecules/Card/Card.d.ts.map +1 -1
  77. package/dist/components/molecules/Card/Card.js +83 -42
  78. package/dist/components/molecules/Card/cardStyles.d.ts +16 -1
  79. package/dist/components/molecules/Card/cardStyles.d.ts.map +1 -1
  80. package/dist/components/molecules/Card/cardStyles.js +19 -5
  81. package/dist/components/molecules/ChatQa/chatQaStyles.d.ts +1 -1
  82. package/dist/components/molecules/ChatQa/chatQaStyles.d.ts.map +1 -1
  83. package/dist/components/molecules/ChatQa/chatQaStyles.js +1 -1
  84. package/dist/components/molecules/Chip/chipStyles.js +9 -9
  85. package/dist/components/molecules/CopyField/CopyField.d.ts +41 -0
  86. package/dist/components/molecules/CopyField/CopyField.d.ts.map +1 -0
  87. package/dist/components/molecules/CopyField/CopyField.js +120 -0
  88. package/dist/components/molecules/CopyField/copyFieldStyles.d.ts +28 -0
  89. package/dist/components/molecules/CopyField/copyFieldStyles.d.ts.map +1 -0
  90. package/dist/components/molecules/CopyField/copyFieldStyles.js +7 -0
  91. package/dist/components/molecules/DisplayControls/DisplayControls.d.ts +16 -7
  92. package/dist/components/molecules/DisplayControls/DisplayControls.d.ts.map +1 -1
  93. package/dist/components/molecules/DisplayControls/DisplayControls.js +41 -39
  94. package/dist/components/molecules/DisplayControls/displayControlsState.d.ts +21 -0
  95. package/dist/components/molecules/DisplayControls/displayControlsState.d.ts.map +1 -1
  96. package/dist/components/molecules/DisplayControls/displayControlsState.js +46 -4
  97. package/dist/components/molecules/Dropdown/Dropdown.d.ts +1 -1
  98. package/dist/components/molecules/Dropdown/DropdownItem.d.ts +2 -2
  99. package/dist/components/molecules/Dropdown/DropdownItem.d.ts.map +1 -1
  100. package/dist/components/molecules/Dropdown/DropdownItem.js +30 -27
  101. package/dist/components/molecules/Dropdown/dropdownStyles.js +1 -1
  102. package/dist/components/molecules/Dropdown/resolveOverflow.d.ts +14 -0
  103. package/dist/components/molecules/Dropdown/resolveOverflow.d.ts.map +1 -0
  104. package/dist/components/{organisms/Tab/tabOverflow.js → molecules/Dropdown/resolveOverflow.js} +2 -2
  105. package/dist/components/molecules/Dropdown/useDropdownMenu.d.ts +70 -0
  106. package/dist/components/molecules/Dropdown/useDropdownMenu.d.ts.map +1 -0
  107. package/dist/components/molecules/Dropdown/useDropdownMenu.js +155 -0
  108. package/dist/components/molecules/Dropdown/useOverflowMenu.d.ts +71 -0
  109. package/dist/components/molecules/Dropdown/useOverflowMenu.d.ts.map +1 -0
  110. package/dist/components/molecules/Dropdown/useOverflowMenu.js +61 -0
  111. package/dist/components/molecules/Field/Field.d.ts.map +1 -1
  112. package/dist/components/molecules/Field/Field.js +11 -10
  113. package/dist/components/molecules/LogView/LogView.d.ts +31 -0
  114. package/dist/components/molecules/LogView/LogView.d.ts.map +1 -0
  115. package/dist/components/molecules/LogView/LogView.js +109 -0
  116. package/dist/components/molecules/LogView/logViewStyles.d.ts +11 -0
  117. package/dist/components/molecules/LogView/logViewStyles.d.ts.map +1 -0
  118. package/dist/components/molecules/LogView/logViewStyles.js +6 -0
  119. package/dist/components/molecules/NavList/NavList.d.ts +23 -4
  120. package/dist/components/molecules/NavList/NavList.d.ts.map +1 -1
  121. package/dist/components/molecules/NavList/NavList.js +65 -52
  122. package/dist/components/molecules/NavList/navListStyles.d.ts +2 -0
  123. package/dist/components/molecules/NavList/navListStyles.d.ts.map +1 -1
  124. package/dist/components/molecules/NavList/navListStyles.js +3 -3
  125. package/dist/components/molecules/PageHeader/PageHeader.js +3 -3
  126. package/dist/components/molecules/PillGroup/pillGroupStyles.js +1 -1
  127. package/dist/components/molecules/Search/searchStyles.js +1 -1
  128. package/dist/components/molecules/SegmentedControl/segmentedControlStyles.d.ts +1 -1
  129. package/dist/components/molecules/SegmentedControl/segmentedControlStyles.d.ts.map +1 -1
  130. package/dist/components/molecules/SegmentedControl/segmentedControlStyles.js +8 -8
  131. package/dist/components/molecules/Select/Select.d.ts +3 -1
  132. package/dist/components/molecules/Select/Select.d.ts.map +1 -1
  133. package/dist/components/molecules/Select/Select.js +75 -119
  134. package/dist/components/molecules/Select/selectStyles.js +3 -3
  135. package/dist/components/molecules/Stat/Stat.d.ts +31 -5
  136. package/dist/components/molecules/Stat/Stat.d.ts.map +1 -1
  137. package/dist/components/molecules/Stat/Stat.js +83 -49
  138. package/dist/components/molecules/Stat/statStyles.d.ts +24 -4
  139. package/dist/components/molecules/Stat/statStyles.d.ts.map +1 -1
  140. package/dist/components/molecules/Stat/statStyles.js +30 -13
  141. package/dist/components/molecules/TaskRows/TaskRows.d.ts +13 -3
  142. package/dist/components/molecules/TaskRows/TaskRows.d.ts.map +1 -1
  143. package/dist/components/molecules/TaskRows/TaskRows.js +81 -57
  144. package/dist/components/molecules/TaskRows/TaskRowsTable.d.ts +54 -0
  145. package/dist/components/molecules/TaskRows/TaskRowsTable.d.ts.map +1 -0
  146. package/dist/components/molecules/TaskRows/TaskRowsTable.js +200 -0
  147. package/dist/components/molecules/TaskRows/taskRowsStyles.d.ts +19 -1
  148. package/dist/components/molecules/TaskRows/taskRowsStyles.d.ts.map +1 -1
  149. package/dist/components/molecules/TaskRows/taskRowsStyles.js +7 -3
  150. package/dist/components/molecules/TextSequence/TextSequence.d.ts.map +1 -1
  151. package/dist/components/molecules/TextSequence/TextSequence.js +35 -35
  152. package/dist/components/organisms/AppShell/AppShell.d.ts +84 -0
  153. package/dist/components/organisms/AppShell/AppShell.d.ts.map +1 -0
  154. package/dist/components/organisms/AppShell/AppShell.js +231 -0
  155. package/dist/components/organisms/AppShell/appShellStyles.d.ts +20 -0
  156. package/dist/components/organisms/AppShell/appShellStyles.d.ts.map +1 -0
  157. package/dist/components/organisms/AppShell/appShellStyles.js +8 -0
  158. package/dist/components/organisms/Carousel/Carousel.d.ts +9 -1
  159. package/dist/components/organisms/Carousel/Carousel.d.ts.map +1 -1
  160. package/dist/components/organisms/Carousel/Carousel.js +220 -182
  161. package/dist/components/organisms/Carousel/carouselMath.d.ts +5 -0
  162. package/dist/components/organisms/Carousel/carouselMath.d.ts.map +1 -1
  163. package/dist/components/organisms/Carousel/carouselMath.js +9 -1
  164. package/dist/components/organisms/Carousel/carouselStyles.d.ts +2 -0
  165. package/dist/components/organisms/Carousel/carouselStyles.d.ts.map +1 -1
  166. package/dist/components/organisms/Carousel/carouselStyles.js +8 -7
  167. package/dist/components/organisms/Chart/Chart.d.ts +5 -1
  168. package/dist/components/organisms/Chart/Chart.d.ts.map +1 -1
  169. package/dist/components/organisms/Chart/Chart.js +126 -62
  170. package/dist/components/organisms/Chart/ChartLegend.d.ts +8 -1
  171. package/dist/components/organisms/Chart/ChartLegend.d.ts.map +1 -1
  172. package/dist/components/organisms/Chart/ChartLegend.js +43 -13
  173. package/dist/components/organisms/Chart/ChartSegmentedRing.d.ts +52 -0
  174. package/dist/components/organisms/Chart/ChartSegmentedRing.d.ts.map +1 -0
  175. package/dist/components/organisms/Chart/ChartSegmentedRing.js +95 -0
  176. package/dist/components/organisms/Chart/chartStyles.d.ts +32 -0
  177. package/dist/components/organisms/Chart/chartStyles.d.ts.map +1 -1
  178. package/dist/components/organisms/Chart/chartStyles.js +15 -3
  179. package/dist/components/organisms/ChatDock/ChatDock.d.ts.map +1 -1
  180. package/dist/components/organisms/ChatDock/ChatDock.js +29 -25
  181. package/dist/components/organisms/Dialog/AlertDialog.d.ts +7 -1
  182. package/dist/components/organisms/Dialog/AlertDialog.d.ts.map +1 -1
  183. package/dist/components/organisms/Dialog/AlertDialog.js +54 -50
  184. package/dist/components/organisms/Dialog/Dialog.d.ts.map +1 -1
  185. package/dist/components/organisms/Dialog/Dialog.js +52 -71
  186. package/dist/components/organisms/Dialog/OverlayPanelHeader.d.ts.map +1 -1
  187. package/dist/components/organisms/Dialog/OverlayPanelHeader.js +1 -0
  188. package/dist/components/organisms/Dialog/dialogStyles.d.ts +14 -1
  189. package/dist/components/organisms/Dialog/dialogStyles.d.ts.map +1 -1
  190. package/dist/components/organisms/Dialog/dialogStyles.js +3 -3
  191. package/dist/components/organisms/FilterPanel/FilterPanel.d.ts.map +1 -1
  192. package/dist/components/organisms/FilterPanel/FilterPanel.js +52 -42
  193. package/dist/components/organisms/IntakeModal/IntakeModal.d.ts +6 -1
  194. package/dist/components/organisms/IntakeModal/IntakeModal.d.ts.map +1 -1
  195. package/dist/components/organisms/IntakeModal/IntakeModal.js +54 -66
  196. package/dist/components/organisms/MoreMenu/MoreMenu.d.ts.map +1 -1
  197. package/dist/components/organisms/MoreMenu/MoreMenu.js +45 -101
  198. package/dist/components/organisms/Panel/Panel.d.ts.map +1 -1
  199. package/dist/components/organisms/Panel/Panel.js +44 -53
  200. package/dist/components/organisms/Sheet/Sheet.d.ts +3 -1
  201. package/dist/components/organisms/Sheet/Sheet.d.ts.map +1 -1
  202. package/dist/components/organisms/Sheet/Sheet.js +66 -81
  203. package/dist/components/organisms/Sheet/sheetStyles.d.ts +8 -2
  204. package/dist/components/organisms/Sheet/sheetStyles.d.ts.map +1 -1
  205. package/dist/components/organisms/Sheet/sheetStyles.js +16 -11
  206. package/dist/components/organisms/SiteNav/SiteNav.d.ts +0 -9
  207. package/dist/components/organisms/SiteNav/SiteNav.d.ts.map +1 -1
  208. package/dist/components/organisms/SiteNav/SiteNav.js +236 -286
  209. package/dist/components/organisms/SiteNav/siteNavStyles.js +1 -1
  210. package/dist/components/organisms/Tab/Tab.d.ts.map +1 -1
  211. package/dist/components/organisms/Tab/Tab.js +77 -127
  212. package/dist/components/organisms/Tab/tabStyles.d.ts +2 -1
  213. package/dist/components/organisms/Tab/tabStyles.d.ts.map +1 -1
  214. package/dist/components/organisms/Tab/tabStyles.js +7 -7
  215. package/dist/fonts.css +10 -0
  216. package/dist/grid.css +38 -0
  217. package/dist/index.d.ts +16 -8
  218. package/dist/index.d.ts.map +1 -1
  219. package/dist/index.js +152 -139
  220. package/dist/lib/chartTheme.d.ts +11 -0
  221. package/dist/lib/chartTheme.d.ts.map +1 -1
  222. package/dist/lib/compositionAudit.d.ts.map +1 -1
  223. package/dist/lib/contrast.d.ts +11 -0
  224. package/dist/lib/contrast.d.ts.map +1 -0
  225. package/dist/lib/dialogOverlay.d.ts +34 -1
  226. package/dist/lib/dialogOverlay.d.ts.map +1 -1
  227. package/dist/lib/dialogOverlay.js +100 -23
  228. package/dist/lib/sheetParam/index.d.ts +3 -0
  229. package/dist/lib/sheetParam/index.d.ts.map +1 -0
  230. package/dist/lib/sheetParam/sheetParam.d.ts +15 -0
  231. package/dist/lib/sheetParam/sheetParam.d.ts.map +1 -0
  232. package/dist/lib/sheetParam/sheetParam.js +26 -0
  233. package/dist/lib/sheetParam/useSheetParam.d.ts +25 -0
  234. package/dist/lib/sheetParam/useSheetParam.d.ts.map +1 -0
  235. package/dist/lib/sheetParam/useSheetParam.js +29 -0
  236. package/dist/lib/typography.d.ts +1 -1
  237. package/dist/lib/typography.d.ts.map +1 -1
  238. package/dist/shape.css +24 -3
  239. package/dist/styles.css +1 -1
  240. package/dist/typography.css +55 -8
  241. package/docs/README.md +1 -1
  242. package/docs/component-contracts.md +101 -0
  243. package/docs/components.md +19 -12
  244. package/docs/exports.json +142 -15
  245. package/docs/patterns/components-accordion--flush.tsx +1 -1
  246. package/docs/patterns/components-appshell--portal-dashboard-pattern.tsx +176 -0
  247. package/docs/patterns/components-avatar--dropdown-row.tsx +1 -1
  248. package/docs/patterns/components-badge--outline-tags.tsx +1 -1
  249. package/docs/patterns/components-badge--status-pill.tsx +31 -0
  250. package/docs/patterns/components-badge--with-avatar.tsx +1 -1
  251. package/docs/patterns/components-band--page-in-bands.tsx +39 -0
  252. package/docs/patterns/components-breadcrumb--editorial.tsx +1 -1
  253. package/docs/patterns/components-breadcrumb--long-path.tsx +1 -1
  254. package/docs/patterns/components-breadcrumb--path.tsx +1 -1
  255. package/docs/patterns/components-breadcrumb--router-links.tsx +1 -1
  256. package/docs/patterns/components-button-button--copy-button.tsx +1 -1
  257. package/docs/patterns/components-button-button--destructive-action.tsx +1 -1
  258. package/docs/patterns/components-button-button--external-link.tsx +1 -1
  259. package/docs/patterns/components-button-button--ghost-action.tsx +1 -1
  260. package/docs/patterns/components-button-button--inverse-action.tsx +1 -1
  261. package/docs/patterns/components-button-button--link-render.tsx +1 -1
  262. package/docs/patterns/components-button-button--multi-state-badge.tsx +1 -1
  263. package/docs/patterns/components-button-button--outline-mono.tsx +1 -1
  264. package/docs/patterns/components-button-button--primary-action.tsx +1 -1
  265. package/docs/patterns/components-button-button--row-hug.tsx +1 -1
  266. package/docs/patterns/components-button-button--row-layout.tsx +1 -1
  267. package/docs/patterns/components-button-button--secondary-action.tsx +1 -1
  268. package/docs/patterns/components-button-button--suggestion-pills.tsx +1 -1
  269. package/docs/patterns/components-button-button--with-count.tsx +1 -1
  270. package/docs/patterns/components-button-button--with-icon.tsx +1 -1
  271. package/docs/patterns/components-button-floatingactionbutton--vertical-actions.tsx +1 -1
  272. package/docs/patterns/components-calembed--pattern-skip-in-footer.tsx +1 -1
  273. package/docs/patterns/components-card-card--body-slot-occupancy-history.tsx +1 -1
  274. package/docs/patterns/components-card-card--headerless-media.tsx +1 -1
  275. package/docs/patterns/components-card-card--outlined-layout.tsx +1 -1
  276. package/docs/patterns/components-card-card--pinned-height.tsx +1 -1
  277. package/docs/patterns/components-card-card--terminal-frame.tsx +48 -0
  278. package/docs/patterns/components-card-selectablecard--selectable-cards-pattern.tsx +1 -1
  279. package/docs/patterns/components-carousel--image-carousel.tsx +1 -1
  280. package/docs/patterns/components-chart--audience-activity-heatmap.tsx +1 -1
  281. package/docs/patterns/components-chart--cartesian-no-data-gaps.tsx +1 -1
  282. package/docs/patterns/components-chart--occupancy-history-in-card.tsx +1 -1
  283. package/docs/patterns/components-chart--occupancy-in-card.tsx +1 -1
  284. package/docs/patterns/components-chart--post-reach-distribution.tsx +1 -1
  285. package/docs/patterns/components-chart--ranked-audience-breakdown.tsx +1 -1
  286. package/docs/patterns/components-chart--revenue-by-line.tsx +68 -0
  287. package/docs/patterns/components-chart--segmented-ring-pattern.tsx +144 -0
  288. package/docs/patterns/components-chart--unit-grid-composition.tsx +1 -1
  289. package/docs/patterns/components-chatdock--pattern-chat-dock.tsx +1 -1
  290. package/docs/patterns/components-chatdock--pattern-start-project-gate.tsx +1 -1
  291. package/docs/patterns/components-chatqa--pattern-qa-with-reply.tsx +1 -1
  292. package/docs/patterns/components-checkbox-checkbox--default.tsx +1 -1
  293. package/docs/patterns/components-checkbox-checkbox--with-count.tsx +1 -1
  294. package/docs/patterns/components-checkbox-checkbox--with-description.tsx +1 -1
  295. package/docs/patterns/components-checkbox-checkboxgroup--default.tsx +1 -1
  296. package/docs/patterns/components-checkbox-checkboxgroup--option-counts.tsx +1 -1
  297. package/docs/patterns/components-copyfield--clipboard-blocked.tsx +9 -0
  298. package/docs/patterns/components-copyfield--copied.tsx +9 -0
  299. package/docs/patterns/components-copyfield--copy-key.tsx +9 -0
  300. package/docs/patterns/components-copyfield--on-navy.tsx +29 -0
  301. package/docs/patterns/components-descriptionlist--details.tsx +1 -1
  302. package/docs/patterns/components-descriptionlist--post-metadata.tsx +1 -1
  303. package/docs/patterns/components-dialog--alert-dialog-destructive.tsx +1 -1
  304. package/docs/patterns/components-dialog--alert-dialog-typed-confirmation.tsx +54 -0
  305. package/docs/patterns/components-dialog--default-dialog.tsx +1 -1
  306. package/docs/patterns/components-dialog--form-dialog.tsx +1 -1
  307. package/docs/patterns/components-displaycontrols--page-utilities.tsx +1 -1
  308. package/docs/patterns/components-displaycontrols--theme-switch.tsx +35 -0
  309. package/docs/patterns/components-field--horizontal-input.tsx +1 -1
  310. package/docs/patterns/components-field--horizontal-text-area.tsx +1 -1
  311. package/docs/patterns/components-field--multi-control.tsx +1 -1
  312. package/docs/patterns/components-filterpanel--panel.tsx +1 -1
  313. package/docs/patterns/components-footerreveal--marketing-hero-pattern.tsx +1 -1
  314. package/docs/patterns/components-footerreveal--marketing-hero-ruled-pattern.tsx +1 -1
  315. package/docs/patterns/components-footerreveal--marketing-hero-with-gallery-intro.tsx +1 -1
  316. package/docs/patterns/components-footerreveal--marketing-page-pattern.tsx +1 -1
  317. package/docs/patterns/components-footerreveal--ruled-grid-footer-pattern.tsx +1 -1
  318. package/docs/patterns/components-footerreveal--sequenced-marketing-hero.tsx +1 -1
  319. package/docs/patterns/components-herointro--two-line-intro.tsx +1 -1
  320. package/docs/patterns/components-herotilestack--marketing-hero-pattern.tsx +1 -1
  321. package/docs/patterns/components-herotilestack--marketing-hero-text-sequence.tsx +1 -1
  322. package/docs/patterns/components-herotilestack--marketing-hero-with-gallery-intro.tsx +1 -1
  323. package/docs/patterns/components-indexlist--post-index.tsx +1 -1
  324. package/docs/patterns/components-intakeconfirmation--booked-pattern.tsx +1 -1
  325. package/docs/patterns/components-intakeconfirmation--emailed-pattern.tsx +1 -1
  326. package/docs/patterns/components-intakeform--about-you-pattern.tsx +1 -1
  327. package/docs/patterns/components-intakeform--short-form-pattern.tsx +1 -1
  328. package/docs/patterns/components-intakemodal--intake-modal-pattern.tsx +1 -1
  329. package/docs/patterns/components-kbd--command-row.tsx +1 -1
  330. package/docs/patterns/components-kbd--numbered-choices.tsx +1 -1
  331. package/docs/patterns/components-kbd--shortcut.tsx +1 -1
  332. package/docs/patterns/components-linktile--resource-tile.tsx +1 -1
  333. package/docs/patterns/components-linktile--router-link.tsx +1 -1
  334. package/docs/patterns/components-logview--detail-pane.tsx +80 -0
  335. package/docs/patterns/components-logview--log-viewer.tsx +20 -0
  336. package/docs/patterns/components-moremenu--action-menu.tsx +1 -1
  337. package/docs/patterns/components-moremenu--in-card-header.tsx +1 -1
  338. package/docs/patterns/components-navlist--app-sidebar.tsx +118 -0
  339. package/docs/patterns/components-navlist--side-nav-settings.tsx +1 -1
  340. package/docs/patterns/components-pageheader--app-header-pattern.tsx +1 -1
  341. package/docs/patterns/components-pageheader--page-section-header.tsx +1 -1
  342. package/docs/patterns/components-pageheader--toolbar-header.tsx +1 -1
  343. package/docs/patterns/components-panel--end-detail-rail.tsx +1 -1
  344. package/docs/patterns/components-pillgroup--pill-group-pattern.tsx +1 -1
  345. package/docs/patterns/components-promptbar--pattern-prompt-bar.tsx +1 -1
  346. package/docs/patterns/components-prose--article-body.tsx +1 -1
  347. package/docs/patterns/components-radio-radiogroup--default.tsx +1 -1
  348. package/docs/patterns/components-scrollhorizontal--project-gallery-pattern.tsx +1 -1
  349. package/docs/patterns/components-scrollhorizontal--with-intro.tsx +1 -1
  350. package/docs/patterns/components-sectioncaption--column-caption.tsx +1 -1
  351. package/docs/patterns/components-sectioncaption--with-action.tsx +1 -1
  352. package/docs/patterns/components-sheet--bottom-sheet.tsx +1 -1
  353. package/docs/patterns/components-sheet--end-sheet.tsx +1 -1
  354. package/docs/patterns/components-sheet--side-sheet-header-actions.tsx +50 -0
  355. package/docs/patterns/components-sheet--side-sheet-url-deep-link.tsx +51 -0
  356. package/docs/patterns/components-sheet--side-sheet.tsx +38 -0
  357. package/docs/patterns/components-sitenav--brand-and-cta.tsx +1 -1
  358. package/docs/patterns/components-sitenav--centered-links.tsx +1 -1
  359. package/docs/patterns/components-sitenav--compact.tsx +1 -1
  360. package/docs/patterns/components-sitenav--marketing-header.tsx +1 -1
  361. package/docs/patterns/components-sitenav--mega-menu.tsx +1 -1
  362. package/docs/patterns/components-stat--hero-stat.tsx +54 -0
  363. package/docs/patterns/components-stat--insights-row.tsx +1 -1
  364. package/docs/patterns/components-stepprogress--step-progress-pattern.tsx +1 -1
  365. package/docs/patterns/components-switch--default.tsx +1 -1
  366. package/docs/patterns/components-switch--settings-row.tsx +1 -1
  367. package/docs/patterns/components-tab--settings-pages.tsx +1 -1
  368. package/docs/patterns/components-table--approvals-with-sheet.tsx +81 -0
  369. package/docs/patterns/components-table--approvals.tsx +223 -0
  370. package/docs/patterns/components-table--basic.tsx +60 -0
  371. package/docs/patterns/components-taskrows--action-details.tsx +1 -1
  372. package/docs/patterns/components-taskrows--capsules.tsx +1 -1
  373. package/docs/patterns/components-taskrows--card-with-status-rows.tsx +1 -1
  374. package/docs/patterns/components-taskrows--controlled-expand.tsx +1 -1
  375. package/docs/patterns/components-taskrows--custom-slots.tsx +1 -1
  376. package/docs/patterns/components-taskrows--needs-you-table.tsx +62 -0
  377. package/docs/patterns/components-taskrows--status-list.tsx +1 -1
  378. package/docs/patterns/components-taskrows--tag-chips.tsx +1 -1
  379. package/docs/patterns/components-textarea--save-status.tsx +32 -0
  380. package/docs/patterns/components-textlink--external-destination.tsx +1 -1
  381. package/docs/patterns/components-textlink--inline-prose.tsx +1 -1
  382. package/docs/patterns/components-textlink--quiet-title.tsx +1 -1
  383. package/docs/patterns/components-textlink--supporting-copy.tsx +1 -1
  384. package/docs/patterns/components-textsequence--default.tsx +1 -1
  385. package/docs/patterns/components-textsequence--reduced-motion.tsx +1 -1
  386. package/docs/patterns/components-textsequence--shapes.tsx +1 -1
  387. package/docs/patterns/components-tilegrid--masonry.tsx +1 -1
  388. package/docs/patterns/components-toast--stacked-notifications.tsx +1 -1
  389. package/docs/patterns/components-tooltip--controlled.tsx +1 -1
  390. package/docs/patterns/components-tooltip--disabled-control.tsx +1 -1
  391. package/docs/patterns/components-tooltip--icon-action.tsx +1 -1
  392. package/docs/patterns/components-tooltip--keyboard-shortcut.tsx +1 -1
  393. package/docs/patterns/components-tooltip--placement.tsx +1 -1
  394. package/docs/patterns/foundations-scroll-fade--horizontal-rail.tsx +1 -1
  395. package/docs/patterns/foundations-scroll-fade--overflowing-list.tsx +1 -1
  396. package/docs/patterns/guides-chart-explorations--comparison-gallery.tsx +1 -1
  397. package/docs/patterns/guides-filter-panel--filtered-grid.tsx +1 -1
  398. package/docs/patterns/guides-filter-panel--filtered-index.tsx +1 -1
  399. package/docs/patterns/guides-overlay-flows--notification-preferences.tsx +1 -1
  400. package/docs/patterns/guides-post-page--post-page.tsx +1 -1
  401. package/docs/patterns/guides-profile-typography--editorial-profile.tsx +1 -1
  402. package/docs/patterns/guides-resource-detail--detail.tsx +1 -1
  403. package/docs/patterns/index.json +193 -1
  404. package/package.json +1 -1
  405. package/dist/components/organisms/Tab/tabOverflow.d.ts +0 -14
  406. package/dist/components/organisms/Tab/tabOverflow.d.ts.map +0 -1
@@ -1,137 +1,93 @@
1
1
  "use client";
2
2
  import { cn as e } from "../../../lib/cn.js";
3
3
  import { Dropdown as t } from "../Dropdown/Dropdown.js";
4
- import { measureSelectMenuStyle as n } from "./selectMenuPosition.js";
5
- import { selectDescriptionClasses as r, selectFieldStackClasses as i, selectLabelClasses as a, selectRootClasses as ee, selectShellClasses as o, selectSizes as s, selectTriggerCaretRotateClasses as c, selectTriggerCaretSlotClasses as l, selectTriggerInnerClasses as te, selectTriggerLabelClasses as ne } from "./selectStyles.js";
6
- import { useCallback as u, useEffect as d, useId as f, useLayoutEffect as p, useRef as m, useState as h } from "react";
7
- import { ChevronDown as g } from "lucide-react";
8
- import { jsx as _, jsxs as v } from "react/jsx-runtime";
4
+ import { useDropdownMenu as n } from "../Dropdown/useDropdownMenu.js";
5
+ import { measureSelectMenuStyle as r } from "./selectMenuPosition.js";
6
+ import { selectDescriptionClasses as i, selectFieldStackClasses as a, selectLabelClasses as o, selectRootClasses as s, selectShellClasses as c, selectSizes as l, selectTriggerCaretRotateClasses as u, selectTriggerCaretSlotClasses as d, selectTriggerInnerClasses as f, selectTriggerLabelClasses as p } from "./selectStyles.js";
7
+ import { useId as m, useRef as h, useState as g } from "react";
8
+ import { ChevronDown as _ } from "lucide-react";
9
+ import { jsx as v, jsxs as y } from "react/jsx-runtime";
9
10
  //#region src/components/molecules/Select/Select.tsx
10
- function y(e) {
11
+ function b(e) {
11
12
  e.label == null && e["aria-label"] == null && console.warn("[WMDS Select] Provide `label` or `aria-label`."), e.options.length === 0 && console.warn("[WMDS Select] `options` must not be empty.");
12
13
  }
13
- function b(e, t) {
14
+ function x(e, t) {
14
15
  if (t != null) return e.find((e) => e.value === t)?.label;
15
16
  }
16
- function x({ options: s, value: x, defaultValue: S, onValueChange: C, placeholder: re = "Select…", label: w, description: T, disabled: E = !1, size: D = "md", className: O, id: k, "aria-label": A }) {
17
- let j = f(), M = k ?? j, N = `${M}-listbox`, P = T == null ? void 0 : `${M}-description`, F = m(null), I = m(null), [L, R] = h(!1), [z, B] = h(null), [V, H] = h(S), [U, W] = h(() => {
18
- let e = x ?? S, t = s.findIndex((t) => t.value === e);
19
- return t >= 0 ? t : 0;
20
- }), G = x !== void 0, K = G ? x : V;
21
- y({
22
- label: w,
23
- "aria-label": A,
24
- options: s
17
+ function S({ options: l, value: S, defaultValue: C, onValueChange: w, placeholder: T = "Select…", label: E, description: D, disabled: O = !1, size: k = "md", className: A, id: j, "aria-label": M, "aria-describedby": N }) {
18
+ let P = m(), F = j ?? P, I = D == null ? void 0 : `${F}-description`, L = [N, I].filter(Boolean).join(" ") || void 0, R = h(null), z = h(null), [B, V] = g(C), H = S !== void 0, U = H ? S : B;
19
+ b({
20
+ label: E,
21
+ "aria-label": M,
22
+ options: l
25
23
  });
26
- let q = b(s, K), J = u(() => {
27
- R(!1), B(null);
28
- }, []), Y = u(() => {
29
- let e = I.current;
30
- e != null && B(n(e, s)), R(!0);
31
- }, [s]), X = u((e) => {
32
- G || H(e), C?.(e), J();
33
- }, [
34
- J,
35
- G,
36
- C
37
- ]), Z = u(() => {
38
- let e = I.current;
39
- e != null && B(n(e, s));
40
- }, [s]);
41
- p(() => {
42
- if (L) return Z(), window.addEventListener("resize", Z), window.addEventListener("scroll", Z, !0), () => {
43
- window.removeEventListener("resize", Z), window.removeEventListener("scroll", Z, !0);
44
- };
45
- }, [L, Z]), d(() => {
46
- if (!L) return;
47
- function e(e) {
48
- F.current != null && !F.current.contains(e.target) && J();
49
- }
50
- return document.addEventListener("mousedown", e), () => {
51
- document.removeEventListener("mousedown", e);
52
- };
53
- }, [J, L]), d(() => {
54
- let e = s.findIndex((e) => e.value === K);
55
- e >= 0 && W(e);
56
- }, [s, K]);
57
- function Q(e) {
58
- W((t) => s.length === 0 ? 0 : (t + e + s.length) % s.length);
24
+ let W = x(l, U);
25
+ function G(e) {
26
+ H || V(e), w?.(e), K.close({ returnFocus: !0 });
59
27
  }
60
- function ie(e) {
61
- if (!E) switch (e.key) {
62
- case "ArrowDown":
63
- e.preventDefault(), L ? Q(1) : Y();
64
- break;
65
- case "ArrowUp":
66
- e.preventDefault(), L ? Q(-1) : Y();
67
- break;
68
- case "Enter":
69
- case " ":
70
- if (e.preventDefault(), L) {
71
- let e = s[U];
72
- e != null && X(e.value);
73
- } else Y();
74
- break;
75
- case "Escape": e.preventDefault(), J();
28
+ let K = n({
29
+ rows: l,
30
+ triggerRef: z,
31
+ focus: "trigger",
32
+ initialIndex: l.findIndex((e) => e.value === U),
33
+ measure: () => R.current == null ? null : r(R.current, l),
34
+ onChoose: (e) => {
35
+ let t = l[e];
36
+ t != null && G(t.value);
76
37
  }
77
- }
78
- let $ = /* @__PURE__ */ v("div", {
79
- ref: F,
80
- className: e(ee, O),
81
- children: [/* @__PURE__ */ _("div", {
82
- ref: I,
83
- className: e(o[D], E && "pointer-events-none opacity-50"),
84
- "data-open": L ? "true" : "false",
85
- children: /* @__PURE__ */ v("button", {
38
+ }), q = /* @__PURE__ */ y("div", {
39
+ ...K.rootProps,
40
+ className: e(s, A),
41
+ children: [/* @__PURE__ */ v("div", {
42
+ ref: R,
43
+ className: e(c[k], O && "pointer-events-none opacity-50"),
44
+ "data-open": K.open ? "true" : "false",
45
+ children: /* @__PURE__ */ y("button", {
46
+ ref: z,
86
47
  type: "button",
87
- id: M,
88
- disabled: E,
89
- "aria-label": w == null ? A : void 0,
90
- "aria-labelledby": w == null ? void 0 : `${M}-label`,
91
- "aria-describedby": P,
48
+ id: F,
49
+ role: "combobox",
50
+ disabled: O,
51
+ "aria-label": E == null ? M : void 0,
52
+ "aria-labelledby": E == null ? void 0 : `${F}-label`,
53
+ "aria-describedby": L,
92
54
  "aria-haspopup": "listbox",
93
- "aria-expanded": L,
94
- "aria-controls": N,
55
+ ...K.triggerProps,
95
56
  onClick: () => {
96
- E || (L ? J() : Y());
57
+ O || K.toggle();
97
58
  },
98
- onKeyDown: ie,
99
- className: te[D],
100
- children: [/* @__PURE__ */ _("span", {
101
- className: e(ne, q == null && "text-disabled"),
102
- children: q ?? re
103
- }), /* @__PURE__ */ _("span", {
104
- className: l[D],
59
+ className: f[k],
60
+ children: [/* @__PURE__ */ v("span", {
61
+ className: e(p, W == null && "text-disabled"),
62
+ children: W ?? T
63
+ }), /* @__PURE__ */ v("span", {
64
+ className: d[k],
105
65
  "aria-hidden": !0,
106
- children: /* @__PURE__ */ _("span", {
107
- className: e(c, L && "rotate-180"),
108
- children: /* @__PURE__ */ _(g, { strokeWidth: 2 })
66
+ children: /* @__PURE__ */ v("span", {
67
+ className: e(u, K.open && "rotate-180"),
68
+ children: /* @__PURE__ */ v(_, { strokeWidth: 2 })
109
69
  })
110
70
  })]
111
71
  })
112
- }), L && z != null ? /* @__PURE__ */ _(t.Menu, {
113
- id: N,
72
+ }), K.open && K.menuStyle != null ? /* @__PURE__ */ v(t.Menu, {
73
+ ...K.menuProps,
114
74
  role: "listbox",
115
- "aria-labelledby": M,
116
- style: z,
117
- children: s.map((e, n) => {
118
- let r = e.value === K, i = n === U;
119
- return /* @__PURE__ */ _("li", {
75
+ "aria-labelledby": F,
76
+ children: l.map((e, n) => {
77
+ let r = e.value === U;
78
+ return /* @__PURE__ */ v("li", {
120
79
  role: "presentation",
121
- children: /* @__PURE__ */ _(t.Item, {
80
+ children: /* @__PURE__ */ v(t.Item, {
81
+ ...K.rowProps(n),
122
82
  role: "option",
123
83
  "aria-selected": r,
124
- tabIndex: -1,
125
84
  selected: r,
126
- active: i,
127
85
  truncate: !1,
128
86
  start: e.start,
129
87
  end: e.end,
130
- onMouseEnter: () => {
131
- W(n);
132
- },
88
+ onMouseDown: (e) => e.preventDefault(),
133
89
  onClick: () => {
134
- X(e.value);
90
+ G(e.value);
135
91
  },
136
92
  children: e.label
137
93
  })
@@ -139,23 +95,23 @@ function x({ options: s, value: x, defaultValue: S, onValueChange: C, placeholde
139
95
  })
140
96
  }) : null]
141
97
  });
142
- return w == null && T == null ? $ : /* @__PURE__ */ v("div", {
143
- className: i,
98
+ return E == null && D == null ? q : /* @__PURE__ */ y("div", {
99
+ className: a,
144
100
  children: [
145
- w == null ? null : /* @__PURE__ */ _("label", {
146
- id: `${M}-label`,
147
- htmlFor: M,
148
- className: e(a, E && "opacity-50"),
149
- children: w
101
+ E == null ? null : /* @__PURE__ */ v("label", {
102
+ id: `${F}-label`,
103
+ htmlFor: F,
104
+ className: e(o, O && "opacity-50"),
105
+ children: E
150
106
  }),
151
- $,
152
- T == null ? null : /* @__PURE__ */ _("p", {
153
- id: P,
154
- className: r,
155
- children: T
107
+ q,
108
+ D == null ? null : /* @__PURE__ */ v("p", {
109
+ id: I,
110
+ className: i,
111
+ children: D
156
112
  })
157
113
  ]
158
114
  });
159
115
  }
160
116
  //#endregion
161
- export { x as Select, s as selectSizes };
117
+ export { S as Select, l as selectSizes };
@@ -5,9 +5,9 @@ import { focusRingTransitionClasses as n, motionTransition as r } from "../../..
5
5
  import { inputDisabledClasses as i, inputSizes as a, inputSoloRadiusClasses as o } from "../../atoms/Input/inputShellStyles.js";
6
6
  //#region src/components/molecules/Select/selectStyles.ts
7
7
  var s = a, c = "flex w-full flex-col gap-1.5", l = "relative w-full min-w-0", u = e("outline-none ring-2 ring-transparent ring-inset ring-offset-0", "focus-within:ring-focus-ring", "data-[open=true]:ring-focus-ring", n), d = {
8
- sm: e("relative flex w-full min-w-0 items-center rounded-full border border-border-control bg-surface shadow-raised", o.sm, "h-8", u),
9
- md: e("relative flex w-full min-w-0 items-center rounded-full border border-border-control bg-surface shadow-raised", o.md, "h-11", u),
10
- lg: e("relative flex w-full min-w-0 items-center rounded-full border border-border-control bg-surface shadow-raised", o.lg, "min-h-12", u)
8
+ sm: e("relative flex w-full min-w-0 items-center rounded-[var(--radius-control)] border border-border-control bg-surface shadow-raised", o.sm, "h-8", u),
9
+ md: e("relative flex w-full min-w-0 items-center rounded-[var(--radius-control)] border border-border-control bg-surface shadow-raised", o.md, "h-11", u),
10
+ lg: e("relative flex w-full min-w-0 items-center rounded-[var(--radius-control)] border border-border-control bg-surface shadow-raised", o.lg, "min-h-12", u)
11
11
  }, f = "pointer-events-none opacity-50", p = {
12
12
  sm: e("flex h-full w-full min-w-0 cursor-pointer items-center justify-between gap-2 border-0 bg-transparent px-2.5 text-left text-xs leading-none font-sans font-normal tracking-normal text-fg", "pr-2.5 shadow-none outline-none focus:outline-none focus-visible:outline-none", i),
13
13
  md: e("flex h-full w-full min-w-0 cursor-pointer items-center justify-between gap-2 border-0 bg-transparent px-3 text-left text-sm leading-none font-sans font-normal tracking-normal text-fg", "pr-3 shadow-none outline-none focus:outline-none focus-visible:outline-none", i),
@@ -7,10 +7,18 @@ export type StatLayoutClassName = string;
7
7
  export interface StatTrend {
8
8
  /** Trend copy — e.g. `+2.1%` or `-0.8%`. */
9
9
  value: string;
10
+ /** `up` / `down` tint the badge. `neutral` and `flat` stay muted. */
10
11
  direction?: StatTrendDirection;
11
- /** Optional context — exposed as `title` on the trend badge for sighted tooltips. */
12
+ /** Optional tooltip on the trend badge. Visible "vs" copy belongs on `context`. */
12
13
  label?: string;
13
14
  }
15
+ /** Replaces the figure when the metric source is not wired. */
16
+ export interface StatUnavailable {
17
+ /** Stand-in for the figure. Default `Not connected`. */
18
+ label?: string;
19
+ /** Why the figure is missing — visible under the stand-in. */
20
+ reason: string;
21
+ }
14
22
  export interface StatProps {
15
23
  /** Metric name — e.g. Followers, ER, Reach. */
16
24
  label: string;
@@ -18,9 +26,25 @@ export interface StatProps {
18
26
  value: ReactNode;
19
27
  /** Compact delta — **Badge** `emphasis="muted"` in the value row. */
20
28
  trend?: StatTrend;
21
- /** Leading slot — inline with the label row. */
29
+ /**
30
+ * Visible secondary line under the figure — e.g. `vs $14,850` or `of $1M goal`.
31
+ * Tabular figures. Hidden while `unavailable` is set (the reason takes this line).
32
+ */
33
+ context?: ReactNode;
34
+ /**
35
+ * One tabular line under the figure — for example "3 new" or "vs last scan".
36
+ * Hidden while `loading` or `unavailable`.
37
+ */
38
+ detail?: ReactNode;
39
+ /** Leading tile — pass a Lucide glyph. Composed with **ButtonIcon**. */
40
+ icon?: ReactNode;
41
+ /** Label-row action — pass **Button** `size="sm"` (e.g. View details). */
42
+ action?: ReactNode;
43
+ /** Replaces the figure and hides `trend`, `context`, and `detail` when the source is not wired. */
44
+ unavailable?: StatUnavailable;
45
+ /** Leading slot — inline with the label row, after `icon`. */
22
46
  start?: ReactNode;
23
- /** Trailing slot — inline with the label row (e.g. share, kebab). */
47
+ /** Trailing slot — inline with the label row, before `action`. */
24
48
  end?: ReactNode;
25
49
  size?: StatSize;
26
50
  /** Skeleton label + value — sets `aria-busy` on the tile. */
@@ -35,11 +59,13 @@ export interface StatGroupProps {
35
59
  columns?: StatGroupColumns;
36
60
  className?: StatLayoutClassName;
37
61
  }
38
- declare function StatRoot({ label, value, trend, start, end, size, loading, className, }: StatProps): import("react").JSX.Element;
62
+ declare function StatRoot({ label, value, trend, context, detail, icon, action, unavailable, start, end, size, loading, className, }: StatProps): import("react").JSX.Element;
39
63
  declare function StatGroup({ children, "aria-label": ariaLabel, columns, className, }: StatGroupProps): import("react").JSX.Element;
40
64
  /**
41
65
  * At-a-glance metric tile — label, headline value, optional muted trend badge.
42
- * Compose in **Stat.Group** for insights rows; pair **Card** + **Chart** below for history.
66
+ * `size="lg"` is the hero figure (`type-display-3`, tabular). `context` is the visible
67
+ * "vs" line. `detail` is one tabular line under the figure. Compose in **Stat.Group**
68
+ * for insights rows; pair **Card** + **Chart** below for history.
43
69
  */
44
70
  export declare const Stat: typeof StatRoot & {
45
71
  Group: typeof StatGroup;
@@ -1 +1 @@
1
- {"version":3,"file":"Stat.d.ts","sourceRoot":"","sources":["../../../../src/components/molecules/Stat/Stat.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,OAAO,CAAC;AAIvC,OAAO,EAeL,KAAK,gBAAgB,EACrB,KAAK,QAAQ,EACb,KAAK,kBAAkB,EACxB,MAAM,cAAc,CAAC;AAEtB,YAAY,EACV,gBAAgB,EAChB,QAAQ,EACR,kBAAkB,GACnB,MAAM,cAAc,CAAC;AACtB,OAAO,EACL,gBAAgB,EAChB,oBAAoB,EACpB,SAAS,EACT,mBAAmB,GACpB,MAAM,cAAc,CAAC;AAEtB,2EAA2E;AAC3E,MAAM,MAAM,mBAAmB,GAAG,MAAM,CAAC;AAEzC,MAAM,WAAW,SAAS;IACxB,4CAA4C;IAC5C,KAAK,EAAE,MAAM,CAAC;IACd,SAAS,CAAC,EAAE,kBAAkB,CAAC;IAC/B,qFAAqF;IACrF,KAAK,CAAC,EAAE,MAAM,CAAC;CAChB;AAED,MAAM,WAAW,SAAS;IACxB,+CAA+C;IAC/C,KAAK,EAAE,MAAM,CAAC;IACd,wDAAwD;IACxD,KAAK,EAAE,SAAS,CAAC;IACjB,qEAAqE;IACrE,KAAK,CAAC,EAAE,SAAS,CAAC;IAClB,gDAAgD;IAChD,KAAK,CAAC,EAAE,SAAS,CAAC;IAClB,qEAAqE;IACrE,GAAG,CAAC,EAAE,SAAS,CAAC;IAChB,IAAI,CAAC,EAAE,QAAQ,CAAC;IAChB,6DAA6D;IAC7D,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,SAAS,CAAC,EAAE,mBAAmB,CAAC;CACjC;AAED,MAAM,WAAW,cAAc;IAC7B,QAAQ,EAAE,SAAS,CAAC;IACpB,2FAA2F;IAC3F,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,6DAA6D;IAC7D,OAAO,CAAC,EAAE,gBAAgB,CAAC;IAC3B,SAAS,CAAC,EAAE,mBAAmB,CAAC;CACjC;AAiCD,iBAAS,QAAQ,CAAC,EAChB,KAAK,EACL,KAAK,EACL,KAAK,EACL,KAAK,EACL,GAAG,EACH,IAAW,EACX,OAAe,EACf,SAAS,GACV,EAAE,SAAS,+BA0BX;AAED,iBAAS,SAAS,CAAC,EACjB,QAAQ,EACR,YAAY,EAAE,SAAS,EACvB,OAAW,EACX,SAAS,GACV,EAAE,cAAc,+BAUhB;AAED;;;GAGG;AACH,eAAO,MAAM,IAAI;;CAEf,CAAC"}
1
+ {"version":3,"file":"Stat.d.ts","sourceRoot":"","sources":["../../../../src/components/molecules/Stat/Stat.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,OAAO,CAAC;AAKvC,OAAO,EAyBL,KAAK,gBAAgB,EACrB,KAAK,QAAQ,EACb,KAAK,kBAAkB,EACxB,MAAM,cAAc,CAAC;AAEtB,YAAY,EACV,gBAAgB,EAChB,QAAQ,EACR,kBAAkB,GACnB,MAAM,cAAc,CAAC;AACtB,OAAO,EACL,gBAAgB,EAChB,oBAAoB,EACpB,SAAS,EACT,mBAAmB,GACpB,MAAM,cAAc,CAAC;AAEtB,2EAA2E;AAC3E,MAAM,MAAM,mBAAmB,GAAG,MAAM,CAAC;AAEzC,MAAM,WAAW,SAAS;IACxB,4CAA4C;IAC5C,KAAK,EAAE,MAAM,CAAC;IACd,qEAAqE;IACrE,SAAS,CAAC,EAAE,kBAAkB,CAAC;IAC/B,mFAAmF;IACnF,KAAK,CAAC,EAAE,MAAM,CAAC;CAChB;AAED,+DAA+D;AAC/D,MAAM,WAAW,eAAe;IAC9B,wDAAwD;IACxD,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,8DAA8D;IAC9D,MAAM,EAAE,MAAM,CAAC;CAChB;AAED,MAAM,WAAW,SAAS;IACxB,+CAA+C;IAC/C,KAAK,EAAE,MAAM,CAAC;IACd,wDAAwD;IACxD,KAAK,EAAE,SAAS,CAAC;IACjB,qEAAqE;IACrE,KAAK,CAAC,EAAE,SAAS,CAAC;IAClB;;;OAGG;IACH,OAAO,CAAC,EAAE,SAAS,CAAC;IACpB;;;OAGG;IACH,MAAM,CAAC,EAAE,SAAS,CAAC;IACnB,wEAAwE;IACxE,IAAI,CAAC,EAAE,SAAS,CAAC;IACjB,0EAA0E;IAC1E,MAAM,CAAC,EAAE,SAAS,CAAC;IACnB,mGAAmG;IACnG,WAAW,CAAC,EAAE,eAAe,CAAC;IAC9B,8DAA8D;IAC9D,KAAK,CAAC,EAAE,SAAS,CAAC;IAClB,kEAAkE;IAClE,GAAG,CAAC,EAAE,SAAS,CAAC;IAChB,IAAI,CAAC,EAAE,QAAQ,CAAC;IAChB,6DAA6D;IAC7D,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,SAAS,CAAC,EAAE,mBAAmB,CAAC;CACjC;AAED,MAAM,WAAW,cAAc;IAC7B,QAAQ,EAAE,SAAS,CAAC;IACpB,2FAA2F;IAC3F,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,6DAA6D;IAC7D,OAAO,CAAC,EAAE,gBAAgB,CAAC;IAC3B,SAAS,CAAC,EAAE,mBAAmB,CAAC;CACjC;AAoCD,iBAAS,QAAQ,CAAC,EAChB,KAAK,EACL,KAAK,EACL,KAAK,EACL,OAAO,EACP,MAAM,EACN,IAAI,EACJ,MAAM,EACN,WAAW,EACX,KAAK,EACL,GAAG,EACH,IAAW,EACX,OAAe,EACf,SAAS,GACV,EAAE,SAAS,+BAmDX;AAED,iBAAS,SAAS,CAAC,EACjB,QAAQ,EACR,YAAY,EAAE,SAAS,EACvB,OAAW,EACX,SAAS,GACV,EAAE,cAAc,+BAUhB;AAED;;;;;GAKG;AACH,eAAO,MAAM,IAAI;;CAEf,CAAC"}
@@ -1,76 +1,110 @@
1
1
  "use client";
2
2
  import { cn as e } from "../../../lib/cn.js";
3
3
  import { Badge as t } from "../../atoms/Badge/Badge.js";
4
- import { Skeleton as n } from "../../atoms/Skeleton/Skeleton.js";
5
- import { statContentClasses as r, statGroupColumns as i, statGroupGridClasses as a, statLabelClasses as o, statLabelEndClasses as s, statLabelRowClasses as c, statLabelStartClasses as l, statLabelTextClasses as u, statLoadingLabelHeights as d, statLoadingValueHeights as f, statShellClasses as p, statShellSizeClasses as m, statSizes as h, statTrendBadgeVariant as g, statTrendDirections as _, statValueRowClasses as v, statValueSizeClasses as y } from "./statStyles.js";
6
- import { Fragment as b, jsx as x, jsxs as S } from "react/jsx-runtime";
4
+ import { ButtonIcon as n } from "../../atoms/Button/ButtonIcon.js";
5
+ import { Skeleton as r } from "../../atoms/Skeleton/Skeleton.js";
6
+ import { statContentClasses as i, statContextClasses as a, statDetailClasses as o, statGroupColumns as s, statGroupGridClasses as c, statIconButtonSize as l, statIconTileClasses as u, statIconTileSizeClasses as d, statLabelClasses as f, statLabelEndClasses as p, statLabelLgClasses as m, statLabelRowClasses as h, statLabelStartClasses as g, statLabelTextClasses as _, statLabelTrailClasses as v, statLoadingLabelHeights as y, statLoadingValueHeights as b, statShellClasses as x, statShellSizeClasses as S, statSizes as C, statTrendBadgeVariant as w, statTrendDirections as T, statUnavailableClasses as E, statValueRowClasses as D, statValueSizeClasses as O } from "./statStyles.js";
7
+ import { Fragment as k, jsx as A, jsxs as j } from "react/jsx-runtime";
7
8
  //#region src/components/molecules/Stat/Stat.tsx
8
- function C({ trend: e }) {
9
+ function M({ trend: e }) {
9
10
  let n = e.direction ?? "neutral";
10
- return /* @__PURE__ */ x("span", {
11
+ return /* @__PURE__ */ A("span", {
11
12
  title: e.label,
12
- children: /* @__PURE__ */ x(t, {
13
+ children: /* @__PURE__ */ A(t, {
13
14
  size: "sm",
14
15
  emphasis: "muted",
15
- variant: g(n),
16
+ variant: w(n),
16
17
  children: e.value
17
18
  })
18
19
  });
19
20
  }
20
- function w({ size: e, index: t = 0 }) {
21
- return /* @__PURE__ */ S(b, { children: [/* @__PURE__ */ x(n, {
22
- width: "45%",
23
- height: d[e],
24
- radius: "inner",
25
- index: t
26
- }), /* @__PURE__ */ x(n, {
27
- width: "70%",
28
- height: f[e],
29
- radius: "inner",
30
- index: t + 1
31
- })] });
21
+ function N({ size: e, index: t = 0 }) {
22
+ return /* @__PURE__ */ j(k, { children: [
23
+ /* @__PURE__ */ A(r, {
24
+ width: "45%",
25
+ height: y[e],
26
+ radius: "inner",
27
+ index: t
28
+ }),
29
+ /* @__PURE__ */ A(r, {
30
+ width: "70%",
31
+ height: b[e],
32
+ radius: "inner",
33
+ index: t + 1
34
+ }),
35
+ e === "lg" ? /* @__PURE__ */ A(r, {
36
+ width: "40%",
37
+ height: 16,
38
+ radius: "inner",
39
+ index: t + 2
40
+ }) : null
41
+ ] });
32
42
  }
33
- function T({ label: t, value: n, trend: i, start: a, end: d, size: f = "sm", loading: h = !1, className: g }) {
34
- return /* @__PURE__ */ x("article", {
35
- className: e(p, m[f], g),
36
- "aria-busy": h || void 0,
37
- "aria-label": h ? t : void 0,
38
- children: /* @__PURE__ */ x("div", {
39
- className: r,
40
- children: h ? /* @__PURE__ */ x(w, { size: f }) : /* @__PURE__ */ S(b, { children: [/* @__PURE__ */ S("div", {
41
- className: c,
43
+ function P({ label: t, value: r, trend: s, context: c, detail: y, icon: b, action: C, unavailable: w, start: T, end: P, size: F = "sm", loading: I = !1, className: L }) {
44
+ let R = P != null || C != null;
45
+ return /* @__PURE__ */ A("article", {
46
+ className: e(x, S[F], L),
47
+ "aria-busy": I || void 0,
48
+ "aria-label": I ? t : void 0,
49
+ children: /* @__PURE__ */ A("div", {
50
+ className: e(i, F === "lg" && "gap-2"),
51
+ children: I ? /* @__PURE__ */ A(N, { size: F }) : /* @__PURE__ */ j(k, { children: [/* @__PURE__ */ j("div", {
52
+ className: h,
42
53
  children: [
43
- a == null ? null : /* @__PURE__ */ x("div", {
44
- className: l,
45
- children: a
54
+ b == null ? null : /* @__PURE__ */ A("span", {
55
+ className: e(u, d[F]),
56
+ children: /* @__PURE__ */ A(n, {
57
+ size: l[F],
58
+ children: b
59
+ })
46
60
  }),
47
- /* @__PURE__ */ x("span", {
48
- className: e(o, u),
61
+ T == null ? null : /* @__PURE__ */ A("div", {
62
+ className: g,
63
+ children: T
64
+ }),
65
+ /* @__PURE__ */ A("span", {
66
+ className: F === "lg" ? m : e(f, _),
49
67
  children: t
50
68
  }),
51
- d == null ? null : /* @__PURE__ */ x("div", {
52
- className: s,
53
- children: d
54
- })
69
+ R ? /* @__PURE__ */ j("div", {
70
+ className: C == null ? p : v,
71
+ children: [P, C]
72
+ }) : null
55
73
  ]
56
- }), /* @__PURE__ */ S("div", {
57
- className: v,
58
- children: [/* @__PURE__ */ x("span", {
59
- className: y[f],
60
- children: n
61
- }), i == null ? null : /* @__PURE__ */ x(C, { trend: i })]
62
- })] })
74
+ }), w == null ? /* @__PURE__ */ j(k, { children: [
75
+ /* @__PURE__ */ j("div", {
76
+ className: D,
77
+ children: [/* @__PURE__ */ A("span", {
78
+ className: O[F],
79
+ children: r
80
+ }), s == null ? null : /* @__PURE__ */ A(M, { trend: s })]
81
+ }),
82
+ c == null ? null : /* @__PURE__ */ A("p", {
83
+ className: a,
84
+ children: c
85
+ }),
86
+ y == null ? null : /* @__PURE__ */ A("p", {
87
+ className: o,
88
+ children: y
89
+ })
90
+ ] }) : /* @__PURE__ */ j(k, { children: [/* @__PURE__ */ A("p", {
91
+ className: E,
92
+ children: w.label ?? "Not connected"
93
+ }), /* @__PURE__ */ A("p", {
94
+ className: a,
95
+ children: w.reason
96
+ })] })] })
63
97
  })
64
98
  });
65
99
  }
66
- function E({ children: t, "aria-label": n, columns: r = 4, className: i }) {
67
- return /* @__PURE__ */ x("div", {
68
- className: e(a(r), i),
100
+ function F({ children: t, "aria-label": n, columns: r = 4, className: i }) {
101
+ return /* @__PURE__ */ A("div", {
102
+ className: e(c(r), i),
69
103
  role: n == null ? void 0 : "group",
70
104
  "aria-label": n,
71
105
  children: t
72
106
  });
73
107
  }
74
- var D = Object.assign(T, { Group: E });
108
+ var I = Object.assign(P, { Group: F });
75
109
  //#endregion
76
- export { D as Stat, i as statGroupColumns, a as statGroupGridClasses, h as statSizes, _ as statTrendDirections };
110
+ export { I as Stat, s as statGroupColumns, c as statGroupGridClasses, C as statSizes, T as statTrendDirections };
@@ -1,23 +1,43 @@
1
1
  import type { BadgeVariant } from "../../atoms/Badge/Badge";
2
- export declare const statSizes: readonly ["sm", "md"];
2
+ import type { ButtonSize } from "../../atoms/Button/buttonStyles";
3
+ export declare const statSizes: readonly ["sm", "md", "lg"];
3
4
  export type StatSize = (typeof statSizes)[number];
4
- export declare const statTrendDirections: readonly ["up", "down", "neutral"];
5
+ export declare const statTrendDirections: readonly ["up", "down", "neutral", "flat"];
5
6
  export type StatTrendDirection = (typeof statTrendDirections)[number];
6
7
  export declare const statGroupColumns: readonly [2, 3, 4];
7
8
  export type StatGroupColumns = (typeof statGroupColumns)[number];
8
9
  /** Bordered metric tile — insights row and hero KPI. */
9
- export declare const statShellClasses = "flex min-w-0 flex-col rounded-xl border border-border bg-surface";
10
+ export declare const statShellClasses = "flex min-w-0 flex-col rounded-[var(--radius-surface-md)] border border-border bg-surface";
10
11
  export declare const statShellSizeClasses: Record<StatSize, string>;
11
- export declare const statLabelRowClasses = "flex items-center gap-2";
12
+ export declare const statLabelRowClasses = "flex flex-wrap items-center gap-2";
12
13
  export declare const statLabelStartClasses = "shrink-0";
13
14
  export declare const statLabelTextClasses = "min-w-0 flex-1";
14
15
  export declare const statLabelEndClasses = "ml-auto shrink-0";
16
+ /** Trailing cluster when `end` and `action` share the label row. */
17
+ export declare const statLabelTrailClasses = "ml-auto flex shrink-0 items-center gap-2";
15
18
  export declare const statContentClasses = "flex min-w-0 flex-col gap-1";
19
+ export declare const statContentLgClasses = "gap-2";
16
20
  export declare const statLabelClasses: string;
21
+ /** Hero label — sentence case. `sm` / `md` stay on the overline. */
22
+ export declare const statLabelLgClasses = "type-label min-w-0 flex-1 text-muted";
23
+ /**
24
+ * Leading glyph tile. `text-brand-outline` is navy in light (`--color-brand`) and the
25
+ * lifted navy in dark, where `#011272` disappears on the surface.
26
+ */
27
+ export declare const statIconTileClasses = "inline-flex shrink-0 items-center justify-center rounded-lg bg-brand-tint text-brand-outline";
28
+ export declare const statIconTileSizeClasses: Record<StatSize, string>;
29
+ export declare const statIconButtonSize: Record<StatSize, ButtonSize>;
17
30
  export declare const statValueRowClasses = "flex flex-wrap items-center gap-x-2 gap-y-1";
18
31
  export declare const statValueSizeClasses: Record<StatSize, string>;
32
+ /** Visible secondary line — "vs $14,850", "of $1M goal". Figures stay tabular. */
33
+ export declare const statContextClasses: string;
34
+ /** One line under the figure — "3 new" or "vs last scan". Figures stay tabular. */
35
+ export declare const statDetailClasses: string;
36
+ /** Stand-in figure when the source is not wired. */
37
+ export declare const statUnavailableClasses = "type-body text-muted";
19
38
  export declare const statLoadingLabelHeights: Record<StatSize, number>;
20
39
  export declare const statLoadingValueHeights: Record<StatSize, number>;
40
+ export declare const statLoadingContextHeight = 16;
21
41
  export declare function statGroupGridClasses(columns: StatGroupColumns): string;
22
42
  export declare function statTrendBadgeVariant(direction: StatTrendDirection): BadgeVariant;
23
43
  //# sourceMappingURL=statStyles.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"statStyles.d.ts","sourceRoot":"","sources":["../../../../src/components/molecules/Stat/statStyles.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,yBAAyB,CAAC;AAE5D,eAAO,MAAM,SAAS,uBAAwB,CAAC;AAE/C,MAAM,MAAM,QAAQ,GAAG,CAAC,OAAO,SAAS,CAAC,CAAC,MAAM,CAAC,CAAC;AAElD,eAAO,MAAM,mBAAmB,oCAAqC,CAAC;AAEtE,MAAM,MAAM,kBAAkB,GAAG,CAAC,OAAO,mBAAmB,CAAC,CAAC,MAAM,CAAC,CAAC;AAEtE,eAAO,MAAM,gBAAgB,oBAAqB,CAAC;AAEnD,MAAM,MAAM,gBAAgB,GAAG,CAAC,OAAO,gBAAgB,CAAC,CAAC,MAAM,CAAC,CAAC;AAEjE,wDAAwD;AACxD,eAAO,MAAM,gBAAgB,qEAAqE,CAAC;AAEnG,eAAO,MAAM,oBAAoB,EAAE,MAAM,CAAC,QAAQ,EAAE,MAAM,CAGzD,CAAC;AAEF,eAAO,MAAM,mBAAmB,4BAA4B,CAAC;AAE7D,eAAO,MAAM,qBAAqB,aAAa,CAAC;AAEhD,eAAO,MAAM,oBAAoB,mBAAmB,CAAC;AAErD,eAAO,MAAM,mBAAmB,qBAAqB,CAAC;AAEtD,eAAO,MAAM,kBAAkB,gCAAgC,CAAC;AAEhE,eAAO,MAAM,gBAAgB,QAA8C,CAAC;AAE5E,eAAO,MAAM,mBAAmB,gDAAgD,CAAC;AAEjF,eAAO,MAAM,oBAAoB,EAAE,MAAM,CAAC,QAAQ,EAAE,MAAM,CAGzD,CAAC;AAEF,eAAO,MAAM,uBAAuB,EAAE,MAAM,CAAC,QAAQ,EAAE,MAAM,CAG5D,CAAC;AAEF,eAAO,MAAM,uBAAuB,EAAE,MAAM,CAAC,QAAQ,EAAE,MAAM,CAG5D,CAAC;AAEF,wBAAgB,oBAAoB,CAAC,OAAO,EAAE,gBAAgB,GAAG,MAAM,CAQtE;AAED,wBAAgB,qBAAqB,CAAC,SAAS,EAAE,kBAAkB,GAAG,YAAY,CAQjF"}
1
+ {"version":3,"file":"statStyles.d.ts","sourceRoot":"","sources":["../../../../src/components/molecules/Stat/statStyles.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,yBAAyB,CAAC;AAC5D,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,iCAAiC,CAAC;AAElE,eAAO,MAAM,SAAS,6BAA8B,CAAC;AAErD,MAAM,MAAM,QAAQ,GAAG,CAAC,OAAO,SAAS,CAAC,CAAC,MAAM,CAAC,CAAC;AAElD,eAAO,MAAM,mBAAmB,4CAA6C,CAAC;AAE9E,MAAM,MAAM,kBAAkB,GAAG,CAAC,OAAO,mBAAmB,CAAC,CAAC,MAAM,CAAC,CAAC;AAEtE,eAAO,MAAM,gBAAgB,oBAAqB,CAAC;AAEnD,MAAM,MAAM,gBAAgB,GAAG,CAAC,OAAO,gBAAgB,CAAC,CAAC,MAAM,CAAC,CAAC;AAEjE,wDAAwD;AACxD,eAAO,MAAM,gBAAgB,6FAA6F,CAAC;AAE3H,eAAO,MAAM,oBAAoB,EAAE,MAAM,CAAC,QAAQ,EAAE,MAAM,CAIzD,CAAC;AAEF,eAAO,MAAM,mBAAmB,sCAAsC,CAAC;AAEvE,eAAO,MAAM,qBAAqB,aAAa,CAAC;AAEhD,eAAO,MAAM,oBAAoB,mBAAmB,CAAC;AAErD,eAAO,MAAM,mBAAmB,qBAAqB,CAAC;AAEtD,oEAAoE;AACpE,eAAO,MAAM,qBAAqB,6CAA6C,CAAC;AAEhF,eAAO,MAAM,kBAAkB,gCAAgC,CAAC;AAEhE,eAAO,MAAM,oBAAoB,UAAU,CAAC;AAE5C,eAAO,MAAM,gBAAgB,QAA8C,CAAC;AAE5E,oEAAoE;AACpE,eAAO,MAAM,kBAAkB,yCAAyC,CAAC;AAEzE;;;GAGG;AACH,eAAO,MAAM,mBAAmB,iGACgE,CAAC;AAEjG,eAAO,MAAM,uBAAuB,EAAE,MAAM,CAAC,QAAQ,EAAE,MAAM,CAI5D,CAAC;AAEF,eAAO,MAAM,kBAAkB,EAAE,MAAM,CAAC,QAAQ,EAAE,UAAU,CAI3D,CAAC;AAEF,eAAO,MAAM,mBAAmB,gDAAgD,CAAC;AAEjF,eAAO,MAAM,oBAAoB,EAAE,MAAM,CAAC,QAAQ,EAAE,MAAM,CAIzD,CAAC;AAEF,kFAAkF;AAClF,eAAO,MAAM,kBAAkB,QAA+C,CAAC;AAE/E,mFAAmF;AACnF,eAAO,MAAM,iBAAiB,QAA0D,CAAC;AAEzF,oDAAoD;AACpD,eAAO,MAAM,sBAAsB,yBAAyB,CAAC;AAE7D,eAAO,MAAM,uBAAuB,EAAE,MAAM,CAAC,QAAQ,EAAE,MAAM,CAI5D,CAAC;AAEF,eAAO,MAAM,uBAAuB,EAAE,MAAM,CAAC,QAAQ,EAAE,MAAM,CAI5D,CAAC;AAEF,eAAO,MAAM,wBAAwB,KAAK,CAAC;AAE3C,wBAAgB,oBAAoB,CAAC,OAAO,EAAE,gBAAgB,GAAG,MAAM,CAQtE;AAED,wBAAgB,qBAAqB,CAAC,SAAS,EAAE,kBAAkB,GAAG,YAAY,CAQjF"}
@@ -2,36 +2,53 @@
2
2
  import { cn as e } from "../../../lib/cn.js";
3
3
  import { typographyClass as t } from "../../../lib/typography.js";
4
4
  //#region src/components/molecules/Stat/statStyles.ts
5
- var n = ["sm", "md"], r = [
5
+ var n = [
6
+ "sm",
7
+ "md",
8
+ "lg"
9
+ ], r = [
6
10
  "up",
7
11
  "down",
8
- "neutral"
12
+ "neutral",
13
+ "flat"
9
14
  ], i = [
10
15
  2,
11
16
  3,
12
17
  4
13
- ], a = "flex min-w-0 flex-col rounded-xl border border-border bg-surface", o = {
18
+ ], a = "flex min-w-0 flex-col rounded-[var(--radius-surface-md)] border border-border bg-surface", o = {
14
19
  sm: "gap-2 p-4",
15
- md: "gap-3 p-5"
16
- }, s = "flex items-center gap-2", c = "shrink-0", l = "min-w-0 flex-1", u = "ml-auto shrink-0", d = "flex min-w-0 flex-col gap-1", f = `${t("overline")} text-muted`, p = "flex flex-wrap items-center gap-x-2 gap-y-1", m = {
20
+ md: "gap-3 p-5",
21
+ lg: "gap-3 p-5"
22
+ }, s = "flex flex-wrap items-center gap-2", c = "shrink-0", l = "min-w-0 flex-1", u = "ml-auto shrink-0", d = "ml-auto flex shrink-0 items-center gap-2", f = "flex min-w-0 flex-col gap-1", p = "gap-2", m = `${t("overline")} text-muted`, h = "type-label min-w-0 flex-1 text-muted", g = "inline-flex shrink-0 items-center justify-center rounded-lg bg-brand-tint text-brand-outline", _ = {
23
+ sm: "size-7",
24
+ md: "size-8",
25
+ lg: "size-9"
26
+ }, v = {
27
+ sm: "xs",
28
+ md: "sm",
29
+ lg: "sm"
30
+ }, y = "flex flex-wrap items-center gap-x-2 gap-y-1", b = {
17
31
  sm: `${t("section-heading")} tabular-nums tracking-tight text-fg`,
18
- md: `${t("page-heading")} tabular-nums tracking-tight text-fg`
19
- }, h = {
32
+ md: `${t("page-heading")} tabular-nums tracking-tight text-fg`,
33
+ lg: "type-display-3 tabular-nums tracking-tight text-fg"
34
+ }, x = `${t("caption")} tabular-nums`, S = `${t("caption")} tabular-nums text-muted`, C = "type-body text-muted", w = {
20
35
  sm: 12,
21
- md: 14
22
- }, g = {
36
+ md: 14,
37
+ lg: 16
38
+ }, T = {
23
39
  sm: 28,
24
- md: 36
40
+ md: 36,
41
+ lg: 40
25
42
  };
26
- function _(t) {
43
+ function E(t) {
27
44
  return e("grid grid-cols-2 gap-4", {
28
45
  2: "lg:grid-cols-2",
29
46
  3: "lg:grid-cols-3",
30
47
  4: "lg:grid-cols-4"
31
48
  }[t]);
32
49
  }
33
- function v(e) {
50
+ function D(e) {
34
51
  return e === "up" ? "success" : e === "down" ? "destructive" : "neutral";
35
52
  }
36
53
  //#endregion
37
- export { d as statContentClasses, i as statGroupColumns, _ as statGroupGridClasses, f as statLabelClasses, u as statLabelEndClasses, s as statLabelRowClasses, c as statLabelStartClasses, l as statLabelTextClasses, h as statLoadingLabelHeights, g as statLoadingValueHeights, a as statShellClasses, o as statShellSizeClasses, n as statSizes, v as statTrendBadgeVariant, r as statTrendDirections, p as statValueRowClasses, m as statValueSizeClasses };
54
+ export { f as statContentClasses, p as statContentLgClasses, x as statContextClasses, S as statDetailClasses, i as statGroupColumns, E as statGroupGridClasses, v as statIconButtonSize, g as statIconTileClasses, _ as statIconTileSizeClasses, m as statLabelClasses, u as statLabelEndClasses, h as statLabelLgClasses, s as statLabelRowClasses, c as statLabelStartClasses, l as statLabelTextClasses, d as statLabelTrailClasses, w as statLoadingLabelHeights, T as statLoadingValueHeights, a as statShellClasses, o as statShellSizeClasses, n as statSizes, D as statTrendBadgeVariant, r as statTrendDirections, C as statUnavailableClasses, y as statValueRowClasses, b as statValueSizeClasses };