@persona/design-system 0.9.1 → 0.10.0

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 (586) hide show
  1. package/CHANGELOG.md +43 -0
  2. package/README.md +1 -1
  3. package/dist/Accordion.d.mts +1 -1
  4. package/dist/AccordionItem.d.mts +1 -1
  5. package/dist/{Action-BleGvmsy.d.mts → Action-DT8WqfEg.d.mts} +3 -3
  6. package/dist/Action.d.mts +1 -1
  7. package/dist/AdvancedFilterRuleRow.d.mts +2 -2
  8. package/dist/AdvancedFilterRulesPopover.d.mts +2 -2
  9. package/dist/ArrayValueControl.d.mts +1 -1
  10. package/dist/Attribute.d.mts +4 -4
  11. package/dist/{Badge-BYa-iqNE.mjs → Badge-Bvn3afds.mjs} +2 -2
  12. package/dist/{Badge-BYa-iqNE.mjs.map → Badge-Bvn3afds.mjs.map} +1 -1
  13. package/dist/BooleanValueControl.d.mts +1 -1
  14. package/dist/{Breadcrumb-CEHEUe8l.d.mts → Breadcrumb-BDbY1Ffu.d.mts} +1 -1
  15. package/dist/Breadcrumb.d.mts +1 -1
  16. package/dist/{Breadcrumbs-BQ-Gj6UV.d.mts → Breadcrumbs-C2ThOYJ-.d.mts} +2 -2
  17. package/dist/{Breadcrumbs-BmlndU4V.mjs → Breadcrumbs-CQUe9VTM.mjs} +8 -8
  18. package/dist/{Breadcrumbs-BmlndU4V.mjs.map → Breadcrumbs-CQUe9VTM.mjs.map} +1 -1
  19. package/dist/Breadcrumbs.d.mts +1 -1
  20. package/dist/{Button-Dx7mHjWC.d.mts → Button-CyjqQa5v.d.mts} +5 -5
  21. package/dist/Button.d.mts +1 -1
  22. package/dist/{Calendar-BvsTQ3e1.d.mts → Calendar-DAfQCLOJ.d.mts} +1 -1
  23. package/dist/Calendar.d.mts +1 -1
  24. package/dist/CalendarBase.d.mts +1 -1
  25. package/dist/{Card-BPY0OU7e.d.mts → Card-CzRHVUFo.d.mts} +4 -4
  26. package/dist/Card.d.mts +1 -1
  27. package/dist/Card2.d.mts +1 -1
  28. package/dist/CardGrouping.d.mts +2 -2
  29. package/dist/{CardV2-Cq4QODeE.mjs → CardV2-Dp4eHSE-.mjs} +11 -11
  30. package/dist/{CardV2-Cq4QODeE.mjs.map → CardV2-Dp4eHSE-.mjs.map} +1 -1
  31. package/dist/{Checkbox-CVa8WOf2.d.mts → Checkbox-B2MZShdu.d.mts} +1 -1
  32. package/dist/{Checkbox-Cttn1t8T.mjs → Checkbox-BaJ-dGdX.mjs} +5 -5
  33. package/dist/{Checkbox-Cttn1t8T.mjs.map → Checkbox-BaJ-dGdX.mjs.map} +1 -1
  34. package/dist/Checkbox.d.mts +1 -1
  35. package/dist/{CheckboxGroupField-BpHN_2QP.d.mts → CheckboxGroupField-BYB4OBlW.d.mts} +3 -3
  36. package/dist/CheckboxGroupField.d.mts +1 -1
  37. package/dist/ChoicesValueControl.d.mts +1 -1
  38. package/dist/{Combobox-CsXnJKvB.mjs → Combobox-CcFJo68g.mjs} +19 -11
  39. package/dist/Combobox-CcFJo68g.mjs.map +1 -0
  40. package/dist/{Combobox-C4C2P8lF.d.mts → Combobox-DH5ycYlG.d.mts} +3 -3
  41. package/dist/Combobox.d.mts +2 -2
  42. package/dist/{ComboboxBase-2nVpt8oj.d.mts → ComboboxBase-BQQSKUBU.d.mts} +7 -7
  43. package/dist/ComboboxBase.d.mts +1 -1
  44. package/dist/{ComboboxMultiSelect-BvJ--m6z.d.mts → ComboboxMultiSelect-Da3Gv1k5.d.mts} +2 -2
  45. package/dist/ComboboxMultiSelect.d.mts +1 -1
  46. package/dist/{ComboboxSingleSelect-BWrnRA2x.d.mts → ComboboxSingleSelect-BUDovONU.d.mts} +4 -4
  47. package/dist/ComboboxSingleSelect.d.mts +1 -1
  48. package/dist/{CompactBar-CmTT9iuT.d.mts → CompactBar-D12R7Nm2.d.mts} +3 -3
  49. package/dist/CompactBar.d.mts +1 -1
  50. package/dist/{ConfigFormGroup-C0orlWwb.mjs → ConfigFormGroup-CidT_cE9.mjs} +2 -2
  51. package/dist/{ConfigFormGroup-C0orlWwb.mjs.map → ConfigFormGroup-CidT_cE9.mjs.map} +1 -1
  52. package/dist/{ControlBar-Cg36sjz3.d.mts → ControlBar-D9KflqmH.d.mts} +22 -9
  53. package/dist/ControlBar.d.mts +1 -1
  54. package/dist/DataTable-95ZxiPlV.mjs +1547 -0
  55. package/dist/DataTable-95ZxiPlV.mjs.map +1 -0
  56. package/dist/DataTable-fZ7SNbIH.d.mts +439 -0
  57. package/dist/DataTable.d.mts +2 -396
  58. package/dist/{DateField-BXUuqbnb.d.mts → DateField-DLz13Ksl.d.mts} +2 -2
  59. package/dist/DateField.d.mts +1 -1
  60. package/dist/{DatePicker-DQHVCGnP.mjs → DatePicker-D0cvVbzq.mjs} +374 -374
  61. package/dist/DatePicker-D0cvVbzq.mjs.map +1 -0
  62. package/dist/{DatePicker-Cmn1vViU.d.mts → DatePicker-DYVWmbrb.d.mts} +2 -2
  63. package/dist/DatePicker.d.mts +1 -1
  64. package/dist/{DateRangePicker-CKhp9Obv.d.mts → DateRangePicker-Be8TYtjz.d.mts} +3 -3
  65. package/dist/DateRangePicker.d.mts +1 -1
  66. package/dist/DateRangeValueControl.d.mts +2 -2
  67. package/dist/DateValueControl.d.mts +1 -1
  68. package/dist/{DropdownButton-C9wWnB5w.mjs → DropdownButton-5oNcpsOq.mjs} +3 -3
  69. package/dist/{DropdownButton-C9wWnB5w.mjs.map → DropdownButton-5oNcpsOq.mjs.map} +1 -1
  70. package/dist/DropdownButton.d.mts +2 -2
  71. package/dist/{DropdownMenu-CPE8Q56k.mjs → DropdownMenu-CedsmO5h.mjs} +2 -2
  72. package/dist/{DropdownMenu-CPE8Q56k.mjs.map → DropdownMenu-CedsmO5h.mjs.map} +1 -1
  73. package/dist/{DropdownMenu-BZ62b8Cv.d.mts → DropdownMenu-DAa2kNrt.d.mts} +3 -3
  74. package/dist/DropdownMenu.d.mts +1 -1
  75. package/dist/{ErrorProps-oCHtJzEB.d.mts → ErrorProps-DH0fzeGf.d.mts} +1 -1
  76. package/dist/ErrorProps.d.mts +1 -1
  77. package/dist/{FieldRegistry-DAk_3PhH.d.mts → FieldRegistry-d5tGpSch.d.mts} +2 -2
  78. package/dist/FieldRegistry.d.mts +1 -1
  79. package/dist/{FilterBar-C7ch6kYM.d.mts → FilterBar-Bh18VyOK.d.mts} +4 -4
  80. package/dist/FilterBar.d.mts +1 -1
  81. package/dist/FilterPickerMenu.d.mts +2 -2
  82. package/dist/FilterPill.d.mts +1 -1
  83. package/dist/FilterPopover.d.mts +1 -1
  84. package/dist/FloatValueControl.d.mts +1 -1
  85. package/dist/FloatingActionBar-CpvLefPm.d.mts +41 -0
  86. package/dist/FloatingActionBar.d.mts +2 -41
  87. package/dist/{FormControl-CD_FdAXA.mjs → FormControl-C4CiA0H-.mjs} +4 -4
  88. package/dist/{FormControl-CD_FdAXA.mjs.map → FormControl-C4CiA0H-.mjs.map} +1 -1
  89. package/dist/{FormControl-DX4vtUp6.d.mts → FormControl-DEG_0oXt.d.mts} +3 -3
  90. package/dist/FormControl.d.mts +1 -1
  91. package/dist/FormControlLabel.d.mts +2 -2
  92. package/dist/{FormField-DjysBTKn.mjs → FormField-cSG93kuo.mjs} +15 -15
  93. package/dist/{FormField-DjysBTKn.mjs.map → FormField-cSG93kuo.mjs.map} +1 -1
  94. package/dist/{FormField-C80kGAIV.d.mts → FormField-mLbXDJ9B.d.mts} +2 -2
  95. package/dist/FormField.d.mts +1 -1
  96. package/dist/{Grid-D0mlxk8_.mjs → Grid-DXVkhyNQ.mjs} +1 -1
  97. package/dist/{Grid-D0mlxk8_.mjs.map → Grid-DXVkhyNQ.mjs.map} +1 -1
  98. package/dist/{Header-C-a5fL3k.d.mts → Header-ayDu4VWE.d.mts} +2 -2
  99. package/dist/Header.d.mts +1 -1
  100. package/dist/{HelperTooltip-hhMFkKmn.d.mts → HelperTooltip-BB9Vznnx.d.mts} +2 -2
  101. package/dist/HelperTooltip.d.mts +1 -1
  102. package/dist/HighlightedText.d.mts +3 -3
  103. package/dist/{HoverCopyableField-Cgu3W31s.mjs → HoverCopyableField-D-BubaRd.mjs} +4 -4
  104. package/dist/{HoverCopyableField-Cgu3W31s.mjs.map → HoverCopyableField-D-BubaRd.mjs.map} +1 -1
  105. package/dist/{I18nContext-ioYM_vqG.d.mts → I18nContext-TXS9M8t5.d.mts} +2 -2
  106. package/dist/I18nContext.d.mts +1 -1
  107. package/dist/{IconButton-DJ3L_ZqN.d.mts → IconButton-Bigvu1Q4.d.mts} +2 -2
  108. package/dist/{IconButton-D4awF770.mjs → IconButton-HWx5Hlmi.mjs} +14 -11
  109. package/dist/{IconButton-D4awF770.mjs.map → IconButton-HWx5Hlmi.mjs.map} +1 -1
  110. package/dist/IconButton.d.mts +1 -1
  111. package/dist/ImageTile.d.mts +4 -3
  112. package/dist/IndexTableLayout.d.mts +45 -0
  113. package/dist/InlineCombobox.d.mts +1 -1
  114. package/dist/InlineInput.d.mts +1 -1
  115. package/dist/{Input-D3lXfJHq.d.mts → Input-Bg4bi6VZ.d.mts} +4 -4
  116. package/dist/{Input-DD4jzJhK.mjs → Input-Dap055xf.mjs} +5 -5
  117. package/dist/{Input-DD4jzJhK.mjs.map → Input-Dap055xf.mjs.map} +1 -1
  118. package/dist/Input.d.mts +1 -1
  119. package/dist/{InputProps-BU9iiBBz.d.mts → InputProps-Bl-G826g.d.mts} +2 -2
  120. package/dist/InputProps.d.mts +1 -1
  121. package/dist/Inserter-BKVrJ4M5.d.mts +12 -0
  122. package/dist/Inserter.d.mts +2 -12
  123. package/dist/IntegerValueControl.d.mts +1 -1
  124. package/dist/{Link-DGZu4J0x.mjs → Link-Cf__H8gD.mjs} +4 -4
  125. package/dist/{Link-DGZu4J0x.mjs.map → Link-Cf__H8gD.mjs.map} +1 -1
  126. package/dist/Link.d.mts +1 -1
  127. package/dist/{ListBox-CjGb0mMY.d.mts → ListBox-Bj5c626-.d.mts} +3 -3
  128. package/dist/{ListBox-BhWLad_L.mjs → ListBox-C80J7DCG.mjs} +12 -12
  129. package/dist/{ListBox-BhWLad_L.mjs.map → ListBox-C80J7DCG.mjs.map} +1 -1
  130. package/dist/ListBox.d.mts +1 -1
  131. package/dist/{ListBoxField-BUkPeLiB.d.mts → ListBoxField-DsJRabgE.d.mts} +4 -4
  132. package/dist/ListBoxField.d.mts +1 -1
  133. package/dist/LoadingShimmer.d.mts +2 -2
  134. package/dist/{LogicRow-Bt6NPLOd.d.mts → LogicRow-CcpD-Kk3.d.mts} +3 -3
  135. package/dist/LogicRow.d.mts +1 -1
  136. package/dist/MaskedInput.d.mts +1 -1
  137. package/dist/MatchHighlight.d.mts +1 -1
  138. package/dist/{Menu-BMrsN-Jz.d.mts → Menu-C0FU9WEF.d.mts} +4 -4
  139. package/dist/{Menu-DlN0A5Nb.mjs → Menu-Dw6Rcpk6.mjs} +4 -4
  140. package/dist/{Menu-DlN0A5Nb.mjs.map → Menu-Dw6Rcpk6.mjs.map} +1 -1
  141. package/dist/Menu.d.mts +1 -1
  142. package/dist/{Modal-BoeGuR-h.d.mts → Modal-BuxggahW.d.mts} +7 -3
  143. package/dist/{Modal-Cs5cZpEr.mjs → Modal-kjUptzg1.mjs} +8 -6
  144. package/dist/Modal-kjUptzg1.mjs.map +1 -0
  145. package/dist/Modal.d.mts +1 -1
  146. package/dist/PageHeader-Czj42pyK.d.mts +40 -0
  147. package/dist/{PageHeader-CCoAJUwJ.mjs → PageHeader-DJF7nxgN.mjs} +2 -2
  148. package/dist/{PageHeader-CCoAJUwJ.mjs.map → PageHeader-DJF7nxgN.mjs.map} +1 -1
  149. package/dist/PageHeader.d.mts +2 -40
  150. package/dist/{PageLayout-BlCo4hN4.d.mts → PageLayout-TBemv7oL.d.mts} +2 -2
  151. package/dist/{PageLayout-C7ZC7GBA.mjs → PageLayout-fXJW7daI.mjs} +2 -2
  152. package/dist/{PageLayout-C7ZC7GBA.mjs.map → PageLayout-fXJW7daI.mjs.map} +1 -1
  153. package/dist/PageLayout.d.mts +1 -1
  154. package/dist/{PageLayoutFrame--HlvI4Pp.d.mts → PageLayoutFrame-DzwlkNZ1.d.mts} +1 -1
  155. package/dist/PageLayoutFrame.d.mts +1 -1
  156. package/dist/{PageSelector-BmevrorJ.d.mts → PageSelector-DXCeBUoU.d.mts} +3 -3
  157. package/dist/PageSelector.d.mts +1 -1
  158. package/dist/{Pagination-C67fsrxl.d.mts → Pagination-COcFWlha.d.mts} +2 -2
  159. package/dist/{Pagination-Du2CPW2l.mjs → Pagination-DtK-jbEY.mjs} +5 -5
  160. package/dist/{Pagination-Du2CPW2l.mjs.map → Pagination-DtK-jbEY.mjs.map} +1 -1
  161. package/dist/Pagination.d.mts +1 -1
  162. package/dist/{Pii-CFVWZ_Yx.mjs → Pii-DueIK287.mjs} +2 -2
  163. package/dist/{Pii-CFVWZ_Yx.mjs.map → Pii-DueIK287.mjs.map} +1 -1
  164. package/dist/{PillShell-jr6OyAd3.d.mts → PillShell-CXROf8gO.d.mts} +2 -2
  165. package/dist/PillShell.d.mts +1 -1
  166. package/dist/{Popover-DewrGOJB.mjs → Popover-BcII7usF.mjs} +2 -2
  167. package/dist/{Popover-DewrGOJB.mjs.map → Popover-BcII7usF.mjs.map} +1 -1
  168. package/dist/{ProgressIndicator-CdhC2LVI.d.mts → ProgressIndicator-C5sbFQcd.d.mts} +1 -1
  169. package/dist/{ProgressIndicator-xV5Cl2Bw.mjs → ProgressIndicator-CM37EU1B.mjs} +3 -3
  170. package/dist/{ProgressIndicator-xV5Cl2Bw.mjs.map → ProgressIndicator-CM37EU1B.mjs.map} +1 -1
  171. package/dist/ProgressIndicator.d.mts +1 -1
  172. package/dist/{PseudoClassProps-CverE9Ni.d.mts → PseudoClassProps-BFFh2-u8.d.mts} +1 -1
  173. package/dist/PseudoClassProps.d.mts +1 -1
  174. package/dist/{Radio-i7AEQZHb.mjs → Radio-DDT_l8rd.mjs} +4 -4
  175. package/dist/{Radio-i7AEQZHb.mjs.map → Radio-DDT_l8rd.mjs.map} +1 -1
  176. package/dist/{RadioGroup-CDEfCg-b.d.mts → RadioGroup-BxEmipHa.d.mts} +1 -1
  177. package/dist/{RadioGroup-B0KcQpS7.mjs → RadioGroup-CmD8NFCL.mjs} +2 -2
  178. package/dist/{RadioGroup-B0KcQpS7.mjs.map → RadioGroup-CmD8NFCL.mjs.map} +1 -1
  179. package/dist/RadioGroup.d.mts +1 -1
  180. package/dist/{RangeCalendar-BOt59kTG.d.mts → RangeCalendar-cZSYjuOZ.d.mts} +2 -2
  181. package/dist/RangeCalendar.d.mts +1 -1
  182. package/dist/RangeCalendarPresets.d.mts +1 -1
  183. package/dist/{RouterContext-D7HBESqO.d.mts → RouterContext-CoDbEb_X.d.mts} +2 -2
  184. package/dist/RouterContext.d.mts +1 -1
  185. package/dist/{RouterLink-dppNWLgP.d.mts → RouterLink-BnIEi8d4.d.mts} +2 -2
  186. package/dist/RouterLink.d.mts +1 -1
  187. package/dist/RuleEditorFields.d.mts +2 -2
  188. package/dist/RulesPill.d.mts +1 -1
  189. package/dist/{SearchInput-B7JYHJZI.d.mts → SearchInput-DLC7-A7K.d.mts} +2 -2
  190. package/dist/SearchInput.d.mts +1 -1
  191. package/dist/SectionHeading.d.mts +1 -1
  192. package/dist/{SegmentedControl-B2_bS806.mjs → SegmentedControl-CcKPfxBR.mjs} +2 -2
  193. package/dist/{SegmentedControl-B2_bS806.mjs.map → SegmentedControl-CcKPfxBR.mjs.map} +1 -1
  194. package/dist/{SegmentedControl-C_7mTcuL.d.mts → SegmentedControl-xjU-2IsJ.d.mts} +1 -1
  195. package/dist/SegmentedControl.d.mts +1 -1
  196. package/dist/{Select-oVJ0uLa7.mjs → Select-BJ9ACmRD.mjs} +8 -8
  197. package/dist/{Select-oVJ0uLa7.mjs.map → Select-BJ9ACmRD.mjs.map} +1 -1
  198. package/dist/{Select-BpAA5ETS.d.mts → Select-sBEBrNgo.d.mts} +3 -3
  199. package/dist/Select.d.mts +1 -1
  200. package/dist/{SingleColumnLayout-ByWxiD7d.d.mts → SingleColumnLayout-CBynMc76.d.mts} +2 -2
  201. package/dist/SingleColumnLayout.d.mts +1 -1
  202. package/dist/SmartTextInput.d.mts +6 -6
  203. package/dist/SmartTextInputField.d.mts +2 -2
  204. package/dist/SmartTextInputFunctionDialog.d.mts +4 -4
  205. package/dist/SmartTextInputListbox.d.mts +2 -2
  206. package/dist/SmartTextInputPopover.d.mts +2 -2
  207. package/dist/{Spinner-0Vqw_68r.mjs → Spinner-uVZyOh1T.mjs} +2 -2
  208. package/dist/{Spinner-0Vqw_68r.mjs.map → Spinner-uVZyOh1T.mjs.map} +1 -1
  209. package/dist/{SplitColumnLayout-DYyJabQ3.d.mts → SplitColumnLayout-BVzGbEDC.d.mts} +2 -2
  210. package/dist/SplitColumnLayout.d.mts +1 -1
  211. package/dist/{Stack-DpWl6orU.d.mts → Stack-BZyboHQl.d.mts} +2 -2
  212. package/dist/Stack.d.mts +1 -1
  213. package/dist/{StatusIndicator-QsVgjRrt.mjs → StatusIndicator-Bunn9YLV.mjs} +3 -3
  214. package/dist/{StatusIndicator-QsVgjRrt.mjs.map → StatusIndicator-Bunn9YLV.mjs.map} +1 -1
  215. package/dist/{Sticker-C260e6kl.d.mts → Sticker-CsUSNIH-.d.mts} +5 -5
  216. package/dist/{Sticker-CUqHa9Mo.mjs → Sticker-yhxtIYH8.mjs} +5 -5
  217. package/dist/{Sticker-CUqHa9Mo.mjs.map → Sticker-yhxtIYH8.mjs.map} +1 -1
  218. package/dist/Sticker.d.mts +1 -1
  219. package/dist/StringValueControl.d.mts +1 -1
  220. package/dist/Tab.d.mts +2 -2
  221. package/dist/{TabBar-w_gxXSwA.mjs → TabBar-SX8E9-Bk.mjs} +5 -5
  222. package/dist/{TabBar-w_gxXSwA.mjs.map → TabBar-SX8E9-Bk.mjs.map} +1 -1
  223. package/dist/{Table-PbYGf3PG.mjs → Table--o4ZLRbb.mjs} +8 -8
  224. package/dist/{Table-PbYGf3PG.mjs.map → Table--o4ZLRbb.mjs.map} +1 -1
  225. package/dist/{Table-BtNYI6QX.d.mts → Table-CadXF71E.d.mts} +1 -1
  226. package/dist/Table.d.mts +1 -1
  227. package/dist/{TableBody-DQ7pivxP.d.mts → TableBody-BKSHNSTo.d.mts} +1 -1
  228. package/dist/TableBody.d.mts +1 -1
  229. package/dist/{TableBox-DMYLTIpr.mjs → TableBox-3qunC9Nl.mjs} +13 -13
  230. package/dist/{TableBox-DMYLTIpr.mjs.map → TableBox-3qunC9Nl.mjs.map} +1 -1
  231. package/dist/TableBox.d.mts +2 -2
  232. package/dist/{TableBoxCell-DwAOA-oO.d.mts → TableBoxCell-BRECnVTs.d.mts} +7 -7
  233. package/dist/TableBoxCell.d.mts +1 -1
  234. package/dist/{TableBoxField-Bdj_nY7j.d.mts → TableBoxField-Lm_tn73M.d.mts} +5 -5
  235. package/dist/TableBoxField.d.mts +1 -1
  236. package/dist/{TableBoxRow-5WBwyAyn.d.mts → TableBoxRow-BS8Dc-zw.d.mts} +3 -3
  237. package/dist/TableBoxRow.d.mts +1 -1
  238. package/dist/{TableBoxRowActions-Dq_Z2ted.d.mts → TableBoxRowActions-oLMb8XcM.d.mts} +2 -2
  239. package/dist/TableBoxRowActions.d.mts +1 -1
  240. package/dist/{TableCell-DXBHZ52E.d.mts → TableCell-4u5_BgTC.d.mts} +3 -3
  241. package/dist/TableCell.d.mts +1 -1
  242. package/dist/{TableControls-C1MF2JvY.mjs → TableControls-DxSFqRwJ.mjs} +623 -131
  243. package/dist/TableControls-DxSFqRwJ.mjs.map +1 -0
  244. package/dist/{TableControls-Cw7LDHWj.d.mts → TableControls-UfObf-ZN.d.mts} +14 -7
  245. package/dist/TableControls.d.mts +1 -1
  246. package/dist/{TableControlsContext-DgoZhMpQ.d.mts → TableControlsContext-Bhtb0cMs.d.mts} +4 -4
  247. package/dist/TableControlsContext.d.mts +1 -1
  248. package/dist/{TableHead-BGUg_aXc.d.mts → TableHead-BuCQeDAq.d.mts} +1 -1
  249. package/dist/TableHead.d.mts +1 -1
  250. package/dist/{TableHeaderCell-DcZcMQyR.d.mts → TableHeaderCell-DIcQlZps.d.mts} +1 -1
  251. package/dist/TableHeaderCell.d.mts +1 -1
  252. package/dist/{TableLayout-CwYQaZlA.d.mts → TableLayout-ScEVdvvA.d.mts} +1 -1
  253. package/dist/TableLayout.d.mts +1 -1
  254. package/dist/{TableRow-Dad6_CoD.d.mts → TableRow-lCsvG0a-.d.mts} +2 -2
  255. package/dist/TableRow.d.mts +1 -1
  256. package/dist/TableTH.d.mts +1 -1
  257. package/dist/{TableViewConfigurationDropdown-BGuWAarQ.d.mts → TableViewConfigurationDropdown-BDXe2Q1Y.d.mts} +2 -2
  258. package/dist/TableViewConfigurationDropdown.d.mts +1 -1
  259. package/dist/{TechnicalSticker-RQ-4_Tdr.mjs → TechnicalSticker-CALVwnrT.mjs} +5 -5
  260. package/dist/{TechnicalSticker-RQ-4_Tdr.mjs.map → TechnicalSticker-CALVwnrT.mjs.map} +1 -1
  261. package/dist/{Text-BBMau410.d.mts → Text-RSzei6Se.d.mts} +4 -4
  262. package/dist/Text.d.mts +1 -1
  263. package/dist/{TextArea-BaA8H7s7.mjs → TextArea-CFf0Lspu.mjs} +2 -2
  264. package/dist/{TextArea-BaA8H7s7.mjs.map → TextArea-CFf0Lspu.mjs.map} +1 -1
  265. package/dist/{TextArea-Djd1uT3B.d.mts → TextArea-DFn4XuG-.d.mts} +2 -2
  266. package/dist/TextArea.d.mts +1 -1
  267. package/dist/{TextUnderlineTooltip-C4N0bqbh.d.mts → TextUnderlineTooltip-B0iYaPM1.d.mts} +3 -3
  268. package/dist/TextUnderlineTooltip.d.mts +1 -1
  269. package/dist/Tile.d.mts +1 -1
  270. package/dist/Toast.d.mts +1 -1
  271. package/dist/{Toggle-C9cZnajR.mjs → Toggle-BLdemkh_.mjs} +6 -6
  272. package/dist/{Toggle-C9cZnajR.mjs.map → Toggle-BLdemkh_.mjs.map} +1 -1
  273. package/dist/{Toggle-EYpW34LO.d.mts → Toggle-xtPgGaGD.d.mts} +1 -1
  274. package/dist/Toggle.d.mts +1 -1
  275. package/dist/{Tooltip-DogEteGl.mjs → Tooltip-B-0VRuKT.mjs} +2 -2
  276. package/dist/{Tooltip-DogEteGl.mjs.map → Tooltip-B-0VRuKT.mjs.map} +1 -1
  277. package/dist/{Tooltip-Dj-DtGKz.d.mts → Tooltip-Blfhi2gT.d.mts} +3 -3
  278. package/dist/Tooltip.d.mts +1 -1
  279. package/dist/{TruncatedText-BDNFUuhG.d.mts → TruncatedText-BMQmveJG.d.mts} +2 -2
  280. package/dist/VersionHistory.d.mts +1 -1
  281. package/dist/{VersionHistoryItem-iUabmk_y.d.mts → VersionHistoryItem-BExp7oSr.d.mts} +1 -1
  282. package/dist/VersionHistoryItem.d.mts +1 -1
  283. package/dist/WizardModal.d.mts +2 -2
  284. package/dist/{accordionTitleTypography-C7VVJvlx.d.mts → accordionTitleTypography-PMKnfoy0.d.mts} +2 -2
  285. package/dist/accordionTitleTypography.d.mts +1 -1
  286. package/dist/{chainTypes-DT-9j_sG.d.mts → chainTypes-BbFZn8a9.d.mts} +4 -4
  287. package/dist/clientFilterUtils-c5xzvoBj.d.mts +20 -0
  288. package/dist/clientFilterUtils.d.mts +2 -0
  289. package/dist/{codec-CGj8cwcj.d.mts → codec-DIp7dhcN.d.mts} +2 -2
  290. package/dist/codec.d.mts +1 -1
  291. package/dist/{color-BOm5A1Si.d.mts → color-C5B1pN1D.d.mts} +2 -2
  292. package/dist/components/Accordion/index.d.mts +1 -1
  293. package/dist/components/Accordion/index.mjs +4 -4
  294. package/dist/components/Attribute/index.mjs +4 -4
  295. package/dist/components/Badge/index.mjs +1 -1
  296. package/dist/components/Banner/index.mjs +3 -3
  297. package/dist/components/BottomPanel/index.mjs +4 -4
  298. package/dist/components/Breadcrumbs/index.d.mts +1 -1
  299. package/dist/components/Breadcrumbs/index.mjs +1 -1
  300. package/dist/components/Button/index.d.mts +2 -2
  301. package/dist/components/Button/index.mjs +1 -1
  302. package/dist/components/ButtonGroup/index.mjs +2 -2
  303. package/dist/components/Card/index.d.mts +2 -2
  304. package/dist/components/CardV2/index.d.mts +1 -1
  305. package/dist/components/CardV2/index.mjs +1 -1
  306. package/dist/components/Checkbox/index.d.mts +1 -1
  307. package/dist/components/Checkbox/index.mjs +1 -1
  308. package/dist/components/CodeHighlight/index.mjs +3 -3
  309. package/dist/components/Combobox/index.d.mts +2 -2
  310. package/dist/components/Combobox/index.mjs +1 -1
  311. package/dist/components/ConfigFormGroup/index.mjs +2 -2
  312. package/dist/components/DataTable/TableControls/index.d.mts +22 -20
  313. package/dist/components/DataTable/TableControls/index.mjs +2 -2
  314. package/dist/components/DataTable/index.d.mts +9 -8
  315. package/dist/components/DataTable/index.mjs +2 -1474
  316. package/dist/components/DataTable/types.d.mts +2 -166
  317. package/dist/components/DatePicker/index.d.mts +5 -5
  318. package/dist/components/DatePicker/index.mjs +1 -1
  319. package/dist/components/DropdownButton/index.mjs +1 -1
  320. package/dist/components/DropdownMenu/index.d.mts +1 -1
  321. package/dist/components/DropdownMenu/index.mjs +1 -1
  322. package/dist/components/FloatingPanel/index.mjs +5 -5
  323. package/dist/components/FormControl/index.d.mts +2 -2
  324. package/dist/components/FormControl/index.mjs +2 -2
  325. package/dist/components/FormField/index.d.mts +5 -5
  326. package/dist/components/FormField/index.mjs +1 -1
  327. package/dist/components/Grid/index.mjs +1 -1
  328. package/dist/components/HoverCopyableField/index.mjs +1 -1
  329. package/dist/components/ImageTile/index.mjs +30 -17
  330. package/dist/components/ImageTile/index.mjs.map +1 -1
  331. package/dist/components/Input/index.d.mts +1 -1
  332. package/dist/components/Input/index.mjs +1 -1
  333. package/dist/components/Link/index.mjs +1 -1
  334. package/dist/components/ListBox/index.d.mts +3 -3
  335. package/dist/components/ListBox/index.mjs +1 -1
  336. package/dist/components/MaskedInput/index.mjs +1 -1
  337. package/dist/components/Menu/index.d.mts +1 -1
  338. package/dist/components/Menu/index.mjs +1 -1
  339. package/dist/components/Modal/index.d.mts +1 -1
  340. package/dist/components/Modal/index.mjs +1 -1
  341. package/dist/components/PageHeader/index.d.mts +1 -1
  342. package/dist/components/PageHeader/index.mjs +1 -1
  343. package/dist/components/Pagination/index.d.mts +3 -3
  344. package/dist/components/Pagination/index.mjs +1 -1
  345. package/dist/components/Pii/index.mjs +1 -1
  346. package/dist/components/Popover/index.mjs +1 -1
  347. package/dist/components/ProgressBar/index.mjs +1 -1
  348. package/dist/components/ProgressIndicator/index.d.mts +1 -1
  349. package/dist/components/ProgressIndicator/index.mjs +1 -1
  350. package/dist/components/Radio/index.mjs +1 -1
  351. package/dist/components/RadioGroup/index.d.mts +1 -1
  352. package/dist/components/RadioGroup/index.mjs +1 -1
  353. package/dist/components/RightPanel/index.mjs +2 -2
  354. package/dist/components/SegmentedControl/index.d.mts +1 -1
  355. package/dist/components/SegmentedControl/index.mjs +1 -1
  356. package/dist/components/Select/index.d.mts +1 -1
  357. package/dist/components/Select/index.mjs +1 -1
  358. package/dist/components/Slider/index.mjs +2 -2
  359. package/dist/components/SmartTextInput/index.d.mts +2 -2
  360. package/dist/components/SmartTextInput/index.mjs +6 -6
  361. package/dist/components/SmartTextInput/parser/method-chain/types.d.mts +1 -1
  362. package/dist/components/SmartTextInput/parser/smart-text/types.d.mts +2 -2
  363. package/dist/components/Spinner/index.mjs +1 -1
  364. package/dist/components/Stack/index.d.mts +1 -1
  365. package/dist/components/StatusIndicator/index.mjs +1 -1
  366. package/dist/components/Sticker/index.d.mts +1 -1
  367. package/dist/components/Sticker/index.mjs +1 -1
  368. package/dist/components/TabBar/index.mjs +1 -1
  369. package/dist/components/Table/index.d.mts +8 -8
  370. package/dist/components/Table/index.mjs +1 -1
  371. package/dist/components/TableBox/index.d.mts +2 -2
  372. package/dist/components/TableBox/index.mjs +1 -1
  373. package/dist/components/TechnicalSticker/index.mjs +1 -1
  374. package/dist/components/Text/index.d.mts +1 -1
  375. package/dist/components/TextArea/index.d.mts +1 -1
  376. package/dist/components/TextArea/index.mjs +1 -1
  377. package/dist/components/Tile/index.mjs +2 -2
  378. package/dist/components/Toast/index.mjs +4 -4
  379. package/dist/components/Toggle/index.d.mts +1 -1
  380. package/dist/components/Toggle/index.mjs +1 -1
  381. package/dist/components/Tooltip/index.d.mts +3 -3
  382. package/dist/components/Tooltip/index.mjs +1 -1
  383. package/dist/components/VersionHistory/index.d.mts +1 -1
  384. package/dist/components/VersionHistory/index.mjs +7 -7
  385. package/dist/compound-expression.d.mts +1 -1
  386. package/dist/{constants-CwzbyAdc.d.mts → constants-4rSh8e5G.d.mts} +1 -1
  387. package/dist/constants-BaMvTUbS.d.mts +10 -0
  388. package/dist/constants.d.mts +1 -1
  389. package/dist/constants2.d.mts +2 -10
  390. package/dist/{createPath-C4jIHe68.d.mts → createPath-B_CLq82C.d.mts} +2 -2
  391. package/dist/createPath.d.mts +1 -1
  392. package/dist/{date-filter-CWgCXz85.mjs → date-filter-D0ys8s0D.mjs} +1 -1
  393. package/dist/{date-filter-CWgCXz85.mjs.map → date-filter-D0ys8s0D.mjs.map} +1 -1
  394. package/dist/{date-range-rule-value-BkbGpLNH.d.mts → date-range-rule-value-D01nn054.d.mts} +2 -2
  395. package/dist/date-range-rule-value.d.mts +1 -1
  396. package/dist/{date-rule-intent-zdKP-tW_.d.mts → date-rule-intent-B4hQ_APa.d.mts} +3 -3
  397. package/dist/date-rule-intent.d.mts +1 -1
  398. package/dist/display.d.mts +2 -2
  399. package/dist/fieldPickerOptions.d.mts +2 -2
  400. package/dist/{filter-size-context-CW1guBfI.d.mts → filter-size-context-Dj7Idc8j.d.mts} +2 -2
  401. package/dist/filter-size-context.d.mts +1 -1
  402. package/dist/filters-DDrsgRYy.d.mts +22 -0
  403. package/dist/filters.d.mts +2 -0
  404. package/dist/{formatDateTime-zyRMjfH8.d.mts → formatDateTime-Dd9inM5H.d.mts} +1 -1
  405. package/dist/formatDateTime.d.mts +1 -1
  406. package/dist/helpers-D8_2I4ZX.d.mts +90 -0
  407. package/dist/helpers.d.mts +2 -90
  408. package/dist/{i18n-CeRarJIa.mjs → i18n-BscB9FUy.mjs} +14 -2
  409. package/dist/i18n-BscB9FUy.mjs.map +1 -0
  410. package/dist/{index-C7hEdRqK.d.mts → index-DkXly4xw.d.mts} +2 -2
  411. package/dist/{index-DxFh2ArY.d.mts → index-DsjvDLF8.d.mts} +3 -3
  412. package/dist/{index-B7KIL3U6.d.mts → index-EGvEhP1j.d.mts} +2 -2
  413. package/dist/index-K614ZhWK.d.mts +1 -0
  414. package/dist/index-NKYLt_R9.d.mts +1 -0
  415. package/dist/index-VWno75SQ.d.mts +1 -0
  416. package/dist/index.d.mts +1 -1
  417. package/dist/index2.d.mts +1 -1
  418. package/dist/index3.d.mts +3 -3
  419. package/dist/index4.d.mts +1 -1
  420. package/dist/index5.d.mts +14 -14
  421. package/dist/{input-DMPo8gRT.d.mts → input-CKhARTlS.d.mts} +3 -3
  422. package/dist/{inputFields-BCNC1FWx.d.mts → inputFields-DyOZHse2.d.mts} +11 -11
  423. package/dist/inputFields.d.mts +1 -1
  424. package/dist/{intersperse-B8s6clcc.mjs → intersperse-ObkRVOag.mjs} +1 -1
  425. package/dist/{intersperse-B8s6clcc.mjs.map → intersperse-ObkRVOag.mjs.map} +1 -1
  426. package/dist/{jsonSchema-6mcLrVG3.d.mts → jsonSchema-COo0XQLA.d.mts} +1 -1
  427. package/dist/lib/PDSProvider.d.mts +3 -3
  428. package/dist/lib/PDSProvider.mjs +1 -1
  429. package/dist/lib/TruncatedText.d.mts +1 -1
  430. package/dist/lib/TruncatedTextWithTooltip.d.mts +1 -1
  431. package/dist/lib/TruncatedTextWithTooltip.mjs +1 -1
  432. package/dist/lib/chainTypes.d.mts +1 -1
  433. package/dist/lib/color.d.mts +1 -1
  434. package/dist/lib/customFunctionSchema.d.mts +1 -1
  435. package/dist/lib/date-filter/index.d.mts +2 -2
  436. package/dist/lib/date-filter/index.mjs +1 -1
  437. package/dist/lib/i18n/index.d.mts +3 -3
  438. package/dist/lib/i18n/index.mjs +1 -1
  439. package/dist/lib/jsonSchema.d.mts +1 -1
  440. package/dist/lib/jsonSchemaType.d.mts +1 -1
  441. package/dist/lib/message.d.mts +1 -1
  442. package/dist/lib/methodChain.d.mts +2 -2
  443. package/dist/lib/methodChainNormalize.d.mts +2 -2
  444. package/dist/lib/methodChainTypes.d.mts +1 -1
  445. package/dist/lib/objectSchemaTypes.d.mts +1 -1
  446. package/dist/lib/platformObject.d.mts +1 -1
  447. package/dist/lib/pseudoClass.d.mts +1 -1
  448. package/dist/lib/router/adapters/reactRouter.d.mts +1 -1
  449. package/dist/lib/router/adapters/tanstack.d.mts +1 -1
  450. package/dist/lib/router/index.d.mts +5 -5
  451. package/dist/lib/schemaOptions.d.mts +1 -1
  452. package/dist/lib/semanticColor.d.mts +1 -1
  453. package/dist/lib/useChain.d.mts +1 -1
  454. package/dist/{listbox-options-yLjqZp4H.d.mts → listbox-options-D-DyLUdi.d.mts} +3 -3
  455. package/dist/listbox-options.d.mts +1 -1
  456. package/dist/{message-C5n7wFiN.d.mts → message-Dti22dmx.d.mts} +1 -1
  457. package/dist/{methodChain-BNDytoaD.d.mts → methodChain-BAUFBbR9.d.mts} +4 -4
  458. package/dist/{methodChainTypes-BuwpPC73.d.mts → methodChainTypes-a7kHYhs7.d.mts} +2 -2
  459. package/dist/mixins/focus.d.mts +1 -1
  460. package/dist/mixins/focus.mjs +1 -1
  461. package/dist/mixins/hoverable.d.mts +2 -2
  462. package/dist/mixins/hoverable.mjs +1 -1
  463. package/dist/mixins/input.d.mts +1 -1
  464. package/dist/mixins/input.mjs +2 -2
  465. package/dist/mixins/menuItem.d.mts +2 -2
  466. package/dist/mixins/scrollbar.d.mts +1 -1
  467. package/dist/mixins/text.d.mts +1 -1
  468. package/dist/{operators-C34nhBuK.d.mts → operators-DjQXVNVI.d.mts} +3 -3
  469. package/dist/operators.d.mts +1 -1
  470. package/dist/{palette-BCszfY7I.d.mts → palette-Bp5G-S_5.d.mts} +3 -3
  471. package/dist/palette.d.mts +1 -1
  472. package/dist/patterns/CardGrouping/index.mjs +8 -8
  473. package/dist/patterns/IndexTableLayout/index.d.mts +3 -0
  474. package/dist/patterns/IndexTableLayout/index.mjs +87 -0
  475. package/dist/patterns/IndexTableLayout/index.mjs.map +1 -0
  476. package/dist/patterns/LayoutLoadingShimmer/index.mjs +3 -3
  477. package/dist/patterns/PageLayout/index.d.mts +4 -4
  478. package/dist/patterns/PageLayout/index.mjs +1 -1
  479. package/dist/patterns/WizardModal/index.mjs +3 -3
  480. package/dist/reactRouterFallback.d.mts +1 -1
  481. package/dist/relative-date-label.d.mts +1 -1
  482. package/dist/safe-parse.d.mts +1 -1
  483. package/dist/{schemaOptions-DBOUChxi.d.mts → schemaOptions-D536qhSd.d.mts} +3 -3
  484. package/dist/{semantic-Duoh2Pxp.d.mts → semantic-DjKvtUi8.d.mts} +1 -1
  485. package/dist/{semanticColor-BuG977_M.d.mts → semanticColor-CmGmGRj8.d.mts} +3 -3
  486. package/dist/{strings-CUZrwL-Q.d.mts → strings-FWNWdSn1.d.mts} +14 -2
  487. package/dist/strings.d.mts +1 -1
  488. package/dist/{text-B7hx6G99.d.mts → text-BNfECpa5.d.mts} +1 -1
  489. package/dist/{theme-BKg55Zk1.d.mts → theme-VNhXxAF3.d.mts} +3 -3
  490. package/dist/theme.d.mts +1 -1
  491. package/dist/tone.d.mts +3 -3
  492. package/dist/tree.d.mts +1 -1
  493. package/dist/{types-DEzlAdZW.d.mts → types-BMpEizJP.d.mts} +2 -2
  494. package/dist/{types-C_ZEgHNa.d.mts → types-BhHdS6QP.d.mts} +2 -2
  495. package/dist/{types-6QeQmbFm.d.mts → types-CFe4tA8Q.d.mts} +1 -1
  496. package/dist/types-CjQzH0MM.d.mts +180 -0
  497. package/dist/{types-CEQWndtF.d.mts → types-DFU6M0OL.d.mts} +4 -4
  498. package/dist/{types-BjMJFNYH.d.mts → types-DHTFd-5t.d.mts} +1 -1
  499. package/dist/{types-VgGkS4JB.d.mts → types-DfpVVjso.d.mts} +2 -2
  500. package/dist/types-Dx8PgO8a.d.mts +95 -0
  501. package/dist/{types-CgKSEQyB.d.mts → types-HxiGiwQN.d.mts} +1 -1
  502. package/dist/{types-4wnr5R9P.d.mts → types-Kmnood9Y.d.mts} +1 -1
  503. package/dist/types.d.mts +1 -1
  504. package/dist/types2.d.mts +2 -2
  505. package/dist/types3.d.mts +1 -1
  506. package/dist/types4.d.mts +2 -2
  507. package/dist/types5.d.mts +2 -2
  508. package/dist/types6.d.mts +2 -2
  509. package/dist/types7.d.mts +1 -1
  510. package/dist/{url-state-B_gTQ9uu.d.mts → url-state-D1muieS7.d.mts} +2 -2
  511. package/dist/url-state.d.mts +1 -1
  512. package/dist/{useChain-DPRVMwX8.d.mts → useChain-D5LvupTW.d.mts} +6 -6
  513. package/dist/useChainAtCursor.d.mts +6 -6
  514. package/dist/useCodeChainFunctionPanel.d.mts +1 -1
  515. package/dist/useColumnConfiguration.d.mts +34 -0
  516. package/dist/useComboboxFooterAction.d.mts +1 -1
  517. package/dist/{useFilterStateV2-BQZppUR0.d.mts → useFilterStateV2-MH3zbQFr.d.mts} +3 -3
  518. package/dist/useFilterStateV2.d.mts +1 -1
  519. package/dist/{useFormField-DAwApAKK.d.mts → useFormField-Ba8rh1CH.d.mts} +2 -2
  520. package/dist/{useFormField-BAmkdxtA.mjs → useFormField-CbNYbDdp.mjs} +2 -2
  521. package/dist/{useFormField-BAmkdxtA.mjs.map → useFormField-CbNYbDdp.mjs.map} +1 -1
  522. package/dist/useFormField.d.mts +1 -1
  523. package/dist/{useFormGroup-BZayb9fZ.mjs → useFormGroup-CsKC93Pt.mjs} +1 -1
  524. package/dist/{useFormGroup-BZayb9fZ.mjs.map → useFormGroup-CsKC93Pt.mjs.map} +1 -1
  525. package/dist/{useLocationPathname-BHL0pgiu.d.mts → useLocationPathname-OsvI7mH5.d.mts} +1 -1
  526. package/dist/useLocationPathname.d.mts +1 -1
  527. package/dist/{useTableBoxDragAndDrop-Dq30b6yY.d.mts → useTableBoxDragAndDrop-CKPIY98e.d.mts} +1 -1
  528. package/dist/useTableBoxDragAndDrop.d.mts +1 -1
  529. package/dist/useTableColumns-rLskKJhd.d.mts +72 -0
  530. package/dist/useTableColumns.d.mts +2 -72
  531. package/dist/useTruncation.d.mts +1 -1
  532. package/dist/{utilities-B2ry7_20.d.mts → utilities-BrEUGFGq.d.mts} +1 -1
  533. package/dist/utilities.d.mts +1 -1
  534. package/dist/utils/testing.d.mts +1 -1
  535. package/dist/utils.d.mts +1 -1
  536. package/dist/utils4.d.mts +5 -5
  537. package/dist/{validation-BODkbEvr.d.mts → validation-Csi2SJxm.d.mts} +3 -3
  538. package/dist/validation.d.mts +1 -1
  539. package/dist/validation2.d.mts +4 -4
  540. package/dist/{value-control-resolver-BcZiReQ7.d.mts → value-control-resolver-BoBFvQ_0.d.mts} +2 -2
  541. package/dist/value-control-resolver.d.mts +1 -1
  542. package/dist/variables/effect.d.mts +1 -1
  543. package/dist/variables/semantic.d.mts +1 -1
  544. package/llms.txt +6 -2
  545. package/package.json +5 -3
  546. package/skills/ui-authoring/COMPONENTS.md +1 -0
  547. package/skills/ui-authoring/PATTERNS.md +4 -2
  548. package/skills/ui-authoring/SKILL.md +9 -2
  549. package/skills/ui-authoring/TOKENS.md +457 -119
  550. package/dist/Combobox-CsXnJKvB.mjs.map +0 -1
  551. package/dist/DatePicker-DQHVCGnP.mjs.map +0 -1
  552. package/dist/Modal-Cs5cZpEr.mjs.map +0 -1
  553. package/dist/TableControls-C1MF2JvY.mjs.map +0 -1
  554. package/dist/components/DataTable/index.mjs.map +0 -1
  555. package/dist/i18n-CeRarJIa.mjs.map +0 -1
  556. package/dist/types-CwzwClJx.d.mts +0 -27
  557. /package/dist/{index-7in8TPrM.d.mts → index-AnhM47-e2.d.mts} +0 -0
  558. /package/dist/{index-8SLBz2NH.d.mts → index-B33elXxm.d.mts} +0 -0
  559. /package/dist/{index-B24gUwOx.d.mts → index-B4woaFSm.d.mts} +0 -0
  560. /package/dist/{index-B8M0Grl_2.d.mts → index-B6T7ov8p.d.mts} +0 -0
  561. /package/dist/{index-BFnNtGdX.d.mts → index-BNRXMhlr.d.mts} +0 -0
  562. /package/dist/{index-BjgW3E7y.d.mts → index-BOaE2xDE.d.mts} +0 -0
  563. /package/dist/{index-BwFl_eS0.d.mts → index-BPiqSRRl.d.mts} +0 -0
  564. /package/dist/{index-C3kE54DD.d.mts → index-BYd3Btr1.d.mts} +0 -0
  565. /package/dist/{index-C3usUse7.d.mts → index-BcsXXrHq.d.mts} +0 -0
  566. /package/dist/{index-C6HcjJiY.d.mts → index-Bo9LXG4r.d.mts} +0 -0
  567. /package/dist/{index-CP2eJYlK.d.mts → index-BrGZHEgX.d.mts} +0 -0
  568. /package/dist/{index-CSf15oCd.d.mts → index-Bt4QNofW.d.mts} +0 -0
  569. /package/dist/{index-CX869wwk.d.mts → index-CFuHCx9T.d.mts} +0 -0
  570. /package/dist/{index-CXaDbCtw.d.mts → index-CLTQPxoD.d.mts} +0 -0
  571. /package/dist/{index-D4DUvwPf.d.mts → index-CaqYCRmZ.d.mts} +0 -0
  572. /package/dist/{index-DB7t8whN.d.mts → index-CjDodOH2.d.mts} +0 -0
  573. /package/dist/{index-Deol7ZWO.d.mts → index-CjmAoxrR2.d.mts} +0 -0
  574. /package/dist/{index-DhiymMxa.d.mts → index-Cx0vQ6ld.d.mts} +0 -0
  575. /package/dist/{index-DjOaHFU3.d.mts → index-CzItj62a.d.mts} +0 -0
  576. /package/dist/{index-DkrC-i1D.d.mts → index-CzUpNo0e.d.mts} +0 -0
  577. /package/dist/{index-DvwPIy8X.d.mts → index-DBGd4WeR.d.mts} +0 -0
  578. /package/dist/{index-Oio5ygqN.d.mts → index-DMRtRo7y.d.mts} +0 -0
  579. /package/dist/{index-Wc1llEvP.d.mts → index-DNjQe1D8.d.mts} +0 -0
  580. /package/dist/{index-bHnO4ZKt.d.mts → index-DW3xeuzq.d.mts} +0 -0
  581. /package/dist/{index-dzI_9J-Z.d.mts → index-DZlqSwCF.d.mts} +0 -0
  582. /package/dist/{index-gpCH5158.d.mts → index-De7MV8-j.d.mts} +0 -0
  583. /package/dist/{index-lIMqGGJz.d.mts → index-DjG1RCY5.d.mts} +0 -0
  584. /package/dist/{index-luywJTzJ.d.mts → index-Dlcv6Ku22.d.mts} +0 -0
  585. /package/dist/{index-sViox9YW.d.mts → index-DrK1_jKY.d.mts} +0 -0
  586. /package/dist/{index-xAZnxq0d2.d.mts → index-IJ_PXwxI2.d.mts} +0 -0
@@ -0,0 +1,72 @@
1
+ import { C as RowAction, O as SortProps, _ as DataTableColumns, l as DataTableColumnFormat } from "./types-CjQzH0MM.mjs";
2
+ import { ColumnDef, Row, RowData, Table } from "@tanstack/react-table";
3
+
4
+ //#region components/DataTable/useTableColumns.d.ts
5
+ /**
6
+ * Host-injected cell format renderer. Dashboard passes its own implementation
7
+ * that handles all format types including tags, files, and status indicators.
8
+ */
9
+ type RenderFormatFn<TData = unknown, TFormat extends {
10
+ type: string;
11
+ } = {
12
+ type: string;
13
+ }> = (value: unknown, format?: TFormat, row?: TData) => React.ReactNode;
14
+ interface UseTableColumnsParams<TData extends RowData, TFormat extends {
15
+ type: string;
16
+ } = DataTableColumnFormat<TData>, TFilter = unknown> {
17
+ columns: DataTableColumns<TData, TFormat, TFilter>;
18
+ data: TData[];
19
+ compact?: boolean;
20
+ sort?: boolean | SortProps;
21
+ clientSearch?: boolean | {
22
+ placeholder?: string;
23
+ initialValue?: string;
24
+ };
25
+ clientFiltering?: boolean;
26
+ expandColumnVisibility?: 'auto' | 'always';
27
+ showControls?: boolean;
28
+ enableRowSelection?: boolean;
29
+ enableSubRowSelection?: boolean;
30
+ rowActions?: RowAction[] | ((row: TData) => RowAction[]);
31
+ getRowId?: (row: TData) => string;
32
+ expandedRows: Set<string>;
33
+ toggleRowExpansion: (rowId: string) => void;
34
+ canRowExpand: (rowData: TData) => boolean;
35
+ checkboxColumnStates: Record<string, Set<string>>;
36
+ handleCheckboxCellChange: (columnId: string, rowId: string, checked: boolean) => void;
37
+ handleSelectAllCheckboxCell: (columnId: string, checked: boolean) => void;
38
+ getSelfAndNestedRowIds: (row: TData, indexPath: number[]) => string[];
39
+ handleRowSelectionWithShift: (clickedRow: Row<TData>, table: Table<TData>, checked: boolean, isShiftKey: boolean) => void;
40
+ renderFormat: RenderFormatFn<TData, TFormat>;
41
+ }
42
+ declare function useTableColumns<TData extends RowData, TFormat extends {
43
+ type: string;
44
+ } = DataTableColumnFormat<TData>, TFilter = unknown>({
45
+ columns,
46
+ data,
47
+ compact,
48
+ sort,
49
+ clientSearch,
50
+ clientFiltering,
51
+ expandColumnVisibility,
52
+ showControls,
53
+ enableRowSelection,
54
+ enableSubRowSelection,
55
+ rowActions,
56
+ getRowId,
57
+ expandedRows,
58
+ toggleRowExpansion,
59
+ canRowExpand,
60
+ checkboxColumnStates,
61
+ handleCheckboxCellChange,
62
+ handleSelectAllCheckboxCell,
63
+ getSelfAndNestedRowIds,
64
+ handleRowSelectionWithShift,
65
+ renderFormat
66
+ }: UseTableColumnsParams<TData, TFormat, TFilter>): [ColumnDef<TData, any>[], {
67
+ key: string;
68
+ label: string;
69
+ }[]];
70
+ //#endregion
71
+ export { UseTableColumnsParams as n, useTableColumns as r, RenderFormatFn as t };
72
+ //# sourceMappingURL=useTableColumns-rLskKJhd.d.mts.map
@@ -1,72 +1,2 @@
1
- import { DataTableColumnFormat, DataTableColumns, RowAction, SortProps } from "./components/DataTable/types.mjs";
2
- import { ColumnDef, Row, RowData, Table } from "@tanstack/react-table";
3
-
4
- //#region components/DataTable/useTableColumns.d.ts
5
- /**
6
- * Host-injected cell format renderer. Dashboard passes its own implementation
7
- * that handles all format types including tags, files, and status indicators.
8
- */
9
- type RenderFormatFn<TData = unknown, TFormat extends {
10
- type: string;
11
- } = {
12
- type: string;
13
- }> = (value: unknown, format?: TFormat, row?: TData) => React.ReactNode;
14
- interface UseTableColumnsParams<TData extends RowData, TFormat extends {
15
- type: string;
16
- } = DataTableColumnFormat<TData>, TFilter = unknown> {
17
- columns: DataTableColumns<TData, TFormat, TFilter>;
18
- data: TData[];
19
- compact?: boolean;
20
- sort?: boolean | SortProps;
21
- clientSearch?: boolean | {
22
- placeholder?: string;
23
- initialValue?: string;
24
- };
25
- clientFiltering?: boolean;
26
- expandColumnVisibility?: 'auto' | 'always';
27
- showControls?: boolean;
28
- enableRowSelection?: boolean;
29
- enableSubRowSelection?: boolean;
30
- rowActions?: RowAction[] | ((row: TData) => RowAction[]);
31
- getRowId?: (row: TData) => string;
32
- expandedRows: Set<string>;
33
- toggleRowExpansion: (rowId: string) => void;
34
- canRowExpand: (rowData: TData) => boolean;
35
- checkboxColumnStates: Record<string, Set<string>>;
36
- handleCheckboxCellChange: (columnId: string, rowId: string, checked: boolean) => void;
37
- handleSelectAllCheckboxCell: (columnId: string, checked: boolean) => void;
38
- getSelfAndNestedRowIds: (row: TData, indexPath: number[]) => string[];
39
- handleRowSelectionWithShift: (clickedRow: Row<TData>, table: Table<TData>, checked: boolean, isShiftKey: boolean) => void;
40
- renderFormat: RenderFormatFn<TData, TFormat>;
41
- }
42
- declare function useTableColumns<TData extends RowData, TFormat extends {
43
- type: string;
44
- } = DataTableColumnFormat<TData>, TFilter = unknown>({
45
- columns,
46
- data,
47
- compact,
48
- sort,
49
- clientSearch,
50
- clientFiltering,
51
- expandColumnVisibility,
52
- showControls,
53
- enableRowSelection,
54
- enableSubRowSelection,
55
- rowActions,
56
- getRowId,
57
- expandedRows,
58
- toggleRowExpansion,
59
- canRowExpand,
60
- checkboxColumnStates,
61
- handleCheckboxCellChange,
62
- handleSelectAllCheckboxCell,
63
- getSelfAndNestedRowIds,
64
- handleRowSelectionWithShift,
65
- renderFormat
66
- }: UseTableColumnsParams<TData, TFormat, TFilter>): [ColumnDef<TData, any>[], {
67
- key: string;
68
- label: string;
69
- }[]];
70
- //#endregion
71
- export { RenderFormatFn, UseTableColumnsParams, useTableColumns };
72
- //# sourceMappingURL=useTableColumns.d.mts.map
1
+ import { n as UseTableColumnsParams, r as useTableColumns, t as RenderFormatFn } from "./useTableColumns-rLskKJhd.mjs";
2
+ export { RenderFormatFn, UseTableColumnsParams, useTableColumns };
@@ -1,4 +1,4 @@
1
- import { i as ComboboxOption } from "./ComboboxBase-2nVpt8oj.mjs";
1
+ import { i as ComboboxOption } from "./ComboboxBase-BQQSKUBU.mjs";
2
2
  import { MutableRefObject, RefObject } from "react";
3
3
 
4
4
  //#region components/Combobox/useTruncation.d.ts
@@ -6,4 +6,4 @@
6
6
  type RequireOneOf<T, Keys extends keyof T = keyof T> = Pick<T, Exclude<keyof T, Keys>> & { [K in Keys]-?: Required<Pick<T, K>> & Partial<Pick<T, Exclude<Keys, K>>> }[Keys];
7
7
  //#endregion
8
8
  export { RequireOneOf as t };
9
- //# sourceMappingURL=utilities-B2ry7_20.d.mts.map
9
+ //# sourceMappingURL=utilities-BrEUGFGq.d.mts.map
@@ -1,2 +1,2 @@
1
- import { t as RequireOneOf } from "./utilities-B2ry7_20.mjs";
1
+ import { t as RequireOneOf } from "./utilities-BrEUGFGq.mjs";
2
2
  export { RequireOneOf };
@@ -1,4 +1,4 @@
1
- import { n as RouterAdapter } from "../types-CgKSEQyB.mjs";
1
+ import { n as RouterAdapter } from "../types-HxiGiwQN.mjs";
2
2
  import { ReactElement } from "react";
3
3
  import * as _$_testing_library_react0 from "@testing-library/react";
4
4
  import { RenderOptions, screen } from "@testing-library/react";
package/dist/utils.d.mts CHANGED
@@ -1,4 +1,4 @@
1
- import { d as FilterRuleValue } from "./types-DEzlAdZW.mjs";
1
+ import { d as FilterRuleValue } from "./types-BMpEizJP.mjs";
2
2
 
3
3
  //#region components/DataTable/TableControls/FiltersV2/value-controls/utils.d.ts
4
4
  /**
package/dist/utils4.d.mts CHANGED
@@ -1,8 +1,8 @@
1
- import { n as ASTChain } from "./types-4wnr5R9P.mjs";
2
- import { t as ASTNode } from "./types-VgGkS4JB.mjs";
3
- import { n as Chain, s as MethodChainNode } from "./methodChainTypes-BuwpPC73.mjs";
4
- import { t as ChainRoot } from "./chainTypes-DT-9j_sG.mjs";
5
- import { a as Mode, r as FunctionAtCursor, u as ValueType } from "./types-CEQWndtF.mjs";
1
+ import { n as ASTChain } from "./types-Kmnood9Y.mjs";
2
+ import { t as ASTNode } from "./types-DfpVVjso.mjs";
3
+ import { n as Chain, s as MethodChainNode } from "./methodChainTypes-a7kHYhs7.mjs";
4
+ import { t as ChainRoot } from "./chainTypes-BbFZn8a9.mjs";
5
+ import { a as Mode, r as FunctionAtCursor, u as ValueType } from "./types-DFU6M0OL.mjs";
6
6
  import { RefObject } from "react";
7
7
 
8
8
  //#region components/SmartTextInput/utils.d.ts
@@ -1,5 +1,5 @@
1
- import { m as FilterStateV2, u as FilterRule } from "./types-DEzlAdZW.mjs";
2
- import { t as FieldRegistry } from "./FieldRegistry-DAk_3PhH.mjs";
1
+ import { m as FilterStateV2, u as FilterRule } from "./types-BMpEizJP.mjs";
2
+ import { t as FieldRegistry } from "./FieldRegistry-d5tGpSch.mjs";
3
3
 
4
4
  //#region components/DataTable/TableControls/FiltersV2/validation.d.ts
5
5
  /**
@@ -48,4 +48,4 @@ declare function pruneToRegistry(state: FilterStateV2, registry: FieldRegistry |
48
48
  declare function hasCompleteValue(rule: FilterRule, registry: FieldRegistry): boolean;
49
49
  //#endregion
50
50
  export { isFilterStateV2 as n, pruneToRegistry as r, hasCompleteValue as t };
51
- //# sourceMappingURL=validation-BODkbEvr.d.mts.map
51
+ //# sourceMappingURL=validation-Csi2SJxm.d.mts.map
@@ -1,2 +1,2 @@
1
- import { n as isFilterStateV2, r as pruneToRegistry, t as hasCompleteValue } from "./validation-BODkbEvr.mjs";
1
+ import { n as isFilterStateV2, r as pruneToRegistry, t as hasCompleteValue } from "./validation-Csi2SJxm.mjs";
2
2
  export { hasCompleteValue, isFilterStateV2, pruneToRegistry };
@@ -1,7 +1,7 @@
1
- import { t as ASTNode } from "./types-VgGkS4JB.mjs";
2
- import { dt as ObjectSchemaMap, n as JsonSchema, st as FunctionJsonSchema } from "./jsonSchema-6mcLrVG3.mjs";
3
- import { t as ChainRoot } from "./chainTypes-DT-9j_sG.mjs";
4
- import { u as ValueType } from "./types-CEQWndtF.mjs";
1
+ import { t as ASTNode } from "./types-DfpVVjso.mjs";
2
+ import { dt as ObjectSchemaMap, n as JsonSchema, st as FunctionJsonSchema } from "./jsonSchema-COo0XQLA.mjs";
3
+ import { t as ChainRoot } from "./chainTypes-BbFZn8a9.mjs";
4
+ import { u as ValueType } from "./types-DFU6M0OL.mjs";
5
5
  import { ReactNode } from "react";
6
6
 
7
7
  //#region components/SmartTextInput/validation.d.ts
@@ -1,4 +1,4 @@
1
- import { d as FilterRuleValue, f as FilterRuleValueChange, l as FilterOperator, o as FilterField, u as FilterRule } from "./types-DEzlAdZW.mjs";
1
+ import { d as FilterRuleValue, f as FilterRuleValueChange, l as FilterOperator, o as FilterField, u as FilterRule } from "./types-BMpEizJP.mjs";
2
2
  import { ReactNode } from "react";
3
3
 
4
4
  //#region components/DataTable/TableControls/FiltersV2/FilterBar/value-control-resolver.d.ts
@@ -46,4 +46,4 @@ type ValueControlResolver = (opts: ResolveValueControlOptions) => ReactNode | un
46
46
  declare function resolveValueControl(opts: ResolveValueControlOptions, hostResolver?: ValueControlResolver): ReactNode;
47
47
  //#endregion
48
48
  export { ValueControlResolver as n, resolveValueControl as r, ResolveValueControlOptions as t };
49
- //# sourceMappingURL=value-control-resolver-BcZiReQ7.d.mts.map
49
+ //# sourceMappingURL=value-control-resolver-BoBFvQ_0.d.mts.map
@@ -1,2 +1,2 @@
1
- import { n as ValueControlResolver, r as resolveValueControl, t as ResolveValueControlOptions } from "./value-control-resolver-BcZiReQ7.mjs";
1
+ import { n as ValueControlResolver, r as resolveValueControl, t as ResolveValueControlOptions } from "./value-control-resolver-BoBFvQ_0.mjs";
2
2
  export { ResolveValueControlOptions, ValueControlResolver, resolveValueControl };
@@ -1,4 +1,4 @@
1
- import { t as MaybeSemanticTheme } from "../semanticColor-BuG977_M.mjs";
1
+ import { t as MaybeSemanticTheme } from "../semanticColor-CmGmGRj8.mjs";
2
2
 
3
3
  //#region variables/effect.d.ts
4
4
  /**
@@ -1,2 +1,2 @@
1
- import { i as semanticLight, n as SemanticTokens, r as semanticDark, t as CssPercentage } from "../semantic-Duoh2Pxp.mjs";
1
+ import { i as semanticLight, n as SemanticTokens, r as semanticDark, t as CssPercentage } from "../semantic-DjKvtUi8.mjs";
2
2
  export { CssPercentage, SemanticTokens, semanticDark, semanticLight };
package/llms.txt CHANGED
@@ -14,8 +14,8 @@ For exact prop types, prefer the published type declarations (`dist/**/*.d.mts`,
14
14
  ## Skills
15
15
 
16
16
  - [ui-authoring](skills/ui-authoring/SKILL.md): design tokens, PDS implementation guidelines, table guidelines (DataTable vs TableBox vs TableLayout), routing/link adapters (react-router, TanStack, custom), localization (PDSProvider strings/locale), loading states, testing, Storybook
17
- - [Tokens](skills/ui-authoring/TOKENS.md): Color / Spacing / Typography selection and catalog, radius, charts
18
- - [Patterns](skills/ui-authoring/PATTERNS.md): forms, layout, indicators, feedback, empty states, charts, panels
17
+ - [Tokens](skills/ui-authoring/TOKENS.md): semantic color tokens (Fg / Surface / Border / Action / Input / Feedback / Status / Opacity) with recipes and a dark-mode checklist; Spacing / Typography catalog, radius, elevation, charts
18
+ - [Patterns](skills/ui-authoring/PATTERNS.md): forms, layout, index tables, indicators, feedback, empty states, charts, panels
19
19
  - [Components](skills/ui-authoring/COMPONENTS.md): which PDS component to use (and its import path); APIs live in that component's `.mdx` when one exists, otherwise in `dist/components/<Name>/index.d.mts`
20
20
  - [design-system-component-authoring](skills/design-system-component-authoring/SKILL.md): authoring a new PDS component in this repo — clarifying scope, component conventions, prop interface patterns
21
21
 
@@ -32,11 +32,15 @@ their own subpaths.
32
32
  - Layout: `Stack` / `HStack` (components/Stack), `Spacer`
33
33
  - Text: `Heading`, `Paragraph`, `Label` (components/Text)
34
34
  - Tables: `DataTable` (data views w/ pagination + sorting), `TableBox` (editable form tables), `TableLayout` + `Table`/`TableRow`/`TableCell`/`TableHeaderCell` primitives (components/Table) — `TableLayout` has built-in `isLoading`/`isEmpty`/`nullState`/`showHeader` handling
35
+ - Index pages: `IndexTableLayout` (`patterns/IndexTableLayout`) composes the page shell around `DataTable`; hosts pass ready-made controls and own saved-view persistence
35
36
  - Page chrome: `PageHeader` (title or breadcrumbs variant), `Breadcrumbs`, `TabBar`, `BottomPanel` (resizable bottom drawer)
36
37
  - Feedback: `Spinner`, `Banner`, `Toast`, `LoadingShimmer`, `ProgressBar`
37
38
  - Overlays: `Modal`, `WizardModal` (`patterns/WizardModal`), `RightPanel`, `Popover`, `Tooltip` / `TextUnderlineTooltip`, `DropdownMenu`, `FloatingPanel`
39
+ - Modal close button: localize the default with `PDSProvider strings={{ closeModal: translatedLabel }}` (English: "Close"), or override one modal with `contentProps.closeButtonLabel`.
38
40
  - Forms: `ConfigFormGroup`, `FormField` (`TextField`, `TextAreaField`, `TableBoxField`), `Input`, `TextArea`, `Select`, `Combobox`, `Checkbox`, `Radio`, `Toggle`, `DatePicker`
39
41
  - Status: `Sticker` (status badges), `Badge` (counts), `StatusIndicator`
42
+ - Saved views: `TableControls` (or `DataTable.controls`) requires `onSetDefaultView` and `onUnsetDefaultView` together, or neither. Editable views offer "Set as default" / "Unset default" based on `view.isDefault`; the design system confirms before calling either callback and warns that both changes affect the entire organization. Consumers own persistence and must remove their own confirmations to avoid double prompts. Compact controls omit saved views.
43
+ - DataTable filters: pass `filters` and an optional `filterResolver` through `DataTable.controls` or directly to `TableControls`. Built-in filter types are `input`, `select`, `multiselect`, `combobox`, and `daterange`; a supplied `filterPanel` takes precedence. With `clientFiltering`, `column.filter` generates filters backed by TanStack column-filter state.
40
44
  - FilterBar: optional `FilterField.condition`, `pickerGroup`, and `disabledReason` support host-defined individual predicates in pills and native Rules; existing aggregate fields stay unchanged. See components/DataTable/DataTable.mdx. Hosts own feature activation and serialization.
41
45
 
42
46
  ## Testing
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@persona/design-system",
3
- "version": "0.9.1",
3
+ "version": "0.10.0",
4
4
  "description": "React components for Persona UI",
5
5
  "keywords": [
6
6
  "tanstack-intent"
@@ -141,6 +141,7 @@
141
141
  "./mixins/scrollbar": "./dist/mixins/scrollbar.mjs",
142
142
  "./mixins/text": "./dist/mixins/text.mjs",
143
143
  "./patterns/CardGrouping": "./dist/patterns/CardGrouping/index.mjs",
144
+ "./patterns/IndexTableLayout": "./dist/patterns/IndexTableLayout/index.mjs",
144
145
  "./patterns/LayoutLoadingShimmer": "./dist/patterns/LayoutLoadingShimmer/index.mjs",
145
146
  "./patterns/LayoutLoadingSpinner": "./dist/patterns/LayoutLoadingSpinner/index.mjs",
146
147
  "./patterns/PageLayout": "./dist/patterns/PageLayout/index.mjs",
@@ -212,8 +213,8 @@
212
213
  "devDependencies": {
213
214
  "@faker-js/faker": "^10.5.0",
214
215
  "@figma/code-connect": "^1.4.4",
215
- "@persona/design-tokens": "0.4.19",
216
- "@persona/icons": "0.1.8",
216
+ "@persona/design-tokens": "0.4.20",
217
+ "@persona/icons": "0.1.9",
217
218
  "@storybook/react": "^10.4.6",
218
219
  "@storybook/react-vite": "^10.4.6",
219
220
  "@tanstack/intent": "^0.3.6",
@@ -397,6 +398,7 @@
397
398
  "./mixins/scrollbar": "./dist/mixins/scrollbar.mjs",
398
399
  "./mixins/text": "./dist/mixins/text.mjs",
399
400
  "./patterns/CardGrouping": "./dist/patterns/CardGrouping/index.mjs",
401
+ "./patterns/IndexTableLayout": "./dist/patterns/IndexTableLayout/index.mjs",
400
402
  "./patterns/LayoutLoadingShimmer": "./dist/patterns/LayoutLoadingShimmer/index.mjs",
401
403
  "./patterns/LayoutLoadingSpinner": "./dist/patterns/LayoutLoadingSpinner/index.mjs",
402
404
  "./patterns/PageLayout": "./dist/patterns/PageLayout/index.mjs",
@@ -24,6 +24,7 @@ exists. If there is no `.mdx`, use the published type declarations
24
24
  | `SingleColumnLayout` | One page column, with optional tabs and a page notice. `width="wide"` uses the fluid grid | `@persona/design-system/patterns/PageLayout` |
25
25
  | `SplitColumnLayout` | An 8:4 main and aside page. Same optional regions as `SingleColumnLayout`. Stacks main then aside below 768px | `@persona/design-system/patterns/PageLayout` |
26
26
  | `DataTable` | Data table — browsing tabular data with filtering, bulk actions, search, pagination, and sorting | `@persona/design-system/components/DataTable` |
27
+ | `IndexTableLayout` | Standard page shell for a DataTable index; hosts supply controls and own saved-view persistence | `@persona/design-system/patterns/IndexTableLayout` |
27
28
  | `FilterBar` | Structured filters with native Rules; opt-in field `condition`, `pickerGroup`, and `disabledReason` support individual host-defined predicates. Hosts own flags and serialization; see DataTable.mdx | `@persona/design-system/components/DataTable/TableControls` |
28
29
  | `DatePicker` | Picking a date or date range from a calendar | `@persona/design-system/components/DatePicker` |
29
30
  | `DropdownButton` | Opening a menu of related actions from a button | `@persona/design-system/components/DropdownButton` |
@@ -15,6 +15,7 @@ Which pattern to use, and for what. Patterns with a dedicated doc link to
15
15
  | Indicators | A record’s open, pending, completed, or failed state next to other content. An in-page notice the user shouldn’t miss (success, warning, error). Use `Toast` if it can auto-dismiss |
16
16
  | [SingleColumnLayout](../../patterns/PageLayout/SingleColumnLayout.mdx) | One page column under `PageHeader`, with optional tabs and a page notice. `width="wide"` uses the fluid grid |
17
17
  | [SplitColumnLayout](../../patterns/PageLayout/SplitColumnLayout.mdx) | An 8:4 main and aside page. Same optional regions. Stacks main then aside below 768px |
18
+ | [IndexTableLayout](../../patterns/IndexTableLayout/IndexTableLayout.mdx) | index page = `IndexTableLayout`. A standard page shell for `DataTable`; hosts provide controls and own saved-view persistence |
18
19
  | LayoutLoadingSpinner | Centered 120px loading ring that fills its container. Use as the loading state for a page or embedded app when no layout-specific shimmer exists. |
19
20
  | LayoutLoadingShimmer | Filling space while content loads |
20
21
  | [Panels](../../patterns/Panels/Panels.mdx) | Use `RightPanel` when the page should stay visible. Use `Modal` when the task needs full attention. Never a custom drawer. |
@@ -24,8 +25,9 @@ Which pattern to use, and for what. Patterns with a dedicated doc link to
24
25
 
25
26
  ## Page layouts
26
27
 
27
- New pages render `PageHeader`, then `SingleColumnLayout` or `SplitColumnLayout`. Do not wrap the
28
- template in `Container` or `Section`.
28
+ Index pages backed by `DataTable` use `IndexTableLayout`, which owns its `Container`, `PageHeader`,
29
+ `Section`, and `Card` shell. Other pages render `PageHeader`, then `SingleColumnLayout` or
30
+ `SplitColumnLayout`. Do not wrap those templates in `Container` or `Section`.
29
31
 
30
32
  ```tsx
31
33
  import Header from '@persona/design-system/components/PageHeader';
@@ -12,8 +12,11 @@ metadata:
12
12
 
13
13
  ```tsx
14
14
  import { Color, Spacing, Typography } from '@persona/design-tokens';
15
+ import { semanticColor } from '@persona/design-system/lib/semanticColor';
15
16
  ```
16
17
 
18
+ - Before picking a color, use the PDS component that does the job; only custom styling needs tokens.
19
+ - Paint colors with semantic tokens (`semanticColor(theme, 'FgPrimary', Color.TextPrimary)`), never `Color.*`, `theme.color.*` or hex — those are fixed and break dark mode. `Color.*` is only the fallback.
17
20
  - `Spacing[0–9]` = 0/4/8/12/16/24/32/40/48/56px. If you hardcode a value, use a multiple of 4 and comment what it's doing.
18
21
  - Always use complete `Typography` styles (e.g. `Typography.TextMedium`), never individual font properties.
19
22
  - See [TOKENS.md](TOKENS.md) for selection rules.
@@ -40,6 +43,7 @@ Never hand-roll `<table>`, `<thead>`, `<th>`, or `<td>`. Pick the component by u
40
43
  - **Row actions**: pass `rowActions={[{ label, onClick }]}` — never use `Popover` + custom menu items.
41
44
  - **Status cells**: use `renderCell: ({ cellValue, row }) => <Sticker ...>` in the column config.
42
45
  - **Body cell text**: use `size='md'`, not `size='sm'` (sm is for timestamps and captions only).
46
+ - **Saved-view defaults**: `TableControls` / `DataTable.controls` accepts `onSetDefaultView` and `onUnsetDefaultView` together, or neither. With `canEditViews`, `view.isDefault` selects "Unset default" instead of "Set as default". The design system shows a confirmation modal before invoking either callback, leading with the disclaimer that the change affects the entire organization and matching delete-view cancellation, pending, retry, and focus restoration. Consumers persist the change and update `views[].isDefault`; remove host confirmations to avoid double prompts. Compact controls omit saved views. Localize `unsetDefaultView`, `setDefaultViewTitle`, `setDefaultViewConfirmation`, `unsetDefaultViewTitle`, and `unsetDefaultViewConfirmation`.
43
47
 
44
48
  ### TableLayout loading & empty behavior
45
49
 
@@ -127,7 +131,7 @@ React 18+ (TanStack Router's peer range), while PDS itself still supports React
127
131
 
128
132
  ## Localization
129
133
 
130
- Built-in copy in the table chrome (DataTable empty states and checkbox labels, `Pagination`,
134
+ The `Modal` close-button label and built-in copy in the table chrome (DataTable empty states and checkbox labels, `Pagination`,
131
135
  the column configuration gear, `ControlBar` saved-view tabs, Filters V2 pills, picker, operators,
132
136
  rules builder and value controls) is English by default and translatable through `PDSProvider`:
133
137
 
@@ -139,6 +143,9 @@ rules builder and value controls) is English by default and translatable through
139
143
  keep their English defaults, and a value of the wrong kind (string vs. formatter) is ignored.
140
144
  Persona dashboards pass `useCommonStrings()` from `@persona-id/persona-dashboard-app` straight
141
145
  through.
146
+ - `Modal`'s built-in close button uses `strings.closeModal` (English: "Close"). Override one instance
147
+ with `contentProps.closeButtonLabel`; it takes precedence over the provider string and does not
148
+ change `contentProps.showCloseButton` behavior.
142
149
  - `locale` makes table `date` / `datetime` cells and Filters V2 date values use the locale's
143
150
  medium `Intl` format ("6 oct. 2026, 16 h 39" for fr-CA). Omitted or `en-US` keeps the
144
151
  historical "Oct 6, 2026 4:39 PM". `format: { type: 'datetime', config: { showTimeZone: true } }`
@@ -177,6 +184,6 @@ Add `ComponentName.stories.tsx` for every new component or visual variant.
177
184
 
178
185
  ## Resources
179
186
 
180
- - [TOKENS.md](TOKENS.md) — Color / Spacing / Typography selection and catalog, radius, charts
187
+ - [TOKENS.md](TOKENS.md) — semantic color tokens (Fg / Surface / Border / Action / Input / Feedback / Status / Opacity), recipes and dark-mode checklist; Spacing / Typography catalog, radius, elevation, charts
181
188
  - [PATTERNS.md](PATTERNS.md) — forms, layout, panels, indicators, feedback, empty states
182
189
  - [COMPONENTS.md](COMPONENTS.md) — which PDS component to use, and its import path; APIs live in each component's `.mdx`