@thewhatmatters/wmds 0.4.9 → 0.4.28

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (406) hide show
  1. package/CHANGELOG.md +303 -0
  2. package/CONSUMING.md +62 -1
  3. package/README.md +1 -1
  4. package/bin/wmds-check.mjs +47 -0
  5. package/dist/colors.css +92 -0
  6. package/dist/components/atoms/Badge/Badge.d.ts +13 -5
  7. package/dist/components/atoms/Badge/Badge.d.ts.map +1 -1
  8. package/dist/components/atoms/Badge/Badge.js +56 -48
  9. package/dist/components/atoms/Badge/badgeStyles.d.ts +15 -0
  10. package/dist/components/atoms/Badge/badgeStyles.d.ts.map +1 -1
  11. package/dist/components/atoms/Badge/badgeStyles.js +42 -20
  12. package/dist/components/atoms/Band/Band.d.ts +27 -0
  13. package/dist/components/atoms/Band/Band.d.ts.map +1 -0
  14. package/dist/components/atoms/Band/Band.js +22 -0
  15. package/dist/components/atoms/Band/bandStyles.d.ts +20 -0
  16. package/dist/components/atoms/Band/bandStyles.d.ts.map +1 -0
  17. package/dist/components/atoms/Band/bandStyles.js +23 -0
  18. package/dist/components/atoms/Button/Button.d.ts +1 -1
  19. package/dist/components/atoms/Button/Button.d.ts.map +1 -1
  20. package/dist/components/atoms/Button/Button.js +67 -48
  21. package/dist/components/atoms/Button/ButtonStatusButton.d.ts.map +1 -1
  22. package/dist/components/atoms/Button/ButtonStatusButton.js +12 -5
  23. package/dist/components/atoms/Button/buttonStatusMotion.d.ts.map +1 -1
  24. package/dist/components/atoms/Button/buttonStatusMotion.js +6 -1
  25. package/dist/components/atoms/Button/buttonStyles.d.ts +2 -2
  26. package/dist/components/atoms/Button/buttonStyles.d.ts.map +1 -1
  27. package/dist/components/atoms/Button/buttonStyles.js +16 -14
  28. package/dist/components/atoms/Checkbox/Checkbox.d.ts.map +1 -1
  29. package/dist/components/atoms/Checkbox/Checkbox.js +69 -68
  30. package/dist/components/atoms/Checkbox/checkboxStyles.d.ts +1 -1
  31. package/dist/components/atoms/Checkbox/checkboxStyles.d.ts.map +1 -1
  32. package/dist/components/atoms/Checkbox/checkboxStyles.js +1 -1
  33. package/dist/components/atoms/IconButton/IconButton.d.ts.map +1 -1
  34. package/dist/components/atoms/IconButton/IconButton.js +13 -12
  35. package/dist/components/atoms/IconButton/iconButtonStyles.d.ts +2 -2
  36. package/dist/components/atoms/IconButton/iconButtonStyles.d.ts.map +1 -1
  37. package/dist/components/atoms/IconButton/iconButtonStyles.js +1 -1
  38. package/dist/components/atoms/InlinePill/InlinePill.d.ts +42 -0
  39. package/dist/components/atoms/InlinePill/InlinePill.d.ts.map +1 -0
  40. package/dist/components/atoms/InlinePill/InlinePill.js +48 -0
  41. package/dist/components/atoms/InlinePill/inlinePillStyles.d.ts +27 -0
  42. package/dist/components/atoms/InlinePill/inlinePillStyles.d.ts.map +1 -0
  43. package/dist/components/atoms/InlinePill/inlinePillStyles.js +19 -0
  44. package/dist/components/atoms/Input/Input.d.ts +9 -4
  45. package/dist/components/atoms/Input/Input.d.ts.map +1 -1
  46. package/dist/components/atoms/Input/Input.js +59 -59
  47. package/dist/components/atoms/Input/inputShellStyles.d.ts +10 -4
  48. package/dist/components/atoms/Input/inputShellStyles.d.ts.map +1 -1
  49. package/dist/components/atoms/Input/inputShellStyles.js +40 -40
  50. package/dist/components/atoms/RiveHand/RiveHand.d.ts.map +1 -1
  51. package/dist/components/atoms/RiveHand/RiveHand.js +83 -81
  52. package/dist/components/atoms/Skeleton/skeletonStyles.js +1 -1
  53. package/dist/components/atoms/Switch/Switch.d.ts.map +1 -1
  54. package/dist/components/atoms/Switch/Switch.js +45 -44
  55. package/dist/components/atoms/Switch/switchStyles.d.ts +1 -1
  56. package/dist/components/atoms/Switch/switchStyles.d.ts.map +1 -1
  57. package/dist/components/atoms/Switch/switchStyles.js +1 -1
  58. package/dist/components/atoms/Table/Table.d.ts +54 -0
  59. package/dist/components/atoms/Table/Table.d.ts.map +1 -0
  60. package/dist/components/atoms/Table/Table.js +66 -0
  61. package/dist/components/atoms/Table/tableStyles.d.ts +18 -0
  62. package/dist/components/atoms/Table/tableStyles.d.ts.map +1 -0
  63. package/dist/components/atoms/Table/tableStyles.js +14 -0
  64. package/dist/components/atoms/TextArea/TextArea.d.ts +6 -0
  65. package/dist/components/atoms/TextArea/TextArea.d.ts.map +1 -1
  66. package/dist/components/atoms/TextArea/TextArea.js +86 -78
  67. package/dist/components/atoms/TextArea/textareaShellStyles.d.ts +2 -2
  68. package/dist/components/atoms/TextArea/textareaShellStyles.d.ts.map +1 -1
  69. package/dist/components/atoms/TextArea/textareaShellStyles.js +5 -5
  70. package/dist/components/molecules/Accordion/accordionStyles.d.ts +1 -1
  71. package/dist/components/molecules/Accordion/accordionStyles.d.ts.map +1 -1
  72. package/dist/components/molecules/Accordion/accordionStyles.js +1 -1
  73. package/dist/components/molecules/Breadcrumb/Breadcrumb.d.ts.map +1 -1
  74. package/dist/components/molecules/Breadcrumb/Breadcrumb.js +80 -122
  75. package/dist/components/molecules/Card/Card.d.ts +28 -6
  76. package/dist/components/molecules/Card/Card.d.ts.map +1 -1
  77. package/dist/components/molecules/Card/Card.js +83 -42
  78. package/dist/components/molecules/Card/cardStyles.d.ts +16 -1
  79. package/dist/components/molecules/Card/cardStyles.d.ts.map +1 -1
  80. package/dist/components/molecules/Card/cardStyles.js +19 -5
  81. package/dist/components/molecules/ChatQa/chatQaStyles.d.ts +1 -1
  82. package/dist/components/molecules/ChatQa/chatQaStyles.d.ts.map +1 -1
  83. package/dist/components/molecules/ChatQa/chatQaStyles.js +1 -1
  84. package/dist/components/molecules/Chip/chipStyles.js +9 -9
  85. package/dist/components/molecules/CopyField/CopyField.d.ts +41 -0
  86. package/dist/components/molecules/CopyField/CopyField.d.ts.map +1 -0
  87. package/dist/components/molecules/CopyField/CopyField.js +120 -0
  88. package/dist/components/molecules/CopyField/copyFieldStyles.d.ts +28 -0
  89. package/dist/components/molecules/CopyField/copyFieldStyles.d.ts.map +1 -0
  90. package/dist/components/molecules/CopyField/copyFieldStyles.js +7 -0
  91. package/dist/components/molecules/DisplayControls/DisplayControls.d.ts +16 -7
  92. package/dist/components/molecules/DisplayControls/DisplayControls.d.ts.map +1 -1
  93. package/dist/components/molecules/DisplayControls/DisplayControls.js +41 -39
  94. package/dist/components/molecules/DisplayControls/displayControlsState.d.ts +21 -0
  95. package/dist/components/molecules/DisplayControls/displayControlsState.d.ts.map +1 -1
  96. package/dist/components/molecules/DisplayControls/displayControlsState.js +46 -4
  97. package/dist/components/molecules/Dropdown/Dropdown.d.ts +1 -1
  98. package/dist/components/molecules/Dropdown/DropdownItem.d.ts +2 -2
  99. package/dist/components/molecules/Dropdown/DropdownItem.d.ts.map +1 -1
  100. package/dist/components/molecules/Dropdown/DropdownItem.js +30 -27
  101. package/dist/components/molecules/Dropdown/dropdownStyles.js +1 -1
  102. package/dist/components/molecules/Dropdown/resolveOverflow.d.ts +14 -0
  103. package/dist/components/molecules/Dropdown/resolveOverflow.d.ts.map +1 -0
  104. package/dist/components/{organisms/Tab/tabOverflow.js → molecules/Dropdown/resolveOverflow.js} +2 -2
  105. package/dist/components/molecules/Dropdown/useDropdownMenu.d.ts +70 -0
  106. package/dist/components/molecules/Dropdown/useDropdownMenu.d.ts.map +1 -0
  107. package/dist/components/molecules/Dropdown/useDropdownMenu.js +155 -0
  108. package/dist/components/molecules/Dropdown/useOverflowMenu.d.ts +71 -0
  109. package/dist/components/molecules/Dropdown/useOverflowMenu.d.ts.map +1 -0
  110. package/dist/components/molecules/Dropdown/useOverflowMenu.js +61 -0
  111. package/dist/components/molecules/Field/Field.d.ts.map +1 -1
  112. package/dist/components/molecules/Field/Field.js +11 -10
  113. package/dist/components/molecules/LogView/LogView.d.ts +31 -0
  114. package/dist/components/molecules/LogView/LogView.d.ts.map +1 -0
  115. package/dist/components/molecules/LogView/LogView.js +109 -0
  116. package/dist/components/molecules/LogView/logViewStyles.d.ts +11 -0
  117. package/dist/components/molecules/LogView/logViewStyles.d.ts.map +1 -0
  118. package/dist/components/molecules/LogView/logViewStyles.js +6 -0
  119. package/dist/components/molecules/NavList/NavList.d.ts +23 -4
  120. package/dist/components/molecules/NavList/NavList.d.ts.map +1 -1
  121. package/dist/components/molecules/NavList/NavList.js +65 -52
  122. package/dist/components/molecules/NavList/navListStyles.d.ts +2 -0
  123. package/dist/components/molecules/NavList/navListStyles.d.ts.map +1 -1
  124. package/dist/components/molecules/NavList/navListStyles.js +3 -3
  125. package/dist/components/molecules/PageHeader/PageHeader.js +3 -3
  126. package/dist/components/molecules/PillGroup/pillGroupStyles.js +1 -1
  127. package/dist/components/molecules/Search/searchStyles.js +1 -1
  128. package/dist/components/molecules/SegmentedControl/segmentedControlStyles.d.ts +1 -1
  129. package/dist/components/molecules/SegmentedControl/segmentedControlStyles.d.ts.map +1 -1
  130. package/dist/components/molecules/SegmentedControl/segmentedControlStyles.js +8 -8
  131. package/dist/components/molecules/Select/Select.d.ts +3 -1
  132. package/dist/components/molecules/Select/Select.d.ts.map +1 -1
  133. package/dist/components/molecules/Select/Select.js +75 -119
  134. package/dist/components/molecules/Select/selectStyles.js +3 -3
  135. package/dist/components/molecules/Stat/Stat.d.ts +31 -5
  136. package/dist/components/molecules/Stat/Stat.d.ts.map +1 -1
  137. package/dist/components/molecules/Stat/Stat.js +83 -49
  138. package/dist/components/molecules/Stat/statStyles.d.ts +24 -4
  139. package/dist/components/molecules/Stat/statStyles.d.ts.map +1 -1
  140. package/dist/components/molecules/Stat/statStyles.js +30 -13
  141. package/dist/components/molecules/TaskRows/TaskRows.d.ts +13 -3
  142. package/dist/components/molecules/TaskRows/TaskRows.d.ts.map +1 -1
  143. package/dist/components/molecules/TaskRows/TaskRows.js +81 -57
  144. package/dist/components/molecules/TaskRows/TaskRowsTable.d.ts +54 -0
  145. package/dist/components/molecules/TaskRows/TaskRowsTable.d.ts.map +1 -0
  146. package/dist/components/molecules/TaskRows/TaskRowsTable.js +200 -0
  147. package/dist/components/molecules/TaskRows/taskRowsStyles.d.ts +19 -1
  148. package/dist/components/molecules/TaskRows/taskRowsStyles.d.ts.map +1 -1
  149. package/dist/components/molecules/TaskRows/taskRowsStyles.js +7 -3
  150. package/dist/components/molecules/TextSequence/TextSequence.d.ts.map +1 -1
  151. package/dist/components/molecules/TextSequence/TextSequence.js +35 -35
  152. package/dist/components/organisms/AppShell/AppShell.d.ts +84 -0
  153. package/dist/components/organisms/AppShell/AppShell.d.ts.map +1 -0
  154. package/dist/components/organisms/AppShell/AppShell.js +231 -0
  155. package/dist/components/organisms/AppShell/appShellStyles.d.ts +20 -0
  156. package/dist/components/organisms/AppShell/appShellStyles.d.ts.map +1 -0
  157. package/dist/components/organisms/AppShell/appShellStyles.js +8 -0
  158. package/dist/components/organisms/Carousel/Carousel.d.ts +9 -1
  159. package/dist/components/organisms/Carousel/Carousel.d.ts.map +1 -1
  160. package/dist/components/organisms/Carousel/Carousel.js +220 -182
  161. package/dist/components/organisms/Carousel/carouselMath.d.ts +5 -0
  162. package/dist/components/organisms/Carousel/carouselMath.d.ts.map +1 -1
  163. package/dist/components/organisms/Carousel/carouselMath.js +9 -1
  164. package/dist/components/organisms/Carousel/carouselStyles.d.ts +2 -0
  165. package/dist/components/organisms/Carousel/carouselStyles.d.ts.map +1 -1
  166. package/dist/components/organisms/Carousel/carouselStyles.js +8 -7
  167. package/dist/components/organisms/Chart/Chart.d.ts +5 -1
  168. package/dist/components/organisms/Chart/Chart.d.ts.map +1 -1
  169. package/dist/components/organisms/Chart/Chart.js +126 -62
  170. package/dist/components/organisms/Chart/ChartLegend.d.ts +8 -1
  171. package/dist/components/organisms/Chart/ChartLegend.d.ts.map +1 -1
  172. package/dist/components/organisms/Chart/ChartLegend.js +43 -13
  173. package/dist/components/organisms/Chart/ChartSegmentedRing.d.ts +52 -0
  174. package/dist/components/organisms/Chart/ChartSegmentedRing.d.ts.map +1 -0
  175. package/dist/components/organisms/Chart/ChartSegmentedRing.js +95 -0
  176. package/dist/components/organisms/Chart/chartStyles.d.ts +32 -0
  177. package/dist/components/organisms/Chart/chartStyles.d.ts.map +1 -1
  178. package/dist/components/organisms/Chart/chartStyles.js +15 -3
  179. package/dist/components/organisms/ChatDock/ChatDock.d.ts.map +1 -1
  180. package/dist/components/organisms/ChatDock/ChatDock.js +29 -25
  181. package/dist/components/organisms/Dialog/AlertDialog.d.ts +7 -1
  182. package/dist/components/organisms/Dialog/AlertDialog.d.ts.map +1 -1
  183. package/dist/components/organisms/Dialog/AlertDialog.js +54 -50
  184. package/dist/components/organisms/Dialog/Dialog.d.ts.map +1 -1
  185. package/dist/components/organisms/Dialog/Dialog.js +52 -71
  186. package/dist/components/organisms/Dialog/OverlayPanelHeader.d.ts.map +1 -1
  187. package/dist/components/organisms/Dialog/OverlayPanelHeader.js +1 -0
  188. package/dist/components/organisms/Dialog/dialogStyles.d.ts +14 -1
  189. package/dist/components/organisms/Dialog/dialogStyles.d.ts.map +1 -1
  190. package/dist/components/organisms/Dialog/dialogStyles.js +3 -3
  191. package/dist/components/organisms/FilterPanel/FilterPanel.d.ts.map +1 -1
  192. package/dist/components/organisms/FilterPanel/FilterPanel.js +52 -42
  193. package/dist/components/organisms/IntakeModal/IntakeModal.d.ts +6 -1
  194. package/dist/components/organisms/IntakeModal/IntakeModal.d.ts.map +1 -1
  195. package/dist/components/organisms/IntakeModal/IntakeModal.js +54 -66
  196. package/dist/components/organisms/MoreMenu/MoreMenu.d.ts.map +1 -1
  197. package/dist/components/organisms/MoreMenu/MoreMenu.js +45 -101
  198. package/dist/components/organisms/Panel/Panel.d.ts.map +1 -1
  199. package/dist/components/organisms/Panel/Panel.js +44 -53
  200. package/dist/components/organisms/Sheet/Sheet.d.ts +3 -1
  201. package/dist/components/organisms/Sheet/Sheet.d.ts.map +1 -1
  202. package/dist/components/organisms/Sheet/Sheet.js +66 -81
  203. package/dist/components/organisms/Sheet/sheetStyles.d.ts +8 -2
  204. package/dist/components/organisms/Sheet/sheetStyles.d.ts.map +1 -1
  205. package/dist/components/organisms/Sheet/sheetStyles.js +16 -11
  206. package/dist/components/organisms/SiteNav/SiteNav.d.ts +0 -9
  207. package/dist/components/organisms/SiteNav/SiteNav.d.ts.map +1 -1
  208. package/dist/components/organisms/SiteNav/SiteNav.js +236 -286
  209. package/dist/components/organisms/SiteNav/siteNavStyles.js +1 -1
  210. package/dist/components/organisms/Tab/Tab.d.ts.map +1 -1
  211. package/dist/components/organisms/Tab/Tab.js +77 -127
  212. package/dist/components/organisms/Tab/tabStyles.d.ts +2 -1
  213. package/dist/components/organisms/Tab/tabStyles.d.ts.map +1 -1
  214. package/dist/components/organisms/Tab/tabStyles.js +7 -7
  215. package/dist/fonts.css +10 -0
  216. package/dist/grid.css +38 -0
  217. package/dist/index.d.ts +16 -8
  218. package/dist/index.d.ts.map +1 -1
  219. package/dist/index.js +152 -139
  220. package/dist/lib/chartTheme.d.ts +11 -0
  221. package/dist/lib/chartTheme.d.ts.map +1 -1
  222. package/dist/lib/compositionAudit.d.ts.map +1 -1
  223. package/dist/lib/contrast.d.ts +11 -0
  224. package/dist/lib/contrast.d.ts.map +1 -0
  225. package/dist/lib/dialogOverlay.d.ts +34 -1
  226. package/dist/lib/dialogOverlay.d.ts.map +1 -1
  227. package/dist/lib/dialogOverlay.js +100 -23
  228. package/dist/lib/sheetParam/index.d.ts +3 -0
  229. package/dist/lib/sheetParam/index.d.ts.map +1 -0
  230. package/dist/lib/sheetParam/sheetParam.d.ts +15 -0
  231. package/dist/lib/sheetParam/sheetParam.d.ts.map +1 -0
  232. package/dist/lib/sheetParam/sheetParam.js +26 -0
  233. package/dist/lib/sheetParam/useSheetParam.d.ts +25 -0
  234. package/dist/lib/sheetParam/useSheetParam.d.ts.map +1 -0
  235. package/dist/lib/sheetParam/useSheetParam.js +29 -0
  236. package/dist/lib/typography.d.ts +1 -1
  237. package/dist/lib/typography.d.ts.map +1 -1
  238. package/dist/shape.css +24 -3
  239. package/dist/styles.css +1 -1
  240. package/dist/typography.css +55 -8
  241. package/docs/README.md +1 -1
  242. package/docs/component-contracts.md +101 -0
  243. package/docs/components.md +19 -12
  244. package/docs/exports.json +142 -15
  245. package/docs/patterns/components-accordion--flush.tsx +1 -1
  246. package/docs/patterns/components-appshell--portal-dashboard-pattern.tsx +176 -0
  247. package/docs/patterns/components-avatar--dropdown-row.tsx +1 -1
  248. package/docs/patterns/components-badge--outline-tags.tsx +1 -1
  249. package/docs/patterns/components-badge--status-pill.tsx +31 -0
  250. package/docs/patterns/components-badge--with-avatar.tsx +1 -1
  251. package/docs/patterns/components-band--page-in-bands.tsx +39 -0
  252. package/docs/patterns/components-breadcrumb--editorial.tsx +1 -1
  253. package/docs/patterns/components-breadcrumb--long-path.tsx +1 -1
  254. package/docs/patterns/components-breadcrumb--path.tsx +1 -1
  255. package/docs/patterns/components-breadcrumb--router-links.tsx +1 -1
  256. package/docs/patterns/components-button-button--copy-button.tsx +1 -1
  257. package/docs/patterns/components-button-button--destructive-action.tsx +1 -1
  258. package/docs/patterns/components-button-button--external-link.tsx +1 -1
  259. package/docs/patterns/components-button-button--ghost-action.tsx +1 -1
  260. package/docs/patterns/components-button-button--inverse-action.tsx +1 -1
  261. package/docs/patterns/components-button-button--link-render.tsx +1 -1
  262. package/docs/patterns/components-button-button--multi-state-badge.tsx +1 -1
  263. package/docs/patterns/components-button-button--outline-mono.tsx +1 -1
  264. package/docs/patterns/components-button-button--primary-action.tsx +1 -1
  265. package/docs/patterns/components-button-button--row-hug.tsx +1 -1
  266. package/docs/patterns/components-button-button--row-layout.tsx +1 -1
  267. package/docs/patterns/components-button-button--secondary-action.tsx +1 -1
  268. package/docs/patterns/components-button-button--suggestion-pills.tsx +1 -1
  269. package/docs/patterns/components-button-button--with-count.tsx +1 -1
  270. package/docs/patterns/components-button-button--with-icon.tsx +1 -1
  271. package/docs/patterns/components-button-floatingactionbutton--vertical-actions.tsx +1 -1
  272. package/docs/patterns/components-calembed--pattern-skip-in-footer.tsx +1 -1
  273. package/docs/patterns/components-card-card--body-slot-occupancy-history.tsx +1 -1
  274. package/docs/patterns/components-card-card--headerless-media.tsx +1 -1
  275. package/docs/patterns/components-card-card--outlined-layout.tsx +1 -1
  276. package/docs/patterns/components-card-card--pinned-height.tsx +1 -1
  277. package/docs/patterns/components-card-card--terminal-frame.tsx +48 -0
  278. package/docs/patterns/components-card-selectablecard--selectable-cards-pattern.tsx +1 -1
  279. package/docs/patterns/components-carousel--image-carousel.tsx +1 -1
  280. package/docs/patterns/components-chart--audience-activity-heatmap.tsx +1 -1
  281. package/docs/patterns/components-chart--cartesian-no-data-gaps.tsx +1 -1
  282. package/docs/patterns/components-chart--occupancy-history-in-card.tsx +1 -1
  283. package/docs/patterns/components-chart--occupancy-in-card.tsx +1 -1
  284. package/docs/patterns/components-chart--post-reach-distribution.tsx +1 -1
  285. package/docs/patterns/components-chart--ranked-audience-breakdown.tsx +1 -1
  286. package/docs/patterns/components-chart--revenue-by-line.tsx +68 -0
  287. package/docs/patterns/components-chart--segmented-ring-pattern.tsx +144 -0
  288. package/docs/patterns/components-chart--unit-grid-composition.tsx +1 -1
  289. package/docs/patterns/components-chatdock--pattern-chat-dock.tsx +1 -1
  290. package/docs/patterns/components-chatdock--pattern-start-project-gate.tsx +1 -1
  291. package/docs/patterns/components-chatqa--pattern-qa-with-reply.tsx +1 -1
  292. package/docs/patterns/components-checkbox-checkbox--default.tsx +1 -1
  293. package/docs/patterns/components-checkbox-checkbox--with-count.tsx +1 -1
  294. package/docs/patterns/components-checkbox-checkbox--with-description.tsx +1 -1
  295. package/docs/patterns/components-checkbox-checkboxgroup--default.tsx +1 -1
  296. package/docs/patterns/components-checkbox-checkboxgroup--option-counts.tsx +1 -1
  297. package/docs/patterns/components-copyfield--clipboard-blocked.tsx +9 -0
  298. package/docs/patterns/components-copyfield--copied.tsx +9 -0
  299. package/docs/patterns/components-copyfield--copy-key.tsx +9 -0
  300. package/docs/patterns/components-copyfield--on-navy.tsx +29 -0
  301. package/docs/patterns/components-descriptionlist--details.tsx +1 -1
  302. package/docs/patterns/components-descriptionlist--post-metadata.tsx +1 -1
  303. package/docs/patterns/components-dialog--alert-dialog-destructive.tsx +1 -1
  304. package/docs/patterns/components-dialog--alert-dialog-typed-confirmation.tsx +54 -0
  305. package/docs/patterns/components-dialog--default-dialog.tsx +1 -1
  306. package/docs/patterns/components-dialog--form-dialog.tsx +1 -1
  307. package/docs/patterns/components-displaycontrols--page-utilities.tsx +1 -1
  308. package/docs/patterns/components-displaycontrols--theme-switch.tsx +35 -0
  309. package/docs/patterns/components-field--horizontal-input.tsx +1 -1
  310. package/docs/patterns/components-field--horizontal-text-area.tsx +1 -1
  311. package/docs/patterns/components-field--multi-control.tsx +1 -1
  312. package/docs/patterns/components-filterpanel--panel.tsx +1 -1
  313. package/docs/patterns/components-footerreveal--marketing-hero-pattern.tsx +1 -1
  314. package/docs/patterns/components-footerreveal--marketing-hero-ruled-pattern.tsx +1 -1
  315. package/docs/patterns/components-footerreveal--marketing-hero-with-gallery-intro.tsx +1 -1
  316. package/docs/patterns/components-footerreveal--marketing-page-pattern.tsx +1 -1
  317. package/docs/patterns/components-footerreveal--ruled-grid-footer-pattern.tsx +1 -1
  318. package/docs/patterns/components-footerreveal--sequenced-marketing-hero.tsx +1 -1
  319. package/docs/patterns/components-herointro--two-line-intro.tsx +1 -1
  320. package/docs/patterns/components-herotilestack--marketing-hero-pattern.tsx +1 -1
  321. package/docs/patterns/components-herotilestack--marketing-hero-text-sequence.tsx +1 -1
  322. package/docs/patterns/components-herotilestack--marketing-hero-with-gallery-intro.tsx +1 -1
  323. package/docs/patterns/components-indexlist--post-index.tsx +1 -1
  324. package/docs/patterns/components-intakeconfirmation--booked-pattern.tsx +1 -1
  325. package/docs/patterns/components-intakeconfirmation--emailed-pattern.tsx +1 -1
  326. package/docs/patterns/components-intakeform--about-you-pattern.tsx +1 -1
  327. package/docs/patterns/components-intakeform--short-form-pattern.tsx +1 -1
  328. package/docs/patterns/components-intakemodal--intake-modal-pattern.tsx +1 -1
  329. package/docs/patterns/components-kbd--command-row.tsx +1 -1
  330. package/docs/patterns/components-kbd--numbered-choices.tsx +1 -1
  331. package/docs/patterns/components-kbd--shortcut.tsx +1 -1
  332. package/docs/patterns/components-linktile--resource-tile.tsx +1 -1
  333. package/docs/patterns/components-linktile--router-link.tsx +1 -1
  334. package/docs/patterns/components-logview--detail-pane.tsx +80 -0
  335. package/docs/patterns/components-logview--log-viewer.tsx +20 -0
  336. package/docs/patterns/components-moremenu--action-menu.tsx +1 -1
  337. package/docs/patterns/components-moremenu--in-card-header.tsx +1 -1
  338. package/docs/patterns/components-navlist--app-sidebar.tsx +118 -0
  339. package/docs/patterns/components-navlist--side-nav-settings.tsx +1 -1
  340. package/docs/patterns/components-pageheader--app-header-pattern.tsx +1 -1
  341. package/docs/patterns/components-pageheader--page-section-header.tsx +1 -1
  342. package/docs/patterns/components-pageheader--toolbar-header.tsx +1 -1
  343. package/docs/patterns/components-panel--end-detail-rail.tsx +1 -1
  344. package/docs/patterns/components-pillgroup--pill-group-pattern.tsx +1 -1
  345. package/docs/patterns/components-promptbar--pattern-prompt-bar.tsx +1 -1
  346. package/docs/patterns/components-prose--article-body.tsx +1 -1
  347. package/docs/patterns/components-radio-radiogroup--default.tsx +1 -1
  348. package/docs/patterns/components-scrollhorizontal--project-gallery-pattern.tsx +1 -1
  349. package/docs/patterns/components-scrollhorizontal--with-intro.tsx +1 -1
  350. package/docs/patterns/components-sectioncaption--column-caption.tsx +1 -1
  351. package/docs/patterns/components-sectioncaption--with-action.tsx +1 -1
  352. package/docs/patterns/components-sheet--bottom-sheet.tsx +1 -1
  353. package/docs/patterns/components-sheet--end-sheet.tsx +1 -1
  354. package/docs/patterns/components-sheet--side-sheet-header-actions.tsx +50 -0
  355. package/docs/patterns/components-sheet--side-sheet-url-deep-link.tsx +51 -0
  356. package/docs/patterns/components-sheet--side-sheet.tsx +38 -0
  357. package/docs/patterns/components-sitenav--brand-and-cta.tsx +1 -1
  358. package/docs/patterns/components-sitenav--centered-links.tsx +1 -1
  359. package/docs/patterns/components-sitenav--compact.tsx +1 -1
  360. package/docs/patterns/components-sitenav--marketing-header.tsx +1 -1
  361. package/docs/patterns/components-sitenav--mega-menu.tsx +1 -1
  362. package/docs/patterns/components-stat--hero-stat.tsx +54 -0
  363. package/docs/patterns/components-stat--insights-row.tsx +1 -1
  364. package/docs/patterns/components-stepprogress--step-progress-pattern.tsx +1 -1
  365. package/docs/patterns/components-switch--default.tsx +1 -1
  366. package/docs/patterns/components-switch--settings-row.tsx +1 -1
  367. package/docs/patterns/components-tab--settings-pages.tsx +1 -1
  368. package/docs/patterns/components-table--approvals-with-sheet.tsx +81 -0
  369. package/docs/patterns/components-table--approvals.tsx +223 -0
  370. package/docs/patterns/components-table--basic.tsx +60 -0
  371. package/docs/patterns/components-taskrows--action-details.tsx +1 -1
  372. package/docs/patterns/components-taskrows--capsules.tsx +1 -1
  373. package/docs/patterns/components-taskrows--card-with-status-rows.tsx +1 -1
  374. package/docs/patterns/components-taskrows--controlled-expand.tsx +1 -1
  375. package/docs/patterns/components-taskrows--custom-slots.tsx +1 -1
  376. package/docs/patterns/components-taskrows--needs-you-table.tsx +62 -0
  377. package/docs/patterns/components-taskrows--status-list.tsx +1 -1
  378. package/docs/patterns/components-taskrows--tag-chips.tsx +1 -1
  379. package/docs/patterns/components-textarea--save-status.tsx +32 -0
  380. package/docs/patterns/components-textlink--external-destination.tsx +1 -1
  381. package/docs/patterns/components-textlink--inline-prose.tsx +1 -1
  382. package/docs/patterns/components-textlink--quiet-title.tsx +1 -1
  383. package/docs/patterns/components-textlink--supporting-copy.tsx +1 -1
  384. package/docs/patterns/components-textsequence--default.tsx +1 -1
  385. package/docs/patterns/components-textsequence--reduced-motion.tsx +1 -1
  386. package/docs/patterns/components-textsequence--shapes.tsx +1 -1
  387. package/docs/patterns/components-tilegrid--masonry.tsx +1 -1
  388. package/docs/patterns/components-toast--stacked-notifications.tsx +1 -1
  389. package/docs/patterns/components-tooltip--controlled.tsx +1 -1
  390. package/docs/patterns/components-tooltip--disabled-control.tsx +1 -1
  391. package/docs/patterns/components-tooltip--icon-action.tsx +1 -1
  392. package/docs/patterns/components-tooltip--keyboard-shortcut.tsx +1 -1
  393. package/docs/patterns/components-tooltip--placement.tsx +1 -1
  394. package/docs/patterns/foundations-scroll-fade--horizontal-rail.tsx +1 -1
  395. package/docs/patterns/foundations-scroll-fade--overflowing-list.tsx +1 -1
  396. package/docs/patterns/guides-chart-explorations--comparison-gallery.tsx +1 -1
  397. package/docs/patterns/guides-filter-panel--filtered-grid.tsx +1 -1
  398. package/docs/patterns/guides-filter-panel--filtered-index.tsx +1 -1
  399. package/docs/patterns/guides-overlay-flows--notification-preferences.tsx +1 -1
  400. package/docs/patterns/guides-post-page--post-page.tsx +1 -1
  401. package/docs/patterns/guides-profile-typography--editorial-profile.tsx +1 -1
  402. package/docs/patterns/guides-resource-detail--detail.tsx +1 -1
  403. package/docs/patterns/index.json +193 -1
  404. package/package.json +1 -1
  405. package/dist/components/organisms/Tab/tabOverflow.d.ts +0 -14
  406. package/dist/components/organisms/Tab/tabOverflow.d.ts.map +0 -1
@@ -1 +1 @@
1
- {"version":3,"file":"MoreMenu.d.ts","sourceRoot":"","sources":["../../../../src/components/organisms/MoreMenu/MoreMenu.tsx"],"names":[],"mappings":"AAAA,OAAO,EASL,KAAK,SAAS,EACf,MAAM,OAAO,CAAC;AAEf,OAAO,EAAc,KAAK,cAAc,EAAE,MAAM,mCAAmC,CAAC;AASpF,MAAM,MAAM,YAAY,GAAG;IACzB,+CAA+C;IAC/C,EAAE,EAAE,MAAM,CAAC;IACX,KAAK,EAAE,MAAM,CAAC;IACd,KAAK,CAAC,EAAE,SAAS,CAAC;IAClB,GAAG,CAAC,EAAE,SAAS,CAAC;IAChB,QAAQ,CAAC,EAAE,OAAO,CAAC;CACpB,CAAC;AAEF,oDAAoD;AACpD,MAAM,MAAM,uBAAuB,GAAG,MAAM,CAAC;AAE7C,MAAM,WAAW,aAAa;IAC5B,0EAA0E;IAC1E,YAAY,EAAE,MAAM,CAAC;IACrB,KAAK,EAAE,YAAY,EAAE,CAAC;IACtB,QAAQ,CAAC,EAAE,CAAC,EAAE,EAAE,MAAM,KAAK,IAAI,CAAC;IAChC,8GAA8G;IAC9G,IAAI,CAAC,EAAE,cAAc,CAAC;IACtB,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,SAAS,CAAC,EAAE,uBAAuB,CAAC;CACrC;AAgBD;;;GAGG;AACH,wBAAgB,QAAQ,CAAC,EACvB,YAAY,EAAE,SAAS,EACvB,KAAK,EACL,QAAQ,EACR,IAAW,EACX,QAAgB,EAChB,SAAS,GACV,EAAE,aAAa,+BA6Mf"}
1
+ {"version":3,"file":"MoreMenu.d.ts","sourceRoot":"","sources":["../../../../src/components/organisms/MoreMenu/MoreMenu.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAU,KAAK,SAAS,EAAE,MAAM,OAAO,CAAC;AAE/C,OAAO,EAAc,KAAK,cAAc,EAAE,MAAM,mCAAmC,CAAC;AAUpF,MAAM,MAAM,YAAY,GAAG;IACzB,+CAA+C;IAC/C,EAAE,EAAE,MAAM,CAAC;IACX,KAAK,EAAE,MAAM,CAAC;IACd,KAAK,CAAC,EAAE,SAAS,CAAC;IAClB,GAAG,CAAC,EAAE,SAAS,CAAC;IAChB,QAAQ,CAAC,EAAE,OAAO,CAAC;CACpB,CAAC;AAEF,oDAAoD;AACpD,MAAM,MAAM,uBAAuB,GAAG,MAAM,CAAC;AAE7C,MAAM,WAAW,aAAa;IAC5B,0EAA0E;IAC1E,YAAY,EAAE,MAAM,CAAC;IACrB,KAAK,EAAE,YAAY,EAAE,CAAC;IACtB,QAAQ,CAAC,EAAE,CAAC,EAAE,EAAE,MAAM,KAAK,IAAI,CAAC;IAChC,8GAA8G;IAC9G,IAAI,CAAC,EAAE,cAAc,CAAC;IACtB,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,SAAS,CAAC,EAAE,uBAAuB,CAAC;CACrC;AAgBD;;;GAGG;AACH,wBAAgB,QAAQ,CAAC,EACvB,YAAY,EAAE,SAAS,EACvB,KAAK,EACL,QAAQ,EACR,IAAW,EACX,QAAgB,EAChB,SAAS,GACV,EAAE,aAAa,+BA6Df"}
@@ -3,126 +3,70 @@ import { cn as e } from "../../../lib/cn.js";
3
3
  import { IconButton as t } from "../../atoms/IconButton/IconButton.js";
4
4
  import { Dropdown as n } from "../../molecules/Dropdown/Dropdown.js";
5
5
  import { measureDropdownMenuStyle as r } from "../../molecules/Dropdown/dropdownMenuPosition.js";
6
- import { moreMenuRootClasses as i } from "./moreMenuStyles.js";
7
- import { useCallback as a, useEffect as o, useId as s, useLayoutEffect as c, useRef as l, useState as u } from "react";
8
- import { EllipsisVertical as d } from "lucide-react";
9
- import { jsx as f, jsxs as p } from "react/jsx-runtime";
6
+ import { useDropdownMenu as i } from "../../molecules/Dropdown/useDropdownMenu.js";
7
+ import { moreMenuRootClasses as a } from "./moreMenuStyles.js";
8
+ import { useRef as o } from "react";
9
+ import { EllipsisVertical as s } from "lucide-react";
10
+ import { jsx as c, jsxs as l } from "react/jsx-runtime";
10
11
  //#region src/components/organisms/MoreMenu/MoreMenu.tsx
11
- function m(e) {
12
+ function u(e) {
12
13
  e.items.length === 0 && console.warn("[WMDS MoreMenu] `items` must not be empty.");
13
14
  }
14
- function h(e) {
15
+ function d(e) {
15
16
  return e.map((e) => ({
16
17
  label: e.label,
17
18
  start: e.start,
18
19
  end: e.end
19
20
  }));
20
21
  }
21
- function g({ "aria-label": g, items: _, onAction: v, size: y = "sm", disabled: b = !1, className: x }) {
22
- let S = s(), C = l(null), w = l(null), [T, E] = u(!1), [D, O] = u(null), [k, A] = u(0);
23
- m({
24
- "aria-label": g,
25
- items: _
22
+ function f({ "aria-label": f, items: p, onAction: m, size: h = "sm", disabled: g = !1, className: _ }) {
23
+ let v = o(null);
24
+ u({
25
+ "aria-label": f,
26
+ items: p
26
27
  });
27
- let j = a(() => {
28
- E(!1), O(null);
29
- }, []), M = a(() => {
30
- let e = w.current;
31
- e != null && O(r(e, h(_), {
28
+ let y = i({
29
+ rows: p,
30
+ triggerRef: v,
31
+ focus: "items",
32
+ measure: () => v.current == null ? null : r(v.current, d(p), {
32
33
  align: "end",
33
34
  widthMode: "content"
34
- })), E(!0);
35
- }, [_]), N = a((e) => {
36
- v?.(e), j();
37
- }, [j, v]), P = a(() => {
38
- let e = w.current;
39
- e != null && O(r(e, h(_), {
40
- align: "end",
41
- widthMode: "content"
42
- }));
43
- }, [_]);
44
- c(() => {
45
- if (T) return P(), window.addEventListener("resize", P), window.addEventListener("scroll", P, !0), () => {
46
- window.removeEventListener("resize", P), window.removeEventListener("scroll", P, !0);
47
- };
48
- }, [T, P]), o(() => {
49
- if (!T) return;
50
- function e(e) {
51
- C.current != null && !C.current.contains(e.target) && j();
52
- }
53
- return document.addEventListener("mousedown", e), () => {
54
- document.removeEventListener("mousedown", e);
55
- };
56
- }, [j, T]), o(() => {
57
- T && A((e) => Math.min(e, Math.max(_.length - 1, 0)));
58
- }, [_.length, T]);
59
- function F(e) {
60
- A((t) => {
61
- if (_.length === 0) return 0;
62
- let n = t;
63
- for (let t = 0; t < _.length; t += 1) if (n = (n + e + _.length) % _.length, !_[n]?.disabled) return n;
64
- return t;
65
- });
66
- }
67
- function I(e) {
68
- if (!b) switch (e.key) {
69
- case "ArrowDown":
70
- e.preventDefault(), T ? F(1) : M();
71
- break;
72
- case "ArrowUp":
73
- e.preventDefault(), T ? F(-1) : M();
74
- break;
75
- case "Enter":
76
- case " ":
77
- if (e.preventDefault(), T) {
78
- let e = _[k];
79
- e != null && !e.disabled && N(e.id);
80
- } else M();
81
- break;
82
- case "Escape": e.preventDefault(), j();
83
- }
35
+ })
36
+ });
37
+ function b(e) {
38
+ e.disabled || (y.close({ returnFocus: !0 }), m?.(e.id));
84
39
  }
85
- return /* @__PURE__ */ p("div", {
86
- ref: C,
87
- className: e(i, x),
88
- children: [/* @__PURE__ */ f("div", {
89
- ref: w,
90
- className: "inline-flex",
91
- children: /* @__PURE__ */ f(t, {
92
- size: y,
93
- role: "ghost",
94
- icon: /* @__PURE__ */ f(d, { strokeWidth: 2 }),
95
- "aria-label": g,
96
- "aria-haspopup": "menu",
97
- "aria-expanded": T,
98
- "aria-controls": T ? S : void 0,
99
- disabled: b,
100
- onClick: () => {
101
- b || (T ? j() : M());
102
- },
103
- onKeyDown: I
104
- })
105
- }), T && D != null ? /* @__PURE__ */ f(n.Menu, {
106
- id: S,
40
+ return /* @__PURE__ */ l("div", {
41
+ ...y.rootProps,
42
+ className: e(a, _),
43
+ children: [/* @__PURE__ */ c(t, {
44
+ ref: v,
45
+ size: h,
46
+ role: "ghost",
47
+ icon: /* @__PURE__ */ c(s, { strokeWidth: 2 }),
48
+ "aria-label": f,
49
+ "aria-haspopup": "menu",
50
+ "aria-expanded": y.triggerProps["aria-expanded"],
51
+ "aria-controls": y.triggerProps["aria-controls"],
52
+ disabled: g,
53
+ onClick: () => {
54
+ g || y.toggle();
55
+ }
56
+ }), y.open && y.menuStyle != null ? /* @__PURE__ */ c(n.Menu, {
57
+ ...y.menuProps,
107
58
  role: "menu",
108
- "aria-label": g,
109
- style: D,
110
- children: _.map((e, t) => /* @__PURE__ */ f("li", {
59
+ "aria-label": f,
60
+ children: p.map((e, t) => /* @__PURE__ */ c("li", {
111
61
  role: "presentation",
112
- children: /* @__PURE__ */ f(n.Item, {
62
+ children: /* @__PURE__ */ c(n.Item, {
63
+ ...y.rowProps(t),
113
64
  role: "menuitem",
114
- tabIndex: -1,
115
65
  truncate: !1,
116
- active: t === k,
117
66
  disabled: e.disabled,
118
67
  start: e.start,
119
68
  end: e.end,
120
- onMouseEnter: () => {
121
- e.disabled || A(t);
122
- },
123
- onClick: () => {
124
- e.disabled || N(e.id);
125
- },
69
+ onClick: () => b(e),
126
70
  children: e.label
127
71
  })
128
72
  }, e.id))
@@ -130,4 +74,4 @@ function g({ "aria-label": g, items: _, onAction: v, size: y = "sm", disabled: b
130
74
  });
131
75
  }
132
76
  //#endregion
133
- export { g as MoreMenu };
77
+ export { f as MoreMenu };
@@ -1 +1 @@
1
- {"version":3,"file":"Panel.d.ts","sourceRoot":"","sources":["../../../../src/components/organisms/Panel/Panel.tsx"],"names":[],"mappings":"AAAA,OAAO,EAIL,KAAK,SAAS,EACf,MAAM,OAAO,CAAC;AAef,OAAO,EAOL,UAAU,EAEV,UAAU,EACV,KAAK,SAAS,EACd,KAAK,SAAS,EACf,MAAM,eAAe,CAAC;AAEvB,YAAY,EAAE,SAAS,EAAE,SAAS,EAAE,MAAM,eAAe,CAAC;AAC1D,OAAO,EAAE,UAAU,EAAE,UAAU,EAAE,CAAC;AAElC,uDAAuD;AACvD,MAAM,MAAM,oBAAoB,GAAG,MAAM,CAAC;AAE1C,MAAM,WAAW,UAAU;IACzB,IAAI,EAAE,OAAO,CAAC;IACd,YAAY,EAAE,CAAC,IAAI,EAAE,OAAO,KAAK,IAAI,CAAC;IACtC,wCAAwC;IACxC,eAAe,CAAC,EAAE,OAAO,CAAC;IAC1B,QAAQ,EAAE,SAAS,CAAC;CACrB;AAED,MAAM,WAAW,iBAAiB;IAChC,sFAAsF;IACtF,IAAI,CAAC,EAAE,SAAS,CAAC;IACjB,IAAI,CAAC,EAAE,SAAS,CAAC;IACjB,KAAK,CAAC,EAAE,SAAS,CAAC;IAClB,WAAW,CAAC,EAAE,SAAS,CAAC;IACxB,WAAW,CAAC,EAAE,SAAS,CAAC;IACxB,SAAS,CAAC,EAAE,OAAO,CAAC;IACpB,MAAM,CAAC,EAAE,SAAS,CAAC;IACnB,SAAS,CAAC,EAAE,oBAAoB,CAAC;IACjC,QAAQ,CAAC,EAAE,SAAS,CAAC;CACtB;AAiGD,iBAAS,SAAS,CAAC,EACjB,IAAI,EACJ,YAAY,EACZ,eAAsB,EACtB,QAAQ,GACT,EAAE,UAAU,+BAkBZ;AAED,iBAAS,YAAY,CAAC,EACpB,QAAQ,EACR,SAAS,GACV,EAAE;IACD,QAAQ,EAAE,SAAS,CAAC;IACpB,SAAS,CAAC,EAAE,oBAAoB,CAAC;CAClC,+BAmBA;AAED,iBAAS,YAAY,CAAC,EACpB,IAAY,EACZ,IAAW,EACX,KAAK,EACL,WAAW,EACX,WAAW,EACX,SAAgB,EAChB,MAAM,EACN,SAAS,EACT,QAAQ,GACT,EAAE,iBAAiB,+BAyDnB;AAED;;;GAGG;AACH,eAAO,MAAM,KAAK;;;CAGhB,CAAC"}
1
+ {"version":3,"file":"Panel.d.ts","sourceRoot":"","sources":["../../../../src/components/organisms/Panel/Panel.tsx"],"names":[],"mappings":"AAAA,OAAO,EAGL,KAAK,SAAS,EACf,MAAM,OAAO,CAAC;AAgBf,OAAO,EAOL,UAAU,EAEV,UAAU,EACV,KAAK,SAAS,EACd,KAAK,SAAS,EACf,MAAM,eAAe,CAAC;AAEvB,YAAY,EAAE,SAAS,EAAE,SAAS,EAAE,MAAM,eAAe,CAAC;AAC1D,OAAO,EAAE,UAAU,EAAE,UAAU,EAAE,CAAC;AAElC,uDAAuD;AACvD,MAAM,MAAM,oBAAoB,GAAG,MAAM,CAAC;AAE1C,MAAM,WAAW,UAAU;IACzB,IAAI,EAAE,OAAO,CAAC;IACd,YAAY,EAAE,CAAC,IAAI,EAAE,OAAO,KAAK,IAAI,CAAC;IACtC,wCAAwC;IACxC,eAAe,CAAC,EAAE,OAAO,CAAC;IAC1B,QAAQ,EAAE,SAAS,CAAC;CACrB;AAED,MAAM,WAAW,iBAAiB;IAChC,sFAAsF;IACtF,IAAI,CAAC,EAAE,SAAS,CAAC;IACjB,IAAI,CAAC,EAAE,SAAS,CAAC;IACjB,KAAK,CAAC,EAAE,SAAS,CAAC;IAClB,WAAW,CAAC,EAAE,SAAS,CAAC;IACxB,WAAW,CAAC,EAAE,SAAS,CAAC;IACxB,SAAS,CAAC,EAAE,OAAO,CAAC;IACpB,MAAM,CAAC,EAAE,SAAS,CAAC;IACnB,SAAS,CAAC,EAAE,oBAAoB,CAAC;IACjC,QAAQ,CAAC,EAAE,SAAS,CAAC;CACtB;AAyED,iBAAS,SAAS,CAAC,EACjB,IAAI,EACJ,YAAY,EACZ,eAAsB,EACtB,QAAQ,GACT,EAAE,UAAU,+BAkBZ;AAED,iBAAS,YAAY,CAAC,EACpB,QAAQ,EACR,SAAS,GACV,EAAE;IACD,QAAQ,EAAE,SAAS,CAAC;IACpB,SAAS,CAAC,EAAE,oBAAoB,CAAC;CAClC,+BAmBA;AAED,iBAAS,YAAY,CAAC,EACpB,IAAY,EACZ,IAAW,EACX,KAAK,EACL,WAAW,EACX,WAAW,EACX,SAAgB,EAChB,MAAM,EACN,SAAS,EACT,QAAQ,GACT,EAAE,iBAAiB,+BAyDnB;AAED;;;GAGG;AACH,eAAO,MAAM,KAAK;;;CAGhB,CAAC"}
@@ -1,63 +1,54 @@
1
1
  "use client";
2
2
  import { cn as e } from "../../../lib/cn.js";
3
- import { overlayPanelBodyScrollClasses as t, overlayPanelChromeClasses as n, overlayPanelFooterClasses as r, overlayPanelFooterDelineatedInnerClasses as i, overlayPanelFooterDelineatedShellClasses as a, overlayPanelFooterHairlineClasses as o, overlayPanelSectionStackClasses as s } from "../Dialog/dialogStyles.js";
4
- import { OverlayPanelHeader as c } from "../Dialog/OverlayPanelHeader.js";
5
- import { PanelProvider as l, usePanelContext as u, usePanelLabelIds as d } from "./PanelContext.js";
6
- import { sheetPanelPlacementClasses as f } from "../Sheet/sheetStyles.js";
7
- import { panelBackdropClasses as p, panelMotionTransition as m, panelMotionVariants as h, panelOverlayRootClasses as g, panelShellClasses as _, panelSides as v, panelSizeClasses as y, panelSizes as b } from "./panelStyles.js";
8
- import { useCallback as x, useEffect as S, useRef as C } from "react";
3
+ import { useOverlayLifecycle as t } from "../../../lib/dialogOverlay.js";
4
+ import { overlayPanelBodyScrollClasses as n, overlayPanelChromeClasses as r, overlayPanelFooterClasses as i, overlayPanelFooterDelineatedInnerClasses as a, overlayPanelFooterDelineatedShellClasses as o, overlayPanelFooterHairlineClasses as s, overlayPanelSectionStackClasses as c } from "../Dialog/dialogStyles.js";
5
+ import { OverlayPanelHeader as l } from "../Dialog/OverlayPanelHeader.js";
6
+ import { PanelProvider as u, usePanelContext as d, usePanelLabelIds as f } from "./PanelContext.js";
7
+ import { sheetPanelPlacementClasses as p } from "../Sheet/sheetStyles.js";
8
+ import { panelBackdropClasses as m, panelMotionTransition as h, panelMotionVariants as g, panelOverlayRootClasses as _, panelShellClasses as v, panelSides as y, panelSizeClasses as b, panelSizes as x } from "./panelStyles.js";
9
+ import { useCallback as S, useRef as C } from "react";
9
10
  import { jsx as w, jsxs as T } from "react/jsx-runtime";
10
11
  import { AnimatePresence as E, motion as D } from "motion/react";
11
12
  import { createPortal as O } from "react-dom";
12
13
  //#region src/components/organisms/Panel/Panel.tsx
13
- function k({ side: t, size: r, "aria-labelledby": i, "aria-describedby": a, children: o }) {
14
- let { open: s, onOpenChange: c, dismissOnEscape: l, triggerRef: d } = u("PanelPortal"), v = C(null), b = C(null), k = x(() => {
15
- c(!1);
16
- }, [c]);
17
- return S(() => {
18
- if (s) return b.current = d.current ?? document.activeElement, () => {
19
- b.current?.focus?.();
20
- };
21
- }, [s, d]), S(() => {
22
- if (!s || !l) return;
23
- function e(e) {
24
- e.key === "Escape" && (e.preventDefault(), k());
25
- }
26
- return document.addEventListener("keydown", e), () => {
27
- document.removeEventListener("keydown", e);
28
- };
29
- }, [
30
- k,
31
- l,
32
- s
33
- ]), typeof document > "u" ? null : O(/* @__PURE__ */ w(E, { children: s ? /* @__PURE__ */ T(D.div, {
34
- className: g[t],
14
+ function k({ side: n, size: i, "aria-labelledby": a, "aria-describedby": o, children: s }) {
15
+ let { open: c, onOpenChange: l, dismissOnEscape: u, triggerRef: f } = d("PanelPortal"), y = C(null), x = S(() => {
16
+ l(!1);
17
+ }, [l]);
18
+ return t(y, {
19
+ open: c,
20
+ onClose: x,
21
+ modal: !1,
22
+ closeOnEscape: u,
23
+ returnFocusRef: f
24
+ }), typeof document > "u" ? null : O(/* @__PURE__ */ w(E, { children: c ? /* @__PURE__ */ T(D.div, {
25
+ className: _[n],
35
26
  initial: { opacity: 0 },
36
27
  animate: { opacity: 1 },
37
28
  exit: { opacity: 0 },
38
- transition: m(t),
29
+ transition: h(n),
39
30
  children: [/* @__PURE__ */ w("div", {
40
- className: p,
31
+ className: m,
41
32
  "aria-hidden": "true"
42
33
  }), /* @__PURE__ */ w(D.div, {
43
- ref: v,
44
- className: e(_, f[t], y(t, r), n),
34
+ ref: y,
35
+ className: e(v, p[n], b(n, i), r),
45
36
  role: "dialog",
46
37
  "aria-modal": "false",
47
- "aria-labelledby": i,
48
- "aria-describedby": a,
49
- variants: h(t),
38
+ "aria-labelledby": a,
39
+ "aria-describedby": o,
40
+ variants: g(n),
50
41
  initial: "hidden",
51
42
  animate: "visible",
52
43
  exit: "exit",
53
- transition: m(t),
54
- children: o
44
+ transition: h(n),
45
+ children: s
55
46
  })]
56
47
  }) : null }), document.body);
57
48
  }
58
49
  function A({ open: e, onOpenChange: t, dismissOnEscape: n = !0, children: r }) {
59
- let { titleId: i, descriptionId: a } = d("panel"), o = C(null);
60
- return /* @__PURE__ */ w(l, {
50
+ let { titleId: i, descriptionId: a } = f("panel"), o = C(null);
51
+ return /* @__PURE__ */ w(u, {
61
52
  value: {
62
53
  open: e,
63
54
  onOpenChange: t,
@@ -70,7 +61,7 @@ function A({ open: e, onOpenChange: t, dismissOnEscape: n = !0, children: r }) {
70
61
  });
71
62
  }
72
63
  function j({ children: e, className: t }) {
73
- let { onOpenChange: n, triggerRef: r } = u("Panel.Trigger");
64
+ let { onOpenChange: n, triggerRef: r } = d("Panel.Trigger");
74
65
  return /* @__PURE__ */ w("span", {
75
66
  ref: r,
76
67
  className: t,
@@ -81,20 +72,20 @@ function j({ children: e, className: t }) {
81
72
  children: e
82
73
  });
83
74
  }
84
- function M({ side: n = "end", size: l = "md", title: d, description: f, headerStart: p, showClose: m = !0, footer: h, className: g, children: _ }) {
85
- let { titleId: v, descriptionId: y, onOpenChange: b } = u("Panel.Content"), x = d != null, S = f != null, C = _ != null || !x && S, E = h != null;
75
+ function M({ side: t = "end", size: r = "md", title: u, description: f, headerStart: p, showClose: m = !0, footer: h, className: g, children: _ }) {
76
+ let { titleId: v, descriptionId: y, onOpenChange: b } = d("Panel.Content"), x = u != null, S = f != null, C = _ != null || !x && S, E = h != null;
86
77
  return /* @__PURE__ */ w(k, {
87
- side: n,
88
- size: l,
78
+ side: t,
79
+ size: r,
89
80
  "aria-labelledby": x ? v : void 0,
90
81
  "aria-describedby": S ? y : void 0,
91
82
  children: /* @__PURE__ */ T("div", {
92
- className: e(s, h == null ? "pb-4" : void 0, g),
83
+ className: e(c, h == null ? "pb-4" : void 0, g),
93
84
  children: [
94
- /* @__PURE__ */ w(c, {
85
+ /* @__PURE__ */ w(l, {
95
86
  titleId: v,
96
87
  descriptionId: y,
97
- title: d,
88
+ title: u,
98
89
  description: f,
99
90
  headerStart: p,
100
91
  showClose: m,
@@ -103,7 +94,7 @@ function M({ side: n = "end", size: l = "md", title: d, description: f, headerSt
103
94
  delineated: C || E
104
95
  }),
105
96
  C ? /* @__PURE__ */ T("div", {
106
- className: t,
97
+ className: n,
107
98
  children: [!x && S ? /* @__PURE__ */ w("p", {
108
99
  id: y,
109
100
  className: "text-muted",
@@ -111,16 +102,16 @@ function M({ side: n = "end", size: l = "md", title: d, description: f, headerSt
111
102
  }) : null, _]
112
103
  }) : null,
113
104
  E ? C ? /* @__PURE__ */ T("footer", {
114
- className: a,
105
+ className: o,
115
106
  children: [/* @__PURE__ */ w("hr", {
116
- className: o,
107
+ className: s,
117
108
  "aria-hidden": "true"
118
109
  }), /* @__PURE__ */ w("div", {
119
- className: i,
110
+ className: a,
120
111
  children: h
121
112
  })]
122
113
  }) : /* @__PURE__ */ w("footer", {
123
- className: e(r, "pb-4"),
114
+ className: e(i, "pb-4"),
124
115
  children: h
125
116
  }) : null
126
117
  ]
@@ -132,4 +123,4 @@ var N = Object.assign(A, {
132
123
  Content: M
133
124
  });
134
125
  //#endregion
135
- export { N as Panel, v as panelSides, b as panelSizes };
126
+ export { N as Panel, y as panelSides, x as panelSizes };
@@ -22,6 +22,8 @@ export interface SheetContentProps {
22
22
  description?: ReactNode;
23
23
  /** Leading header slot — icon, **Badge**, **Status** (**Card.Header** `start`). */
24
24
  headerStart?: ReactNode;
25
+ /** Actions before the close — **IconButton** `size="sm"` or **Button** `size="xs"` (share, open in full, previous / next). */
26
+ headerActions?: ReactNode;
25
27
  showClose?: boolean;
26
28
  footer?: ReactNode;
27
29
  className?: SheetLayoutClassName;
@@ -32,7 +34,7 @@ declare function SheetTrigger({ children, className, }: {
32
34
  children: ReactNode;
33
35
  className?: SheetLayoutClassName;
34
36
  }): import("react").JSX.Element;
35
- declare function SheetContent({ side, size, title, description, headerStart, showClose, footer, className, children, }: SheetContentProps): import("react").JSX.Element;
37
+ declare function SheetContent({ side, size, title, description, headerStart, headerActions, showClose, footer, className, children, }: SheetContentProps): import("react").JSX.Element;
36
38
  /**
37
39
  * Edge-attached dismissible overlay — bottom drawer or side sheet.
38
40
  * Shares scrim/focus/scroll lock with **Dialog**; reserve **Panel** for a future persistent flyover pattern.
@@ -1 +1 @@
1
- {"version":3,"file":"Sheet.d.ts","sourceRoot":"","sources":["../../../../src/components/organisms/Sheet/Sheet.tsx"],"names":[],"mappings":"AAAA,OAAO,EAKL,KAAK,SAAS,EACf,MAAM,OAAO,CAAC;AAqBf,OAAO,EAQL,UAAU,EACV,UAAU,EACV,KAAK,SAAS,EACd,KAAK,SAAS,EACf,MAAM,eAAe,CAAC;AAEvB,YAAY,EAAE,SAAS,EAAE,SAAS,EAAE,MAAM,eAAe,CAAC;AAC1D,OAAO,EAAE,UAAU,EAAE,UAAU,EAAE,CAAC;AAElC,uDAAuD;AACvD,MAAM,MAAM,oBAAoB,GAAG,MAAM,CAAC;AAE1C,MAAM,WAAW,UAAU;IACzB,IAAI,EAAE,OAAO,CAAC;IACd,YAAY,EAAE,CAAC,IAAI,EAAE,OAAO,KAAK,IAAI,CAAC;IACtC,wDAAwD;IACxD,iBAAiB,CAAC,EAAE,OAAO,CAAC;IAC5B,wCAAwC;IACxC,eAAe,CAAC,EAAE,OAAO,CAAC;IAC1B,QAAQ,EAAE,SAAS,CAAC;CACrB;AAED,MAAM,WAAW,iBAAiB;IAChC,gFAAgF;IAChF,IAAI,CAAC,EAAE,SAAS,CAAC;IACjB,0EAA0E;IAC1E,IAAI,CAAC,EAAE,SAAS,CAAC;IACjB,KAAK,CAAC,EAAE,SAAS,CAAC;IAClB,WAAW,CAAC,EAAE,SAAS,CAAC;IACxB,mFAAmF;IACnF,WAAW,CAAC,EAAE,SAAS,CAAC;IACxB,SAAS,CAAC,EAAE,OAAO,CAAC;IACpB,MAAM,CAAC,EAAE,SAAS,CAAC;IACnB,SAAS,CAAC,EAAE,oBAAoB,CAAC;IACjC,QAAQ,CAAC,EAAE,SAAS,CAAC;CACtB;AAoID,iBAAS,SAAS,CAAC,EACjB,IAAI,EACJ,YAAY,EACZ,iBAAwB,EACxB,eAAsB,EACtB,QAAQ,GACT,EAAE,UAAU,+BAmBZ;AAED,iBAAS,YAAY,CAAC,EACpB,QAAQ,EACR,SAAS,GACV,EAAE;IACD,QAAQ,EAAE,SAAS,CAAC;IACpB,SAAS,CAAC,EAAE,oBAAoB,CAAC;CAClC,+BAmBA;AAED,iBAAS,YAAY,CAAC,EACpB,IAAe,EACf,IAAW,EACX,KAAK,EACL,WAAW,EACX,WAAW,EACX,SAAgB,EAChB,MAAM,EACN,SAAS,EACT,QAAQ,GACT,EAAE,iBAAiB,+BAyDnB;AAED;;;GAGG;AACH,eAAO,MAAM,KAAK;;;CAGhB,CAAC"}
1
+ {"version":3,"file":"Sheet.d.ts","sourceRoot":"","sources":["../../../../src/components/organisms/Sheet/Sheet.tsx"],"names":[],"mappings":"AAAA,OAAO,EAIL,KAAK,SAAS,EACf,MAAM,OAAO,CAAC;AAiBf,OAAO,EAWL,UAAU,EACV,UAAU,EACV,KAAK,SAAS,EACd,KAAK,SAAS,EACf,MAAM,eAAe,CAAC;AAEvB,YAAY,EAAE,SAAS,EAAE,SAAS,EAAE,MAAM,eAAe,CAAC;AAC1D,OAAO,EAAE,UAAU,EAAE,UAAU,EAAE,CAAC;AAElC,uDAAuD;AACvD,MAAM,MAAM,oBAAoB,GAAG,MAAM,CAAC;AAE1C,MAAM,WAAW,UAAU;IACzB,IAAI,EAAE,OAAO,CAAC;IACd,YAAY,EAAE,CAAC,IAAI,EAAE,OAAO,KAAK,IAAI,CAAC;IACtC,wDAAwD;IACxD,iBAAiB,CAAC,EAAE,OAAO,CAAC;IAC5B,wCAAwC;IACxC,eAAe,CAAC,EAAE,OAAO,CAAC;IAC1B,QAAQ,EAAE,SAAS,CAAC;CACrB;AAED,MAAM,WAAW,iBAAiB;IAChC,gFAAgF;IAChF,IAAI,CAAC,EAAE,SAAS,CAAC;IACjB,0EAA0E;IAC1E,IAAI,CAAC,EAAE,SAAS,CAAC;IACjB,KAAK,CAAC,EAAE,SAAS,CAAC;IAClB,WAAW,CAAC,EAAE,SAAS,CAAC;IACxB,mFAAmF;IACnF,WAAW,CAAC,EAAE,SAAS,CAAC;IACxB,8HAA8H;IAC9H,aAAa,CAAC,EAAE,SAAS,CAAC;IAC1B,SAAS,CAAC,EAAE,OAAO,CAAC;IACpB,MAAM,CAAC,EAAE,SAAS,CAAC;IACnB,SAAS,CAAC,EAAE,oBAAoB,CAAC;IACjC,QAAQ,CAAC,EAAE,SAAS,CAAC;CACtB;AAwGD,iBAAS,SAAS,CAAC,EACjB,IAAI,EACJ,YAAY,EACZ,iBAAwB,EACxB,eAAsB,EACtB,QAAQ,GACT,EAAE,UAAU,+BAmBZ;AAED,iBAAS,YAAY,CAAC,EACpB,QAAQ,EACR,SAAS,GACV,EAAE;IACD,QAAQ,EAAE,SAAS,CAAC;IACpB,SAAS,CAAC,EAAE,oBAAoB,CAAC;CAClC,+BAmBA;AAED,iBAAS,YAAY,CAAC,EACpB,IAAe,EACf,IAAW,EACX,KAAK,EACL,WAAW,EACX,WAAW,EACX,aAAa,EACb,SAAgB,EAChB,MAAM,EACN,SAAS,EACT,QAAQ,GACT,EAAE,iBAAiB,+BA8DnB;AAED;;;GAGG;AACH,eAAO,MAAM,KAAK;;;CAGhB,CAAC"}
@@ -1,79 +1,63 @@
1
1
  "use client";
2
2
  import { cn as e } from "../../../lib/cn.js";
3
3
  import { motionTransitionProp as t } from "../../../lib/motion.js";
4
- import { dialogBackdropClasses as n, overlayPanelBodyScrollClasses as r, overlayPanelChromeClasses as i, overlayPanelFooterClasses as a, overlayPanelFooterDelineatedInnerClasses as o, overlayPanelFooterDelineatedShellClasses as s, overlayPanelFooterHairlineClasses as c, overlayPanelSectionStackClasses as l } from "../Dialog/dialogStyles.js";
5
- import { OverlayPanelHeader as u } from "../Dialog/OverlayPanelHeader.js";
6
- import { focusInitialElement as d, lockBodyScroll as f, trapFocus as p } from "../../../lib/dialogOverlay.js";
7
- import { sheetOverlayRootClasses as m, sheetPanelBaseClasses as h, sheetPanelMotionTransition as g, sheetPanelMotionVariants as _, sheetPanelPlacementClasses as v, sheetPanelSizeClasses as y, sheetSides as b, sheetSizes as x } from "./sheetStyles.js";
8
- import { SheetProvider as S, useSheetContext as C, useSheetLabelIds as w } from "./SheetContext.js";
9
- import { useCallback as T, useEffect as E, useRef as D } from "react";
4
+ import { useOverlayLifecycle as n } from "../../../lib/dialogOverlay.js";
5
+ import { dialogBackdropClasses as r, overlayPanelBodyScrollClasses as i, overlayPanelChromeClasses as a, overlayPanelFooterClasses as o, overlayPanelFooterDelineatedInnerClasses as s, overlayPanelFooterDelineatedShellClasses as c, overlayPanelFooterHairlineClasses as l, overlayPanelSectionStackClasses as u } from "../Dialog/dialogStyles.js";
6
+ import { OverlayPanelHeader as d } from "../Dialog/OverlayPanelHeader.js";
7
+ import { sheetEndBackdropClasses as f, sheetOverlayRootClasses as p, sheetPanelBaseClasses as m, sheetPanelMotionTransition as h, sheetPanelMotionVariants as g, sheetPanelPlacementClasses as _, sheetPanelReducedMotionVariants as v, sheetPanelSizeClasses as y, sheetSafeAreaBottomClasses as b, sheetSides as x, sheetSizes as S } from "./sheetStyles.js";
8
+ import { SheetProvider as C, useSheetContext as w, useSheetLabelIds as T } from "./SheetContext.js";
9
+ import { useCallback as E, useRef as D } from "react";
10
10
  import { jsx as O, jsxs as k } from "react/jsx-runtime";
11
- import { AnimatePresence as A, motion as j } from "motion/react";
12
- import { createPortal as M } from "react-dom";
11
+ import { AnimatePresence as A, motion as j, useReducedMotion as M } from "motion/react";
12
+ import { createPortal as N } from "react-dom";
13
13
  //#region src/components/organisms/Sheet/Sheet.tsx
14
- function N({ side: r, size: a, "aria-labelledby": o, "aria-describedby": s, children: c }) {
15
- let { open: l, onOpenChange: u, dismissOnBackdrop: b, dismissOnEscape: x, triggerRef: S } = C("SheetPortal"), w = D(null), N = D(null), P = T(() => {
16
- u(!1);
17
- }, [u]);
18
- E(() => {
19
- if (!l) return;
20
- N.current = S.current ?? document.activeElement;
21
- let e = f(), t = w.current, n = () => {};
22
- return t != null && (n = p(t), window.requestAnimationFrame(() => {
23
- d(t);
24
- })), () => {
25
- n(), e(), N.current?.focus?.();
26
- };
27
- }, [l, S]), E(() => {
28
- if (!l || !x) return;
29
- function e(e) {
30
- e.key === "Escape" && (e.preventDefault(), P());
31
- }
32
- return document.addEventListener("keydown", e), () => {
33
- document.removeEventListener("keydown", e);
34
- };
35
- }, [
36
- P,
37
- x,
38
- l
39
- ]);
14
+ function P({ side: i, size: o, "aria-labelledby": s, "aria-describedby": c, children: l }) {
15
+ let { open: u, onOpenChange: d, dismissOnBackdrop: b, dismissOnEscape: x, triggerRef: S } = w("SheetPortal"), C = M(), T = D(null), P = E(() => {
16
+ d(!1);
17
+ }, [d]);
18
+ n(T, {
19
+ open: u,
20
+ onClose: P,
21
+ closeOnEscape: x,
22
+ returnFocusRef: S
23
+ });
40
24
  function F(e) {
41
25
  if (!b) return;
42
26
  let t = e.target;
43
- w.current?.contains(t) || P();
27
+ T.current?.contains(t) || (e.preventDefault(), P());
44
28
  }
45
- return typeof document > "u" ? null : M(/* @__PURE__ */ O(A, { children: l ? /* @__PURE__ */ k(j.div, {
46
- className: m[r],
29
+ return typeof document > "u" ? null : N(/* @__PURE__ */ O(A, { children: u ? /* @__PURE__ */ k(j.div, {
30
+ className: p[i],
47
31
  initial: { opacity: 0 },
48
32
  animate: { opacity: 1 },
49
33
  exit: { opacity: 0 },
50
34
  transition: t("medium"),
51
35
  onMouseDown: F,
52
36
  children: [/* @__PURE__ */ O("div", {
53
- className: n,
37
+ className: i === "end" ? f : r,
54
38
  "aria-hidden": "true"
55
39
  }), /* @__PURE__ */ O(j.div, {
56
- ref: w,
57
- className: e(h, v[r], y[r][a], i, "relative z-[1]"),
40
+ ref: T,
41
+ className: e(m, _[i], y[i][o], a, "relative z-[1]"),
58
42
  role: "dialog",
59
43
  "aria-modal": "true",
60
- "aria-labelledby": o,
61
- "aria-describedby": s,
62
- variants: _(r),
44
+ "aria-labelledby": s,
45
+ "aria-describedby": c,
46
+ variants: C === !0 ? v : g(i),
63
47
  initial: "hidden",
64
48
  animate: "visible",
65
49
  exit: "exit",
66
- transition: g(r),
50
+ transition: h(i),
67
51
  onMouseDown: (e) => {
68
52
  e.stopPropagation();
69
53
  },
70
- children: c
54
+ children: l
71
55
  })]
72
56
  }) : null }), document.body);
73
57
  }
74
- function P({ open: e, onOpenChange: t, dismissOnBackdrop: n = !0, dismissOnEscape: r = !0, children: i }) {
75
- let { titleId: a, descriptionId: o } = w("sheet"), s = D(null);
76
- return /* @__PURE__ */ O(S, {
58
+ function F({ open: e, onOpenChange: t, dismissOnBackdrop: n = !0, dismissOnEscape: r = !0, children: i }) {
59
+ let { titleId: a, descriptionId: o } = T("sheet"), s = D(null);
60
+ return /* @__PURE__ */ O(C, {
77
61
  value: {
78
62
  open: e,
79
63
  onOpenChange: t,
@@ -86,8 +70,8 @@ function P({ open: e, onOpenChange: t, dismissOnBackdrop: n = !0, dismissOnEscap
86
70
  children: i
87
71
  });
88
72
  }
89
- function F({ children: e, className: t }) {
90
- let { onOpenChange: n, triggerRef: r } = C("Sheet.Trigger");
73
+ function I({ children: e, className: t }) {
74
+ let { onOpenChange: n, triggerRef: r } = w("Sheet.Trigger");
91
75
  return /* @__PURE__ */ O("span", {
92
76
  ref: r,
93
77
  className: t,
@@ -98,55 +82,56 @@ function F({ children: e, className: t }) {
98
82
  children: e
99
83
  });
100
84
  }
101
- function I({ side: t = "bottom", size: n = "md", title: i, description: d, headerStart: f, showClose: p = !0, footer: m, className: h, children: g }) {
102
- let { titleId: _, descriptionId: v, onOpenChange: y } = C("Sheet.Content"), b = i != null, x = d != null, S = g != null || !b && x, w = m != null;
103
- return /* @__PURE__ */ O(N, {
85
+ function L({ side: t = "bottom", size: n = "md", title: r, description: a, headerStart: f, headerActions: p, showClose: m = !0, footer: h, className: g, children: _ }) {
86
+ let { titleId: v, descriptionId: y, onOpenChange: x } = w("Sheet.Content"), S = r != null, C = a != null, T = _ != null || !S && C, E = h != null, D = t === "end" ? b : void 0;
87
+ return /* @__PURE__ */ O(P, {
104
88
  side: t,
105
89
  size: n,
106
- "aria-labelledby": b ? _ : void 0,
107
- "aria-describedby": x ? v : void 0,
90
+ "aria-labelledby": S ? v : void 0,
91
+ "aria-describedby": C ? y : void 0,
108
92
  children: /* @__PURE__ */ k("div", {
109
- className: e(l, m == null ? "pb-4" : void 0, h),
93
+ className: e(u, h == null ? "pb-4" : void 0, h == null ? D : void 0, g),
110
94
  children: [
111
- /* @__PURE__ */ O(u, {
112
- titleId: _,
113
- descriptionId: v,
114
- title: i,
115
- description: d,
95
+ /* @__PURE__ */ O(d, {
96
+ titleId: v,
97
+ descriptionId: y,
98
+ title: r,
99
+ description: a,
116
100
  headerStart: f,
117
- showClose: p,
101
+ headerEnd: p,
102
+ showClose: m,
118
103
  closeLabel: "Close sheet",
119
- onClose: () => y(!1),
120
- delineated: S || w
104
+ onClose: () => x(!1),
105
+ delineated: T || E
121
106
  }),
122
- S ? /* @__PURE__ */ k("div", {
123
- className: r,
124
- children: [!b && x ? /* @__PURE__ */ O("p", {
125
- id: v,
107
+ T ? /* @__PURE__ */ k("div", {
108
+ className: i,
109
+ children: [!S && C ? /* @__PURE__ */ O("p", {
110
+ id: y,
126
111
  className: "text-muted",
127
- children: d
128
- }) : null, g]
112
+ children: a
113
+ }) : null, _]
129
114
  }) : null,
130
- w ? S ? /* @__PURE__ */ k("footer", {
131
- className: s,
115
+ E ? T ? /* @__PURE__ */ k("footer", {
116
+ className: c,
132
117
  children: [/* @__PURE__ */ O("hr", {
133
- className: c,
118
+ className: l,
134
119
  "aria-hidden": "true"
135
120
  }), /* @__PURE__ */ O("div", {
136
- className: o,
137
- children: m
121
+ className: e(s, D),
122
+ children: h
138
123
  })]
139
124
  }) : /* @__PURE__ */ O("footer", {
140
- className: e(a, "pb-4"),
141
- children: m
125
+ className: e(o, "pb-4", D),
126
+ children: h
142
127
  }) : null
143
128
  ]
144
129
  })
145
130
  });
146
131
  }
147
- var L = Object.assign(P, {
148
- Trigger: F,
149
- Content: I
132
+ var R = Object.assign(F, {
133
+ Trigger: I,
134
+ Content: L
150
135
  });
151
136
  //#endregion
152
- export { L as Sheet, b as sheetSides, x as sheetSizes };
137
+ export { R as Sheet, x as sheetSides, S as sheetSizes };
@@ -6,16 +6,18 @@ export declare const sheetSizes: readonly ["sm", "md", "lg"];
6
6
  export type SheetSize = (typeof sheetSizes)[number];
7
7
  /**
8
8
  * Viewport inset on the **opposite** edge from entry — mobile only (`16px`).
9
- * Entry side + top/bottom stay flush; scrim peeks on the trailing edge only.
9
+ * `bottom` and `start` keep a scrim strip; `end` is full-screen below `md` (no inset).
10
10
  */
11
11
  export declare const sheetOverlayInsetClasses: Record<SheetSide, string>;
12
12
  /** Full-viewport stack — scrim + edge-attached panel. */
13
13
  export declare const sheetOverlayRootClasses: Record<SheetSide, string>;
14
14
  export { dialogBackdropClasses as sheetBackdropClasses };
15
+ /** Lighter scrim for the `end` side sheet — the page stays readable behind the rail. */
16
+ export declare const sheetEndBackdropClasses: string;
15
17
  /** Cross-axis size — width on side sheets, max-height on bottom. */
16
18
  export declare const sheetPanelSizeClasses: Record<SheetSide, Record<SheetSize, string>>;
17
19
  export declare const sheetPanelBaseClasses: string;
18
- /** Edge-attached shell — radius on the inner edge only (not floating). */
20
+ /** Edge-attached shell — radius on the inner edge only (not floating). `end` has none below `md` (full-screen). */
19
21
  export declare const sheetPanelPlacementClasses: Record<SheetSide, string>;
20
22
  /** @deprecated Use {@link overlayPanelFooterDelineatedShellClasses} + hairline + inner row. */
21
23
  export declare const sheetPanelFooterShellClasses = "shrink-0 w-full";
@@ -27,4 +29,8 @@ export { overlayPanelBodyScrollClasses as sheetBodyScrollClasses } from "../Dial
27
29
  /** Motion panel variants — medium tier slide from edge. */
28
30
  export declare function sheetPanelMotionVariants(side: SheetSide): Variants;
29
31
  export declare function sheetPanelMotionTransition(side: SheetSide): import("motion-dom").Transition;
32
+ /** Bottom padding that clears the home indicator — full-screen `end` sheet, below `md`. */
33
+ export declare const sheetSafeAreaBottomClasses = "max-md:pb-[max(1rem,env(safe-area-inset-bottom))]";
34
+ /** Slide-free variants — reduced motion fades only. */
35
+ export declare const sheetPanelReducedMotionVariants: Variants;
30
36
  //# sourceMappingURL=sheetStyles.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"sheetStyles.d.ts","sourceRoot":"","sources":["../../../../src/components/organisms/Sheet/sheetStyles.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,cAAc,CAAC;AAQ7C,OAAO,EACL,qBAAqB,EAGtB,MAAM,wBAAwB,CAAC;AAEhC,eAAO,MAAM,UAAU,qCAAsC,CAAC;AAE9D,MAAM,MAAM,SAAS,GAAG,CAAC,OAAO,UAAU,CAAC,CAAC,MAAM,CAAC,CAAC;AAEpD,eAAO,MAAM,UAAU,6BAA8B,CAAC;AAEtD,MAAM,MAAM,SAAS,GAAG,CAAC,OAAO,UAAU,CAAC,CAAC,MAAM,CAAC,CAAC;AAEpD;;;GAGG;AACH,eAAO,MAAM,wBAAwB,EAAE,MAAM,CAAC,SAAS,EAAE,MAAM,CAI9D,CAAC;AAEF,yDAAyD;AACzD,eAAO,MAAM,uBAAuB,EAAE,MAAM,CAAC,SAAS,EAAE,MAAM,CAa7D,CAAC;AAEF,OAAO,EAAE,qBAAqB,IAAI,oBAAoB,EAAE,CAAC;AAEzD,oEAAoE;AACpE,eAAO,MAAM,qBAAqB,EAAE,MAAM,CAAC,SAAS,EAAE,MAAM,CAAC,SAAS,EAAE,MAAM,CAAC,CAgB9E,CAAC;AAEF,eAAO,MAAM,qBAAqB,QAKvB,CAAC;AAEZ,0EAA0E;AAC1E,eAAO,MAAM,0BAA0B,EAAE,MAAM,CAAC,SAAS,EAAE,MAAM,CAIhE,CAAC;AAEF,+FAA+F;AAC/F,eAAO,MAAM,4BAA4B,oBAA2C,CAAC;AAErF,wEAAwE;AACxE,eAAO,MAAM,4BAA4B,QAA2C,CAAC;AAErF,OAAO,EAAE,iCAAiC,IAAI,+BAA+B,EAAE,MAAM,wBAAwB,CAAC;AAE9G,wDAAwD;AACxD,OAAO,EAAE,6BAA6B,IAAI,sBAAsB,EAAE,MAAM,wBAAwB,CAAC;AAEjG,2DAA2D;AAC3D,wBAAgB,wBAAwB,CAAC,IAAI,EAAE,SAAS,GAAG,QAAQ,CAqBlE;AAED,wBAAgB,0BAA0B,CAAC,IAAI,EAAE,SAAS,mCAEzD"}
1
+ {"version":3,"file":"sheetStyles.d.ts","sourceRoot":"","sources":["../../../../src/components/organisms/Sheet/sheetStyles.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,cAAc,CAAC;AAQ7C,OAAO,EACL,qBAAqB,EAGtB,MAAM,wBAAwB,CAAC;AAEhC,eAAO,MAAM,UAAU,qCAAsC,CAAC;AAE9D,MAAM,MAAM,SAAS,GAAG,CAAC,OAAO,UAAU,CAAC,CAAC,MAAM,CAAC,CAAC;AAEpD,eAAO,MAAM,UAAU,6BAA8B,CAAC;AAEtD,MAAM,MAAM,SAAS,GAAG,CAAC,OAAO,UAAU,CAAC,CAAC,MAAM,CAAC,CAAC;AAEpD;;;GAGG;AACH,eAAO,MAAM,wBAAwB,EAAE,MAAM,CAAC,SAAS,EAAE,MAAM,CAI9D,CAAC;AAEF,yDAAyD;AACzD,eAAO,MAAM,uBAAuB,EAAE,MAAM,CAAC,SAAS,EAAE,MAAM,CAa7D,CAAC;AAEF,OAAO,EAAE,qBAAqB,IAAI,oBAAoB,EAAE,CAAC;AAEzD,wFAAwF;AACxF,eAAO,MAAM,uBAAuB,QAA6C,CAAC;AAElF,oEAAoE;AACpE,eAAO,MAAM,qBAAqB,EAAE,MAAM,CAAC,SAAS,EAAE,MAAM,CAAC,SAAS,EAAE,MAAM,CAAC,CAgB9E,CAAC;AAEF,eAAO,MAAM,qBAAqB,QAKvB,CAAC;AAEZ,mHAAmH;AACnH,eAAO,MAAM,0BAA0B,EAAE,MAAM,CAAC,SAAS,EAAE,MAAM,CAIhE,CAAC;AAEF,+FAA+F;AAC/F,eAAO,MAAM,4BAA4B,oBAA2C,CAAC;AAErF,wEAAwE;AACxE,eAAO,MAAM,4BAA4B,QAA2C,CAAC;AAErF,OAAO,EAAE,iCAAiC,IAAI,+BAA+B,EAAE,MAAM,wBAAwB,CAAC;AAE9G,wDAAwD;AACxD,OAAO,EAAE,6BAA6B,IAAI,sBAAsB,EAAE,MAAM,wBAAwB,CAAC;AAEjG,2DAA2D;AAC3D,wBAAgB,wBAAwB,CAAC,IAAI,EAAE,SAAS,GAAG,QAAQ,CAqBlE;AAED,wBAAgB,0BAA0B,CAAC,IAAI,EAAE,SAAS,mCAEzD;AAED,2FAA2F;AAC3F,eAAO,MAAM,0BAA0B,sDAAsD,CAAC;AAE9F,uDAAuD;AACvD,eAAO,MAAM,+BAA+B,EAAE,QAI7C,CAAC"}