@persona/design-system 0.1.9 → 0.2.1

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 (450) hide show
  1. package/CHANGELOG.md +27 -0
  2. package/dist/{Action-CVtzREhU.d.mts → Action-DnR0YTxO.d.mts} +3 -3
  3. package/dist/Action.d.mts +1 -1
  4. package/dist/AdvancedFilterRuleRow.d.mts +3 -3
  5. package/dist/AdvancedFilterRulesPopover.d.mts +3 -3
  6. package/dist/ArrayValueControl.d.mts +1 -1
  7. package/dist/Attribute.d.mts +4 -4
  8. package/dist/AttributeGrid.d.mts +1 -1
  9. package/dist/{Badge-DEVbRlJX.mjs → Badge-DRn_r6is.mjs} +2 -2
  10. package/dist/{Badge-DEVbRlJX.mjs.map → Badge-DRn_r6is.mjs.map} +1 -1
  11. package/dist/Banner.d.mts +1 -1
  12. package/dist/BooleanValueControl.d.mts +1 -1
  13. package/dist/{Breadcrumb-lziQ1FX9.d.mts → Breadcrumb-DEwZFJHF.d.mts} +10 -2
  14. package/dist/Breadcrumb.d.mts +1 -1
  15. package/dist/{Breadcrumbs-DJ5qqqRD.d.mts → Breadcrumbs-0e_3v9FF.d.mts} +2 -2
  16. package/dist/{Breadcrumbs-W8hIhdHD.mjs → Breadcrumbs-Byf2ye6H.mjs} +43 -26
  17. package/dist/Breadcrumbs-Byf2ye6H.mjs.map +1 -0
  18. package/dist/Breadcrumbs.d.mts +1 -1
  19. package/dist/{Button-Vd5O4DUp.d.mts → Button-DkjwN_Op.d.mts} +3 -3
  20. package/dist/Button.d.mts +1 -1
  21. package/dist/ButtonGroup.d.mts +1 -1
  22. package/dist/Calendar.d.mts +1 -1
  23. package/dist/CalendarBase.d.mts +1 -1
  24. package/dist/{Card-BMCB9eFC.mjs → Card-CLTkZLKr.mjs} +4 -4
  25. package/dist/{Card-BMCB9eFC.mjs.map → Card-CLTkZLKr.mjs.map} +1 -1
  26. package/dist/{Card-CqnG--CU.d.mts → Card-DxFajLnx.d.mts} +4 -4
  27. package/dist/Card.d.mts +1 -1
  28. package/dist/Card2.d.mts +1 -1
  29. package/dist/{CardV2-C0fcOUdp.mjs → CardV2-m9yOInMU.mjs} +16 -16
  30. package/dist/{CardV2-C0fcOUdp.mjs.map → CardV2-m9yOInMU.mjs.map} +1 -1
  31. package/dist/{Checkbox-Bm8exUfH.d.mts → Checkbox-Bmm-r5ei.d.mts} +1 -1
  32. package/dist/{Checkbox-BcuiFvK7.mjs → Checkbox-CU27-Aa8.mjs} +6 -6
  33. package/dist/{Checkbox-BcuiFvK7.mjs.map → Checkbox-CU27-Aa8.mjs.map} +1 -1
  34. package/dist/Checkbox.d.mts +1 -1
  35. package/dist/CheckboxGroupField.d.mts +2 -2
  36. package/dist/ChoicesValueControl.d.mts +1 -1
  37. package/dist/{Combobox-BaD0f2Du.d.mts → Combobox-BgKEHP9p.d.mts} +3 -3
  38. package/dist/{Combobox-B6JyLog8.mjs → Combobox-DhTUY8JT.mjs} +55 -31
  39. package/dist/Combobox-DhTUY8JT.mjs.map +1 -0
  40. package/dist/Combobox.d.mts +2 -2
  41. package/dist/{ComboboxBase-BsPf8BZh.d.mts → ComboboxBase-Dmzn8a53.d.mts} +7 -7
  42. package/dist/ComboboxBase.d.mts +1 -1
  43. package/dist/{ComboboxMultiSelect-DhLzCWbz.d.mts → ComboboxMultiSelect-BLKUKNEW.d.mts} +2 -2
  44. package/dist/ComboboxMultiSelect.d.mts +1 -1
  45. package/dist/{ComboboxSingleSelect-P0r5rs_u.d.mts → ComboboxSingleSelect-Kpl-iOok.d.mts} +4 -4
  46. package/dist/ComboboxSingleSelect.d.mts +1 -1
  47. package/dist/{CompactBar-CXqlVKy7.d.mts → CompactBar-E9hPDRvI.d.mts} +3 -3
  48. package/dist/CompactBar.d.mts +1 -1
  49. package/dist/{ConfigFormGroup-yhb2jldT.mjs → ConfigFormGroup-GgzSDzgL.mjs} +3 -3
  50. package/dist/{ConfigFormGroup-yhb2jldT.mjs.map → ConfigFormGroup-GgzSDzgL.mjs.map} +1 -1
  51. package/dist/{ControlBar-tOCQnbAl.d.mts → ControlBar-DYrjBDzu.d.mts} +2 -2
  52. package/dist/ControlBar.d.mts +1 -1
  53. package/dist/DataTable.d.mts +4 -4
  54. package/dist/DateField.d.mts +1 -1
  55. package/dist/{DatePicker-Bw79p-Lx.mjs → DatePicker-DpGvo7Bd.mjs} +23 -23
  56. package/dist/DatePicker-DpGvo7Bd.mjs.map +1 -0
  57. package/dist/DatePicker.d.mts +1 -1
  58. package/dist/DateRangePicker.d.mts +2 -1
  59. package/dist/DateValueControl.d.mts +1 -1
  60. package/dist/{DropdownButton-BI3IFJun.mjs → DropdownButton-DGgfGW_o.mjs} +3 -3
  61. package/dist/{DropdownButton-BI3IFJun.mjs.map → DropdownButton-DGgfGW_o.mjs.map} +1 -1
  62. package/dist/DropdownButton.d.mts +2 -2
  63. package/dist/{DropdownMenu-D6nfAsi0.d.mts → DropdownMenu-B2t3Bwky.d.mts} +3 -3
  64. package/dist/{DropdownMenu-D25WBCah.mjs → DropdownMenu-DZIFSJXD.mjs} +3 -3
  65. package/dist/{DropdownMenu-D25WBCah.mjs.map → DropdownMenu-DZIFSJXD.mjs.map} +1 -1
  66. package/dist/DropdownMenu.d.mts +1 -1
  67. package/dist/{ErrorProps-CN2XjaOX.d.mts → ErrorProps-DX50vo-U.d.mts} +1 -1
  68. package/dist/ErrorProps.d.mts +1 -1
  69. package/dist/{FieldRegistry-rqSkjchY.d.mts → FieldRegistry-COyIA4VU.d.mts} +2 -2
  70. package/dist/FieldRegistry.d.mts +1 -1
  71. package/dist/{FilterBar-D3LiIy1-.d.mts → FilterBar-CS2YjiTr.d.mts} +8 -5
  72. package/dist/FilterBar.d.mts +1 -1
  73. package/dist/FilterPickerMenu.d.mts +3 -3
  74. package/dist/FilterPill.d.mts +1 -1
  75. package/dist/FilterPopover.d.mts +13 -3
  76. package/dist/FloatValueControl.d.mts +1 -1
  77. package/dist/{FormControl-CFU9uKF7.mjs → FormControl-BIXJ-FPI.mjs} +5 -5
  78. package/dist/{FormControl-CFU9uKF7.mjs.map → FormControl-BIXJ-FPI.mjs.map} +1 -1
  79. package/dist/{FormControl-DH3bgqaB.d.mts → FormControl-CZFmub1N.d.mts} +3 -3
  80. package/dist/FormControl.d.mts +1 -1
  81. package/dist/FormControlLabel.d.mts +1 -1
  82. package/dist/{FormField-BugkBvN4.d.mts → FormField-8rlT8pm0.d.mts} +2 -2
  83. package/dist/{FormField-DdmgSWq4.mjs → FormField-DcGQvgNW.mjs} +32 -31
  84. package/dist/FormField-DcGQvgNW.mjs.map +1 -0
  85. package/dist/FormField.d.mts +1 -1
  86. package/dist/{Header-CDTYK1XJ.d.mts → Header-OLZuv8fF.d.mts} +2 -2
  87. package/dist/Header.d.mts +1 -1
  88. package/dist/{HelperTooltip-B7Ysh8B3.d.mts → HelperTooltip-CJDG7Ugp.d.mts} +3 -3
  89. package/dist/HelperTooltip.d.mts +1 -1
  90. package/dist/{HoverCopyableField-7TWP0Y1Z.mjs → HoverCopyableField-BHdCaR-R.mjs} +6 -6
  91. package/dist/{HoverCopyableField-7TWP0Y1Z.mjs.map → HoverCopyableField-BHdCaR-R.mjs.map} +1 -1
  92. package/dist/HoverCopyableField.d.mts +1 -1
  93. package/dist/{IconButton-P8w0JDI5.mjs → IconButton-DC4rh6ow.mjs} +5 -5
  94. package/dist/{IconButton-P8w0JDI5.mjs.map → IconButton-DC4rh6ow.mjs.map} +1 -1
  95. package/dist/{IconButton-BHCmHIx5.d.mts → IconButton-Dc17jZPG.d.mts} +2 -2
  96. package/dist/IconButton.d.mts +1 -1
  97. package/dist/ImageTile.d.mts +2 -2
  98. package/dist/InlineCombobox.d.mts +2 -2
  99. package/dist/InlineInput.d.mts +1 -1
  100. package/dist/{Input-DMgVyZyq.d.mts → Input-DsS4J78T.d.mts} +5 -5
  101. package/dist/{Input-QC6xla6I.mjs → Input-PWfwMSJ7.mjs} +5 -5
  102. package/dist/{Input-QC6xla6I.mjs.map → Input-PWfwMSJ7.mjs.map} +1 -1
  103. package/dist/Input.d.mts +1 -1
  104. package/dist/{InputProps-BnjxrdWQ.d.mts → InputProps-Buxtnz77.d.mts} +2 -2
  105. package/dist/InputProps.d.mts +1 -1
  106. package/dist/IntegerValueControl.d.mts +1 -1
  107. package/dist/LayoutLoadingShimmer.d.mts +1 -1
  108. package/dist/Link.d.mts +1 -1
  109. package/dist/{ListBox-TrL3Tb7X.mjs → ListBox-BwD-q7wF.mjs} +12 -12
  110. package/dist/{ListBox-TrL3Tb7X.mjs.map → ListBox-BwD-q7wF.mjs.map} +1 -1
  111. package/dist/{ListBox-D09N1a5D.d.mts → ListBox-Nl9aOBeh.d.mts} +5 -5
  112. package/dist/ListBox.d.mts +1 -1
  113. package/dist/ListBoxField.d.mts +3 -3
  114. package/dist/{LoadingShimmer-Dsc_RCCf.mjs → LoadingShimmer-BPYPtFE1.mjs} +1 -1
  115. package/dist/{LoadingShimmer-Dsc_RCCf.mjs.map → LoadingShimmer-BPYPtFE1.mjs.map} +1 -1
  116. package/dist/LoadingShimmer.d.mts +2 -2
  117. package/dist/{LogicRow-BcuiSTHN.d.mts → LogicRow-BAREMenx.d.mts} +4 -4
  118. package/dist/LogicRow.d.mts +1 -1
  119. package/dist/MaskedInput.d.mts +1 -1
  120. package/dist/{Menu-Bv8dsrz6.d.mts → Menu-DM9OoZ71.d.mts} +4 -4
  121. package/dist/{Menu-DmeMgN-i.mjs → Menu-DpM8o234.mjs} +4 -4
  122. package/dist/{Menu-DmeMgN-i.mjs.map → Menu-DpM8o234.mjs.map} +1 -1
  123. package/dist/Menu.d.mts +1 -1
  124. package/dist/{MiddleTruncatedText-GXI-CPvs.mjs → MiddleTruncatedText-Bzpg3zAU.mjs} +3 -3
  125. package/dist/{MiddleTruncatedText-GXI-CPvs.mjs.map → MiddleTruncatedText-Bzpg3zAU.mjs.map} +1 -1
  126. package/dist/Modal.d.mts +3 -3
  127. package/dist/{PageHeader-jSLud2JI.mjs → PageHeader-Dq-J3san.mjs} +3 -3
  128. package/dist/{PageHeader-jSLud2JI.mjs.map → PageHeader-Dq-J3san.mjs.map} +1 -1
  129. package/dist/PageHeader.d.mts +2 -2
  130. package/dist/PageLayout.d.mts +16 -0
  131. package/dist/{PageSelector-vay4jpMp.d.mts → PageSelector-Ca4TcyxG.d.mts} +3 -3
  132. package/dist/PageSelector.d.mts +1 -1
  133. package/dist/{Pagination-ygLutOst.d.mts → Pagination-Dcmv7bVe.d.mts} +2 -2
  134. package/dist/{Pagination-BeYukNCj.mjs → Pagination-GALyid4q.mjs} +7 -7
  135. package/dist/{Pagination-BeYukNCj.mjs.map → Pagination-GALyid4q.mjs.map} +1 -1
  136. package/dist/Pagination.d.mts +1 -1
  137. package/dist/{Pii-QsTrz8wn.mjs → Pii-BalLvfze.mjs} +2 -2
  138. package/dist/{Pii-QsTrz8wn.mjs.map → Pii-BalLvfze.mjs.map} +1 -1
  139. package/dist/Pii.d.mts +1 -1
  140. package/dist/PillShell.d.mts +1 -1
  141. package/dist/{Popover-BkDpDdaO.mjs → Popover-BZ5Bs80y.mjs} +5 -5
  142. package/dist/{Popover-BkDpDdaO.mjs.map → Popover-BZ5Bs80y.mjs.map} +1 -1
  143. package/dist/Popover.d.mts +1 -1
  144. package/dist/ProgressBar.d.mts +1 -1
  145. package/dist/ProgressIndicator.d.mts +1 -1
  146. package/dist/{PseudoClassProps-DLxPxo7T.d.mts → PseudoClassProps-CcSlKNev.d.mts} +1 -1
  147. package/dist/PseudoClassProps.d.mts +1 -1
  148. package/dist/{Radio-CSX2eO-O.mjs → Radio-CtPz3EzX.mjs} +3 -3
  149. package/dist/{Radio-CSX2eO-O.mjs.map → Radio-CtPz3EzX.mjs.map} +1 -1
  150. package/dist/{RadioGroup-DKqbSfju.d.mts → RadioGroup-Xn46ovrV.d.mts} +1 -1
  151. package/dist/{RadioGroup-CnK0opBd.mjs → RadioGroup-sjBzFE_-.mjs} +3 -3
  152. package/dist/{RadioGroup-CnK0opBd.mjs.map → RadioGroup-sjBzFE_-.mjs.map} +1 -1
  153. package/dist/RadioGroup.d.mts +1 -1
  154. package/dist/RangeCalendar.d.mts +3 -1
  155. package/dist/RangeCalendarPresets.d.mts +1 -1
  156. package/dist/RuleEditorFields.d.mts +3 -3
  157. package/dist/RulesPill.d.mts +1 -1
  158. package/dist/{SearchInput-Bp2yjaE1.d.mts → SearchInput-Try11aJD.d.mts} +10 -3
  159. package/dist/SearchInput.d.mts +1 -1
  160. package/dist/Section.d.mts +1 -1
  161. package/dist/{SectionHeading-Q-rx2LEd.d.mts → SectionHeading-DvP9NEgN.d.mts} +2 -2
  162. package/dist/SectionHeading.d.mts +1 -1
  163. package/dist/{SegmentedControl-CgDQIVll.mjs → SegmentedControl-BugnH-h2.mjs} +4 -4
  164. package/dist/{SegmentedControl-CgDQIVll.mjs.map → SegmentedControl-BugnH-h2.mjs.map} +1 -1
  165. package/dist/{SegmentedControl-DrjdUOU9.d.mts → SegmentedControl-DckAdhcD.d.mts} +2 -2
  166. package/dist/SegmentedControl.d.mts +1 -1
  167. package/dist/{Select-Bk27TgN8.d.mts → Select-BmJ1OjXA.d.mts} +4 -4
  168. package/dist/{Select-C1ZoRk39.mjs → Select-DL-AjL0Q.mjs} +9 -9
  169. package/dist/{Select-C1ZoRk39.mjs.map → Select-DL-AjL0Q.mjs.map} +1 -1
  170. package/dist/Select.d.mts +1 -1
  171. package/dist/Slider.d.mts +1 -1
  172. package/dist/SliderRHF.d.mts +1 -1
  173. package/dist/SliderThumb.d.mts +1 -1
  174. package/dist/{Spacer-CJp0lwkL.mjs → Spacer-Ln3KChb5.mjs} +1 -1
  175. package/dist/{Spacer-CJp0lwkL.mjs.map → Spacer-Ln3KChb5.mjs.map} +1 -1
  176. package/dist/{Spinner-BEPF42RW.mjs → Spinner-BgBCCHGo.mjs} +1 -1
  177. package/dist/{Spinner-BEPF42RW.mjs.map → Spinner-BgBCCHGo.mjs.map} +1 -1
  178. package/dist/{Stack-CkV7k7TE.d.mts → Stack-CbcJykx9.d.mts} +2 -2
  179. package/dist/{Stack-Bl54WmhY.mjs → Stack-ckRN7LrP.mjs} +1 -1
  180. package/dist/{Stack-Bl54WmhY.mjs.map → Stack-ckRN7LrP.mjs.map} +1 -1
  181. package/dist/Stack.d.mts +1 -1
  182. package/dist/StatusIndicator.d.mts +1 -1
  183. package/dist/{Sticker-CyGb9dEu.mjs → Sticker-B0TbkV4o.mjs} +3 -3
  184. package/dist/{Sticker-CyGb9dEu.mjs.map → Sticker-B0TbkV4o.mjs.map} +1 -1
  185. package/dist/{Sticker-Bs25ISz7.d.mts → Sticker-BIVuastf.d.mts} +5 -5
  186. package/dist/Sticker.d.mts +1 -1
  187. package/dist/StringValueControl.d.mts +1 -1
  188. package/dist/SwatchPicker.d.mts +1 -1
  189. package/dist/Tab.d.mts +2 -2
  190. package/dist/{TabBar-Bn8PHHBZ.mjs → TabBar-DLf4Hwa4.mjs} +4 -4
  191. package/dist/{TabBar-Bn8PHHBZ.mjs.map → TabBar-DLf4Hwa4.mjs.map} +1 -1
  192. package/dist/TabBarIconButton.d.mts +1 -1
  193. package/dist/{Table-BNScLj9g.d.mts → Table-8jXlKYLy.d.mts} +1 -1
  194. package/dist/{Table-BfontAeY.mjs → Table-C-mx8Uj0.mjs} +5 -5
  195. package/dist/{Table-BfontAeY.mjs.map → Table-C-mx8Uj0.mjs.map} +1 -1
  196. package/dist/Table.d.mts +1 -1
  197. package/dist/{TableBody-CrDNMyT8.d.mts → TableBody-ByEcFueE.d.mts} +1 -1
  198. package/dist/TableBody.d.mts +1 -1
  199. package/dist/{TableBox-bmrKh_ax.mjs → TableBox-DGjKVQFO.mjs} +65 -55
  200. package/dist/TableBox-DGjKVQFO.mjs.map +1 -0
  201. package/dist/TableBox.d.mts +2 -2
  202. package/dist/{TableBoxCell-CvjLYhTV.d.mts → TableBoxCell-BmoPs1u1.d.mts} +7 -7
  203. package/dist/TableBoxCell.d.mts +1 -1
  204. package/dist/TableBoxField.d.mts +4 -4
  205. package/dist/{TableBoxRow-BzXECgid.d.mts → TableBoxRow-BAYvEDjT.d.mts} +4 -4
  206. package/dist/TableBoxRow.d.mts +1 -1
  207. package/dist/{TableBoxRowActions-BAiFXiCh.d.mts → TableBoxRowActions-DRs4MdK0.d.mts} +2 -2
  208. package/dist/TableBoxRowActions.d.mts +1 -1
  209. package/dist/TableCell.d.mts +1 -1
  210. package/dist/{TableControls-DVTtNAPo.mjs → TableControls-BK8DCsqi.mjs} +139 -67
  211. package/dist/TableControls-BK8DCsqi.mjs.map +1 -0
  212. package/dist/{TableControls-BehR7CKS.d.mts → TableControls-DscP6fyt.d.mts} +4 -4
  213. package/dist/TableControls.d.mts +1 -1
  214. package/dist/{TableControlsContext-D_SBFZN1.d.mts → TableControlsContext-BeJ7GHPN.d.mts} +2 -2
  215. package/dist/TableControlsContext.d.mts +1 -1
  216. package/dist/{TableHead-LxvG0e9k.d.mts → TableHead-g3afLl5B.d.mts} +1 -1
  217. package/dist/TableHead.d.mts +1 -1
  218. package/dist/{TableHeaderCell-Br8ZE3Xe.d.mts → TableHeaderCell-CWTMf2Fe.d.mts} +1 -1
  219. package/dist/TableHeaderCell.d.mts +1 -1
  220. package/dist/{TableLayout-BZeP8qfg.d.mts → TableLayout-hPlVO3dD.d.mts} +1 -1
  221. package/dist/TableLayout.d.mts +1 -1
  222. package/dist/{TableRow-BvS4yjo6.d.mts → TableRow-lvjbVccA.d.mts} +2 -2
  223. package/dist/TableRow.d.mts +1 -1
  224. package/dist/TableTH.d.mts +1 -1
  225. package/dist/{TableViewConfigurationDropdown-BYPh4dIP.d.mts → TableViewConfigurationDropdown-Ccxtk5dA.d.mts} +2 -2
  226. package/dist/TableViewConfigurationDropdown.d.mts +1 -1
  227. package/dist/TechnicalSticker-BrvR0zhC.mjs +266 -0
  228. package/dist/TechnicalSticker-BrvR0zhC.mjs.map +1 -0
  229. package/dist/TechnicalSticker.d.mts +7 -1
  230. package/dist/{Text-DNPbAuUG.d.mts → Text-CfIFUyHt.d.mts} +3 -3
  231. package/dist/{Text-RcEfNFLx.mjs → Text-hEoPeOc9.mjs} +1 -1
  232. package/dist/{Text-RcEfNFLx.mjs.map → Text-hEoPeOc9.mjs.map} +1 -1
  233. package/dist/Text.d.mts +1 -1
  234. package/dist/{TextArea-NCLsW-03.mjs → TextArea-BFsXUkuj.mjs} +3 -3
  235. package/dist/{TextArea-NCLsW-03.mjs.map → TextArea-BFsXUkuj.mjs.map} +1 -1
  236. package/dist/{TextArea-B89wtTsF.d.mts → TextArea-DiKEhpfD.d.mts} +2 -2
  237. package/dist/TextArea.d.mts +1 -1
  238. package/dist/{TextUnderlineTooltip-5-0D8s4z.d.mts → TextUnderlineTooltip-Bs6Jn5yr.d.mts} +3 -3
  239. package/dist/TextUnderlineTooltip.d.mts +1 -1
  240. package/dist/Tile.d.mts +2 -2
  241. package/dist/Toast.d.mts +1 -1
  242. package/dist/{Toggle-Bie9zCem.mjs → Toggle-CC2FTAKS.mjs} +5 -5
  243. package/dist/{Toggle-Bie9zCem.mjs.map → Toggle-CC2FTAKS.mjs.map} +1 -1
  244. package/dist/{Toggle-DzYLgxGk.d.mts → Toggle-oukvAn6V.d.mts} +1 -1
  245. package/dist/Toggle.d.mts +1 -1
  246. package/dist/{Tooltip-CUC-JuRL.d.mts → Tooltip-0iXDCV2O.d.mts} +3 -3
  247. package/dist/{Tooltip-BvDbmXak.mjs → Tooltip-CDvOu1UN.mjs} +3 -3
  248. package/dist/{Tooltip-BvDbmXak.mjs.map → Tooltip-CDvOu1UN.mjs.map} +1 -1
  249. package/dist/Tooltip.d.mts +1 -1
  250. package/dist/{TruncatedText-BJnowVTx.d.mts → TruncatedText-CdeU19Ev.d.mts} +1 -1
  251. package/dist/components/Attribute/index.mjs +10 -10
  252. package/dist/components/Attribute/index.mjs.map +1 -1
  253. package/dist/components/Badge/index.mjs +1 -1
  254. package/dist/components/Banner/index.mjs +1 -1
  255. package/dist/components/Breadcrumbs/index.d.mts +1 -1
  256. package/dist/components/Breadcrumbs/index.mjs +1 -1
  257. package/dist/components/Button/index.d.mts +2 -2
  258. package/dist/components/Button/index.mjs +1 -1
  259. package/dist/components/ButtonGroup/index.mjs +3 -3
  260. package/dist/components/Card/index.d.mts +2 -2
  261. package/dist/components/Card/index.mjs +1 -1
  262. package/dist/components/CardV2/index.d.mts +1 -1
  263. package/dist/components/CardV2/index.mjs +1 -1
  264. package/dist/components/Checkbox/index.d.mts +1 -1
  265. package/dist/components/Checkbox/index.mjs +1 -1
  266. package/dist/components/Combobox/index.d.mts +2 -2
  267. package/dist/components/Combobox/index.mjs +1 -1
  268. package/dist/components/ConfigFormGroup/index.mjs +2 -2
  269. package/dist/components/DataTable/TableControls/index.d.mts +15 -15
  270. package/dist/components/DataTable/TableControls/index.mjs +1 -1
  271. package/dist/components/DataTable/index.mjs +21 -21
  272. package/dist/components/DataTable/index.mjs.map +1 -1
  273. package/dist/components/DataTable/types.d.mts +2 -2
  274. package/dist/components/DatePicker/index.mjs +1 -1
  275. package/dist/components/DropdownButton/index.mjs +1 -1
  276. package/dist/components/DropdownMenu/index.d.mts +1 -1
  277. package/dist/components/DropdownMenu/index.mjs +1 -1
  278. package/dist/components/FormControl/index.d.mts +2 -2
  279. package/dist/components/FormControl/index.mjs +2 -2
  280. package/dist/components/FormField/index.d.mts +1 -1
  281. package/dist/components/FormField/index.mjs +1 -1
  282. package/dist/components/HoverCopyableField/index.mjs +1 -1
  283. package/dist/components/ImageTile/index.mjs +8 -8
  284. package/dist/components/Input/index.d.mts +1 -1
  285. package/dist/components/Input/index.mjs +1 -1
  286. package/dist/components/Link/index.mjs +1 -1
  287. package/dist/components/ListBox/index.d.mts +3 -3
  288. package/dist/components/ListBox/index.mjs +1 -1
  289. package/dist/components/LoadingShimmer/index.mjs +1 -1
  290. package/dist/components/MaskedInput/index.mjs +2 -2
  291. package/dist/components/Menu/index.d.mts +1 -1
  292. package/dist/components/Menu/index.mjs +1 -1
  293. package/dist/components/Modal/index.mjs +16 -8
  294. package/dist/components/Modal/index.mjs.map +1 -1
  295. package/dist/components/PageHeader/index.mjs +1 -1
  296. package/dist/components/Pagination/index.d.mts +3 -3
  297. package/dist/components/Pagination/index.mjs +1 -1
  298. package/dist/components/Pii/index.mjs +1 -1
  299. package/dist/components/Popover/index.mjs +1 -1
  300. package/dist/components/ProgressBar/index.mjs +1 -1
  301. package/dist/components/Radio/index.mjs +1 -1
  302. package/dist/components/RadioGroup/index.d.mts +1 -1
  303. package/dist/components/RadioGroup/index.mjs +1 -1
  304. package/dist/components/SegmentedControl/index.d.mts +1 -1
  305. package/dist/components/SegmentedControl/index.mjs +1 -1
  306. package/dist/components/Select/index.d.mts +1 -1
  307. package/dist/components/Select/index.mjs +1 -1
  308. package/dist/components/Slider/index.mjs +2 -2
  309. package/dist/components/Spacer/index.mjs +1 -1
  310. package/dist/components/Spinner/index.mjs +1 -1
  311. package/dist/components/Stack/index.d.mts +1 -1
  312. package/dist/components/Stack/index.mjs +1 -1
  313. package/dist/components/Sticker/index.d.mts +1 -1
  314. package/dist/components/Sticker/index.mjs +1 -1
  315. package/dist/components/TabBar/index.mjs +1 -1
  316. package/dist/components/Table/index.d.mts +7 -7
  317. package/dist/components/Table/index.mjs +1 -1
  318. package/dist/components/TableBox/index.d.mts +2 -2
  319. package/dist/components/TableBox/index.mjs +1 -1
  320. package/dist/components/TechnicalSticker/index.mjs +1 -231
  321. package/dist/components/Text/index.d.mts +1 -1
  322. package/dist/components/Text/index.mjs +1 -1
  323. package/dist/components/TextArea/index.d.mts +1 -1
  324. package/dist/components/TextArea/index.mjs +1 -1
  325. package/dist/components/Tile/index.mjs +4 -4
  326. package/dist/components/Toast/index.mjs +1 -1
  327. package/dist/components/Toggle/index.d.mts +1 -1
  328. package/dist/components/Toggle/index.mjs +1 -1
  329. package/dist/components/Tooltip/index.d.mts +3 -3
  330. package/dist/components/Tooltip/index.mjs +1 -1
  331. package/dist/compound-expression.d.mts +1 -1
  332. package/dist/{constants-BASogfT_.d.mts → constants-bA9kCzRQ.d.mts} +1 -1
  333. package/dist/constants.d.mts +1 -1
  334. package/dist/containers.d.mts +1 -1
  335. package/dist/display.d.mts +1 -1
  336. package/dist/fieldPickerOptions.d.mts +2 -2
  337. package/dist/{filter-size-context-Blw6Sd69.d.mts → filter-size-context-C1TvrE_O.d.mts} +2 -2
  338. package/dist/filter-size-context.d.mts +1 -1
  339. package/dist/helpers.d.mts +1 -1
  340. package/dist/{index-4_B2yRzD.d.mts → index-BC4edEsD.d.mts} +2 -2
  341. package/dist/{index-BxXTpeUb2.d.mts → index-CdaoOvFH.d.mts} +5 -5
  342. package/dist/{index-DDbjWdk0.d.mts → index-DJn4AeE4.d.mts} +4 -4
  343. package/dist/index.d.mts +1 -1
  344. package/dist/index2.d.mts +1 -1
  345. package/dist/index3.d.mts +3 -3
  346. package/dist/index4.d.mts +10 -10
  347. package/dist/{input-Bv5fKt5J.d.mts → input-D3Qd6dI8.d.mts} +3 -3
  348. package/dist/inputFields.d.mts +11 -11
  349. package/dist/{intersperse-vOYvFOfF.mjs → intersperse-yd3oMrQl.mjs} +1 -1
  350. package/dist/{intersperse-vOYvFOfF.mjs.map → intersperse-yd3oMrQl.mjs.map} +1 -1
  351. package/dist/lib/MiddleTruncatedText.mjs +1 -1
  352. package/dist/lib/PDSProvider.d.mts +1 -1
  353. package/dist/lib/TruncatedText.d.mts +1 -1
  354. package/dist/lib/TruncatedText.mjs +1 -1
  355. package/dist/lib/TruncatedTextWithTooltip.d.mts +1 -1
  356. package/dist/lib/TruncatedTextWithTooltip.mjs +2 -2
  357. package/dist/lib/embeddedSurfaceProtocol.d.mts +29 -0
  358. package/dist/lib/embeddedSurfaceProtocol.mjs +74 -0
  359. package/dist/lib/embeddedSurfaceProtocol.mjs.map +1 -0
  360. package/dist/lib/embeddedSurfaceRegistry.d.mts +11 -0
  361. package/dist/lib/embeddedSurfaceRegistry.mjs +19 -0
  362. package/dist/lib/embeddedSurfaceRegistry.mjs.map +1 -0
  363. package/dist/lib/message.d.mts +1 -1
  364. package/dist/lib/pseudoClass.d.mts +1 -1
  365. package/dist/lib/useEmbeddedSurface.d.mts +6 -0
  366. package/dist/lib/useEmbeddedSurface.mjs +135 -0
  367. package/dist/lib/useEmbeddedSurface.mjs.map +1 -0
  368. package/dist/lib/zindex.d.mts +2 -0
  369. package/dist/lib/zindex.mjs +2 -0
  370. package/dist/lib/zindex.mjs.map +1 -1
  371. package/dist/{message-CMHvlPGn.d.mts → message-CsK3sIq0.d.mts} +1 -1
  372. package/dist/mixins/focus.d.mts +1 -1
  373. package/dist/mixins/hoverable.d.mts +2 -2
  374. package/dist/mixins/input.d.mts +1 -1
  375. package/dist/mixins/menuItem.d.mts +2 -2
  376. package/dist/mixins/text.d.mts +1 -1
  377. package/dist/{operators-Bo31xlc2.d.mts → operators-C_xPzItk.d.mts} +2 -2
  378. package/dist/operators.d.mts +1 -1
  379. package/dist/{layouts → patterns}/LayoutLoadingShimmer/index.mjs +7 -7
  380. package/dist/patterns/LayoutLoadingShimmer/index.mjs.map +1 -0
  381. package/dist/patterns/PageLayout/index.d.mts +2 -0
  382. package/dist/patterns/PageLayout/index.mjs +35 -0
  383. package/dist/patterns/PageLayout/index.mjs.map +1 -0
  384. package/dist/{text-B21s9mRZ.d.mts → text-BaQdW8qa.d.mts} +1 -1
  385. package/dist/{theme-BzBpJXhO.d.mts → theme-D9Y6NOzb.d.mts} +1 -1
  386. package/dist/theme.d.mts +1 -1
  387. package/dist/{types-D7ppqnNj.d.mts → types-BKEwt0uq.d.mts} +2 -2
  388. package/dist/{types-DEh_pXgS.d.mts → types-CjHuZoVJ.d.mts} +1 -1
  389. package/dist/{types-TV9nVfSe.d.mts → types-DVsBRqjZ.d.mts} +1 -1
  390. package/dist/{types-D58IoRx6.d.mts → types-mb3woqzE.d.mts} +6 -7
  391. package/dist/types.d.mts +1 -1
  392. package/dist/types2.d.mts +1 -1
  393. package/dist/types3.d.mts +1 -1
  394. package/dist/types4.d.mts +1 -1
  395. package/dist/useComboboxFooterAction.d.mts +1 -1
  396. package/dist/{useFilterStateV2-DCQghouq.d.mts → useFilterStateV2-CGzRyv0i.d.mts} +3 -3
  397. package/dist/useFilterStateV2.d.mts +1 -1
  398. package/dist/{useFormField-D8mLsiQc.d.mts → useFormField-DhwEi45-.d.mts} +2 -2
  399. package/dist/{useFormField-DhYd6bNn.mjs → useFormField-eftOPiXj.mjs} +2 -2
  400. package/dist/{useFormField-DhYd6bNn.mjs.map → useFormField-eftOPiXj.mjs.map} +1 -1
  401. package/dist/useFormField.d.mts +1 -1
  402. package/dist/{useFormGroup-DWVW7A9f.mjs → useFormGroup-BMukAMAd.mjs} +1 -1
  403. package/dist/{useFormGroup-DWVW7A9f.mjs.map → useFormGroup-BMukAMAd.mjs.map} +1 -1
  404. package/dist/{useTableBoxDragAndDrop-BMo-iaUF.d.mts → useTableBoxDragAndDrop-CsnN52lx.d.mts} +1 -1
  405. package/dist/useTableBoxDragAndDrop.d.mts +1 -1
  406. package/dist/{useToggle-Bo3yd14Y.mjs → useToggle-3k3EkV8V.mjs} +1 -1
  407. package/dist/{useToggle-Bo3yd14Y.mjs.map → useToggle-3k3EkV8V.mjs.map} +1 -1
  408. package/dist/useTruncation.d.mts +1 -1
  409. package/dist/{utilities-BO_95qFA.d.mts → utilities-DnSIlR1i.d.mts} +1 -1
  410. package/dist/utilities.d.mts +1 -1
  411. package/dist/utils/storybook.mjs +1 -1
  412. package/dist/utils/testing.d.mts +1 -1
  413. package/dist/utils/testing.mjs +1 -1
  414. package/dist/utils.d.mts +1 -1
  415. package/dist/{validation-vLh3t2dk.d.mts → validation-BdP2vajF.d.mts} +3 -3
  416. package/dist/validation.d.mts +1 -1
  417. package/dist/{value-control-resolver-CE-bqdAl.d.mts → value-control-resolver-CiGEHQAc.d.mts} +2 -2
  418. package/dist/value-control-resolver.d.mts +1 -1
  419. package/llms.txt +43 -0
  420. package/package.json +14 -5
  421. package/skills/ui-authoring/SKILL.md +27 -1
  422. package/dist/Breadcrumbs-W8hIhdHD.mjs.map +0 -1
  423. package/dist/Combobox-B6JyLog8.mjs.map +0 -1
  424. package/dist/DatePicker-Bw79p-Lx.mjs.map +0 -1
  425. package/dist/FormField-DdmgSWq4.mjs.map +0 -1
  426. package/dist/TableBox-bmrKh_ax.mjs.map +0 -1
  427. package/dist/TableControls-DVTtNAPo.mjs.map +0 -1
  428. package/dist/components/TechnicalSticker/index.mjs.map +0 -1
  429. package/dist/layouts/LayoutLoadingShimmer/index.mjs.map +0 -1
  430. /package/dist/{index--p6oQT9I.d.mts → index-0-W_aPej.d.mts} +0 -0
  431. /package/dist/{index-BYd3Btr1.d.mts → index-7in8TPrM.d.mts} +0 -0
  432. /package/dist/{index-CDGG7lCB.d.mts → index-7rWKHdox.d.mts} +0 -0
  433. /package/dist/{index-CMuRFTR3.d.mts → index-B4woaFSm.d.mts} +0 -0
  434. /package/dist/{index-CNxS4Tlu.d.mts → index-BINnViIh.d.mts} +0 -0
  435. /package/dist/{index-CWB6exYm.d.mts → index-BNRXMhlr.d.mts} +0 -0
  436. /package/dist/{index-CzItj62a.d.mts → index-BO_854F2.d.mts} +0 -0
  437. /package/dist/{index-D4DUvwPf.d.mts → index-BOn0AAue.d.mts} +0 -0
  438. /package/dist/{index-D5tSVhTd.d.mts → index-CCt0lwyI.d.mts} +0 -0
  439. /package/dist/{index-DGsJdI5l.d.mts → index-CREkvfw9.d.mts} +0 -0
  440. /package/dist/{index-DM6vVDZD.d.mts → index-CRo77wc3.d.mts} +0 -0
  441. /package/dist/{index-DWfPppPU.d.mts → index-Ci-uuV07.d.mts} +0 -0
  442. /package/dist/{index-DXJd7-2Z.d.mts → index-CsuikFeJ.d.mts} +0 -0
  443. /package/dist/{index-DkrC-i1D.d.mts → index-CzUpNo0e.d.mts} +0 -0
  444. /package/dist/{index-DvuJXuAN.d.mts → index-DDdPqD_H.d.mts} +0 -0
  445. /package/dist/{index-Iujpc9_6.d.mts → index-DeVKzGce.d.mts} +0 -0
  446. /package/dist/{index-PWQavSPf.d.mts → index-Es5nKSSL.d.mts} +0 -0
  447. /package/dist/{index-e6k85DKM.d.mts → index-FtE8MXJ_.d.mts} +0 -0
  448. /package/dist/{index-lIMqGGJz.d.mts → index-ehD5GjMH.d.mts} +0 -0
  449. /package/dist/{index-sViox9YW.d.mts → index-uMNhmxEh.d.mts} +0 -0
  450. /package/dist/{layouts → patterns}/LayoutLoadingShimmer/index.d.mts +0 -0
@@ -0,0 +1,74 @@
1
+ //#region lib/embeddedSurfaceProtocol.ts
2
+ const EMBEDDED_SURFACE_CHANNEL = "persona-embedded-surface";
3
+ const EMBEDDED_SURFACE_PROTOCOL_VERSION = 1;
4
+ const IDENTIFIER_PATTERN = /^[A-Za-z0-9_:-]+$/;
5
+ const MAX_IDENTIFIER_LENGTH = 64;
6
+ const MAX_SURFACE_IDS = 16;
7
+ const coerceIdentifier = (value) => {
8
+ if (typeof value !== "string" || value.length < 1 || value.length > MAX_IDENTIFIER_LENGTH || !IDENTIFIER_PATTERN.test(value)) return;
9
+ return value;
10
+ };
11
+ const isRecord = (value) => typeof value === "object" && value != null && !Array.isArray(value);
12
+ const isKnownKind = (value) => value === "hello" || value === "surfaceSnapshot" || value === "welcome";
13
+ const getEnvelopeMetadata = (value) => {
14
+ if (value.channel !== "persona-embedded-surface" || value.version !== 1) return;
15
+ const connectionId = coerceIdentifier(value.connectionId);
16
+ return connectionId != null ? { connectionId } : void 0;
17
+ };
18
+ const coerceHostboundEnvelope = (value) => {
19
+ if (!isRecord(value) || !isKnownKind(value.kind)) return;
20
+ const metadata = getEnvelopeMetadata(value);
21
+ if (metadata == null) return;
22
+ const payload = isRecord(value.payload) ? value.payload : void 0;
23
+ if (payload == null) return;
24
+ switch (value.kind) {
25
+ case "hello": return {
26
+ channel: EMBEDDED_SURFACE_CHANNEL,
27
+ version: 1,
28
+ ...metadata,
29
+ kind: value.kind,
30
+ payload: {}
31
+ };
32
+ case "surfaceSnapshot": {
33
+ const epoch = coerceIdentifier(payload.epoch);
34
+ if (epoch == null || !Array.isArray(payload.surfaces) || payload.surfaces.length > MAX_SURFACE_IDS) return;
35
+ const surfaces = [];
36
+ for (const surface of payload.surfaces) {
37
+ if (!isRecord(surface)) return;
38
+ const surfaceId = coerceIdentifier(surface.surfaceId);
39
+ if (surfaceId == null) return;
40
+ surfaces.push({ surfaceId });
41
+ }
42
+ return {
43
+ channel: EMBEDDED_SURFACE_CHANNEL,
44
+ version: 1,
45
+ ...metadata,
46
+ kind: value.kind,
47
+ payload: {
48
+ epoch,
49
+ surfaces
50
+ }
51
+ };
52
+ }
53
+ case "welcome": return;
54
+ }
55
+ };
56
+ const coerceChildboundEnvelope = (value) => {
57
+ if (!isRecord(value) || value.kind !== "welcome") return;
58
+ const metadata = getEnvelopeMetadata(value);
59
+ const payload = isRecord(value.payload) ? value.payload : void 0;
60
+ if (metadata == null || payload == null) return;
61
+ const epoch = coerceIdentifier(payload.epoch);
62
+ if (epoch == null) return;
63
+ return {
64
+ channel: EMBEDDED_SURFACE_CHANNEL,
65
+ version: 1,
66
+ ...metadata,
67
+ kind: value.kind,
68
+ payload: { epoch }
69
+ };
70
+ };
71
+ //#endregion
72
+ export { EMBEDDED_SURFACE_CHANNEL, EMBEDDED_SURFACE_PROTOCOL_VERSION, coerceChildboundEnvelope, coerceHostboundEnvelope };
73
+
74
+ //# sourceMappingURL=embeddedSurfaceProtocol.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"embeddedSurfaceProtocol.mjs","names":[],"sources":["../../lib/embeddedSurfaceProtocol.ts"],"sourcesContent":["export const EMBEDDED_SURFACE_CHANNEL = 'persona-embedded-surface';\nexport const EMBEDDED_SURFACE_PROTOCOL_VERSION = 1;\n\nexport type EmbeddedSurfaceKind = 'hello' | 'surfaceSnapshot' | 'welcome';\n\nexport type EmbeddedSurfacePayloads = {\n hello: Record<string, never>;\n surfaceSnapshot: {\n epoch: string;\n surfaces: Array<{ surfaceId: string }>;\n };\n welcome: {\n epoch: string;\n };\n};\n\nexport interface EmbeddedSurfaceEnvelope<K extends EmbeddedSurfaceKind = EmbeddedSurfaceKind> {\n channel: typeof EMBEDDED_SURFACE_CHANNEL;\n version: typeof EMBEDDED_SURFACE_PROTOCOL_VERSION;\n connectionId: string;\n kind: K;\n payload: EmbeddedSurfacePayloads[K];\n}\n\nexport type EmbeddedSurfaceEnvelopeUnion = {\n [K in EmbeddedSurfaceKind]: EmbeddedSurfaceEnvelope<K>;\n}[EmbeddedSurfaceKind];\n\nconst IDENTIFIER_PATTERN = /^[A-Za-z0-9_:-]+$/;\nconst MAX_IDENTIFIER_LENGTH = 64;\nconst MAX_SURFACE_IDS = 16;\n\nconst coerceIdentifier = (value: unknown): string | undefined => {\n if (\n typeof value !== 'string' ||\n value.length < 1 ||\n value.length > MAX_IDENTIFIER_LENGTH ||\n !IDENTIFIER_PATTERN.test(value)\n ) {\n return undefined;\n }\n return value;\n};\n\nconst isRecord = (value: unknown): value is Record<string, unknown> =>\n typeof value === 'object' && value != null && !Array.isArray(value);\n\nconst isKnownKind = (value: unknown): value is EmbeddedSurfaceKind =>\n value === 'hello' || value === 'surfaceSnapshot' || value === 'welcome';\n\nconst getEnvelopeMetadata = (\n value: Record<string, unknown>,\n): { connectionId: string } | undefined => {\n if (\n value.channel !== EMBEDDED_SURFACE_CHANNEL ||\n value.version !== EMBEDDED_SURFACE_PROTOCOL_VERSION\n ) {\n return undefined;\n }\n const connectionId = coerceIdentifier(value.connectionId);\n return connectionId != null ? { connectionId } : undefined;\n};\n\nexport const coerceHostboundEnvelope = (\n value: unknown,\n): EmbeddedSurfaceEnvelopeUnion | undefined => {\n if (!isRecord(value) || !isKnownKind(value.kind)) {\n return undefined;\n }\n const metadata = getEnvelopeMetadata(value);\n if (metadata == null) {\n return undefined;\n }\n const payload = isRecord(value.payload) ? value.payload : undefined;\n if (payload == null) {\n return undefined;\n }\n\n switch (value.kind) {\n case 'hello':\n return {\n channel: EMBEDDED_SURFACE_CHANNEL,\n version: EMBEDDED_SURFACE_PROTOCOL_VERSION,\n ...metadata,\n kind: value.kind,\n payload: {},\n };\n case 'surfaceSnapshot': {\n const epoch = coerceIdentifier(payload.epoch);\n if (\n epoch == null ||\n !Array.isArray(payload.surfaces) ||\n payload.surfaces.length > MAX_SURFACE_IDS\n ) {\n return undefined;\n }\n const surfaces = [];\n for (const surface of payload.surfaces) {\n if (!isRecord(surface)) {\n return undefined;\n }\n const surfaceId = coerceIdentifier(surface.surfaceId);\n if (surfaceId == null) {\n return undefined;\n }\n surfaces.push({ surfaceId });\n }\n return {\n channel: EMBEDDED_SURFACE_CHANNEL,\n version: EMBEDDED_SURFACE_PROTOCOL_VERSION,\n ...metadata,\n kind: value.kind,\n payload: { epoch, surfaces },\n };\n }\n case 'welcome':\n return undefined;\n }\n};\n\nexport const coerceChildboundEnvelope = (\n value: unknown,\n): EmbeddedSurfaceEnvelopeUnion | undefined => {\n if (!isRecord(value) || value.kind !== 'welcome') {\n return undefined;\n }\n const metadata = getEnvelopeMetadata(value);\n const payload = isRecord(value.payload) ? value.payload : undefined;\n if (metadata == null || payload == null) {\n return undefined;\n }\n\n const epoch = coerceIdentifier(payload.epoch);\n if (epoch == null) {\n return undefined;\n }\n\n return {\n channel: EMBEDDED_SURFACE_CHANNEL,\n version: EMBEDDED_SURFACE_PROTOCOL_VERSION,\n ...metadata,\n kind: value.kind,\n payload: { epoch },\n };\n};\n"],"mappings":";AAAA,MAAa,2BAA2B;AACxC,MAAa,oCAAoC;AA2BjD,MAAM,qBAAqB;AAC3B,MAAM,wBAAwB;AAC9B,MAAM,kBAAkB;AAExB,MAAM,oBAAoB,UAAuC;AAC/D,KACE,OAAO,UAAU,YACjB,MAAM,SAAS,KACf,MAAM,SAAS,yBACf,CAAC,mBAAmB,KAAK,MAAM,CAE/B;AAEF,QAAO;;AAGT,MAAM,YAAY,UAChB,OAAO,UAAU,YAAY,SAAS,QAAQ,CAAC,MAAM,QAAQ,MAAM;AAErE,MAAM,eAAe,UACnB,UAAU,WAAW,UAAU,qBAAqB,UAAU;AAEhE,MAAM,uBACJ,UACyC;AACzC,KACE,MAAM,YAAA,8BACN,MAAM,YAAA,EAEN;CAEF,MAAM,eAAe,iBAAiB,MAAM,aAAa;AACzD,QAAO,gBAAgB,OAAO,EAAE,cAAc,GAAG,KAAA;;AAGnD,MAAa,2BACX,UAC6C;AAC7C,KAAI,CAAC,SAAS,MAAM,IAAI,CAAC,YAAY,MAAM,KAAK,CAC9C;CAEF,MAAM,WAAW,oBAAoB,MAAM;AAC3C,KAAI,YAAY,KACd;CAEF,MAAM,UAAU,SAAS,MAAM,QAAQ,GAAG,MAAM,UAAU,KAAA;AAC1D,KAAI,WAAW,KACb;AAGF,SAAQ,MAAM,MAAd;EACE,KAAK,QACH,QAAO;GACL,SAAS;GACT,SAAA;GACA,GAAG;GACH,MAAM,MAAM;GACZ,SAAS,EAAE;GACZ;EACH,KAAK,mBAAmB;GACtB,MAAM,QAAQ,iBAAiB,QAAQ,MAAM;AAC7C,OACE,SAAS,QACT,CAAC,MAAM,QAAQ,QAAQ,SAAS,IAChC,QAAQ,SAAS,SAAS,gBAE1B;GAEF,MAAM,WAAW,EAAE;AACnB,QAAK,MAAM,WAAW,QAAQ,UAAU;AACtC,QAAI,CAAC,SAAS,QAAQ,CACpB;IAEF,MAAM,YAAY,iBAAiB,QAAQ,UAAU;AACrD,QAAI,aAAa,KACf;AAEF,aAAS,KAAK,EAAE,WAAW,CAAC;;AAE9B,UAAO;IACL,SAAS;IACT,SAAA;IACA,GAAG;IACH,MAAM,MAAM;IACZ,SAAS;KAAE;KAAO;KAAU;IAC7B;;EAEH,KAAK,UACH;;;AAIN,MAAa,4BACX,UAC6C;AAC7C,KAAI,CAAC,SAAS,MAAM,IAAI,MAAM,SAAS,UACrC;CAEF,MAAM,WAAW,oBAAoB,MAAM;CAC3C,MAAM,UAAU,SAAS,MAAM,QAAQ,GAAG,MAAM,UAAU,KAAA;AAC1D,KAAI,YAAY,QAAQ,WAAW,KACjC;CAGF,MAAM,QAAQ,iBAAiB,QAAQ,MAAM;AAC7C,KAAI,SAAS,KACX;AAGF,QAAO;EACL,SAAS;EACT,SAAA;EACA,GAAG;EACH,MAAM,MAAM;EACZ,SAAS,EAAE,OAAO;EACnB"}
@@ -0,0 +1,11 @@
1
+ //#region lib/embeddedSurfaceRegistry.d.ts
2
+ interface EmbeddedSurfaceTransport {
3
+ send(message: unknown): void;
4
+ subscribe(callback: (message: unknown) => void): () => void;
5
+ }
6
+ declare const setEmbeddedSurfaceTransport: (nextTransport: EmbeddedSurfaceTransport | null) => void;
7
+ declare const getEmbeddedSurfaceTransport: () => EmbeddedSurfaceTransport | null;
8
+ declare const subscribeEmbeddedSurfaceTransportChanges: (callback: () => void) => (() => void);
9
+ //#endregion
10
+ export { EmbeddedSurfaceTransport, getEmbeddedSurfaceTransport, setEmbeddedSurfaceTransport, subscribeEmbeddedSurfaceTransportChanges };
11
+ //# sourceMappingURL=embeddedSurfaceRegistry.d.mts.map
@@ -0,0 +1,19 @@
1
+ //#region lib/embeddedSurfaceRegistry.ts
2
+ let transport = null;
3
+ const transportChangeSubscribers = /* @__PURE__ */ new Set();
4
+ const setEmbeddedSurfaceTransport = (nextTransport) => {
5
+ if (transport === nextTransport) return;
6
+ transport = nextTransport;
7
+ transportChangeSubscribers.forEach((subscriber) => subscriber());
8
+ };
9
+ const getEmbeddedSurfaceTransport = () => transport;
10
+ const subscribeEmbeddedSurfaceTransportChanges = (callback) => {
11
+ transportChangeSubscribers.add(callback);
12
+ return () => {
13
+ transportChangeSubscribers.delete(callback);
14
+ };
15
+ };
16
+ //#endregion
17
+ export { getEmbeddedSurfaceTransport, setEmbeddedSurfaceTransport, subscribeEmbeddedSurfaceTransportChanges };
18
+
19
+ //# sourceMappingURL=embeddedSurfaceRegistry.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"embeddedSurfaceRegistry.mjs","names":[],"sources":["../../lib/embeddedSurfaceRegistry.ts"],"sourcesContent":["export interface EmbeddedSurfaceTransport {\n send(message: unknown): void;\n subscribe(callback: (message: unknown) => void): () => void;\n}\n\nlet transport: EmbeddedSurfaceTransport | null = null;\nconst transportChangeSubscribers = new Set<() => void>();\n\nexport const setEmbeddedSurfaceTransport = (\n nextTransport: EmbeddedSurfaceTransport | null,\n): void => {\n if (transport === nextTransport) {\n return;\n }\n transport = nextTransport;\n transportChangeSubscribers.forEach((subscriber) => subscriber());\n};\n\nexport const getEmbeddedSurfaceTransport = (): EmbeddedSurfaceTransport | null => transport;\n\nexport const subscribeEmbeddedSurfaceTransportChanges = (callback: () => void): (() => void) => {\n transportChangeSubscribers.add(callback);\n return () => {\n transportChangeSubscribers.delete(callback);\n };\n};\n"],"mappings":";AAKA,IAAI,YAA6C;AACjD,MAAM,6CAA6B,IAAI,KAAiB;AAExD,MAAa,+BACX,kBACS;AACT,KAAI,cAAc,cAChB;AAEF,aAAY;AACZ,4BAA2B,SAAS,eAAe,YAAY,CAAC;;AAGlE,MAAa,oCAAqE;AAElF,MAAa,4CAA4C,aAAuC;AAC9F,4BAA2B,IAAI,SAAS;AACxC,cAAa;AACX,6BAA2B,OAAO,SAAS"}
@@ -1,2 +1,2 @@
1
- import { t as MessageType } from "../message-CMHvlPGn.mjs";
1
+ import { t as MessageType } from "../message-CsK3sIq0.mjs";
2
2
  export { MessageType };
@@ -1,4 +1,4 @@
1
- import { t as PseudoClassProps } from "../PseudoClassProps-DLxPxo7T.mjs";
1
+ import { t as PseudoClassProps } from "../PseudoClassProps-CcSlKNev.mjs";
2
2
 
3
3
  //#region lib/pseudoClass.d.ts
4
4
  declare const isDisabled: ({
@@ -0,0 +1,6 @@
1
+ //#region lib/useEmbeddedSurface.d.ts
2
+ /** Mount-scoped because React Aria mounts overlay content only while it is open. */
3
+ declare function useEmbeddedSurface(): void;
4
+ //#endregion
5
+ export { useEmbeddedSurface as default };
6
+ //# sourceMappingURL=useEmbeddedSurface.d.mts.map
@@ -0,0 +1,135 @@
1
+ import { EMBEDDED_SURFACE_CHANNEL, coerceChildboundEnvelope } from "./embeddedSurfaceProtocol.mjs";
2
+ import { getEmbeddedSurfaceTransport, subscribeEmbeddedSurfaceTransportChanges } from "./embeddedSurfaceRegistry.mjs";
3
+ import { useEffect, useRef, useState } from "react";
4
+ //#region lib/useEmbeddedSurface.ts
5
+ const SURFACE_REANNOUNCE_INTERVAL_MS = 2e3;
6
+ const HELLO_ROTATION_THRESHOLD = 2;
7
+ let fallbackId = 0;
8
+ const sessions = /* @__PURE__ */ new WeakMap();
9
+ const mintId = (prefix) => {
10
+ const randomUUID = typeof crypto !== "undefined" && typeof crypto.randomUUID === "function" ? crypto.randomUUID() : void 0;
11
+ if (randomUUID) return `${prefix}-${randomUUID}`;
12
+ fallbackId += 1;
13
+ return `${prefix}-${fallbackId.toString(36)}`;
14
+ };
15
+ const getSession = (transport) => {
16
+ const current = sessions.get(transport);
17
+ if (current) return current;
18
+ const session = {
19
+ connectionId: mintId("connection"),
20
+ surfaces: /* @__PURE__ */ new Set(),
21
+ unansweredHellos: 0
22
+ };
23
+ sessions.set(transport, session);
24
+ return session;
25
+ };
26
+ const send = (transport, session, kind, payload) => {
27
+ transport.send({
28
+ channel: EMBEDDED_SURFACE_CHANNEL,
29
+ version: 1,
30
+ connectionId: session.connectionId,
31
+ kind,
32
+ payload
33
+ });
34
+ };
35
+ const sendSnapshot = (transport, session) => {
36
+ if (session.epoch == null) return;
37
+ send(transport, session, "surfaceSnapshot", {
38
+ epoch: session.epoch,
39
+ surfaces: Array.from(session.surfaces, (surfaceId) => ({ surfaceId }))
40
+ });
41
+ };
42
+ const rotateConnection = (session) => {
43
+ session.connectionId = mintId("connection");
44
+ session.epoch = void 0;
45
+ session.unansweredHellos = 0;
46
+ };
47
+ const startSurfaceLease = (transport, session) => {
48
+ if (session.leaseTimer != null) return;
49
+ session.leaseTimer = window.setInterval(() => {
50
+ session.unansweredHellos += 1;
51
+ if (session.unansweredHellos >= HELLO_ROTATION_THRESHOLD) rotateConnection(session);
52
+ send(transport, session, "hello", {});
53
+ sendSnapshot(transport, session);
54
+ }, SURFACE_REANNOUNCE_INTERVAL_MS);
55
+ };
56
+ const stopSurfaceLease = (session) => {
57
+ if (session.leaseTimer == null) return;
58
+ window.clearInterval(session.leaseTimer);
59
+ session.leaseTimer = void 0;
60
+ };
61
+ const activateSession = (transport, session) => {
62
+ if (session.unsubscribe != null) return;
63
+ session.epoch = void 0;
64
+ session.unansweredHellos = 0;
65
+ session.unsubscribe = transport.subscribe((message) => {
66
+ const childbound = coerceChildboundEnvelope(message);
67
+ if (!childbound || childbound.connectionId !== session.connectionId) return;
68
+ session.unansweredHellos = 0;
69
+ session.epoch = childbound.payload.epoch;
70
+ sendSnapshot(transport, session);
71
+ });
72
+ send(transport, session, "hello", {});
73
+ };
74
+ const deactivateSession = (session) => {
75
+ session.unsubscribe?.();
76
+ session.unsubscribe = void 0;
77
+ stopSurfaceLease(session);
78
+ session.epoch = void 0;
79
+ session.unansweredHellos = 0;
80
+ };
81
+ /** Mount-scoped because React Aria mounts overlay content only while it is open. */
82
+ function useEmbeddedSurface() {
83
+ const [transport, setTransport] = useState(getEmbeddedSurfaceTransport);
84
+ const surfaceIdRef = useRef(void 0);
85
+ useEffect(() => {
86
+ const unsubscribe = subscribeEmbeddedSurfaceTransportChanges(() => {
87
+ setTransport(getEmbeddedSurfaceTransport());
88
+ });
89
+ setTransport(getEmbeddedSurfaceTransport());
90
+ return unsubscribe;
91
+ }, []);
92
+ useEffect(() => {
93
+ if (!transport) return;
94
+ const surfaceId = surfaceIdRef.current ??= mintId("surface");
95
+ const session = getSession(transport);
96
+ activateSession(transport, session);
97
+ session.surfaces.add(surfaceId);
98
+ if (session.surfaces.size === 1) startSurfaceLease(transport, session);
99
+ if (session.epoch != null) sendSnapshot(transport, session);
100
+ return () => {
101
+ session.surfaces.delete(surfaceId);
102
+ if (session.surfaces.size === 0) {
103
+ if (session.epoch != null) sendSnapshot(transport, session);
104
+ deactivateSession(session);
105
+ } else sendSnapshot(transport, session);
106
+ };
107
+ }, [transport]);
108
+ useEffect(() => {
109
+ if (!transport) return;
110
+ let active = true;
111
+ let pendingAnimationFrame = null;
112
+ const handleFocusOut = (event) => {
113
+ if (event.relatedTarget != null) return;
114
+ event.stopImmediatePropagation();
115
+ if (!(event.target instanceof HTMLElement)) return;
116
+ const target = event.target;
117
+ if (pendingAnimationFrame != null) cancelAnimationFrame(pendingAnimationFrame);
118
+ pendingAnimationFrame = requestAnimationFrame(() => {
119
+ pendingAnimationFrame = null;
120
+ if (!active || !target.isConnected) return;
121
+ if (document.hasFocus() && (document.activeElement == null || document.activeElement === document.body)) target.focus();
122
+ });
123
+ };
124
+ document.addEventListener("focusout", handleFocusOut, true);
125
+ return () => {
126
+ active = false;
127
+ if (pendingAnimationFrame != null) cancelAnimationFrame(pendingAnimationFrame);
128
+ document.removeEventListener("focusout", handleFocusOut, true);
129
+ };
130
+ }, [transport]);
131
+ }
132
+ //#endregion
133
+ export { useEmbeddedSurface as default };
134
+
135
+ //# sourceMappingURL=useEmbeddedSurface.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"useEmbeddedSurface.mjs","names":[],"sources":["../../lib/useEmbeddedSurface.ts"],"sourcesContent":["import { useEffect, useRef, useState } from 'react';\n\nimport {\n EMBEDDED_SURFACE_PROTOCOL_VERSION,\n EMBEDDED_SURFACE_CHANNEL,\n coerceChildboundEnvelope,\n} from 'design-system/lib/embeddedSurfaceProtocol';\nimport {\n getEmbeddedSurfaceTransport,\n subscribeEmbeddedSurfaceTransportChanges,\n type EmbeddedSurfaceTransport,\n} from 'design-system/lib/embeddedSurfaceRegistry';\n\nconst SURFACE_REANNOUNCE_INTERVAL_MS = 2000;\nconst HELLO_ROTATION_THRESHOLD = 2;\n\nlet fallbackId = 0;\ntype SurfaceSession = {\n connectionId: string;\n surfaces: Set<string>;\n leaseTimer?: number;\n unsubscribe?: () => void;\n unansweredHellos: number;\n epoch?: string;\n};\nconst sessions = new WeakMap<EmbeddedSurfaceTransport, SurfaceSession>();\n\nconst mintId = (prefix: string): string => {\n const randomUUID =\n typeof crypto !== 'undefined' && typeof crypto.randomUUID === 'function'\n ? crypto.randomUUID()\n : undefined;\n if (randomUUID) {\n return `${prefix}-${randomUUID}`;\n }\n fallbackId += 1;\n return `${prefix}-${fallbackId.toString(36)}`;\n};\n\nconst getSession = (transport: EmbeddedSurfaceTransport) => {\n const current = sessions.get(transport);\n if (current) {\n return current;\n }\n const session: SurfaceSession = {\n connectionId: mintId('connection'),\n surfaces: new Set<string>(),\n unansweredHellos: 0,\n };\n sessions.set(transport, session);\n return session;\n};\n\nconst send = (\n transport: EmbeddedSurfaceTransport,\n session: SurfaceSession,\n kind: 'hello' | 'surfaceSnapshot',\n payload: Record<string, never> | { epoch: string; surfaces: Array<{ surfaceId: string }> },\n) => {\n transport.send({\n channel: EMBEDDED_SURFACE_CHANNEL,\n version: EMBEDDED_SURFACE_PROTOCOL_VERSION,\n connectionId: session.connectionId,\n kind,\n payload,\n });\n};\n\nconst sendSnapshot = (transport: EmbeddedSurfaceTransport, session: SurfaceSession) => {\n if (session.epoch == null) {\n return;\n }\n send(transport, session, 'surfaceSnapshot', {\n epoch: session.epoch,\n surfaces: Array.from(session.surfaces, (surfaceId) => ({ surfaceId })),\n });\n};\n\nconst rotateConnection = (session: SurfaceSession) => {\n // The host may have retired this connectionId in its LRU, so hellos stay dropped\n // until a fresh connectionId is minted.\n session.connectionId = mintId('connection');\n session.epoch = undefined;\n session.unansweredHellos = 0;\n};\n\nconst startSurfaceLease = (transport: EmbeddedSurfaceTransport, session: SurfaceSession) => {\n if (session.leaseTimer != null) {\n return;\n }\n // Re-announces active surfaces to renew the host's lease. If the child stops\n // running, announcements cease and the host releases shell effects after timeout.\n session.leaseTimer = window.setInterval(() => {\n session.unansweredHellos += 1;\n if (session.unansweredHellos >= HELLO_ROTATION_THRESHOLD) {\n rotateConnection(session);\n }\n send(transport, session, 'hello', {});\n sendSnapshot(transport, session);\n }, SURFACE_REANNOUNCE_INTERVAL_MS);\n};\n\nconst stopSurfaceLease = (session: SurfaceSession) => {\n if (session.leaseTimer == null) {\n return;\n }\n window.clearInterval(session.leaseTimer);\n session.leaseTimer = undefined;\n};\n\nconst activateSession = (transport: EmbeddedSurfaceTransport, session: SurfaceSession) => {\n if (session.unsubscribe != null) {\n return;\n }\n session.epoch = undefined;\n session.unansweredHellos = 0;\n session.unsubscribe = transport.subscribe((message) => {\n const childbound = coerceChildboundEnvelope(message);\n if (!childbound || childbound.connectionId !== session.connectionId) {\n return;\n }\n session.unansweredHellos = 0;\n session.epoch = childbound.payload.epoch;\n sendSnapshot(transport, session);\n });\n send(transport, session, 'hello', {});\n};\n\nconst deactivateSession = (session: SurfaceSession) => {\n session.unsubscribe?.();\n session.unsubscribe = undefined;\n stopSurfaceLease(session);\n session.epoch = undefined;\n session.unansweredHellos = 0;\n};\n\n/** Mount-scoped because React Aria mounts overlay content only while it is open. */\nexport default function useEmbeddedSurface(): void {\n const [transport, setTransport] = useState<EmbeddedSurfaceTransport | null>(\n getEmbeddedSurfaceTransport,\n );\n const surfaceIdRef = useRef<string | undefined>(undefined);\n\n useEffect(() => {\n const unsubscribe = subscribeEmbeddedSurfaceTransportChanges(() => {\n setTransport(getEmbeddedSurfaceTransport());\n });\n // A transport can register between render and this effect, and the registry only\n // notifies on change, so reconcile once the subscription is installed.\n setTransport(getEmbeddedSurfaceTransport());\n return unsubscribe;\n }, []);\n\n useEffect(() => {\n if (!transport) {\n return;\n }\n const surfaceId = (surfaceIdRef.current ??= mintId('surface'));\n const session = getSession(transport);\n activateSession(transport, session);\n session.surfaces.add(surfaceId);\n const wasEmpty = session.surfaces.size === 1;\n if (wasEmpty) {\n startSurfaceLease(transport, session);\n }\n if (session.epoch != null) {\n sendSnapshot(transport, session);\n }\n\n return () => {\n session.surfaces.delete(surfaceId);\n if (session.surfaces.size === 0) {\n if (session.epoch != null) {\n sendSnapshot(transport, session);\n }\n deactivateSession(session);\n } else {\n sendSnapshot(transport, session);\n }\n };\n }, [transport]);\n\n useEffect(() => {\n if (!transport) {\n return;\n }\n let active = true;\n let pendingAnimationFrame: number | null = null;\n const handleFocusOut = (event: FocusEvent) => {\n if (event.relatedTarget != null) {\n return;\n }\n event.stopImmediatePropagation();\n if (!(event.target instanceof HTMLElement)) {\n return;\n }\n const target = event.target;\n if (pendingAnimationFrame != null) {\n cancelAnimationFrame(pendingAnimationFrame);\n }\n pendingAnimationFrame = requestAnimationFrame(() => {\n pendingAnimationFrame = null;\n if (!active || !target.isConnected) {\n return;\n }\n if (\n document.hasFocus() &&\n (document.activeElement == null || document.activeElement === document.body)\n ) {\n target.focus();\n }\n });\n };\n document.addEventListener('focusout', handleFocusOut, true);\n return () => {\n active = false;\n if (pendingAnimationFrame != null) {\n cancelAnimationFrame(pendingAnimationFrame);\n }\n document.removeEventListener('focusout', handleFocusOut, true);\n };\n }, [transport]);\n}\n"],"mappings":"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"}
@@ -11,6 +11,8 @@ declare const Z_INDICES: {
11
11
  readonly banner: 2000;
12
12
  readonly sideNav: 3000;
13
13
  readonly topNavTooltip: 3001;
14
+ readonly embeddedSurfaceBackdrop: 9998;
15
+ readonly embeddedSurface: 9999;
14
16
  readonly modal: 10000;
15
17
  readonly modalElevated: 10001;
16
18
  readonly modalDropdown: 10010;
@@ -11,6 +11,8 @@ const Z_INDICES = {
11
11
  banner: 2e3,
12
12
  sideNav: 3e3,
13
13
  topNavTooltip: 3001,
14
+ embeddedSurfaceBackdrop: 9998,
15
+ embeddedSurface: 9999,
14
16
  modal: 1e4,
15
17
  modalElevated: 10001,
16
18
  modalDropdown: 10010,
@@ -1 +1 @@
1
- {"version":3,"file":"zindex.mjs","names":[],"sources":["../../lib/zindex.ts"],"sourcesContent":["/*\n * Prefer adding these values together instead of adding new ones if possible.\n */\nexport const Z_INDICES = {\n withShadow: 1,\n\n sticky: 2,\n\n loadingOverlays: 5,\n\n tooltip: 10,\n\n floatingBar: 100,\n\n /*\n * The main levels we have in dashboard\n */\n topNav: 1000,\n dropdown: 1001,\n layeredDropdown: 1002,\n banner: 2000,\n sideNav: 3000,\n topNavTooltip: 3001,\n modal: 10000,\n /*\n * For elements that should expand out of modals, but NOT cover things like dropdowns\n */\n modalElevated: 10001,\n modalDropdown: 10010,\n modalDropdownTooltip: 10020,\n personaAssistant: 10011,\n /*\n * Full-app blocking modal overlays that must sit above in-app floating panels and\n * their portaled UI (e.g. flow editor rule panels at Z_INDICES.modal).\n */\n modalBlocking: 10030,\n toast: 100000,\n} as const;\n\nexport type ZIndex = (typeof Z_INDICES)[keyof typeof Z_INDICES];\n"],"mappings":";AAGA,MAAa,YAAY;CACvB,YAAY;CAEZ,QAAQ;CAER,iBAAiB;CAEjB,SAAS;CAET,aAAa;CAKb,QAAQ;CACR,UAAU;CACV,iBAAiB;CACjB,QAAQ;CACR,SAAS;CACT,eAAe;CACf,OAAO;CAIP,eAAe;CACf,eAAe;CACf,sBAAsB;CACtB,kBAAkB;CAKlB,eAAe;CACf,OAAO;CACR"}
1
+ {"version":3,"file":"zindex.mjs","names":[],"sources":["../../lib/zindex.ts"],"sourcesContent":["/*\n * Prefer adding these values together instead of adding new ones if possible.\n */\nexport const Z_INDICES = {\n withShadow: 1,\n\n sticky: 2,\n\n loadingOverlays: 5,\n\n tooltip: 10,\n\n floatingBar: 100,\n\n /*\n * The main levels we have in dashboard\n */\n topNav: 1000,\n dropdown: 1001,\n layeredDropdown: 1002,\n banner: 2000,\n sideNav: 3000,\n topNavTooltip: 3001,\n embeddedSurfaceBackdrop: 9998,\n embeddedSurface: 9999,\n modal: 10000,\n /*\n * For elements that should expand out of modals, but NOT cover things like dropdowns\n */\n modalElevated: 10001,\n modalDropdown: 10010,\n modalDropdownTooltip: 10020,\n personaAssistant: 10011,\n /*\n * Full-app blocking modal overlays that must sit above in-app floating panels and\n * their portaled UI (e.g. flow editor rule panels at Z_INDICES.modal).\n */\n modalBlocking: 10030,\n toast: 100000,\n} as const;\n\nexport type ZIndex = (typeof Z_INDICES)[keyof typeof Z_INDICES];\n"],"mappings":";AAGA,MAAa,YAAY;CACvB,YAAY;CAEZ,QAAQ;CAER,iBAAiB;CAEjB,SAAS;CAET,aAAa;CAKb,QAAQ;CACR,UAAU;CACV,iBAAiB;CACjB,QAAQ;CACR,SAAS;CACT,eAAe;CACf,yBAAyB;CACzB,iBAAiB;CACjB,OAAO;CAIP,eAAe;CACf,eAAe;CACf,sBAAsB;CACtB,kBAAkB;CAKlB,eAAe;CACf,OAAO;CACR"}
@@ -6,4 +6,4 @@ declare enum MessageType {
6
6
  }
7
7
  //#endregion
8
8
  export { MessageType as t };
9
- //# sourceMappingURL=message-CMHvlPGn.d.mts.map
9
+ //# sourceMappingURL=message-CsK3sIq0.d.mts.map
@@ -1,4 +1,4 @@
1
- import { t as PseudoClassProps } from "../PseudoClassProps-DLxPxo7T.mjs";
1
+ import { t as PseudoClassProps } from "../PseudoClassProps-CcSlKNev.mjs";
2
2
  import * as _$styled_components0 from "styled-components";
3
3
 
4
4
  //#region mixins/focus.d.ts
@@ -1,5 +1,5 @@
1
- import { t as PseudoClassProps } from "../PseudoClassProps-DLxPxo7T.mjs";
2
- import { i as Variant } from "../theme-BzBpJXhO.mjs";
1
+ import { t as PseudoClassProps } from "../PseudoClassProps-CcSlKNev.mjs";
2
+ import { i as Variant } from "../theme-D9Y6NOzb.mjs";
3
3
  import * as _$styled_components0 from "styled-components";
4
4
 
5
5
  //#region mixins/hoverable.d.ts
@@ -1,2 +1,2 @@
1
- import { n as InputSizes, r as inputMixin, t as InputMixinProps } from "../input-Bv5fKt5J.mjs";
1
+ import { n as InputSizes, r as inputMixin, t as InputMixinProps } from "../input-D3Qd6dI8.mjs";
2
2
  export { InputMixinProps, InputSizes, inputMixin as default };
@@ -1,5 +1,5 @@
1
- import { t as PseudoClassProps } from "../PseudoClassProps-DLxPxo7T.mjs";
2
- import { i as Variant } from "../theme-BzBpJXhO.mjs";
1
+ import { t as PseudoClassProps } from "../PseudoClassProps-CcSlKNev.mjs";
2
+ import { i as Variant } from "../theme-D9Y6NOzb.mjs";
3
3
  import * as _$styled_components0 from "styled-components";
4
4
 
5
5
  //#region mixins/menuItem.d.ts
@@ -1,2 +1,2 @@
1
- import { a as displayMixins, c as paragraphMixins, i as ParagraphSize, n as HeadingSize, o as fontFamilyMixin, r as ParagraphMixinSize, s as headingMixins, t as DisplaySize } from "../text-B21s9mRZ.mjs";
1
+ import { a as displayMixins, c as paragraphMixins, i as ParagraphSize, n as HeadingSize, o as fontFamilyMixin, r as ParagraphMixinSize, s as headingMixins, t as DisplaySize } from "../text-BaQdW8qa.mjs";
2
2
  export { DisplaySize, HeadingSize, ParagraphMixinSize, ParagraphSize, displayMixins, fontFamilyMixin, headingMixins, paragraphMixins };
@@ -1,4 +1,4 @@
1
- import { a as FilterField, c as FilterOperator, l as FilterRule, s as FilterFieldType, u as FilterRuleValue } from "./types-D58IoRx6.mjs";
1
+ import { a as FilterField, c as FilterOperator, l as FilterRule, s as FilterFieldType, u as FilterRuleValue } from "./types-mb3woqzE.mjs";
2
2
 
3
3
  //#region components/DataTable/TableControls/FiltersV2/operators.d.ts
4
4
  declare function getOperatorsForType(type: FilterFieldType): ReadonlyArray<FilterOperator>;
@@ -40,4 +40,4 @@ declare function withValue(rule: FilterRule, value: FilterRuleValue): FilterRule
40
40
  declare function emptyValueForFieldType(type: FilterFieldType): FilterRuleValue;
41
41
  //#endregion
42
42
  export { getOperatorsForField as a, withValue as c, getOperatorLabel as i, fieldHasMultipleOperators as n, getOperatorsForType as o, getDefaultOperatorForType as r, isValuelessOperator as s, emptyValueForFieldType as t };
43
- //# sourceMappingURL=operators-Bo31xlc2.d.mts.map
43
+ //# sourceMappingURL=operators-C_xPzItk.d.mts.map
@@ -1,2 +1,2 @@
1
- import { a as getOperatorsForField, c as withValue, i as getOperatorLabel, n as fieldHasMultipleOperators, o as getOperatorsForType, r as getDefaultOperatorForType, s as isValuelessOperator, t as emptyValueForFieldType } from "./operators-Bo31xlc2.mjs";
1
+ import { a as getOperatorsForField, c as withValue, i as getOperatorLabel, n as fieldHasMultipleOperators, o as getOperatorsForType, r as getDefaultOperatorForType, s as isValuelessOperator, t as emptyValueForFieldType } from "./operators-C_xPzItk.mjs";
2
2
  export { emptyValueForFieldType, fieldHasMultipleOperators, getDefaultOperatorForType, getOperatorLabel, getOperatorsForField, getOperatorsForType, isValuelessOperator, withValue };
@@ -1,12 +1,12 @@
1
- import { n as Stack, t as HStack } from "../../Stack-Bl54WmhY.mjs";
2
- import { t as LoadingShimmer } from "../../LoadingShimmer-Dsc_RCCf.mjs";
3
- import { t as Card_default } from "../../CardV2-C0fcOUdp.mjs";
4
- import { n as PageHeaderContainer } from "../../PageHeader-jSLud2JI.mjs";
5
- import { h as Table, m as TableHeaderCell, n as TableBody, p as TableRow, r as TableHead, s as TableCell } from "../../Table-BfontAeY.mjs";
1
+ import { n as Stack, t as HStack } from "../../Stack-ckRN7LrP.mjs";
2
+ import { t as LoadingShimmer } from "../../LoadingShimmer-BPYPtFE1.mjs";
3
+ import { t as Card_default } from "../../CardV2-m9yOInMU.mjs";
4
+ import { h as Table, m as TableHeaderCell, n as TableBody, p as TableRow, r as TableHead, s as TableCell } from "../../Table-C-mx8Uj0.mjs";
5
+ import { n as PageHeaderContainer } from "../../PageHeader-Dq-J3san.mjs";
6
6
  import { Color, Spacing } from "@persona/design-tokens";
7
7
  import styled from "styled-components";
8
8
  import { Fragment, jsx, jsxs } from "react/jsx-runtime";
9
- //#region layouts/containers.tsx
9
+ //#region patterns/containers.tsx
10
10
  const Layout = styled.div`
11
11
  position: relative;
12
12
  box-sizing: border-box;
@@ -20,7 +20,7 @@ const DetailLayout = styled.div`
20
20
  padding: ${Spacing[4]} ${Spacing[5]};
21
21
  `;
22
22
  //#endregion
23
- //#region layouts/LayoutLoadingShimmer/LayoutLoadingShimmer.tsx
23
+ //#region patterns/LayoutLoadingShimmer/LayoutLoadingShimmer.tsx
24
24
  const DataTableShimmer = () => {
25
25
  return /* @__PURE__ */ jsx(Stack, { children: /* @__PURE__ */ jsxs(Table, { children: [/* @__PURE__ */ jsx(TableHead, { children: /* @__PURE__ */ jsx(TableRow, { children: Array.from({ length: 5 }).map((_, i) => /* @__PURE__ */ jsx(TableHeaderCell, { children: /* @__PURE__ */ jsx(LoadingShimmer, {
26
26
  width: "100%",
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.mjs","names":["CardV2"],"sources":["../../../patterns/containers.tsx","../../../patterns/LayoutLoadingShimmer/LayoutLoadingShimmer.tsx"],"sourcesContent":["import styled from 'styled-components';\n\nimport { Spacing } from '@persona/design-tokens';\n\nexport const Layout = styled.div`\n position: relative;\n box-sizing: border-box;\n width: 100%;\n padding: ${Spacing[7]};\n`;\n\nexport const DetailLayout = styled.div`\n position: relative;\n box-sizing: border-box;\n width: 100%;\n padding: ${Spacing[4]} ${Spacing[5]};\n`;\n","import styled from 'styled-components';\n\nimport { Color, Spacing } from '@persona/design-tokens';\nimport CardV2 from 'design-system/components/CardV2';\nimport { LoadingShimmer } from 'design-system/components/LoadingShimmer';\nimport { PageHeaderContainer } from 'design-system/components/PageHeader';\nimport Stack, { HStack } from 'design-system/components/Stack';\nimport Table, {\n TableBody,\n TableCell,\n TableHead,\n TableHeaderCell,\n TableRow,\n} from 'design-system/components/Table';\nimport { Layout, DetailLayout } from 'design-system/patterns/containers';\n\nexport const DataTableShimmer = () => {\n return (\n <Stack>\n <Table>\n <TableHead>\n <TableRow>\n {Array.from({ length: 5 }).map((_, i) => (\n <TableHeaderCell key={i}>\n <LoadingShimmer width='100%' height='20px' />\n </TableHeaderCell>\n ))}\n </TableRow>\n </TableHead>\n <TableBody>\n {Array.from({ length: 8 }).map((_, i) => (\n <TableRow key={i} disableHoverBackground>\n {Array.from({ length: 5 }).map((_, i) => (\n <TableCell key={i}>\n <LoadingShimmer width='100%' height='24px' />\n </TableCell>\n ))}\n </TableRow>\n ))}\n </TableBody>\n </Table>\n </Stack>\n );\n};\n\nconst HeaderShimmer = () => {\n return (\n <PageHeaderContainer>\n <LoadingShimmer width='150px' height='30px' />\n <HStack>\n <LoadingShimmer width='80px' height='30px' />\n <LoadingShimmer width='80px' height='30px' />\n </HStack>\n </PageHeaderContainer>\n );\n};\n\n/**\n * Render a single full-width card with a loading state mimicking a DataTable.\n */\nexport const IndexViewLayoutShimmer = () => {\n return (\n <>\n <HeaderShimmer />\n <Layout>\n <CardV2>\n <CardV2.Section>\n <DataTableShimmer />\n </CardV2.Section>\n </CardV2>\n </Layout>\n </>\n );\n};\n\n/**\n * Render `cards.length` full-width cards of the specified height in a loading state.\n */\nexport const SimpleLayoutShimmer = ({ cards = [400] }: { cards?: number[] }) => {\n return (\n <>\n <HeaderShimmer />\n <Layout>\n <Stack spacing={Spacing[4]}>\n {cards.map((height, i) => (\n <CardV2 key={i} loading loadingProps={{ height: `${height}px` }}>\n <></>\n </CardV2>\n ))}\n </Stack>\n </Layout>\n </>\n );\n};\n\nconst TabsDivider = styled.hr`\n border-top: 1px solid ${Color.BorderDivider};\n margin: 0;\n`;\n\nconst TabsShimmer = () => {\n return (\n <Stack>\n <HStack>\n <LoadingShimmer variant='secondary' width='100px' height='20px' />\n <LoadingShimmer variant='secondary' width='100px' height='20px' />\n </HStack>\n <TabsDivider />\n </Stack>\n );\n};\n\nconst MainColumn = styled.div`\n display: flex;\n flex-direction: column;\n gap: ${Spacing[4]};\n flex: 2;\n`;\n\nconst RightColumn = styled.div`\n display: flex;\n flex-direction: column;\n gap: ${Spacing[4]};\n flex: 1;\n`;\n\nexport const ShowViewLayoutShimmer = () => {\n return (\n <>\n <HeaderShimmer />\n <DetailLayout>\n <Stack spacing={Spacing[4]}>\n <TabsShimmer />\n <HStack spacing={Spacing[4]}>\n <MainColumn>\n <CardV2 heading={{ title: 'Loading' }} loading loadingProps={{ height: '100px' }}>\n <></>\n </CardV2>\n <CardV2 heading={{ title: 'Loading' }} loading loadingProps={{ height: '400px' }}>\n <></>\n </CardV2>\n <CardV2 heading={{ title: 'Loading' }} loading>\n <></>\n </CardV2>\n </MainColumn>\n <RightColumn>\n <CardV2 heading={{ title: 'Loading' }} loading loadingProps={{ height: '400px' }}>\n <></>\n </CardV2>\n <CardV2 heading={{ title: 'Loading' }} loading>\n <></>\n </CardV2>\n </RightColumn>\n </HStack>\n </Stack>\n </DetailLayout>\n </>\n );\n};\n"],"mappings":";;;;;;;;;AAIA,MAAa,SAAS,OAAO,GAAG;;;;aAInB,QAAQ,GAAG;;AAGxB,MAAa,eAAe,OAAO,GAAG;;;;aAIzB,QAAQ,GAAG,GAAG,QAAQ,GAAG;;;;ACCtC,MAAa,yBAAyB;AACpC,QACE,oBAAC,OAAD,EAAA,UACE,qBAAC,OAAD,EAAA,UAAA,CACE,oBAAC,WAAD,EAAA,UACE,oBAAC,UAAD,EAAA,UACG,MAAM,KAAK,EAAE,QAAQ,GAAG,CAAC,CAAC,KAAK,GAAG,MACjC,oBAAC,iBAAD,EAAA,UACE,oBAAC,gBAAD;EAAgB,OAAM;EAAO,QAAO;EAAS,CAAA,EAC7B,EAFI,EAEJ,CAClB,EACO,CAAA,EACD,CAAA,EACZ,oBAAC,WAAD,EAAA,UACG,MAAM,KAAK,EAAE,QAAQ,GAAG,CAAC,CAAC,KAAK,GAAG,MACjC,oBAAC,UAAD;EAAkB,wBAAA;YACf,MAAM,KAAK,EAAE,QAAQ,GAAG,CAAC,CAAC,KAAK,GAAG,MACjC,oBAAC,WAAD,EAAA,UACE,oBAAC,gBAAD;GAAgB,OAAM;GAAO,QAAO;GAAS,CAAA,EACnC,EAFI,EAEJ,CACZ;EACO,EANI,EAMJ,CACX,EACQ,CAAA,CACN,EAAA,CAAA,EACF,CAAA;;AAIZ,MAAM,sBAAsB;AAC1B,QACE,qBAAC,qBAAD,EAAA,UAAA,CACE,oBAAC,gBAAD;EAAgB,OAAM;EAAQ,QAAO;EAAS,CAAA,EAC9C,qBAAC,QAAD,EAAA,UAAA,CACE,oBAAC,gBAAD;EAAgB,OAAM;EAAO,QAAO;EAAS,CAAA,EAC7C,oBAAC,gBAAD;EAAgB,OAAM;EAAO,QAAO;EAAS,CAAA,CACtC,EAAA,CAAA,CACW,EAAA,CAAA;;;;;AAO1B,MAAa,+BAA+B;AAC1C,QACE,qBAAA,UAAA,EAAA,UAAA,CACE,oBAAC,eAAD,EAAiB,CAAA,EACjB,oBAAC,QAAD,EAAA,UACE,oBAACA,cAAD,EAAA,UACE,oBAACA,aAAO,SAAR,EAAA,UACE,oBAAC,kBAAD,EAAoB,CAAA,EACL,CAAA,EACV,CAAA,EACF,CAAA,CACR,EAAA,CAAA;;;;;AAOP,MAAa,uBAAuB,EAAE,QAAQ,CAAC,IAAI,OAA6B;AAC9E,QACE,qBAAA,UAAA,EAAA,UAAA,CACE,oBAAC,eAAD,EAAiB,CAAA,EACjB,oBAAC,QAAD,EAAA,UACE,oBAAC,OAAD;EAAO,SAAS,QAAQ;YACrB,MAAM,KAAK,QAAQ,MAClB,oBAACA,cAAD;GAAgB,SAAA;GAAQ,cAAc,EAAE,QAAQ,GAAG,OAAO,KAAK;aAC7D,oBAAA,UAAA,EAAK,CAAA;GACE,EAFI,EAEJ,CACT;EACI,CAAA,EACD,CAAA,CACR,EAAA,CAAA;;AAIP,MAAM,cAAc,OAAO,EAAE;0BACH,MAAM,cAAc;;;AAI9C,MAAM,oBAAoB;AACxB,QACE,qBAAC,OAAD,EAAA,UAAA,CACE,qBAAC,QAAD,EAAA,UAAA,CACE,oBAAC,gBAAD;EAAgB,SAAQ;EAAY,OAAM;EAAQ,QAAO;EAAS,CAAA,EAClE,oBAAC,gBAAD;EAAgB,SAAQ;EAAY,OAAM;EAAQ,QAAO;EAAS,CAAA,CAC3D,EAAA,CAAA,EACT,oBAAC,aAAD,EAAe,CAAA,CACT,EAAA,CAAA;;AAIZ,MAAM,aAAa,OAAO,GAAG;;;SAGpB,QAAQ,GAAG;;;AAIpB,MAAM,cAAc,OAAO,GAAG;;;SAGrB,QAAQ,GAAG;;;AAIpB,MAAa,8BAA8B;AACzC,QACE,qBAAA,UAAA,EAAA,UAAA,CACE,oBAAC,eAAD,EAAiB,CAAA,EACjB,oBAAC,cAAD,EAAA,UACE,qBAAC,OAAD;EAAO,SAAS,QAAQ;YAAxB,CACE,oBAAC,aAAD,EAAe,CAAA,EACf,qBAAC,QAAD;GAAQ,SAAS,QAAQ;aAAzB,CACE,qBAAC,YAAD,EAAA,UAAA;IACE,oBAACA,cAAD;KAAQ,SAAS,EAAE,OAAO,WAAW;KAAE,SAAA;KAAQ,cAAc,EAAE,QAAQ,SAAS;eAC9E,oBAAA,UAAA,EAAK,CAAA;KACE,CAAA;IACT,oBAACA,cAAD;KAAQ,SAAS,EAAE,OAAO,WAAW;KAAE,SAAA;KAAQ,cAAc,EAAE,QAAQ,SAAS;eAC9E,oBAAA,UAAA,EAAK,CAAA;KACE,CAAA;IACT,oBAACA,cAAD;KAAQ,SAAS,EAAE,OAAO,WAAW;KAAE,SAAA;eACrC,oBAAA,UAAA,EAAK,CAAA;KACE,CAAA;IACE,EAAA,CAAA,EACb,qBAAC,aAAD,EAAA,UAAA,CACE,oBAACA,cAAD;IAAQ,SAAS,EAAE,OAAO,WAAW;IAAE,SAAA;IAAQ,cAAc,EAAE,QAAQ,SAAS;cAC9E,oBAAA,UAAA,EAAK,CAAA;IACE,CAAA,EACT,oBAACA,cAAD;IAAQ,SAAS,EAAE,OAAO,WAAW;IAAE,SAAA;cACrC,oBAAA,UAAA,EAAK,CAAA;IACE,CAAA,CACG,EAAA,CAAA,CACP;KACH;KACK,CAAA,CACd,EAAA,CAAA"}
@@ -0,0 +1,2 @@
1
+ import { Backdrop, Container, Section } from "../../PageLayout.mjs";
2
+ export { Backdrop, Container, Section };
@@ -0,0 +1,35 @@
1
+ import { Spacing } from "@persona/design-tokens";
2
+ import styled from "styled-components";
3
+ import { jsx } from "react/jsx-runtime";
4
+ //#region patterns/PageLayout/PageLayout.tsx
5
+ const Backdrop = styled.div`
6
+ position: relative;
7
+ width: 100%;
8
+ padding: ${Spacing[7]} ${Spacing[5]};
9
+
10
+ display: flex;
11
+ flex-direction: column;
12
+ `;
13
+ const StyledContainer = styled("div")`
14
+ position: relative;
15
+ width: 100%;
16
+ padding: 0;
17
+
18
+ display: flex;
19
+ flex-direction: column;
20
+ align-items: center;
21
+ `;
22
+ const Container = ({ children, ...rest }) => {
23
+ return /* @__PURE__ */ jsx(StyledContainer, {
24
+ ...rest,
25
+ children
26
+ });
27
+ };
28
+ const Section = styled("div")`
29
+ width: 100%;
30
+ padding: ${Spacing[7]};
31
+ `;
32
+ //#endregion
33
+ export { Backdrop, Container, Section };
34
+
35
+ //# sourceMappingURL=index.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.mjs","names":[],"sources":["../../../patterns/PageLayout/PageLayout.tsx"],"sourcesContent":["import type { ComponentPropsWithoutRef, ReactNode } from 'react';\nimport styled from 'styled-components';\n\nimport { Spacing } from '@persona/design-tokens';\n\nexport const Backdrop = styled.div`\n position: relative;\n width: 100%;\n padding: ${Spacing[7]} ${Spacing[5]};\n\n display: flex;\n flex-direction: column;\n`;\n\nconst StyledContainer = styled('div')`\n position: relative;\n width: 100%;\n padding: 0;\n\n display: flex;\n flex-direction: column;\n align-items: center;\n`;\n\nexport const Container = ({\n children,\n ...rest\n}: { children: ReactNode } & ComponentPropsWithoutRef<'div'>) => {\n return <StyledContainer {...rest}>{children}</StyledContainer>;\n};\n\nexport const Section = styled('div')`\n width: 100%;\n padding: ${Spacing[7]};\n`;\n"],"mappings":";;;;AAKA,MAAa,WAAW,OAAO,GAAG;;;aAGrB,QAAQ,GAAG,GAAG,QAAQ,GAAG;;;;;AAMtC,MAAM,kBAAkB,OAAO,MAAM;;;;;;;;;AAUrC,MAAa,aAAa,EACxB,UACA,GAAG,WAC4D;AAC/D,QAAO,oBAAC,iBAAD;EAAiB,GAAI;EAAO;EAA2B,CAAA;;AAGhE,MAAa,UAAU,OAAO,MAAM;;aAEvB,QAAQ,GAAG"}
@@ -11,4 +11,4 @@ type ParagraphSize = 'lg' | 'md' | 'sm' | 'xs';
11
11
  declare const paragraphMixins: Record<ParagraphMixinSize, FlattenInterpolation<ThemeProps<DefaultTheme>>>;
12
12
  //#endregion
13
13
  export { displayMixins as a, paragraphMixins as c, ParagraphSize as i, HeadingSize as n, fontFamilyMixin as o, ParagraphMixinSize as r, headingMixins as s, DisplaySize as t };
14
- //# sourceMappingURL=text-B21s9mRZ.d.mts.map
14
+ //# sourceMappingURL=text-BaQdW8qa.d.mts.map
@@ -151,4 +151,4 @@ declare const darkTheme: PersonaTheme;
151
151
  declare const marketingFontTheme: PersonaTheme;
152
152
  //#endregion
153
153
  export { darkTheme as a, Variant as i, PersonaTheme as n, defaultTheme as o, TextColors as r, marketingFontTheme as s, BackgroundColors as t };
154
- //# sourceMappingURL=theme-BzBpJXhO.d.mts.map
154
+ //# sourceMappingURL=theme-D9Y6NOzb.d.mts.map
package/dist/theme.d.mts CHANGED
@@ -1,2 +1,2 @@
1
- import { a as darkTheme, i as Variant, n as PersonaTheme, o as defaultTheme, r as TextColors, s as marketingFontTheme, t as BackgroundColors } from "./theme-BzBpJXhO.mjs";
1
+ import { a as darkTheme, i as Variant, n as PersonaTheme, o as defaultTheme, r as TextColors, s as marketingFontTheme, t as BackgroundColors } from "./theme-D9Y6NOzb.mjs";
2
2
  export { BackgroundColors, PersonaTheme, TextColors, Variant, darkTheme, defaultTheme as default, marketingFontTheme };
@@ -1,4 +1,4 @@
1
- import { a as FilterField, c as FilterOperator, u as FilterRuleValue } from "./types-D58IoRx6.mjs";
1
+ import { a as FilterField, c as FilterOperator, u as FilterRuleValue } from "./types-mb3woqzE.mjs";
2
2
  import { ReactElement } from "react";
3
3
 
4
4
  //#region components/DataTable/TableControls/FiltersV2/value-controls/types.d.ts
@@ -42,4 +42,4 @@ interface ValueControlProps {
42
42
  }
43
43
  //#endregion
44
44
  export { ValueControlProps as t };
45
- //# sourceMappingURL=types-D7ppqnNj.d.mts.map
45
+ //# sourceMappingURL=types-BKEwt0uq.d.mts.map
@@ -22,4 +22,4 @@ interface BaseActiveFilter<TFilter extends BaseFilterConfig = BaseFilterConfig>
22
22
  }
23
23
  //#endregion
24
24
  export { BaseActiveFilter as n, BaseFilterConfig as r, AttributeColumn as t };
25
- //# sourceMappingURL=types-DEh_pXgS.d.mts.map
25
+ //# sourceMappingURL=types-CjHuZoVJ.d.mts.map
@@ -7,4 +7,4 @@ interface PaginationParams {
7
7
  }
8
8
  //#endregion
9
9
  export { PaginationParams as t };
10
- //# sourceMappingURL=types-TV9nVfSe.d.mts.map
10
+ //# sourceMappingURL=types-DVsBRqjZ.d.mts.map
@@ -3,14 +3,13 @@
3
3
  * Filter UI v2 — client-side state shape.
4
4
  *
5
5
  * Conceptual predicate (what the user sees in the bar):
6
- * AND_perField(...topLevelRules) AND OR(...compound.groups)
6
+ * AND(...topLevelRules) AND OR(...compound.groups)
7
7
  * where each `AndGroup` inside `compound.groups` is itself AND'd internally.
8
8
  *
9
- * - Simple pills compose into `topLevelRules`. Pills on DIFFERENT fields
10
- * are AND'd together; multiple pills on the SAME field are OR'd
11
- * together. AND'ing two equality predicates on a single field would
12
- * always return zero rows, so multi-pill-per-field naturally means
13
- * "is any of these values".
9
+ * - Simple pills compose into `topLevelRules` and every one of them
10
+ * narrows the result set, on the same field as much as across fields.
11
+ * OR lives inside a single pill's multi-select value ("is any of these
12
+ * values") or in the Rules pill.
14
13
  * - The Rules pill owns `compound.groups` (OR-of-AND / DNF).
15
14
  */
16
15
  /** All available field types we render type-aware controls + operators for. */
@@ -155,4 +154,4 @@ type FilterSize = 'sm' | 'md';
155
154
  declare const EMPTY_FILTER_STATE: FilterStateV2;
156
155
  //#endregion
157
156
  export { FilterField as a, FilterOperator as c, FilterSize as d, FilterStateV2 as f, EMPTY_FILTER_STATE as i, FilterRule as l, CompoundExpression as n, FilterFieldSource as o, TopLevelFilterRule as p, DateRangeFilterValue as r, FilterFieldType as s, AndGroup as t, FilterRuleValue as u };
158
- //# sourceMappingURL=types-D58IoRx6.d.mts.map
157
+ //# sourceMappingURL=types-mb3woqzE.d.mts.map
package/dist/types.d.mts CHANGED
@@ -1,2 +1,2 @@
1
- import { n as BaseActiveFilter, r as BaseFilterConfig, t as AttributeColumn } from "./types-DEh_pXgS.mjs";
1
+ import { n as BaseActiveFilter, r as BaseFilterConfig, t as AttributeColumn } from "./types-CjHuZoVJ.mjs";
2
2
  export { AttributeColumn, BaseActiveFilter, BaseFilterConfig };
package/dist/types2.d.mts CHANGED
@@ -1,2 +1,2 @@
1
- import { a as FilterField, c as FilterOperator, d as FilterSize, f as FilterStateV2, i as EMPTY_FILTER_STATE, l as FilterRule, n as CompoundExpression, o as FilterFieldSource, p as TopLevelFilterRule, r as DateRangeFilterValue, s as FilterFieldType, t as AndGroup, u as FilterRuleValue } from "./types-D58IoRx6.mjs";
1
+ import { a as FilterField, c as FilterOperator, d as FilterSize, f as FilterStateV2, i as EMPTY_FILTER_STATE, l as FilterRule, n as CompoundExpression, o as FilterFieldSource, p as TopLevelFilterRule, r as DateRangeFilterValue, s as FilterFieldType, t as AndGroup, u as FilterRuleValue } from "./types-mb3woqzE.mjs";
2
2
  export { AndGroup, CompoundExpression, DateRangeFilterValue, EMPTY_FILTER_STATE, FilterField, FilterFieldSource, FilterFieldType, FilterOperator, FilterRule, FilterRuleValue, FilterSize, FilterStateV2, TopLevelFilterRule };
package/dist/types3.d.mts CHANGED
@@ -1,2 +1,2 @@
1
- import { t as ValueControlProps } from "./types-D7ppqnNj.mjs";
1
+ import { t as ValueControlProps } from "./types-BKEwt0uq.mjs";
2
2
  export { ValueControlProps };
package/dist/types4.d.mts CHANGED
@@ -1,2 +1,2 @@
1
- import { t as PaginationParams } from "./types-TV9nVfSe.mjs";
1
+ import { t as PaginationParams } from "./types-DVsBRqjZ.mjs";
2
2
  export { PaginationParams };
@@ -1,4 +1,4 @@
1
- import { p as FooterAction } from "./ComboboxBase-BsPf8BZh.mjs";
1
+ import { p as FooterAction } from "./ComboboxBase-Dmzn8a53.mjs";
2
2
  import { KeyboardEvent } from "react";
3
3
 
4
4
  //#region components/Combobox/useComboboxFooterAction.d.ts
@@ -1,5 +1,5 @@
1
- import { f as FilterStateV2, l as FilterRule, n as CompoundExpression } from "./types-D58IoRx6.mjs";
2
- import { t as FieldRegistry } from "./FieldRegistry-rqSkjchY.mjs";
1
+ import { f as FilterStateV2, l as FilterRule, n as CompoundExpression } from "./types-mb3woqzE.mjs";
2
+ import { t as FieldRegistry } from "./FieldRegistry-COyIA4VU.mjs";
3
3
 
4
4
  //#region components/DataTable/TableControls/FiltersV2/useFilterStateV2.d.ts
5
5
  interface UseFilterStateV2Options {
@@ -90,4 +90,4 @@ interface UseFilterStateV2Result {
90
90
  declare function useFilterStateV2(options: UseFilterStateV2Options): UseFilterStateV2Result;
91
91
  //#endregion
92
92
  export { UseFilterStateV2Result as n, useFilterStateV2 as r, UseFilterStateV2Options as t };
93
- //# sourceMappingURL=useFilterStateV2-DCQghouq.d.mts.map
93
+ //# sourceMappingURL=useFilterStateV2-CGzRyv0i.d.mts.map
@@ -1,2 +1,2 @@
1
- import { n as UseFilterStateV2Result, r as useFilterStateV2, t as UseFilterStateV2Options } from "./useFilterStateV2-DCQghouq.mjs";
1
+ import { n as UseFilterStateV2Result, r as useFilterStateV2, t as UseFilterStateV2Options } from "./useFilterStateV2-CGzRyv0i.mjs";
2
2
  export { UseFilterStateV2Options, UseFilterStateV2Result, useFilterStateV2 };