@pantheon-systems/pds-toolkit-react 2.0.0-alpha.4 → 2.0.0-alpha.40

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 (378) hide show
  1. package/bin/pds-codemod.cjs +58 -0
  2. package/codemods/v1-to-v2/mappings.json +1572 -0
  3. package/codemods/v1-to-v2/transforms/__testfixtures__/component-renames/basic.input.tsx +33 -0
  4. package/codemods/v1-to-v2/transforms/__testfixtures__/component-renames/basic.output.tsx +33 -0
  5. package/codemods/v1-to-v2/transforms/__testfixtures__/component-renames/only.input.tsx +8 -0
  6. package/codemods/v1-to-v2/transforms/__testfixtures__/component-renames/only.output.tsx +8 -0
  7. package/codemods/v1-to-v2/transforms/__testfixtures__/css-class-removals/basic.input.tsx +31 -0
  8. package/codemods/v1-to-v2/transforms/__testfixtures__/css-class-removals/basic.output.tsx +31 -0
  9. package/codemods/v1-to-v2/transforms/__testfixtures__/css-class-renames/basic.input.tsx +31 -0
  10. package/codemods/v1-to-v2/transforms/__testfixtures__/css-class-renames/basic.output.tsx +31 -0
  11. package/codemods/v1-to-v2/transforms/__testfixtures__/icon-name-updates/basic.input.tsx +35 -0
  12. package/codemods/v1-to-v2/transforms/__testfixtures__/icon-name-updates/basic.output.tsx +35 -0
  13. package/codemods/v1-to-v2/transforms/__testfixtures__/icon-name-updates/only.input.tsx +8 -0
  14. package/codemods/v1-to-v2/transforms/__testfixtures__/icon-name-updates/only.output.tsx +8 -0
  15. package/codemods/v1-to-v2/transforms/__testfixtures__/prop-renames/basic.input.tsx +28 -0
  16. package/codemods/v1-to-v2/transforms/__testfixtures__/prop-renames/basic.output.tsx +28 -0
  17. package/codemods/v1-to-v2/transforms/__testfixtures__/prop-renames/only.input.tsx +8 -0
  18. package/codemods/v1-to-v2/transforms/__testfixtures__/prop-renames/only.output.tsx +8 -0
  19. package/codemods/v1-to-v2/transforms/__testfixtures__/prop-value-standardization/basic.input.tsx +36 -0
  20. package/codemods/v1-to-v2/transforms/__testfixtures__/prop-value-standardization/basic.output.tsx +36 -0
  21. package/codemods/v1-to-v2/transforms/__testfixtures__/prop-value-standardization/only.input.tsx +21 -0
  22. package/codemods/v1-to-v2/transforms/__testfixtures__/prop-value-standardization/only.output.tsx +21 -0
  23. package/codemods/v1-to-v2/transforms/__testfixtures__/removed-prop-values/basic.input.tsx +60 -0
  24. package/codemods/v1-to-v2/transforms/__testfixtures__/removed-prop-values/basic.output.tsx +51 -0
  25. package/codemods/v1-to-v2/transforms/__testfixtures__/removed-prop-values/only.input.tsx +8 -0
  26. package/codemods/v1-to-v2/transforms/__testfixtures__/removed-prop-values/only.output.tsx +8 -0
  27. package/codemods/v1-to-v2/transforms/__tests__/component-renames.test.js +15 -0
  28. package/codemods/v1-to-v2/transforms/__tests__/css-class-removals.test.js +6 -0
  29. package/codemods/v1-to-v2/transforms/__tests__/css-class-renames.test.js +6 -0
  30. package/codemods/v1-to-v2/transforms/__tests__/icon-name-updates.test.js +15 -0
  31. package/codemods/v1-to-v2/transforms/__tests__/prop-renames.test.js +15 -0
  32. package/codemods/v1-to-v2/transforms/__tests__/prop-value-standardization.test.js +16 -0
  33. package/codemods/v1-to-v2/transforms/__tests__/removed-prop-values.test.js +15 -0
  34. package/codemods/v1-to-v2/transforms/component-renames.js +166 -0
  35. package/codemods/v1-to-v2/transforms/css-class-removals.js +192 -0
  36. package/codemods/v1-to-v2/transforms/css-class-renames.js +114 -0
  37. package/codemods/v1-to-v2/transforms/icon-name-updates.js +124 -0
  38. package/codemods/v1-to-v2/transforms/prop-renames.js +109 -0
  39. package/codemods/v1-to-v2/transforms/prop-value-standardization.js +143 -0
  40. package/codemods/v1-to-v2/transforms/removed-prop-values.js +206 -0
  41. package/dist/components/Avatar/Avatar.d.ts +6 -2
  42. package/dist/components/Callout/Callout.d.ts +6 -2
  43. package/dist/components/CodeBlock/CodeBlock.d.ts +10 -5
  44. package/dist/components/CodeBlock/code-examples.d.ts +2 -1
  45. package/dist/components/CodeBlock/themes/index.d.ts +1 -2
  46. package/dist/components/CodeBlock/themes/{pdsDark.d.ts → pds.d.ts} +1 -1
  47. package/dist/components/ComparisonList/ComparisonList.d.ts +6 -1
  48. package/dist/components/Dropdown/Dropdown.d.ts +186 -0
  49. package/dist/components/Dropdown/DropdownSelectedIcon.d.ts +7 -0
  50. package/dist/components/FileDiff/FileDiff.d.ts +2 -2
  51. package/dist/components/IdentityBlock/IdentityBlock.d.ts +37 -0
  52. package/dist/components/PantheonLogo/PantheonLogo.d.ts +5 -4
  53. package/dist/components/Popover/Popover.d.ts +5 -1
  54. package/dist/components/SiteFooter/SiteFooter.d.ts +41 -0
  55. package/dist/components/{navigation/DashboardSearch/DashboardSearch.d.ts → SiteSearch/SiteSearch.d.ts} +6 -11
  56. package/dist/components/SortableList/SortableList.d.ts +8 -0
  57. package/dist/components/SortableList/SortableListHeader.d.ts +7 -0
  58. package/dist/components/SortableList/SortableRow.d.ts +16 -0
  59. package/dist/components/SortableList/sortable-utils.d.ts +19 -0
  60. package/dist/components/SortableList/types.d.ts +142 -0
  61. package/dist/components/SortableList/useSortableTree.d.ts +18 -0
  62. package/dist/components/{RefreshChecker/RefreshChecker.d.ts → StatusChecker/StatusChecker.d.ts} +5 -19
  63. package/dist/components/StatusIndicator/StatusIndicator.d.ts +2 -2
  64. package/dist/components/Table/Table.d.ts +247 -17
  65. package/dist/components/TableOfContents/TableOfContents.d.ts +1 -5
  66. package/dist/components/Tag/Tag.d.ts +17 -3
  67. package/dist/components/ThemeSwitcher/ThemeSwitcher.d.ts +14 -8
  68. package/dist/components/Tooltip/Tooltip.d.ts +6 -2
  69. package/dist/components/UtilityBar/UtilityBar.d.ts +26 -0
  70. package/dist/components/badges/Badge/Badge.d.ts +28 -0
  71. package/dist/components/badges/StatusBadge/StatusBadge.d.ts +2 -1
  72. package/dist/components/buttons/Button/Button.d.ts +15 -0
  73. package/dist/components/buttons/ButtonLink/ButtonLink.d.ts +1 -3
  74. package/dist/components/buttons/ClipboardButton/ClipboardButton.d.ts +5 -1
  75. package/dist/components/buttons/CloseButton/CloseButton.d.ts +4 -4
  76. package/dist/components/buttons/FilterButton/FilterButton.d.ts +82 -0
  77. package/dist/components/buttons/IconButton/IconButton.d.ts +12 -0
  78. package/dist/components/buttons/MenuButton/MenuButton.d.ts +21 -13
  79. package/dist/components/buttons/SegmentedButton/SegmentedButton.d.ts +32 -7
  80. package/dist/components/cards/ActionCard/ActionCard.d.ts +64 -0
  81. package/dist/components/cards/Card/Card.d.ts +11 -4
  82. package/dist/components/cards/{CardSelectGroup/CardSelectGroup.d.ts → CardSelect/CardSelect.d.ts} +13 -8
  83. package/dist/components/charts/BarChart/BarChart.d.ts +21 -0
  84. package/dist/components/charts/LineChart/LineChart.d.ts +22 -0
  85. package/dist/components/charts/PieChart/PieChart.d.ts +59 -0
  86. package/dist/components/charts/ProportionBar/ProportionBar.d.ts +57 -0
  87. package/dist/components/charts/shared/ChartAccessibleTable.d.ts +17 -0
  88. package/dist/components/charts/shared/ChartLegend.d.ts +25 -0
  89. package/dist/components/charts/shared/ChartSkeleton.d.ts +11 -0
  90. package/dist/components/charts/shared/chart-colors.d.ts +30 -0
  91. package/dist/components/charts/shared/chart-styles.d.ts +16 -0
  92. package/dist/components/charts/shared/formatters.d.ts +12 -0
  93. package/dist/components/charts/shared/types.d.ts +128 -0
  94. package/dist/components/empty-states/HorizontalEmptyState/HorizontalEmptyState.d.ts +1 -1
  95. package/dist/components/icons/Icon/Icon.d.ts +2 -2
  96. package/dist/components/icons/Icon/custom-icons.d.ts +1 -1
  97. package/dist/components/icons/Icon/generated-icon-data.d.ts +191 -16
  98. package/dist/components/icons/PaymentIcon/PaymentIcon.d.ts +7 -3
  99. package/dist/components/icons/PlatformIcon/PlatformIcon.d.ts +6 -6
  100. package/dist/components/inputs/Checkbox/Checkbox.d.ts +3 -3
  101. package/dist/components/inputs/Combobox/Combobox.d.ts +17 -7
  102. package/dist/components/inputs/ComboboxMultiselect/ComboboxMultiselect.d.ts +10 -5
  103. package/dist/components/inputs/Datepicker/Datepicker.d.ts +31 -8
  104. package/dist/components/inputs/FileUpload/FileUpload.d.ts +6 -1
  105. package/dist/components/inputs/RadioGroup/RadioGroup.d.ts +1 -1
  106. package/dist/components/inputs/Select/Select.d.ts +11 -2
  107. package/dist/components/inputs/Select/select-sample-data.d.ts +1 -0
  108. package/dist/components/inputs/Switch/Switch.d.ts +1 -17
  109. package/dist/components/inputs/TagsInput/TagsInput.d.ts +6 -1
  110. package/dist/components/inputs/TextInput/TextInput.d.ts +5 -1
  111. package/dist/components/inputs/Textarea/Textarea.d.ts +5 -1
  112. package/dist/components/inputs/input-utilities.d.ts +5 -4
  113. package/dist/components/{CTALink → links/CTALink}/CTALink.d.ts +1 -1
  114. package/dist/components/{LinkNewWindow → links/LinkNewWindow}/LinkNewWindow.d.ts +1 -1
  115. package/dist/components/loading-indicators/Spinner/Spinner.d.ts +5 -4
  116. package/dist/components/navigation/ButtonNav/ButtonNav.d.ts +1 -5
  117. package/dist/components/navigation/DropdownMenu/DropdownMenu.d.ts +1 -0
  118. package/dist/components/navigation/Navbar/Navbar.d.ts +9 -21
  119. package/dist/components/navigation/SideNav/SideNav.d.ts +7 -1
  120. package/dist/components/navigation/SideNavGlobal/SideNavGlobal.d.ts +5 -15
  121. package/dist/components/navigation/SideNavGlobal/SideNavGlobalItem.d.ts +15 -1
  122. package/dist/components/navigation/{NavMenu/NavMenu.d.ts → SiteMenu/SiteMenu.d.ts} +5 -8
  123. package/dist/components/navigation/SiteMenu/SiteMenuDropdown.d.ts +23 -0
  124. package/dist/components/navigation/TreeNav/TreeNav.d.ts +48 -0
  125. package/dist/components/navigation/UserMenu/UserMenu.d.ts +1 -5
  126. package/dist/components/navigation/WorkspaceSelector/WorkspaceSelector.d.ts +2 -17
  127. package/dist/components/navigation/navigation-utilities.d.ts +12 -0
  128. package/dist/components/notifications/Banner/Banner.d.ts +6 -2
  129. package/dist/components/notifications/SectionMessage/SectionMessage.d.ts +6 -2
  130. package/dist/components/notifications/Toaster/Toast.d.ts +12 -1
  131. package/dist/components/notifications/Toaster/Toaster.d.ts +16 -7
  132. package/dist/components/notifications/Toaster/useToast.d.ts +2 -0
  133. package/dist/components/overlays/Drawer/Drawer.d.ts +58 -0
  134. package/dist/components/overlays/FullScreenOverlay/FullScreenOverlay.d.ts +45 -0
  135. package/dist/components/{Modal → overlays/Modal}/Modal.d.ts +1 -1
  136. package/dist/components/{Pagination → pagination/Pagination}/Pagination.d.ts +7 -2
  137. package/dist/components/pagination/PaginationCompact/PaginationCompact.d.ts +49 -0
  138. package/dist/components/pagination/PaginationMini/PaginationMini.d.ts +55 -0
  139. package/dist/components/panels/ExpansionPanel/ExpansionPanel.d.ts +1 -2
  140. package/dist/components/panels/ExpansionPanelGroup/ExpansionPanelGroup.d.ts +1 -2
  141. package/dist/components/panels/Panel/Panel.d.ts +4 -21
  142. package/dist/components/panels/PanelList/PanelList.d.ts +1 -1
  143. package/dist/components/progress-indicators/ProgressBar/ProgressBar.d.ts +4 -5
  144. package/dist/components/progress-indicators/ProgressRing/ProgressRing.d.ts +12 -4
  145. package/dist/components/{FlowSteps/FlowSteps.d.ts → steppers/StepList/StepList.d.ts} +7 -7
  146. package/dist/css/component-css/pds-action-card.css +1 -0
  147. package/dist/css/component-css/pds-avatar.css +1 -1
  148. package/dist/css/component-css/pds-badge.css +1 -0
  149. package/dist/css/component-css/pds-banner.css +1 -1
  150. package/dist/css/component-css/pds-bar-chart.css +1 -0
  151. package/dist/css/component-css/pds-branch-diff.css +1 -1
  152. package/dist/css/component-css/pds-breadcrumb.css +1 -1
  153. package/dist/css/component-css/pds-button-link.css +1 -1
  154. package/dist/css/component-css/pds-button-nav.css +1 -1
  155. package/dist/css/component-css/pds-button.css +44 -12
  156. package/dist/css/component-css/pds-callout.css +1 -1
  157. package/dist/css/component-css/pds-card-select.css +1 -0
  158. package/dist/css/component-css/pds-card.css +1 -1
  159. package/dist/css/component-css/pds-chart-legend.css +1 -0
  160. package/dist/css/component-css/pds-chart-wrapper.css +1 -0
  161. package/dist/css/component-css/pds-checkbox.css +1 -1
  162. package/dist/css/component-css/pds-close-button.css +1 -1
  163. package/dist/css/component-css/pds-code-block.css +1 -1
  164. package/dist/css/component-css/pds-combobox-multiselect.css +3 -2
  165. package/dist/css/component-css/pds-combobox.css +1 -1
  166. package/dist/css/component-css/pds-compact-empty-state.css +1 -1
  167. package/dist/css/component-css/pds-comparison-list.css +1 -1
  168. package/dist/css/component-css/pds-cta-link.css +1 -1
  169. package/dist/css/component-css/pds-datepicker.css +5 -3
  170. package/dist/css/component-css/pds-drawer.css +1 -0
  171. package/dist/css/component-css/pds-dropdown-menu.css +2 -2
  172. package/dist/css/component-css/pds-dropdown.css +2 -0
  173. package/dist/css/component-css/pds-expansion-panel.css +1 -1
  174. package/dist/css/component-css/pds-file-diff.css +1 -1
  175. package/dist/css/component-css/pds-file-upload.css +3 -3
  176. package/dist/css/component-css/pds-filter-button.css +1 -0
  177. package/dist/css/component-css/pds-full-screen-overlay.css +1 -0
  178. package/dist/css/component-css/pds-horizontal-empty-state.css +1 -1
  179. package/dist/css/component-css/pds-icon-button.css +6 -4
  180. package/dist/css/component-css/pds-icon.css +1 -1
  181. package/dist/css/component-css/pds-identity-block.css +1 -0
  182. package/dist/css/component-css/pds-index.css +150 -70
  183. package/dist/css/component-css/pds-inline-message.css +1 -1
  184. package/dist/css/component-css/pds-input-group.css +1 -1
  185. package/dist/css/component-css/pds-input-utilities.css +1 -1
  186. package/dist/css/component-css/pds-line-chart.css +1 -0
  187. package/dist/css/component-css/pds-link-new-window.css +1 -1
  188. package/dist/css/component-css/pds-menu-button.css +7 -1
  189. package/dist/css/component-css/pds-modal.css +1 -1
  190. package/dist/css/component-css/pds-nav-menu.css +1 -5
  191. package/dist/css/component-css/pds-navbar.css +4 -1
  192. package/dist/css/component-css/pds-pagination-compact.css +1 -0
  193. package/dist/css/component-css/pds-pagination-mini.css +3 -0
  194. package/dist/css/component-css/pds-pagination.css +1 -1
  195. package/dist/css/component-css/pds-panel-list.css +1 -1
  196. package/dist/css/component-css/pds-panel.css +1 -1
  197. package/dist/css/component-css/pds-pantheon-logo.css +1 -1
  198. package/dist/css/component-css/pds-payment-icon.css +1 -1
  199. package/dist/css/component-css/pds-pie-chart.css +1 -0
  200. package/dist/css/component-css/pds-platform-icon.css +1 -1
  201. package/dist/css/component-css/pds-popover.css +1 -1
  202. package/dist/css/component-css/pds-progress-bar.css +1 -1
  203. package/dist/css/component-css/pds-progress-ring.css +1 -1
  204. package/dist/css/component-css/pds-proportion-bar.css +1 -0
  205. package/dist/css/component-css/pds-radio-group.css +1 -1
  206. package/dist/css/component-css/pds-section-message.css +1 -1
  207. package/dist/css/component-css/pds-segmented-button.css +2 -1
  208. package/dist/css/component-css/pds-select.css +1 -1
  209. package/dist/css/component-css/pds-side-nav-global.css +2 -4
  210. package/dist/css/component-css/pds-side-nav.css +3 -1
  211. package/dist/css/component-css/pds-site-footer.css +1 -1
  212. package/dist/css/component-css/pds-site-search.css +1 -0
  213. package/dist/css/component-css/pds-skeleton.css +1 -1
  214. package/dist/css/component-css/pds-skiplink.css +1 -1
  215. package/dist/css/component-css/pds-sortable-list.css +8 -0
  216. package/dist/css/component-css/pds-spinner.css +1 -1
  217. package/dist/css/component-css/pds-split-button.css +1 -1
  218. package/dist/css/component-css/pds-sso-button.css +1 -1
  219. package/dist/css/component-css/pds-status-badge.css +1 -1
  220. package/dist/css/component-css/pds-status-checker.css +1 -0
  221. package/dist/css/component-css/pds-status-indicator.css +1 -1
  222. package/dist/css/component-css/pds-step-list.css +1 -0
  223. package/dist/css/component-css/pds-stepper.css +3 -1
  224. package/dist/css/component-css/pds-switch.css +4 -11
  225. package/dist/css/component-css/pds-tab-menu.css +2 -2
  226. package/dist/css/component-css/pds-table-of-contents.css +1 -1
  227. package/dist/css/component-css/pds-table.css +3 -1
  228. package/dist/css/component-css/pds-tabs.css +1 -1
  229. package/dist/css/component-css/pds-tag.css +1 -1
  230. package/dist/css/component-css/pds-tags-input.css +1 -1
  231. package/dist/css/component-css/pds-tally.css +1 -1
  232. package/dist/css/component-css/pds-text-input.css +1 -1
  233. package/dist/css/component-css/pds-textarea.css +1 -1
  234. package/dist/css/component-css/pds-theme-switcher.css +1 -1
  235. package/dist/css/component-css/pds-toaster.css +1 -1
  236. package/dist/css/component-css/pds-tooltip.css +1 -1
  237. package/dist/css/component-css/pds-tree-nav.css +1 -0
  238. package/dist/css/component-css/pds-user-menu.css +32 -1
  239. package/dist/css/component-css/pds-utility-bar.css +1 -0
  240. package/dist/css/component-css/pds-utility-button.css +3 -1
  241. package/dist/css/component-css/pds-vertical-empty-state.css +1 -1
  242. package/dist/css/component-css/pds-vertical-stepper.css +1 -1
  243. package/dist/css/component-css/pds-workspace-selector.css +26 -1
  244. package/dist/css/design-tokens/variables.dark.css +405 -239
  245. package/dist/css/design-tokens/variables.global.css +8 -15
  246. package/dist/css/design-tokens/variables.light.css +361 -217
  247. package/dist/css/design-tokens/variables.typography.css +3 -2
  248. package/dist/css/layout-css/pds-app-layout.css +6 -2
  249. package/dist/css/layout-css/pds-docs-layout.css +1 -1
  250. package/dist/css/layout-css/pds-index.css +6 -9
  251. package/dist/css/layout-css/pds-sidebar-layout.css +5 -0
  252. package/dist/css/layout-css/pds-stepper-layout.css +1 -1
  253. package/dist/css/pds-components.css +150 -70
  254. package/dist/css/pds-core.css +3 -2
  255. package/dist/css/pds-layouts.css +6 -9
  256. package/dist/index.css +1 -1
  257. package/dist/index.d.ts +95 -6
  258. package/dist/index.js +12075 -4520
  259. package/dist/index.js.map +1 -1
  260. package/dist/index.source.d.ts +39 -42
  261. package/dist/layouts/AppLayout/AppLayout.d.ts +68 -7
  262. package/dist/layouts/DocsLayout/DocsLayout.d.ts +9 -7
  263. package/dist/layouts/SidebarLayout/SidebarLayout.d.ts +16 -6
  264. package/dist/layouts/ThreeItemLayout/ThreeItemLayout.d.ts +3 -3
  265. package/dist/layouts/TwoItemLayout/TwoItemLayout.d.ts +3 -3
  266. package/dist/libs/components/NavAccordion/NavAccordion.d.ts +27 -0
  267. package/dist/libs/components/StatusDot/StatusDot.d.ts +15 -0
  268. package/dist/libs/components/utils.d.ts +0 -1
  269. package/dist/libs/types/custom-types.d.ts +12 -6
  270. package/dist/libs/types/layout-types.d.ts +2 -1
  271. package/dist/libs/types/navigation-types.d.ts +9 -1
  272. package/dist/svg/anglesDown.svg +3 -0
  273. package/dist/svg/anglesUp.svg +3 -0
  274. package/dist/svg/barsStaggered.svg +3 -0
  275. package/dist/svg/circleExclamationSolid.svg +3 -0
  276. package/dist/svg/circleHalfStroke.svg +3 -0
  277. package/dist/svg/circleInfoSolid.svg +3 -0
  278. package/dist/svg/circleQuestionSolid.svg +3 -0
  279. package/dist/svg/claude.svg +3 -0
  280. package/dist/svg/clock.svg +3 -0
  281. package/dist/svg/collapseToCenter.svg +3 -0
  282. package/dist/svg/compress.svg +3 -0
  283. package/dist/svg/diagramVenn.svg +3 -0
  284. package/dist/svg/floppyDisk.svg +3 -0
  285. package/dist/svg/grid.svg +2 -2
  286. package/dist/svg/grid2.svg +3 -0
  287. package/dist/svg/landmark.svg +3 -0
  288. package/dist/svg/locationCrosshairs.svg +3 -0
  289. package/dist/svg/move.svg +3 -0
  290. package/dist/svg/octagonExclamation.svg +3 -0
  291. package/dist/svg/openai.svg +3 -0
  292. package/dist/svg/pause.svg +3 -0
  293. package/dist/svg/sidebar.svg +3 -0
  294. package/dist/svg/slider.svg +3 -0
  295. package/dist/svg/squareDashed.svg +3 -0
  296. package/dist/svg/tableColumns.svg +3 -0
  297. package/dist/svg/userSolid.svg +3 -0
  298. package/dist/{layouts → utilities}/FlexContainer/FlexContainer.d.ts +6 -6
  299. package/dist/utilities/GlobalWrapper/GlobalWrapper.d.ts +21 -0
  300. package/dist/utilities/grid/Grid.d.ts +58 -0
  301. package/dist/utilities/grid/GridItem.d.ts +57 -0
  302. package/dist/utilities/hooks/useDropdown/index.d.ts +1 -0
  303. package/dist/utilities/hooks/useDropdown/useDropdown.d.ts +121 -0
  304. package/package.json +68 -41
  305. package/tailwind/README.md +220 -0
  306. package/tailwind/TESTING.md +457 -0
  307. package/tailwind/v3/preset.cjs +258 -0
  308. package/tailwind/v4/theme.css +230 -0
  309. package/dist/components/CTASlice/CTASlice.d.ts +0 -43
  310. package/dist/components/CodeBlock/themes/pdsLight.d.ts +0 -2
  311. package/dist/components/DashboardStat/DashboardStat.d.ts +0 -28
  312. package/dist/components/PullQuote/PullQuote.d.ts +0 -34
  313. package/dist/components/SiteDashboardHeading/SiteDashboardHeading.d.ts +0 -62
  314. package/dist/components/SocialLinks/SocialLinks.d.ts +0 -23
  315. package/dist/components/badges/IndicatorBadge/IndicatorBadge.d.ts +0 -27
  316. package/dist/components/cards/CardHeading/CardHeading.d.ts +0 -31
  317. package/dist/components/cards/EmptyStateCard/EmptyStateCard.d.ts +0 -36
  318. package/dist/components/cards/LinksCard/LinksCard.d.ts +0 -29
  319. package/dist/components/cards/LinksCard/links-card-sample-data.d.ts +0 -2
  320. package/dist/components/cards/NewSiteCard/NewSiteCard.d.ts +0 -61
  321. package/dist/components/cards/PaymentCard/PaymentCard.d.ts +0 -47
  322. package/dist/components/cards/PricingCard/PricingCard.d.ts +0 -90
  323. package/dist/components/cards/SiteCard/SiteCard.d.ts +0 -50
  324. package/dist/components/footer/FooterHeading/FooterHeading.d.ts +0 -22
  325. package/dist/components/footer/FooterLinks/FooterLinks.d.ts +0 -26
  326. package/dist/components/footer/SiteFooter/SiteFooter.d.ts +0 -30
  327. package/dist/components/footer/SiteFooter/footer-content.d.ts +0 -1
  328. package/dist/components/navigation/DashboardNav/DashboardNav.d.ts +0 -35
  329. package/dist/components/navigation/DashboardNav/DashboardNavItem.d.ts +0 -24
  330. package/dist/components/navigation/NavMenu/NavMenuDropdown.d.ts +0 -24
  331. package/dist/components/navigation/SideNavCompact/SideNavCompact.d.ts +0 -53
  332. package/dist/components/notifications/NotificationHubIcon/NotificationHubIcon.d.ts +0 -38
  333. package/dist/components/notifications/NotificationsPopover/NotificationsPopover.d.ts +0 -118
  334. package/dist/components/tiles/AvatarTileList/AvatarTileList.d.ts +0 -28
  335. package/dist/components/tiles/Tile/Tile.d.ts +0 -42
  336. package/dist/components/tiles/TileGrid/TileGrid.d.ts +0 -29
  337. package/dist/css/component-css/pds-avatar-tile-list.css +0 -1
  338. package/dist/css/component-css/pds-card-heading.css +0 -1
  339. package/dist/css/component-css/pds-card-select-group.css +0 -1
  340. package/dist/css/component-css/pds-cta-slice.css +0 -1
  341. package/dist/css/component-css/pds-dashboard-nav.css +0 -5
  342. package/dist/css/component-css/pds-dashboard-search.css +0 -1
  343. package/dist/css/component-css/pds-dashboard-stat.css +0 -1
  344. package/dist/css/component-css/pds-empty-state-card.css +0 -1
  345. package/dist/css/component-css/pds-flow-steps.css +0 -1
  346. package/dist/css/component-css/pds-footer-heading.css +0 -1
  347. package/dist/css/component-css/pds-footer-links.css +0 -1
  348. package/dist/css/component-css/pds-indicator-badge.css +0 -25
  349. package/dist/css/component-css/pds-links-card.css +0 -1
  350. package/dist/css/component-css/pds-new-site-card.css +0 -1
  351. package/dist/css/component-css/pds-notification-hub-icon.css +0 -1
  352. package/dist/css/component-css/pds-notifications-popover.css +0 -1
  353. package/dist/css/component-css/pds-payment-card.css +0 -1
  354. package/dist/css/component-css/pds-pricing-card-local.css +0 -1
  355. package/dist/css/component-css/pds-pricing-card.css +0 -1
  356. package/dist/css/component-css/pds-pull-quote.css +0 -1
  357. package/dist/css/component-css/pds-refresh-checker.css +0 -1
  358. package/dist/css/component-css/pds-side-nav-compact.css +0 -1
  359. package/dist/css/component-css/pds-site-card.css +0 -1
  360. package/dist/css/component-css/pds-site-dashboard-heading.css +0 -1
  361. package/dist/css/component-css/pds-social-links.css +0 -1
  362. package/dist/css/component-css/pds-tile.css +0 -1
  363. package/dist/css/component-css/pds-tiles-common.css +0 -1
  364. package/dist/css/layout-css/pds-dashboard-global.css +0 -8
  365. package/dist/css/layout-css/pds-dashboard-inner.css +0 -1
  366. package/dist/css/layout-css/pds-flex-container.css +0 -1
  367. package/dist/layouts/DashboardGlobal/DashboardGlobal.d.ts +0 -57
  368. package/dist/layouts/DashboardInner/DashboardInner.d.ts +0 -30
  369. package/dist/layouts/GlobalWrapper/GlobalWrapper.d.ts +0 -19
  370. package/dist/utilities/context-providers/ResponsiveContext/ResponsiveContext.d.ts +0 -6
  371. /package/dist/components/{Skiplink → links/Skiplink}/Skiplink.d.ts +0 -0
  372. /package/dist/components/{Picture → media/Picture}/Picture.d.ts +0 -0
  373. /package/dist/components/{VideoEmbed → media/VideoEmbed}/VideoEmbed.d.ts +0 -0
  374. /package/dist/components/{Pagination → pagination/Pagination}/usePagination.d.ts +0 -0
  375. /package/dist/components/{FlowSteps → steppers/StepList}/example-steps.d.ts +0 -0
  376. /package/dist/svg/{linkSimple.svg → link.svg} +0 -0
  377. /package/dist/svg/{linkSimpleSlash.svg → unlink.svg} +0 -0
  378. /package/dist/{layouts → utilities}/Container/Container.d.ts +0 -0
@@ -13,6 +13,12 @@ export interface SideNavProps extends ComponentPropsWithoutRef<'nav'> {
13
13
  * Additional class names
14
14
  */
15
15
  className?: string;
16
+ /**
17
+ * When true, renders a dropdown menu in place of the standard navigation at mobile viewports.
18
+ * The mobile breakpoint is controlled by the `mobileBreakpoint` prop on `GlobalWrapper`.
19
+ * Defaults to `false` — the standard navigation is shown at all breakpoints.
20
+ */
21
+ hasMobileDropdown?: boolean;
16
22
  /**
17
23
  * Heading text. If a link is passed, it will be rendered as a link.
18
24
  */
@@ -36,4 +42,4 @@ export interface SideNavProps extends ComponentPropsWithoutRef<'nav'> {
36
42
  /**
37
43
  * SideNav UI component
38
44
  */
39
- export declare const SideNav: ({ ariaLabel, className, headingText, labels, menuItems, mobileMenuSelectTextFallback, ...props }: SideNavProps) => import("react/jsx-runtime").JSX.Element;
45
+ export declare const SideNav: ({ ariaLabel, className, hasMobileDropdown, headingText, labels, menuItems, mobileMenuSelectTextFallback, ...props }: SideNavProps) => import("react/jsx-runtime").JSX.Element;
@@ -1,4 +1,4 @@
1
- import { ComponentPropsWithoutRef, ReactNode } from 'react';
1
+ import { ComponentPropsWithoutRef } from 'react';
2
2
  import { SideNavGlobalItemProps } from './SideNavGlobalItem';
3
3
  import './side-nav-global.css';
4
4
  /**
@@ -13,11 +13,6 @@ export interface SideNavGlobalProps extends ComponentPropsWithoutRef<'div'> {
13
13
  * Additional class names
14
14
  */
15
15
  className?: string;
16
- /**
17
- * Should the Pantheon logo be displayed above the menu items?
18
- * It will not be displayed in the mobile view regardless of this value.
19
- */
20
- hasLogo?: boolean;
21
16
  /**
22
17
  * Is the sidebar collapsed?
23
18
  */
@@ -29,22 +24,17 @@ export interface SideNavGlobalProps extends ComponentPropsWithoutRef<'div'> {
29
24
  submenu: string;
30
25
  toggle: string;
31
26
  };
32
- /**
33
- * Where should the logo link to? A fully-formed link element.
34
- * Only necessary if `hasLogo` is true.
35
- * If the logo should not be a link, leave blank.
36
- */
37
- logoLinkContent?: ReactNode;
38
27
  /**
39
28
  * Menu items to render.
40
29
  */
41
30
  menuItems?: SideNavGlobalItemProps[];
42
31
  /**
43
- * Text to display in the mobile menu trigger button when no active link is found.
32
+ * Callback to expand the sidebar. When provided and the sidebar is collapsed,
33
+ * tapping a nav item with children will expand the sidebar instead of showing a flyout.
44
34
  */
45
- mobileMenuSelectTextFallback?: string;
35
+ onExpandSidebar?: () => void;
46
36
  }
47
37
  /**
48
38
  * SideNavGlobal UI component
49
39
  */
50
- export declare const SideNavGlobal: ({ ariaLabel, className, hasLogo, isSidebarCollapsed, labels, logoLinkContent, menuItems, mobileMenuSelectTextFallback, ...props }: SideNavGlobalProps) => import("react/jsx-runtime").JSX.Element;
40
+ export declare const SideNavGlobal: ({ ariaLabel, className, isSidebarCollapsed, labels, menuItems, onExpandSidebar, ...props }: SideNavGlobalProps) => import("react/jsx-runtime").JSX.Element;
@@ -6,6 +6,12 @@ export interface SideNavGlobalItemProps extends NavigationItem {
6
6
  * Icon to display next to the link content.
7
7
  */
8
8
  icon?: PDSIcon;
9
+ /**
10
+ * Whether the item's submenu is expanded. Controlled by the parent
11
+ * `SideNavGlobal` so expansion state stays in React rather than being
12
+ * mutated on the DOM.
13
+ */
14
+ isExpanded?: boolean;
9
15
  /**
10
16
  * Flag indicating whether the sidebar is collapsed.
11
17
  */
@@ -17,8 +23,16 @@ export interface SideNavGlobalItemProps extends NavigationItem {
17
23
  submenu: string;
18
24
  toggle: string;
19
25
  };
26
+ /**
27
+ * Callback to expand the sidebar on touch devices when collapsed.
28
+ */
29
+ onExpandSidebar?: () => void;
30
+ /**
31
+ * Callback to toggle the item's submenu expansion.
32
+ */
33
+ onToggleExpand?: () => void;
20
34
  }
21
35
  /**
22
36
  * SideNavGlobalItem UI component
23
37
  */
24
- export declare const SideNavGlobalItem: ({ icon, isActive, isSidebarCollapsed, labels, linkContent, links, }: SideNavGlobalItemProps) => import("react/jsx-runtime").JSX.Element;
38
+ export declare const SideNavGlobalItem: ({ icon, isActive, isExpanded, isSidebarCollapsed, labels, linkContent, links, onExpandSidebar, onToggleExpand, }: SideNavGlobalItemProps) => import("react/jsx-runtime").JSX.Element;
@@ -1,10 +1,11 @@
1
1
  import { ComponentPropsWithoutRef } from 'react';
2
2
  import { NavMenuItem } from '../../../libs/types/navigation-types';
3
+ import '@components/Dropdown/dropdown.css';
3
4
  import './nav-menu.css';
4
5
  /**
5
- * Prop types for NavMenu
6
+ * Prop types for SiteMenu
6
7
  */
7
- interface NavMenuProps extends ComponentPropsWithoutRef<'nav'> {
8
+ interface SiteMenuProps extends ComponentPropsWithoutRef<'nav'> {
8
9
  /**
9
10
  * Aria label for `nav` element.
10
11
  */
@@ -21,13 +22,9 @@ interface NavMenuProps extends ComponentPropsWithoutRef<'nav'> {
21
22
  * Menu Items.
22
23
  */
23
24
  menuItems?: NavMenuItem[];
24
- /**
25
- * Mobile menu will be enabled when viewport is at or below this number in pixels.
26
- */
27
- mobileMenuMaxWidth?: number;
28
25
  }
29
26
  /**
30
- * NavMenu UI component
27
+ * SiteMenu UI component
31
28
  */
32
- export declare const NavMenu: ({ ariaLabel, className, colorType, menuItems, mobileMenuMaxWidth, ...props }: NavMenuProps) => import("react/jsx-runtime").JSX.Element;
29
+ export declare const SiteMenu: ({ ariaLabel, className, colorType, menuItems, ...props }: SiteMenuProps) => import("react/jsx-runtime").JSX.Element;
33
30
  export {};
@@ -0,0 +1,23 @@
1
+ import { ComponentPropsWithoutRef } from 'react';
2
+ import { NavMenuItem } from '../../../libs/types/navigation-types';
3
+ /**
4
+ * Prop types for SiteMenuDropdown
5
+ */
6
+ interface SiteMenuDropdownProps extends ComponentPropsWithoutRef<'button'> {
7
+ /**
8
+ * Menu items. If omitted or empty, renders as a plain top-level link.
9
+ */
10
+ items?: NavMenuItem[];
11
+ /**
12
+ * Menu label shown on the trigger button.
13
+ */
14
+ label?: string;
15
+ }
16
+ /**
17
+ * SiteMenuDropdown — a sub-menu for SiteMenu items that have child links.
18
+ * Desktop: Floating UI dropdown (opens on hover or click).
19
+ * Mobile: NavAccordion inline expansion.
20
+ * Both are always in the DOM; CSS driven by [data-pds-mobile] shows the right one.
21
+ */
22
+ export declare const SiteMenuDropdown: ({ items, label }: SiteMenuDropdownProps) => import("react/jsx-runtime").JSX.Element;
23
+ export {};
@@ -0,0 +1,48 @@
1
+ import { ComponentPropsWithoutRef, ReactElement } from 'react';
2
+ import { NavigationItem } from '../../../libs/types/navigation-types';
3
+ import './tree-nav.css';
4
+ export type TreeNavItem = NavigationItem & {
5
+ /**
6
+ * A unique identifier for this item — typically its route or URL path (e.g. `/guides/overview`).
7
+ *
8
+ * Required on any item that has children (`links` array). The component uses this to
9
+ * re-find the item's DOM node after a re-render and restore its expanded/collapsed state.
10
+ * Without it, a user-opened nested submenu will collapse whenever the component re-renders.
11
+ *
12
+ * Leaf items (no `links`) do not need `path`.
13
+ */
14
+ path?: string;
15
+ };
16
+ /**
17
+ * Prop types for TreeNav
18
+ */
19
+ export interface TreeNavProps extends ComponentPropsWithoutRef<'nav'> {
20
+ /**
21
+ * Aria label for the navigation.
22
+ */
23
+ ariaLabel: string;
24
+ /**
25
+ * Additional class names
26
+ */
27
+ className?: string;
28
+ /**
29
+ * Heading text. If a link is passed, it will be rendered as a link.
30
+ */
31
+ headingText?: string | ReactElement;
32
+ /**
33
+ * Labels for translatable strings.
34
+ */
35
+ labels?: {
36
+ submenu: string;
37
+ toggle: string;
38
+ };
39
+ /**
40
+ * Menu items to render.
41
+ */
42
+ menuItems: TreeNavItem[];
43
+ }
44
+ /**
45
+ * TreeNav UI component — a multi-level collapsible tree navigation for dense
46
+ * hierarchical content such as documentation sites.
47
+ */
48
+ export declare const TreeNav: ({ ariaLabel, className, headingText, labels, menuItems, ...props }: TreeNavProps) => import("react/jsx-runtime").JSX.Element;
@@ -58,12 +58,8 @@ export interface UserMenuProps extends ComponentPropsWithoutRef<'span'> {
58
58
  * User display name.
59
59
  */
60
60
  userName?: string;
61
- /**
62
- * If true, the workspace selector will be styled and rendered to work with the mobile version of the navbar menu. Defaults to true.
63
- */
64
- withinNavbar?: boolean;
65
61
  }
66
62
  /**
67
63
  * UserMenu UI component
68
64
  */
69
- export declare const UserMenu: ({ ariaLabel, className, menuItems, userEmail, userImageSrc, userName, withinNavbar, ...props }: UserMenuProps) => import("react/jsx-runtime").JSX.Element;
65
+ export declare const UserMenu: ({ ariaLabel, className, menuItems, userEmail, userImageSrc, userName, ...props }: UserMenuProps) => import("react/jsx-runtime").JSX.Element;
@@ -1,12 +1,6 @@
1
1
  import { ComponentPropsWithoutRef, ReactElement, ReactNode } from 'react';
2
+ import '@components/Dropdown/dropdown.css';
2
3
  import './workspace-selector.css';
3
- declare const tierLabels: {
4
- silver: string;
5
- gold: string;
6
- platinum: string;
7
- diamond: string;
8
- };
9
- export type PlanTiers = keyof typeof tierLabels;
10
4
  export type WorkspaceSelectorItem = {
11
5
  /**
12
6
  * Name of the workspace.
@@ -33,10 +27,6 @@ export type WorkspaceSelectorItem = {
33
27
  * Only used when isRestricted is true.
34
28
  */
35
29
  onRestrictedSelection?: () => void;
36
- /**
37
- * Account plan tier.
38
- */
39
- planTier?: PlanTiers;
40
30
  /**
41
31
  * Visually-hidden label to indicate restricted access.
42
32
  * @default 'Restricted'
@@ -87,10 +77,6 @@ export interface WorkspaceSelectorProps extends ComponentPropsWithoutRef<'span'>
87
77
  * Text to display when no results are found.
88
78
  */
89
79
  noResultsText?: string;
90
- /**
91
- * Is this component located in the top nav? Only applies when using the Navbar component from this toolkit. Defaults to true per design.
92
- */
93
- withinNavbar?: boolean;
94
80
  /**
95
81
  * List of all workspaces for a user.
96
82
  */
@@ -99,5 +85,4 @@ export interface WorkspaceSelectorProps extends ComponentPropsWithoutRef<'span'>
99
85
  /**
100
86
  * WorkspaceSelector UI component
101
87
  */
102
- export declare const WorkspaceSelector: ({ ariaLabel, className, createWorkspaceLink, filterLabel, filterPlaceholder, menuHeading, minFilterItems, noResultsText, withinNavbar, workspaceList, ...props }: WorkspaceSelectorProps) => import("react/jsx-runtime").JSX.Element;
103
- export {};
88
+ export declare const WorkspaceSelector: ({ ariaLabel, className, createWorkspaceLink, filterLabel, filterPlaceholder, menuHeading, minFilterItems, noResultsText, workspaceList, ...props }: WorkspaceSelectorProps) => import("react/jsx-runtime").JSX.Element;
@@ -39,6 +39,18 @@ export declare const isActiveItem: (item: NavigationItem) => boolean;
39
39
  * const inActiveTrail = isActiveTrail(parentItem); // True if parent or any child is active
40
40
  */
41
41
  export declare const isActiveTrail: (item: NavigationItem) => boolean;
42
+ /**
43
+ * Serializes the active state of an entire menu tree into a string signature.
44
+ * The signature changes on any route change — including navigation between two
45
+ * routes under the same top-level item — not just when a different top-level
46
+ * item enters the active trail. Used to reset user-driven expansion overrides
47
+ * so submenu expansion follows the active trail again after navigation.
48
+ * @param items - Array of navigation items to serialize
49
+ * @returns A string signature representing the tree's active state
50
+ * @example
51
+ * const signature = buildActiveSignature(menuItems);
52
+ */
53
+ export declare const buildActiveSignature: (items: NavigationItem[]) => string;
42
54
  /**
43
55
  * Checks if the provided content is an interactive element (link, button, etc.)
44
56
  * @param content - The React content to examine
@@ -1,5 +1,5 @@
1
1
  import { ComponentPropsWithoutRef, ReactNode } from 'react';
2
- import { StatusType } from '../../../libs/types/custom-types';
2
+ import { DataContext, StatusType } from '../../../libs/types/custom-types';
3
3
  import { PDSIcon } from '../../icons/Icon/Icon';
4
4
  import './banner.css';
5
5
  type BannerVariant = Exclude<StatusType, 'success'> | 'neutral';
@@ -41,6 +41,10 @@ export interface BannerProps extends ComponentPropsWithoutRef<'div'> {
41
41
  * Additional class names
42
42
  */
43
43
  className?: string;
44
+ /**
45
+ * Data context for sizing. Marketing context increases all sizes by one step.
46
+ */
47
+ dataContext?: DataContext;
44
48
  /**
45
49
  * Label for the dismiss button
46
50
  */
@@ -61,5 +65,5 @@ export interface BannerProps extends ComponentPropsWithoutRef<'div'> {
61
65
  /**
62
66
  * Banner UI component
63
67
  */
64
- export declare const Banner: ({ banners, className, dismissLabel, labelNext, labelPrevious, typeLabels, ...props }: BannerProps) => import("react/jsx-runtime").JSX.Element;
68
+ export declare const Banner: ({ banners, className, dataContext, dismissLabel, labelNext, labelPrevious, typeLabels, ...props }: BannerProps) => import("react/jsx-runtime").JSX.Element;
65
69
  export {};
@@ -1,5 +1,5 @@
1
1
  import { ComponentPropsWithoutRef, MouseEvent, ReactNode } from 'react';
2
- import { StatusType } from '../../../libs/types/custom-types';
2
+ import { DataContext, StatusType } from '../../../libs/types/custom-types';
3
3
  import { Button } from '../../buttons/Button/Button';
4
4
  import './section-message.css';
5
5
  export type SectionMessageType = StatusType;
@@ -14,6 +14,10 @@ export interface SectionMessageProps extends ComponentPropsWithoutRef<'div'> {
14
14
  * Can include any Button props except for size and variant.
15
15
  */
16
16
  ctaButton?: ComponentPropsWithoutRef<typeof Button>;
17
+ /**
18
+ * Data context for sizing. Marketing context increases all sizes by one step.
19
+ */
20
+ dataContext?: DataContext;
17
21
  /**
18
22
  * Label for dismiss button. Provide a translation string if needed.
19
23
  */
@@ -50,5 +54,5 @@ export interface SectionMessageProps extends ComponentPropsWithoutRef<'div'> {
50
54
  /**
51
55
  * SectionMessage UI component
52
56
  */
53
- export declare const SectionMessage: ({ className, ctaButton, dismissLabel, id, isDismissible, message, onDismiss, title, type, typeLabels, ...props }: SectionMessageProps) => import("react/jsx-runtime").JSX.Element;
57
+ export declare const SectionMessage: ({ className, ctaButton, dataContext, dismissLabel, id, isDismissible, message, onDismiss, title, type, typeLabels, ...props }: SectionMessageProps) => import("react/jsx-runtime").JSX.Element;
54
58
  export {};
@@ -18,6 +18,12 @@ declare const defaultTypeLabels: {
18
18
  * Prop types for Toast
19
19
  */
20
20
  interface ToastProps extends ComponentPropsWithoutRef<'div'> {
21
+ /**
22
+ * Duration in milliseconds before the toast auto-dismisses. When set, shows
23
+ * a progress bar and pause button. Populated automatically by useToast —
24
+ * consumers do not need to set this.
25
+ */
26
+ autoCloseDuration?: number;
21
27
  /**
22
28
  * Toast message content.
23
29
  */
@@ -30,6 +36,11 @@ interface ToastProps extends ComponentPropsWithoutRef<'div'> {
30
36
  * ID of individual toast.
31
37
  */
32
38
  id?: string;
39
+ /**
40
+ * React-Toastify toast ID, used to control the pause/resume timer.
41
+ * Populated automatically by useToast — consumers do not need to set this.
42
+ */
43
+ toastId?: string | number;
33
44
  /**
34
45
  * Type of toast to show.
35
46
  */
@@ -42,5 +53,5 @@ interface ToastProps extends ComponentPropsWithoutRef<'div'> {
42
53
  /**
43
54
  * Toast UI component
44
55
  */
45
- export declare const Toast: ({ children, className, id, type, typeLabels, }: ToastProps) => import("react/jsx-runtime").JSX.Element;
56
+ export declare const Toast: ({ autoCloseDuration, children, className, id, toastId, type, typeLabels, }: ToastProps) => import("react/jsx-runtime").JSX.Element;
46
57
  export {};
@@ -1,18 +1,27 @@
1
- import { ComponentPropsWithoutRef } from 'react';
1
+ import React, { ComponentPropsWithoutRef } from 'react';
2
2
  import 'react-toastify/dist/ReactToastify.css';
3
3
  import './toaster.css';
4
+ export declare const MIN_AUTO_CLOSE_DURATION = 30000;
5
+ type PauseResumeLabels = {
6
+ pause: string;
7
+ resume: string;
8
+ };
9
+ export interface ToasterContextValue {
10
+ labelStrings: PauseResumeLabels;
11
+ }
12
+ export declare const ToasterContext: React.Context<ToasterContextValue>;
4
13
  /**
5
- * Prop types for Toast
14
+ * Prop types for Toaster
6
15
  */
7
16
  interface ToasterProps extends ComponentPropsWithoutRef<'div'> {
8
- /**
9
- * Duration in milliseconds before the toast will auto-close.
10
- */
11
- autoCloseDuration?: number;
12
17
  /**
13
18
  * Additional class names
14
19
  */
15
20
  className?: string;
21
+ /**
22
+ * Label strings for the pause and resume buttons. Provide translation strings if needed.
23
+ */
24
+ labelStrings?: PauseResumeLabels;
16
25
  /**
17
26
  * Maximum number of toasts that can be displayed at once.
18
27
  */
@@ -25,5 +34,5 @@ interface ToasterProps extends ComponentPropsWithoutRef<'div'> {
25
34
  /**
26
35
  * Toaster UI component
27
36
  */
28
- export declare const Toaster: ({ autoCloseDuration, className, limit, position, }: ToasterProps) => import("react/jsx-runtime").JSX.Element;
37
+ export declare const Toaster: ({ className, labelStrings, limit, position, }: ToasterProps) => import("react/jsx-runtime").JSX.Element;
29
38
  export {};
@@ -1,5 +1,7 @@
1
1
  import { ReactElement } from 'react';
2
2
  import { cssTransition, toast as toastApi, ToastOptions } from 'react-toastify';
3
+ import { MIN_AUTO_CLOSE_DURATION } from './Toaster';
4
+ export { MIN_AUTO_CLOSE_DURATION };
3
5
  export declare enum ToastType {
4
6
  Critical = "critical",
5
7
  Info = "info",
@@ -0,0 +1,58 @@
1
+ import { ComponentPropsWithoutRef, ReactNode } from 'react';
2
+ import './drawer.css';
3
+ export type DrawerPlacement = 'left' | 'right';
4
+ export type DrawerSize = 's' | 'm' | 'l';
5
+ export interface DrawerProps extends Omit<ComponentPropsWithoutRef<'div'>, 'title'> {
6
+ /**
7
+ * Aria label that describes the drawer. Will default to the title if not provided.
8
+ */
9
+ ariaLabel?: string;
10
+ /**
11
+ * Main content for the drawer.
12
+ */
13
+ children?: ReactNode;
14
+ /**
15
+ * Additional class names
16
+ */
17
+ className?: string;
18
+ /**
19
+ * Text for close button aria-label attribute.
20
+ */
21
+ closeButtonLabel?: string;
22
+ /**
23
+ * If true, clicking outside the drawer will not close it.
24
+ */
25
+ disableOutsideClick?: boolean;
26
+ /**
27
+ * Indicates if the built-in close button will be shown.
28
+ */
29
+ hasCloseButton?: boolean;
30
+ /**
31
+ * Is the drawer open?
32
+ */
33
+ isOpen?: boolean;
34
+ /**
35
+ * Which edge of the screen the drawer slides in from.
36
+ */
37
+ placement?: DrawerPlacement;
38
+ /**
39
+ * Function to set the drawer open state.
40
+ */
41
+ setIsOpen?: (isOpen: boolean) => void;
42
+ /**
43
+ * Preset width of the drawer. Overridden by the `width` prop if provided.
44
+ */
45
+ size?: DrawerSize;
46
+ /**
47
+ * Title for the drawer. Accepts a string or ReactNode (e.g., a logo). Leave empty for no title.
48
+ */
49
+ title?: ReactNode;
50
+ /**
51
+ * Custom width for the drawer. Accepts any valid CSS value (e.g. '50vw', '800px', '40rem'). Overrides the `size` prop.
52
+ */
53
+ width?: string;
54
+ }
55
+ /**
56
+ * Drawer UI component
57
+ */
58
+ export declare const Drawer: ({ ariaLabel, children, className, closeButtonLabel, disableOutsideClick, hasCloseButton, isOpen: isOpenProp, placement, setIsOpen: setIsOpenProp, size, title, width, ...props }: DrawerProps) => any;
@@ -0,0 +1,45 @@
1
+ import { ComponentPropsWithoutRef, ReactNode } from 'react';
2
+ import { PDSIcon } from '../../icons/Icon/Icon';
3
+ import './full-screen-overlay.css';
4
+ export interface FullScreenOverlayProps extends ComponentPropsWithoutRef<'div'> {
5
+ /**
6
+ * Accessible label for the overlay.
7
+ */
8
+ ariaLabel: string;
9
+ /**
10
+ * Background color of the overlay surface.
11
+ * - 'default': white / dark-mode dark (default)
12
+ * - 'default-secondary': slightly off-white / dark-mode slightly lighter dark
13
+ */
14
+ background?: 'default' | 'default-secondary';
15
+ /**
16
+ * Content rendered inside the overlay.
17
+ */
18
+ children: ReactNode;
19
+ /**
20
+ * Additional class names.
21
+ */
22
+ className?: string;
23
+ /**
24
+ * Accessible label for the close button.
25
+ */
26
+ closeButtonLabel?: string;
27
+ /**
28
+ * Icon to use for the close button. Defaults to 'compress'.
29
+ */
30
+ closeIconName?: PDSIcon;
31
+ /**
32
+ * Whether to show the built-in close button. Set to false when providing
33
+ * your own close control (e.g. in a UtilityBar).
34
+ */
35
+ hasCloseButton?: boolean;
36
+ /**
37
+ * Whether the overlay is currently open.
38
+ */
39
+ isOpen: boolean;
40
+ /**
41
+ * Callback when the overlay should close.
42
+ */
43
+ onClose: () => void;
44
+ }
45
+ export declare const FullScreenOverlay: ({ ariaLabel, background, children, className, closeButtonLabel, closeIconName, hasCloseButton, isOpen, onClose, ...props }: FullScreenOverlayProps) => any;
@@ -42,7 +42,7 @@ export interface ModalProps extends ComponentPropsWithoutRef<'div'> {
42
42
  /**
43
43
  * The width of the modal.
44
44
  */
45
- size?: 'sm' | 'md' | 'lg' | 'xl';
45
+ size?: 's' | 'm' | 'l' | 'xl';
46
46
  /**
47
47
  * Text for modal title
48
48
  */
@@ -1,6 +1,7 @@
1
1
  import { ComponentPropsWithoutRef } from 'react';
2
- import { HeadingLevelCommon } from '../../libs/types/custom-types';
2
+ import { HeadingLevelCommon } from '../../../libs/types/custom-types';
3
3
  import './pagination.css';
4
+ export type PaginationSize = 's' | 'm';
4
5
  /**
5
6
  * Prop types for Pagination
6
7
  */
@@ -43,6 +44,10 @@ export interface PaginationProps extends ComponentPropsWithoutRef<'nav'> {
43
44
  * For example: `onPageChange={(page) => setCurrentPage(page)}`
44
45
  */
45
46
  onPageChange?: (page: number) => void;
47
+ /**
48
+ * Size of the pagination items.
49
+ */
50
+ size?: PaginationSize;
46
51
  /**
47
52
  * Total number of items to paginate.
48
53
  */
@@ -51,4 +56,4 @@ export interface PaginationProps extends ComponentPropsWithoutRef<'nav'> {
51
56
  /**
52
57
  * Pagination UI component
53
58
  */
54
- export declare const Pagination: ({ bufferCount, className, currentPage, headingLevel, headingText, itemsPerPage, labelStrings, onPageChange, totalItemCount, ...props }: PaginationProps) => import("react/jsx-runtime").JSX.Element;
59
+ export declare const Pagination: ({ bufferCount, className, currentPage, headingLevel, headingText, itemsPerPage, labelStrings, onPageChange, size, totalItemCount, ...props }: PaginationProps) => import("react/jsx-runtime").JSX.Element;
@@ -0,0 +1,49 @@
1
+ import { ComponentPropsWithoutRef } from 'react';
2
+ import { HeadingLevelCommon } from '../../../libs/types/custom-types';
3
+ import './pagination-compact.css';
4
+ /**
5
+ * Prop types for PaginationCompact
6
+ */
7
+ export interface PaginationCompactProps extends ComponentPropsWithoutRef<'nav'> {
8
+ /**
9
+ * Additional class names.
10
+ */
11
+ className?: string;
12
+ /**
13
+ * Current page number.
14
+ */
15
+ currentPage: number;
16
+ /**
17
+ * Heading level. Defaults to `h2`.
18
+ */
19
+ headingLevel?: HeadingLevelCommon;
20
+ /**
21
+ * Heading text for the pagination component. Will only be accessible to screen readers.
22
+ */
23
+ headingText?: string;
24
+ /**
25
+ * Number of items per page.
26
+ */
27
+ itemsPerPage?: number;
28
+ /**
29
+ * Translatable label strings.
30
+ */
31
+ labelStrings?: {
32
+ next: string;
33
+ of: string;
34
+ pageSelect: string;
35
+ previous: string;
36
+ };
37
+ /**
38
+ * Callback to handle page change.
39
+ */
40
+ onPageChange?: (page: number) => void;
41
+ /**
42
+ * Total number of items to paginate.
43
+ */
44
+ totalItemCount: number;
45
+ }
46
+ /**
47
+ * PaginationCompact UI component — page selector dropdown with previous/next controls.
48
+ */
49
+ export declare const PaginationCompact: ({ className, currentPage, headingLevel, headingText, itemsPerPage, labelStrings, onPageChange, totalItemCount, ...props }: PaginationCompactProps) => import("react/jsx-runtime").JSX.Element;
@@ -0,0 +1,55 @@
1
+ import { ComponentPropsWithoutRef } from 'react';
2
+ import { HeadingLevelCommon } from '../../../libs/types/custom-types';
3
+ import './pagination-mini.css';
4
+ /**
5
+ * Prop types for PaginationMini
6
+ */
7
+ export interface PaginationMiniProps extends ComponentPropsWithoutRef<'nav'> {
8
+ /**
9
+ * Additional class names.
10
+ */
11
+ className?: string;
12
+ /**
13
+ * Current page number.
14
+ */
15
+ currentPage: number;
16
+ /**
17
+ * Heading level. Defaults to `h2`.
18
+ */
19
+ headingLevel?: HeadingLevelCommon;
20
+ /**
21
+ * Heading text for the pagination component. Will only be accessible to screen readers.
22
+ */
23
+ headingText?: string;
24
+ /**
25
+ * Number of items per page.
26
+ */
27
+ itemsPerPage?: number;
28
+ /**
29
+ * Translatable label strings.
30
+ */
31
+ labelStrings?: {
32
+ next: string;
33
+ previous: string;
34
+ };
35
+ /**
36
+ * Title of the next page. Displayed as the clickable label on the next button.
37
+ */
38
+ nextPage?: string;
39
+ /**
40
+ * Callback to handle page change.
41
+ */
42
+ onPageChange?: (page: number) => void;
43
+ /**
44
+ * Title of the previous page. Displayed as the clickable label on the previous button.
45
+ */
46
+ previousPage?: string;
47
+ /**
48
+ * Total number of items to paginate.
49
+ */
50
+ totalItemCount: number;
51
+ }
52
+ /**
53
+ * PaginationMini UI component — previous/next navigation with page labels.
54
+ */
55
+ export declare const PaginationMini: ({ className, currentPage, headingLevel, headingText, itemsPerPage, labelStrings, nextPage, onPageChange, previousPage, totalItemCount, ...props }: PaginationMiniProps) => import("react/jsx-runtime").JSX.Element;