@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,200 @@
1
+ "use client";
2
+ import { cn as e } from "../../../lib/cn.js";
3
+ import { Badge as t } from "../../atoms/Badge/Badge.js";
4
+ import { TextLink as n } from "../../atoms/TextLink/TextLink.js";
5
+ import { Skeleton as r } from "../../atoms/Skeleton/Skeleton.js";
6
+ import { Status as i } from "../../atoms/Status/Status.js";
7
+ import { taskRowsTableClasses as a, taskRowsTableColumnsClasses as o, taskRowsTableDetailClasses as s, taskRowsTableEmptyClasses as c, taskRowsTableErrorClasses as l, taskRowsTableHeadCellClasses as u, taskRowsTableHeadClasses as d, taskRowsTableMetricClasses as f, taskRowsTableMetricValueClasses as p, taskRowsTableMobileLineClasses as m, taskRowsTableNoteClasses as h, taskRowsTableRowClasses as g, taskRowsTableStatusClasses as _, taskRowsTableStatusLabelClasses as v, taskRowsTableTitleClasses as y, taskRowsTableWaitingClasses as b } from "./taskRowsStyles.js";
8
+ import { Children as x } from "react";
9
+ import { jsx as S, jsxs as C } from "react/jsx-runtime";
10
+ //#region src/components/molecules/TaskRows/TaskRowsTable.tsx
11
+ var w = [
12
+ "title",
13
+ "waiting",
14
+ "metric"
15
+ ], T = [
16
+ "ready",
17
+ "loading",
18
+ "error",
19
+ "unwired"
20
+ ], E = [
21
+ {
22
+ id: "title",
23
+ header: "Item"
24
+ },
25
+ {
26
+ id: "waiting",
27
+ header: "Waiting"
28
+ },
29
+ {
30
+ id: "metric",
31
+ header: "Metric",
32
+ align: "end"
33
+ }
34
+ ];
35
+ function D({ columns: t = E, empty: n = "Nothing waiting", className: r, children: i, ...s }) {
36
+ let l = x.toArray(i).filter(Boolean), f = [
37
+ "minmax(0,1.6fr)",
38
+ "minmax(0,1.2fr)",
39
+ "7rem"
40
+ ], p = { "--task-rows-columns": t.map((e, t) => e.width ?? f[t] ?? "minmax(0,1fr)").join(" ") };
41
+ return /* @__PURE__ */ C("div", {
42
+ ...s,
43
+ role: "table",
44
+ className: e(a, r),
45
+ style: {
46
+ ...s.style,
47
+ ...p
48
+ },
49
+ children: [/* @__PURE__ */ S("div", {
50
+ role: "row",
51
+ className: e(d, o),
52
+ children: t.map((t) => /* @__PURE__ */ S("div", {
53
+ role: "columnheader",
54
+ className: e(u, t.align === "end" && "md:text-end"),
55
+ children: t.header
56
+ }, t.id))
57
+ }), l.length === 0 ? /* @__PURE__ */ S("div", {
58
+ role: "row",
59
+ children: /* @__PURE__ */ S("div", {
60
+ role: "cell",
61
+ children: /* @__PURE__ */ S("p", {
62
+ className: c,
63
+ role: "status",
64
+ children: n
65
+ })
66
+ })
67
+ }) : l]
68
+ });
69
+ }
70
+ function O(e, t) {
71
+ return e.some((e) => e.id === t);
72
+ }
73
+ function k(e, t) {
74
+ return e.find((e) => e.id === t)?.align ?? "start";
75
+ }
76
+ function A({ title: n, href: i, render: a, status: c, waiting: u, metric: d, source: _ = "ready", note: v, columns: x }) {
77
+ let w = O(x, "waiting"), T = O(x, "metric"), E = k(x, "metric") === "end", D = _ === "error" || _ === "unwired";
78
+ return /* @__PURE__ */ C("div", {
79
+ role: "row",
80
+ className: e(g, o),
81
+ "aria-busy": _ === "loading" || void 0,
82
+ children: [
83
+ /* @__PURE__ */ C("div", {
84
+ role: "cell",
85
+ className: "min-w-0",
86
+ children: [
87
+ _ === "loading" ? /* @__PURE__ */ S(r, {
88
+ width: 168,
89
+ height: 16,
90
+ radius: "inner",
91
+ index: 0
92
+ }) : /* @__PURE__ */ S("h3", {
93
+ className: y,
94
+ children: /* @__PURE__ */ S(M, {
95
+ title: n,
96
+ href: i,
97
+ render: a
98
+ })
99
+ }),
100
+ _ === "loading" ? /* @__PURE__ */ S(r, {
101
+ width: 120,
102
+ height: 12,
103
+ radius: "inner",
104
+ index: 1,
105
+ className: "mt-2 md:hidden"
106
+ }) : null,
107
+ D && v ? /* @__PURE__ */ S("p", {
108
+ className: _ === "error" ? l : h,
109
+ children: v
110
+ }) : null,
111
+ _ === "ready" && c ? /* @__PURE__ */ S("div", {
112
+ className: "mt-1 max-md:hidden md:block",
113
+ children: /* @__PURE__ */ S(j, { status: c })
114
+ }) : null,
115
+ _ === "ready" ? /* @__PURE__ */ C("div", {
116
+ className: m,
117
+ children: [
118
+ c ? /* @__PURE__ */ S(j, { status: c }) : null,
119
+ w && u?.detail ? /* @__PURE__ */ S("span", {
120
+ className: s,
121
+ children: u.detail
122
+ }) : null,
123
+ T && d ? /* @__PURE__ */ S("span", {
124
+ className: p,
125
+ children: d.value
126
+ }) : null
127
+ ]
128
+ }) : null
129
+ ]
130
+ }),
131
+ w ? /* @__PURE__ */ C("div", {
132
+ role: "cell",
133
+ className: "max-md:hidden min-w-0 md:block",
134
+ children: [_ === "loading" ? /* @__PURE__ */ S(r, {
135
+ width: 112,
136
+ height: 20,
137
+ radius: "full",
138
+ index: 2
139
+ }) : null, _ === "ready" && u ? /* @__PURE__ */ C("span", {
140
+ className: b,
141
+ children: [/* @__PURE__ */ S(t, {
142
+ emphasis: "muted",
143
+ size: "sm",
144
+ children: u.label
145
+ }), u.detail ? /* @__PURE__ */ S("span", {
146
+ className: s,
147
+ children: u.detail
148
+ }) : null]
149
+ }) : null]
150
+ }) : null,
151
+ T ? /* @__PURE__ */ C("div", {
152
+ role: "cell",
153
+ className: e("max-md:hidden min-w-0 md:block", E && "md:text-end"),
154
+ children: [_ === "loading" ? /* @__PURE__ */ S(r, {
155
+ width: 40,
156
+ height: 16,
157
+ radius: "inner",
158
+ index: 3,
159
+ className: "md:ml-auto"
160
+ }) : null, _ === "ready" && d ? /* @__PURE__ */ C("span", {
161
+ className: f,
162
+ children: [/* @__PURE__ */ S("span", {
163
+ className: p,
164
+ children: d.value
165
+ }), d.detail ? /* @__PURE__ */ S("span", {
166
+ className: s,
167
+ children: d.detail
168
+ }) : null]
169
+ }) : null]
170
+ }) : null
171
+ ]
172
+ });
173
+ }
174
+ function j({ status: e }) {
175
+ return /* @__PURE__ */ C("span", {
176
+ className: _,
177
+ children: [/* @__PURE__ */ S(i, {
178
+ variant: "dot",
179
+ tone: e.tone ?? "neutral",
180
+ besideLabel: !0,
181
+ pulsing: e.pulsing
182
+ }), /* @__PURE__ */ S("span", {
183
+ className: v,
184
+ children: e.label
185
+ })]
186
+ });
187
+ }
188
+ function M({ title: e, href: t, render: r }) {
189
+ return r ? (t != null && console.warn("[WMDS TaskRows] `render` wins over `href`."), /* @__PURE__ */ S(n, {
190
+ variant: "quiet",
191
+ render: r,
192
+ children: e
193
+ })) : t == null ? e : /* @__PURE__ */ S(n, {
194
+ variant: "quiet",
195
+ href: t,
196
+ children: e
197
+ });
198
+ }
199
+ //#endregion
200
+ export { A as TaskRowsRow, D as TaskRowsTable, w as taskRowsTableColumnIds, E as taskRowsTableColumnsDefault, T as taskRowsTableSources };
@@ -1,4 +1,4 @@
1
- export declare const taskRowsVariants: readonly ["list", "capsule"];
1
+ export declare const taskRowsVariants: readonly ["list", "capsule", "table"];
2
2
  export type TaskRowsVariant = (typeof taskRowsVariants)[number];
3
3
  export declare const taskRowStatuses: readonly ["none", "done", "running", "pending", "failed"];
4
4
  export type TaskRowStatus = (typeof taskRowStatuses)[number];
@@ -29,4 +29,22 @@ export declare const taskRowsDetailsListClasses = "flex flex-col gap-1.5";
29
29
  export declare const taskRowsDetailRowClasses = "flex w-full items-center justify-between gap-3 text-left";
30
30
  export declare const taskRowsDetailLabelClasses: string;
31
31
  export declare const taskRowsDetailMetaClasses: string;
32
+ /** Needs-you table — column headers from `md`, two-line rows below. */
33
+ export declare const taskRowsTableClasses = "flex w-full min-w-0 flex-col";
34
+ export declare const taskRowsTableHeadClasses = "max-md:sr-only md:grid md:items-baseline md:gap-4 md:border-b md:border-border md:pb-2";
35
+ export declare const taskRowsTableHeadCellClasses: string;
36
+ export declare const taskRowsTableColumnsClasses = "md:[grid-template-columns:var(--task-rows-columns)]";
37
+ export declare const taskRowsTableRowClasses = "grid grid-cols-1 gap-1 border-b border-border py-3 last:border-b-0 md:items-center md:gap-4";
38
+ export declare const taskRowsTableTitleClasses: string;
39
+ export declare const taskRowsTableStatusClasses = "flex min-w-0 items-center gap-2 text-muted";
40
+ export declare const taskRowsTableStatusLabelClasses: string;
41
+ export declare const taskRowsTableWaitingClasses = "flex min-w-0 flex-col items-start gap-1";
42
+ export declare const taskRowsTableDetailClasses: string;
43
+ export declare const taskRowsTableMetricClasses = "flex min-w-0 flex-col gap-1 md:items-end";
44
+ export declare const taskRowsTableMetricValueClasses = "font-mono text-sm tabular-nums leading-none text-fg";
45
+ export declare const taskRowsTableMobileLineClasses = "max-md:flex min-w-0 flex-wrap items-center gap-x-2 gap-y-1 md:hidden";
46
+ export declare const taskRowsTableNoteClasses: string;
47
+ export declare const taskRowsTableErrorClasses = "type-supporting text-destructive";
48
+ export declare const taskRowsTableEmptyClasses: string;
49
+ export declare const taskRowsTableAlignEndClasses = "md:text-end";
32
50
  //# sourceMappingURL=taskRowsStyles.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"taskRowsStyles.d.ts","sourceRoot":"","sources":["../../../../src/components/molecules/TaskRows/taskRowsStyles.ts"],"names":[],"mappings":"AAEA,eAAO,MAAM,gBAAgB,8BAA+B,CAAC;AAE7D,MAAM,MAAM,eAAe,GAAG,CAAC,OAAO,gBAAgB,CAAC,CAAC,MAAM,CAAC,CAAC;AAEhE,eAAO,MAAM,eAAe,2DAA4D,CAAC;AAEzF,MAAM,MAAM,aAAa,GAAG,CAAC,OAAO,eAAe,CAAC,CAAC,MAAM,CAAC,CAAC;AAE7D,eAAO,MAAM,qBAAqB,wCAAyC,CAAC;AAE5E,MAAM,MAAM,oBAAoB,GAAG,CAAC,OAAO,qBAAqB,CAAC,CAAC,MAAM,CAAC,CAAC;AAE1E,eAAO,MAAM,sBAAsB,4BAA6B,CAAC;AAEjE,MAAM,MAAM,qBAAqB,GAAG,CAAC,OAAO,sBAAsB,CAAC,CAAC,MAAM,CAAC,CAAC;AAE5E,4FAA4F;AAC5F,eAAO,MAAM,yBAAyB,qDAAqD,CAAC;AAE5F,uGAAuG;AACvG,eAAO,MAAM,8BAA8B,qCAAqC,CAAC;AAEjF,eAAO,MAAM,mBAAmB,QAAmE,CAAC;AAEpG,eAAO,MAAM,0BAA0B,yDACiB,CAAC;AAEzD,qEAAqE;AACrE,eAAO,MAAM,gCAAgC,kBAAkB,CAAC;AAEhE,qEAAqE;AACrE,eAAO,MAAM,2BAA2B,0BAA0B,CAAC;AAEnE,4FAA4F;AAC5F,eAAO,MAAM,6BAA6B,kDAAkD,CAAC;AAE7F,oEAAoE;AACpE,eAAO,MAAM,2BAA2B,yCAAyC,CAAC;AAElF,eAAO,MAAM,2BAA2B,QAAkD,CAAC;AAE3F,eAAO,MAAM,2BAA2B,0BAA0B,CAAC;AAEnE,6FAA6F;AAC7F,eAAO,MAAM,2BAA2B,uCAAuC,CAAC;AAEhF,eAAO,MAAM,0BAA0B,kCAAkC,CAAC;AAE1E,eAAO,MAAM,0BAA0B,0BAA0B,CAAC;AAElE,eAAO,MAAM,wBAAwB,6DACuB,CAAC;AAE7D,eAAO,MAAM,0BAA0B,QAA6C,CAAC;AAErF,eAAO,MAAM,yBAAyB,QAAoE,CAAC"}
1
+ {"version":3,"file":"taskRowsStyles.d.ts","sourceRoot":"","sources":["../../../../src/components/molecules/TaskRows/taskRowsStyles.ts"],"names":[],"mappings":"AAEA,eAAO,MAAM,gBAAgB,uCAAwC,CAAC;AAEtE,MAAM,MAAM,eAAe,GAAG,CAAC,OAAO,gBAAgB,CAAC,CAAC,MAAM,CAAC,CAAC;AAEhE,eAAO,MAAM,eAAe,2DAA4D,CAAC;AAEzF,MAAM,MAAM,aAAa,GAAG,CAAC,OAAO,eAAe,CAAC,CAAC,MAAM,CAAC,CAAC;AAE7D,eAAO,MAAM,qBAAqB,wCAAyC,CAAC;AAE5E,MAAM,MAAM,oBAAoB,GAAG,CAAC,OAAO,qBAAqB,CAAC,CAAC,MAAM,CAAC,CAAC;AAE1E,eAAO,MAAM,sBAAsB,4BAA6B,CAAC;AAEjE,MAAM,MAAM,qBAAqB,GAAG,CAAC,OAAO,sBAAsB,CAAC,CAAC,MAAM,CAAC,CAAC;AAE5E,4FAA4F;AAC5F,eAAO,MAAM,yBAAyB,qDAAqD,CAAC;AAE5F,uGAAuG;AACvG,eAAO,MAAM,8BAA8B,qCAAqC,CAAC;AAEjF,eAAO,MAAM,mBAAmB,QAAmE,CAAC;AAEpG,eAAO,MAAM,0BAA0B,yDACiB,CAAC;AAEzD,qEAAqE;AACrE,eAAO,MAAM,gCAAgC,kBAAkB,CAAC;AAEhE,qEAAqE;AACrE,eAAO,MAAM,2BAA2B,0BAA0B,CAAC;AAEnE,4FAA4F;AAC5F,eAAO,MAAM,6BAA6B,kDAAkD,CAAC;AAE7F,oEAAoE;AACpE,eAAO,MAAM,2BAA2B,yCAAyC,CAAC;AAElF,eAAO,MAAM,2BAA2B,QAAkD,CAAC;AAE3F,eAAO,MAAM,2BAA2B,0BAA0B,CAAC;AAEnE,6FAA6F;AAC7F,eAAO,MAAM,2BAA2B,uCAAuC,CAAC;AAEhF,eAAO,MAAM,0BAA0B,kCAAkC,CAAC;AAE1E,eAAO,MAAM,0BAA0B,0BAA0B,CAAC;AAElE,eAAO,MAAM,wBAAwB,6DACuB,CAAC;AAE7D,eAAO,MAAM,0BAA0B,QAA6C,CAAC;AAErF,eAAO,MAAM,yBAAyB,QAAoE,CAAC;AAE3G,uEAAuE;AACvE,eAAO,MAAM,oBAAoB,iCAAiC,CAAC;AAEnE,eAAO,MAAM,wBAAwB,2FACqD,CAAC;AAE3F,eAAO,MAAM,4BAA4B,QAA6C,CAAC;AAEvF,eAAO,MAAM,2BAA2B,wDAAwD,CAAC;AAEjG,eAAO,MAAM,uBAAuB,gGAC2D,CAAC;AAEhG,eAAO,MAAM,yBAAyB,QAAmD,CAAC;AAE1F,eAAO,MAAM,0BAA0B,+CAA+C,CAAC;AAEvF,eAAO,MAAM,+BAA+B,QAA6C,CAAC;AAE1F,eAAO,MAAM,2BAA2B,4CAA4C,CAAC;AAErF,eAAO,MAAM,0BAA0B,QAA6C,CAAC;AAErF,eAAO,MAAM,0BAA0B,6CAA6C,CAAC;AAErF,eAAO,MAAM,+BAA+B,wDACW,CAAC;AAExD,eAAO,MAAM,8BAA8B,yEAC6B,CAAC;AAEzE,eAAO,MAAM,wBAAwB,QAA6C,CAAC;AAEnF,eAAO,MAAM,yBAAyB,qCAAqC,CAAC;AAE5E,eAAO,MAAM,yBAAyB,QAA2D,CAAC;AAElG,eAAO,MAAM,4BAA4B,gBAAgB,CAAC"}
@@ -1,7 +1,11 @@
1
1
  "use client";
2
2
  import { typographyClass as e } from "../../../lib/typography.js";
3
3
  //#region src/components/molecules/TaskRows/taskRowsStyles.ts
4
- var t = ["list", "capsule"], n = [
4
+ var t = [
5
+ "list",
6
+ "capsule",
7
+ "table"
8
+ ], n = [
5
9
  "none",
6
10
  "done",
7
11
  "running",
@@ -11,6 +15,6 @@ var t = ["list", "capsule"], n = [
11
15
  "stack",
12
16
  "actions",
13
17
  "chips"
14
- ], i = ["row", "button"], a = "flex size-6 shrink-0 items-center justify-center", o = "flex shrink-0 items-center gap-2", s = `${e("caption")} shrink-0 tabular-nums text-muted`, c = "grid grid-cols-[1.5rem_minmax(0,1fr)] gap-x-2.5 pt-0", l = "flex flex-col", u = "flex flex-col gap-1.5", d = "flex w-full flex-nowrap items-stretch gap-2.5", f = "flex w-full flex-row flex-wrap gap-2", p = `${e("caption")} mb-2 text-muted`, m = "flex min-w-0 flex-col", h = "min-w-max flex-1 whitespace-nowrap", g = "mx-auto h-full w-px bg-border", _ = "flex flex-col gap-1.5", v = "flex w-full items-center justify-between gap-3 text-left", y = `${e("caption")} text-muted`, b = `${e("caption")} font-mono tabular-nums text-muted`;
18
+ ], i = ["row", "button"], a = "flex size-6 shrink-0 items-center justify-center", o = "flex shrink-0 items-center gap-2", s = `${e("caption")} shrink-0 tabular-nums text-muted`, c = "grid grid-cols-[1.5rem_minmax(0,1fr)] gap-x-2.5 pt-0", l = "flex flex-col", u = "flex flex-col gap-1.5", d = "flex w-full flex-nowrap items-stretch gap-2.5", f = "flex w-full flex-row flex-wrap gap-2", p = `${e("caption")} mb-2 text-muted`, m = "flex min-w-0 flex-col", h = "min-w-max flex-1 whitespace-nowrap", g = "mx-auto h-full w-px bg-border", _ = "flex flex-col gap-1.5", v = "flex w-full items-center justify-between gap-3 text-left", y = `${e("caption")} text-muted`, b = `${e("caption")} font-mono tabular-nums text-muted`, x = "flex w-full min-w-0 flex-col", S = "max-md:sr-only md:grid md:items-baseline md:gap-4 md:border-b md:border-border md:pb-2", C = `${e("caption")} text-muted`, w = "md:[grid-template-columns:var(--task-rows-columns)]", T = "grid grid-cols-1 gap-1 border-b border-border py-3 last:border-b-0 md:items-center md:gap-4", E = `${e("ui-label")} min-w-0 text-fg`, D = "flex min-w-0 items-center gap-2 text-muted", O = `${e("caption")} text-muted`, k = "flex min-w-0 flex-col items-start gap-1", A = `${e("caption")} text-muted`, j = "flex min-w-0 flex-col gap-1 md:items-end", M = "font-mono text-sm tabular-nums leading-none text-fg", N = "max-md:flex min-w-0 flex-wrap items-center gap-x-2 gap-y-1 md:hidden", P = `${e("caption")} text-muted`, F = "type-supporting text-destructive", I = `${e("body")} py-6 text-center text-muted`, L = "md:text-end";
15
19
  //#endregion
16
- export { n as taskRowStatuses, h as taskRowsDetailButtonClasses, y as taskRowsDetailLabelClasses, r as taskRowsDetailLayouts, b as taskRowsDetailMetaClasses, v as taskRowsDetailRowClasses, i as taskRowsDetailVariants, d as taskRowsDetailsActionsClasses, f as taskRowsDetailsChipsClasses, l as taskRowsDetailsExpandOnlyClasses, c as taskRowsDetailsGridClasses, p as taskRowsDetailsLabelClasses, _ as taskRowsDetailsListClasses, m as taskRowsDetailsPanelClasses, u as taskRowsDetailsPlainClasses, g as taskRowsDetailsRailClasses, s as taskRowsMetaClasses, a as taskRowsStatusSlotClasses, o as taskRowsTrailingClusterClasses, t as taskRowsVariants };
20
+ export { n as taskRowStatuses, h as taskRowsDetailButtonClasses, y as taskRowsDetailLabelClasses, r as taskRowsDetailLayouts, b as taskRowsDetailMetaClasses, v as taskRowsDetailRowClasses, i as taskRowsDetailVariants, d as taskRowsDetailsActionsClasses, f as taskRowsDetailsChipsClasses, l as taskRowsDetailsExpandOnlyClasses, c as taskRowsDetailsGridClasses, p as taskRowsDetailsLabelClasses, _ as taskRowsDetailsListClasses, m as taskRowsDetailsPanelClasses, u as taskRowsDetailsPlainClasses, g as taskRowsDetailsRailClasses, s as taskRowsMetaClasses, a as taskRowsStatusSlotClasses, L as taskRowsTableAlignEndClasses, x as taskRowsTableClasses, w as taskRowsTableColumnsClasses, A as taskRowsTableDetailClasses, I as taskRowsTableEmptyClasses, F as taskRowsTableErrorClasses, C as taskRowsTableHeadCellClasses, S as taskRowsTableHeadClasses, j as taskRowsTableMetricClasses, M as taskRowsTableMetricValueClasses, N as taskRowsTableMobileLineClasses, P as taskRowsTableNoteClasses, T as taskRowsTableRowClasses, D as taskRowsTableStatusClasses, O as taskRowsTableStatusLabelClasses, E as taskRowsTableTitleClasses, k as taskRowsTableWaitingClasses, o as taskRowsTrailingClusterClasses, t as taskRowsVariants };
@@ -0,0 +1,82 @@
1
+ import { type ReactNode } from "react";
2
+ /** Layout-only — height and placement of the shell. */
3
+ export type AppShellLayoutClassName = string;
4
+ export interface AppShellLabels {
5
+ /** Accessible name and tooltip of the collapse toggle while the sidebar is open. */
6
+ collapse: string;
7
+ /** Accessible name and tooltip of the collapse toggle while the sidebar is collapsed. */
8
+ expand: string;
9
+ /** Name of the phone menu button and the **Sheet** title. */
10
+ menu: string;
11
+ /** Default title of the aside **Panel**. */
12
+ aside: string;
13
+ }
14
+ export interface AppShellProps {
15
+ /** Page title — the `h1` in the title bar. */
16
+ title: string;
17
+ /** Brand row at the top of the sidebar — wordmark or **Avatar** + name. Same 56px band as the title bar. */
18
+ brand?: ReactNode;
19
+ /** Sidebar body — a **NavList**. Omit it for a shell with no sidebar. */
20
+ sidebar?: ReactNode;
21
+ /** Pinned to the bottom of the sidebar and the phone menu while the **NavList** above it scrolls — a **DisplayControls** `controls="theme"` switch, an account row. */
22
+ sidebarFooter?: ReactNode;
23
+ /** Trailing title-bar controls — **Button**, **Avatar**, **MoreMenu** at one cluster tier. */
24
+ header?: ReactNode;
25
+ /** Right slide-out content, in a non-blocking **Panel**. Omit it for no aside. */
26
+ aside?: ReactNode;
27
+ /** Title of the aside **Panel**. Defaults to `labels.aside`. */
28
+ asideTitle?: ReactNode;
29
+ asideDescription?: ReactNode;
30
+ /** Desktop sidebar expanded — controlled. */
31
+ sidebarOpen?: boolean;
32
+ defaultSidebarOpen?: boolean;
33
+ onSidebarOpenChange?: (open: boolean) => void;
34
+ /** Aside open — controlled. */
35
+ asideOpen?: boolean;
36
+ defaultAsideOpen?: boolean;
37
+ onAsideOpenChange?: (open: boolean) => void;
38
+ labels?: Partial<AppShellLabels>;
39
+ /** Page content. **AppShell.Brand**, **Sidebar**, **Header**, and **Aside** children fill their slots instead. */
40
+ children?: ReactNode;
41
+ className?: AppShellLayoutClassName;
42
+ }
43
+ interface AppShellSlotProps {
44
+ children?: ReactNode;
45
+ }
46
+ interface AppShellAsideSlotProps extends AppShellSlotProps {
47
+ title?: ReactNode;
48
+ description?: ReactNode;
49
+ }
50
+ declare function AppShellBrand({ children }: AppShellSlotProps): import("react").JSX.Element;
51
+ declare function AppShellSidebar({ children }: AppShellSlotProps): import("react").JSX.Element;
52
+ declare function AppShellSidebarFooter({ children }: AppShellSlotProps): import("react").JSX.Element;
53
+ declare function AppShellHeader({ children }: AppShellSlotProps): import("react").JSX.Element;
54
+ declare function AppShellAside({ children }: AppShellAsideSlotProps): import("react").JSX.Element;
55
+ export interface AppShellContextValue {
56
+ /** Desktop sidebar is expanded. */
57
+ sidebarOpen: boolean;
58
+ setSidebarOpen: (open: boolean) => void;
59
+ /** Phone menu **Sheet** is open. */
60
+ menuOpen: boolean;
61
+ setMenuOpen: (open: boolean) => void;
62
+ asideOpen: boolean;
63
+ setAsideOpen: (open: boolean) => void;
64
+ /** Collapses or expands the sidebar from `lg`; opens or closes the menu below it. */
65
+ toggleSidebar: () => void;
66
+ }
67
+ /** State of the nearest **AppShell** — for a header button that opens the aside. */
68
+ export declare function useAppShell(): AppShellContextValue;
69
+ declare function AppShellRoot({ title, brand: brandProp, sidebar: sidebarProp, sidebarFooter: sidebarFooterProp, header: headerProp, aside: asideProp, asideTitle, asideDescription, sidebarOpen: sidebarOpenProp, defaultSidebarOpen, onSidebarOpenChange, asideOpen: asideOpenProp, defaultAsideOpen, onAsideOpenChange, labels: labelsProp, children, className, }: AppShellProps): import("react").JSX.Element;
70
+ /**
71
+ * App chrome — a sidebar on the page background and the page as an inset, raised surface with a
72
+ * title bar. Below `lg` the sidebar is a start **Sheet**; the optional aside is a non-blocking **Panel**.
73
+ */
74
+ export declare const AppShell: typeof AppShellRoot & {
75
+ Brand: typeof AppShellBrand;
76
+ Sidebar: typeof AppShellSidebar;
77
+ SidebarFooter: typeof AppShellSidebarFooter;
78
+ Header: typeof AppShellHeader;
79
+ Aside: typeof AppShellAside;
80
+ };
81
+ export {};
82
+ //# sourceMappingURL=AppShell.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"AppShell.d.ts","sourceRoot":"","sources":["../../../../src/components/organisms/AppShell/AppShell.tsx"],"names":[],"mappings":"AAAA,OAAO,EAYL,KAAK,SAAS,EACf,MAAM,OAAO,CAAC;AAuBf,uDAAuD;AACvD,MAAM,MAAM,uBAAuB,GAAG,MAAM,CAAC;AAE7C,MAAM,WAAW,cAAc;IAC7B,oFAAoF;IACpF,QAAQ,EAAE,MAAM,CAAC;IACjB,yFAAyF;IACzF,MAAM,EAAE,MAAM,CAAC;IACf,6DAA6D;IAC7D,IAAI,EAAE,MAAM,CAAC;IACb,4CAA4C;IAC5C,KAAK,EAAE,MAAM,CAAC;CACf;AASD,MAAM,WAAW,aAAa;IAC5B,8CAA8C;IAC9C,KAAK,EAAE,MAAM,CAAC;IACd,4GAA4G;IAC5G,KAAK,CAAC,EAAE,SAAS,CAAC;IAClB,yEAAyE;IACzE,OAAO,CAAC,EAAE,SAAS,CAAC;IACpB,uKAAuK;IACvK,aAAa,CAAC,EAAE,SAAS,CAAC;IAC1B,8FAA8F;IAC9F,MAAM,CAAC,EAAE,SAAS,CAAC;IACnB,kFAAkF;IAClF,KAAK,CAAC,EAAE,SAAS,CAAC;IAClB,gEAAgE;IAChE,UAAU,CAAC,EAAE,SAAS,CAAC;IACvB,gBAAgB,CAAC,EAAE,SAAS,CAAC;IAC7B,6CAA6C;IAC7C,WAAW,CAAC,EAAE,OAAO,CAAC;IACtB,kBAAkB,CAAC,EAAE,OAAO,CAAC;IAC7B,mBAAmB,CAAC,EAAE,CAAC,IAAI,EAAE,OAAO,KAAK,IAAI,CAAC;IAC9C,+BAA+B;IAC/B,SAAS,CAAC,EAAE,OAAO,CAAC;IACpB,gBAAgB,CAAC,EAAE,OAAO,CAAC;IAC3B,iBAAiB,CAAC,EAAE,CAAC,IAAI,EAAE,OAAO,KAAK,IAAI,CAAC;IAC5C,MAAM,CAAC,EAAE,OAAO,CAAC,cAAc,CAAC,CAAC;IACjC,kHAAkH;IAClH,QAAQ,CAAC,EAAE,SAAS,CAAC;IACrB,SAAS,CAAC,EAAE,uBAAuB,CAAC;CACrC;AAED,UAAU,iBAAiB;IACzB,QAAQ,CAAC,EAAE,SAAS,CAAC;CACtB;AAED,UAAU,sBAAuB,SAAQ,iBAAiB;IACxD,KAAK,CAAC,EAAE,SAAS,CAAC;IAClB,WAAW,CAAC,EAAE,SAAS,CAAC;CACzB;AAED,iBAAS,aAAa,CAAC,EAAE,QAAQ,EAAE,EAAE,iBAAiB,+BAErD;AAED,iBAAS,eAAe,CAAC,EAAE,QAAQ,EAAE,EAAE,iBAAiB,+BAEvD;AAED,iBAAS,qBAAqB,CAAC,EAAE,QAAQ,EAAE,EAAE,iBAAiB,+BAE7D;AAED,iBAAS,cAAc,CAAC,EAAE,QAAQ,EAAE,EAAE,iBAAiB,+BAEtD;AAED,iBAAS,aAAa,CAAC,EAAE,QAAQ,EAAE,EAAE,sBAAsB,+BAE1D;AAED,MAAM,WAAW,oBAAoB;IACnC,mCAAmC;IACnC,WAAW,EAAE,OAAO,CAAC;IACrB,cAAc,EAAE,CAAC,IAAI,EAAE,OAAO,KAAK,IAAI,CAAC;IACxC,oCAAoC;IACpC,QAAQ,EAAE,OAAO,CAAC;IAClB,WAAW,EAAE,CAAC,IAAI,EAAE,OAAO,KAAK,IAAI,CAAC;IACrC,SAAS,EAAE,OAAO,CAAC;IACnB,YAAY,EAAE,CAAC,IAAI,EAAE,OAAO,KAAK,IAAI,CAAC;IACtC,qFAAqF;IACrF,aAAa,EAAE,MAAM,IAAI,CAAC;CAC3B;AAID,oFAAoF;AACpF,wBAAgB,WAAW,IAAI,oBAAoB,CAMlD;AAkDD,iBAAS,YAAY,CAAC,EACpB,KAAK,EACL,KAAK,EAAE,SAAS,EAChB,OAAO,EAAE,WAAW,EACpB,aAAa,EAAE,iBAAiB,EAChC,MAAM,EAAE,UAAU,EAClB,KAAK,EAAE,SAAS,EAChB,UAAU,EACV,gBAAgB,EAChB,WAAW,EAAE,eAAe,EAC5B,kBAAyB,EACzB,mBAAmB,EACnB,SAAS,EAAE,aAAa,EACxB,gBAAwB,EACxB,iBAAiB,EACjB,MAAM,EAAE,UAAU,EAClB,QAAQ,EACR,SAAS,GACV,EAAE,aAAa,+BA0Lf;AAED;;;GAGG;AACH,eAAO,MAAM,QAAQ;;;;;;CAMnB,CAAC"}
@@ -0,0 +1,222 @@
1
+ "use client";
2
+ import { cn as e } from "../../../lib/cn.js";
3
+ import { IconButton as t } from "../../atoms/IconButton/IconButton.js";
4
+ import { Kbd as n } from "../../atoms/Kbd/Kbd.js";
5
+ import { Tooltip as r } from "../../atoms/Tooltip/Tooltip.js";
6
+ import { PageHeader as i } from "../../molecules/PageHeader/PageHeader.js";
7
+ import { Panel as a } from "../Panel/Panel.js";
8
+ import { Sheet as o } from "../Sheet/Sheet.js";
9
+ import { appShellBrandClasses as s, appShellCanvasClasses as ee, appShellMainClasses as te, appShellRootClasses as ne, appShellSheetBodyClasses as re, appShellSidebarBodyClasses as c, appShellSidebarClasses as ie, appShellSidebarFooterClasses as ae, appShellSurfaceClasses as oe, appShellToggleDesktopClasses as se, appShellToggleMobileClasses as l } from "./appShellStyles.js";
10
+ import { Children as u, createContext as d, isValidElement as f, useCallback as p, useContext as m, useEffect as h, useId as ce, useMemo as le, useRef as g, useState as _ } from "react";
11
+ import { PanelLeft as v } from "lucide-react";
12
+ import { Fragment as y, jsx as b, jsxs as x } from "react/jsx-runtime";
13
+ //#region src/components/organisms/AppShell/AppShell.tsx
14
+ var ue = {
15
+ collapse: "Collapse sidebar",
16
+ expand: "Expand sidebar",
17
+ menu: "Menu",
18
+ aside: "Details"
19
+ };
20
+ function S({ children: e }) {
21
+ return /* @__PURE__ */ b(y, { children: e });
22
+ }
23
+ function C({ children: e }) {
24
+ return /* @__PURE__ */ b(y, { children: e });
25
+ }
26
+ function w({ children: e }) {
27
+ return /* @__PURE__ */ b(y, { children: e });
28
+ }
29
+ function T({ children: e }) {
30
+ return /* @__PURE__ */ b(y, { children: e });
31
+ }
32
+ function E({ children: e }) {
33
+ return /* @__PURE__ */ b(y, { children: e });
34
+ }
35
+ var D = d(null);
36
+ function O() {
37
+ let e = m(D);
38
+ if (e == null) throw Error("useAppShell must be used inside <AppShell>.");
39
+ return e;
40
+ }
41
+ function k(e, t, n) {
42
+ let [r, i] = _(t);
43
+ return [e ?? r, p((t) => {
44
+ e ?? i(t), n?.(t);
45
+ }, [e, n])];
46
+ }
47
+ var A = "(min-width: 1024px)";
48
+ function de(e) {
49
+ return e instanceof HTMLElement && e.isContentEditable;
50
+ }
51
+ function fe(e) {
52
+ let t = { content: [] };
53
+ return u.forEach(e, (e) => {
54
+ if (!f(e)) {
55
+ e != null && e !== !1 && t.content.push(e);
56
+ return;
57
+ }
58
+ e.type === S ? t.brand = e.props.children : e.type === C ? t.sidebar = e.props.children : e.type === w ? t.sidebarFooter = e.props.children : e.type === T ? t.header = e.props.children : e.type === E ? t.aside = e.props : t.content.push(e);
59
+ }), t;
60
+ }
61
+ function j({ title: u, brand: d, sidebar: f, sidebarFooter: m, header: y, aside: S, asideTitle: C, asideDescription: w, sidebarOpen: T, defaultSidebarOpen: E = !0, onSidebarOpenChange: O, asideOpen: j, defaultAsideOpen: M = !1, onAsideOpenChange: pe, labels: me, children: he, className: ge }) {
62
+ let N = {
63
+ ...ue,
64
+ ...me
65
+ }, P = fe(he), F = d ?? P.brand, I = f ?? P.sidebar, L = m ?? P.sidebarFooter, _e = y ?? P.header, R = S ?? P.aside?.children, z = I != null, ve = R != null, [B, V] = k(T, E, O), [H, U] = k(j, M, pe), [W, G] = _(!1), K = ce(), q = g(null), J = g(null), Y = p((e) => {
66
+ !e && q.current?.contains(document.activeElement) && J.current?.focus(), V(e);
67
+ }, [V]), X = p(() => {
68
+ window.matchMedia(A).matches ? Y(!B) : G((e) => !e);
69
+ }, [Y, B]);
70
+ h(() => {
71
+ let e = window.matchMedia(A);
72
+ function t(e) {
73
+ e.matches && G(!1);
74
+ }
75
+ return e.addEventListener("change", t), () => e.removeEventListener("change", t);
76
+ }, []), h(() => {
77
+ if (!z) return;
78
+ function e(e) {
79
+ e.defaultPrevented || e.altKey || e.shiftKey || !(e.metaKey || e.ctrlKey) || e.key.toLowerCase() !== "b" || de(e.target) || (e.preventDefault(), X());
80
+ }
81
+ return document.addEventListener("keydown", e), () => document.removeEventListener("keydown", e);
82
+ }, [z, X]);
83
+ let ye = le(() => ({
84
+ sidebarOpen: B,
85
+ setSidebarOpen: Y,
86
+ menuOpen: W,
87
+ setMenuOpen: G,
88
+ asideOpen: H,
89
+ setAsideOpen: U,
90
+ toggleSidebar: X
91
+ }), [
92
+ H,
93
+ W,
94
+ U,
95
+ Y,
96
+ B,
97
+ X
98
+ ]);
99
+ function be(e) {
100
+ e.target.closest("nav a[href], nav button") != null && G(!1);
101
+ }
102
+ let Z = B ? N.collapse : N.expand, Q = F == null ? null : /* @__PURE__ */ b("div", {
103
+ className: s,
104
+ children: F
105
+ }), $ = L == null ? null : /* @__PURE__ */ b("div", {
106
+ className: ae,
107
+ children: L
108
+ }), xe = z ? /* @__PURE__ */ x(r.Provider, { children: [/* @__PURE__ */ x(r, { children: [/* @__PURE__ */ b(r.Trigger, { render: /* @__PURE__ */ b(t, {
109
+ ref: J,
110
+ role: "ghost",
111
+ size: "sm",
112
+ title: "",
113
+ icon: /* @__PURE__ */ b(v, { strokeWidth: 2 }),
114
+ "aria-label": Z,
115
+ "aria-expanded": B,
116
+ "aria-controls": K,
117
+ "aria-keyshortcuts": "Control+B Meta+B",
118
+ className: se,
119
+ onClick: () => Y(!B)
120
+ }) }), /* @__PURE__ */ b(r.Content, { children: /* @__PURE__ */ x("span", {
121
+ className: "inline-flex items-center gap-2",
122
+ children: [
123
+ Z,
124
+ /* @__PURE__ */ b(n, {
125
+ size: "sm",
126
+ children: "Ctrl"
127
+ }),
128
+ /* @__PURE__ */ b(n, {
129
+ size: "sm",
130
+ children: "B"
131
+ })
132
+ ]
133
+ }) })] }), /* @__PURE__ */ b(t, {
134
+ role: "ghost",
135
+ size: "sm",
136
+ icon: /* @__PURE__ */ b(v, { strokeWidth: 2 }),
137
+ "aria-label": N.menu,
138
+ "aria-expanded": W,
139
+ "aria-haspopup": "dialog",
140
+ "aria-keyshortcuts": "Control+B Meta+B",
141
+ className: l,
142
+ onClick: () => G(!0)
143
+ })] }) : null;
144
+ return /* @__PURE__ */ b(D.Provider, {
145
+ value: ye,
146
+ children: /* @__PURE__ */ x("div", {
147
+ className: e(ne, ge),
148
+ children: [
149
+ z ? /* @__PURE__ */ x("div", {
150
+ ref: q,
151
+ id: K,
152
+ className: e(ie, !B && "lg:!hidden"),
153
+ children: [
154
+ Q,
155
+ /* @__PURE__ */ b("div", {
156
+ className: c,
157
+ children: I
158
+ }),
159
+ $
160
+ ]
161
+ }) : null,
162
+ /* @__PURE__ */ b("div", {
163
+ className: ee,
164
+ children: /* @__PURE__ */ x("div", {
165
+ className: oe,
166
+ children: [/* @__PURE__ */ b(i, {
167
+ variant: "app",
168
+ title: u,
169
+ "aria-label": u,
170
+ start: xe,
171
+ end: _e
172
+ }), /* @__PURE__ */ b("main", {
173
+ id: `${K}-main`,
174
+ tabIndex: -1,
175
+ className: te,
176
+ children: P.content
177
+ })]
178
+ })
179
+ }),
180
+ z ? /* @__PURE__ */ b(o, {
181
+ open: W,
182
+ onOpenChange: G,
183
+ children: /* @__PURE__ */ b(o.Content, {
184
+ side: "start",
185
+ title: N.menu,
186
+ children: /* @__PURE__ */ x("div", {
187
+ className: re,
188
+ onClick: be,
189
+ children: [
190
+ Q,
191
+ /* @__PURE__ */ b("div", {
192
+ className: c,
193
+ children: I
194
+ }),
195
+ $
196
+ ]
197
+ })
198
+ })
199
+ }) : null,
200
+ ve ? /* @__PURE__ */ b(a, {
201
+ open: H,
202
+ onOpenChange: U,
203
+ children: /* @__PURE__ */ b(a.Content, {
204
+ side: "end",
205
+ title: C ?? P.aside?.title ?? N.aside,
206
+ description: w ?? P.aside?.description,
207
+ children: R
208
+ })
209
+ }) : null
210
+ ]
211
+ })
212
+ });
213
+ }
214
+ var M = Object.assign(j, {
215
+ Brand: S,
216
+ Sidebar: C,
217
+ SidebarFooter: w,
218
+ Header: T,
219
+ Aside: E
220
+ });
221
+ //#endregion
222
+ export { M as AppShell, O as useAppShell };
@@ -0,0 +1,18 @@
1
+ /** Page canvas — the sidebar sits directly on `bg-body`. */
2
+ export declare const appShellRootClasses = "flex h-full min-h-0 w-full bg-body font-sans text-fg";
3
+ /** Sidebar column from `lg`; below it the same content opens in a start **Sheet**. */
4
+ export declare const appShellSidebarClasses = "flex h-full min-h-0 w-60 shrink-0 flex-col pt-2 max-lg:!hidden";
5
+ /** Same 56px band token as the title bar — their bottom edges align. */
6
+ export declare const appShellBrandClasses: string;
7
+ export declare const appShellSidebarBodyClasses = "min-h-0 flex-1 overflow-y-auto";
8
+ /** Pinned under the scrolling nav — the same 16px inset as the brand row. */
9
+ export declare const appShellSidebarFooterClasses = "box-border shrink-0 px-4 py-3";
10
+ /** 8px inset around the raised surface. */
11
+ export declare const appShellCanvasClasses = "flex min-h-0 min-w-0 flex-1 p-2";
12
+ /** Raised surface — the Card shell radius and the soft card shadow. */
13
+ export declare const appShellSurfaceClasses: string;
14
+ export declare const appShellMainClasses = "min-h-0 flex-1 overflow-y-auto px-[var(--grid-margin)] py-6 focus-visible:outline-none";
15
+ export declare const appShellToggleDesktopClasses = "max-lg:!hidden";
16
+ export declare const appShellToggleMobileClasses = "lg:!hidden";
17
+ export declare const appShellSheetBodyClasses = "flex h-full min-h-0 flex-col";
18
+ //# sourceMappingURL=appShellStyles.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"appShellStyles.d.ts","sourceRoot":"","sources":["../../../../src/components/organisms/AppShell/appShellStyles.ts"],"names":[],"mappings":"AAIA,4DAA4D;AAC5D,eAAO,MAAM,mBAAmB,yDAAyD,CAAC;AAE1F,sFAAsF;AACtF,eAAO,MAAM,sBAAsB,mEAAmE,CAAC;AAEvG,wEAAwE;AACxE,eAAO,MAAM,oBAAoB,QAGhC,CAAC;AAEF,eAAO,MAAM,0BAA0B,mCAAmC,CAAC;AAE3E,6EAA6E;AAC7E,eAAO,MAAM,4BAA4B,kCAAkC,CAAC;AAE5E,2CAA2C;AAC3C,eAAO,MAAM,qBAAqB,oCAAoC,CAAC;AAEvE,uEAAuE;AACvE,eAAO,MAAM,sBAAsB,QAGlC,CAAC;AAEF,eAAO,MAAM,mBAAmB,2FAC0D,CAAC;AAE3F,eAAO,MAAM,4BAA4B,mBAAmB,CAAC;AAE7D,eAAO,MAAM,2BAA2B,eAAe,CAAC;AAExD,eAAO,MAAM,wBAAwB,iCAAiC,CAAC"}
@@ -0,0 +1,8 @@
1
+ "use client";
2
+ import { cn as e } from "../../../lib/cn.js";
3
+ import { cardLayoutShellShapeClasses as t } from "../../molecules/Card/cardStyles.js";
4
+ import { pageHeaderAppBandHeightClasses as n } from "../../molecules/PageHeader/pageHeaderStyles.js";
5
+ //#region src/components/organisms/AppShell/appShellStyles.ts
6
+ var r = "flex h-full min-h-0 w-full bg-body font-sans text-fg", i = "flex h-full min-h-0 w-60 shrink-0 flex-col pt-2 max-lg:!hidden", a = e("box-border flex shrink-0 items-center gap-2 px-4", n), o = "min-h-0 flex-1 overflow-y-auto", s = "box-border shrink-0 px-4 py-3", c = "flex min-h-0 min-w-0 flex-1 p-2", l = e("flex min-h-0 min-w-0 flex-1 flex-col overflow-hidden bg-surface shadow-soft-card", t.rounded), u = "min-h-0 flex-1 overflow-y-auto px-[var(--grid-margin)] py-6 focus-visible:outline-none", d = "max-lg:!hidden", f = "lg:!hidden", p = "flex h-full min-h-0 flex-col";
7
+ //#endregion
8
+ export { a as appShellBrandClasses, c as appShellCanvasClasses, u as appShellMainClasses, r as appShellRootClasses, p as appShellSheetBodyClasses, o as appShellSidebarBodyClasses, i as appShellSidebarClasses, s as appShellSidebarFooterClasses, l as appShellSurfaceClasses, d as appShellToggleDesktopClasses, f as appShellToggleMobileClasses };
@@ -6,6 +6,8 @@ export type CarouselLayoutClassName = string;
6
6
  export interface CarouselLabels {
7
7
  /** Names each item by its place. Default: "2 of 4". */
8
8
  item: (position: number, count: number) => string;
9
+ /** The visible counter under the row. Default: "1 of 6". */
10
+ counter: (position: number, count: number) => string;
9
11
  }
10
12
  /** The row is a labelled region: name it, or point at the heading that does. */
11
13
  type CarouselName = {
@@ -33,6 +35,12 @@ interface CarouselBaseProps {
33
35
  * `full` row width, or `none`. It hides itself while every item fits.
34
36
  */
35
37
  progress?: CarouselProgressPlacement;
38
+ /** Show "1 of 6" under the row, announced politely as it changes. Hidden while every item fits. Default: `false`. */
39
+ counter?: boolean;
40
+ /** Fires with the 0-based index and the item count when the item the row rests on changes. */
41
+ onIndexChange?: (index: number, count: number) => void;
42
+ /** Controlled: the row moves to this item (0-based) when it changes. */
43
+ activeIndex?: number;
36
44
  labels?: Partial<CarouselLabels>;
37
45
  /** **Carousel.Item** children, one per item. */
38
46
  children?: ReactNode;
@@ -50,7 +58,7 @@ export interface CarouselItemProps {
50
58
  * shift-wheel scrolling come from the browser; the pointer drag, the glide, and the scrubber are
51
59
  * built on it.
52
60
  */
53
- declare function CarouselRoot({ "aria-label": ariaLabel, "aria-labelledby": ariaLabelledBy, itemWidth, snap, bleed, fade, progress, labels, children, className, }: CarouselProps): import("react").JSX.Element;
61
+ declare function CarouselRoot({ "aria-label": ariaLabel, "aria-labelledby": ariaLabelledBy, itemWidth, snap, bleed, fade, progress, counter, onIndexChange, activeIndex, labels, children, className, }: CarouselProps): import("react").JSX.Element;
54
62
  declare function CarouselItem({ children, className }: CarouselItemProps): import("react").JSX.Element;
55
63
  export declare const Carousel: typeof CarouselRoot & {
56
64
  Item: typeof CarouselItem;
@@ -1 +1 @@
1
- {"version":3,"file":"Carousel.d.ts","sourceRoot":"","sources":["../../../../src/components/organisms/Carousel/Carousel.tsx"],"names":[],"mappings":"AAAA,OAAO,EAeL,KAAK,SAAS,EACf,MAAM,OAAO,CAAC;AAwBf,OAAO,EAeL,KAAK,iBAAiB,EACtB,KAAK,yBAAyB,EAC/B,MAAM,kBAAkB,CAAC;AAE1B,OAAO,EACL,mBAAmB,EACnB,wBAAwB,EACxB,0BAA0B,EAC1B,KAAK,kBAAkB,EACvB,KAAK,iBAAiB,EACtB,KAAK,yBAAyB,GAC/B,MAAM,kBAAkB,CAAC;AAE1B,sDAAsD;AACtD,MAAM,MAAM,uBAAuB,GAAG,MAAM,CAAC;AAE7C,MAAM,WAAW,cAAc;IAC7B,uDAAuD;IACvD,IAAI,EAAE,CAAC,QAAQ,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,KAAK,MAAM,CAAC;CACnD;AAED,gFAAgF;AAChF,KAAK,YAAY,GACb;IAAE,YAAY,EAAE,MAAM,CAAC;IAAC,iBAAiB,CAAC,EAAE,KAAK,CAAA;CAAE,GACnD;IAAE,iBAAiB,EAAE,MAAM,CAAC;IAAC,YAAY,CAAC,EAAE,KAAK,CAAA;CAAE,CAAC;AAExD,UAAU,iBAAiB;IACzB;;;;OAIG;IACH,SAAS,CAAC,EAAE,iBAAiB,CAAC;IAC9B,iGAAiG;IACjG,IAAI,CAAC,EAAE,OAAO,CAAC;IACf,0FAA0F;IAC1F,KAAK,CAAC,EAAE,OAAO,CAAC;IAChB,4DAA4D;IAC5D,IAAI,CAAC,EAAE,OAAO,CAAC;IACf;;;OAGG;IACH,QAAQ,CAAC,EAAE,yBAAyB,CAAC;IACrC,MAAM,CAAC,EAAE,OAAO,CAAC,cAAc,CAAC,CAAC;IACjC,gDAAgD;IAChD,QAAQ,CAAC,EAAE,SAAS,CAAC;IACrB,SAAS,CAAC,EAAE,uBAAuB,CAAC;CACrC;AAED,MAAM,MAAM,aAAa,GAAG,iBAAiB,GAAG,YAAY,CAAC;AAE7D,MAAM,WAAW,iBAAiB;IAChC,iDAAiD;IACjD,QAAQ,CAAC,EAAE,SAAS,CAAC;IACrB,SAAS,CAAC,EAAE,uBAAuB,CAAC;CACrC;AAkED;;;;;GAKG;AACH,iBAAS,YAAY,CAAC,EACpB,YAAY,EAAE,SAAS,EACvB,iBAAiB,EAAE,cAAc,EACjC,SAAoC,EACpC,IAAW,EACX,KAAa,EACb,IAAW,EACX,QAAmB,EACnB,MAAM,EACN,QAAQ,EACR,SAAS,GACV,EAAE,aAAa,+BA0Yf;AAOD,iBAAS,YAAY,CAAC,EAAE,QAAQ,EAAE,SAAS,EAAE,EAAE,iBAAiB,+BAO/D;AAED,eAAO,MAAM,QAAQ;;CAEnB,CAAC"}
1
+ {"version":3,"file":"Carousel.d.ts","sourceRoot":"","sources":["../../../../src/components/organisms/Carousel/Carousel.tsx"],"names":[],"mappings":"AAAA,OAAO,EAeL,KAAK,SAAS,EACf,MAAM,OAAO,CAAC;AAyBf,OAAO,EAgBL,KAAK,iBAAiB,EACtB,KAAK,yBAAyB,EAC/B,MAAM,kBAAkB,CAAC;AAE1B,OAAO,EACL,mBAAmB,EACnB,wBAAwB,EACxB,0BAA0B,EAC1B,KAAK,kBAAkB,EACvB,KAAK,iBAAiB,EACtB,KAAK,yBAAyB,GAC/B,MAAM,kBAAkB,CAAC;AAE1B,sDAAsD;AACtD,MAAM,MAAM,uBAAuB,GAAG,MAAM,CAAC;AAE7C,MAAM,WAAW,cAAc;IAC7B,uDAAuD;IACvD,IAAI,EAAE,CAAC,QAAQ,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,KAAK,MAAM,CAAC;IAClD,4DAA4D;IAC5D,OAAO,EAAE,CAAC,QAAQ,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,KAAK,MAAM,CAAC;CACtD;AAED,gFAAgF;AAChF,KAAK,YAAY,GACb;IAAE,YAAY,EAAE,MAAM,CAAC;IAAC,iBAAiB,CAAC,EAAE,KAAK,CAAA;CAAE,GACnD;IAAE,iBAAiB,EAAE,MAAM,CAAC;IAAC,YAAY,CAAC,EAAE,KAAK,CAAA;CAAE,CAAC;AAExD,UAAU,iBAAiB;IACzB;;;;OAIG;IACH,SAAS,CAAC,EAAE,iBAAiB,CAAC;IAC9B,iGAAiG;IACjG,IAAI,CAAC,EAAE,OAAO,CAAC;IACf,0FAA0F;IAC1F,KAAK,CAAC,EAAE,OAAO,CAAC;IAChB,4DAA4D;IAC5D,IAAI,CAAC,EAAE,OAAO,CAAC;IACf;;;OAGG;IACH,QAAQ,CAAC,EAAE,yBAAyB,CAAC;IACrC,qHAAqH;IACrH,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,8FAA8F;IAC9F,aAAa,CAAC,EAAE,CAAC,KAAK,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,KAAK,IAAI,CAAC;IACvD,wEAAwE;IACxE,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,MAAM,CAAC,EAAE,OAAO,CAAC,cAAc,CAAC,CAAC;IACjC,gDAAgD;IAChD,QAAQ,CAAC,EAAE,SAAS,CAAC;IACrB,SAAS,CAAC,EAAE,uBAAuB,CAAC;CACrC;AAED,MAAM,MAAM,aAAa,GAAG,iBAAiB,GAAG,YAAY,CAAC;AAE7D,MAAM,WAAW,iBAAiB;IAChC,iDAAiD;IACjD,QAAQ,CAAC,EAAE,SAAS,CAAC;IACrB,SAAS,CAAC,EAAE,uBAAuB,CAAC;CACrC;AAwED;;;;;GAKG;AACH,iBAAS,YAAY,CAAC,EACpB,YAAY,EAAE,SAAS,EACvB,iBAAiB,EAAE,cAAc,EACjC,SAAoC,EACpC,IAAW,EACX,KAAa,EACb,IAAW,EACX,QAAmB,EACnB,OAAe,EACf,aAAa,EACb,WAAW,EACX,MAAM,EACN,QAAQ,EACR,SAAS,GACV,EAAE,aAAa,+BAkcf;AAOD,iBAAS,YAAY,CAAC,EAAE,QAAQ,EAAE,SAAS,EAAE,EAAE,iBAAiB,+BAO/D;AAED,eAAO,MAAM,QAAQ;;CAEnB,CAAC"}