@persona/design-system 0.1.7 → 0.1.9

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 (952) hide show
  1. package/CHANGELOG.md +355 -221
  2. package/README.md +20 -1
  3. package/dist/{Action-DkNqzc2X.d.mts → Action-CVtzREhU.d.mts} +3 -3
  4. package/dist/Action.d.mts +1 -1
  5. package/dist/AdvancedFilterRuleRow.d.mts +37 -0
  6. package/dist/AdvancedFilterRulesPopover.d.mts +62 -0
  7. package/dist/ArrayValueControl.d.mts +38 -0
  8. package/dist/Attribute.d.mts +4 -4
  9. package/dist/AttributeGrid.d.mts +1 -1
  10. package/dist/{Badge-DRn_r6is.mjs → Badge-DEVbRlJX.mjs} +2 -2
  11. package/dist/{Badge-DRn_r6is.mjs.map → Badge-DEVbRlJX.mjs.map} +1 -1
  12. package/dist/Banner.d.mts +1 -1
  13. package/dist/BooleanValueControl.d.mts +20 -0
  14. package/dist/{Breadcrumb-On7pOpgt.d.mts → Breadcrumb-lziQ1FX9.d.mts} +15 -2
  15. package/dist/Breadcrumb.d.mts +2 -2
  16. package/dist/Breadcrumbs-DJ5qqqRD.d.mts +26 -0
  17. package/dist/Breadcrumbs-W8hIhdHD.mjs +288 -0
  18. package/dist/Breadcrumbs-W8hIhdHD.mjs.map +1 -0
  19. package/dist/Breadcrumbs.d.mts +2 -20
  20. package/dist/{Button-C_3p5Xfi.d.cts → Button-Vd5O4DUp.d.mts} +6 -6
  21. package/dist/Button.d.mts +1 -1
  22. package/dist/ButtonGroup.d.mts +1 -1
  23. package/dist/Calendar.d.mts +1 -1
  24. package/dist/CalendarBase.d.mts +1 -1
  25. package/dist/{Card-CLTkZLKr.mjs → Card-BMCB9eFC.mjs} +4 -4
  26. package/dist/{Card-CLTkZLKr.mjs.map → Card-BMCB9eFC.mjs.map} +1 -1
  27. package/dist/{Card-IOBCsfke.d.mts → Card-CqnG--CU.d.mts} +4 -4
  28. package/dist/Card.d.mts +1 -1
  29. package/dist/Card2.d.mts +1 -1
  30. package/dist/CardV2-C0fcOUdp.mjs +411 -0
  31. package/dist/CardV2-C0fcOUdp.mjs.map +1 -0
  32. package/dist/{Checkbox-BghGF-iW.mjs → Checkbox-BcuiFvK7.mjs} +5 -5
  33. package/dist/{Checkbox-BghGF-iW.mjs.map → Checkbox-BcuiFvK7.mjs.map} +1 -1
  34. package/dist/{Checkbox-DfI0Xp3y.d.cts → Checkbox-Bm8exUfH.d.mts} +1 -1
  35. package/dist/Checkbox.d.mts +1 -1
  36. package/dist/CheckboxGroupField.d.mts +2 -2
  37. package/dist/ChoicesValueControl.d.mts +35 -0
  38. package/dist/{Combobox-CeKMrlxy.mjs → Combobox-B6JyLog8.mjs} +261 -71
  39. package/dist/Combobox-B6JyLog8.mjs.map +1 -0
  40. package/dist/{Combobox-5rAFq_52.d.cts → Combobox-BaD0f2Du.d.mts} +3 -3
  41. package/dist/Combobox.d.mts +2 -2
  42. package/dist/{ComboboxBase-DGZUdsQa.d.mts → ComboboxBase-BsPf8BZh.d.mts} +53 -8
  43. package/dist/ComboboxBase.d.mts +2 -2
  44. package/dist/{ComboboxMultiSelect-DMWPiBrE.d.mts → ComboboxMultiSelect-DhLzCWbz.d.mts} +2 -2
  45. package/dist/ComboboxMultiSelect.d.mts +1 -1
  46. package/dist/{ComboboxSingleSelect-CcppU_hq.d.mts → ComboboxSingleSelect-P0r5rs_u.d.mts} +4 -4
  47. package/dist/ComboboxSingleSelect.d.mts +1 -1
  48. package/dist/{CompactBar-2cpJD7qg.d.mts → CompactBar-CXqlVKy7.d.mts} +3 -3
  49. package/dist/CompactBar.d.mts +1 -1
  50. package/dist/{ConfigFormGroup-DISUwz5j.mjs → ConfigFormGroup-yhb2jldT.mjs} +3 -3
  51. package/dist/{ConfigFormGroup-DISUwz5j.mjs.map → ConfigFormGroup-yhb2jldT.mjs.map} +1 -1
  52. package/dist/{ControlBar-DXyl1gjc.d.mts → ControlBar-tOCQnbAl.d.mts} +2 -2
  53. package/dist/ControlBar.d.mts +1 -1
  54. package/dist/DataTable.d.mts +13 -4
  55. package/dist/DateField.d.mts +1 -1
  56. package/dist/DatePicker-Bw79p-Lx.mjs +922 -0
  57. package/dist/DatePicker-Bw79p-Lx.mjs.map +1 -0
  58. package/dist/DatePicker.d.mts +1 -1
  59. package/dist/DateRangePicker.d.mts +1 -1
  60. package/dist/DateValueControl.d.mts +26 -0
  61. package/dist/{DropdownButton-B397h6ka.mjs → DropdownButton-BI3IFJun.mjs} +3 -3
  62. package/dist/{DropdownButton-B397h6ka.mjs.map → DropdownButton-BI3IFJun.mjs.map} +1 -1
  63. package/dist/DropdownButton.d.mts +2 -2
  64. package/dist/{DropdownMenu-cnkoGc7C.mjs → DropdownMenu-D25WBCah.mjs} +3 -3
  65. package/dist/{DropdownMenu-cnkoGc7C.mjs.map → DropdownMenu-D25WBCah.mjs.map} +1 -1
  66. package/dist/{DropdownMenu-5qIgQ14A.d.mts → DropdownMenu-D6nfAsi0.d.mts} +3 -3
  67. package/dist/DropdownMenu.d.mts +1 -1
  68. package/dist/{ErrorProps-BosuK6zJ.d.cts → ErrorProps-CN2XjaOX.d.mts} +1 -1
  69. package/dist/ErrorProps.d.mts +1 -1
  70. package/dist/FieldRegistry-rqSkjchY.d.mts +122 -0
  71. package/dist/FieldRegistry.d.mts +2 -0
  72. package/dist/FilterBar-D3LiIy1-.d.mts +103 -0
  73. package/dist/FilterBar.d.mts +2 -0
  74. package/dist/FilterPickerMenu.d.mts +84 -0
  75. package/dist/FilterPill.d.mts +60 -0
  76. package/dist/FilterPopover.d.mts +87 -0
  77. package/dist/FloatValueControl.d.mts +40 -0
  78. package/dist/{FormControl-ArDcvmir.mjs → FormControl-CFU9uKF7.mjs} +6 -6
  79. package/dist/{FormControl-ArDcvmir.mjs.map → FormControl-CFU9uKF7.mjs.map} +1 -1
  80. package/dist/{FormControl-DnsC4vTX.d.mts → FormControl-DH3bgqaB.d.mts} +3 -3
  81. package/dist/FormControl.d.mts +1 -1
  82. package/dist/FormControlLabel.d.mts +1 -1
  83. package/dist/{FormField-BddCs6P0.d.mts → FormField-BugkBvN4.d.mts} +2 -2
  84. package/dist/FormField-DdmgSWq4.mjs +474 -0
  85. package/dist/FormField-DdmgSWq4.mjs.map +1 -0
  86. package/dist/FormField.d.mts +1 -1
  87. package/dist/{Header-B-Us54dR.d.mts → Header-CDTYK1XJ.d.mts} +2 -2
  88. package/dist/Header.d.mts +1 -1
  89. package/dist/{HelperTooltip-CofPKyZh.d.mts → HelperTooltip-B7Ysh8B3.d.mts} +3 -3
  90. package/dist/HelperTooltip.d.mts +1 -1
  91. package/dist/{HoverCopyableField-DR575ayC.mjs → HoverCopyableField-7TWP0Y1Z.mjs} +6 -6
  92. package/dist/{HoverCopyableField-DR575ayC.mjs.map → HoverCopyableField-7TWP0Y1Z.mjs.map} +1 -1
  93. package/dist/HoverCopyableField.d.mts +1 -1
  94. package/dist/{IconButton-ZcyTFjPn.d.cts → IconButton-BHCmHIx5.d.mts} +2 -2
  95. package/dist/{IconButton-DC4rh6ow.mjs → IconButton-P8w0JDI5.mjs} +5 -5
  96. package/dist/{IconButton-DC4rh6ow.mjs.map → IconButton-P8w0JDI5.mjs.map} +1 -1
  97. package/dist/IconButton.d.mts +1 -1
  98. package/dist/ImageTile.d.mts +2 -2
  99. package/dist/InlineCombobox.d.mts +2 -2
  100. package/dist/InlineInput.d.mts +1 -1
  101. package/dist/{Input-CEcTvtX2.d.cts → Input-DMgVyZyq.d.mts} +6 -6
  102. package/dist/{Input-PWfwMSJ7.mjs → Input-QC6xla6I.mjs} +5 -5
  103. package/dist/Input-QC6xla6I.mjs.map +1 -0
  104. package/dist/Input.d.mts +1 -1
  105. package/dist/{InputProps-DNlik5IZ.d.cts → InputProps-BnjxrdWQ.d.mts} +2 -2
  106. package/dist/InputProps.d.mts +1 -1
  107. package/dist/IntegerValueControl.d.mts +39 -0
  108. package/dist/LayoutLoadingShimmer.d.mts +20 -0
  109. package/dist/Link.d.mts +1 -1
  110. package/dist/{ListBox-DZIAlPbc.d.mts → ListBox-D09N1a5D.d.mts} +10 -5
  111. package/dist/{ListBox-CDNOJmvz.mjs → ListBox-TrL3Tb7X.mjs} +89 -14
  112. package/dist/ListBox-TrL3Tb7X.mjs.map +1 -0
  113. package/dist/ListBox.d.mts +1 -1
  114. package/dist/ListBoxField.d.mts +3 -3
  115. package/dist/{LoadingShimmer-Bu6KtQ06.mjs → LoadingShimmer-Dsc_RCCf.mjs} +1 -1
  116. package/dist/{LoadingShimmer-Bu6KtQ06.mjs.map → LoadingShimmer-Dsc_RCCf.mjs.map} +1 -1
  117. package/dist/LoadingShimmer.d.mts +2 -2
  118. package/dist/LogicRow-BcuiSTHN.d.mts +40 -0
  119. package/dist/LogicRow.d.mts +2 -0
  120. package/dist/MaskedInput.d.mts +1 -1
  121. package/dist/{Menu-BJ5c7HGD.d.mts → Menu-Bv8dsrz6.d.mts} +4 -4
  122. package/dist/{Menu-CVuFAxl2.mjs → Menu-DmeMgN-i.mjs} +4 -4
  123. package/dist/{Menu-CVuFAxl2.mjs.map → Menu-DmeMgN-i.mjs.map} +1 -1
  124. package/dist/Menu.d.mts +1 -1
  125. package/dist/{MiddleTruncatedText-Bzpg3zAU.mjs → MiddleTruncatedText-GXI-CPvs.mjs} +3 -3
  126. package/dist/{MiddleTruncatedText-Bzpg3zAU.mjs.map → MiddleTruncatedText-GXI-CPvs.mjs.map} +1 -1
  127. package/dist/Modal.d.mts +3 -3
  128. package/dist/PageHeader-jSLud2JI.mjs +65 -0
  129. package/dist/PageHeader-jSLud2JI.mjs.map +1 -0
  130. package/dist/PageHeader.d.mts +18 -4
  131. package/dist/{PageSelector-CMoV-cHa.d.mts → PageSelector-vay4jpMp.d.mts} +3 -3
  132. package/dist/PageSelector.d.mts +1 -1
  133. package/dist/PageSizeSelector.d.mts +7 -1
  134. package/dist/{Pagination-Cj08JRG9.mjs → Pagination-BeYukNCj.mjs} +13 -10
  135. package/dist/Pagination-BeYukNCj.mjs.map +1 -0
  136. package/dist/{Pagination-QWNK_hH7.d.mts → Pagination-ygLutOst.d.mts} +9 -3
  137. package/dist/Pagination.d.mts +1 -1
  138. package/dist/{Pii-Bxh6_R4T.mjs → Pii-QsTrz8wn.mjs} +2 -2
  139. package/dist/{Pii-Bxh6_R4T.mjs.map → Pii-QsTrz8wn.mjs.map} +1 -1
  140. package/dist/Pii.d.mts +1 -1
  141. package/dist/PillShell.d.mts +85 -0
  142. package/dist/{Popover-D0QY5f-J.mjs → Popover-BkDpDdaO.mjs} +5 -5
  143. package/dist/{Popover-D0QY5f-J.mjs.map → Popover-BkDpDdaO.mjs.map} +1 -1
  144. package/dist/Popover.d.mts +1 -1
  145. package/dist/ProgressBar.d.mts +1 -1
  146. package/dist/ProgressIndicator.d.mts +1 -1
  147. package/dist/{PseudoClassProps-ySXCGUEQ.d.mts → PseudoClassProps-DLxPxo7T.d.mts} +1 -1
  148. package/dist/PseudoClassProps.d.mts +1 -1
  149. package/dist/{Radio-C9DevagH.mjs → Radio-CSX2eO-O.mjs} +3 -3
  150. package/dist/{Radio-C9DevagH.mjs.map → Radio-CSX2eO-O.mjs.map} +1 -1
  151. package/dist/{RadioGroup-B3hRbIWF.mjs → RadioGroup-CnK0opBd.mjs} +3 -3
  152. package/dist/{RadioGroup-B3hRbIWF.mjs.map → RadioGroup-CnK0opBd.mjs.map} +1 -1
  153. package/dist/{RadioGroup-nhMXEbCx.d.mts → RadioGroup-DKqbSfju.d.mts} +1 -1
  154. package/dist/RadioGroup.d.mts +1 -1
  155. package/dist/RangeCalendar.d.mts +1 -1
  156. package/dist/RangeCalendarPresets.d.mts +1 -1
  157. package/dist/RuleEditorFields.d.mts +37 -0
  158. package/dist/RulesPill.d.mts +65 -0
  159. package/dist/{SearchInput-s6qGC2WZ.d.mts → SearchInput-Bp2yjaE1.d.mts} +3 -3
  160. package/dist/SearchInput.d.mts +1 -1
  161. package/dist/Section.d.mts +1 -1
  162. package/dist/{SectionHeading-CDBQ4m9E.d.mts → SectionHeading-Q-rx2LEd.d.mts} +2 -2
  163. package/dist/SectionHeading.d.mts +1 -1
  164. package/dist/{SegmentedControl-B1ZLgu61.mjs → SegmentedControl-CgDQIVll.mjs} +8 -7
  165. package/dist/SegmentedControl-CgDQIVll.mjs.map +1 -0
  166. package/dist/{SegmentedControl-BYuXohIp.d.cts → SegmentedControl-DrjdUOU9.d.mts} +2 -2
  167. package/dist/SegmentedControl.d.mts +1 -1
  168. package/dist/{Select-NcaURrGZ.d.cts → Select-Bk27TgN8.d.mts} +11 -5
  169. package/dist/{Select-ByTgXOlU.mjs → Select-C1ZoRk39.mjs} +14 -11
  170. package/dist/Select-C1ZoRk39.mjs.map +1 -0
  171. package/dist/Select.d.mts +1 -1
  172. package/dist/Slider.d.mts +1 -1
  173. package/dist/SliderRHF.d.mts +1 -1
  174. package/dist/SliderThumb.d.mts +1 -1
  175. package/dist/{Spacer-Ln3KChb5.mjs → Spacer-CJp0lwkL.mjs} +1 -1
  176. package/dist/{Spacer-Ln3KChb5.mjs.map → Spacer-CJp0lwkL.mjs.map} +1 -1
  177. package/dist/{Stack-ckRN7LrP.mjs → Stack-Bl54WmhY.mjs} +1 -1
  178. package/dist/{Stack-ckRN7LrP.mjs.map → Stack-Bl54WmhY.mjs.map} +1 -1
  179. package/dist/{Stack-UMhJ6F_3.d.mts → Stack-CkV7k7TE.d.mts} +2 -2
  180. package/dist/Stack.d.mts +1 -1
  181. package/dist/StatusIndicator.d.mts +32 -4
  182. package/dist/{Sticker-DjF9VJQB.d.mts → Sticker-Bs25ISz7.d.mts} +5 -5
  183. package/dist/{Sticker-B0TbkV4o.mjs → Sticker-CyGb9dEu.mjs} +3 -3
  184. package/dist/{Sticker-B0TbkV4o.mjs.map → Sticker-CyGb9dEu.mjs.map} +1 -1
  185. package/dist/Sticker.d.mts +1 -1
  186. package/dist/StringValueControl.d.mts +39 -0
  187. package/dist/SwatchPicker.d.mts +1 -1
  188. package/dist/Tab.d.mts +14 -5
  189. package/dist/{TabBar-ByusqAXF.mjs → TabBar-Bn8PHHBZ.mjs} +16 -10
  190. package/dist/TabBar-Bn8PHHBZ.mjs.map +1 -0
  191. package/dist/TabBarIconButton.d.mts +1 -1
  192. package/dist/{Table-DJZtluW3.d.cts → Table-BNScLj9g.d.mts} +1 -1
  193. package/dist/{Table-CNs8p8hL.mjs → Table-BfontAeY.mjs} +8 -6
  194. package/dist/{Table-CNs8p8hL.mjs.map → Table-BfontAeY.mjs.map} +1 -1
  195. package/dist/Table.d.mts +1 -1
  196. package/dist/{TableBody-BFPF07n4.d.cts → TableBody-CrDNMyT8.d.mts} +1 -1
  197. package/dist/TableBody.d.mts +1 -1
  198. package/dist/{TableBox-DIJffyts.mjs → TableBox-bmrKh_ax.mjs} +89 -38
  199. package/dist/TableBox-bmrKh_ax.mjs.map +1 -0
  200. package/dist/TableBox.d.mts +2 -2
  201. package/dist/{TableBoxCell-D1bjYv7b.d.mts → TableBoxCell-CvjLYhTV.d.mts} +24 -10
  202. package/dist/TableBoxCell.d.mts +1 -1
  203. package/dist/TableBoxField.d.mts +8 -5
  204. package/dist/{TableBoxRow-CTR14HJF.d.mts → TableBoxRow-BzXECgid.d.mts} +4 -4
  205. package/dist/TableBoxRow.d.mts +1 -1
  206. package/dist/{TableBoxRowActions-BoMt5d0b.d.mts → TableBoxRowActions-BAiFXiCh.d.mts} +2 -2
  207. package/dist/TableBoxRowActions.d.mts +1 -1
  208. package/dist/TableCell.d.mts +1 -1
  209. package/dist/{TableControls-BZyiqk9V.d.mts → TableControls-BehR7CKS.d.mts} +4 -4
  210. package/dist/TableControls-DVTtNAPo.mjs +3859 -0
  211. package/dist/TableControls-DVTtNAPo.mjs.map +1 -0
  212. package/dist/TableControls.d.mts +1 -1
  213. package/dist/{TableControlsContext-CleTWT7z.d.mts → TableControlsContext-D_SBFZN1.d.mts} +2 -2
  214. package/dist/TableControlsContext.d.mts +1 -1
  215. package/dist/{TableHead-CTsZNRJm.d.cts → TableHead-LxvG0e9k.d.mts} +1 -1
  216. package/dist/TableHead.d.mts +1 -1
  217. package/dist/{TableHeaderCell-UoY92mzR.d.cts → TableHeaderCell-Br8ZE3Xe.d.mts} +1 -1
  218. package/dist/TableHeaderCell.d.mts +1 -1
  219. package/dist/{TableLayout-_TWUnffx.d.mts → TableLayout-BZeP8qfg.d.mts} +7 -1
  220. package/dist/TableLayout.d.mts +1 -1
  221. package/dist/{TableRow-BVzduO4G.d.cts → TableRow-BvS4yjo6.d.mts} +2 -2
  222. package/dist/TableRow.d.mts +1 -1
  223. package/dist/TableTH.d.mts +1 -1
  224. package/dist/{TableViewConfigurationDropdown-D2TM2wCv.d.mts → TableViewConfigurationDropdown-BYPh4dIP.d.mts} +2 -2
  225. package/dist/TableViewConfigurationDropdown.d.mts +1 -1
  226. package/dist/TechnicalSticker.d.mts +1 -1
  227. package/dist/{Text-D3FXEnG6.d.mts → Text-DNPbAuUG.d.mts} +3 -3
  228. package/dist/{Text-hEoPeOc9.mjs → Text-RcEfNFLx.mjs} +1 -1
  229. package/dist/{Text-hEoPeOc9.mjs.map → Text-RcEfNFLx.mjs.map} +1 -1
  230. package/dist/Text.d.mts +1 -1
  231. package/dist/{TextArea-KpDoXg-5.d.cts → TextArea-B89wtTsF.d.mts} +2 -2
  232. package/dist/{TextArea-DIPeBLkr.mjs → TextArea-NCLsW-03.mjs} +3 -3
  233. package/dist/{TextArea-DIPeBLkr.mjs.map → TextArea-NCLsW-03.mjs.map} +1 -1
  234. package/dist/TextArea.d.mts +1 -1
  235. package/dist/{TextUnderlineTooltip-Cep5cgEQ.d.mts → TextUnderlineTooltip-5-0D8s4z.d.mts} +3 -3
  236. package/dist/TextUnderlineTooltip.d.mts +1 -1
  237. package/dist/Tile.d.mts +2 -2
  238. package/dist/Toast.d.mts +1 -1
  239. package/dist/{Toggle-CfjUQlcK.mjs → Toggle-Bie9zCem.mjs} +5 -5
  240. package/dist/{Toggle-CfjUQlcK.mjs.map → Toggle-Bie9zCem.mjs.map} +1 -1
  241. package/dist/{Toggle-BQCOJZjZ.d.mts → Toggle-DzYLgxGk.d.mts} +1 -1
  242. package/dist/Toggle.d.mts +1 -1
  243. package/dist/{Tooltip-CDvOu1UN.mjs → Tooltip-BvDbmXak.mjs} +3 -3
  244. package/dist/{Tooltip-CDvOu1UN.mjs.map → Tooltip-BvDbmXak.mjs.map} +1 -1
  245. package/dist/{Tooltip-DRgufW3i.d.mts → Tooltip-CUC-JuRL.d.mts} +3 -3
  246. package/dist/Tooltip.d.mts +1 -1
  247. package/dist/{TruncatedText-Cy8NpHzm.d.mts → TruncatedText-BJnowVTx.d.mts} +1 -1
  248. package/dist/components/Attribute/index.mjs +10 -10
  249. package/dist/components/Attribute/index.mjs.map +1 -1
  250. package/dist/components/Badge/index.mjs +1 -1
  251. package/dist/components/Banner/index.mjs +1 -1
  252. package/dist/components/Breadcrumbs/index.d.mts +2 -2
  253. package/dist/components/Breadcrumbs/index.mjs +1 -267
  254. package/dist/components/Button/index.d.mts +2 -2
  255. package/dist/components/Button/index.mjs +1 -1
  256. package/dist/components/ButtonGroup/index.mjs +3 -3
  257. package/dist/components/Card/index.d.mts +2 -2
  258. package/dist/components/Card/index.mjs +1 -1
  259. package/dist/components/CardV2/index.d.mts +1 -1
  260. package/dist/components/CardV2/index.mjs +1 -410
  261. package/dist/components/Checkbox/index.d.mts +1 -1
  262. package/dist/components/Checkbox/index.mjs +1 -1
  263. package/dist/components/Combobox/index.d.mts +2 -2
  264. package/dist/components/Combobox/index.mjs +1 -1
  265. package/dist/components/ConfigFormGroup/index.mjs +2 -2
  266. package/dist/components/DataTable/TableControls/index.d.mts +16 -6
  267. package/dist/components/DataTable/TableControls/index.mjs +2 -2
  268. package/dist/components/DataTable/index.mjs +28 -26
  269. package/dist/components/DataTable/index.mjs.map +1 -1
  270. package/dist/components/DataTable/types.d.mts +2 -2
  271. package/dist/components/DatePicker/index.mjs +1 -921
  272. package/dist/components/DropdownButton/index.mjs +1 -1
  273. package/dist/components/DropdownMenu/index.d.mts +1 -1
  274. package/dist/components/DropdownMenu/index.mjs +1 -1
  275. package/dist/components/FormControl/index.d.mts +2 -2
  276. package/dist/components/FormControl/index.mjs +2 -2
  277. package/dist/components/FormField/index.d.mts +3 -3
  278. package/dist/components/FormField/index.mjs +2 -471
  279. package/dist/components/HoverCopyableField/index.mjs +1 -1
  280. package/dist/components/ImageTile/index.mjs +8 -8
  281. package/dist/components/Input/index.d.mts +1 -1
  282. package/dist/components/Input/index.mjs +1 -1
  283. package/dist/components/Link/index.mjs +1 -1
  284. package/dist/components/ListBox/index.d.mts +4 -2
  285. package/dist/components/ListBox/index.mjs +1 -1
  286. package/dist/components/LoadingShimmer/index.mjs +1 -1
  287. package/dist/components/MaskedInput/index.mjs +2 -2
  288. package/dist/components/Menu/index.d.mts +1 -1
  289. package/dist/components/Menu/index.mjs +1 -1
  290. package/dist/components/Modal/index.mjs +7 -7
  291. package/dist/components/PageHeader/index.mjs +1 -63
  292. package/dist/components/Pagination/index.d.mts +3 -3
  293. package/dist/components/Pagination/index.mjs +1 -1
  294. package/dist/components/Pii/index.mjs +1 -1
  295. package/dist/components/Popover/index.mjs +1 -1
  296. package/dist/components/ProgressBar/index.mjs +1 -1
  297. package/dist/components/Radio/index.mjs +1 -1
  298. package/dist/components/RadioGroup/index.d.mts +1 -1
  299. package/dist/components/RadioGroup/index.mjs +1 -1
  300. package/dist/components/SegmentedControl/index.d.mts +1 -1
  301. package/dist/components/SegmentedControl/index.mjs +1 -1
  302. package/dist/components/Select/index.d.mts +1 -1
  303. package/dist/components/Select/index.mjs +1 -1
  304. package/dist/components/Slider/index.mjs +2 -2
  305. package/dist/components/Spacer/index.mjs +1 -1
  306. package/dist/components/Stack/index.d.mts +1 -1
  307. package/dist/components/Stack/index.mjs +1 -1
  308. package/dist/components/StatusIndicator/index.d.mts +2 -2
  309. package/dist/components/StatusIndicator/index.mjs +61 -12
  310. package/dist/components/StatusIndicator/index.mjs.map +1 -1
  311. package/dist/components/Sticker/index.d.mts +1 -1
  312. package/dist/components/Sticker/index.mjs +1 -1
  313. package/dist/components/TabBar/index.mjs +1 -1
  314. package/dist/components/Table/index.d.mts +7 -7
  315. package/dist/components/Table/index.mjs +1 -1
  316. package/dist/components/TableBox/index.d.mts +2 -2
  317. package/dist/components/TableBox/index.mjs +1 -1
  318. package/dist/components/TechnicalSticker/index.mjs +4 -4
  319. package/dist/components/Text/index.d.mts +1 -1
  320. package/dist/components/Text/index.mjs +1 -1
  321. package/dist/components/TextArea/index.d.mts +1 -1
  322. package/dist/components/TextArea/index.mjs +1 -1
  323. package/dist/components/Tile/index.mjs +4 -4
  324. package/dist/components/Toast/index.mjs +1 -1
  325. package/dist/components/Toggle/index.d.mts +1 -1
  326. package/dist/components/Toggle/index.mjs +1 -1
  327. package/dist/components/Tooltip/index.d.mts +3 -3
  328. package/dist/components/Tooltip/index.mjs +1 -1
  329. package/dist/compound-expression.d.mts +9 -0
  330. package/dist/{constants-DVwPpTt5.d.mts → constants-BASogfT_.d.mts} +1 -1
  331. package/dist/constants.d.mts +1 -1
  332. package/dist/containers.d.mts +8 -0
  333. package/dist/display.d.mts +8 -0
  334. package/dist/fieldPickerOptions.d.mts +29 -0
  335. package/dist/filter-size-context-Blw6Sd69.d.mts +52 -0
  336. package/dist/filter-size-context.d.mts +2 -0
  337. package/dist/helpers.d.mts +1 -1
  338. package/dist/index-4_B2yRzD.d.mts +7 -0
  339. package/dist/index-BxXTpeUb2.d.mts +55 -0
  340. package/dist/{index-BPnJP0jZ.d.mts → index-DDbjWdk0.d.mts} +4 -4
  341. package/dist/index.d.mts +1 -1
  342. package/dist/index2.d.mts +1 -1
  343. package/dist/index3.d.mts +4 -1
  344. package/dist/index4.d.mts +11 -0
  345. package/dist/index5.d.mts +2 -0
  346. package/dist/{input-BkzqXwn7.d.cts → input-Bv5fKt5J.d.mts} +3 -3
  347. package/dist/inputFields.d.mts +11 -11
  348. package/dist/{intersperse-yd3oMrQl.mjs → intersperse-vOYvFOfF.mjs} +1 -1
  349. package/dist/{intersperse-Gxwgpbk8.cjs.map → intersperse-vOYvFOfF.mjs.map} +1 -1
  350. package/dist/layouts/LayoutLoadingShimmer/index.d.mts +2 -0
  351. package/dist/layouts/LayoutLoadingShimmer/index.mjs +133 -0
  352. package/dist/layouts/LayoutLoadingShimmer/index.mjs.map +1 -0
  353. package/dist/lib/MiddleTruncatedText.mjs +1 -1
  354. package/dist/lib/PDSProvider.d.mts +1 -1
  355. package/dist/lib/TruncatedText.d.mts +1 -1
  356. package/dist/lib/TruncatedText.mjs +1 -1
  357. package/dist/lib/TruncatedTextWithTooltip.d.mts +1 -1
  358. package/dist/lib/TruncatedTextWithTooltip.mjs +2 -2
  359. package/dist/lib/message.d.mts +1 -1
  360. package/dist/lib/pseudoClass.d.mts +1 -1
  361. package/dist/lib/useScrollOverflow.d.mts +7 -0
  362. package/dist/lib/useScrollOverflow.mjs +22 -1
  363. package/dist/lib/useScrollOverflow.mjs.map +1 -1
  364. package/dist/{message-BfJ87aIU.d.mts → message-CMHvlPGn.d.mts} +1 -1
  365. package/dist/mixins/focus.d.mts +1 -1
  366. package/dist/mixins/hoverable.d.mts +2 -2
  367. package/dist/mixins/input.d.mts +1 -1
  368. package/dist/mixins/menuItem.d.mts +2 -2
  369. package/dist/mixins/text.d.mts +1 -1
  370. package/dist/operators-Bo31xlc2.d.mts +43 -0
  371. package/dist/operators.d.mts +2 -0
  372. package/dist/{text-CtoDqqAO.d.mts → text-B21s9mRZ.d.mts} +1 -1
  373. package/dist/{theme-Bx2sn3Lt.d.mts → theme-BzBpJXhO.d.mts} +1 -1
  374. package/dist/theme.d.mts +1 -1
  375. package/dist/types-D58IoRx6.d.mts +158 -0
  376. package/dist/types-D7ppqnNj.d.mts +45 -0
  377. package/dist/{types-B34lbI2k.d.mts → types-DEh_pXgS.d.mts} +1 -1
  378. package/dist/{types-CuCT-YnX.d.cts → types-TV9nVfSe.d.mts} +1 -1
  379. package/dist/types.d.mts +1 -1
  380. package/dist/types2.d.mts +2 -2
  381. package/dist/types3.d.mts +2 -0
  382. package/dist/types4.d.mts +2 -0
  383. package/dist/use-rules-popover-selection.d.mts +19 -0
  384. package/dist/useComboboxFooterAction.d.mts +47 -0
  385. package/dist/useFilterStateV2-DCQghouq.d.mts +93 -0
  386. package/dist/useFilterStateV2.d.mts +2 -0
  387. package/dist/{useFormField-BE0rTBF1.d.mts → useFormField-D8mLsiQc.d.mts} +2 -2
  388. package/dist/{useFormField-eftOPiXj.mjs → useFormField-DhYd6bNn.mjs} +2 -2
  389. package/dist/{useFormField-eftOPiXj.mjs.map → useFormField-DhYd6bNn.mjs.map} +1 -1
  390. package/dist/useFormField.d.mts +1 -1
  391. package/dist/{useFormGroup-BMukAMAd.mjs → useFormGroup-DWVW7A9f.mjs} +1 -1
  392. package/dist/{useFormGroup-BMukAMAd.mjs.map → useFormGroup-DWVW7A9f.mjs.map} +1 -1
  393. package/dist/{useTableBoxDragAndDrop--QBq2FQh.d.cts → useTableBoxDragAndDrop-BMo-iaUF.d.mts} +1 -1
  394. package/dist/useTableBoxDragAndDrop.d.mts +1 -1
  395. package/dist/{useToggle-3k3EkV8V.mjs → useToggle-Bo3yd14Y.mjs} +1 -1
  396. package/dist/{useToggle-3k3EkV8V.mjs.map → useToggle-Bo3yd14Y.mjs.map} +1 -1
  397. package/dist/useTruncation.d.mts +1 -1
  398. package/dist/{utilities-DqO6Sh94.d.cts → utilities-BO_95qFA.d.mts} +1 -1
  399. package/dist/utilities.d.mts +1 -1
  400. package/dist/utils/storybook.mjs +1 -1
  401. package/dist/utils/testing.d.mts +1 -1
  402. package/dist/utils/testing.mjs +1 -1
  403. package/dist/utils.d.mts +22 -5
  404. package/dist/utils2.d.mts +9 -0
  405. package/dist/validation-vLh3t2dk.d.mts +51 -0
  406. package/dist/validation.d.mts +2 -0
  407. package/dist/value-control-resolver-CE-bqdAl.d.mts +46 -0
  408. package/dist/value-control-resolver.d.mts +2 -0
  409. package/package.json +203 -738
  410. package/skills/ui-authoring/COMPONENTS.md +331 -0
  411. package/skills/ui-authoring/EXAMPLES.md +370 -0
  412. package/skills/ui-authoring/REFERENCE.md +293 -0
  413. package/skills/ui-authoring/SKILL.md +237 -0
  414. package/dist/Action-z1rV4qON.d.cts +0 -35
  415. package/dist/Action.d.cts +0 -2
  416. package/dist/Attribute.d.cts +0 -107
  417. package/dist/AttributeGrid.d.cts +0 -40
  418. package/dist/Badge-DAGPU4-e.cjs +0 -38
  419. package/dist/Badge-DAGPU4-e.cjs.map +0 -1
  420. package/dist/Badge.d.cts +0 -25
  421. package/dist/Banner.d.cts +0 -48
  422. package/dist/Breadcrumb-BOxfam3E.d.cts +0 -31
  423. package/dist/Breadcrumb.d.cts +0 -2
  424. package/dist/Breadcrumbs.d.cts +0 -20
  425. package/dist/Button-DXsYU5qU.d.mts +0 -101
  426. package/dist/Button.d.cts +0 -2
  427. package/dist/ButtonGroup.d.cts +0 -20
  428. package/dist/Calendar.d.cts +0 -11
  429. package/dist/Card-CaOItkgL.cjs +0 -248
  430. package/dist/Card-CaOItkgL.cjs.map +0 -1
  431. package/dist/Card-DnmrsQWi.d.cts +0 -52
  432. package/dist/Card.d.cts +0 -2
  433. package/dist/Card2.d.cts +0 -95
  434. package/dist/Checkbox-DhxpxzGp.cjs +0 -183
  435. package/dist/Checkbox-DhxpxzGp.cjs.map +0 -1
  436. package/dist/Checkbox-MUC37dLY.d.mts +0 -46
  437. package/dist/Checkbox.d.cts +0 -2
  438. package/dist/CheckboxGroupField.d.cts +0 -24
  439. package/dist/Combobox-4Bi9-N1p.cjs +0 -1693
  440. package/dist/Combobox-4Bi9-N1p.cjs.map +0 -1
  441. package/dist/Combobox-Bedo_GIj.d.mts +0 -11
  442. package/dist/Combobox-CeKMrlxy.mjs.map +0 -1
  443. package/dist/Combobox.d.cts +0 -3
  444. package/dist/ComboboxBase-BoR9DVwe.d.cts +0 -321
  445. package/dist/ComboboxBase.d.cts +0 -2
  446. package/dist/ComboboxMultiSelect-CnI6sFAF.d.cts +0 -47
  447. package/dist/ComboboxMultiSelect.d.cts +0 -2
  448. package/dist/ComboboxSingleSelect-Japejm0g.d.cts +0 -35
  449. package/dist/ComboboxSingleSelect.d.cts +0 -2
  450. package/dist/CompactBar-DTsGo1zU.d.cts +0 -21
  451. package/dist/CompactBar.d.cts +0 -2
  452. package/dist/ConfigFormGroup-DVRhkS2L.cjs +0 -35
  453. package/dist/ConfigFormGroup-DVRhkS2L.cjs.map +0 -1
  454. package/dist/ConfigFormGroup.d.cts +0 -7
  455. package/dist/ControlBar-BGmXymCB.d.cts +0 -151
  456. package/dist/ControlBar.d.cts +0 -2
  457. package/dist/DataTable.d.cts +0 -372
  458. package/dist/DateField.d.cts +0 -23
  459. package/dist/DatePicker.d.cts +0 -19
  460. package/dist/DateRangePicker.d.cts +0 -52
  461. package/dist/DropdownButton-Du6dwZVL.cjs +0 -32
  462. package/dist/DropdownButton-Du6dwZVL.cjs.map +0 -1
  463. package/dist/DropdownButton.d.cts +0 -26
  464. package/dist/DropdownMenu-CfJxgWN5.cjs +0 -74
  465. package/dist/DropdownMenu-CfJxgWN5.cjs.map +0 -1
  466. package/dist/DropdownMenu-FIYz6oAo.d.cts +0 -75
  467. package/dist/DropdownMenu.d.cts +0 -2
  468. package/dist/ErrorProps-iEj4BIVA.d.mts +0 -8
  469. package/dist/ErrorProps.d.cts +0 -2
  470. package/dist/FloatingActionBar.d.cts +0 -40
  471. package/dist/FormControl-BrsML00L.d.cts +0 -60
  472. package/dist/FormControl-Czt95h2L.cjs +0 -212
  473. package/dist/FormControl-Czt95h2L.cjs.map +0 -1
  474. package/dist/FormControl.d.cts +0 -2
  475. package/dist/FormField-DoSXvnJ3.d.cts +0 -69
  476. package/dist/FormField.d.cts +0 -2
  477. package/dist/Header-CkZvzbzL.d.cts +0 -35
  478. package/dist/Header.d.cts +0 -2
  479. package/dist/HelperTooltip-C1CYMpJP.d.cts +0 -20
  480. package/dist/HelperTooltip.d.cts +0 -2
  481. package/dist/HoverCopyableField-B_WNB7Qp.cjs +0 -110
  482. package/dist/HoverCopyableField-B_WNB7Qp.cjs.map +0 -1
  483. package/dist/HoverCopyableField.d.cts +0 -16
  484. package/dist/IconButton-DNy7g5zh.cjs +0 -372
  485. package/dist/IconButton-DNy7g5zh.cjs.map +0 -1
  486. package/dist/IconButton-Dnnlf9uO.d.mts +0 -24
  487. package/dist/IconButton.d.cts +0 -2
  488. package/dist/ImageTile.d.cts +0 -60
  489. package/dist/Input-4KeYlOWM.d.mts +0 -65
  490. package/dist/Input-BDLUq-pK.cjs +0 -209
  491. package/dist/Input-BDLUq-pK.cjs.map +0 -1
  492. package/dist/Input-PWfwMSJ7.mjs.map +0 -1
  493. package/dist/Input.d.cts +0 -2
  494. package/dist/InputProps-CTLG2Tr0.d.mts +0 -16
  495. package/dist/InputProps.d.cts +0 -2
  496. package/dist/Inserter.d.cts +0 -12
  497. package/dist/Link.d.cts +0 -43
  498. package/dist/ListBox-BCscLcYL.cjs +0 -379
  499. package/dist/ListBox-BCscLcYL.cjs.map +0 -1
  500. package/dist/ListBox-CDNOJmvz.mjs.map +0 -1
  501. package/dist/ListBox-WyZvseo5.d.cts +0 -138
  502. package/dist/ListBox.d.cts +0 -2
  503. package/dist/ListBoxField.d.cts +0 -46
  504. package/dist/LoadingShimmer-CUjbAqGd.cjs +0 -92
  505. package/dist/LoadingShimmer-CUjbAqGd.cjs.map +0 -1
  506. package/dist/LoadingShimmer.d.cts +0 -38
  507. package/dist/MaskedInput.d.cts +0 -10
  508. package/dist/MatchHighlight.d.cts +0 -11
  509. package/dist/Menu-BKMxOXkj.d.cts +0 -70
  510. package/dist/Menu-BXic-30n.cjs +0 -217
  511. package/dist/Menu-BXic-30n.cjs.map +0 -1
  512. package/dist/Menu.d.cts +0 -2
  513. package/dist/MiddleTruncatedText-BIzKECv9.cjs +0 -178
  514. package/dist/MiddleTruncatedText-BIzKECv9.cjs.map +0 -1
  515. package/dist/Modal.d.cts +0 -146
  516. package/dist/PageHeader.d.cts +0 -26
  517. package/dist/PageSelector-DoROR_Uh.d.cts +0 -30
  518. package/dist/PageSelector.d.cts +0 -2
  519. package/dist/Pagination-B97xQ-Wk.d.cts +0 -33
  520. package/dist/Pagination-Cj08JRG9.mjs.map +0 -1
  521. package/dist/Pagination-D4IVVj3S.cjs +0 -233
  522. package/dist/Pagination-D4IVVj3S.cjs.map +0 -1
  523. package/dist/Pagination.d.cts +0 -2
  524. package/dist/Pii-D-Ry7L0t.cjs +0 -25
  525. package/dist/Pii-D-Ry7L0t.cjs.map +0 -1
  526. package/dist/Pii.d.cts +0 -16
  527. package/dist/Popover-BAv7BujW.cjs +0 -168
  528. package/dist/Popover-BAv7BujW.cjs.map +0 -1
  529. package/dist/Popover.d.cts +0 -90
  530. package/dist/ProgressBar.d.cts +0 -83
  531. package/dist/ProgressIndicator.d.cts +0 -64
  532. package/dist/PseudoClassProps-C5jpj6Rp.d.cts +0 -12
  533. package/dist/PseudoClassProps.d.cts +0 -2
  534. package/dist/Radio-nw846eRv.cjs +0 -154
  535. package/dist/Radio-nw846eRv.cjs.map +0 -1
  536. package/dist/Radio.d.cts +0 -21
  537. package/dist/RadioGroup-D_H1B7JV.d.cts +0 -21
  538. package/dist/RadioGroup-DmGVJCgT.cjs +0 -57
  539. package/dist/RadioGroup-DmGVJCgT.cjs.map +0 -1
  540. package/dist/RadioGroup.d.cts +0 -2
  541. package/dist/SearchInput-CAHYPQVX.d.cts +0 -46
  542. package/dist/SearchInput.d.cts +0 -2
  543. package/dist/SectionHeading-D-L4uPoX.d.cts +0 -71
  544. package/dist/SectionHeading.d.cts +0 -2
  545. package/dist/SegmentedControl-B1ZLgu61.mjs.map +0 -1
  546. package/dist/SegmentedControl-CE845gnm.d.mts +0 -59
  547. package/dist/SegmentedControl-CIJz0oxY.cjs +0 -124
  548. package/dist/SegmentedControl-CIJz0oxY.cjs.map +0 -1
  549. package/dist/SegmentedControl.d.cts +0 -2
  550. package/dist/Select-BMEwCfbv.d.mts +0 -77
  551. package/dist/Select-ByTgXOlU.mjs.map +0 -1
  552. package/dist/Select-C65bfYeT.cjs +0 -262
  553. package/dist/Select-C65bfYeT.cjs.map +0 -1
  554. package/dist/Select.d.cts +0 -2
  555. package/dist/Slider.d.cts +0 -51
  556. package/dist/SliderRHF.d.cts +0 -18
  557. package/dist/Spacer-GYHbk-dS.cjs +0 -20
  558. package/dist/Spacer-GYHbk-dS.cjs.map +0 -1
  559. package/dist/Spacer.d.cts +0 -17
  560. package/dist/Spinner-B6bx70yR.cjs +0 -48
  561. package/dist/Spinner-B6bx70yR.cjs.map +0 -1
  562. package/dist/Spinner.d.cts +0 -26
  563. package/dist/Stack-BF-9YjA1.cjs +0 -53
  564. package/dist/Stack-BF-9YjA1.cjs.map +0 -1
  565. package/dist/Stack-D979gYU9.d.cts +0 -47
  566. package/dist/Stack.d.cts +0 -2
  567. package/dist/StatusIndicator.d.cts +0 -54
  568. package/dist/Sticker-D0jIU2Dt.cjs +0 -244
  569. package/dist/Sticker-D0jIU2Dt.cjs.map +0 -1
  570. package/dist/Sticker-N8XZnv7M.d.cts +0 -68
  571. package/dist/Sticker.d.cts +0 -2
  572. package/dist/SwatchPicker.d.cts +0 -18
  573. package/dist/Tab.d.cts +0 -26
  574. package/dist/TabBar-BpHMYvNb.cjs +0 -298
  575. package/dist/TabBar-BpHMYvNb.cjs.map +0 -1
  576. package/dist/TabBar-ByusqAXF.mjs.map +0 -1
  577. package/dist/TabBar.d.cts +0 -33
  578. package/dist/TabBarIconButton.d.cts +0 -10
  579. package/dist/Table-C9rjUVpn.cjs +0 -478
  580. package/dist/Table-C9rjUVpn.cjs.map +0 -1
  581. package/dist/Table-D3nyiZt0.d.mts +0 -13
  582. package/dist/Table.d.cts +0 -2
  583. package/dist/TableBody-DpRjZgzU.d.mts +0 -9
  584. package/dist/TableBody.d.cts +0 -2
  585. package/dist/TableBox-DIJffyts.mjs.map +0 -1
  586. package/dist/TableBox-DO-yToJk.cjs +0 -1370
  587. package/dist/TableBox-DO-yToJk.cjs.map +0 -1
  588. package/dist/TableBox.d.cts +0 -3
  589. package/dist/TableBoxCell-DOQ8PnAT.d.cts +0 -259
  590. package/dist/TableBoxCell.d.cts +0 -2
  591. package/dist/TableBoxField.d.cts +0 -99
  592. package/dist/TableBoxRow-BUK5RjRA.d.cts +0 -86
  593. package/dist/TableBoxRow.d.cts +0 -2
  594. package/dist/TableBoxRowActions-CKgUEH38.d.cts +0 -57
  595. package/dist/TableBoxRowActions.d.cts +0 -2
  596. package/dist/TableCell.d.cts +0 -2
  597. package/dist/TableControls-Bkd3jhC1.d.cts +0 -70
  598. package/dist/TableControls-BkdSeQvt.mjs +0 -1029
  599. package/dist/TableControls-BkdSeQvt.mjs.map +0 -1
  600. package/dist/TableControls-DcbnNqeK.cjs +0 -1080
  601. package/dist/TableControls-DcbnNqeK.cjs.map +0 -1
  602. package/dist/TableControls.d.cts +0 -2
  603. package/dist/TableControlsContext-D6XpuRVw.d.cts +0 -21
  604. package/dist/TableControlsContext.d.cts +0 -2
  605. package/dist/TableHead-wl78HqPT.d.mts +0 -12
  606. package/dist/TableHead.d.cts +0 -2
  607. package/dist/TableHeaderCell-B2yiOw4w.d.mts +0 -17
  608. package/dist/TableHeaderCell.d.cts +0 -2
  609. package/dist/TableLayout-GyRS-Awa.d.cts +0 -19
  610. package/dist/TableLayout.d.cts +0 -2
  611. package/dist/TableRow-C-faHbkL.d.mts +0 -13
  612. package/dist/TableRow.d.cts +0 -2
  613. package/dist/TableTH.d.cts +0 -2
  614. package/dist/TableViewConfigurationDropdown-u3-prEHJ.d.cts +0 -32
  615. package/dist/TableViewConfigurationDropdown.d.cts +0 -2
  616. package/dist/TechnicalSticker.d.cts +0 -51
  617. package/dist/Text-CrGiWG2E.d.cts +0 -42
  618. package/dist/Text-CzN0DOXV.cjs +0 -95
  619. package/dist/Text-CzN0DOXV.cjs.map +0 -1
  620. package/dist/Text.d.cts +0 -2
  621. package/dist/TextArea-DVHi0K7M.cjs +0 -40
  622. package/dist/TextArea-DVHi0K7M.cjs.map +0 -1
  623. package/dist/TextArea-weASn4Hq.d.mts +0 -10
  624. package/dist/TextArea.d.cts +0 -2
  625. package/dist/TextUnderlineTooltip-cSMjZOuB.d.cts +0 -18
  626. package/dist/TextUnderlineTooltip.d.cts +0 -2
  627. package/dist/Tile.d.cts +0 -63
  628. package/dist/Toast.d.cts +0 -23
  629. package/dist/Toggle-CTtrhzsV.cjs +0 -174
  630. package/dist/Toggle-CTtrhzsV.cjs.map +0 -1
  631. package/dist/Toggle-CYQE1Nk_.d.cts +0 -54
  632. package/dist/Toggle.d.cts +0 -2
  633. package/dist/Tooltip-BhGRP9QA.d.cts +0 -100
  634. package/dist/Tooltip-vylydKVv.cjs +0 -152
  635. package/dist/Tooltip-vylydKVv.cjs.map +0 -1
  636. package/dist/Tooltip.d.cts +0 -2
  637. package/dist/TruncatedText-D8f3AiBL.d.cts +0 -18
  638. package/dist/chunk-CKQMccvm.cjs +0 -28
  639. package/dist/components/Attribute/index.cjs +0 -210
  640. package/dist/components/Attribute/index.cjs.map +0 -1
  641. package/dist/components/Attribute/index.d.cts +0 -3
  642. package/dist/components/Badge/index.cjs +0 -7
  643. package/dist/components/Badge/index.d.cts +0 -2
  644. package/dist/components/Banner/index.cjs +0 -99
  645. package/dist/components/Banner/index.cjs.map +0 -1
  646. package/dist/components/Banner/index.d.cts +0 -2
  647. package/dist/components/Breadcrumbs/index.cjs +0 -275
  648. package/dist/components/Breadcrumbs/index.cjs.map +0 -1
  649. package/dist/components/Breadcrumbs/index.d.cts +0 -2
  650. package/dist/components/Breadcrumbs/index.mjs.map +0 -1
  651. package/dist/components/Button/index.cjs +0 -11
  652. package/dist/components/Button/index.d.cts +0 -3
  653. package/dist/components/ButtonGroup/index.cjs +0 -112
  654. package/dist/components/ButtonGroup/index.cjs.map +0 -1
  655. package/dist/components/ButtonGroup/index.d.cts +0 -2
  656. package/dist/components/Card/index.cjs +0 -12
  657. package/dist/components/Card/index.d.cts +0 -3
  658. package/dist/components/CardV2/index.cjs +0 -419
  659. package/dist/components/CardV2/index.cjs.map +0 -1
  660. package/dist/components/CardV2/index.d.cts +0 -3
  661. package/dist/components/CardV2/index.mjs.map +0 -1
  662. package/dist/components/Checkbox/index.cjs +0 -7
  663. package/dist/components/Checkbox/index.d.cts +0 -2
  664. package/dist/components/Combobox/index.cjs +0 -9
  665. package/dist/components/Combobox/index.d.cts +0 -3
  666. package/dist/components/ConfigFormGroup/index.cjs +0 -10
  667. package/dist/components/ConfigFormGroup/index.d.cts +0 -3
  668. package/dist/components/DataTable/TableControls/index.cjs +0 -13
  669. package/dist/components/DataTable/TableControls/index.d.cts +0 -6
  670. package/dist/components/DataTable/index.cjs +0 -1434
  671. package/dist/components/DataTable/index.cjs.map +0 -1
  672. package/dist/components/DataTable/index.d.cts +0 -8
  673. package/dist/components/DataTable/types.cjs +0 -0
  674. package/dist/components/DataTable/types.d.cts +0 -159
  675. package/dist/components/DatePicker/index.cjs +0 -933
  676. package/dist/components/DatePicker/index.cjs.map +0 -1
  677. package/dist/components/DatePicker/index.d.cts +0 -5
  678. package/dist/components/DatePicker/index.mjs.map +0 -1
  679. package/dist/components/DropdownButton/index.cjs +0 -7
  680. package/dist/components/DropdownButton/index.d.cts +0 -2
  681. package/dist/components/DropdownMenu/index.cjs +0 -7
  682. package/dist/components/DropdownMenu/index.d.cts +0 -2
  683. package/dist/components/FormControl/index.cjs +0 -15
  684. package/dist/components/FormControl/index.d.cts +0 -3
  685. package/dist/components/FormField/index.cjs +0 -490
  686. package/dist/components/FormField/index.cjs.map +0 -1
  687. package/dist/components/FormField/index.d.cts +0 -6
  688. package/dist/components/FormField/index.mjs.map +0 -1
  689. package/dist/components/HoverCopyableField/index.cjs +0 -2
  690. package/dist/components/HoverCopyableField/index.d.cts +0 -2
  691. package/dist/components/ImageTile/index.cjs +0 -225
  692. package/dist/components/ImageTile/index.cjs.map +0 -1
  693. package/dist/components/ImageTile/index.d.cts +0 -2
  694. package/dist/components/Input/index.cjs +0 -14
  695. package/dist/components/Input/index.cjs.map +0 -1
  696. package/dist/components/Input/index.d.cts +0 -2
  697. package/dist/components/Link/index.cjs +0 -87
  698. package/dist/components/Link/index.cjs.map +0 -1
  699. package/dist/components/Link/index.d.cts +0 -2
  700. package/dist/components/ListBox/index.cjs +0 -8
  701. package/dist/components/ListBox/index.d.cts +0 -2
  702. package/dist/components/LoadingShimmer/index.cjs +0 -6
  703. package/dist/components/LoadingShimmer/index.d.cts +0 -2
  704. package/dist/components/MaskedInput/index.cjs +0 -29
  705. package/dist/components/MaskedInput/index.cjs.map +0 -1
  706. package/dist/components/MaskedInput/index.d.cts +0 -2
  707. package/dist/components/MatchHighlight/index.cjs +0 -31
  708. package/dist/components/MatchHighlight/index.cjs.map +0 -1
  709. package/dist/components/MatchHighlight/index.d.cts +0 -2
  710. package/dist/components/Menu/index.cjs +0 -14
  711. package/dist/components/Menu/index.d.cts +0 -2
  712. package/dist/components/Modal/index.cjs +0 -290
  713. package/dist/components/Modal/index.cjs.map +0 -1
  714. package/dist/components/Modal/index.d.cts +0 -2
  715. package/dist/components/PageHeader/index.cjs +0 -71
  716. package/dist/components/PageHeader/index.cjs.map +0 -1
  717. package/dist/components/PageHeader/index.d.cts +0 -2
  718. package/dist/components/PageHeader/index.mjs.map +0 -1
  719. package/dist/components/Pagination/index.cjs +0 -10
  720. package/dist/components/Pagination/index.d.cts +0 -4
  721. package/dist/components/Pii/index.cjs +0 -2
  722. package/dist/components/Pii/index.d.cts +0 -2
  723. package/dist/components/Popover/index.cjs +0 -12
  724. package/dist/components/Popover/index.d.cts +0 -2
  725. package/dist/components/ProgressBar/index.cjs +0 -177
  726. package/dist/components/ProgressBar/index.cjs.map +0 -1
  727. package/dist/components/ProgressBar/index.d.cts +0 -2
  728. package/dist/components/ProgressIndicator/index.cjs +0 -185
  729. package/dist/components/ProgressIndicator/index.cjs.map +0 -1
  730. package/dist/components/ProgressIndicator/index.d.cts +0 -2
  731. package/dist/components/Radio/index.cjs +0 -7
  732. package/dist/components/Radio/index.d.cts +0 -2
  733. package/dist/components/RadioGroup/index.cjs +0 -7
  734. package/dist/components/RadioGroup/index.d.cts +0 -2
  735. package/dist/components/SegmentedControl/index.cjs +0 -8
  736. package/dist/components/SegmentedControl/index.d.cts +0 -2
  737. package/dist/components/Select/index.cjs +0 -9
  738. package/dist/components/Select/index.d.cts +0 -2
  739. package/dist/components/Slider/index.cjs +0 -245
  740. package/dist/components/Slider/index.cjs.map +0 -1
  741. package/dist/components/Slider/index.d.cts +0 -3
  742. package/dist/components/Spacer/index.cjs +0 -2
  743. package/dist/components/Spacer/index.d.cts +0 -2
  744. package/dist/components/Spinner/index.cjs +0 -7
  745. package/dist/components/Spinner/index.d.cts +0 -2
  746. package/dist/components/Stack/index.cjs +0 -8
  747. package/dist/components/Stack/index.d.cts +0 -2
  748. package/dist/components/StatusIndicator/index.cjs +0 -174
  749. package/dist/components/StatusIndicator/index.cjs.map +0 -1
  750. package/dist/components/StatusIndicator/index.d.cts +0 -2
  751. package/dist/components/Sticker/index.cjs +0 -11
  752. package/dist/components/Sticker/index.d.cts +0 -2
  753. package/dist/components/SwatchPicker/index.cjs +0 -63
  754. package/dist/components/SwatchPicker/index.cjs.map +0 -1
  755. package/dist/components/SwatchPicker/index.d.cts +0 -2
  756. package/dist/components/TabBar/index.cjs +0 -11
  757. package/dist/components/TabBar/index.d.cts +0 -4
  758. package/dist/components/Table/index.cjs +0 -21
  759. package/dist/components/Table/index.d.cts +0 -8
  760. package/dist/components/TableBox/index.cjs +0 -7
  761. package/dist/components/TableBox/index.d.cts +0 -3
  762. package/dist/components/TechnicalSticker/index.cjs +0 -239
  763. package/dist/components/TechnicalSticker/index.cjs.map +0 -1
  764. package/dist/components/TechnicalSticker/index.d.cts +0 -2
  765. package/dist/components/Text/index.cjs +0 -8
  766. package/dist/components/Text/index.d.cts +0 -2
  767. package/dist/components/TextArea/index.cjs +0 -7
  768. package/dist/components/TextArea/index.d.cts +0 -2
  769. package/dist/components/Tile/index.cjs +0 -102
  770. package/dist/components/Tile/index.cjs.map +0 -1
  771. package/dist/components/Tile/index.d.cts +0 -2
  772. package/dist/components/Toast/index.cjs +0 -134
  773. package/dist/components/Toast/index.cjs.map +0 -1
  774. package/dist/components/Toast/index.d.cts +0 -2
  775. package/dist/components/Toggle/index.cjs +0 -7
  776. package/dist/components/Toggle/index.d.cts +0 -2
  777. package/dist/components/Tooltip/index.cjs +0 -11
  778. package/dist/components/Tooltip/index.d.cts +0 -4
  779. package/dist/constants-kwVsjw8O.d.cts +0 -6
  780. package/dist/constants.d.cts +0 -2
  781. package/dist/constants2.d.cts +0 -10
  782. package/dist/helpers.d.cts +0 -76
  783. package/dist/index-D-BciAtf.d.cts +0 -1
  784. package/dist/index-D2HUTZ-d.d.cts +0 -1
  785. package/dist/index-D8dPsry7.d.mts +0 -1
  786. package/dist/index-DeEmP3Jc.d.cts +0 -1
  787. package/dist/index-DeVKzGce.d.mts +0 -1
  788. package/dist/index-DrZ2Dh-H.d.cts +0 -1
  789. package/dist/index-DxSM7VXJ.d.cts +0 -1
  790. package/dist/index-FtE8MXJ_.d.mts +0 -1
  791. package/dist/index-JuxZj_Qp2.d.mts +0 -1
  792. package/dist/index-LhFpnU-f.d.mts +0 -1
  793. package/dist/index-N-OgGgfF.d.mts +0 -1
  794. package/dist/index-NKYLt_R9.d.mts +0 -1
  795. package/dist/index-VWno75SQ.d.mts +0 -1
  796. package/dist/index-_tQRydn9.d.cts +0 -75
  797. package/dist/index-_wQ5ClJU.d.cts +0 -1
  798. package/dist/index-c55Utzva.d.mts +0 -1
  799. package/dist/index-gpCH5158.d.mts +0 -1
  800. package/dist/index-lQ_hGQ08.d.cts +0 -1
  801. package/dist/index-luywJTzJ.d.mts +0 -1
  802. package/dist/index-zO0Ly4bS.d.cts +0 -1
  803. package/dist/index.cjs +0 -0
  804. package/dist/index.d.cts +0 -2
  805. package/dist/index2.d.cts +0 -2
  806. package/dist/index3.d.cts +0 -1
  807. package/dist/input-DrG6mA0V.d.mts +0 -17
  808. package/dist/inputFields.d.cts +0 -83
  809. package/dist/intersperse-Gxwgpbk8.cjs +0 -26
  810. package/dist/intersperse-yd3oMrQl.mjs.map +0 -1
  811. package/dist/lib/ConfigContext.cjs +0 -15
  812. package/dist/lib/ConfigContext.cjs.map +0 -1
  813. package/dist/lib/ConfigContext.d.cts +0 -16
  814. package/dist/lib/GlobalStyles.cjs +0 -57
  815. package/dist/lib/GlobalStyles.cjs.map +0 -1
  816. package/dist/lib/GlobalStyles.d.cts +0 -8
  817. package/dist/lib/HeadlessAriaButton.cjs +0 -33
  818. package/dist/lib/HeadlessAriaButton.cjs.map +0 -1
  819. package/dist/lib/HeadlessAriaButton.d.cts +0 -12
  820. package/dist/lib/MiddleTruncatedText.cjs +0 -7
  821. package/dist/lib/MiddleTruncatedText.d.cts +0 -14
  822. package/dist/lib/PDSProvider.cjs +0 -13
  823. package/dist/lib/PDSProvider.cjs.map +0 -1
  824. package/dist/lib/PDSProvider.d.cts +0 -10
  825. package/dist/lib/TruncatedText.cjs +0 -39
  826. package/dist/lib/TruncatedText.cjs.map +0 -1
  827. package/dist/lib/TruncatedText.d.cts +0 -2
  828. package/dist/lib/TruncatedTextWithTooltip.cjs +0 -34
  829. package/dist/lib/TruncatedTextWithTooltip.cjs.map +0 -1
  830. package/dist/lib/TruncatedTextWithTooltip.d.cts +0 -15
  831. package/dist/lib/comboboxHelper.cjs +0 -46
  832. package/dist/lib/comboboxHelper.cjs.map +0 -1
  833. package/dist/lib/comboboxHelper.d.cts +0 -24
  834. package/dist/lib/copyTextToClipboard.cjs +0 -33
  835. package/dist/lib/copyTextToClipboard.cjs.map +0 -1
  836. package/dist/lib/copyTextToClipboard.d.cts +0 -4
  837. package/dist/lib/datePickerHelper.cjs +0 -36
  838. package/dist/lib/datePickerHelper.cjs.map +0 -1
  839. package/dist/lib/datePickerHelper.d.cts +0 -19
  840. package/dist/lib/message.cjs +0 -12
  841. package/dist/lib/message.cjs.map +0 -1
  842. package/dist/lib/message.d.cts +0 -2
  843. package/dist/lib/pseudoClass.cjs +0 -31
  844. package/dist/lib/pseudoClass.cjs.map +0 -1
  845. package/dist/lib/pseudoClass.d.cts +0 -45
  846. package/dist/lib/reorderItems.cjs +0 -38
  847. package/dist/lib/reorderItems.cjs.map +0 -1
  848. package/dist/lib/reorderItems.d.cts +0 -26
  849. package/dist/lib/selectHelper.cjs +0 -22
  850. package/dist/lib/selectHelper.cjs.map +0 -1
  851. package/dist/lib/selectHelper.d.cts +0 -14
  852. package/dist/lib/useControlled.cjs +0 -20
  853. package/dist/lib/useControlled.cjs.map +0 -1
  854. package/dist/lib/useControlled.d.cts +0 -16
  855. package/dist/lib/useIsOverflow.cjs +0 -58
  856. package/dist/lib/useIsOverflow.cjs.map +0 -1
  857. package/dist/lib/useIsOverflow.d.cts +0 -11
  858. package/dist/lib/useOutsideClick.cjs +0 -19
  859. package/dist/lib/useOutsideClick.cjs.map +0 -1
  860. package/dist/lib/useOutsideClick.d.cts +0 -13
  861. package/dist/lib/useScrollOverflow.cjs +0 -61
  862. package/dist/lib/useScrollOverflow.cjs.map +0 -1
  863. package/dist/lib/useScrollOverflow.d.cts +0 -36
  864. package/dist/lib/zindex.cjs +0 -26
  865. package/dist/lib/zindex.cjs.map +0 -1
  866. package/dist/lib/zindex.d.cts +0 -25
  867. package/dist/message-C2286H-r.d.cts +0 -9
  868. package/dist/mixins/focus.cjs +0 -39
  869. package/dist/mixins/focus.cjs.map +0 -1
  870. package/dist/mixins/focus.d.cts +0 -11
  871. package/dist/mixins/hoverable.cjs +0 -38
  872. package/dist/mixins/hoverable.cjs.map +0 -1
  873. package/dist/mixins/hoverable.d.cts +0 -16
  874. package/dist/mixins/input.cjs +0 -95
  875. package/dist/mixins/input.cjs.map +0 -1
  876. package/dist/mixins/input.d.cts +0 -2
  877. package/dist/mixins/menuItem.cjs +0 -110
  878. package/dist/mixins/menuItem.cjs.map +0 -1
  879. package/dist/mixins/menuItem.d.cts +0 -30
  880. package/dist/mixins/print/index.cjs +0 -25
  881. package/dist/mixins/print/index.cjs.map +0 -1
  882. package/dist/mixins/print/index.d.cts +0 -11
  883. package/dist/mixins/text.cjs +0 -93
  884. package/dist/mixins/text.cjs.map +0 -1
  885. package/dist/mixins/text.d.cts +0 -2
  886. package/dist/text-PmH5oc61.d.cts +0 -14
  887. package/dist/theme-Cadb1xzQ.d.cts +0 -154
  888. package/dist/theme.cjs +0 -353
  889. package/dist/theme.cjs.map +0 -1
  890. package/dist/theme.d.cts +0 -2
  891. package/dist/types-C_AUGurs.d.cts +0 -25
  892. package/dist/types-DTak9UTv.d.mts +0 -10
  893. package/dist/types.d.cts +0 -2
  894. package/dist/types2.d.cts +0 -2
  895. package/dist/useFormField-B98dmreO.cjs +0 -37
  896. package/dist/useFormField-B98dmreO.cjs.map +0 -1
  897. package/dist/useFormField-CaIdE7JQ.d.cts +0 -30
  898. package/dist/useFormField.d.cts +0 -2
  899. package/dist/useFormGroup-BE7v9eAj.cjs +0 -26
  900. package/dist/useFormGroup-BE7v9eAj.cjs.map +0 -1
  901. package/dist/useFormGroup.d.cts +0 -18
  902. package/dist/useTableBoxDragAndDrop-BTtv9PEt.d.mts +0 -69
  903. package/dist/useTableBoxDragAndDrop.d.cts +0 -2
  904. package/dist/useTableColumns.d.cts +0 -72
  905. package/dist/useToggle-CSkZWXtQ.cjs +0 -27
  906. package/dist/useToggle-CSkZWXtQ.cjs.map +0 -1
  907. package/dist/utilities-SMbDe8oK.d.mts +0 -9
  908. package/dist/utilities.d.cts +0 -2
  909. package/dist/utils/storybook.cjs +0 -12
  910. package/dist/utils/storybook.cjs.map +0 -1
  911. package/dist/utils/testing.cjs +0 -50
  912. package/dist/utils/testing.cjs.map +0 -1
  913. package/dist/utils/testing.d.cts +0 -18
  914. package/dist/variables/color.cjs +0 -22
  915. package/dist/variables/color.cjs.map +0 -1
  916. package/dist/variables/color.d.cts +0 -19
  917. package/dist/variables/effect.cjs +0 -27
  918. package/dist/variables/effect.cjs.map +0 -1
  919. package/dist/variables/effect.d.cts +0 -21
  920. package/dist/variables/keyframes.cjs +0 -22
  921. package/dist/variables/keyframes.cjs.map +0 -1
  922. package/dist/variables/keyframes.d.cts +0 -8
  923. package/dist/variables/spacing.cjs +0 -10
  924. package/dist/variables/spacing.cjs.map +0 -1
  925. package/dist/variables/spacing.d.cts +0 -8
  926. package/dist/variables/text.cjs +0 -13
  927. package/dist/variables/text.cjs.map +0 -1
  928. package/dist/variables/text.d.cts +0 -10
  929. package/dist/variables/transitions.cjs +0 -24
  930. package/dist/variables/transitions.cjs.map +0 -1
  931. package/dist/variables/transitions.d.cts +0 -19
  932. /package/dist/{index-8SLBz2NH.d.mts → index--p6oQT9I.d.mts} +0 -0
  933. /package/dist/{index-B2KLYYkM.d.cts → index-BYd3Btr1.d.mts} +0 -0
  934. /package/dist/{index-B5cbLMbC2.d.cts → index-CDGG7lCB.d.mts} +0 -0
  935. /package/dist/{index-BCsiC0tv.d.cts → index-CKKoxA9V.d.mts} +0 -0
  936. /package/dist/{index-BPSCxsMC.d.cts → index-CMuRFTR3.d.mts} +0 -0
  937. /package/dist/{index-BPiqSRRl.d.mts → index-CNxS4Tlu.d.mts} +0 -0
  938. /package/dist/{index-BR1oNnaF.d.cts → index-CWB6exYm.d.mts} +0 -0
  939. /package/dist/{index-BSVhZrWN.d.mts → index-CzItj62a.d.mts} +0 -0
  940. /package/dist/{index-BTImeehL2.d.mts → index-D4DUvwPf.d.mts} +0 -0
  941. /package/dist/{index-C0NRIDsj2.d.cts → index-DGsJdI5l.d.mts} +0 -0
  942. /package/dist/{index-C3kE54DD.d.mts → index-DM6vVDZD.d.mts} +0 -0
  943. /package/dist/{index-C6yvNuzO.d.cts → index-DWfPppPU.d.mts} +0 -0
  944. /package/dist/{index-C8k_zgEm.d.cts → index-DXJd7-2Z.d.mts} +0 -0
  945. /package/dist/{index-CEqOS-7M.d.mts → index-DkrC-i1D.d.mts} +0 -0
  946. /package/dist/{index-CROz1VSV.d.mts → index-DvuJXuAN.d.mts} +0 -0
  947. /package/dist/{index-CWt1yJ75.d.cts → index-Iujpc9_6.d.mts} +0 -0
  948. /package/dist/{index-CmCelmEL.d.cts → index-PWQavSPf.d.mts} +0 -0
  949. /package/dist/{index-CmUzJ4E-2.d.cts → index-e6k85DKM.d.mts} +0 -0
  950. /package/dist/{index-CsuikFeJ.d.mts → index-lIMqGGJz.d.mts} +0 -0
  951. /package/dist/{index-CtCMUyZA.d.cts → index-sViox9YW.d.mts} +0 -0
  952. /package/dist/{index-Cz6N-KeS.d.cts → index6.d.mts} +0 -0
@@ -0,0 +1 @@
1
+ {"version":3,"file":"TabBar-Bn8PHHBZ.mjs","names":["TabBarContext","TabBarContext"],"sources":["../components/TabBar/TabBarContext.ts","../components/TabBar/TabBar.tsx","../components/TabBar/Tab.tsx","../components/TabBar/TabBarIconButton.tsx"],"sourcesContent":["import { createContext } from 'react';\n\nexport default createContext<{ maxTabChars?: number; size?: 'md' | 'sm' }>({});\n","import { mergeRefs } from '@react-aria/utils';\nimport {\n type ComponentPropsWithoutRef,\n type ForwardedRef,\n forwardRef,\n type KeyboardEventHandler,\n type ReactNode,\n useRef,\n} from 'react';\nimport styled from 'styled-components';\n\nimport { Color, Spacing } from '@persona/design-tokens';\nimport TabBarContext from 'design-system/components/TabBar/TabBarContext';\nimport { paragraphMixins } from 'design-system/mixins/text';\n\nconst TabBarContainer = styled.div`\n display: flex;\n height: ${Spacing[6]};\n position: relative;\n box-sizing: border-box;\n border-bottom: 1px solid ${Color.BorderDivider};\n justify-content: space-between;\n gap: ${Spacing[4]};\n`;\n\nconst RightActions = styled.div`\n align-self: center;\n`;\n\nconst TitleTab = styled.div`\n display: inline-flex;\n align-items: center;\n justify-content: center;\n ${paragraphMixins.mdBold};\n`;\n\nconst StyledTabContainer = styled.div<{ $size?: 'md' | 'sm' }>`\n display: flex;\n gap: ${({ $size = 'md' }) => ($size === 'sm' ? Spacing[3] : Spacing[4])};\n // These two lines prevent the overflow hidden from hiding the bottom border of the selected tab\n margin-bottom: -2px;\n padding-bottom: 2px;\n overflow: hidden;\n flex-wrap: wrap;\n`;\n\ninterface TabContainerProps extends ComponentPropsWithoutRef<'div'> {\n children: ReactNode;\n /**\n * Truncate tab text to the specified number of characters.\n */\n maxTabChars?: number;\n /**\n * Size of the tabs. Affects font size.\n */\n size?: 'md' | 'sm';\n}\n\nexport const TabContainer = forwardRef<HTMLDivElement, TabContainerProps>(function TabContainer(\n { children, maxTabChars, size, ...props },\n forwardedRef,\n) {\n const tabListRef = useRef<HTMLDivElement>(null);\n\n const getIndexOfCurrentTab = (list: Element[]) => {\n /* @ts-expect-error [strict-migration] The following line is not strict; please fix! */\n return getIndex(list, document.activeElement);\n };\n\n const handleKeyDown: KeyboardEventHandler<HTMLDivElement> = (e) => {\n // https://developer.mozilla.org/en-US/docs/Web/Accessibility/ARIA/Roles/tab_role\n /* @ts-expect-error [strict-migration] The following line is not strict; please fix! */\n const list = getTabList(tabListRef.current.children);\n\n if (document.activeElement && !list.includes(document.activeElement)) {\n return;\n }\n\n switch (e.key) {\n case 'ArrowLeft': {\n // Go to previous tab\n const curIndex = getIndexOfCurrentTab(list);\n const nextIndex = curIndex === 0 ? list.length - 1 : curIndex - 1;\n (list[nextIndex] as HTMLElement).focus();\n break;\n }\n case 'ArrowRight': {\n // Go to next tab\n const curIndex = getIndexOfCurrentTab(list);\n (list[(curIndex + 1) % list.length] as HTMLElement).focus();\n break;\n }\n case 'Home': {\n // Go to first tab\n (list[0] as HTMLElement).focus();\n break;\n }\n case 'End': {\n // Go to last tab\n (list[list.length - 1] as HTMLElement).focus();\n break;\n }\n default:\n break;\n }\n };\n\n return (\n <TabBarContext.Provider value={{ maxTabChars, size }}>\n <StyledTabContainer\n role='tablist'\n ref={mergeRefs<HTMLDivElement>(tabListRef, forwardedRef)}\n onKeyDown={handleKeyDown}\n $size={size}\n {...props}\n >\n {children}\n </StyledTabContainer>\n </TabBarContext.Provider>\n );\n});\n\nconst getIndex = (children: Element[], element: Element) => {\n return children.indexOf(element);\n};\n\nconst getTabList = (list: HTMLCollection) => {\n /* @ts-expect-error [strict-migration] The following line is not strict; please fix! */\n return Array.from(list).filter((e: HTMLElement) => {\n return !(e.getAttribute('aria-disabled') || e.getAttribute('disabled'));\n });\n};\n\nexport interface TabBarProps extends ComponentPropsWithoutRef<'div'> {\n actions?: ReactNode;\n title?: string;\n 'data-tour-target'?: string;\n /**\n * Truncate tab text to the specified number of characters.\n */\n maxTabChars?: number;\n /**\n * Size of the tabs. Affects font size.\n */\n size?: 'md' | 'sm';\n}\n\nexport const TabBar = forwardRef<HTMLDivElement, TabBarProps>(function TabBar(\n {\n children,\n actions,\n title,\n 'data-tour-target': dataTourTarget,\n maxTabChars,\n size,\n 'aria-label': ariaLabel,\n 'aria-labelledby': ariaLabelledBy,\n ...elemProps\n },\n forwardedRef: ForwardedRef<HTMLDivElement>,\n) {\n return (\n <TabBarContainer {...elemProps}>\n <TabContainer\n ref={forwardedRef}\n maxTabChars={maxTabChars}\n size={size}\n aria-label={ariaLabel}\n aria-labelledby={ariaLabelledBy}\n >\n {title && <TitleTab data-tour-target={dataTourTarget}>{title}</TitleTab>}\n {children}\n </TabContainer>\n {actions && <RightActions>{actions}</RightActions>}\n </TabBarContainer>\n );\n});\n\nexport default TabBar;\n","import {\n cloneElement,\n type ComponentPropsWithoutRef,\n type ElementType,\n type ReactElement,\n useContext,\n} from 'react';\nimport styled, {\n css,\n type DefaultTheme,\n type FlattenInterpolation,\n type ThemeProps,\n} from 'styled-components';\n\nimport { Color, Spacing } from '@persona/design-tokens';\nimport Badge from 'design-system/components/Badge';\nimport Button from 'design-system/components/Button';\nimport TabBarContext from 'design-system/components/TabBar/TabBarContext';\nimport { isActive, isFocused, isHovered, isNotDisabled } from 'design-system/lib/pseudoClass';\nimport { paragraphMixins } from 'design-system/mixins/text';\nimport { TransitionDuration } from 'design-system/variables/transitions';\n\n/** A tab carries either a count or a label beside its text, never both. */\ntype TabAdornment =\n | { badge?: ReactElement; sticker?: never }\n | { badge?: never; sticker?: ReactElement };\n\ninterface TabBaseProps<T extends ElementType = 'button'> extends ComponentPropsWithoutRef<\n typeof Button\n> {\n selected?: boolean;\n as?: T;\n size?: 'md' | 'sm';\n}\n\ntype TabProps<T extends ElementType = 'button'> = TabBaseProps<T> & TabAdornment;\n\nconst AdornmentContainer = styled.span`\n display: inline-flex;\n vertical-align: middle;\n /* Align the atomic badge with the label's cap midpoint, not its x-height midpoint. */\n transform: translateY(calc((1ex - 1cap) / 2));\n padding: 0;\n margin-left: ${Spacing[1]};\n`;\n\nconst sizeStyles: Record<\n NonNullable<TabBaseProps['size']>,\n FlattenInterpolation<ThemeProps<DefaultTheme>>\n> = {\n md: css`\n ${paragraphMixins.md}\n `,\n sm: css`\n ${paragraphMixins.sm}\n `,\n};\n\nconst tabSelectedStyle = css`\n color: ${({ theme }) => theme.color.primary.brand};\n border-bottom-color: ${({ theme }) => theme.color.primary.brand};\n box-shadow: none;\n &:after {\n transition: border-bottom-color ${TransitionDuration.Fast};\n border-bottom-color: ${({ theme }) => theme.color.primary.brand};\n }\n`;\n\nexport const StyledTab = styled(Button).attrs<TabBaseProps>({\n width: 'auto',\n variant: 'basic',\n})<TabBaseProps>`\n display: inline-flex;\n align-items: center;\n justify-content: center;\n position: relative;\n white-space: nowrap;\n background-color: transparent;\n color: ${({ theme, disabled }) =>\n disabled ? theme.color.variants.basic.textDisabled : theme.color.text.tertiary};\n transition: color ${TransitionDuration.Fast} ease-out;\n height: 32px;\n margin: 0;\n padding: 0;\n ${({ size }) => sizeStyles[size || 'md']};\n outline: none;\n border-radius: ${({ theme }) => theme.button.borderRadius};\n\n a {\n color: currentColor;\n }\n\n /* remove default button focused/hovered box shadow */\n &${isActive}${isNotDisabled} {\n background-color: unset;\n }\n &${isHovered}${isNotDisabled} {\n background-color: unset;\n ${({ selected }) =>\n !selected &&\n css`\n color: ${Color.TextPrimary};\n `}\n }\n &${isFocused}${isNotDisabled} {\n box-shadow: none;\n background-color: unset;\n }\n &${isHovered}${isFocused}${isNotDisabled} {\n background-color: unset;\n }\n &:disabled {\n background-color: unset;\n }\n\n &:after {\n position: absolute;\n bottom: 0px;\n width: 100%;\n border-bottom: 1px solid transparent;\n content: '';\n }\n\n &.selected,\n &.active {\n ${tabSelectedStyle}\n }\n\n ${({ selected }) => selected && tabSelectedStyle}\n\n ${({ disabled }) =>\n disabled &&\n css`\n cursor: default;\n `}\n\n a& {\n text-decoration: none;\n }\n`;\n\n/**\n * Helper function to truncate text if it exceeds maxCharacters\n */\nconst truncateText = (text: string, maxCharacters: number): string => {\n if (text.length <= maxCharacters) {\n return text;\n }\n return `${text.substring(0, maxCharacters).trimEnd()}...`;\n};\n\nconst Tab = <T extends ElementType = 'button'>({\n selected,\n disabled,\n children,\n badge,\n sticker,\n as,\n size,\n ...elemProps\n}: TabProps<T> & ComponentPropsWithoutRef<T>) => {\n const { maxTabChars, size: contextSize } = useContext(TabBarContext);\n const finalSize = size || contextSize || 'md';\n\n // Truncate text if maxTabChars is provided and children is a string\n const hasTruncation = maxTabChars && typeof children === 'string';\n const displayChildren = hasTruncation ? truncateText(children, maxTabChars) : children;\n\n return (\n <StyledTab\n role='tab'\n selected={selected}\n aria-selected={selected}\n aria-disabled={disabled}\n disabled={disabled}\n as={as as ElementType}\n size={finalSize}\n title={hasTruncation ? children : undefined}\n {...elemProps}\n >\n {displayChildren}\n {badge && (\n <AdornmentContainer>\n {badge.type === Badge\n ? cloneElement(badge, {\n variant: selected ? 'active' : 'basic',\n onSecondaryBackground: true,\n })\n : badge}\n </AdornmentContainer>\n )}\n {sticker && <AdornmentContainer>{sticker}</AdornmentContainer>}\n </StyledTab>\n );\n};\n\nexport default Tab;\n","import styled from 'styled-components';\n\nimport { BorderRadius, Color, Spacing } from '@persona/design-tokens';\nimport { IconButton } from 'design-system/components/Button';\nimport { isActive, isFocused, isHovered, isNotDisabled } from 'design-system/lib/pseudoClass';\n\nexport default styled(IconButton).attrs({\n size: 'sm',\n})`\n padding-left: ${Spacing[2]};\n padding-right: ${Spacing[2]};\n border-radius: ${BorderRadius.Sm};\n\n // remove default button focused/hovered box shadow\n &${isActive}${isNotDisabled} {\n background-color: transparent;\n }\n &${isHovered}${isNotDisabled} {\n box-shadow: none;\n }\n &${isFocused}${isNotDisabled} {\n box-shadow: none;\n }\n &${isHovered}${isFocused}${isNotDisabled} {\n box-shadow: none;\n }\n &:disabled {\n background-color: transparent;\n }\n &:focus-visible${isNotDisabled}, &${isHovered}${isNotDisabled}:focus-visible {\n box-shadow: 0 0 0 3px ${({ theme }) => theme.color.variants.basic.highlight};\n }\n\n svg {\n color: ${Color.CoreSlate800};\n }\n\n &:hover {\n svg {\n color: ${Color.CoreSlate900};\n }\n }\n`;\n"],"mappings":"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"}
@@ -1,4 +1,4 @@
1
- import { n as IconButtonProps } from "./IconButton-Dnnlf9uO.mjs";
1
+ import { n as IconButtonProps } from "./IconButton-BHCmHIx5.mjs";
2
2
  import * as _$styled_components0 from "styled-components";
3
3
  import * as _$react from "react";
4
4
 
@@ -10,4 +10,4 @@ declare const Table: _$styled_components0.StyledComponent<"table", any, {
10
10
  } & TableProps, "role">;
11
11
  //#endregion
12
12
  export { Table as t };
13
- //# sourceMappingURL=Table-DJZtluW3.d.cts.map
13
+ //# sourceMappingURL=Table-BNScLj9g.d.mts.map
@@ -2,15 +2,15 @@ import { isFocusedVisible, isHovered } from "./lib/pseudoClass.mjs";
2
2
  import "./variables/transitions.mjs";
3
3
  import { paragraphMixins } from "./mixins/text.mjs";
4
4
  import "./variables/spacing.mjs";
5
- import { i as Paragraph } from "./Text-hEoPeOc9.mjs";
5
+ import { i as Paragraph } from "./Text-RcEfNFLx.mjs";
6
6
  import { fadeIn } from "./variables/keyframes.mjs";
7
- import { r as HelperTooltip } from "./Tooltip-CDvOu1UN.mjs";
7
+ import { r as HelperTooltip } from "./Tooltip-BvDbmXak.mjs";
8
8
  import { Z_INDICES } from "./lib/zindex.mjs";
9
9
  import { t as Spinner } from "./Spinner-BEPF42RW.mjs";
10
10
  import { Color, Spacing } from "@persona/design-tokens";
11
11
  import styled, { css, keyframes } from "styled-components";
12
- import { forwardRef } from "react";
13
12
  import { jsx, jsxs } from "react/jsx-runtime";
13
+ import { forwardRef } from "react";
14
14
  import { CaretDownIcon, CaretUpIcon } from "@persona/icons";
15
15
  //#region components/Table/Table.tsx
16
16
  const slideKeyframes$1 = keyframes`
@@ -294,7 +294,7 @@ const TableBody = styled.tbody.attrs({ role: "rowgroup" })`
294
294
  const Container = styled.div`
295
295
  position: relative;
296
296
  z-index: 0;
297
- overflow-x: auto;
297
+ overflow-x: ${({ $scrollsHorizontally }) => $scrollsHorizontally ? "auto" : "visible"};
298
298
  ${({ maxHeight }) => {
299
299
  if (maxHeight != null) return `max-height: ${maxHeight}px;`;
300
300
  }}
@@ -349,7 +349,7 @@ const TableSpinner = styled(Spinner)`
349
349
  stroke-width: 0.46;
350
350
  }
351
351
  `;
352
- const TableLayout = ({ children, className, containerMaxHeight, dataTest, headerTR, isEmpty, isLoading, nullState, showHeader, size = "md", stickyHeader = false }) => {
352
+ const TableLayout = ({ children, className, containerMaxHeight, containerScrollsHorizontally = true, dataTest, headerTR, isEmpty, isLoading, nullState, showHeader, size = "md", stickyHeader = false }) => {
353
353
  if (isEmpty && !showHeader) if (isLoading) return /* @__PURE__ */ jsx(SpinnerWrapper, {
354
354
  role: "status",
355
355
  "aria-live": "polite",
@@ -360,12 +360,14 @@ const TableLayout = ({ children, className, containerMaxHeight, dataTest, header
360
360
  });
361
361
  else return /* @__PURE__ */ jsx(Container, {
362
362
  "data-test": dataTest,
363
+ $scrollsHorizontally: containerScrollsHorizontally,
363
364
  children: nullState
364
365
  });
365
366
  return /* @__PURE__ */ jsxs(Container, {
366
367
  "data-test": dataTest,
367
368
  maxHeight: containerMaxHeight,
368
369
  className,
370
+ $scrollsHorizontally: containerScrollsHorizontally,
369
371
  children: [
370
372
  isLoading && /* @__PURE__ */ jsx(Loader, { "data-test": "table-layout__loader" }),
371
373
  isLoading && /* @__PURE__ */ jsx(Overlay, {}),
@@ -384,4 +386,4 @@ const TableLayout = ({ children, className, containerMaxHeight, dataTest, header
384
386
  //#endregion
385
387
  export { StickyTH as a, TableCellTitle as c, TableTR as d, TableTH as f, Table as h, StickyTD as i, TableIconTD as l, TableHeaderCell as m, TableBody as n, TableActionTD as o, TableRow as p, TableHead as r, TableCell as s, TableLayout as t, TableTD as u };
386
388
 
387
- //# sourceMappingURL=Table-CNs8p8hL.mjs.map
389
+ //# sourceMappingURL=Table-BfontAeY.mjs.map
@@ -1 +1 @@
1
- {"version":3,"file":"Table-CNs8p8hL.mjs","names":["slideKeyframes"],"sources":["../components/Table/Table.tsx","../components/Table/TableHeaderCell.tsx","../components/Table/TableRow.tsx","../components/Table/TableTH.tsx","../components/Table/TableCell.tsx","../components/Table/TableHead.tsx","../components/Table/TableBody.tsx","../components/Table/TableLayout.tsx"],"sourcesContent":["import styled, { css, keyframes } from 'styled-components';\n\nimport { Spacing } from '@persona/design-tokens';\nimport { paragraphMixins } from 'design-system/mixins/text';\n\ninterface TableProps {\n size?: 'sm' | 'md';\n isLoading?: boolean;\n}\n\nconst slideKeyframes = keyframes`\n 0% {\n transform: translateX(-50%) scaleX(0);\n }\n 50% {\n transform: translateX(0) scaleX(1);\n }\n 100% {\n transform: translateX(50%) scaleX(0);\n }\n`;\n\nexport const Table = styled.table.attrs({ role: 'table' })<TableProps>`\n display: table;\n width: 100%;\n border-spacing: 0;\n ${paragraphMixins.md};\n\n ${({ size }) =>\n size === 'sm' &&\n css`\n td,\n th {\n padding: ${Spacing[2]};\n }\n `}\n\n ${({ isLoading }) =>\n isLoading &&\n css`\n thead {\n &:after {\n content: '';\n display: block;\n position: absolute;\n bottom: 0;\n left: 0;\n width: 100%;\n border-bottom: 3px solid ${({ theme }) => theme.color.primary.brand};\n animation: ${slideKeyframes} 3s infinite cubic-bezier(0.5, 0, 0.5, 1);\n }\n }\n `}\n`;\n\nexport default Table;\n","import { type ComponentPropsWithoutRef, forwardRef } from 'react';\nimport styled, { css } from 'styled-components';\n\nimport { Spacing } from '@persona/design-tokens';\nimport { CaretDownIcon, CaretUpIcon } from '@persona/icons';\nimport { paragraphMixins } from 'design-system/mixins/text';\nimport { BASE } from 'design-system/variables/spacing';\n\ninterface TableHeaderCellProps {\n size?: 'sm' | 'md';\n sortable?: boolean;\n width?: 'auto' | 'min' | 'max' | string;\n isSticky?: boolean;\n align?: 'left' | 'right';\n}\n\nconst StyledTableHeaderCell = styled.th<TableHeaderCellProps>`\n display: table-cell;\n /* Self-contained box model: don't depend on a consumer's global\n border-box reset, so header padding + border are included in the\n declared width/height. */\n box-sizing: border-box;\n\n background-color: ${({ theme }) => theme.color.background.secondary};\n padding: ${({ size }) => (size === 'sm' ? BASE : BASE * 1.5)}px;\n text-align: left;\n white-space: nowrap;\n ${({ size }) => (size === 'sm' ? paragraphMixins.sm : paragraphMixins.md)};\n line-height: 1;\n width: ${({ width }) => {\n switch (width) {\n case 'min':\n return '1px';\n case 'max':\n return '100%';\n default:\n if (width) {\n return width;\n } else {\n return 'auto';\n }\n }\n }};\n\n &:first-child {\n border-radius: ${({ theme }) =>\n `${theme.element.borderRadius} 0 0 ${theme.element.borderRadius}`};\n }\n\n &:last-child {\n border-radius: ${({ theme }) =>\n `0 ${theme.element.borderRadius} ${theme.element.borderRadius} 0`};\n }\n\n ${({ sortable }) =>\n sortable &&\n css`\n cursor: pointer;\n\n &:hover ${TableIconContainer} {\n display: inline;\n visibility: visible;\n }\n `};\n\n ${({ isSticky }) =>\n isSticky\n ? css`\n position: sticky;\n top: 0;\n z-index: 1;\n `\n : css`\n position: relative;\n `}\n`;\n\nconst VerticalAlign = styled.div<{ $align?: TableHeaderCellProps['align'] }>`\n display: flex;\n align-items: center;\n gap: ${Spacing[1]};\n flex-direction: ${({ $align }) => ($align === 'right' ? 'row-reverse' : 'row')};\n`;\n\ninterface TableIconContainerProps {\n sortDirection?: 'asc' | 'desc' | false;\n}\n\nconst TableIconContainer = styled('div')<TableIconContainerProps>`\n display: inline-block;\n\n ${({ sortDirection }) => {\n if (sortDirection) {\n return css`\n display: inline;\n `;\n } else {\n return css`\n display: inline;\n visibility: hidden;\n color: ${({ theme }) => theme.color.text.disabled};\n `;\n }\n }};\n`;\n\nconst TableHeaderCell = forwardRef<\n HTMLTableCellElement,\n ComponentPropsWithoutRef<'th'> & TableHeaderCellProps & TableIconContainerProps\n>(function TableHeaderCell({ sortable, sortDirection, children, align, ...elemProps }, ref) {\n let ariaSort: 'none' | 'ascending' | 'descending' | 'other' = 'none';\n\n if (sortable && sortDirection) {\n ariaSort = sortDirection === 'asc' ? 'ascending' : 'descending';\n }\n\n return (\n <StyledTableHeaderCell\n sortable={sortable}\n aria-sort={ariaSort}\n role='columnheader'\n {...elemProps}\n ref={ref}\n >\n <VerticalAlign $align={align}>\n {children}\n {sortable && (\n <TableIconContainer sortDirection={sortDirection}>\n {sortDirection === 'asc' ? <CaretUpIcon /> : <CaretDownIcon />}\n </TableIconContainer>\n )}\n </VerticalAlign>\n </StyledTableHeaderCell>\n );\n});\n\nexport default TableHeaderCell;\n","import styled, { css } from 'styled-components';\n\nimport { isFocusedVisible, isHovered } from 'design-system/lib/pseudoClass';\nimport type PseudoClassProps from 'design-system/types/PseudoClassProps';\nimport { TransitionDuration } from 'design-system/variables/transitions';\n\nexport interface TableRowProps extends PseudoClassProps {\n disableHoverBackground?: boolean;\n}\n\nconst TableRow = styled.tr.attrs({\n role: 'row',\n})<TableRowProps>`\n display: table-row;\n\n ${({ onClick }) =>\n onClick != null &&\n css`\n cursor: pointer;\n `}\n\n ${({ disableHoverBackground, theme }) =>\n !disableHoverBackground &&\n css`\n &${isHovered} {\n background-color: ${theme.color.background.highlight};\n transition-duration: ${TransitionDuration.Fast};\n }\n `}\n\n ${isFocusedVisible}\n`;\n\nexport default TableRow;\n","import { type ComponentPropsWithoutRef, forwardRef, type ReactNode } from 'react';\nimport styled from 'styled-components';\n\nimport { TableHeaderCell } from '@persona/design-system/components/Table';\nimport { HelperTooltip } from '@persona/design-system/components/Tooltip';\nimport { Spacing } from '@persona/design-tokens';\n\nconst StyledHelperTooltip = styled(HelperTooltip)`\n height: 14px;\n margin-left: ${Spacing[1]};\n`;\n\nexport interface TableTHProps extends ComponentPropsWithoutRef<typeof TableHeaderCell> {\n canSort?: boolean;\n isSorted?: boolean;\n isDescending?: boolean;\n isSticky?: boolean;\n /**\n * Display help icon and tooltip for column header\n */\n helpText?: ReactNode;\n align?: 'left' | 'right';\n size?: 'sm' | 'md';\n}\n\nconst TableTH = forwardRef<HTMLTableCellElement, TableTHProps>(function TableTH(\n { children, canSort, isSorted, isSticky, isDescending, helpText, align, size, ...props },\n ref,\n) {\n return (\n <TableHeaderCell\n sortable={canSort}\n sortDirection={canSort && isSorted ? (isDescending ? 'desc' : 'asc') : false}\n ref={ref}\n isSticky={isSticky}\n align={align}\n size={size}\n {...props}\n >\n {/* We have to wrap the children to make it easier to use tooltips */}\n <span className='th__text'>{children}</span>\n {helpText && <StyledHelperTooltip size='sm'>{helpText}</StyledHelperTooltip>}\n </TableHeaderCell>\n );\n});\n\nexport default TableTH;\n","import type { ComponentPropsWithoutRef, ReactNode } from 'react';\nimport styled, { css } from 'styled-components';\n\nimport { Spacing } from '@persona/design-tokens';\nimport { Paragraph } from 'design-system/components/Text';\nimport { paragraphMixins } from 'design-system/mixins/text';\nimport { BASE } from 'design-system/variables/spacing';\nimport { TransitionDuration } from 'design-system/variables/transitions';\n\nimport TableRow from './TableRow';\nimport TableTH from './TableTH';\n\nexport interface TableCellProps {\n breakWord?: boolean;\n size?: 'sm' | 'md';\n}\n\nconst TableCell = styled.td.attrs({ role: 'cell' })<TableCellProps>`\n display: table-cell;\n vertical-align: middle;\n /* Self-contained box model: don't depend on a consumer's global\n border-box reset, so a fixed cell height includes its padding + border\n and rows stay compact. */\n box-sizing: border-box;\n\n border-bottom: 1px solid ${({ theme }) => theme.color.border.primary};\n text-align: left;\n padding: ${({ size }) => (size === 'sm' ? BASE : BASE * 1.5)}px;\n color: ${({ theme }) => theme.color.text.primary};\n white-space: nowrap;\n ${paragraphMixins.md};\n line-height: 1;\n ${({ breakWord }) =>\n breakWord\n ? `white-space: normal;\n overflow-wrap: break-word;`\n : ''}\n`;\n\nexport default TableCell;\n\nconst CellTitleContainer = styled.div`\n display: flex;\n flex-direction: column;\n`;\n\nconst CellTitle = styled(Paragraph).attrs({ color: 'primary' })`\n display: flex;\n align-items: center;\n gap: ${Spacing[2]};\n`;\n\ninterface TableCellTitleProps extends ComponentPropsWithoutRef<'div'> {\n subtitle?: ReactNode;\n}\n\nexport const TableCellTitle = ({ children, subtitle, ...elemProps }: TableCellTitleProps) => {\n return (\n <CellTitleContainer {...elemProps}>\n <CellTitle>{children}</CellTitle>\n {subtitle && <Paragraph>{subtitle}</Paragraph>}\n </CellTitleContainer>\n );\n};\n\nexport const TableTD = styled(TableCell)<{ unclickable?: boolean }>`\n white-space: normal;\n overflow-wrap: break-word;\n ${(props) =>\n props.unclickable &&\n css`\n cursor: default;\n `}\n`;\n\nexport const TableIconTD = styled(TableTD)`\n text-align: right;\n line-height: 0; /* To center icon; cannot use flex here */\n padding: 0;\n padding-left: ${Spacing[4]};\n width: 36px;\n`;\n\nexport const TableActionTD = styled(TableTD)`\n text-align: right;\n padding: 0;\n padding-right: ${Spacing[4]};\n width: 48px;\n`;\n\nexport const StickyTD = styled(TableTD)<{\n left?: number;\n hasRightBorder?: boolean;\n}>`\n position: sticky;\n left: ${({ left = 0 }) => `${left}px`}; // Default to 0 if not specified\n background-color: ${({ theme }) => theme.color.background.primary};\n\n ${({ hasRightBorder, theme }) =>\n hasRightBorder && `border-right: 2px solid ${theme.color.border.primary};`}\n z-index: 2;\n`;\n\nexport const StickyTH = styled(TableTH)<{\n left?: number;\n hasRightBorder?: boolean;\n size?: 'sm' | 'md';\n}>`\n position: sticky;\n left: ${({ left = 0 }) => `${left}px`}; // Default to 0 if not specified\n z-index: 2;\n max-width: 10%;\n background-color: ${({ theme }) => theme.color.background.secondary};\n ${({ hasRightBorder, theme }) =>\n hasRightBorder && `border-right: 2px solid ${theme.color.border.primary};`}\n`;\n\nexport const TableTR = styled(TableRow)<{ disableHoverBackground?: boolean; $isActive?: boolean }>`\n ${({ disableHoverBackground }) =>\n disableHoverBackground &&\n css`\n &:hover {\n background-color: transparent !important;\n }\n `}\n\n ${({ $isActive }) =>\n $isActive &&\n css`\n background-color: ${({ theme }) => theme.color.background.highlight};\n &:hover {\n background-color: ${({ theme }) => theme.color.background.highlight};\n }\n `}\n\n ${({ onClick, disableHoverBackground, $isActive }) =>\n onClick != null &&\n !disableHoverBackground &&\n !$isActive &&\n css`\n cursor: pointer;\n :hover {\n background-color: ${({ theme }) => theme.color.background.highlight};\n }\n transition-duration: ${TransitionDuration.Fast};\n `}\n`;\n","import styled, { css } from 'styled-components';\n\ninterface TableHeadProps {\n sticky?: boolean;\n}\n\nconst TableHead = styled.thead.attrs({ role: 'rowgroup' })<TableHeadProps>`\n display: table-header-group;\n ${({ sticky }) =>\n sticky &&\n css`\n position: sticky;\n top: 0;\n z-index: 1;\n `}\n`;\n\nexport default TableHead;\n","import styled from 'styled-components';\n\nconst TableBody = styled.tbody.attrs({ role: 'rowgroup' })`\n display: table-row-group;\n`;\n\nexport default TableBody;\n","import type { FC, PropsWithChildren, ReactNode } from 'react';\nimport styled, { keyframes } from 'styled-components';\n\nimport { Color, Spacing } from '@persona/design-tokens';\nimport { Spinner } from 'design-system/components/Spinner';\nimport Table, { TableHead, TableRow } from 'design-system/components/Table';\nimport { Z_INDICES } from 'design-system/lib/zindex';\nimport { fadeIn } from 'design-system/variables/keyframes';\n\nconst Container = styled.div<{ maxHeight?: number }>`\n position: relative;\n z-index: 0;\n overflow-x: auto;\n ${({ maxHeight }) => {\n if (maxHeight != null) {\n return `max-height: ${maxHeight}px;`;\n }\n }}\n `;\n\nconst slideKeyframes = keyframes`\n 0% {\n transform: translateX(-50%) scaleX(0);\n }\n 50% {\n transform: translateX(0) scaleX(1);\n }\n 100% {\n transform: translateX(50%) scaleX(0);\n }\n `;\n\nconst Loader = styled.div`\n position: absolute;\n z-index: ${Z_INDICES.loadingOverlays};\n border-bottom: 3px solid ${({ theme }) => theme.color.primary.brand};\n width: 100%;\n \n animation: ${slideKeyframes} 3s infinite cubic-bezier(0.5, 0, 0.5, 1);\n `;\n\nconst Overlay = styled.div`\n position: absolute;\n z-index: ${Z_INDICES.loadingOverlays};\n top: 0;\n left: 0;\n width: 100%;\n height: 100%;\n background: ${({ theme }) => theme.color.primary.white};\n opacity: 50%;\n `;\n\nconst SpinnerWrapper = styled.div`\n width: 100%;\n display: flex;\n align-items: center;\n justify-content: center;\n padding: ${Spacing[5]} 0;\n animation: ${fadeIn} 1s;\n animation-delay: 0.5s;\n animation-fill-mode: backwards;\n `;\n\nconst TableSpinner = styled(Spinner)`\n svg {\n width: 120px;\n height: 120px;\n }\n \n path {\n stroke: ${Color.CorePurple500};\n stroke-width: 0.46;\n }\n `;\n\ninterface TableLayoutProps {\n className?: string;\n containerMaxHeight?: number;\n dataTest?: string;\n headerTR: JSX.Element;\n isEmpty?: boolean;\n isLoading?: boolean;\n nullState: ReactNode;\n showHeader?: boolean;\n size?: 'sm' | 'md';\n stickyHeader?: boolean;\n}\n\nconst TableLayout: FC<PropsWithChildren<TableLayoutProps>> = ({\n children,\n className,\n containerMaxHeight,\n dataTest,\n headerTR,\n isEmpty,\n isLoading,\n nullState,\n showHeader,\n size = 'md',\n stickyHeader = false,\n}) => {\n if (isEmpty && !showHeader) {\n if (isLoading) {\n return (\n <SpinnerWrapper\n role='status'\n aria-live='polite'\n aria-busy='true'\n aria-label='Loading...'\n data-loading-indicator='true'\n >\n <TableSpinner size='md' />\n </SpinnerWrapper>\n );\n } else {\n return <Container data-test={dataTest}>{nullState}</Container>;\n }\n }\n\n return (\n <Container data-test={dataTest} maxHeight={containerMaxHeight} className={className}>\n {isLoading && <Loader data-test='table-layout__loader' />}\n {isLoading && <Overlay />}\n\n <Table size={size} aria-busy={isLoading || undefined}>\n <TableHead sticky={stickyHeader}>\n <TableRow>{headerTR}</TableRow>\n </TableHead>\n {!isEmpty && children}\n </Table>\n\n {isEmpty && nullState}\n </Container>\n );\n};\n\nexport default TableLayout;\n"],"mappings":"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"}
1
+ {"version":3,"file":"Table-BfontAeY.mjs","names":["slideKeyframes"],"sources":["../components/Table/Table.tsx","../components/Table/TableHeaderCell.tsx","../components/Table/TableRow.tsx","../components/Table/TableTH.tsx","../components/Table/TableCell.tsx","../components/Table/TableHead.tsx","../components/Table/TableBody.tsx","../components/Table/TableLayout.tsx"],"sourcesContent":["import styled, { css, keyframes } from 'styled-components';\n\nimport { Spacing } from '@persona/design-tokens';\nimport { paragraphMixins } from 'design-system/mixins/text';\n\ninterface TableProps {\n size?: 'sm' | 'md';\n isLoading?: boolean;\n}\n\nconst slideKeyframes = keyframes`\n 0% {\n transform: translateX(-50%) scaleX(0);\n }\n 50% {\n transform: translateX(0) scaleX(1);\n }\n 100% {\n transform: translateX(50%) scaleX(0);\n }\n`;\n\nexport const Table = styled.table.attrs({ role: 'table' })<TableProps>`\n display: table;\n width: 100%;\n border-spacing: 0;\n ${paragraphMixins.md};\n\n ${({ size }) =>\n size === 'sm' &&\n css`\n td,\n th {\n padding: ${Spacing[2]};\n }\n `}\n\n ${({ isLoading }) =>\n isLoading &&\n css`\n thead {\n &:after {\n content: '';\n display: block;\n position: absolute;\n bottom: 0;\n left: 0;\n width: 100%;\n border-bottom: 3px solid ${({ theme }) => theme.color.primary.brand};\n animation: ${slideKeyframes} 3s infinite cubic-bezier(0.5, 0, 0.5, 1);\n }\n }\n `}\n`;\n\nexport default Table;\n","import { type ComponentPropsWithoutRef, forwardRef } from 'react';\nimport styled, { css } from 'styled-components';\n\nimport { Spacing } from '@persona/design-tokens';\nimport { CaretDownIcon, CaretUpIcon } from '@persona/icons';\nimport { paragraphMixins } from 'design-system/mixins/text';\nimport { BASE } from 'design-system/variables/spacing';\n\ninterface TableHeaderCellProps {\n size?: 'sm' | 'md';\n sortable?: boolean;\n width?: 'auto' | 'min' | 'max' | string;\n isSticky?: boolean;\n align?: 'left' | 'right';\n}\n\nconst StyledTableHeaderCell = styled.th<TableHeaderCellProps>`\n display: table-cell;\n /* Self-contained box model: don't depend on a consumer's global\n border-box reset, so header padding + border are included in the\n declared width/height. */\n box-sizing: border-box;\n\n background-color: ${({ theme }) => theme.color.background.secondary};\n padding: ${({ size }) => (size === 'sm' ? BASE : BASE * 1.5)}px;\n text-align: left;\n white-space: nowrap;\n ${({ size }) => (size === 'sm' ? paragraphMixins.sm : paragraphMixins.md)};\n line-height: 1;\n width: ${({ width }) => {\n switch (width) {\n case 'min':\n return '1px';\n case 'max':\n return '100%';\n default:\n if (width) {\n return width;\n } else {\n return 'auto';\n }\n }\n }};\n\n &:first-child {\n border-radius: ${({ theme }) =>\n `${theme.element.borderRadius} 0 0 ${theme.element.borderRadius}`};\n }\n\n &:last-child {\n border-radius: ${({ theme }) =>\n `0 ${theme.element.borderRadius} ${theme.element.borderRadius} 0`};\n }\n\n ${({ sortable }) =>\n sortable &&\n css`\n cursor: pointer;\n\n &:hover ${TableIconContainer} {\n display: inline;\n visibility: visible;\n }\n `};\n\n ${({ isSticky }) =>\n isSticky\n ? css`\n position: sticky;\n top: 0;\n z-index: 1;\n `\n : css`\n position: relative;\n `}\n`;\n\nconst VerticalAlign = styled.div<{ $align?: TableHeaderCellProps['align'] }>`\n display: flex;\n align-items: center;\n gap: ${Spacing[1]};\n flex-direction: ${({ $align }) => ($align === 'right' ? 'row-reverse' : 'row')};\n`;\n\ninterface TableIconContainerProps {\n sortDirection?: 'asc' | 'desc' | false;\n}\n\nconst TableIconContainer = styled('div')<TableIconContainerProps>`\n display: inline-block;\n\n ${({ sortDirection }) => {\n if (sortDirection) {\n return css`\n display: inline;\n `;\n } else {\n return css`\n display: inline;\n visibility: hidden;\n color: ${({ theme }) => theme.color.text.disabled};\n `;\n }\n }};\n`;\n\nconst TableHeaderCell = forwardRef<\n HTMLTableCellElement,\n ComponentPropsWithoutRef<'th'> & TableHeaderCellProps & TableIconContainerProps\n>(function TableHeaderCell({ sortable, sortDirection, children, align, ...elemProps }, ref) {\n let ariaSort: 'none' | 'ascending' | 'descending' | 'other' = 'none';\n\n if (sortable && sortDirection) {\n ariaSort = sortDirection === 'asc' ? 'ascending' : 'descending';\n }\n\n return (\n <StyledTableHeaderCell\n sortable={sortable}\n aria-sort={ariaSort}\n role='columnheader'\n {...elemProps}\n ref={ref}\n >\n <VerticalAlign $align={align}>\n {children}\n {sortable && (\n <TableIconContainer sortDirection={sortDirection}>\n {sortDirection === 'asc' ? <CaretUpIcon /> : <CaretDownIcon />}\n </TableIconContainer>\n )}\n </VerticalAlign>\n </StyledTableHeaderCell>\n );\n});\n\nexport default TableHeaderCell;\n","import styled, { css } from 'styled-components';\n\nimport { isFocusedVisible, isHovered } from 'design-system/lib/pseudoClass';\nimport type PseudoClassProps from 'design-system/types/PseudoClassProps';\nimport { TransitionDuration } from 'design-system/variables/transitions';\n\nexport interface TableRowProps extends PseudoClassProps {\n disableHoverBackground?: boolean;\n}\n\nconst TableRow = styled.tr.attrs({\n role: 'row',\n})<TableRowProps>`\n display: table-row;\n\n ${({ onClick }) =>\n onClick != null &&\n css`\n cursor: pointer;\n `}\n\n ${({ disableHoverBackground, theme }) =>\n !disableHoverBackground &&\n css`\n &${isHovered} {\n background-color: ${theme.color.background.highlight};\n transition-duration: ${TransitionDuration.Fast};\n }\n `}\n\n ${isFocusedVisible}\n`;\n\nexport default TableRow;\n","import { type ComponentPropsWithoutRef, forwardRef, type ReactNode } from 'react';\nimport styled from 'styled-components';\n\nimport { TableHeaderCell } from '@persona/design-system/components/Table';\nimport { HelperTooltip } from '@persona/design-system/components/Tooltip';\nimport { Spacing } from '@persona/design-tokens';\n\nconst StyledHelperTooltip = styled(HelperTooltip)`\n height: 14px;\n margin-left: ${Spacing[1]};\n`;\n\nexport interface TableTHProps extends ComponentPropsWithoutRef<typeof TableHeaderCell> {\n canSort?: boolean;\n isSorted?: boolean;\n isDescending?: boolean;\n isSticky?: boolean;\n /**\n * Display help icon and tooltip for column header\n */\n helpText?: ReactNode;\n align?: 'left' | 'right';\n size?: 'sm' | 'md';\n}\n\nconst TableTH = forwardRef<HTMLTableCellElement, TableTHProps>(function TableTH(\n { children, canSort, isSorted, isSticky, isDescending, helpText, align, size, ...props },\n ref,\n) {\n return (\n <TableHeaderCell\n sortable={canSort}\n sortDirection={canSort && isSorted ? (isDescending ? 'desc' : 'asc') : false}\n ref={ref}\n isSticky={isSticky}\n align={align}\n size={size}\n {...props}\n >\n {/* We have to wrap the children to make it easier to use tooltips */}\n <span className='th__text'>{children}</span>\n {helpText && <StyledHelperTooltip size='sm'>{helpText}</StyledHelperTooltip>}\n </TableHeaderCell>\n );\n});\n\nexport default TableTH;\n","import type { ComponentPropsWithoutRef, ReactNode } from 'react';\nimport styled, { css } from 'styled-components';\n\nimport { Spacing } from '@persona/design-tokens';\nimport { Paragraph } from 'design-system/components/Text';\nimport { paragraphMixins } from 'design-system/mixins/text';\nimport { BASE } from 'design-system/variables/spacing';\nimport { TransitionDuration } from 'design-system/variables/transitions';\n\nimport TableRow from './TableRow';\nimport TableTH from './TableTH';\n\nexport interface TableCellProps {\n breakWord?: boolean;\n size?: 'sm' | 'md';\n}\n\nconst TableCell = styled.td.attrs({ role: 'cell' })<TableCellProps>`\n display: table-cell;\n vertical-align: middle;\n /* Self-contained box model: don't depend on a consumer's global\n border-box reset, so a fixed cell height includes its padding + border\n and rows stay compact. */\n box-sizing: border-box;\n\n border-bottom: 1px solid ${({ theme }) => theme.color.border.primary};\n text-align: left;\n padding: ${({ size }) => (size === 'sm' ? BASE : BASE * 1.5)}px;\n color: ${({ theme }) => theme.color.text.primary};\n white-space: nowrap;\n ${paragraphMixins.md};\n line-height: 1;\n ${({ breakWord }) =>\n breakWord\n ? `white-space: normal;\n overflow-wrap: break-word;`\n : ''}\n`;\n\nexport default TableCell;\n\nconst CellTitleContainer = styled.div`\n display: flex;\n flex-direction: column;\n`;\n\nconst CellTitle = styled(Paragraph).attrs({ color: 'primary' })`\n display: flex;\n align-items: center;\n gap: ${Spacing[2]};\n`;\n\ninterface TableCellTitleProps extends ComponentPropsWithoutRef<'div'> {\n subtitle?: ReactNode;\n}\n\nexport const TableCellTitle = ({ children, subtitle, ...elemProps }: TableCellTitleProps) => {\n return (\n <CellTitleContainer {...elemProps}>\n <CellTitle>{children}</CellTitle>\n {subtitle && <Paragraph>{subtitle}</Paragraph>}\n </CellTitleContainer>\n );\n};\n\nexport const TableTD = styled(TableCell)<{ unclickable?: boolean }>`\n white-space: normal;\n overflow-wrap: break-word;\n ${(props) =>\n props.unclickable &&\n css`\n cursor: default;\n `}\n`;\n\nexport const TableIconTD = styled(TableTD)`\n text-align: right;\n line-height: 0; /* To center icon; cannot use flex here */\n padding: 0;\n padding-left: ${Spacing[4]};\n width: 36px;\n`;\n\nexport const TableActionTD = styled(TableTD)`\n text-align: right;\n padding: 0;\n padding-right: ${Spacing[4]};\n width: 48px;\n`;\n\nexport const StickyTD = styled(TableTD)<{\n left?: number;\n hasRightBorder?: boolean;\n}>`\n position: sticky;\n left: ${({ left = 0 }) => `${left}px`}; // Default to 0 if not specified\n background-color: ${({ theme }) => theme.color.background.primary};\n\n ${({ hasRightBorder, theme }) =>\n hasRightBorder && `border-right: 2px solid ${theme.color.border.primary};`}\n z-index: 2;\n`;\n\nexport const StickyTH = styled(TableTH)<{\n left?: number;\n hasRightBorder?: boolean;\n size?: 'sm' | 'md';\n}>`\n position: sticky;\n left: ${({ left = 0 }) => `${left}px`}; // Default to 0 if not specified\n z-index: 2;\n max-width: 10%;\n background-color: ${({ theme }) => theme.color.background.secondary};\n ${({ hasRightBorder, theme }) =>\n hasRightBorder && `border-right: 2px solid ${theme.color.border.primary};`}\n`;\n\nexport const TableTR = styled(TableRow)<{ disableHoverBackground?: boolean; $isActive?: boolean }>`\n ${({ disableHoverBackground }) =>\n disableHoverBackground &&\n css`\n &:hover {\n background-color: transparent !important;\n }\n `}\n\n ${({ $isActive }) =>\n $isActive &&\n css`\n background-color: ${({ theme }) => theme.color.background.highlight};\n &:hover {\n background-color: ${({ theme }) => theme.color.background.highlight};\n }\n `}\n\n ${({ onClick, disableHoverBackground, $isActive }) =>\n onClick != null &&\n !disableHoverBackground &&\n !$isActive &&\n css`\n cursor: pointer;\n :hover {\n background-color: ${({ theme }) => theme.color.background.highlight};\n }\n transition-duration: ${TransitionDuration.Fast};\n `}\n`;\n","import styled, { css } from 'styled-components';\n\ninterface TableHeadProps {\n sticky?: boolean;\n}\n\nconst TableHead = styled.thead.attrs({ role: 'rowgroup' })<TableHeadProps>`\n display: table-header-group;\n ${({ sticky }) =>\n sticky &&\n css`\n position: sticky;\n top: 0;\n z-index: 1;\n `}\n`;\n\nexport default TableHead;\n","import styled from 'styled-components';\n\nconst TableBody = styled.tbody.attrs({ role: 'rowgroup' })`\n display: table-row-group;\n`;\n\nexport default TableBody;\n","import type { FC, PropsWithChildren, ReactNode } from 'react';\nimport styled, { keyframes } from 'styled-components';\n\nimport { Color, Spacing } from '@persona/design-tokens';\nimport { Spinner } from 'design-system/components/Spinner';\nimport Table, { TableHead, TableRow } from 'design-system/components/Table';\nimport { Z_INDICES } from 'design-system/lib/zindex';\nimport { fadeIn } from 'design-system/variables/keyframes';\n\n// `visible` rather than a narrower opt-out because CSS blockifies the other axis: any\n// `overflow-x` other than `visible`/`clip` forces `overflow-y` to compute to `auto` too, which\n// makes this element the scrollport that descendant sticky offsets resolve against.\nconst Container = styled.div<{ maxHeight?: number; $scrollsHorizontally: boolean }>`\n position: relative;\n z-index: 0;\n overflow-x: ${({ $scrollsHorizontally }) => ($scrollsHorizontally ? 'auto' : 'visible')};\n ${({ maxHeight }) => {\n if (maxHeight != null) {\n return `max-height: ${maxHeight}px;`;\n }\n }}\n `;\n\nconst slideKeyframes = keyframes`\n 0% {\n transform: translateX(-50%) scaleX(0);\n }\n 50% {\n transform: translateX(0) scaleX(1);\n }\n 100% {\n transform: translateX(50%) scaleX(0);\n }\n `;\n\nconst Loader = styled.div`\n position: absolute;\n z-index: ${Z_INDICES.loadingOverlays};\n border-bottom: 3px solid ${({ theme }) => theme.color.primary.brand};\n width: 100%;\n \n animation: ${slideKeyframes} 3s infinite cubic-bezier(0.5, 0, 0.5, 1);\n `;\n\nconst Overlay = styled.div`\n position: absolute;\n z-index: ${Z_INDICES.loadingOverlays};\n top: 0;\n left: 0;\n width: 100%;\n height: 100%;\n background: ${({ theme }) => theme.color.primary.white};\n opacity: 50%;\n `;\n\nconst SpinnerWrapper = styled.div`\n width: 100%;\n display: flex;\n align-items: center;\n justify-content: center;\n padding: ${Spacing[5]} 0;\n animation: ${fadeIn} 1s;\n animation-delay: 0.5s;\n animation-fill-mode: backwards;\n `;\n\nconst TableSpinner = styled(Spinner)`\n svg {\n width: 120px;\n height: 120px;\n }\n \n path {\n stroke: ${Color.CorePurple500};\n stroke-width: 0.46;\n }\n `;\n\ninterface TableLayoutProps {\n className?: string;\n containerMaxHeight?: number;\n /**\n * When false, the container does not scroll horizontally and an ancestor is expected to.\n * Sticky offsets inside the table then resolve against that ancestor's scrollport rather\n * than against the container.\n */\n containerScrollsHorizontally?: boolean;\n dataTest?: string;\n headerTR: JSX.Element;\n isEmpty?: boolean;\n isLoading?: boolean;\n nullState: ReactNode;\n showHeader?: boolean;\n size?: 'sm' | 'md';\n stickyHeader?: boolean;\n}\n\nconst TableLayout: FC<PropsWithChildren<TableLayoutProps>> = ({\n children,\n className,\n containerMaxHeight,\n containerScrollsHorizontally = true,\n dataTest,\n headerTR,\n isEmpty,\n isLoading,\n nullState,\n showHeader,\n size = 'md',\n stickyHeader = false,\n}) => {\n if (isEmpty && !showHeader) {\n if (isLoading) {\n return (\n <SpinnerWrapper\n role='status'\n aria-live='polite'\n aria-busy='true'\n aria-label='Loading...'\n data-loading-indicator='true'\n >\n <TableSpinner size='md' />\n </SpinnerWrapper>\n );\n } else {\n return (\n <Container data-test={dataTest} $scrollsHorizontally={containerScrollsHorizontally}>\n {nullState}\n </Container>\n );\n }\n }\n\n return (\n <Container\n data-test={dataTest}\n maxHeight={containerMaxHeight}\n className={className}\n $scrollsHorizontally={containerScrollsHorizontally}\n >\n {isLoading && <Loader data-test='table-layout__loader' />}\n {isLoading && <Overlay />}\n\n <Table size={size} aria-busy={isLoading || undefined}>\n <TableHead sticky={stickyHeader}>\n <TableRow>{headerTR}</TableRow>\n </TableHead>\n {!isEmpty && children}\n </Table>\n\n {isEmpty && nullState}\n </Container>\n );\n};\n\nexport default TableLayout;\n"],"mappings":"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"}
package/dist/Table.d.mts CHANGED
@@ -1,2 +1,2 @@
1
- import { t as Table } from "./Table-D3nyiZt0.mjs";
1
+ import { t as Table } from "./Table-BNScLj9g.mjs";
2
2
  export { Table, Table as default };
@@ -6,4 +6,4 @@ declare const TableBody: _$styled_components0.StyledComponent<"tbody", any, {
6
6
  }, "role">;
7
7
  //#endregion
8
8
  export { TableBody as t };
9
- //# sourceMappingURL=TableBody-BFPF07n4.d.cts.map
9
+ //# sourceMappingURL=TableBody-CrDNMyT8.d.mts.map
@@ -1,2 +1,2 @@
1
- import { t as TableBody } from "./TableBody-DpRjZgzU.mjs";
1
+ import { t as TableBody } from "./TableBody-CrDNMyT8.mjs";
2
2
  export { TableBody as default };
@@ -2,22 +2,22 @@ import { focusOutline } from "./mixins/focus.mjs";
2
2
  import "./variables/effect.mjs";
3
3
  import "./variables/transitions.mjs";
4
4
  import { paragraphMixins } from "./mixins/text.mjs";
5
- import { a as Tooltip } from "./Tooltip-CDvOu1UN.mjs";
5
+ import { n as Stack, t as HStack } from "./Stack-Bl54WmhY.mjs";
6
+ import { a as Tooltip } from "./Tooltip-BvDbmXak.mjs";
6
7
  import { findIndexByKey, moveItemByIndex } from "./lib/reorderItems.mjs";
7
8
  import { useScrollOverflow } from "./lib/useScrollOverflow.mjs";
8
9
  import { Z_INDICES } from "./lib/zindex.mjs";
9
- import { n as Stack, t as HStack } from "./Stack-ckRN7LrP.mjs";
10
- import { t as IconButton } from "./IconButton-DC4rh6ow.mjs";
11
- import { t as FormGroupContext } from "./useFormGroup-BMukAMAd.mjs";
12
- import { n as DropdownMenu_default } from "./DropdownMenu-cnkoGc7C.mjs";
13
- import { n as CaretButton, t as Combobox } from "./Combobox-CeKMrlxy.mjs";
14
- import { h as Table, m as TableHeaderCell, n as TableBody, p as TableRow, r as TableHead, s as TableCell } from "./Table-CNs8p8hL.mjs";
15
- import { s as Popover_default } from "./Popover-D0QY5f-J.mjs";
16
- import { t as Container } from "./FormControl-ArDcvmir.mjs";
10
+ import { t as IconButton } from "./IconButton-P8w0JDI5.mjs";
11
+ import { n as DropdownMenu_default } from "./DropdownMenu-D25WBCah.mjs";
12
+ import { t as FormGroupContext } from "./useFormGroup-DWVW7A9f.mjs";
13
+ import { h as Table, m as TableHeaderCell, n as TableBody, p as TableRow, r as TableHead, s as TableCell } from "./Table-BfontAeY.mjs";
14
+ import { n as CaretButton, t as Combobox } from "./Combobox-B6JyLog8.mjs";
15
+ import { s as Popover_default } from "./Popover-BkDpDdaO.mjs";
16
+ import { t as Container } from "./FormControl-CFU9uKF7.mjs";
17
17
  import { BorderRadius, Color, Spacing, Typography } from "@persona/design-tokens";
18
18
  import styled, { css } from "styled-components";
19
+ import { Fragment, jsx, jsxs } from "react/jsx-runtime";
19
20
  import { Children, cloneElement, createContext, isValidElement, useCallback, useContext, useEffect, useLayoutEffect, useMemo, useRef, useState } from "react";
20
- import { jsx, jsxs } from "react/jsx-runtime";
21
21
  import { DragIcon } from "@persona/icons";
22
22
  import { CircleAlertIcon as CircleAlertIcon$1, MoreIcon as MoreIcon$1, XIcon as XIcon$1 } from "@persona/icons/12px";
23
23
  import uniqueId from "lodash/fp/uniqueId.js";
@@ -518,7 +518,7 @@ const TableBoxCell = ({ children, itemId = "", value = "", columnKey, errorText,
518
518
  ...columnConfig,
519
519
  ...inlineEditConfigOverride
520
520
  } : columnConfig;
521
- if (inlineEditConfig?.type === "combobox" && (context.hasHorizontalOverflow || inlineEditConfig?.fullWidthComboboxDropdown)) inlineEditConfig = {
521
+ if (inlineEditConfig?.type === "combobox" && (context.clipsOverflow || inlineEditConfig?.fullWidthComboboxDropdown)) inlineEditConfig = {
522
522
  ...inlineEditConfig,
523
523
  useComboboxPortal: true
524
524
  };
@@ -1087,42 +1087,58 @@ const useTableBoxDragAndDrop = ({ tableRef, reorderConfig }) => {
1087
1087
  const TableBoxContext = createContext(null);
1088
1088
  const DRAG_HANDLE_CELL_WIDTH = 24;
1089
1089
  const RIGHT_FADE_WIDTH = 48;
1090
+ const CONTAINER_BORDER_WIDTH_PX = 1;
1091
+ const STICKY_COLUMN_Z_INDEX = Z_INDICES.sticky;
1092
+ const BODY_FADE_Z_INDEX = Z_INDICES.sticky + 1;
1093
+ const PINNED_ACTIONS_Z_INDEX = Z_INDICES.sticky + 2;
1094
+ const STICKY_HEADER_Z_INDEX = Z_INDICES.sticky + 3;
1095
+ const STICKY_CORNER_Z_INDEX = Z_INDICES.sticky + 4;
1096
+ const HEADER_FADE_Z_INDEX = Z_INDICES.sticky + 5;
1090
1097
  const HEADER_HEIGHT_PX = parseInt(Spacing[1], 10) * 2 + parseInt(Typography.TextSmall.lineHeight, 10) + 1;
1091
1098
  const TableScrollContainer = styled.div`
1092
- border: 1px solid ${Color.BorderDivider};
1099
+ border: ${CONTAINER_BORDER_WIDTH_PX}px solid ${Color.BorderDivider};
1093
1100
  border-radius: ${BorderRadius.Md};
1094
1101
  overflow-x: ${({ $fixedLayout, $hasHorizontalOverflow }) => $fixedLayout ? "visible" : $hasHorizontalOverflow ? "auto" : "visible"};
1102
+ overflow-y: ${({ $maxHeight }) => $maxHeight != null ? "auto" : "visible"};
1095
1103
  overscroll-behavior-x: none;
1104
+ ${({ $maxHeight }) => $maxHeight != null && css`
1105
+ max-height: ${typeof $maxHeight === "number" ? `${$maxHeight}px` : $maxHeight};
1106
+ `}
1096
1107
  `;
1097
1108
  const ScrollAffordanceWrapper = styled.div`
1098
1109
  position: relative;
1099
1110
  `;
1100
1111
  const RightFadeOverlay = styled.div`
1101
1112
  position: absolute;
1102
- top: 1px;
1103
- right: 1px;
1104
- bottom: 1px;
1113
+ right: ${({ $scrollbarWidth }) => CONTAINER_BORDER_WIDTH_PX + $scrollbarWidth}px;
1105
1114
  width: ${RIGHT_FADE_WIDTH}px;
1106
- /* Sits above the sticky first column (z-index 2) but below the pinned
1107
- row actions (z-index 4) so action buttons stay legible. */
1108
- z-index: 3;
1109
1115
  pointer-events: none;
1110
- background:
1111
- linear-gradient(to right, transparent, ${Color.BackgroundSecondary}) top left / 100%
1112
- ${Math.max(0, HEADER_HEIGHT_PX - 1)}px no-repeat,
1113
- linear-gradient(to right, transparent, ${Color.BackgroundPrimary}) bottom left / 100%
1114
- calc(100% - ${HEADER_HEIGHT_PX}px) no-repeat;
1115
- border-top-right-radius: ${BorderRadius.Md};
1116
- border-bottom-right-radius: ${BorderRadius.Md};
1117
1116
  opacity: ${({ $visible }) => $visible ? 1 : 0};
1118
1117
  transition: opacity ${"200ms"} ease-out;
1119
1118
  `;
1120
- const stickyContentColumn = (isReorderable) => css`
1119
+ const HeaderFadeOverlay = styled(RightFadeOverlay).attrs({ "data-scroll-affordance": "header-fade" })`
1120
+ top: ${CONTAINER_BORDER_WIDTH_PX}px;
1121
+ height: ${Math.max(0, HEADER_HEIGHT_PX - CONTAINER_BORDER_WIDTH_PX)}px;
1122
+ z-index: ${HEADER_FADE_Z_INDEX};
1123
+ background: linear-gradient(to right, transparent, ${Color.BackgroundSecondary});
1124
+ border-top-right-radius: ${BorderRadius.Md};
1125
+ `;
1126
+ const BodyFadeOverlay = styled(RightFadeOverlay).attrs({ "data-scroll-affordance": "body-fade" })`
1127
+ top: ${({ $hideHeader }) => $hideHeader ? `${CONTAINER_BORDER_WIDTH_PX}px` : `${CONTAINER_BORDER_WIDTH_PX + HEADER_HEIGHT_PX}px`};
1128
+ bottom: ${({ $scrollbarHeight }) => CONTAINER_BORDER_WIDTH_PX + $scrollbarHeight}px;
1129
+ z-index: ${BODY_FADE_Z_INDEX};
1130
+ background: linear-gradient(to right, transparent, ${Color.BackgroundPrimary});
1131
+ border-bottom-right-radius: ${BorderRadius.Md};
1132
+ ${({ $hideHeader }) => $hideHeader && css`
1133
+ border-top-right-radius: ${BorderRadius.Md};
1134
+ `}
1135
+ `;
1136
+ const stickyContentColumn = (isReorderable, stickyHeader) => css`
1121
1137
  && thead th:first-child,
1122
1138
  && tbody td:first-child {
1123
1139
  position: sticky;
1124
1140
  left: 0;
1125
- z-index: 2;
1141
+ z-index: ${STICKY_COLUMN_Z_INDEX};
1126
1142
  }
1127
1143
 
1128
1144
  && tbody td:first-child {
@@ -1134,13 +1150,26 @@ const stickyContentColumn = (isReorderable) => css`
1134
1150
  && tbody td:nth-child(2) {
1135
1151
  position: sticky;
1136
1152
  left: ${DRAG_HANDLE_CELL_WIDTH}px;
1137
- z-index: 2;
1153
+ z-index: ${STICKY_COLUMN_Z_INDEX};
1138
1154
  }
1139
1155
 
1140
1156
  && tbody td:nth-child(2) {
1141
1157
  background-color: inherit;
1142
1158
  }
1143
1159
  `}
1160
+
1161
+ ${stickyHeader && css`
1162
+ && thead th {
1163
+ position: sticky;
1164
+ top: 0;
1165
+ z-index: ${STICKY_HEADER_Z_INDEX};
1166
+ background-color: ${Color.BackgroundSecondary};
1167
+ }
1168
+
1169
+ ${isReorderable ? `&& thead th:nth-child(-n+2)` : `&& thead th:first-child`} {
1170
+ z-index: ${STICKY_CORNER_Z_INDEX};
1171
+ }
1172
+ `}
1144
1173
  `;
1145
1174
  const StyledTable = styled(Table)`
1146
1175
  caret-color: ${Color.BorderFocus};
@@ -1149,10 +1178,19 @@ const StyledTable = styled(Table)`
1149
1178
  background: ${Color.BackgroundLabelPurple};
1150
1179
  }
1151
1180
 
1152
- ${({ $fixedLayout, $isReorderable }) => $fixedLayout ? css`
1181
+ ${({ $fixedLayout, $isReorderable, $stickyHeader }) => $fixedLayout ? css`
1153
1182
  /* Legacy: truncate long cell content to container width. */
1154
1183
  table-layout: fixed;
1155
- ` : stickyContentColumn($isReorderable)}
1184
+
1185
+ ${$stickyHeader && css`
1186
+ && thead th {
1187
+ position: sticky;
1188
+ top: 0;
1189
+ z-index: ${STICKY_HEADER_Z_INDEX};
1190
+ background-color: ${Color.BackgroundSecondary};
1191
+ }
1192
+ `}
1193
+ ` : stickyContentColumn($isReorderable, $stickyHeader)}
1156
1194
 
1157
1195
  /* Lock column widths while inline editing to prevent layout reflow. */
1158
1196
  ${({ $fixedLayout, $lockedWidth }) => !$fixedLayout && $lockedWidth != null && css`
@@ -1200,7 +1238,7 @@ const DragHandleHeaderCell = styled(StyledTableHeaderCell)`
1200
1238
  const PinnedActionsCell = styled(TableCell)`
1201
1239
  position: sticky;
1202
1240
  right: 0;
1203
- z-index: 4;
1241
+ z-index: ${PINNED_ACTIONS_Z_INDEX};
1204
1242
  background: transparent;
1205
1243
  border-bottom: 1px solid ${Color.BorderHairline};
1206
1244
  padding: 0;
@@ -1209,7 +1247,9 @@ const PinnedActionsCell = styled(TableCell)`
1209
1247
  `;
1210
1248
  const EmptyStateCell = styled(TableCell)`
1211
1249
  ${paragraphMixins.sm};
1212
- padding: ${Spacing[2]};
1250
+ /* Same vertical padding as TableBoxCell so empty and populated tables share a
1251
+ stable row height. */
1252
+ padding: ${Spacing[1]} ${Spacing[2]};
1213
1253
  color: ${Color.TextSecondary};
1214
1254
  border-bottom: none;
1215
1255
  `;
@@ -1222,14 +1262,14 @@ const EmptyStateButton = styled.button`
1222
1262
  cursor: pointer;
1223
1263
  ${focusOutline}
1224
1264
  `;
1225
- const TableBox = ({ children, emptyText, selectedKey, defaultSelectedKey, columns, onSelectionChange, selectionMode = "none", newRowId, onCreateNewRow: onCreateNewRowProp, disabled = false, reorderConfig, disableHorizontalScroll: disableHorizontalScrollProp = false, hideHeader = false, "aria-label": ariaLabel, ...props }) => {
1265
+ const TableBox = ({ children, emptyText, selectedKey, defaultSelectedKey, columns, onSelectionChange, selectionMode = "none", newRowId, onCreateNewRow: onCreateNewRowProp, disabled = false, reorderConfig, disableHorizontalScroll: disableHorizontalScrollProp = false, hideHeader = false, maxHeight, "aria-label": ariaLabel, ...props }) => {
1226
1266
  const tableRef = useRef(null);
1227
1267
  const scrollContainerRef = useRef(null);
1228
1268
  const tableBoxId = useMemo(() => uniqueId("tablebox-"), []);
1229
1269
  const rowDropdownId = `${tableBoxId}-row-dropdown`;
1230
1270
  const hasInlineEditableColumn = columns.some((c) => c.inlineEditConfig != null);
1231
1271
  const disableHorizontalScroll = disableHorizontalScrollProp || hasInlineEditableColumn;
1232
- const { hasHorizontalOverflow, hasMoreScrollRight } = useScrollOverflow(scrollContainerRef, { enabled: !disableHorizontalScroll });
1272
+ const { hasHorizontalOverflow, hasMoreScrollRight, scrollbarSize } = useScrollOverflow(scrollContainerRef, { enabled: !disableHorizontalScroll });
1233
1273
  const { lockedColWidths, setColumnWidthsLocked } = useColumnWidthLock(tableRef, { enabled: !disableHorizontalScroll });
1234
1274
  const [internalSelectedKey, setInternalSelectedKey] = useState(defaultSelectedKey ?? null);
1235
1275
  const [shouldCreateNewRowAfterCommit, setShouldCreateNewRowAfterCommit] = useState(false);
@@ -1271,6 +1311,7 @@ const TableBox = ({ children, emptyText, selectedKey, defaultSelectedKey, column
1271
1311
  });
1272
1312
  const isReorderable = !disabled && reorderConfig != null;
1273
1313
  const hasActionsColumn = !disableHorizontalScroll;
1314
+ const stickyHeader = maxHeight != null && !hideHeader;
1274
1315
  const contextValue = {
1275
1316
  disabled,
1276
1317
  newRowId,
@@ -1285,6 +1326,7 @@ const TableBox = ({ children, emptyText, selectedKey, defaultSelectedKey, column
1285
1326
  draggedDirection,
1286
1327
  hasActionsColumn,
1287
1328
  hasHorizontalOverflow,
1329
+ clipsOverflow: hasHorizontalOverflow || maxHeight != null,
1288
1330
  setColumnWidthsLocked,
1289
1331
  scheduleCreateNewRowAfterCommit: onCreateNewRowProp ? scheduleCreateNewRowAfterCommit : void 0
1290
1332
  };
@@ -1295,6 +1337,7 @@ const TableBox = ({ children, emptyText, selectedKey, defaultSelectedKey, column
1295
1337
  ref: scrollContainerRef,
1296
1338
  $fixedLayout: disableHorizontalScroll,
1297
1339
  $hasHorizontalOverflow: hasHorizontalOverflow,
1340
+ $maxHeight: maxHeight,
1298
1341
  children: /* @__PURE__ */ jsxs(StyledTable, {
1299
1342
  ref: tableRef,
1300
1343
  size: "md",
@@ -1304,6 +1347,7 @@ const TableBox = ({ children, emptyText, selectedKey, defaultSelectedKey, column
1304
1347
  $hasHorizontalOverflow: hasHorizontalOverflow,
1305
1348
  $fixedLayout: disableHorizontalScroll,
1306
1349
  $hideHeader: hideHeader,
1350
+ $stickyHeader: stickyHeader,
1307
1351
  $lockedWidth: lockedColWidths != null ? lockedColWidths.reduce((sum, w) => sum + w, 0) : void 0,
1308
1352
  ...props,
1309
1353
  children: [
@@ -1329,10 +1373,17 @@ const TableBox = ({ children, emptyText, selectedKey, defaultSelectedKey, column
1329
1373
  }) : children })
1330
1374
  ]
1331
1375
  })
1332
- }), !disableHorizontalScroll && /* @__PURE__ */ jsx(RightFadeOverlay, {
1376
+ }), !disableHorizontalScroll && /* @__PURE__ */ jsxs(Fragment, { children: [!hideHeader && /* @__PURE__ */ jsx(HeaderFadeOverlay, {
1377
+ "aria-hidden": "true",
1378
+ $visible: hasMoreScrollRight,
1379
+ $scrollbarWidth: scrollbarSize.vertical
1380
+ }), /* @__PURE__ */ jsx(BodyFadeOverlay, {
1333
1381
  "aria-hidden": "true",
1334
- $visible: hasMoreScrollRight
1335
- })] });
1382
+ $visible: hasMoreScrollRight,
1383
+ $hideHeader: hideHeader,
1384
+ $scrollbarWidth: scrollbarSize.vertical,
1385
+ $scrollbarHeight: scrollbarSize.horizontal
1386
+ })] })] });
1336
1387
  return /* @__PURE__ */ jsx(TableBoxContext.Provider, {
1337
1388
  value: contextValue,
1338
1389
  children: isReorderable ? /* @__PURE__ */ jsxs(DndContext, {
@@ -1353,4 +1404,4 @@ TableBox.Cell = TableBoxCell;
1353
1404
  //#endregion
1354
1405
  export { TableBoxContext as n, TableBox as t };
1355
1406
 
1356
- //# sourceMappingURL=TableBox-DIJffyts.mjs.map
1407
+ //# sourceMappingURL=TableBox-bmrKh_ax.mjs.map