@thewhatmatters/wmds 0.4.9 → 0.4.27

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 (302) hide show
  1. package/CHANGELOG.md +253 -0
  2. package/README.md +1 -1
  3. package/dist/components/atoms/Badge/Badge.d.ts +13 -5
  4. package/dist/components/atoms/Badge/Badge.d.ts.map +1 -1
  5. package/dist/components/atoms/Badge/Badge.js +56 -48
  6. package/dist/components/atoms/Badge/badgeStyles.d.ts +15 -0
  7. package/dist/components/atoms/Badge/badgeStyles.d.ts.map +1 -1
  8. package/dist/components/atoms/Badge/badgeStyles.js +38 -16
  9. package/dist/components/atoms/Button/Button.d.ts +1 -1
  10. package/dist/components/atoms/Button/Button.d.ts.map +1 -1
  11. package/dist/components/atoms/Button/Button.js +67 -48
  12. package/dist/components/atoms/Button/buttonStatusMotion.d.ts.map +1 -1
  13. package/dist/components/atoms/Button/buttonStatusMotion.js +6 -1
  14. package/dist/components/atoms/Button/buttonStyles.d.ts +1 -1
  15. package/dist/components/atoms/Button/buttonStyles.d.ts.map +1 -1
  16. package/dist/components/atoms/Button/buttonStyles.js +14 -12
  17. package/dist/components/atoms/Input/Input.d.ts +3 -1
  18. package/dist/components/atoms/Input/Input.d.ts.map +1 -1
  19. package/dist/components/atoms/Input/Input.js +59 -59
  20. package/dist/components/atoms/Input/inputShellStyles.d.ts +9 -3
  21. package/dist/components/atoms/Input/inputShellStyles.d.ts.map +1 -1
  22. package/dist/components/atoms/Input/inputShellStyles.js +38 -38
  23. package/dist/components/atoms/RiveHand/RiveHand.d.ts.map +1 -1
  24. package/dist/components/atoms/RiveHand/RiveHand.js +83 -81
  25. package/dist/components/atoms/Table/Table.d.ts +54 -0
  26. package/dist/components/atoms/Table/Table.d.ts.map +1 -0
  27. package/dist/components/atoms/Table/Table.js +66 -0
  28. package/dist/components/atoms/Table/tableStyles.d.ts +18 -0
  29. package/dist/components/atoms/Table/tableStyles.d.ts.map +1 -0
  30. package/dist/components/atoms/Table/tableStyles.js +14 -0
  31. package/dist/components/atoms/TextArea/TextArea.d.ts +6 -0
  32. package/dist/components/atoms/TextArea/TextArea.d.ts.map +1 -1
  33. package/dist/components/atoms/TextArea/TextArea.js +86 -78
  34. package/dist/components/atoms/TextArea/textareaShellStyles.d.ts +2 -2
  35. package/dist/components/atoms/TextArea/textareaShellStyles.d.ts.map +1 -1
  36. package/dist/components/atoms/TextArea/textareaShellStyles.js +2 -2
  37. package/dist/components/molecules/Card/Card.d.ts +28 -6
  38. package/dist/components/molecules/Card/Card.d.ts.map +1 -1
  39. package/dist/components/molecules/Card/Card.js +83 -42
  40. package/dist/components/molecules/Card/cardStyles.d.ts +16 -1
  41. package/dist/components/molecules/Card/cardStyles.d.ts.map +1 -1
  42. package/dist/components/molecules/Card/cardStyles.js +18 -4
  43. package/dist/components/molecules/Chip/chipStyles.js +9 -9
  44. package/dist/components/molecules/CopyField/CopyField.d.ts +41 -0
  45. package/dist/components/molecules/CopyField/CopyField.d.ts.map +1 -0
  46. package/dist/components/molecules/CopyField/CopyField.js +120 -0
  47. package/dist/components/molecules/CopyField/copyFieldStyles.d.ts +28 -0
  48. package/dist/components/molecules/CopyField/copyFieldStyles.d.ts.map +1 -0
  49. package/dist/components/molecules/CopyField/copyFieldStyles.js +7 -0
  50. package/dist/components/molecules/DisplayControls/DisplayControls.d.ts +16 -7
  51. package/dist/components/molecules/DisplayControls/DisplayControls.d.ts.map +1 -1
  52. package/dist/components/molecules/DisplayControls/DisplayControls.js +41 -39
  53. package/dist/components/molecules/DisplayControls/displayControlsState.d.ts +21 -0
  54. package/dist/components/molecules/DisplayControls/displayControlsState.d.ts.map +1 -1
  55. package/dist/components/molecules/DisplayControls/displayControlsState.js +46 -4
  56. package/dist/components/molecules/LogView/LogView.d.ts +31 -0
  57. package/dist/components/molecules/LogView/LogView.d.ts.map +1 -0
  58. package/dist/components/molecules/LogView/LogView.js +109 -0
  59. package/dist/components/molecules/LogView/logViewStyles.d.ts +11 -0
  60. package/dist/components/molecules/LogView/logViewStyles.d.ts.map +1 -0
  61. package/dist/components/molecules/LogView/logViewStyles.js +6 -0
  62. package/dist/components/molecules/NavList/NavList.d.ts +23 -4
  63. package/dist/components/molecules/NavList/NavList.d.ts.map +1 -1
  64. package/dist/components/molecules/NavList/NavList.js +65 -52
  65. package/dist/components/molecules/NavList/navListStyles.d.ts +2 -0
  66. package/dist/components/molecules/NavList/navListStyles.d.ts.map +1 -1
  67. package/dist/components/molecules/NavList/navListStyles.js +3 -3
  68. package/dist/components/molecules/PageHeader/PageHeader.js +3 -3
  69. package/dist/components/molecules/SegmentedControl/segmentedControlStyles.js +7 -7
  70. package/dist/components/molecules/Stat/Stat.d.ts +31 -5
  71. package/dist/components/molecules/Stat/Stat.d.ts.map +1 -1
  72. package/dist/components/molecules/Stat/Stat.js +83 -49
  73. package/dist/components/molecules/Stat/statStyles.d.ts +23 -3
  74. package/dist/components/molecules/Stat/statStyles.d.ts.map +1 -1
  75. package/dist/components/molecules/Stat/statStyles.js +29 -12
  76. package/dist/components/molecules/TaskRows/TaskRows.d.ts +13 -3
  77. package/dist/components/molecules/TaskRows/TaskRows.d.ts.map +1 -1
  78. package/dist/components/molecules/TaskRows/TaskRows.js +81 -57
  79. package/dist/components/molecules/TaskRows/TaskRowsTable.d.ts +54 -0
  80. package/dist/components/molecules/TaskRows/TaskRowsTable.d.ts.map +1 -0
  81. package/dist/components/molecules/TaskRows/TaskRowsTable.js +200 -0
  82. package/dist/components/molecules/TaskRows/taskRowsStyles.d.ts +19 -1
  83. package/dist/components/molecules/TaskRows/taskRowsStyles.d.ts.map +1 -1
  84. package/dist/components/molecules/TaskRows/taskRowsStyles.js +7 -3
  85. package/dist/components/organisms/AppShell/AppShell.d.ts +82 -0
  86. package/dist/components/organisms/AppShell/AppShell.d.ts.map +1 -0
  87. package/dist/components/organisms/AppShell/AppShell.js +222 -0
  88. package/dist/components/organisms/AppShell/appShellStyles.d.ts +18 -0
  89. package/dist/components/organisms/AppShell/appShellStyles.d.ts.map +1 -0
  90. package/dist/components/organisms/AppShell/appShellStyles.js +8 -0
  91. package/dist/components/organisms/Carousel/Carousel.d.ts +9 -1
  92. package/dist/components/organisms/Carousel/Carousel.d.ts.map +1 -1
  93. package/dist/components/organisms/Carousel/Carousel.js +220 -182
  94. package/dist/components/organisms/Carousel/carouselMath.d.ts +5 -0
  95. package/dist/components/organisms/Carousel/carouselMath.d.ts.map +1 -1
  96. package/dist/components/organisms/Carousel/carouselMath.js +9 -1
  97. package/dist/components/organisms/Carousel/carouselStyles.d.ts +2 -0
  98. package/dist/components/organisms/Carousel/carouselStyles.d.ts.map +1 -1
  99. package/dist/components/organisms/Carousel/carouselStyles.js +8 -7
  100. package/dist/components/organisms/Chart/Chart.d.ts +5 -1
  101. package/dist/components/organisms/Chart/Chart.d.ts.map +1 -1
  102. package/dist/components/organisms/Chart/Chart.js +126 -62
  103. package/dist/components/organisms/Chart/ChartLegend.d.ts +8 -1
  104. package/dist/components/organisms/Chart/ChartLegend.d.ts.map +1 -1
  105. package/dist/components/organisms/Chart/ChartLegend.js +43 -13
  106. package/dist/components/organisms/Chart/ChartSegmentedRing.d.ts +52 -0
  107. package/dist/components/organisms/Chart/ChartSegmentedRing.d.ts.map +1 -0
  108. package/dist/components/organisms/Chart/ChartSegmentedRing.js +95 -0
  109. package/dist/components/organisms/Chart/chartStyles.d.ts +32 -0
  110. package/dist/components/organisms/Chart/chartStyles.d.ts.map +1 -1
  111. package/dist/components/organisms/Chart/chartStyles.js +15 -3
  112. package/dist/components/organisms/ChatDock/ChatDock.d.ts.map +1 -1
  113. package/dist/components/organisms/ChatDock/ChatDock.js +29 -25
  114. package/dist/components/organisms/Dialog/OverlayPanelHeader.d.ts.map +1 -1
  115. package/dist/components/organisms/Dialog/OverlayPanelHeader.js +1 -0
  116. package/dist/components/organisms/Sheet/Sheet.d.ts +3 -1
  117. package/dist/components/organisms/Sheet/Sheet.d.ts.map +1 -1
  118. package/dist/components/organisms/Sheet/Sheet.js +74 -68
  119. package/dist/components/organisms/Sheet/sheetStyles.d.ts +8 -2
  120. package/dist/components/organisms/Sheet/sheetStyles.d.ts.map +1 -1
  121. package/dist/components/organisms/Sheet/sheetStyles.js +16 -11
  122. package/dist/components/organisms/Tab/tabStyles.js +7 -7
  123. package/dist/index.d.ts +14 -8
  124. package/dist/index.d.ts.map +1 -1
  125. package/dist/index.js +148 -139
  126. package/dist/lib/chartTheme.d.ts +11 -0
  127. package/dist/lib/chartTheme.d.ts.map +1 -1
  128. package/dist/lib/compositionAudit.d.ts.map +1 -1
  129. package/dist/lib/dialogOverlay.d.ts +7 -0
  130. package/dist/lib/dialogOverlay.d.ts.map +1 -1
  131. package/dist/lib/dialogOverlay.js +16 -1
  132. package/dist/lib/sheetParam/index.d.ts +3 -0
  133. package/dist/lib/sheetParam/index.d.ts.map +1 -0
  134. package/dist/lib/sheetParam/sheetParam.d.ts +15 -0
  135. package/dist/lib/sheetParam/sheetParam.d.ts.map +1 -0
  136. package/dist/lib/sheetParam/sheetParam.js +26 -0
  137. package/dist/lib/sheetParam/useSheetParam.d.ts +25 -0
  138. package/dist/lib/sheetParam/useSheetParam.d.ts.map +1 -0
  139. package/dist/lib/sheetParam/useSheetParam.js +29 -0
  140. package/dist/styles.css +1 -1
  141. package/docs/README.md +1 -1
  142. package/docs/component-contracts.md +101 -0
  143. package/docs/components.md +16 -11
  144. package/docs/exports.json +88 -15
  145. package/docs/patterns/components-accordion--flush.tsx +1 -1
  146. package/docs/patterns/components-appshell--portal-dashboard-pattern.tsx +176 -0
  147. package/docs/patterns/components-avatar--dropdown-row.tsx +1 -1
  148. package/docs/patterns/components-badge--outline-tags.tsx +1 -1
  149. package/docs/patterns/components-badge--status-pill.tsx +31 -0
  150. package/docs/patterns/components-badge--with-avatar.tsx +1 -1
  151. package/docs/patterns/components-breadcrumb--editorial.tsx +1 -1
  152. package/docs/patterns/components-breadcrumb--long-path.tsx +1 -1
  153. package/docs/patterns/components-breadcrumb--path.tsx +1 -1
  154. package/docs/patterns/components-breadcrumb--router-links.tsx +1 -1
  155. package/docs/patterns/components-button-button--copy-button.tsx +1 -1
  156. package/docs/patterns/components-button-button--destructive-action.tsx +1 -1
  157. package/docs/patterns/components-button-button--external-link.tsx +1 -1
  158. package/docs/patterns/components-button-button--ghost-action.tsx +1 -1
  159. package/docs/patterns/components-button-button--inverse-action.tsx +1 -1
  160. package/docs/patterns/components-button-button--link-render.tsx +1 -1
  161. package/docs/patterns/components-button-button--multi-state-badge.tsx +1 -1
  162. package/docs/patterns/components-button-button--outline-mono.tsx +1 -1
  163. package/docs/patterns/components-button-button--primary-action.tsx +1 -1
  164. package/docs/patterns/components-button-button--row-hug.tsx +1 -1
  165. package/docs/patterns/components-button-button--row-layout.tsx +1 -1
  166. package/docs/patterns/components-button-button--secondary-action.tsx +1 -1
  167. package/docs/patterns/components-button-button--suggestion-pills.tsx +1 -1
  168. package/docs/patterns/components-button-button--with-count.tsx +1 -1
  169. package/docs/patterns/components-button-button--with-icon.tsx +1 -1
  170. package/docs/patterns/components-button-floatingactionbutton--vertical-actions.tsx +1 -1
  171. package/docs/patterns/components-calembed--pattern-skip-in-footer.tsx +1 -1
  172. package/docs/patterns/components-card-card--body-slot-occupancy-history.tsx +1 -1
  173. package/docs/patterns/components-card-card--headerless-media.tsx +1 -1
  174. package/docs/patterns/components-card-card--outlined-layout.tsx +1 -1
  175. package/docs/patterns/components-card-card--pinned-height.tsx +1 -1
  176. package/docs/patterns/components-card-card--terminal-frame.tsx +48 -0
  177. package/docs/patterns/components-card-selectablecard--selectable-cards-pattern.tsx +1 -1
  178. package/docs/patterns/components-carousel--image-carousel.tsx +1 -1
  179. package/docs/patterns/components-chart--audience-activity-heatmap.tsx +1 -1
  180. package/docs/patterns/components-chart--cartesian-no-data-gaps.tsx +1 -1
  181. package/docs/patterns/components-chart--occupancy-history-in-card.tsx +1 -1
  182. package/docs/patterns/components-chart--occupancy-in-card.tsx +1 -1
  183. package/docs/patterns/components-chart--post-reach-distribution.tsx +1 -1
  184. package/docs/patterns/components-chart--ranked-audience-breakdown.tsx +1 -1
  185. package/docs/patterns/components-chart--revenue-by-line.tsx +68 -0
  186. package/docs/patterns/components-chart--segmented-ring-pattern.tsx +144 -0
  187. package/docs/patterns/components-chart--unit-grid-composition.tsx +1 -1
  188. package/docs/patterns/components-chatdock--pattern-chat-dock.tsx +1 -1
  189. package/docs/patterns/components-chatdock--pattern-start-project-gate.tsx +1 -1
  190. package/docs/patterns/components-chatqa--pattern-qa-with-reply.tsx +1 -1
  191. package/docs/patterns/components-checkbox-checkbox--default.tsx +1 -1
  192. package/docs/patterns/components-checkbox-checkbox--with-count.tsx +1 -1
  193. package/docs/patterns/components-checkbox-checkbox--with-description.tsx +1 -1
  194. package/docs/patterns/components-checkbox-checkboxgroup--default.tsx +1 -1
  195. package/docs/patterns/components-checkbox-checkboxgroup--option-counts.tsx +1 -1
  196. package/docs/patterns/components-copyfield--clipboard-blocked.tsx +9 -0
  197. package/docs/patterns/components-copyfield--copied.tsx +9 -0
  198. package/docs/patterns/components-copyfield--copy-key.tsx +9 -0
  199. package/docs/patterns/components-copyfield--on-navy.tsx +29 -0
  200. package/docs/patterns/components-descriptionlist--details.tsx +1 -1
  201. package/docs/patterns/components-descriptionlist--post-metadata.tsx +1 -1
  202. package/docs/patterns/components-dialog--alert-dialog-destructive.tsx +1 -1
  203. package/docs/patterns/components-dialog--default-dialog.tsx +1 -1
  204. package/docs/patterns/components-dialog--form-dialog.tsx +1 -1
  205. package/docs/patterns/components-displaycontrols--page-utilities.tsx +1 -1
  206. package/docs/patterns/components-displaycontrols--theme-switch.tsx +35 -0
  207. package/docs/patterns/components-field--horizontal-input.tsx +1 -1
  208. package/docs/patterns/components-field--horizontal-text-area.tsx +1 -1
  209. package/docs/patterns/components-field--multi-control.tsx +1 -1
  210. package/docs/patterns/components-filterpanel--panel.tsx +1 -1
  211. package/docs/patterns/components-footerreveal--marketing-hero-pattern.tsx +1 -1
  212. package/docs/patterns/components-footerreveal--marketing-hero-ruled-pattern.tsx +1 -1
  213. package/docs/patterns/components-footerreveal--marketing-hero-with-gallery-intro.tsx +1 -1
  214. package/docs/patterns/components-footerreveal--marketing-page-pattern.tsx +1 -1
  215. package/docs/patterns/components-footerreveal--ruled-grid-footer-pattern.tsx +1 -1
  216. package/docs/patterns/components-footerreveal--sequenced-marketing-hero.tsx +1 -1
  217. package/docs/patterns/components-herointro--two-line-intro.tsx +1 -1
  218. package/docs/patterns/components-herotilestack--marketing-hero-pattern.tsx +1 -1
  219. package/docs/patterns/components-herotilestack--marketing-hero-text-sequence.tsx +1 -1
  220. package/docs/patterns/components-herotilestack--marketing-hero-with-gallery-intro.tsx +1 -1
  221. package/docs/patterns/components-indexlist--post-index.tsx +1 -1
  222. package/docs/patterns/components-intakeconfirmation--booked-pattern.tsx +1 -1
  223. package/docs/patterns/components-intakeconfirmation--emailed-pattern.tsx +1 -1
  224. package/docs/patterns/components-intakeform--about-you-pattern.tsx +1 -1
  225. package/docs/patterns/components-intakeform--short-form-pattern.tsx +1 -1
  226. package/docs/patterns/components-intakemodal--intake-modal-pattern.tsx +1 -1
  227. package/docs/patterns/components-kbd--command-row.tsx +1 -1
  228. package/docs/patterns/components-kbd--numbered-choices.tsx +1 -1
  229. package/docs/patterns/components-kbd--shortcut.tsx +1 -1
  230. package/docs/patterns/components-linktile--resource-tile.tsx +1 -1
  231. package/docs/patterns/components-linktile--router-link.tsx +1 -1
  232. package/docs/patterns/components-logview--detail-pane.tsx +80 -0
  233. package/docs/patterns/components-logview--log-viewer.tsx +20 -0
  234. package/docs/patterns/components-moremenu--action-menu.tsx +1 -1
  235. package/docs/patterns/components-moremenu--in-card-header.tsx +1 -1
  236. package/docs/patterns/components-navlist--app-sidebar.tsx +118 -0
  237. package/docs/patterns/components-navlist--side-nav-settings.tsx +1 -1
  238. package/docs/patterns/components-pageheader--app-header-pattern.tsx +1 -1
  239. package/docs/patterns/components-pageheader--page-section-header.tsx +1 -1
  240. package/docs/patterns/components-pageheader--toolbar-header.tsx +1 -1
  241. package/docs/patterns/components-panel--end-detail-rail.tsx +1 -1
  242. package/docs/patterns/components-pillgroup--pill-group-pattern.tsx +1 -1
  243. package/docs/patterns/components-promptbar--pattern-prompt-bar.tsx +1 -1
  244. package/docs/patterns/components-prose--article-body.tsx +1 -1
  245. package/docs/patterns/components-radio-radiogroup--default.tsx +1 -1
  246. package/docs/patterns/components-scrollhorizontal--project-gallery-pattern.tsx +1 -1
  247. package/docs/patterns/components-scrollhorizontal--with-intro.tsx +1 -1
  248. package/docs/patterns/components-sectioncaption--column-caption.tsx +1 -1
  249. package/docs/patterns/components-sectioncaption--with-action.tsx +1 -1
  250. package/docs/patterns/components-sheet--bottom-sheet.tsx +1 -1
  251. package/docs/patterns/components-sheet--end-sheet.tsx +1 -1
  252. package/docs/patterns/components-sheet--side-sheet-header-actions.tsx +50 -0
  253. package/docs/patterns/components-sheet--side-sheet-url-deep-link.tsx +51 -0
  254. package/docs/patterns/components-sheet--side-sheet.tsx +38 -0
  255. package/docs/patterns/components-sitenav--brand-and-cta.tsx +1 -1
  256. package/docs/patterns/components-sitenav--centered-links.tsx +1 -1
  257. package/docs/patterns/components-sitenav--compact.tsx +1 -1
  258. package/docs/patterns/components-sitenav--marketing-header.tsx +1 -1
  259. package/docs/patterns/components-sitenav--mega-menu.tsx +1 -1
  260. package/docs/patterns/components-stat--hero-stat.tsx +54 -0
  261. package/docs/patterns/components-stat--insights-row.tsx +1 -1
  262. package/docs/patterns/components-stepprogress--step-progress-pattern.tsx +1 -1
  263. package/docs/patterns/components-switch--default.tsx +1 -1
  264. package/docs/patterns/components-switch--settings-row.tsx +1 -1
  265. package/docs/patterns/components-tab--settings-pages.tsx +1 -1
  266. package/docs/patterns/components-table--approvals-with-sheet.tsx +81 -0
  267. package/docs/patterns/components-table--approvals.tsx +223 -0
  268. package/docs/patterns/components-table--basic.tsx +60 -0
  269. package/docs/patterns/components-taskrows--action-details.tsx +1 -1
  270. package/docs/patterns/components-taskrows--capsules.tsx +1 -1
  271. package/docs/patterns/components-taskrows--card-with-status-rows.tsx +1 -1
  272. package/docs/patterns/components-taskrows--controlled-expand.tsx +1 -1
  273. package/docs/patterns/components-taskrows--custom-slots.tsx +1 -1
  274. package/docs/patterns/components-taskrows--needs-you-table.tsx +62 -0
  275. package/docs/patterns/components-taskrows--status-list.tsx +1 -1
  276. package/docs/patterns/components-taskrows--tag-chips.tsx +1 -1
  277. package/docs/patterns/components-textarea--save-status.tsx +32 -0
  278. package/docs/patterns/components-textlink--external-destination.tsx +1 -1
  279. package/docs/patterns/components-textlink--inline-prose.tsx +1 -1
  280. package/docs/patterns/components-textlink--quiet-title.tsx +1 -1
  281. package/docs/patterns/components-textlink--supporting-copy.tsx +1 -1
  282. package/docs/patterns/components-textsequence--default.tsx +1 -1
  283. package/docs/patterns/components-textsequence--reduced-motion.tsx +1 -1
  284. package/docs/patterns/components-textsequence--shapes.tsx +1 -1
  285. package/docs/patterns/components-tilegrid--masonry.tsx +1 -1
  286. package/docs/patterns/components-toast--stacked-notifications.tsx +1 -1
  287. package/docs/patterns/components-tooltip--controlled.tsx +1 -1
  288. package/docs/patterns/components-tooltip--disabled-control.tsx +1 -1
  289. package/docs/patterns/components-tooltip--icon-action.tsx +1 -1
  290. package/docs/patterns/components-tooltip--keyboard-shortcut.tsx +1 -1
  291. package/docs/patterns/components-tooltip--placement.tsx +1 -1
  292. package/docs/patterns/foundations-scroll-fade--horizontal-rail.tsx +1 -1
  293. package/docs/patterns/foundations-scroll-fade--overflowing-list.tsx +1 -1
  294. package/docs/patterns/guides-chart-explorations--comparison-gallery.tsx +1 -1
  295. package/docs/patterns/guides-filter-panel--filtered-grid.tsx +1 -1
  296. package/docs/patterns/guides-filter-panel--filtered-index.tsx +1 -1
  297. package/docs/patterns/guides-overlay-flows--notification-preferences.tsx +1 -1
  298. package/docs/patterns/guides-post-page--post-page.tsx +1 -1
  299. package/docs/patterns/guides-profile-typography--editorial-profile.tsx +1 -1
  300. package/docs/patterns/guides-resource-detail--detail.tsx +1 -1
  301. package/docs/patterns/index.json +177 -1
  302. package/package.json +1 -1
@@ -0,0 +1,11 @@
1
+ export declare const logViewRootClasses = "flex min-h-0 flex-col overflow-hidden rounded-xl border border-border bg-surface";
2
+ export declare const logViewToolbarClasses = "flex h-9 shrink-0 items-center gap-2 border-b border-border px-3";
3
+ export declare const logViewCountClasses: string;
4
+ export declare const logViewActionsClasses = "ml-auto flex items-center gap-2";
5
+ export declare const logViewScrollerClasses = "min-h-40 flex-1 overflow-auto scroll-fade-y";
6
+ export declare const logViewLineClasses = "flex gap-3 px-3";
7
+ export declare const logViewNumberClasses = "type-code w-8 shrink-0 text-end text-muted tabular-nums";
8
+ export declare const logViewTextClasses = "type-code min-w-0 flex-1 whitespace-pre-wrap break-all";
9
+ export declare const logViewEmptyClasses: string;
10
+ export declare const logViewSkeletonClasses = "m-3";
11
+ //# sourceMappingURL=logViewStyles.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"logViewStyles.d.ts","sourceRoot":"","sources":["../../../../src/components/molecules/LogView/logViewStyles.ts"],"names":[],"mappings":"AAEA,eAAO,MAAM,kBAAkB,qFACqD,CAAC;AAErF,eAAO,MAAM,qBAAqB,qEACkC,CAAC;AAErE,eAAO,MAAM,mBAAmB,QAA0D,CAAC;AAE3F,eAAO,MAAM,qBAAqB,oCAAoC,CAAC;AAEvE,eAAO,MAAM,sBAAsB,gDAAgD,CAAC;AAEpF,eAAO,MAAM,kBAAkB,oBAAoB,CAAC;AAEpD,eAAO,MAAM,oBAAoB,4DAC0B,CAAC;AAE5D,eAAO,MAAM,kBAAkB,2DAA2D,CAAC;AAE3F,eAAO,MAAM,mBAAmB,QAAuD,CAAC;AAExF,eAAO,MAAM,sBAAsB,QAAQ,CAAC"}
@@ -0,0 +1,6 @@
1
+ "use client";
2
+ import { typographyClass as e } from "../../../lib/typography.js";
3
+ //#region src/components/molecules/LogView/logViewStyles.ts
4
+ var t = "flex min-h-0 flex-col overflow-hidden rounded-xl border border-border bg-surface", n = "flex h-9 shrink-0 items-center gap-2 border-b border-border px-3", r = `${e("caption")} tabular-nums text-muted`, i = "ml-auto flex items-center gap-2", a = "min-h-40 flex-1 overflow-auto scroll-fade-y", o = "flex gap-3 px-3", s = "type-code w-8 shrink-0 text-end text-muted tabular-nums", c = "type-code min-w-0 flex-1 whitespace-pre-wrap break-all", l = `${e("caption")} px-3 py-4 text-muted`;
5
+ //#endregion
6
+ export { i as logViewActionsClasses, r as logViewCountClasses, l as logViewEmptyClasses, o as logViewLineClasses, s as logViewNumberClasses, t as logViewRootClasses, a as logViewScrollerClasses, c as logViewTextClasses, n as logViewToolbarClasses };
@@ -10,11 +10,22 @@ export interface NavListItemDef {
10
10
  label: string;
11
11
  icon?: NavListIcon;
12
12
  count?: number;
13
+ /** Plain URL. The row is an anchor, so a server-rendered app does not need `onSelect` to navigate. */
14
+ href?: string;
15
+ /**
16
+ * Router link in place of `href` — `render={<Link href="/tasks/ikea" />}`.
17
+ * Pass `href` or `render`, not both.
18
+ */
19
+ render?: ReactElement;
20
+ /** Trailing mark — a **Status** dot or a **Badge** `status` pill. Not a second label. */
21
+ trailing?: ReactNode;
13
22
  }
14
23
  export interface NavListSectionDef {
15
24
  label?: string;
16
25
  /** `brand` aligns the first section overline to an adjacent 56px header band. */
17
26
  labelAlign?: NavListLabelAlignment;
27
+ /** Section control — filter or more. Pass **IconButton**. */
28
+ action?: ReactNode;
18
29
  items: NavListItemDef[];
19
30
  }
20
31
  export interface NavListProps {
@@ -29,6 +40,8 @@ export interface NavListProps {
29
40
  export interface NavListSectionProps {
30
41
  label?: string;
31
42
  labelAlign?: NavListLabelAlignment;
43
+ /** Section control — filter or more. Pass **IconButton**. */
44
+ action?: ReactNode;
32
45
  children: ReactNode;
33
46
  className?: NavListLayoutClassName;
34
47
  }
@@ -37,16 +50,22 @@ export interface NavListItemProps {
37
50
  label: string;
38
51
  icon?: NavListIcon;
39
52
  count?: number;
53
+ /** Plain URL. The row is an anchor. */
54
+ href?: string;
55
+ /** Router link in place of `href`. Pass one, not both. */
56
+ render?: ReactElement;
57
+ /** Trailing mark — a **Status** dot or a **Badge** `status` pill. */
58
+ trailing?: ReactNode;
40
59
  selected?: boolean;
41
60
  onSelect?: (id: string) => void;
42
61
  className?: NavListLayoutClassName;
43
62
  }
44
- declare function NavListSectionRoot({ label, labelAlign, children, className, }: NavListSectionProps): import("react").JSX.Element;
45
- declare function NavListItemRoot({ id, label, icon, count, selected: selectedProp, onSelect, className, }: NavListItemProps): import("react").JSX.Element;
63
+ declare function NavListSectionRoot({ label, labelAlign, action, children, className, }: NavListSectionProps): import("react").JSX.Element;
64
+ declare function NavListItemRoot({ id, label, icon, count, href, render, trailing, selected: selectedProp, onSelect, className, }: NavListItemProps): import("react").JSX.Element;
46
65
  declare function NavListRoot({ sections, activeId, onSelect, children, "aria-label": ariaLabel, className, }: NavListProps): import("react").JSX.Element;
47
66
  /**
48
- * Sectioned secondary navigation — inset pills with optional icons and counts.
49
- * Compose **NavList.Item** with **Button** `layout="nav"` or pass a `sections` array.
67
+ * Sectioned secondary navigation — inset pills with optional icons, counts, and trailing marks.
68
+ * `href` or `render` makes a row a link. Compose **NavList.Item** or pass a `sections` array.
50
69
  */
51
70
  export declare const NavList: typeof NavListRoot & {
52
71
  Section: typeof NavListSectionRoot;
@@ -1 +1 @@
1
- {"version":3,"file":"NavList.d.ts","sourceRoot":"","sources":["../../../../src/components/molecules/NavList/NavList.tsx"],"names":[],"mappings":"AAAA,OAAO,EAKL,KAAK,YAAY,EACjB,KAAK,SAAS,EACd,KAAK,QAAQ,EACd,MAAM,OAAO,CAAC;AAIf,OAAO,EAUL,KAAK,qBAAqB,EAC3B,MAAM,iBAAiB,CAAC;AAEzB,YAAY,EAAE,qBAAqB,EAAE,MAAM,iBAAiB,CAAC;AAC7D,OAAO,EAAE,sBAAsB,EAAE,MAAM,iBAAiB,CAAC;AAEzD,6DAA6D;AAC7D,MAAM,MAAM,sBAAsB,GAAG,MAAM,CAAC;AAE5C,MAAM,MAAM,WAAW,GAAG,YAAY,CAAC,QAAQ,CAAC,aAAa,CAAC,CAAC,CAAC;AAEhE,MAAM,WAAW,cAAc;IAC7B,EAAE,EAAE,MAAM,CAAC;IACX,KAAK,EAAE,MAAM,CAAC;IACd,IAAI,CAAC,EAAE,WAAW,CAAC;IACnB,KAAK,CAAC,EAAE,MAAM,CAAC;CAChB;AAED,MAAM,WAAW,iBAAiB;IAChC,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,iFAAiF;IACjF,UAAU,CAAC,EAAE,qBAAqB,CAAC;IACnC,KAAK,EAAE,cAAc,EAAE,CAAC;CACzB;AAED,MAAM,WAAW,YAAY;IAC3B,4FAA4F;IAC5F,QAAQ,CAAC,EAAE,iBAAiB,EAAE,CAAC;IAC/B,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,QAAQ,CAAC,EAAE,CAAC,EAAE,EAAE,MAAM,KAAK,IAAI,CAAC;IAChC,QAAQ,CAAC,EAAE,SAAS,CAAC;IACrB,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,SAAS,CAAC,EAAE,sBAAsB,CAAC;CACpC;AAED,MAAM,WAAW,mBAAmB;IAClC,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,UAAU,CAAC,EAAE,qBAAqB,CAAC;IACnC,QAAQ,EAAE,SAAS,CAAC;IACpB,SAAS,CAAC,EAAE,sBAAsB,CAAC;CACpC;AAED,MAAM,WAAW,gBAAgB;IAC/B,EAAE,EAAE,MAAM,CAAC;IACX,KAAK,EAAE,MAAM,CAAC;IACd,IAAI,CAAC,EAAE,WAAW,CAAC;IACnB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,QAAQ,CAAC,EAAE,CAAC,EAAE,EAAE,MAAM,KAAK,IAAI,CAAC;IAChC,SAAS,CAAC,EAAE,sBAAsB,CAAC;CACpC;AA0CD,iBAAS,kBAAkB,CAAC,EAC1B,KAAK,EACL,UAAsB,EACtB,QAAQ,EACR,SAAS,GACV,EAAE,mBAAmB,+BAOrB;AAED,iBAAS,eAAe,CAAC,EACvB,EAAE,EACF,KAAK,EACL,IAAI,EACJ,KAAK,EACL,QAAQ,EAAE,YAAY,EACtB,QAAQ,EACR,SAAS,GACV,EAAE,gBAAgB,+BAqBlB;AAED,iBAAS,WAAW,CAAC,EACnB,QAAQ,EACR,QAAQ,EACR,QAAQ,EACR,QAAQ,EACR,YAAY,EAAE,SAAqB,EACnC,SAAS,GACV,EAAE,YAAY,+BA8Bd;AAED;;;GAGG;AACH,eAAO,MAAM,OAAO;;;CAGlB,CAAC"}
1
+ {"version":3,"file":"NavList.d.ts","sourceRoot":"","sources":["../../../../src/components/molecules/NavList/NavList.tsx"],"names":[],"mappings":"AAAA,OAAO,EAML,KAAK,YAAY,EACjB,KAAK,SAAS,EACd,KAAK,QAAQ,EACd,MAAM,OAAO,CAAC;AAIf,OAAO,EAaL,KAAK,qBAAqB,EAC3B,MAAM,iBAAiB,CAAC;AAEzB,YAAY,EAAE,qBAAqB,EAAE,MAAM,iBAAiB,CAAC;AAC7D,OAAO,EAAE,sBAAsB,EAAE,MAAM,iBAAiB,CAAC;AAEzD,6DAA6D;AAC7D,MAAM,MAAM,sBAAsB,GAAG,MAAM,CAAC;AAE5C,MAAM,MAAM,WAAW,GAAG,YAAY,CAAC,QAAQ,CAAC,aAAa,CAAC,CAAC,CAAC;AAEhE,MAAM,WAAW,cAAc;IAC7B,EAAE,EAAE,MAAM,CAAC;IACX,KAAK,EAAE,MAAM,CAAC;IACd,IAAI,CAAC,EAAE,WAAW,CAAC;IACnB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,sGAAsG;IACtG,IAAI,CAAC,EAAE,MAAM,CAAC;IACd;;;OAGG;IACH,MAAM,CAAC,EAAE,YAAY,CAAC;IACtB,yFAAyF;IACzF,QAAQ,CAAC,EAAE,SAAS,CAAC;CACtB;AAED,MAAM,WAAW,iBAAiB;IAChC,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,iFAAiF;IACjF,UAAU,CAAC,EAAE,qBAAqB,CAAC;IACnC,6DAA6D;IAC7D,MAAM,CAAC,EAAE,SAAS,CAAC;IACnB,KAAK,EAAE,cAAc,EAAE,CAAC;CACzB;AAED,MAAM,WAAW,YAAY;IAC3B,4FAA4F;IAC5F,QAAQ,CAAC,EAAE,iBAAiB,EAAE,CAAC;IAC/B,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,QAAQ,CAAC,EAAE,CAAC,EAAE,EAAE,MAAM,KAAK,IAAI,CAAC;IAChC,QAAQ,CAAC,EAAE,SAAS,CAAC;IACrB,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,SAAS,CAAC,EAAE,sBAAsB,CAAC;CACpC;AAED,MAAM,WAAW,mBAAmB;IAClC,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,UAAU,CAAC,EAAE,qBAAqB,CAAC;IACnC,6DAA6D;IAC7D,MAAM,CAAC,EAAE,SAAS,CAAC;IACnB,QAAQ,EAAE,SAAS,CAAC;IACpB,SAAS,CAAC,EAAE,sBAAsB,CAAC;CACpC;AAED,MAAM,WAAW,gBAAgB;IAC/B,EAAE,EAAE,MAAM,CAAC;IACX,KAAK,EAAE,MAAM,CAAC;IACd,IAAI,CAAC,EAAE,WAAW,CAAC;IACnB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,uCAAuC;IACvC,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,0DAA0D;IAC1D,MAAM,CAAC,EAAE,YAAY,CAAC;IACtB,qEAAqE;IACrE,QAAQ,CAAC,EAAE,SAAS,CAAC;IACrB,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,QAAQ,CAAC,EAAE,CAAC,EAAE,EAAE,MAAM,KAAK,IAAI,CAAC;IAChC,SAAS,CAAC,EAAE,sBAAsB,CAAC;CACpC;AAkDD,iBAAS,kBAAkB,CAAC,EAC1B,KAAK,EACL,UAAsB,EACtB,MAAM,EACN,QAAQ,EACR,SAAS,GACV,EAAE,mBAAmB,+BASrB;AAWD,iBAAS,eAAe,CAAC,EACvB,EAAE,EACF,KAAK,EACL,IAAI,EACJ,KAAK,EACL,IAAI,EACJ,MAAM,EACN,QAAQ,EACR,QAAQ,EAAE,YAAY,EACtB,QAAQ,EACR,SAAS,GACV,EAAE,gBAAgB,+BA4BlB;AAED,iBAAS,WAAW,CAAC,EACnB,QAAQ,EACR,QAAQ,EACR,QAAQ,EACR,QAAQ,EACR,YAAY,EAAE,SAAqB,EACnC,SAAS,GACV,EAAE,YAAY,+BA+Bd;AAED;;;GAGG;AACH,eAAO,MAAM,OAAO;;;CAGlB,CAAC"}
@@ -2,102 +2,115 @@
2
2
  import { cn as e } from "../../../lib/cn.js";
3
3
  import { ButtonIcon as t } from "../../atoms/Button/ButtonIcon.js";
4
4
  import { Button as n } from "../../atoms/Button/Button.js";
5
- import { navListItemCountClasses as r, navListItemIconClasses as i, navListItemLabelClasses as a, navListItemWrapClasses as o, navListLabelAlignments as s, navListSectionBrandBandClasses as c, navListSectionClasses as l, navListSectionLabelBrandClasses as u, navListSectionLabelDefaultClasses as d, navListShellClasses as f } from "./navListStyles.js";
6
- import { cloneElement as p, createContext as m, isValidElement as h, useContext as g } from "react";
7
- import { jsx as _, jsxs as v } from "react/jsx-runtime";
5
+ import { navListItemCountClasses as r, navListItemIconClasses as i, navListItemLabelClasses as a, navListItemTrailClasses as o, navListItemWrapClasses as s, navListLabelAlignments as c, navListSectionBrandBandClasses as l, navListSectionClasses as u, navListSectionLabelBrandClasses as d, navListSectionLabelClasses as f, navListSectionLabelDefaultClasses as p, navListSectionLabelRowClasses as m, navListShellClasses as h } from "./navListStyles.js";
6
+ import { cloneElement as g, createContext as _, createElement as v, isValidElement as y, useContext as b } from "react";
7
+ import { jsx as x, jsxs as S } from "react/jsx-runtime";
8
8
  //#region src/components/molecules/NavList/NavList.tsx
9
- var y = m({});
10
- function b({ icon: n, selected: r }) {
11
- let a = h(n) ? p(n, {
9
+ var C = _({});
10
+ function w({ icon: n, selected: r }) {
11
+ let a = y(n) ? g(n, {
12
12
  strokeWidth: r ? 2.25 : 1.75,
13
13
  ...r ? {
14
14
  fill: "currentColor",
15
15
  fillOpacity: .12
16
16
  } : { fill: "none" }
17
17
  }) : n;
18
- return /* @__PURE__ */ _("span", {
18
+ return /* @__PURE__ */ x("span", {
19
19
  className: e("inline-flex shrink-0", i(r)),
20
- children: /* @__PURE__ */ _(t, {
20
+ children: /* @__PURE__ */ x(t, {
21
21
  size: "sm",
22
22
  children: a
23
23
  })
24
24
  });
25
25
  }
26
- function x({ label: e, labelAlign: t = "section" }) {
27
- return t === "brand" ? /* @__PURE__ */ _("div", {
28
- className: c,
29
- children: /* @__PURE__ */ _("p", {
30
- className: u,
31
- children: e
32
- })
33
- }) : /* @__PURE__ */ _("p", {
34
- className: d,
35
- children: e
26
+ function T({ label: t, labelAlign: n = "section", action: r }) {
27
+ return n === "brand" ? /* @__PURE__ */ S("div", {
28
+ className: e(l, r != null && "justify-between gap-2"),
29
+ children: [/* @__PURE__ */ x("p", {
30
+ className: d,
31
+ children: t
32
+ }), r]
33
+ }) : /* @__PURE__ */ S("div", {
34
+ className: e(p, m),
35
+ children: [/* @__PURE__ */ x("p", {
36
+ className: f,
37
+ children: t
38
+ }), r]
36
39
  });
37
40
  }
38
- function S({ label: t, labelAlign: n = "section", children: r, className: i }) {
39
- return /* @__PURE__ */ v("div", {
40
- className: e(l, i),
41
- children: [t == null ? null : /* @__PURE__ */ _(x, {
41
+ function E({ label: t, labelAlign: n = "section", action: r, children: i, className: a }) {
42
+ return /* @__PURE__ */ S("div", {
43
+ className: e(u, a),
44
+ children: [t == null ? null : /* @__PURE__ */ x(T, {
42
45
  label: t,
43
- labelAlign: n
44
- }), r]
46
+ labelAlign: n,
47
+ action: r
48
+ }), i]
45
49
  });
46
50
  }
47
- function C({ id: t, label: i, icon: s, count: c, selected: l, onSelect: u, className: d }) {
48
- let f = g(y), p = l ?? f.activeId === t, m = u ?? f.onSelect;
49
- return /* @__PURE__ */ _("div", {
50
- className: e(o, d),
51
- children: /* @__PURE__ */ v(n, {
51
+ function D(e, t) {
52
+ if (t != null && e != null && console.warn("[WMDS NavList] Pass `href` or `render` on an item, not both. `render` is used."), t != null) return t;
53
+ if (e != null) return v("a", { href: e });
54
+ }
55
+ function O({ id: t, label: i, icon: c, count: l, href: u, render: d, trailing: f, selected: p, onSelect: m, className: h }) {
56
+ let g = b(C), _ = p ?? g.activeId === t, v = m ?? g.onSelect, y = D(u, d);
57
+ return /* @__PURE__ */ x("div", {
58
+ className: e(s, h),
59
+ children: /* @__PURE__ */ S(n, {
52
60
  layout: "nav",
53
61
  type: "button",
54
- selected: p,
55
- onClick: m == null ? void 0 : () => m(t),
62
+ selected: _,
63
+ render: y,
64
+ onClick: v == null ? void 0 : () => v(t),
56
65
  children: [
57
- s == null ? null : /* @__PURE__ */ _(b, {
58
- icon: s,
59
- selected: p
66
+ c == null ? null : /* @__PURE__ */ x(w, {
67
+ icon: c,
68
+ selected: _
60
69
  }),
61
- /* @__PURE__ */ _("span", {
70
+ /* @__PURE__ */ x("span", {
62
71
  className: a,
63
72
  children: i
64
73
  }),
65
- c == null ? null : /* @__PURE__ */ _("span", {
66
- className: r,
67
- children: c.toLocaleString()
68
- })
74
+ l != null || f != null ? /* @__PURE__ */ S("span", {
75
+ className: o,
76
+ children: [l == null ? null : /* @__PURE__ */ x("span", {
77
+ className: r,
78
+ children: l.toLocaleString()
79
+ }), f]
80
+ }) : null
69
81
  ]
70
82
  })
71
83
  });
72
84
  }
73
- function w({ sections: t, activeId: n, onSelect: r, children: i, "aria-label": a = "Section", className: o }) {
85
+ function k({ sections: t, activeId: n, onSelect: r, children: i, "aria-label": a = "Section", className: o }) {
74
86
  let s = {
75
87
  activeId: n,
76
88
  onSelect: r
77
89
  };
78
- return t == null ? /* @__PURE__ */ _("nav", {
90
+ return t == null ? /* @__PURE__ */ x("nav", {
79
91
  "aria-label": a,
80
- className: e(f, o),
81
- children: /* @__PURE__ */ _(y.Provider, {
92
+ className: e(h, o),
93
+ children: /* @__PURE__ */ x(C.Provider, {
82
94
  value: s,
83
95
  children: i
84
96
  })
85
- }) : /* @__PURE__ */ _("nav", {
97
+ }) : /* @__PURE__ */ x("nav", {
86
98
  "aria-label": a,
87
- className: e(f, o),
88
- children: /* @__PURE__ */ _(y.Provider, {
99
+ className: e(h, o),
100
+ children: /* @__PURE__ */ x(C.Provider, {
89
101
  value: s,
90
- children: t.map((e, t) => /* @__PURE__ */ _(S, {
102
+ children: t.map((e, t) => /* @__PURE__ */ x(E, {
91
103
  label: e.label,
104
+ action: e.action,
92
105
  labelAlign: e.labelAlign ?? (t === 0 && e.label != null ? "brand" : "section"),
93
- children: e.items.map((e) => /* @__PURE__ */ _(C, { ...e }, e.id))
106
+ children: e.items.map((e) => /* @__PURE__ */ x(O, { ...e }, e.id))
94
107
  }, e.label ?? t))
95
108
  })
96
109
  });
97
110
  }
98
- var T = Object.assign(w, {
99
- Section: S,
100
- Item: C
111
+ var A = Object.assign(k, {
112
+ Section: E,
113
+ Item: O
101
114
  });
102
115
  //#endregion
103
- export { T as NavList, s as navListLabelAlignments };
116
+ export { A as NavList, c as navListLabelAlignments };
@@ -10,6 +10,8 @@ export declare const navListSectionLabelBrandClasses: string;
10
10
  export declare const navListSectionLabelDefaultClasses: string;
11
11
  export declare const navListItemWrapClasses = "relative w-full px-2";
12
12
  export declare const navListItemLabelClasses = "min-w-0 flex-1 truncate text-left";
13
+ export declare const navListItemTrailClasses = "ml-auto flex shrink-0 items-center gap-2";
13
14
  export declare const navListItemCountClasses: string;
15
+ export declare const navListSectionLabelRowClasses = "flex items-center justify-between gap-2";
14
16
  export declare function navListItemIconClasses(selected: boolean): "text-muted" | "text-fg";
15
17
  //# sourceMappingURL=navListStyles.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"navListStyles.d.ts","sourceRoot":"","sources":["../../../../src/components/molecules/NavList/navListStyles.ts"],"names":[],"mappings":"AAIA,eAAO,MAAM,sBAAsB,+BAAgC,CAAC;AAEpE,MAAM,MAAM,qBAAqB,GAAG,CAAC,OAAO,sBAAsB,CAAC,CAAC,MAAM,CAAC,CAAC;AAE5E,oFAAoF;AACpF,eAAO,MAAM,mBAAmB,sCAAsC,CAAC;AAEvE,eAAO,MAAM,qBAAqB,wBAAwB,CAAC;AAE3D,kFAAkF;AAClF,eAAO,MAAM,8BAA8B,QAG1C,CAAC;AAEF,eAAO,MAAM,0BAA0B,QAAgD,CAAC;AAExF,eAAO,MAAM,+BAA+B,QAA6B,CAAC;AAE1E,eAAO,MAAM,iCAAiC,QAG7C,CAAC;AAEF,eAAO,MAAM,sBAAsB,yBAAyB,CAAC;AAE7D,eAAO,MAAM,uBAAuB,sCAAsC,CAAC;AAE3E,eAAO,MAAM,uBAAuB,QAInC,CAAC;AAEF,wBAAgB,sBAAsB,CAAC,QAAQ,EAAE,OAAO,4BAEvD"}
1
+ {"version":3,"file":"navListStyles.d.ts","sourceRoot":"","sources":["../../../../src/components/molecules/NavList/navListStyles.ts"],"names":[],"mappings":"AAIA,eAAO,MAAM,sBAAsB,+BAAgC,CAAC;AAEpE,MAAM,MAAM,qBAAqB,GAAG,CAAC,OAAO,sBAAsB,CAAC,CAAC,MAAM,CAAC,CAAC;AAE5E,oFAAoF;AACpF,eAAO,MAAM,mBAAmB,sCAAsC,CAAC;AAEvE,eAAO,MAAM,qBAAqB,wBAAwB,CAAC;AAE3D,kFAAkF;AAClF,eAAO,MAAM,8BAA8B,QAG1C,CAAC;AAEF,eAAO,MAAM,0BAA0B,QAAgD,CAAC;AAExF,eAAO,MAAM,+BAA+B,QAA6B,CAAC;AAE1E,eAAO,MAAM,iCAAiC,QAG7C,CAAC;AAEF,eAAO,MAAM,sBAAsB,yBAAyB,CAAC;AAE7D,eAAO,MAAM,uBAAuB,sCAAsC,CAAC;AAE3E,eAAO,MAAM,uBAAuB,6CAA6C,CAAC;AAElF,eAAO,MAAM,uBAAuB,QAInC,CAAC;AAEF,eAAO,MAAM,6BAA6B,4CAA4C,CAAC;AAEvF,wBAAgB,sBAAsB,CAAC,QAAQ,EAAE,OAAO,4BAEvD"}
@@ -3,9 +3,9 @@ import { cn as e } from "../../../lib/cn.js";
3
3
  import { typographyClass as t } from "../../../lib/typography.js";
4
4
  import { pageHeaderAppBandHeightClasses as n } from "../PageHeader/pageHeaderStyles.js";
5
5
  //#region src/components/molecules/NavList/navListStyles.ts
6
- var r = ["brand", "section"], i = "flex h-full min-h-0 w-52 flex-col", a = "flex flex-col gap-1", o = e("box-border flex shrink-0 items-center px-4", n), s = e(t("overline"), "text-muted"), c = s, l = e(s, "px-4 pb-1 pt-3"), u = "relative w-full px-2", d = "min-w-0 flex-1 truncate text-left", f = e("ml-auto tabular-nums", t("caption"), "text-muted");
7
- function p(e) {
6
+ var r = ["brand", "section"], i = "flex h-full min-h-0 w-52 flex-col", a = "flex flex-col gap-1", o = e("box-border flex shrink-0 items-center px-4", n), s = e(t("overline"), "text-muted"), c = s, l = e(s, "px-4 pb-1 pt-3"), u = "relative w-full px-2", d = "min-w-0 flex-1 truncate text-left", f = "ml-auto flex shrink-0 items-center gap-2", p = e("tabular-nums", t("caption"), "text-muted"), m = "flex items-center justify-between gap-2";
7
+ function h(e) {
8
8
  return e ? "text-fg" : "text-muted";
9
9
  }
10
10
  //#endregion
11
- export { f as navListItemCountClasses, p as navListItemIconClasses, d as navListItemLabelClasses, u as navListItemWrapClasses, r as navListLabelAlignments, o as navListSectionBrandBandClasses, a as navListSectionClasses, c as navListSectionLabelBrandClasses, s as navListSectionLabelClasses, l as navListSectionLabelDefaultClasses, i as navListShellClasses };
11
+ export { p as navListItemCountClasses, h as navListItemIconClasses, d as navListItemLabelClasses, f as navListItemTrailClasses, u as navListItemWrapClasses, r as navListLabelAlignments, o as navListSectionBrandBandClasses, a as navListSectionClasses, c as navListSectionLabelBrandClasses, s as navListSectionLabelClasses, l as navListSectionLabelDefaultClasses, m as navListSectionLabelRowClasses, i as navListShellClasses };
@@ -9,10 +9,10 @@ var l = {
9
9
  toolbar: "span"
10
10
  };
11
11
  function u({ title: t, variant: o = "page", start: u, end: d, "aria-label": f, className: p }) {
12
- let m = l[o], h = t != null && t.length > 0, g = h ? void 0 : f;
12
+ let m = l[o], h = t != null && t.length > 0;
13
13
  return o === "toolbar" ? /* @__PURE__ */ c("div", {
14
14
  role: "toolbar",
15
- "aria-label": g,
15
+ "aria-label": h ? void 0 : f,
16
16
  className: e(r.toolbar, p),
17
17
  children: [u != null || h ? /* @__PURE__ */ c("div", {
18
18
  className: i,
@@ -25,7 +25,7 @@ function u({ title: t, variant: o = "page", start: u, end: d, "aria-label": f, c
25
25
  children: d
26
26
  })]
27
27
  }) : /* @__PURE__ */ c("header", {
28
- "aria-label": g,
28
+ "aria-label": f,
29
29
  className: e(r[o], p),
30
30
  children: [/* @__PURE__ */ c("div", {
31
31
  className: i,
@@ -1,21 +1,21 @@
1
1
  "use client";
2
2
  import { cn as e } from "../../../lib/cn.js";
3
- import { motionTransition as t } from "../../../lib/motion.js";
4
- import { clusterHeightClasses as n } from "../../../lib/clusterScale.js";
3
+ import { clusterHeightClasses as t } from "../../../lib/clusterScale.js";
4
+ import { motionTransition as n } from "../../../lib/motion.js";
5
5
  //#region src/components/molecules/SegmentedControl/segmentedControlStyles.ts
6
6
  var r = [
7
7
  "sm",
8
8
  "md",
9
9
  "lg"
10
- ], i = ["hug", "stretch"], a = e("relative inline-flex items-stretch rounded-full bg-body p-0.5 shadow-hairline", t("fast")), o = "flex w-full min-w-0", s = {
11
- sm: n.sm,
12
- md: n.md,
13
- lg: n.lg
10
+ ], i = ["hug", "stretch"], a = e("relative inline-flex items-stretch rounded-full bg-body p-0.5 shadow-hairline", n("fast")), o = "flex w-full min-w-0", s = {
11
+ sm: t.sm,
12
+ md: t.md,
13
+ lg: t.lg
14
14
  }, c = {
15
15
  sm: "px-2.5 text-xs leading-none",
16
16
  md: "px-3 text-sm leading-none",
17
17
  lg: "px-4 text-sm leading-none"
18
- }, l = e("relative inline-flex shrink-0 cursor-pointer items-center justify-center rounded-full font-sans font-medium tracking-normal", "transition-[color] focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-focus-ring focus-visible:ring-inset", t("fast")), u = "min-w-0 flex-1", d = "relative z-10 inline-flex min-w-0 items-center justify-center", f = "w-full", p = {
18
+ }, l = e("relative inline-flex shrink-0 cursor-pointer items-center justify-center rounded-full font-sans font-medium tracking-normal", "transition-[color] focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-focus-ring focus-visible:ring-inset", n("fast")), u = "min-w-0 flex-1", d = "relative z-10 inline-flex min-w-0 items-center justify-center", f = "w-full", p = {
19
19
  sm: "gap-1",
20
20
  md: "gap-1.5",
21
21
  lg: "gap-2"
@@ -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 };