@persona/design-system 0.1.5-pre.4 → 0.1.7

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 (897) hide show
  1. package/CHANGELOG.md +64 -111
  2. package/dist/{Action-B10lxofb.d.mts → Action-DkNqzc2X.d.mts} +3 -3
  3. package/dist/{Action-uduFOh2m.d.cts → Action-z1rV4qON.d.cts} +3 -3
  4. package/dist/Action.d.cts +1 -1
  5. package/dist/Action.d.mts +1 -1
  6. package/dist/Attribute.d.mts +4 -4
  7. package/dist/AttributeGrid.d.mts +1 -1
  8. package/dist/{Badge-BwAZD9BH.cjs → Badge-DAGPU4-e.cjs} +3 -6
  9. package/dist/{Badge-BwAZD9BH.cjs.map → Badge-DAGPU4-e.cjs.map} +1 -1
  10. package/dist/{Badge-BqLnhb4n.mjs → Badge-DRn_r6is.mjs} +2 -5
  11. package/dist/{Badge-BqLnhb4n.mjs.map → Badge-DRn_r6is.mjs.map} +1 -1
  12. package/dist/Banner.d.mts +1 -1
  13. package/dist/Breadcrumb-BOxfam3E.d.cts +31 -0
  14. package/dist/Breadcrumb-On7pOpgt.d.mts +31 -0
  15. package/dist/Breadcrumb.d.cts +2 -0
  16. package/dist/Breadcrumb.d.mts +2 -0
  17. package/dist/Breadcrumbs.d.cts +20 -0
  18. package/dist/Breadcrumbs.d.mts +20 -0
  19. package/dist/{Button-DqDLGURJ.d.mts → Button-DXsYU5qU.d.mts} +2 -2
  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-DeJSt5ys.mjs → Card-CLTkZLKr.mjs} +4 -4
  25. package/dist/{Card-DeJSt5ys.mjs.map → Card-CLTkZLKr.mjs.map} +1 -1
  26. package/dist/{Card-CyCKL-M5.cjs → Card-CaOItkgL.cjs} +5 -5
  27. package/dist/{Card-CyCKL-M5.cjs.map → Card-CaOItkgL.cjs.map} +1 -1
  28. package/dist/{Card-CrQL0hXm.d.cts → Card-DnmrsQWi.d.cts} +2 -2
  29. package/dist/{Card-CcU9cKCd.d.mts → Card-IOBCsfke.d.mts} +4 -4
  30. package/dist/Card.d.cts +1 -1
  31. package/dist/Card.d.mts +1 -1
  32. package/dist/Card2.d.cts +3 -3
  33. package/dist/Card2.d.mts +1 -1
  34. package/dist/{Checkbox-C5bGcb-r.mjs → Checkbox-BghGF-iW.mjs} +4 -4
  35. package/dist/{Checkbox-C5bGcb-r.mjs.map → Checkbox-BghGF-iW.mjs.map} +1 -1
  36. package/dist/{Checkbox-BWJNAP27.d.mts → Checkbox-DfI0Xp3y.d.cts} +1 -1
  37. package/dist/{Checkbox-D4nv7eNs.cjs → Checkbox-DhxpxzGp.cjs} +6 -6
  38. package/dist/{Checkbox-D4nv7eNs.cjs.map → Checkbox-DhxpxzGp.cjs.map} +1 -1
  39. package/dist/{Checkbox-BmjK0Wac.d.cts → Checkbox-MUC37dLY.d.mts} +1 -1
  40. package/dist/Checkbox.d.cts +1 -1
  41. package/dist/Checkbox.d.mts +1 -1
  42. package/dist/CheckboxGroupField.d.cts +1 -1
  43. package/dist/CheckboxGroupField.d.mts +2 -2
  44. package/dist/{Combobox-B_oe33Re.cjs → Combobox-4Bi9-N1p.cjs} +24 -23
  45. package/dist/Combobox-4Bi9-N1p.cjs.map +1 -0
  46. package/dist/{Combobox-DjbJYK_u.d.mts → Combobox-5rAFq_52.d.cts} +3 -3
  47. package/dist/Combobox-Bedo_GIj.d.mts +11 -0
  48. package/dist/{Combobox-B_-swcix.mjs → Combobox-CeKMrlxy.mjs} +31 -30
  49. package/dist/Combobox-CeKMrlxy.mjs.map +1 -0
  50. package/dist/Combobox.d.cts +3 -12
  51. package/dist/Combobox.d.mts +2 -2
  52. package/dist/{ComboboxBase-D2wypeXf.d.cts → ComboboxBase-BoR9DVwe.d.cts} +6 -5
  53. package/dist/{ComboboxBase-INya0Csa.d.mts → ComboboxBase-DGZUdsQa.d.mts} +9 -8
  54. package/dist/ComboboxBase.d.cts +1 -1
  55. package/dist/ComboboxBase.d.mts +1 -1
  56. package/dist/{ComboboxMultiSelect-Dn8cRZ6Z.d.cts → ComboboxMultiSelect-CnI6sFAF.d.cts} +2 -2
  57. package/dist/{ComboboxMultiSelect-Dq9DGH8S.d.mts → ComboboxMultiSelect-DMWPiBrE.d.mts} +2 -2
  58. package/dist/ComboboxMultiSelect.d.cts +1 -1
  59. package/dist/ComboboxMultiSelect.d.mts +1 -1
  60. package/dist/{ComboboxSingleSelect-WwBJRb0e.d.mts → ComboboxSingleSelect-CcppU_hq.d.mts} +4 -4
  61. package/dist/{ComboboxSingleSelect-D8YM7GKP.d.cts → ComboboxSingleSelect-Japejm0g.d.cts} +4 -4
  62. package/dist/ComboboxSingleSelect.d.cts +1 -1
  63. package/dist/ComboboxSingleSelect.d.mts +1 -1
  64. package/dist/CompactBar-2cpJD7qg.d.mts +21 -0
  65. package/dist/CompactBar-DTsGo1zU.d.cts +21 -0
  66. package/dist/CompactBar.d.cts +2 -0
  67. package/dist/CompactBar.d.mts +2 -0
  68. package/dist/ConfigFormGroup-DISUwz5j.mjs +28 -0
  69. package/dist/ConfigFormGroup-DISUwz5j.mjs.map +1 -0
  70. package/dist/ConfigFormGroup-DVRhkS2L.cjs +35 -0
  71. package/dist/ConfigFormGroup-DVRhkS2L.cjs.map +1 -0
  72. package/dist/ControlBar-BGmXymCB.d.cts +151 -0
  73. package/dist/ControlBar-DXyl1gjc.d.mts +151 -0
  74. package/dist/ControlBar.d.cts +2 -0
  75. package/dist/ControlBar.d.mts +2 -0
  76. package/dist/DataTable.d.cts +372 -0
  77. package/dist/DataTable.d.mts +372 -0
  78. package/dist/DateField.d.cts +23 -2
  79. package/dist/DateField.d.mts +23 -2
  80. package/dist/DatePicker.d.cts +2 -2
  81. package/dist/DatePicker.d.mts +2 -2
  82. package/dist/DateRangePicker.d.cts +8 -2
  83. package/dist/DateRangePicker.d.mts +9 -4
  84. package/dist/{DropdownButton-k9kEcexu.mjs → DropdownButton-B397h6ka.mjs} +3 -4
  85. package/dist/{DropdownButton-k9kEcexu.mjs.map → DropdownButton-B397h6ka.mjs.map} +1 -1
  86. package/dist/{DropdownButton-DO4NqvWR.cjs → DropdownButton-Du6dwZVL.cjs} +4 -5
  87. package/dist/{DropdownButton-DO4NqvWR.cjs.map → DropdownButton-Du6dwZVL.cjs.map} +1 -1
  88. package/dist/DropdownButton.d.cts +1 -1
  89. package/dist/DropdownButton.d.mts +2 -2
  90. package/dist/{DropdownMenu-rWgROxQe.d.mts → DropdownMenu-5qIgQ14A.d.mts} +4 -4
  91. package/dist/{DropdownMenu-D2fzpkX2.cjs → DropdownMenu-CfJxgWN5.cjs} +4 -4
  92. package/dist/{DropdownMenu-D2fzpkX2.cjs.map → DropdownMenu-CfJxgWN5.cjs.map} +1 -1
  93. package/dist/{DropdownMenu-Bm2QqLEq.d.cts → DropdownMenu-FIYz6oAo.d.cts} +3 -3
  94. package/dist/{DropdownMenu-BTk--LWo.mjs → DropdownMenu-cnkoGc7C.mjs} +3 -3
  95. package/dist/{DropdownMenu-BTk--LWo.mjs.map → DropdownMenu-cnkoGc7C.mjs.map} +1 -1
  96. package/dist/DropdownMenu.d.cts +1 -1
  97. package/dist/DropdownMenu.d.mts +1 -1
  98. package/dist/{ErrorProps-DLdVsYlk.d.cts → ErrorProps-BosuK6zJ.d.cts} +1 -1
  99. package/dist/{ErrorProps-DYUKygmd.d.mts → ErrorProps-iEj4BIVA.d.mts} +1 -1
  100. package/dist/ErrorProps.d.cts +1 -1
  101. package/dist/ErrorProps.d.mts +1 -1
  102. package/dist/FloatingActionBar.d.cts +40 -0
  103. package/dist/FloatingActionBar.d.mts +41 -0
  104. package/dist/{FormControl-BXHqI_2D.mjs → FormControl-ArDcvmir.mjs} +3 -3
  105. package/dist/{FormControl-BXHqI_2D.mjs.map → FormControl-ArDcvmir.mjs.map} +1 -1
  106. package/dist/{FormControl-KkeIYuBa.d.cts → FormControl-BrsML00L.d.cts} +2 -2
  107. package/dist/{FormControl-DiR2e7Od.cjs → FormControl-Czt95h2L.cjs} +6 -6
  108. package/dist/{FormControl-DiR2e7Od.cjs.map → FormControl-Czt95h2L.cjs.map} +1 -1
  109. package/dist/{FormControl-CM7wTn1P.d.mts → FormControl-DnsC4vTX.d.mts} +3 -3
  110. package/dist/FormControl.d.cts +1 -1
  111. package/dist/FormControl.d.mts +1 -1
  112. package/dist/FormControlLabel.d.mts +14 -0
  113. package/dist/{FormField-CdMru4s5.d.mts → FormField-BddCs6P0.d.mts} +2 -2
  114. package/dist/{FormField-19ownwjH.d.cts → FormField-DoSXvnJ3.d.cts} +2 -2
  115. package/dist/FormField.d.cts +1 -1
  116. package/dist/FormField.d.mts +1 -1
  117. package/dist/{Header-t1plnZc0.d.mts → Header-B-Us54dR.d.mts} +2 -2
  118. package/dist/{Header-D8oDtnIL.d.cts → Header-CkZvzbzL.d.cts} +1 -1
  119. package/dist/Header.d.cts +1 -1
  120. package/dist/Header.d.mts +1 -1
  121. package/dist/{HelperTooltip-oXdyk2At.d.cts → HelperTooltip-C1CYMpJP.d.cts} +2 -2
  122. package/dist/{HelperTooltip-Cd7I0Ucq.d.mts → HelperTooltip-CofPKyZh.d.mts} +3 -3
  123. package/dist/HelperTooltip.d.cts +1 -1
  124. package/dist/HelperTooltip.d.mts +1 -1
  125. package/dist/HoverCopyableField-B_WNB7Qp.cjs +110 -0
  126. package/dist/HoverCopyableField-B_WNB7Qp.cjs.map +1 -0
  127. package/dist/HoverCopyableField-DR575ayC.mjs +103 -0
  128. package/dist/HoverCopyableField-DR575ayC.mjs.map +1 -0
  129. package/dist/HoverCopyableField.d.cts +16 -0
  130. package/dist/HoverCopyableField.d.mts +17 -0
  131. package/dist/{IconButton-C28qxOdi.mjs → IconButton-DC4rh6ow.mjs} +5 -5
  132. package/dist/{IconButton-C28qxOdi.mjs.map → IconButton-DC4rh6ow.mjs.map} +1 -1
  133. package/dist/{IconButton-B1ZL8BqW.cjs → IconButton-DNy7g5zh.cjs} +5 -5
  134. package/dist/{IconButton-B1ZL8BqW.cjs.map → IconButton-DNy7g5zh.cjs.map} +1 -1
  135. package/dist/{IconButton-DsXbc3nQ.d.mts → IconButton-Dnnlf9uO.d.mts} +2 -2
  136. package/dist/IconButton.d.mts +1 -1
  137. package/dist/ImageTile.d.cts +1 -1
  138. package/dist/ImageTile.d.mts +2 -2
  139. package/dist/InlineCombobox.d.mts +45 -0
  140. package/dist/InlineInput.d.mts +39 -0
  141. package/dist/{Input-Cv5qieRg.d.mts → Input-4KeYlOWM.d.mts} +5 -5
  142. package/dist/{Input-DHOsR4cl.cjs → Input-BDLUq-pK.cjs} +6 -7
  143. package/dist/{Input-DHOsR4cl.cjs.map → Input-BDLUq-pK.cjs.map} +1 -1
  144. package/dist/{Input-XppkvfUf.d.cts → Input-CEcTvtX2.d.cts} +2 -2
  145. package/dist/{Input-eoFk39bE.mjs → Input-PWfwMSJ7.mjs} +4 -5
  146. package/dist/{Input-eoFk39bE.mjs.map → Input-PWfwMSJ7.mjs.map} +1 -1
  147. package/dist/Input.d.cts +1 -1
  148. package/dist/Input.d.mts +1 -1
  149. package/dist/{InputProps-CitGo8QA.d.cts → InputProps-CTLG2Tr0.d.mts} +2 -2
  150. package/dist/{InputProps-BHu05fX0.d.mts → InputProps-DNlik5IZ.d.cts} +2 -2
  151. package/dist/InputProps.d.cts +1 -1
  152. package/dist/InputProps.d.mts +1 -1
  153. package/dist/Inserter.d.cts +12 -0
  154. package/dist/Inserter.d.mts +12 -0
  155. package/dist/Link.d.mts +1 -1
  156. package/dist/{ListBox-CE3mfDSB.cjs → ListBox-BCscLcYL.cjs} +11 -15
  157. package/dist/ListBox-BCscLcYL.cjs.map +1 -0
  158. package/dist/{ListBox-Z1y0LG1H.mjs → ListBox-CDNOJmvz.mjs} +9 -13
  159. package/dist/{ListBox-CE3mfDSB.cjs.map → ListBox-CDNOJmvz.mjs.map} +1 -1
  160. package/dist/{ListBox-AyjzT6ra.d.mts → ListBox-DZIAlPbc.d.mts} +4 -4
  161. package/dist/{ListBox-DbyZFy2W.d.cts → ListBox-WyZvseo5.d.cts} +2 -2
  162. package/dist/ListBox.d.cts +1 -1
  163. package/dist/ListBox.d.mts +1 -1
  164. package/dist/ListBoxField.d.cts +2 -2
  165. package/dist/ListBoxField.d.mts +3 -3
  166. package/dist/{LoadingShimmer-CNE6JUVF.mjs → LoadingShimmer-Bu6KtQ06.mjs} +2 -2
  167. package/dist/{LoadingShimmer-CNE6JUVF.mjs.map → LoadingShimmer-Bu6KtQ06.mjs.map} +1 -1
  168. package/dist/{LoadingShimmer-DMK9RC4N.cjs → LoadingShimmer-CUjbAqGd.cjs} +4 -4
  169. package/dist/{LoadingShimmer-DMK9RC4N.cjs.map → LoadingShimmer-CUjbAqGd.cjs.map} +1 -1
  170. package/dist/LoadingShimmer.d.mts +2 -2
  171. package/dist/MaskedInput.d.cts +1 -1
  172. package/dist/MaskedInput.d.mts +1 -1
  173. package/dist/{Menu-DIFkRQ6x.d.mts → Menu-BJ5c7HGD.d.mts} +4 -4
  174. package/dist/{Menu-DPrNMatb.d.cts → Menu-BKMxOXkj.d.cts} +2 -2
  175. package/dist/{Menu-BpkjNO81.cjs → Menu-BXic-30n.cjs} +4 -4
  176. package/dist/{Menu-BpkjNO81.cjs.map → Menu-BXic-30n.cjs.map} +1 -1
  177. package/dist/{Menu-DNRHo2i_.mjs → Menu-CVuFAxl2.mjs} +3 -3
  178. package/dist/{Menu-DNRHo2i_.mjs.map → Menu-CVuFAxl2.mjs.map} +1 -1
  179. package/dist/Menu.d.cts +1 -1
  180. package/dist/Menu.d.mts +1 -1
  181. package/dist/MiddleTruncatedText-BIzKECv9.cjs +178 -0
  182. package/dist/MiddleTruncatedText-BIzKECv9.cjs.map +1 -0
  183. package/dist/MiddleTruncatedText-Bzpg3zAU.mjs +171 -0
  184. package/dist/MiddleTruncatedText-Bzpg3zAU.mjs.map +1 -0
  185. package/dist/Modal.d.cts +10 -5
  186. package/dist/Modal.d.mts +12 -7
  187. package/dist/PageHeader.d.mts +1 -1
  188. package/dist/PageSelector-CMoV-cHa.d.mts +30 -0
  189. package/dist/PageSelector-DoROR_Uh.d.cts +30 -0
  190. package/dist/PageSelector.d.cts +2 -30
  191. package/dist/PageSelector.d.mts +2 -30
  192. package/dist/Pagination-B97xQ-Wk.d.cts +33 -0
  193. package/dist/Pagination-Cj08JRG9.mjs +202 -0
  194. package/dist/Pagination-Cj08JRG9.mjs.map +1 -0
  195. package/dist/Pagination-D4IVVj3S.cjs +233 -0
  196. package/dist/Pagination-D4IVVj3S.cjs.map +1 -0
  197. package/dist/Pagination-QWNK_hH7.d.mts +33 -0
  198. package/dist/Pagination.d.cts +2 -33
  199. package/dist/Pagination.d.mts +2 -33
  200. package/dist/Pii-Bxh6_R4T.mjs +19 -0
  201. package/dist/Pii-Bxh6_R4T.mjs.map +1 -0
  202. package/dist/Pii-D-Ry7L0t.cjs +25 -0
  203. package/dist/Pii-D-Ry7L0t.cjs.map +1 -0
  204. package/dist/Pii.d.mts +1 -1
  205. package/dist/{Popover-C2dBSwiU.cjs → Popover-BAv7BujW.cjs} +5 -5
  206. package/dist/{Popover-C2dBSwiU.cjs.map → Popover-BAv7BujW.cjs.map} +1 -1
  207. package/dist/{Popover-BSdyxuja.mjs → Popover-D0QY5f-J.mjs} +5 -5
  208. package/dist/{Popover-BSdyxuja.mjs.map → Popover-D0QY5f-J.mjs.map} +1 -1
  209. package/dist/Popover.d.mts +1 -1
  210. package/dist/ProgressBar.d.mts +1 -1
  211. package/dist/ProgressIndicator.d.mts +1 -1
  212. package/dist/{PseudoClassProps-mZgO_iZJ.d.mts → PseudoClassProps-ySXCGUEQ.d.mts} +1 -1
  213. package/dist/PseudoClassProps.d.mts +1 -1
  214. package/dist/{Radio-w-L3Otuk.mjs → Radio-C9DevagH.mjs} +2 -2
  215. package/dist/{Radio-w-L3Otuk.mjs.map → Radio-C9DevagH.mjs.map} +1 -1
  216. package/dist/{Radio-mFfT6G3d.cjs → Radio-nw846eRv.cjs} +4 -4
  217. package/dist/{Radio-mFfT6G3d.cjs.map → Radio-nw846eRv.cjs.map} +1 -1
  218. package/dist/{RadioGroup-B8htTzsS.mjs → RadioGroup-B3hRbIWF.mjs} +3 -3
  219. package/dist/{RadioGroup-B8htTzsS.mjs.map → RadioGroup-B3hRbIWF.mjs.map} +1 -1
  220. package/dist/{RadioGroup-D5ueuC6a.d.cts → RadioGroup-D_H1B7JV.d.cts} +1 -1
  221. package/dist/{RadioGroup-BjDmweRK.cjs → RadioGroup-DmGVJCgT.cjs} +4 -4
  222. package/dist/{RadioGroup-BjDmweRK.cjs.map → RadioGroup-DmGVJCgT.cjs.map} +1 -1
  223. package/dist/{RadioGroup-Ls0vPsP_.d.mts → RadioGroup-nhMXEbCx.d.mts} +1 -1
  224. package/dist/RadioGroup.d.cts +1 -1
  225. package/dist/RadioGroup.d.mts +1 -1
  226. package/dist/RangeCalendar.d.mts +1 -1
  227. package/dist/RangeCalendarPresets.d.mts +2 -2
  228. package/dist/SearchInput-CAHYPQVX.d.cts +46 -0
  229. package/dist/SearchInput-s6qGC2WZ.d.mts +46 -0
  230. package/dist/SearchInput.d.cts +2 -0
  231. package/dist/SearchInput.d.mts +2 -0
  232. package/dist/Section.d.mts +1 -1
  233. package/dist/{SectionHeading-DVSXofwK.d.cts → SectionHeading-CDBQ4m9E.d.mts} +5 -6
  234. package/dist/{SectionHeading-QvAmhVmD.d.mts → SectionHeading-D-L4uPoX.d.cts} +5 -6
  235. package/dist/SectionHeading.d.cts +1 -1
  236. package/dist/SectionHeading.d.mts +1 -1
  237. package/dist/{SegmentedControl-DnwNjYre.mjs → SegmentedControl-B1ZLgu61.mjs} +2 -2
  238. package/dist/{SegmentedControl-DnwNjYre.mjs.map → SegmentedControl-B1ZLgu61.mjs.map} +1 -1
  239. package/dist/{SegmentedControl-DRtXdbLe.d.cts → SegmentedControl-BYuXohIp.d.cts} +1 -1
  240. package/dist/{SegmentedControl-Dk5S4Dhz.d.mts → SegmentedControl-CE845gnm.d.mts} +1 -1
  241. package/dist/{SegmentedControl-CvznPXgC.cjs → SegmentedControl-CIJz0oxY.cjs} +4 -4
  242. package/dist/{SegmentedControl-CvznPXgC.cjs.map → SegmentedControl-CIJz0oxY.cjs.map} +1 -1
  243. package/dist/SegmentedControl.d.cts +1 -1
  244. package/dist/SegmentedControl.d.mts +1 -1
  245. package/dist/{Select-DRnRqMAL.d.mts → Select-BMEwCfbv.d.mts} +5 -5
  246. package/dist/{Select-Cl3AOq0-.mjs → Select-ByTgXOlU.mjs} +8 -12
  247. package/dist/{Select-Cl3AOq0-.mjs.map → Select-ByTgXOlU.mjs.map} +1 -1
  248. package/dist/{Select-CVB-Q1g1.cjs → Select-C65bfYeT.cjs} +9 -13
  249. package/dist/{Select-CVB-Q1g1.cjs.map → Select-C65bfYeT.cjs.map} +1 -1
  250. package/dist/{Select-BdPdgtfU.d.cts → Select-NcaURrGZ.d.cts} +4 -4
  251. package/dist/Select.d.cts +1 -1
  252. package/dist/Select.d.mts +1 -1
  253. package/dist/Slider.d.cts +51 -2
  254. package/dist/Slider.d.mts +51 -2
  255. package/dist/SliderRHF.d.cts +18 -2
  256. package/dist/SliderRHF.d.mts +19 -2
  257. package/dist/SliderThumb.d.mts +2 -119
  258. package/dist/{Spacer-DWGkX170.cjs → Spacer-GYHbk-dS.cjs} +2 -2
  259. package/dist/{Spacer-DWGkX170.cjs.map → Spacer-GYHbk-dS.cjs.map} +1 -1
  260. package/dist/{Spacer-DxH_sQrV.mjs → Spacer-Ln3KChb5.mjs} +1 -1
  261. package/dist/{Spacer-DxH_sQrV.mjs.map → Spacer-Ln3KChb5.mjs.map} +1 -1
  262. package/dist/{Spinner-z7DrPE1d.cjs → Spinner-B6bx70yR.cjs} +2 -2
  263. package/dist/Spinner-B6bx70yR.cjs.map +1 -0
  264. package/dist/{Spinner-C05An_fn.mjs → Spinner-BEPF42RW.mjs} +1 -1
  265. package/dist/Spinner-BEPF42RW.mjs.map +1 -0
  266. package/dist/{Stack-BHb3ZB2A.cjs → Stack-BF-9YjA1.cjs} +2 -2
  267. package/dist/Stack-BF-9YjA1.cjs.map +1 -0
  268. package/dist/{Stack-toDRLy--.d.cts → Stack-D979gYU9.d.cts} +5 -5
  269. package/dist/{Stack-BntgUvsW.d.mts → Stack-UMhJ6F_3.d.mts} +6 -6
  270. package/dist/{Stack-hwgS2FU1.mjs → Stack-ckRN7LrP.mjs} +1 -1
  271. package/dist/Stack-ckRN7LrP.mjs.map +1 -0
  272. package/dist/Stack.d.cts +1 -1
  273. package/dist/Stack.d.mts +1 -1
  274. package/dist/StatusIndicator.d.mts +1 -1
  275. package/dist/{Sticker-D6bwBTGr.mjs → Sticker-B0TbkV4o.mjs} +3 -5
  276. package/dist/{Sticker-D6bwBTGr.mjs.map → Sticker-B0TbkV4o.mjs.map} +1 -1
  277. package/dist/{Sticker-D_dutvp_.cjs → Sticker-D0jIU2Dt.cjs} +4 -6
  278. package/dist/{Sticker-D_dutvp_.cjs.map → Sticker-D0jIU2Dt.cjs.map} +1 -1
  279. package/dist/{Sticker-Bd7KkekO.d.mts → Sticker-DjF9VJQB.d.mts} +5 -5
  280. package/dist/{Sticker-S6QWjlEJ.d.cts → Sticker-N8XZnv7M.d.cts} +2 -2
  281. package/dist/Sticker.d.cts +1 -1
  282. package/dist/Sticker.d.mts +1 -1
  283. package/dist/StyledIconDrag.d.mts +13 -0
  284. package/dist/SwatchPicker.d.mts +1 -1
  285. package/dist/Tab.d.mts +2 -2
  286. package/dist/{TabBar-BMv8dAS3.cjs → TabBar-BpHMYvNb.cjs} +9 -8
  287. package/dist/TabBar-BpHMYvNb.cjs.map +1 -0
  288. package/dist/{TabBar-Bf89XksH.mjs → TabBar-ByusqAXF.mjs} +8 -7
  289. package/dist/TabBar-ByusqAXF.mjs.map +1 -0
  290. package/dist/TabBarIconButton.d.mts +1 -1
  291. package/dist/Table-C9rjUVpn.cjs +478 -0
  292. package/dist/Table-C9rjUVpn.cjs.map +1 -0
  293. package/dist/Table-CNs8p8hL.mjs +387 -0
  294. package/dist/Table-CNs8p8hL.mjs.map +1 -0
  295. package/dist/{Table-DkAA1lt_.d.cts → Table-D3nyiZt0.d.mts} +1 -1
  296. package/dist/{Table-34f5m7w5.d.mts → Table-DJZtluW3.d.cts} +1 -1
  297. package/dist/Table.d.cts +1 -1
  298. package/dist/Table.d.mts +1 -1
  299. package/dist/{TableBody-5QcVMPP_.d.cts → TableBody-BFPF07n4.d.cts} +1 -1
  300. package/dist/{TableBody-Clf34yzJ.d.mts → TableBody-DpRjZgzU.d.mts} +1 -1
  301. package/dist/TableBody.d.cts +1 -1
  302. package/dist/TableBody.d.mts +1 -1
  303. package/dist/TableBox-DIJffyts.mjs +1356 -0
  304. package/dist/TableBox-DIJffyts.mjs.map +1 -0
  305. package/dist/TableBox-DO-yToJk.cjs +1370 -0
  306. package/dist/TableBox-DO-yToJk.cjs.map +1 -0
  307. package/dist/TableBox.d.cts +3 -0
  308. package/dist/TableBox.d.mts +3 -0
  309. package/dist/TableBoxCell-D1bjYv7b.d.mts +259 -0
  310. package/dist/TableBoxCell-DOQ8PnAT.d.cts +259 -0
  311. package/dist/TableBoxCell.d.cts +2 -0
  312. package/dist/TableBoxCell.d.mts +2 -0
  313. package/dist/TableBoxField.d.cts +99 -0
  314. package/dist/TableBoxField.d.mts +99 -0
  315. package/dist/TableBoxRow-BUK5RjRA.d.cts +86 -0
  316. package/dist/TableBoxRow-CTR14HJF.d.mts +86 -0
  317. package/dist/TableBoxRow.d.cts +2 -0
  318. package/dist/TableBoxRow.d.mts +2 -0
  319. package/dist/TableBoxRowActions-BoMt5d0b.d.mts +57 -0
  320. package/dist/TableBoxRowActions-CKgUEH38.d.cts +57 -0
  321. package/dist/TableBoxRowActions.d.cts +2 -0
  322. package/dist/TableBoxRowActions.d.mts +2 -0
  323. package/dist/TableBoxRowContext.d.mts +22 -0
  324. package/dist/TableCell.d.cts +1 -1
  325. package/dist/TableCell.d.mts +1 -1
  326. package/dist/TableControls-BZyiqk9V.d.mts +70 -0
  327. package/dist/TableControls-Bkd3jhC1.d.cts +70 -0
  328. package/dist/TableControls-BkdSeQvt.mjs +1029 -0
  329. package/dist/TableControls-BkdSeQvt.mjs.map +1 -0
  330. package/dist/TableControls-DcbnNqeK.cjs +1080 -0
  331. package/dist/TableControls-DcbnNqeK.cjs.map +1 -0
  332. package/dist/TableControls.d.cts +2 -0
  333. package/dist/TableControls.d.mts +2 -0
  334. package/dist/TableControlsContext-CleTWT7z.d.mts +21 -0
  335. package/dist/TableControlsContext-D6XpuRVw.d.cts +21 -0
  336. package/dist/TableControlsContext.d.cts +2 -0
  337. package/dist/TableControlsContext.d.mts +2 -0
  338. package/dist/{TableHead-9LLM1B8I.d.cts → TableHead-CTsZNRJm.d.cts} +1 -1
  339. package/dist/{TableHead-DJBGHoUD.d.mts → TableHead-wl78HqPT.d.mts} +1 -1
  340. package/dist/TableHead.d.cts +1 -1
  341. package/dist/TableHead.d.mts +1 -1
  342. package/dist/{TableHeaderCell-DzYZq7SG.d.mts → TableHeaderCell-B2yiOw4w.d.mts} +1 -1
  343. package/dist/{TableHeaderCell-25lC9tNk.d.cts → TableHeaderCell-UoY92mzR.d.cts} +1 -1
  344. package/dist/TableHeaderCell.d.cts +1 -1
  345. package/dist/TableHeaderCell.d.mts +1 -1
  346. package/dist/{TableLayout-BA3jbdbi.d.mts → TableLayout-GyRS-Awa.d.cts} +1 -1
  347. package/dist/{TableLayout-CmDKOu10.d.cts → TableLayout-_TWUnffx.d.mts} +1 -1
  348. package/dist/TableLayout.d.cts +1 -1
  349. package/dist/TableLayout.d.mts +1 -1
  350. package/dist/{TableRow-IPjQnK2q.d.cts → TableRow-BVzduO4G.d.cts} +1 -1
  351. package/dist/{TableRow-CBKpDeUV.d.mts → TableRow-C-faHbkL.d.mts} +2 -2
  352. package/dist/TableRow.d.cts +1 -1
  353. package/dist/TableRow.d.mts +1 -1
  354. package/dist/TableTH.d.cts +1 -1
  355. package/dist/TableTH.d.mts +1 -1
  356. package/dist/TableViewConfigurationDropdown-D2TM2wCv.d.mts +32 -0
  357. package/dist/TableViewConfigurationDropdown-u3-prEHJ.d.cts +32 -0
  358. package/dist/TableViewConfigurationDropdown.d.cts +2 -0
  359. package/dist/TableViewConfigurationDropdown.d.mts +2 -0
  360. package/dist/TechnicalSticker.d.cts +51 -0
  361. package/dist/TechnicalSticker.d.mts +51 -0
  362. package/dist/{Text-DVz8erdF.cjs → Text-CzN0DOXV.cjs} +2 -2
  363. package/dist/{Text-DVz8erdF.cjs.map → Text-CzN0DOXV.cjs.map} +1 -1
  364. package/dist/{Text-CnXedFut.d.mts → Text-D3FXEnG6.d.mts} +3 -3
  365. package/dist/{Text-DOTYjIt0.mjs → Text-hEoPeOc9.mjs} +1 -1
  366. package/dist/{Text-DOTYjIt0.mjs.map → Text-hEoPeOc9.mjs.map} +1 -1
  367. package/dist/Text.d.mts +1 -1
  368. package/dist/{TextArea-B1kitxCl.mjs → TextArea-DIPeBLkr.mjs} +2 -2
  369. package/dist/{TextArea-B1kitxCl.mjs.map → TextArea-DIPeBLkr.mjs.map} +1 -1
  370. package/dist/{TextArea-MVgGGM6r.cjs → TextArea-DVHi0K7M.cjs} +4 -4
  371. package/dist/{TextArea-MVgGGM6r.cjs.map → TextArea-DVHi0K7M.cjs.map} +1 -1
  372. package/dist/{TextArea-j43fhp2P.d.cts → TextArea-KpDoXg-5.d.cts} +2 -2
  373. package/dist/{TextArea-1bHvaq9p.d.mts → TextArea-weASn4Hq.d.mts} +2 -2
  374. package/dist/TextArea.d.cts +1 -1
  375. package/dist/TextArea.d.mts +1 -1
  376. package/dist/{TextUnderlineTooltip-z4sSGL91.d.mts → TextUnderlineTooltip-Cep5cgEQ.d.mts} +3 -3
  377. package/dist/{TextUnderlineTooltip-BDMs4iXn.d.cts → TextUnderlineTooltip-cSMjZOuB.d.cts} +2 -2
  378. package/dist/TextUnderlineTooltip.d.cts +1 -1
  379. package/dist/TextUnderlineTooltip.d.mts +1 -1
  380. package/dist/Tile.d.cts +1 -1
  381. package/dist/Tile.d.mts +2 -2
  382. package/dist/Toast.d.cts +2 -6
  383. package/dist/Toast.d.mts +2 -6
  384. package/dist/{Toggle-B3Cdyf7T.d.mts → Toggle-BQCOJZjZ.d.mts} +1 -1
  385. package/dist/{Toggle-CVdg5iQ0.cjs → Toggle-CTtrhzsV.cjs} +6 -6
  386. package/dist/{Toggle-CVdg5iQ0.cjs.map → Toggle-CTtrhzsV.cjs.map} +1 -1
  387. package/dist/{Toggle-BjkbL_uf.d.cts → Toggle-CYQE1Nk_.d.cts} +1 -1
  388. package/dist/{Toggle-8GNRxyvE.mjs → Toggle-CfjUQlcK.mjs} +4 -4
  389. package/dist/{Toggle-8GNRxyvE.mjs.map → Toggle-CfjUQlcK.mjs.map} +1 -1
  390. package/dist/Toggle.d.cts +1 -1
  391. package/dist/Toggle.d.mts +1 -1
  392. package/dist/{Tooltip-CE1oH6Iz.d.cts → Tooltip-BhGRP9QA.d.cts} +2 -2
  393. package/dist/{Tooltip-T7RQpy_a.mjs → Tooltip-CDvOu1UN.mjs} +3 -3
  394. package/dist/{Tooltip-T7RQpy_a.mjs.map → Tooltip-CDvOu1UN.mjs.map} +1 -1
  395. package/dist/{Tooltip-C0PS5InA.d.mts → Tooltip-DRgufW3i.d.mts} +3 -3
  396. package/dist/{Tooltip-0i_15ysU.cjs → Tooltip-vylydKVv.cjs} +4 -4
  397. package/dist/{Tooltip-0i_15ysU.cjs.map → Tooltip-vylydKVv.cjs.map} +1 -1
  398. package/dist/Tooltip.d.cts +1 -1
  399. package/dist/Tooltip.d.mts +1 -1
  400. package/dist/{TruncatedText-0Tf8CwFX.d.mts → TruncatedText-Cy8NpHzm.d.mts} +1 -1
  401. package/dist/{chunk-CoPdw6nB.cjs → chunk-CKQMccvm.cjs} +0 -36
  402. package/dist/components/Attribute/index.cjs +6 -6
  403. package/dist/components/Attribute/index.cjs.map +1 -1
  404. package/dist/components/Attribute/index.mjs +6 -6
  405. package/dist/components/Attribute/index.mjs.map +1 -1
  406. package/dist/components/Badge/index.cjs +1 -2
  407. package/dist/components/Badge/index.mjs +1 -1
  408. package/dist/components/Banner/index.cjs +2 -3
  409. package/dist/components/Banner/index.cjs.map +1 -1
  410. package/dist/components/Banner/index.mjs +1 -2
  411. package/dist/components/Banner/index.mjs.map +1 -1
  412. package/dist/components/Breadcrumbs/index.cjs +275 -0
  413. package/dist/components/Breadcrumbs/index.cjs.map +1 -0
  414. package/dist/components/Breadcrumbs/index.d.cts +2 -0
  415. package/dist/components/Breadcrumbs/index.d.mts +2 -0
  416. package/dist/components/Breadcrumbs/index.mjs +268 -0
  417. package/dist/components/Breadcrumbs/index.mjs.map +1 -0
  418. package/dist/components/Button/index.cjs +1 -2
  419. package/dist/components/Button/index.d.mts +2 -2
  420. package/dist/components/Button/index.mjs +1 -1
  421. package/dist/components/ButtonGroup/index.cjs +4 -4
  422. package/dist/components/ButtonGroup/index.cjs.map +1 -1
  423. package/dist/components/ButtonGroup/index.mjs +2 -2
  424. package/dist/components/ButtonGroup/index.mjs.map +1 -1
  425. package/dist/components/Card/index.cjs +1 -2
  426. package/dist/components/Card/index.d.cts +2 -2
  427. package/dist/components/Card/index.d.mts +2 -2
  428. package/dist/components/Card/index.mjs +1 -1
  429. package/dist/components/CardV2/index.cjs +16 -109
  430. package/dist/components/CardV2/index.cjs.map +1 -1
  431. package/dist/components/CardV2/index.d.cts +1 -1
  432. package/dist/components/CardV2/index.d.mts +1 -1
  433. package/dist/components/CardV2/index.mjs +18 -118
  434. package/dist/components/CardV2/index.mjs.map +1 -1
  435. package/dist/components/Checkbox/index.cjs +1 -2
  436. package/dist/components/Checkbox/index.d.cts +1 -1
  437. package/dist/components/Checkbox/index.d.mts +1 -1
  438. package/dist/components/Checkbox/index.mjs +1 -1
  439. package/dist/components/Combobox/index.cjs +1 -2
  440. package/dist/components/Combobox/index.d.cts +3 -3
  441. package/dist/components/Combobox/index.d.mts +3 -3
  442. package/dist/components/Combobox/index.mjs +1 -1
  443. package/dist/components/ConfigFormGroup/index.cjs +4 -31
  444. package/dist/components/ConfigFormGroup/index.mjs +1 -26
  445. package/dist/components/DataTable/TableControls/index.cjs +13 -0
  446. package/dist/components/DataTable/TableControls/index.d.cts +6 -0
  447. package/dist/components/DataTable/TableControls/index.d.mts +6 -0
  448. package/dist/components/DataTable/TableControls/index.mjs +2 -0
  449. package/dist/components/DataTable/index.cjs +1434 -0
  450. package/dist/components/DataTable/index.cjs.map +1 -0
  451. package/dist/components/DataTable/index.d.cts +8 -0
  452. package/dist/components/DataTable/index.d.mts +8 -0
  453. package/dist/components/DataTable/index.mjs +1407 -0
  454. package/dist/components/DataTable/index.mjs.map +1 -0
  455. package/dist/components/DataTable/types.d.cts +159 -0
  456. package/dist/components/DataTable/types.d.mts +159 -0
  457. package/dist/components/DataTable/types.mjs +0 -0
  458. package/dist/components/DatePicker/index.cjs +296 -10866
  459. package/dist/components/DatePicker/index.cjs.map +1 -1
  460. package/dist/components/DatePicker/index.d.cts +1 -1
  461. package/dist/components/DatePicker/index.d.mts +1 -1
  462. package/dist/components/DatePicker/index.mjs +290 -10859
  463. package/dist/components/DatePicker/index.mjs.map +1 -1
  464. package/dist/components/DropdownButton/index.cjs +1 -2
  465. package/dist/components/DropdownButton/index.mjs +1 -1
  466. package/dist/components/DropdownMenu/index.cjs +1 -2
  467. package/dist/components/DropdownMenu/index.d.cts +1 -1
  468. package/dist/components/DropdownMenu/index.d.mts +1 -1
  469. package/dist/components/DropdownMenu/index.mjs +1 -1
  470. package/dist/components/FormControl/index.cjs +2 -3
  471. package/dist/components/FormControl/index.d.cts +2 -2
  472. package/dist/components/FormControl/index.d.mts +2 -2
  473. package/dist/components/FormControl/index.mjs +1 -1
  474. package/dist/components/FormField/index.cjs +128 -23
  475. package/dist/components/FormField/index.cjs.map +1 -1
  476. package/dist/components/FormField/index.d.cts +3 -2
  477. package/dist/components/FormField/index.d.mts +3 -2
  478. package/dist/components/FormField/index.mjs +127 -23
  479. package/dist/components/FormField/index.mjs.map +1 -1
  480. package/dist/components/HoverCopyableField/index.cjs +2 -0
  481. package/dist/components/HoverCopyableField/index.d.cts +2 -0
  482. package/dist/components/HoverCopyableField/index.d.mts +2 -0
  483. package/dist/components/HoverCopyableField/index.mjs +2 -0
  484. package/dist/components/ImageTile/index.cjs +9 -12
  485. package/dist/components/ImageTile/index.cjs.map +1 -1
  486. package/dist/components/ImageTile/index.mjs +8 -11
  487. package/dist/components/ImageTile/index.mjs.map +1 -1
  488. package/dist/components/Input/index.cjs +1 -2
  489. package/dist/components/Input/index.cjs.map +1 -1
  490. package/dist/components/Input/index.d.cts +1 -1
  491. package/dist/components/Input/index.d.mts +1 -1
  492. package/dist/components/Input/index.mjs +1 -1
  493. package/dist/components/Link/index.cjs +2 -2
  494. package/dist/components/Link/index.cjs.map +1 -1
  495. package/dist/components/Link/index.mjs +1 -1
  496. package/dist/components/Link/index.mjs.map +1 -1
  497. package/dist/components/ListBox/index.cjs +1 -2
  498. package/dist/components/ListBox/index.d.cts +1 -1
  499. package/dist/components/ListBox/index.d.mts +1 -1
  500. package/dist/components/ListBox/index.mjs +1 -1
  501. package/dist/components/LoadingShimmer/index.cjs +1 -2
  502. package/dist/components/LoadingShimmer/index.mjs +1 -1
  503. package/dist/components/MaskedInput/index.cjs +3 -3
  504. package/dist/components/MaskedInput/index.mjs +2 -2
  505. package/dist/components/MatchHighlight/index.cjs +1 -1
  506. package/dist/components/MatchHighlight/index.cjs.map +1 -1
  507. package/dist/components/MatchHighlight/index.mjs.map +1 -1
  508. package/dist/components/Menu/index.cjs +1 -2
  509. package/dist/components/Menu/index.d.cts +1 -1
  510. package/dist/components/Menu/index.d.mts +1 -1
  511. package/dist/components/Menu/index.mjs +1 -1
  512. package/dist/components/Modal/index.cjs +37 -32
  513. package/dist/components/Modal/index.cjs.map +1 -1
  514. package/dist/components/Modal/index.d.cts +2 -2
  515. package/dist/components/Modal/index.d.mts +2 -2
  516. package/dist/components/Modal/index.mjs +36 -31
  517. package/dist/components/Modal/index.mjs.map +1 -1
  518. package/dist/components/PageHeader/index.cjs +2 -2
  519. package/dist/components/PageHeader/index.cjs.map +1 -1
  520. package/dist/components/PageHeader/index.mjs +1 -1
  521. package/dist/components/PageHeader/index.mjs.map +1 -1
  522. package/dist/components/Pagination/index.cjs +6 -207
  523. package/dist/components/Pagination/index.d.cts +4 -3
  524. package/dist/components/Pagination/index.d.mts +4 -3
  525. package/dist/components/Pagination/index.mjs +2 -203
  526. package/dist/components/Pii/index.cjs +2 -20
  527. package/dist/components/Pii/index.mjs +1 -18
  528. package/dist/components/Popover/index.cjs +1 -2
  529. package/dist/components/Popover/index.mjs +1 -1
  530. package/dist/components/ProgressBar/index.cjs +2 -2
  531. package/dist/components/ProgressBar/index.cjs.map +1 -1
  532. package/dist/components/ProgressBar/index.mjs +1 -1
  533. package/dist/components/ProgressBar/index.mjs.map +1 -1
  534. package/dist/components/ProgressIndicator/index.cjs +1 -1
  535. package/dist/components/ProgressIndicator/index.cjs.map +1 -1
  536. package/dist/components/ProgressIndicator/index.mjs.map +1 -1
  537. package/dist/components/Radio/index.cjs +1 -2
  538. package/dist/components/Radio/index.mjs +1 -1
  539. package/dist/components/RadioGroup/index.cjs +1 -2
  540. package/dist/components/RadioGroup/index.d.cts +1 -1
  541. package/dist/components/RadioGroup/index.d.mts +1 -1
  542. package/dist/components/RadioGroup/index.mjs +1 -1
  543. package/dist/components/SegmentedControl/index.cjs +1 -2
  544. package/dist/components/SegmentedControl/index.d.cts +1 -1
  545. package/dist/components/SegmentedControl/index.d.mts +1 -1
  546. package/dist/components/SegmentedControl/index.mjs +1 -1
  547. package/dist/components/Select/index.cjs +1 -2
  548. package/dist/components/Select/index.d.cts +1 -1
  549. package/dist/components/Select/index.d.mts +1 -1
  550. package/dist/components/Select/index.mjs +1 -1
  551. package/dist/components/Slider/index.cjs +20 -1282
  552. package/dist/components/Slider/index.cjs.map +1 -1
  553. package/dist/components/Slider/index.d.cts +2 -2
  554. package/dist/components/Slider/index.d.mts +2 -2
  555. package/dist/components/Slider/index.mjs +18 -1279
  556. package/dist/components/Slider/index.mjs.map +1 -1
  557. package/dist/components/Spacer/index.cjs +1 -2
  558. package/dist/components/Spacer/index.mjs +1 -1
  559. package/dist/components/Spinner/index.cjs +1 -2
  560. package/dist/components/Spinner/index.mjs +1 -1
  561. package/dist/components/Stack/index.cjs +1 -2
  562. package/dist/components/Stack/index.d.cts +1 -1
  563. package/dist/components/Stack/index.d.mts +1 -1
  564. package/dist/components/Stack/index.mjs +1 -1
  565. package/dist/components/StatusIndicator/index.cjs +1 -1
  566. package/dist/components/StatusIndicator/index.cjs.map +1 -1
  567. package/dist/components/StatusIndicator/index.mjs.map +1 -1
  568. package/dist/components/Sticker/index.cjs +1 -2
  569. package/dist/components/Sticker/index.d.cts +1 -1
  570. package/dist/components/Sticker/index.d.mts +1 -1
  571. package/dist/components/Sticker/index.mjs +1 -1
  572. package/dist/components/SwatchPicker/index.cjs +3 -5
  573. package/dist/components/SwatchPicker/index.cjs.map +1 -1
  574. package/dist/components/SwatchPicker/index.mjs +2 -4
  575. package/dist/components/SwatchPicker/index.mjs.map +1 -1
  576. package/dist/components/TabBar/index.cjs +1 -2
  577. package/dist/components/TabBar/index.mjs +1 -1
  578. package/dist/components/Table/index.cjs +17 -396
  579. package/dist/components/Table/index.d.cts +7 -7
  580. package/dist/components/Table/index.d.mts +7 -7
  581. package/dist/components/Table/index.mjs +1 -378
  582. package/dist/components/TableBox/index.cjs +7 -0
  583. package/dist/components/TableBox/index.d.cts +3 -0
  584. package/dist/components/TableBox/index.d.mts +3 -0
  585. package/dist/components/TableBox/index.mjs +2 -0
  586. package/dist/components/TechnicalSticker/index.cjs +239 -0
  587. package/dist/components/TechnicalSticker/index.cjs.map +1 -0
  588. package/dist/components/TechnicalSticker/index.d.cts +2 -0
  589. package/dist/components/TechnicalSticker/index.d.mts +2 -0
  590. package/dist/components/TechnicalSticker/index.mjs +232 -0
  591. package/dist/components/TechnicalSticker/index.mjs.map +1 -0
  592. package/dist/components/Text/index.cjs +1 -2
  593. package/dist/components/Text/index.d.mts +1 -1
  594. package/dist/components/Text/index.mjs +1 -1
  595. package/dist/components/TextArea/index.cjs +1 -2
  596. package/dist/components/TextArea/index.d.cts +1 -1
  597. package/dist/components/TextArea/index.d.mts +1 -1
  598. package/dist/components/TextArea/index.mjs +1 -1
  599. package/dist/components/Tile/index.cjs +5 -6
  600. package/dist/components/Tile/index.cjs.map +1 -1
  601. package/dist/components/Tile/index.mjs +4 -5
  602. package/dist/components/Tile/index.mjs.map +1 -1
  603. package/dist/components/Toast/index.cjs +5 -12
  604. package/dist/components/Toast/index.cjs.map +1 -1
  605. package/dist/components/Toast/index.d.cts +2 -2
  606. package/dist/components/Toast/index.d.mts +2 -2
  607. package/dist/components/Toast/index.mjs +4 -10
  608. package/dist/components/Toast/index.mjs.map +1 -1
  609. package/dist/components/Toggle/index.cjs +1 -2
  610. package/dist/components/Toggle/index.d.cts +1 -1
  611. package/dist/components/Toggle/index.d.mts +1 -1
  612. package/dist/components/Toggle/index.mjs +1 -1
  613. package/dist/components/Tooltip/index.cjs +1 -2
  614. package/dist/components/Tooltip/index.d.cts +3 -3
  615. package/dist/components/Tooltip/index.d.mts +3 -3
  616. package/dist/components/Tooltip/index.mjs +1 -1
  617. package/dist/constants-DVwPpTt5.d.mts +6 -0
  618. package/dist/constants-kwVsjw8O.d.cts +6 -0
  619. package/dist/constants.d.cts +2 -0
  620. package/dist/constants.d.mts +2 -5
  621. package/dist/constants2.d.cts +10 -0
  622. package/dist/constants2.d.mts +10 -0
  623. package/dist/helpers.d.cts +76 -0
  624. package/dist/helpers.d.mts +76 -0
  625. package/dist/{TableCell-Dog4Blfq.d.mts → index-BPnJP0jZ.d.mts} +4 -4
  626. package/dist/index-Oio5ygqN.d.mts +1 -0
  627. package/dist/index-VWno75SQ.d.mts +1 -0
  628. package/dist/{TableCell-DIs9h97h.d.cts → index-_tQRydn9.d.cts} +3 -3
  629. package/dist/index-_wQ5ClJU.d.cts +1 -0
  630. package/dist/index-c55Utzva.d.mts +1 -0
  631. package/dist/index-gpCH5158.d.mts +1 -0
  632. package/dist/index-lQ_hGQ08.d.cts +1 -0
  633. package/dist/index-luywJTzJ.d.mts +1 -0
  634. package/dist/index-zO0Ly4bS.d.cts +1 -0
  635. package/dist/index.cjs +0 -1
  636. package/dist/index.d.cts +1 -1
  637. package/dist/index.d.mts +1 -1
  638. package/dist/index2.d.cts +2 -1
  639. package/dist/index2.d.mts +2 -1
  640. package/dist/index3.d.cts +1 -0
  641. package/dist/index3.d.mts +1 -0
  642. package/dist/{input-Bm_anD8X.d.cts → input-BkzqXwn7.d.cts} +2 -2
  643. package/dist/{input-BCmP106-.d.mts → input-DrG6mA0V.d.mts} +3 -3
  644. package/dist/inputFields.d.cts +10 -10
  645. package/dist/inputFields.d.mts +11 -11
  646. package/dist/intersperse-Gxwgpbk8.cjs +26 -0
  647. package/dist/intersperse-Gxwgpbk8.cjs.map +1 -0
  648. package/dist/intersperse-yd3oMrQl.mjs +21 -0
  649. package/dist/intersperse-yd3oMrQl.mjs.map +1 -0
  650. package/dist/lib/ConfigContext.cjs +1 -1
  651. package/dist/lib/GlobalStyles.cjs +57 -0
  652. package/dist/lib/GlobalStyles.cjs.map +1 -0
  653. package/dist/lib/GlobalStyles.d.cts +8 -0
  654. package/dist/lib/GlobalStyles.d.mts +8 -0
  655. package/dist/lib/GlobalStyles.mjs +51 -0
  656. package/dist/lib/GlobalStyles.mjs.map +1 -0
  657. package/dist/lib/HeadlessAriaButton.cjs +1 -1
  658. package/dist/lib/MiddleTruncatedText.cjs +7 -0
  659. package/dist/lib/MiddleTruncatedText.d.cts +14 -0
  660. package/dist/lib/MiddleTruncatedText.d.mts +14 -0
  661. package/dist/lib/MiddleTruncatedText.mjs +2 -0
  662. package/dist/lib/PDSProvider.cjs +5 -12
  663. package/dist/lib/PDSProvider.cjs.map +1 -1
  664. package/dist/lib/PDSProvider.d.cts +0 -2
  665. package/dist/lib/PDSProvider.d.mts +1 -3
  666. package/dist/lib/PDSProvider.mjs +4 -11
  667. package/dist/lib/PDSProvider.mjs.map +1 -1
  668. package/dist/lib/TruncatedText.cjs +2 -2
  669. package/dist/lib/TruncatedText.d.mts +1 -1
  670. package/dist/lib/TruncatedText.mjs +1 -1
  671. package/dist/lib/TruncatedTextWithTooltip.cjs +3 -3
  672. package/dist/lib/TruncatedTextWithTooltip.d.cts +1 -1
  673. package/dist/lib/TruncatedTextWithTooltip.d.mts +1 -1
  674. package/dist/lib/TruncatedTextWithTooltip.mjs +2 -2
  675. package/dist/lib/comboboxHelper.cjs +6 -6
  676. package/dist/lib/comboboxHelper.cjs.map +1 -1
  677. package/dist/lib/comboboxHelper.mjs +1 -1
  678. package/dist/lib/copyTextToClipboard.cjs +33 -0
  679. package/dist/lib/copyTextToClipboard.cjs.map +1 -0
  680. package/dist/lib/copyTextToClipboard.d.cts +4 -0
  681. package/dist/lib/copyTextToClipboard.d.mts +5 -0
  682. package/dist/lib/copyTextToClipboard.mjs +33 -0
  683. package/dist/lib/copyTextToClipboard.mjs.map +1 -0
  684. package/dist/lib/datePickerHelper.cjs +9 -3541
  685. package/dist/lib/datePickerHelper.cjs.map +1 -1
  686. package/dist/lib/datePickerHelper.mjs +3 -3537
  687. package/dist/lib/datePickerHelper.mjs.map +1 -1
  688. package/dist/lib/message.cjs +12 -0
  689. package/dist/lib/message.cjs.map +1 -0
  690. package/dist/lib/message.d.cts +2 -0
  691. package/dist/lib/message.d.mts +2 -0
  692. package/dist/lib/message.mjs +11 -0
  693. package/dist/lib/message.mjs.map +1 -0
  694. package/dist/lib/pseudoClass.cjs +0 -1
  695. package/dist/lib/pseudoClass.cjs.map +1 -1
  696. package/dist/lib/pseudoClass.d.mts +1 -1
  697. package/dist/lib/reorderItems.cjs +0 -1
  698. package/dist/lib/reorderItems.cjs.map +1 -1
  699. package/dist/lib/selectHelper.cjs +4 -4
  700. package/dist/lib/selectHelper.cjs.map +1 -1
  701. package/dist/lib/selectHelper.mjs +1 -1
  702. package/dist/lib/useControlled.cjs +1 -1
  703. package/dist/lib/useIsOverflow.cjs +1 -1
  704. package/dist/lib/useOutsideClick.cjs +1 -1
  705. package/dist/lib/useScrollOverflow.cjs +61 -0
  706. package/dist/lib/useScrollOverflow.cjs.map +1 -0
  707. package/dist/lib/useScrollOverflow.d.cts +36 -0
  708. package/dist/lib/useScrollOverflow.d.mts +36 -0
  709. package/dist/lib/useScrollOverflow.mjs +59 -0
  710. package/dist/lib/useScrollOverflow.mjs.map +1 -0
  711. package/dist/lib/zindex.cjs +0 -1
  712. package/dist/lib/zindex.cjs.map +1 -1
  713. package/dist/message-BfJ87aIU.d.mts +9 -0
  714. package/dist/message-C2286H-r.d.cts +9 -0
  715. package/dist/middleTruncateText.d.mts +13 -0
  716. package/dist/mixins/focus.cjs +1 -1
  717. package/dist/mixins/focus.cjs.map +1 -1
  718. package/dist/mixins/focus.d.mts +1 -1
  719. package/dist/mixins/focus.mjs.map +1 -1
  720. package/dist/mixins/hoverable.cjs +1 -1
  721. package/dist/mixins/hoverable.d.mts +2 -2
  722. package/dist/mixins/input.cjs +1 -1
  723. package/dist/mixins/input.cjs.map +1 -1
  724. package/dist/mixins/input.d.cts +1 -1
  725. package/dist/mixins/input.d.mts +1 -1
  726. package/dist/mixins/input.mjs.map +1 -1
  727. package/dist/mixins/menuItem.cjs +1 -1
  728. package/dist/mixins/menuItem.cjs.map +1 -1
  729. package/dist/mixins/menuItem.d.mts +2 -2
  730. package/dist/mixins/menuItem.mjs.map +1 -1
  731. package/dist/mixins/print/index.cjs +1 -1
  732. package/dist/mixins/text.cjs +1 -1
  733. package/dist/mixins/text.cjs.map +1 -1
  734. package/dist/mixins/text.d.mts +1 -1
  735. package/dist/mixins/text.mjs.map +1 -1
  736. package/dist/positioning.d.mts +11 -0
  737. package/dist/tableBoxKeyboardNavigation.d.mts +8 -0
  738. package/dist/{text-BrSUs-88.d.mts → text-CtoDqqAO.d.mts} +1 -1
  739. package/dist/{theme-DGAqgnUa.d.mts → theme-Bx2sn3Lt.d.mts} +1 -1
  740. package/dist/theme.cjs +1 -1
  741. package/dist/theme.d.mts +1 -1
  742. package/dist/types-B34lbI2k.d.mts +25 -0
  743. package/dist/types-C_AUGurs.d.cts +25 -0
  744. package/dist/types-CuCT-YnX.d.cts +10 -0
  745. package/dist/types-DTak9UTv.d.mts +10 -0
  746. package/dist/types.d.cts +2 -0
  747. package/dist/types.d.mts +2 -0
  748. package/dist/types2.d.cts +2 -0
  749. package/dist/types2.d.mts +2 -0
  750. package/dist/useColumnWidthLock.d.mts +28 -0
  751. package/dist/useDelayedInlineEditError.d.mts +12 -0
  752. package/dist/{useFormField-DN3gpEEV.cjs → useFormField-B98dmreO.cjs} +3 -3
  753. package/dist/{useFormField-DN3gpEEV.cjs.map → useFormField-B98dmreO.cjs.map} +1 -1
  754. package/dist/{useFormField-BmtItl8y.d.mts → useFormField-BE0rTBF1.d.mts} +2 -2
  755. package/dist/{useFormField-Ba0CQ43u.d.cts → useFormField-CaIdE7JQ.d.cts} +2 -2
  756. package/dist/useFormField.d.cts +1 -1
  757. package/dist/useFormField.d.mts +1 -1
  758. package/dist/{useFormGroup-B_mFNoN9.cjs → useFormGroup-BE7v9eAj.cjs} +2 -2
  759. package/dist/{useFormGroup-B_mFNoN9.cjs.map → useFormGroup-BE7v9eAj.cjs.map} +1 -1
  760. package/dist/useTableBoxDragAndDrop--QBq2FQh.d.cts +69 -0
  761. package/dist/useTableBoxDragAndDrop-BTtv9PEt.d.mts +69 -0
  762. package/dist/useTableBoxDragAndDrop.d.cts +2 -0
  763. package/dist/useTableBoxDragAndDrop.d.mts +2 -0
  764. package/dist/useTableColumns.d.cts +72 -0
  765. package/dist/useTableColumns.d.mts +72 -0
  766. package/dist/{useToggle-0zLL1E7s.mjs → useToggle-3k3EkV8V.mjs} +1 -1
  767. package/dist/{useToggle-0zLL1E7s.mjs.map → useToggle-3k3EkV8V.mjs.map} +1 -1
  768. package/dist/{useToggle-DNrEsTpr.cjs → useToggle-CSkZWXtQ.cjs} +2 -2
  769. package/dist/{useToggle-DNrEsTpr.cjs.map → useToggle-CSkZWXtQ.cjs.map} +1 -1
  770. package/dist/useTruncation.d.mts +1 -1
  771. package/dist/{utilities-C8Jf-xpi.d.cts → utilities-DqO6Sh94.d.cts} +1 -1
  772. package/dist/{utilities-w1K54IAy.d.mts → utilities-SMbDe8oK.d.mts} +1 -1
  773. package/dist/utilities.d.cts +1 -1
  774. package/dist/utilities.d.mts +1 -1
  775. package/dist/utils/storybook.cjs +2 -3
  776. package/dist/utils/storybook.cjs.map +1 -1
  777. package/dist/utils/storybook.mjs +1 -2
  778. package/dist/utils/storybook.mjs.map +1 -1
  779. package/dist/utils/testing.cjs +5 -5
  780. package/dist/utils/testing.cjs.map +1 -1
  781. package/dist/utils/testing.d.cts +5 -357
  782. package/dist/utils/testing.d.mts +4 -356
  783. package/dist/utils/testing.mjs +2 -2
  784. package/dist/utils/testing.mjs.map +1 -1
  785. package/dist/utils.d.mts +9 -0
  786. package/dist/variables/color.cjs +0 -1
  787. package/dist/variables/color.cjs.map +1 -1
  788. package/dist/variables/effect.cjs +1 -1
  789. package/dist/variables/keyframes.cjs +1 -1
  790. package/dist/variables/spacing.cjs +1 -2
  791. package/dist/variables/spacing.cjs.map +1 -1
  792. package/dist/variables/spacing.d.cts +1 -1
  793. package/dist/variables/spacing.d.mts +1 -1
  794. package/dist/variables/spacing.mjs +1 -1
  795. package/dist/variables/spacing.mjs.map +1 -1
  796. package/dist/variables/text.cjs +0 -1
  797. package/dist/variables/text.cjs.map +1 -1
  798. package/dist/variables/transitions.cjs +0 -1
  799. package/dist/variables/transitions.cjs.map +1 -1
  800. package/package.json +135 -90
  801. package/dist/Combobox-B_-swcix.mjs.map +0 -1
  802. package/dist/Combobox-B_oe33Re.cjs.map +0 -1
  803. package/dist/DateField-Bwe_0qm9.d.cts +0 -24
  804. package/dist/DateField-Chko9oLb.d.mts +0 -24
  805. package/dist/ListBox-Z1y0LG1H.mjs.map +0 -1
  806. package/dist/RegisterComponent-BDb43KvI.d.mts +0 -34
  807. package/dist/RegisterComponent-CpXIR-51.d.cts +0 -34
  808. package/dist/Slider-D3gz7otf.d.mts +0 -56
  809. package/dist/Slider-uH5MOu2D.d.cts +0 -56
  810. package/dist/SliderRHF-Cc-9RuPe.d.cts +0 -984
  811. package/dist/SliderRHF-DIV-tCEv.d.mts +0 -984
  812. package/dist/Spinner-C05An_fn.mjs.map +0 -1
  813. package/dist/Spinner-z7DrPE1d.cjs.map +0 -1
  814. package/dist/Stack-BHb3ZB2A.cjs.map +0 -1
  815. package/dist/Stack-hwgS2FU1.mjs.map +0 -1
  816. package/dist/TabBar-BMv8dAS3.cjs.map +0 -1
  817. package/dist/TabBar-Bf89XksH.mjs.map +0 -1
  818. package/dist/chunk-Bpcn9VDT.mjs +0 -39
  819. package/dist/components/ConfigFormGroup/index.cjs.map +0 -1
  820. package/dist/components/ConfigFormGroup/index.mjs.map +0 -1
  821. package/dist/components/Pagination/index.cjs.map +0 -1
  822. package/dist/components/Pagination/index.mjs.map +0 -1
  823. package/dist/components/Pii/index.cjs.map +0 -1
  824. package/dist/components/Pii/index.mjs.map +0 -1
  825. package/dist/components/Table/index.cjs.map +0 -1
  826. package/dist/components/Table/index.mjs.map +0 -1
  827. package/dist/ids-Cr-NW2RJ.d.mts +0 -11
  828. package/dist/ids-e4V5Y3Ub.d.cts +0 -11
  829. package/dist/index-8R9vlM2B.d.mts +0 -83
  830. package/dist/index-BM1DqNZf.d.cts +0 -628
  831. package/dist/index-CExuKKOI.d.cts +0 -218
  832. package/dist/index-CKu60b9I.d.mts +0 -154
  833. package/dist/index-DQvVmqvS.d.mts +0 -628
  834. package/dist/lib/register/RegisterComponent.cjs +0 -91
  835. package/dist/lib/register/RegisterComponent.cjs.map +0 -1
  836. package/dist/lib/register/RegisterComponent.d.cts +0 -2
  837. package/dist/lib/register/RegisterComponent.d.mts +0 -2
  838. package/dist/lib/register/RegisterComponent.mjs +0 -88
  839. package/dist/lib/register/RegisterComponent.mjs.map +0 -1
  840. package/dist/lib/register/ids.cjs +0 -31
  841. package/dist/lib/register/ids.cjs.map +0 -1
  842. package/dist/lib/register/ids.d.cts +0 -2
  843. package/dist/lib/register/ids.d.mts +0 -2
  844. package/dist/lib/register/ids.mjs +0 -28
  845. package/dist/lib/register/ids.mjs.map +0 -1
  846. package/dist/lib/register/index.cjs +0 -8
  847. package/dist/lib/register/index.d.cts +0 -4
  848. package/dist/lib/register/index.d.mts +0 -4
  849. package/dist/lib/register/index.mjs +0 -3
  850. package/dist/lib/register/types.cjs +0 -1
  851. package/dist/lib/register/types.d.cts +0 -2
  852. package/dist/lib/register/types.d.mts +0 -2
  853. package/dist/mergeRefs-BZinWopc.cjs +0 -31
  854. package/dist/mergeRefs-BZinWopc.cjs.map +0 -1
  855. package/dist/mergeRefs-BgcbK0Qy.mjs +0 -26
  856. package/dist/mergeRefs-BgcbK0Qy.mjs.map +0 -1
  857. package/dist/motion-DoikasqZ.mjs +0 -7483
  858. package/dist/motion-DoikasqZ.mjs.map +0 -1
  859. package/dist/motion-QW6imSxE.cjs +0 -7488
  860. package/dist/motion-QW6imSxE.cjs.map +0 -1
  861. package/dist/react.esm-C-es35jP.cjs +0 -11441
  862. package/dist/react.esm-C-es35jP.cjs.map +0 -1
  863. package/dist/react.esm-Dv1lMDRs.mjs +0 -11397
  864. package/dist/react.esm-Dv1lMDRs.mjs.map +0 -1
  865. package/dist/types-DzHQ5MGm.d.mts +0 -69
  866. package/dist/types-N-cXznfM.d.cts +0 -69
  867. package/dist/useLabel-BcbghpIU.cjs +0 -1465
  868. package/dist/useLabel-BcbghpIU.cjs.map +0 -1
  869. package/dist/useLabel-DHGzNIKw.mjs +0 -1212
  870. package/dist/useLabel-DHGzNIKw.mjs.map +0 -1
  871. /package/dist/{lib/register/types.mjs → components/DataTable/types.cjs} +0 -0
  872. /package/dist/{index-1-AkepUA.d.mts → index-8SLBz2NH.d.mts} +0 -0
  873. /package/dist/{index-7in8TPrM.d.mts → index-B5cbLMbC2.d.cts} +0 -0
  874. /package/dist/{index-BBDa5smF.d.cts → index-BCsiC0tv.d.cts} +0 -0
  875. /package/dist/{index-BJ8-FA6N.d.cts → index-BR1oNnaF.d.cts} +0 -0
  876. /package/dist/{index-BUYyA1Xh.d.cts → index-BSVhZrWN.d.mts} +0 -0
  877. /package/dist/{index-CCt0lwyI.d.mts → index-BTImeehL2.d.mts} +0 -0
  878. /package/dist/{index-CEDY7cmG.d.cts → index-C0NRIDsj2.d.cts} +0 -0
  879. /package/dist/{index-CIABef8t.d.mts → index-C3kE54DD.d.mts} +0 -0
  880. /package/dist/{index-CIBxlpQo.d.mts → index-C6yvNuzO.d.cts} +0 -0
  881. /package/dist/{index-CP2eJYlK.d.mts → index-C8k_zgEm.d.cts} +0 -0
  882. /package/dist/{index-CRo77wc3.d.mts → index-CROz1VSV.d.mts} +0 -0
  883. /package/dist/{index-CiBIKhMu.d.cts → index-CWt1yJ75.d.cts} +0 -0
  884. /package/dist/{index-Cii4Qb1X.d.mts → index-CmCelmEL.d.cts} +0 -0
  885. /package/dist/{index-CspKFJM1.d.cts → index-CmUzJ4E-2.d.cts} +0 -0
  886. /package/dist/{index-D26lpgQi.d.cts → index-CtCMUyZA.d.cts} +0 -0
  887. /package/dist/{index-D4DUvwPf.d.mts → index-D5tSVhTd.d.mts} +0 -0
  888. /package/dist/{index-D4ELpJXS.d.cts → index-D8dPsry7.d.mts} +0 -0
  889. /package/dist/{index-D6CnpA_r.d.cts → index-DeEmP3Jc.d.cts} +0 -0
  890. /package/dist/{index-DLoAMD9J.d.cts → index-DeVKzGce.d.mts} +0 -0
  891. /package/dist/{index-DWfPppPU.d.mts → index-DrZ2Dh-H.d.cts} +0 -0
  892. /package/dist/{index-DcU87nuJ2.d.cts → index-DxSM7VXJ.d.cts} +0 -0
  893. /package/dist/{index-DkrC-i1D.d.mts → index-FtE8MXJ_.d.mts} +0 -0
  894. /package/dist/{index-DvuJXuAN.d.mts → index-JuxZj_Qp2.d.mts} +0 -0
  895. /package/dist/{index-OEBbnNdr.d.mts → index-LhFpnU-f.d.mts} +0 -0
  896. /package/dist/{index-QbUkWSLh.d.mts → index-N-OgGgfF.d.mts} +0 -0
  897. /package/dist/{index-VmEFGBxN.d.cts → index-NKYLt_R9.d.mts} +0 -0
@@ -2,7 +2,7 @@ Object.defineProperties(exports, {
2
2
  __esModule: { value: true },
3
3
  [Symbol.toStringTag]: { value: "Module" }
4
4
  });
5
- const require_chunk = require("../../chunk-CoPdw6nB.cjs");
5
+ const require_chunk = require("../../chunk-CKQMccvm.cjs");
6
6
  const require_mixins_focus = require("../../mixins/focus.cjs");
7
7
  require("../../variables/transitions.cjs");
8
8
  const require_mixins_text = require("../../mixins/text.cjs");
@@ -10,8 +10,8 @@ let _persona_design_tokens = require("@persona/design-tokens");
10
10
  let styled_components = require("styled-components");
11
11
  styled_components = require_chunk.__toESM(styled_components);
12
12
  let react_jsx_runtime = require("react/jsx-runtime");
13
- let react_router_dom = require("react-router-dom");
14
13
  let _persona_icons = require("@persona/icons");
14
+ let react_router_dom = require("react-router-dom");
15
15
  //#region components/Link/Link.tsx
16
16
  const IconContainer = styled_components.default.span`
17
17
  display: inline-block;
@@ -1 +1 @@
1
- {"version":3,"file":"index.cjs","names":["paragraphMixins","Color","Spacing","focusOutline","RouterLink","LinkExternalIcon"],"sources":["../../../components/Link/Link.tsx"],"sourcesContent":["import { Color, Spacing } from '@persona/design-tokens';\nimport { LinkExternalIcon } from '@persona/icons';\nimport type { AnchorHTMLAttributes, ReactNode } from 'react';\nimport { Link as RouterLink, type LinkProps as RouterLinkProps } from 'react-router-dom';\nimport styled, { css } from 'styled-components';\n\nimport { focusOutline } from 'design-system/mixins/focus';\nimport { paragraphMixins } from 'design-system/mixins/text';\nimport { TransitionDuration } from 'design-system/variables/transitions';\n\ntype Target = '_blank' | '_self' | '_parent' | '_top';\n\ninterface BaseLinkProps {\n /**\n * The content to display inside the link.\n *\n */\n children?: ReactNode;\n /**\n * Provides an accessible name for the link when the visible text alone\n * isn't descriptive enough for screen reader users\n */\n 'aria-label'?: string;\n}\n\ninterface ExternalLinkProps extends BaseLinkProps, AnchorHTMLAttributes<HTMLAnchorElement> {\n /**\n * The URL to navigate to. Can be internal (e.g., \"/dashboard\") or external (e.g., \"https://example.com\").\n */\n url: string;\n\n /**\n * Where to open the link. Use \"_blank\" for external links to open in a new tab.\n */\n target?: Target;\n}\n\ninterface InternalLinkProps extends BaseLinkProps, Omit<RouterLinkProps, 'to'> {\n /**\n * The URL to navigate to. Should be an internal route (e.g., \"/dashboard\").\n */\n url: string;\n}\n\nexport type LinkProps = ExternalLinkProps | InternalLinkProps;\n\nconst IconContainer = styled.span`\n display: inline-block;\n vertical-align: middle;\n /* Uses padding here since we can't define flex on the element for multiline support */\n padding-left: 2px;\n /* Needed to reset the height of the container for SVG */\n line-height: 0;\n position: relative;\n /* Optical alignment adjustments */\n bottom: 1px;\n`;\n\nconst baseLinkStyles = css`\n ${paragraphMixins.md};\n color: ${Color.CorePurple600};\n width: fit-content;\n position: relative;\n overflow: hidden;\n text-decoration: underline;\n\n transition:\n color ${TransitionDuration.ExtraFast} ease-out,\n text-underline-offset ${TransitionDuration.ExtraFast} ease-out;\n text-underline-offset: 2px;\n\n &:hover {\n /* TODO (ivan): move to semantic tokens */\n color: ${Color.CorePurple800};\n text-underline-offset: ${Spacing[1]};\n }\n\n border-radius: ${({ theme }) => theme.button.borderRadius};\n ${focusOutline}\n\n &:active {\n /* TODO (ivan): move to semantic tokens */\n color: ${Color.CorePurple900};\n }\n`;\n\nconst StyledAnchor = styled.a`\n ${baseLinkStyles}\n`;\n\nconst StyledRouterLink = styled(RouterLink)`\n ${baseLinkStyles}\n`;\n\nexport const Link = ({ children, url, ...props }: LinkProps) => {\n // Check if the URL is external by looking at the protocol or if target is _blank\n const isAbsoluteUrl = /^https?:\\/\\//.test(url);\n const hasBlankTarget = props.target === '_blank';\n const isExternal = isAbsoluteUrl || hasBlankTarget;\n\n if (isExternal) {\n const { 'aria-label': ariaLabel, ...anchorProps } = props;\n const externalProps = {\n href: url,\n target: '_blank',\n rel: 'noopener noreferrer',\n 'aria-label': ariaLabel,\n // Automatically inform screen readers that link opens in new window\n title: ariaLabel ? undefined : 'Opens in new window',\n ...anchorProps,\n };\n\n return (\n <StyledAnchor {...externalProps}>\n {children}\n <IconContainer>\n <LinkExternalIcon size={12} />\n </IconContainer>\n </StyledAnchor>\n );\n }\n\n // Internal link using React Router\n const { 'aria-label': ariaLabel, ...routerProps } = props;\n const internalProps = {\n to: url,\n 'aria-label': ariaLabel,\n\n ...routerProps,\n };\n\n return <StyledRouterLink {...internalProps}>{children}</StyledRouterLink>;\n};\n\nexport default Link;\n"],"mappings":";;;;;;;;;;;;;;;AA8CA,MAAM,gBAAgB,kBAAA,QAAO,IAAI;;;;;;;;;;;AAYjC,MAAM,iBAAiB,kBAAA,GAAG;IACtBA,oBAAAA,gBAAgB,GAAG;WACZC,uBAAAA,MAAM,cAAc;;;;;;;oBAOU;oCACgB;;;;;aAK5CA,uBAAAA,MAAM,cAAc;6BACJC,uBAAAA,QAAQ,GAAG;;;oBAGpB,EAAE,YAAY,MAAM,OAAO,aAAa;IACxDC,qBAAAA,aAAa;;;;aAIJF,uBAAAA,MAAM,cAAc;;;AAIjC,MAAM,eAAe,kBAAA,QAAO,CAAC;IACzB,eAAe;;AAGnB,MAAM,mBAAmB,CAAA,GAAA,kBAAA,SAAOG,iBAAAA,KAAW;IACvC,eAAe;;AAGnB,MAAa,QAAQ,EAAE,UAAU,KAAK,GAAG,YAAuB;CAE9D,MAAM,gBAAgB,eAAe,KAAK,IAAI;CAC9C,MAAM,iBAAiB,MAAM,WAAW;AAGxC,KAFmB,iBAAiB,gBAEpB;EACd,MAAM,EAAE,cAAc,WAAW,GAAG,gBAAgB;AAWpD,SACE,iBAAA,GAAA,kBAAA,MAAC,cAAD;GAVA,MAAM;GACN,QAAQ;GACR,KAAK;GACL,cAAc;GAEd,OAAO,YAAY,KAAA,IAAY;GAC/B,GAAG;aAIH,CACG,UACD,iBAAA,GAAA,kBAAA,KAAC,eAAD,EAAA,UACE,iBAAA,GAAA,kBAAA,KAACC,eAAAA,kBAAD,EAAkB,MAAM,IAAM,CAAA,EAChB,CAAA,CACH;;;CAKnB,MAAM,EAAE,cAAc,WAAW,GAAG,gBAAgB;AAQpD,QAAO,iBAAA,GAAA,kBAAA,KAAC,kBAAD;EANL,IAAI;EACJ,cAAc;EAEd,GAAG;EAGwC;EAA4B,CAAA"}
1
+ {"version":3,"file":"index.cjs","names":["paragraphMixins","Color","Spacing","focusOutline","RouterLink","LinkExternalIcon"],"sources":["../../../components/Link/Link.tsx"],"sourcesContent":["import type { AnchorHTMLAttributes, ReactNode } from 'react';\nimport { Link as RouterLink, type LinkProps as RouterLinkProps } from 'react-router-dom';\nimport styled, { css } from 'styled-components';\n\nimport { Color, Spacing } from '@persona/design-tokens';\nimport { LinkExternalIcon } from '@persona/icons';\nimport { focusOutline } from 'design-system/mixins/focus';\nimport { paragraphMixins } from 'design-system/mixins/text';\nimport { TransitionDuration } from 'design-system/variables/transitions';\n\ntype Target = '_blank' | '_self' | '_parent' | '_top';\n\ninterface BaseLinkProps {\n /**\n * The content to display inside the link.\n *\n */\n children?: ReactNode;\n /**\n * Provides an accessible name for the link when the visible text alone\n * isn't descriptive enough for screen reader users\n */\n 'aria-label'?: string;\n}\n\ninterface ExternalLinkProps extends BaseLinkProps, AnchorHTMLAttributes<HTMLAnchorElement> {\n /**\n * The URL to navigate to. Can be internal (e.g., \"/dashboard\") or external (e.g., \"https://example.com\").\n */\n url: string;\n\n /**\n * Where to open the link. Use \"_blank\" for external links to open in a new tab.\n */\n target?: Target;\n}\n\ninterface InternalLinkProps extends BaseLinkProps, Omit<RouterLinkProps, 'to'> {\n /**\n * The URL to navigate to. Should be an internal route (e.g., \"/dashboard\").\n */\n url: string;\n}\n\nexport type LinkProps = ExternalLinkProps | InternalLinkProps;\n\nconst IconContainer = styled.span`\n display: inline-block;\n vertical-align: middle;\n /* Uses padding here since we can't define flex on the element for multiline support */\n padding-left: 2px;\n /* Needed to reset the height of the container for SVG */\n line-height: 0;\n position: relative;\n /* Optical alignment adjustments */\n bottom: 1px;\n`;\n\nconst baseLinkStyles = css`\n ${paragraphMixins.md};\n color: ${Color.CorePurple600};\n width: fit-content;\n position: relative;\n overflow: hidden;\n text-decoration: underline;\n\n transition:\n color ${TransitionDuration.ExtraFast} ease-out,\n text-underline-offset ${TransitionDuration.ExtraFast} ease-out;\n text-underline-offset: 2px;\n\n &:hover {\n /* TODO (ivan): move to semantic tokens */\n color: ${Color.CorePurple800};\n text-underline-offset: ${Spacing[1]};\n }\n\n border-radius: ${({ theme }) => theme.button.borderRadius};\n ${focusOutline}\n\n &:active {\n /* TODO (ivan): move to semantic tokens */\n color: ${Color.CorePurple900};\n }\n`;\n\nconst StyledAnchor = styled.a`\n ${baseLinkStyles}\n`;\n\nconst StyledRouterLink = styled(RouterLink)`\n ${baseLinkStyles}\n`;\n\nexport const Link = ({ children, url, ...props }: LinkProps) => {\n // Check if the URL is external by looking at the protocol or if target is _blank\n const isAbsoluteUrl = /^https?:\\/\\//.test(url);\n const hasBlankTarget = props.target === '_blank';\n const isExternal = isAbsoluteUrl || hasBlankTarget;\n\n if (isExternal) {\n const { 'aria-label': ariaLabel, ...anchorProps } = props;\n const externalProps = {\n href: url,\n target: '_blank',\n rel: 'noopener noreferrer',\n 'aria-label': ariaLabel,\n // Automatically inform screen readers that link opens in new window\n title: ariaLabel ? undefined : 'Opens in new window',\n ...anchorProps,\n };\n\n return (\n <StyledAnchor {...externalProps}>\n {children}\n <IconContainer>\n <LinkExternalIcon size={12} />\n </IconContainer>\n </StyledAnchor>\n );\n }\n\n // Internal link using React Router\n const { 'aria-label': ariaLabel, ...routerProps } = props;\n const internalProps = {\n to: url,\n 'aria-label': ariaLabel,\n\n ...routerProps,\n };\n\n return <StyledRouterLink {...internalProps}>{children}</StyledRouterLink>;\n};\n\nexport default Link;\n"],"mappings":";;;;;;;;;;;;;;;AA8CA,MAAM,gBAAgB,kBAAA,QAAO,IAAI;;;;;;;;;;;AAYjC,MAAM,iBAAiB,kBAAA,GAAG;IACtBA,oBAAAA,gBAAgB,GAAG;WACZC,uBAAAA,MAAM,cAAc;;;;;;;oBAOU;oCACgB;;;;;aAK5CA,uBAAAA,MAAM,cAAc;6BACJC,uBAAAA,QAAQ,GAAG;;;oBAGpB,EAAE,YAAY,MAAM,OAAO,aAAa;IACxDC,qBAAAA,aAAa;;;;aAIJF,uBAAAA,MAAM,cAAc;;;AAIjC,MAAM,eAAe,kBAAA,QAAO,CAAC;IACzB,eAAe;;AAGnB,MAAM,mBAAmB,CAAA,GAAA,kBAAA,SAAOG,iBAAAA,KAAW;IACvC,eAAe;;AAGnB,MAAa,QAAQ,EAAE,UAAU,KAAK,GAAG,YAAuB;CAE9D,MAAM,gBAAgB,eAAe,KAAK,IAAI;CAC9C,MAAM,iBAAiB,MAAM,WAAW;AAGxC,KAFmB,iBAAiB,gBAEpB;EACd,MAAM,EAAE,cAAc,WAAW,GAAG,gBAAgB;AAWpD,SACE,iBAAA,GAAA,kBAAA,MAAC,cAAD;GAVA,MAAM;GACN,QAAQ;GACR,KAAK;GACL,cAAc;GAEd,OAAO,YAAY,KAAA,IAAY;GAC/B,GAAG;aAIH,CACG,UACD,iBAAA,GAAA,kBAAA,KAAC,eAAD,EAAA,UACE,iBAAA,GAAA,kBAAA,KAACC,eAAAA,kBAAD,EAAkB,MAAM,IAAM,CAAA,EAChB,CAAA,CACH;;;CAKnB,MAAM,EAAE,cAAc,WAAW,GAAG,gBAAgB;AAQpD,QAAO,iBAAA,GAAA,kBAAA,KAAC,kBAAD;EANL,IAAI;EACJ,cAAc;EAEd,GAAG;EAGwC;EAA4B,CAAA"}
@@ -4,8 +4,8 @@ import { paragraphMixins } from "../../mixins/text.mjs";
4
4
  import { Color, Spacing } from "@persona/design-tokens";
5
5
  import styled, { css } from "styled-components";
6
6
  import { jsx, jsxs } from "react/jsx-runtime";
7
- import { Link as Link$1 } from "react-router-dom";
8
7
  import { LinkExternalIcon } from "@persona/icons";
8
+ import { Link as Link$1 } from "react-router-dom";
9
9
  //#region components/Link/Link.tsx
10
10
  const IconContainer = styled.span`
11
11
  display: inline-block;
@@ -1 +1 @@
1
- {"version":3,"file":"index.mjs","names":["RouterLink"],"sources":["../../../components/Link/Link.tsx"],"sourcesContent":["import { Color, Spacing } from '@persona/design-tokens';\nimport { LinkExternalIcon } from '@persona/icons';\nimport type { AnchorHTMLAttributes, ReactNode } from 'react';\nimport { Link as RouterLink, type LinkProps as RouterLinkProps } from 'react-router-dom';\nimport styled, { css } from 'styled-components';\n\nimport { focusOutline } from 'design-system/mixins/focus';\nimport { paragraphMixins } from 'design-system/mixins/text';\nimport { TransitionDuration } from 'design-system/variables/transitions';\n\ntype Target = '_blank' | '_self' | '_parent' | '_top';\n\ninterface BaseLinkProps {\n /**\n * The content to display inside the link.\n *\n */\n children?: ReactNode;\n /**\n * Provides an accessible name for the link when the visible text alone\n * isn't descriptive enough for screen reader users\n */\n 'aria-label'?: string;\n}\n\ninterface ExternalLinkProps extends BaseLinkProps, AnchorHTMLAttributes<HTMLAnchorElement> {\n /**\n * The URL to navigate to. Can be internal (e.g., \"/dashboard\") or external (e.g., \"https://example.com\").\n */\n url: string;\n\n /**\n * Where to open the link. Use \"_blank\" for external links to open in a new tab.\n */\n target?: Target;\n}\n\ninterface InternalLinkProps extends BaseLinkProps, Omit<RouterLinkProps, 'to'> {\n /**\n * The URL to navigate to. Should be an internal route (e.g., \"/dashboard\").\n */\n url: string;\n}\n\nexport type LinkProps = ExternalLinkProps | InternalLinkProps;\n\nconst IconContainer = styled.span`\n display: inline-block;\n vertical-align: middle;\n /* Uses padding here since we can't define flex on the element for multiline support */\n padding-left: 2px;\n /* Needed to reset the height of the container for SVG */\n line-height: 0;\n position: relative;\n /* Optical alignment adjustments */\n bottom: 1px;\n`;\n\nconst baseLinkStyles = css`\n ${paragraphMixins.md};\n color: ${Color.CorePurple600};\n width: fit-content;\n position: relative;\n overflow: hidden;\n text-decoration: underline;\n\n transition:\n color ${TransitionDuration.ExtraFast} ease-out,\n text-underline-offset ${TransitionDuration.ExtraFast} ease-out;\n text-underline-offset: 2px;\n\n &:hover {\n /* TODO (ivan): move to semantic tokens */\n color: ${Color.CorePurple800};\n text-underline-offset: ${Spacing[1]};\n }\n\n border-radius: ${({ theme }) => theme.button.borderRadius};\n ${focusOutline}\n\n &:active {\n /* TODO (ivan): move to semantic tokens */\n color: ${Color.CorePurple900};\n }\n`;\n\nconst StyledAnchor = styled.a`\n ${baseLinkStyles}\n`;\n\nconst StyledRouterLink = styled(RouterLink)`\n ${baseLinkStyles}\n`;\n\nexport const Link = ({ children, url, ...props }: LinkProps) => {\n // Check if the URL is external by looking at the protocol or if target is _blank\n const isAbsoluteUrl = /^https?:\\/\\//.test(url);\n const hasBlankTarget = props.target === '_blank';\n const isExternal = isAbsoluteUrl || hasBlankTarget;\n\n if (isExternal) {\n const { 'aria-label': ariaLabel, ...anchorProps } = props;\n const externalProps = {\n href: url,\n target: '_blank',\n rel: 'noopener noreferrer',\n 'aria-label': ariaLabel,\n // Automatically inform screen readers that link opens in new window\n title: ariaLabel ? undefined : 'Opens in new window',\n ...anchorProps,\n };\n\n return (\n <StyledAnchor {...externalProps}>\n {children}\n <IconContainer>\n <LinkExternalIcon size={12} />\n </IconContainer>\n </StyledAnchor>\n );\n }\n\n // Internal link using React Router\n const { 'aria-label': ariaLabel, ...routerProps } = props;\n const internalProps = {\n to: url,\n 'aria-label': ariaLabel,\n\n ...routerProps,\n };\n\n return <StyledRouterLink {...internalProps}>{children}</StyledRouterLink>;\n};\n\nexport default Link;\n"],"mappings":";;;;;;;;;AA8CA,MAAM,gBAAgB,OAAO,IAAI;;;;;;;;;;;AAYjC,MAAM,iBAAiB,GAAG;IACtB,gBAAgB,GAAG;WACZ,MAAM,cAAc;;;;;;;oBAOU;oCACgB;;;;;aAK5C,MAAM,cAAc;6BACJ,QAAQ,GAAG;;;oBAGpB,EAAE,YAAY,MAAM,OAAO,aAAa;IACxD,aAAa;;;;aAIJ,MAAM,cAAc;;;AAIjC,MAAM,eAAe,OAAO,CAAC;IACzB,eAAe;;AAGnB,MAAM,mBAAmB,OAAOA,OAAW;IACvC,eAAe;;AAGnB,MAAa,QAAQ,EAAE,UAAU,KAAK,GAAG,YAAuB;CAE9D,MAAM,gBAAgB,eAAe,KAAK,IAAI;CAC9C,MAAM,iBAAiB,MAAM,WAAW;AAGxC,KAFmB,iBAAiB,gBAEpB;EACd,MAAM,EAAE,cAAc,WAAW,GAAG,gBAAgB;AAWpD,SACE,qBAAC,cAAD;GAVA,MAAM;GACN,QAAQ;GACR,KAAK;GACL,cAAc;GAEd,OAAO,YAAY,KAAA,IAAY;GAC/B,GAAG;aAIH,CACG,UACD,oBAAC,eAAD,EAAA,UACE,oBAAC,kBAAD,EAAkB,MAAM,IAAM,CAAA,EAChB,CAAA,CACH;;;CAKnB,MAAM,EAAE,cAAc,WAAW,GAAG,gBAAgB;AAQpD,QAAO,oBAAC,kBAAD;EANL,IAAI;EACJ,cAAc;EAEd,GAAG;EAGwC;EAA4B,CAAA"}
1
+ {"version":3,"file":"index.mjs","names":["RouterLink"],"sources":["../../../components/Link/Link.tsx"],"sourcesContent":["import type { AnchorHTMLAttributes, ReactNode } from 'react';\nimport { Link as RouterLink, type LinkProps as RouterLinkProps } from 'react-router-dom';\nimport styled, { css } from 'styled-components';\n\nimport { Color, Spacing } from '@persona/design-tokens';\nimport { LinkExternalIcon } from '@persona/icons';\nimport { focusOutline } from 'design-system/mixins/focus';\nimport { paragraphMixins } from 'design-system/mixins/text';\nimport { TransitionDuration } from 'design-system/variables/transitions';\n\ntype Target = '_blank' | '_self' | '_parent' | '_top';\n\ninterface BaseLinkProps {\n /**\n * The content to display inside the link.\n *\n */\n children?: ReactNode;\n /**\n * Provides an accessible name for the link when the visible text alone\n * isn't descriptive enough for screen reader users\n */\n 'aria-label'?: string;\n}\n\ninterface ExternalLinkProps extends BaseLinkProps, AnchorHTMLAttributes<HTMLAnchorElement> {\n /**\n * The URL to navigate to. Can be internal (e.g., \"/dashboard\") or external (e.g., \"https://example.com\").\n */\n url: string;\n\n /**\n * Where to open the link. Use \"_blank\" for external links to open in a new tab.\n */\n target?: Target;\n}\n\ninterface InternalLinkProps extends BaseLinkProps, Omit<RouterLinkProps, 'to'> {\n /**\n * The URL to navigate to. Should be an internal route (e.g., \"/dashboard\").\n */\n url: string;\n}\n\nexport type LinkProps = ExternalLinkProps | InternalLinkProps;\n\nconst IconContainer = styled.span`\n display: inline-block;\n vertical-align: middle;\n /* Uses padding here since we can't define flex on the element for multiline support */\n padding-left: 2px;\n /* Needed to reset the height of the container for SVG */\n line-height: 0;\n position: relative;\n /* Optical alignment adjustments */\n bottom: 1px;\n`;\n\nconst baseLinkStyles = css`\n ${paragraphMixins.md};\n color: ${Color.CorePurple600};\n width: fit-content;\n position: relative;\n overflow: hidden;\n text-decoration: underline;\n\n transition:\n color ${TransitionDuration.ExtraFast} ease-out,\n text-underline-offset ${TransitionDuration.ExtraFast} ease-out;\n text-underline-offset: 2px;\n\n &:hover {\n /* TODO (ivan): move to semantic tokens */\n color: ${Color.CorePurple800};\n text-underline-offset: ${Spacing[1]};\n }\n\n border-radius: ${({ theme }) => theme.button.borderRadius};\n ${focusOutline}\n\n &:active {\n /* TODO (ivan): move to semantic tokens */\n color: ${Color.CorePurple900};\n }\n`;\n\nconst StyledAnchor = styled.a`\n ${baseLinkStyles}\n`;\n\nconst StyledRouterLink = styled(RouterLink)`\n ${baseLinkStyles}\n`;\n\nexport const Link = ({ children, url, ...props }: LinkProps) => {\n // Check if the URL is external by looking at the protocol or if target is _blank\n const isAbsoluteUrl = /^https?:\\/\\//.test(url);\n const hasBlankTarget = props.target === '_blank';\n const isExternal = isAbsoluteUrl || hasBlankTarget;\n\n if (isExternal) {\n const { 'aria-label': ariaLabel, ...anchorProps } = props;\n const externalProps = {\n href: url,\n target: '_blank',\n rel: 'noopener noreferrer',\n 'aria-label': ariaLabel,\n // Automatically inform screen readers that link opens in new window\n title: ariaLabel ? undefined : 'Opens in new window',\n ...anchorProps,\n };\n\n return (\n <StyledAnchor {...externalProps}>\n {children}\n <IconContainer>\n <LinkExternalIcon size={12} />\n </IconContainer>\n </StyledAnchor>\n );\n }\n\n // Internal link using React Router\n const { 'aria-label': ariaLabel, ...routerProps } = props;\n const internalProps = {\n to: url,\n 'aria-label': ariaLabel,\n\n ...routerProps,\n };\n\n return <StyledRouterLink {...internalProps}>{children}</StyledRouterLink>;\n};\n\nexport default Link;\n"],"mappings":";;;;;;;;;AA8CA,MAAM,gBAAgB,OAAO,IAAI;;;;;;;;;;;AAYjC,MAAM,iBAAiB,GAAG;IACtB,gBAAgB,GAAG;WACZ,MAAM,cAAc;;;;;;;oBAOU;oCACgB;;;;;aAK5C,MAAM,cAAc;6BACJ,QAAQ,GAAG;;;oBAGpB,EAAE,YAAY,MAAM,OAAO,aAAa;IACxD,aAAa;;;;aAIJ,MAAM,cAAc;;;AAIjC,MAAM,eAAe,OAAO,CAAC;IACzB,eAAe;;AAGnB,MAAM,mBAAmB,OAAOA,OAAW;IACvC,eAAe;;AAGnB,MAAa,QAAQ,EAAE,UAAU,KAAK,GAAG,YAAuB;CAE9D,MAAM,gBAAgB,eAAe,KAAK,IAAI;CAC9C,MAAM,iBAAiB,MAAM,WAAW;AAGxC,KAFmB,iBAAiB,gBAEpB;EACd,MAAM,EAAE,cAAc,WAAW,GAAG,gBAAgB;AAWpD,SACE,qBAAC,cAAD;GAVA,MAAM;GACN,QAAQ;GACR,KAAK;GACL,cAAc;GAEd,OAAO,YAAY,KAAA,IAAY;GAC/B,GAAG;aAIH,CACG,UACD,oBAAC,eAAD,EAAA,UACE,oBAAC,kBAAD,EAAkB,MAAM,IAAM,CAAA,EAChB,CAAA,CACH;;;CAKnB,MAAM,EAAE,cAAc,WAAW,GAAG,gBAAgB;AAQpD,QAAO,oBAAC,kBAAD;EANL,IAAI;EACJ,cAAc;EAEd,GAAG;EAGwC;EAA4B,CAAA"}
@@ -2,8 +2,7 @@ Object.defineProperties(exports, {
2
2
  __esModule: { value: true },
3
3
  [Symbol.toStringTag]: { value: "Module" }
4
4
  });
5
- require("../../chunk-CoPdw6nB.cjs");
6
- const require_ListBox = require("../../ListBox-CE3mfDSB.cjs");
5
+ const require_ListBox = require("../../ListBox-BCscLcYL.cjs");
7
6
  exports.ListBox = require_ListBox.ListBox;
8
7
  exports.default = require_ListBox.ListBox;
9
8
  exports.useListBoxContext = require_ListBox.useListBoxContext;
@@ -1,2 +1,2 @@
1
- import { i as useListBoxContext, n as ListBoxItemProps, r as ListBoxProps, t as ListBox } from "../../ListBox-DbyZFy2W.cjs";
1
+ import { i as useListBoxContext, n as ListBoxItemProps, r as ListBoxProps, t as ListBox } from "../../ListBox-WyZvseo5.cjs";
2
2
  export { ListBox, ListBox as default, ListBoxItemProps, ListBoxProps, useListBoxContext };
@@ -1,2 +1,2 @@
1
- import { i as useListBoxContext, n as ListBoxItemProps, r as ListBoxProps, t as ListBox } from "../../ListBox-AyjzT6ra.mjs";
1
+ import { i as useListBoxContext, n as ListBoxItemProps, r as ListBoxProps, t as ListBox } from "../../ListBox-DZIAlPbc.mjs";
2
2
  export { ListBox, ListBox as default, ListBoxItemProps, ListBoxProps, useListBoxContext };
@@ -1,2 +1,2 @@
1
- import { n as useListBoxContext, t as ListBox } from "../../ListBox-Z1y0LG1H.mjs";
1
+ import { n as useListBoxContext, t as ListBox } from "../../ListBox-CDNOJmvz.mjs";
2
2
  export { ListBox, ListBox as default, useListBoxContext };
@@ -1,6 +1,5 @@
1
1
  Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
2
- require("../../chunk-CoPdw6nB.cjs");
3
- const require_LoadingShimmer = require("../../LoadingShimmer-DMK9RC4N.cjs");
2
+ const require_LoadingShimmer = require("../../LoadingShimmer-CUjbAqGd.cjs");
4
3
  exports.LoadingShimmer = require_LoadingShimmer.LoadingShimmer;
5
4
  exports.LoadingShimmerHeading = require_LoadingShimmer.LoadingShimmerHeading;
6
5
  exports.LoadingShimmerParagraph = require_LoadingShimmer.LoadingShimmerParagraph;
@@ -1,2 +1,2 @@
1
- import { i as MaybeLoadingShimmer, n as LoadingShimmerHeading, r as LoadingShimmerParagraph, t as LoadingShimmer } from "../../LoadingShimmer-CNE6JUVF.mjs";
1
+ import { i as MaybeLoadingShimmer, n as LoadingShimmerHeading, r as LoadingShimmerParagraph, t as LoadingShimmer } from "../../LoadingShimmer-Bu6KtQ06.mjs";
2
2
  export { LoadingShimmer, LoadingShimmerHeading, LoadingShimmerParagraph, MaybeLoadingShimmer };
@@ -2,10 +2,10 @@ Object.defineProperties(exports, {
2
2
  __esModule: { value: true },
3
3
  [Symbol.toStringTag]: { value: "Module" }
4
4
  });
5
- require("../../chunk-CoPdw6nB.cjs");
6
- const require_Input = require("../../Input-DHOsR4cl.cjs");
7
- let react_jsx_runtime = require("react/jsx-runtime");
5
+ require("../../chunk-CKQMccvm.cjs");
6
+ const require_Input = require("../../Input-BDLUq-pK.cjs");
8
7
  let react = require("react");
8
+ let react_jsx_runtime = require("react/jsx-runtime");
9
9
  //#region components/MaskedInput/MaskedInput.tsx
10
10
  const MaskedInputBase = (0, require("react-imask").IMaskMixin)(({ inputRef, size, componentProps, ...props }) => /* @__PURE__ */ (0, react_jsx_runtime.jsx)(require_Input.Input, {
11
11
  ...props,
@@ -1,6 +1,6 @@
1
- import { n as Input } from "../../Input-eoFk39bE.mjs";
2
- import { jsx } from "react/jsx-runtime";
1
+ import { n as Input } from "../../Input-PWfwMSJ7.mjs";
3
2
  import { forwardRef } from "react";
3
+ import { jsx } from "react/jsx-runtime";
4
4
  import { IMaskMixin } from "react-imask";
5
5
  //#region components/MaskedInput/MaskedInput.tsx
6
6
  const MaskedInputBase = IMaskMixin(({ inputRef, size, componentProps, ...props }) => /* @__PURE__ */ jsx(Input, {
@@ -2,7 +2,7 @@ Object.defineProperties(exports, {
2
2
  __esModule: { value: true },
3
3
  [Symbol.toStringTag]: { value: "Module" }
4
4
  });
5
- const require_chunk = require("../../chunk-CoPdw6nB.cjs");
5
+ const require_chunk = require("../../chunk-CKQMccvm.cjs");
6
6
  let _persona_design_tokens = require("@persona/design-tokens");
7
7
  let styled_components = require("styled-components");
8
8
  styled_components = require_chunk.__toESM(styled_components);
@@ -1 +1 @@
1
- {"version":3,"file":"index.cjs","names":["Spacing"],"sources":["../../../components/MatchHighlight/MatchHighlight.tsx"],"sourcesContent":["import { Spacing } from '@persona/design-tokens';\nimport type { ComponentPropsWithoutRef } from 'react';\nimport styled from 'styled-components';\n\nexport interface MatchHighlightProps extends Omit<ComponentPropsWithoutRef<'p'>, 'color'> {\n matchStrength?: 'none' | 'partial' | 'full';\n}\n\nexport const MatchHighlight = styled.span<MatchHighlightProps>`\n /* Sizing and Borders */\n width: fit-content;\n padding-left: ${Spacing[1]};\n padding-right: ${Spacing[1]};\n border-radius: ${Spacing[1]};\n\n /* Allow background colors to be dictated by the matchStrength. */\n background-color: ${({ matchStrength, theme }) => {\n switch (matchStrength) {\n case 'none':\n return theme.color.background.disabled;\n case 'partial':\n return theme.color.variants.success.highlightLight;\n case 'full':\n return theme.color.variants.success.highlightDark;\n\n default:\n return 'none';\n }\n }};\n`;\n\nexport default MatchHighlight;\n"],"mappings":";;;;;;;;;AAQA,MAAa,iBAAiB,kBAAA,QAAO,IAAyB;;;kBAG5CA,uBAAAA,QAAQ,GAAG;mBACVA,uBAAAA,QAAQ,GAAG;mBACXA,uBAAAA,QAAQ,GAAG;;;uBAGP,EAAE,eAAe,YAAY;AAChD,SAAQ,eAAR;EACE,KAAK,OACH,QAAO,MAAM,MAAM,WAAW;EAChC,KAAK,UACH,QAAO,MAAM,MAAM,SAAS,QAAQ;EACtC,KAAK,OACH,QAAO,MAAM,MAAM,SAAS,QAAQ;EAEtC,QACE,QAAO;;EAEX"}
1
+ {"version":3,"file":"index.cjs","names":["Spacing"],"sources":["../../../components/MatchHighlight/MatchHighlight.tsx"],"sourcesContent":["import type { ComponentPropsWithoutRef } from 'react';\nimport styled from 'styled-components';\n\nimport { Spacing } from '@persona/design-tokens';\n\nexport interface MatchHighlightProps extends Omit<ComponentPropsWithoutRef<'p'>, 'color'> {\n matchStrength?: 'none' | 'partial' | 'full';\n}\n\nexport const MatchHighlight = styled.span<MatchHighlightProps>`\n /* Sizing and Borders */\n width: fit-content;\n padding-left: ${Spacing[1]};\n padding-right: ${Spacing[1]};\n border-radius: ${Spacing[1]};\n\n /* Allow background colors to be dictated by the matchStrength. */\n background-color: ${({ matchStrength, theme }) => {\n switch (matchStrength) {\n case 'none':\n return theme.color.background.disabled;\n case 'partial':\n return theme.color.variants.success.highlightLight;\n case 'full':\n return theme.color.variants.success.highlightDark;\n\n default:\n return 'none';\n }\n }};\n`;\n\nexport default MatchHighlight;\n"],"mappings":";;;;;;;;;AASA,MAAa,iBAAiB,kBAAA,QAAO,IAAyB;;;kBAG5CA,uBAAAA,QAAQ,GAAG;mBACVA,uBAAAA,QAAQ,GAAG;mBACXA,uBAAAA,QAAQ,GAAG;;;uBAGP,EAAE,eAAe,YAAY;AAChD,SAAQ,eAAR;EACE,KAAK,OACH,QAAO,MAAM,MAAM,WAAW;EAChC,KAAK,UACH,QAAO,MAAM,MAAM,SAAS,QAAQ;EACtC,KAAK,OACH,QAAO,MAAM,MAAM,SAAS,QAAQ;EAEtC,QACE,QAAO;;EAEX"}
@@ -1 +1 @@
1
- {"version":3,"file":"index.mjs","names":[],"sources":["../../../components/MatchHighlight/MatchHighlight.tsx"],"sourcesContent":["import { Spacing } from '@persona/design-tokens';\nimport type { ComponentPropsWithoutRef } from 'react';\nimport styled from 'styled-components';\n\nexport interface MatchHighlightProps extends Omit<ComponentPropsWithoutRef<'p'>, 'color'> {\n matchStrength?: 'none' | 'partial' | 'full';\n}\n\nexport const MatchHighlight = styled.span<MatchHighlightProps>`\n /* Sizing and Borders */\n width: fit-content;\n padding-left: ${Spacing[1]};\n padding-right: ${Spacing[1]};\n border-radius: ${Spacing[1]};\n\n /* Allow background colors to be dictated by the matchStrength. */\n background-color: ${({ matchStrength, theme }) => {\n switch (matchStrength) {\n case 'none':\n return theme.color.background.disabled;\n case 'partial':\n return theme.color.variants.success.highlightLight;\n case 'full':\n return theme.color.variants.success.highlightDark;\n\n default:\n return 'none';\n }\n }};\n`;\n\nexport default MatchHighlight;\n"],"mappings":";;;AAQA,MAAa,iBAAiB,OAAO,IAAyB;;;kBAG5C,QAAQ,GAAG;mBACV,QAAQ,GAAG;mBACX,QAAQ,GAAG;;;uBAGP,EAAE,eAAe,YAAY;AAChD,SAAQ,eAAR;EACE,KAAK,OACH,QAAO,MAAM,MAAM,WAAW;EAChC,KAAK,UACH,QAAO,MAAM,MAAM,SAAS,QAAQ;EACtC,KAAK,OACH,QAAO,MAAM,MAAM,SAAS,QAAQ;EAEtC,QACE,QAAO;;EAEX"}
1
+ {"version":3,"file":"index.mjs","names":[],"sources":["../../../components/MatchHighlight/MatchHighlight.tsx"],"sourcesContent":["import type { ComponentPropsWithoutRef } from 'react';\nimport styled from 'styled-components';\n\nimport { Spacing } from '@persona/design-tokens';\n\nexport interface MatchHighlightProps extends Omit<ComponentPropsWithoutRef<'p'>, 'color'> {\n matchStrength?: 'none' | 'partial' | 'full';\n}\n\nexport const MatchHighlight = styled.span<MatchHighlightProps>`\n /* Sizing and Borders */\n width: fit-content;\n padding-left: ${Spacing[1]};\n padding-right: ${Spacing[1]};\n border-radius: ${Spacing[1]};\n\n /* Allow background colors to be dictated by the matchStrength. */\n background-color: ${({ matchStrength, theme }) => {\n switch (matchStrength) {\n case 'none':\n return theme.color.background.disabled;\n case 'partial':\n return theme.color.variants.success.highlightLight;\n case 'full':\n return theme.color.variants.success.highlightDark;\n\n default:\n return 'none';\n }\n }};\n`;\n\nexport default MatchHighlight;\n"],"mappings":";;;AASA,MAAa,iBAAiB,OAAO,IAAyB;;;kBAG5C,QAAQ,GAAG;mBACV,QAAQ,GAAG;mBACX,QAAQ,GAAG;;;uBAGP,EAAE,eAAe,YAAY;AAChD,SAAQ,eAAR;EACE,KAAK,OACH,QAAO,MAAM,MAAM,WAAW;EAChC,KAAK,UACH,QAAO,MAAM,MAAM,SAAS,QAAQ;EACtC,KAAK,OACH,QAAO,MAAM,MAAM,SAAS,QAAQ;EAEtC,QACE,QAAO;;EAEX"}
@@ -2,8 +2,7 @@ Object.defineProperties(exports, {
2
2
  __esModule: { value: true },
3
3
  [Symbol.toStringTag]: { value: "Module" }
4
4
  });
5
- require("../../chunk-CoPdw6nB.cjs");
6
- const require_Menu = require("../../Menu-BpkjNO81.cjs");
5
+ const require_Menu = require("../../Menu-BXic-30n.cjs");
7
6
  exports.FloatingCard = require_Menu.FloatingCard;
8
7
  exports.IconContainer = require_Menu.IconContainer;
9
8
  exports.ListItem = require_Menu.ListItem;
@@ -1,2 +1,2 @@
1
- import { a as MenuDivider, c as MenuItem, d as MenuList, f as MenuProps, i as Menu, l as MenuItemProps, n as IconContainer, o as MenuHeading, r as ListItem, s as MenuHeadingProps, t as FloatingCard, u as MenuItemType } from "../../Menu-DPrNMatb.cjs";
1
+ import { a as MenuDivider, c as MenuItem, d as MenuList, f as MenuProps, i as Menu, l as MenuItemProps, n as IconContainer, o as MenuHeading, r as ListItem, s as MenuHeadingProps, t as FloatingCard, u as MenuItemType } from "../../Menu-BKMxOXkj.cjs";
2
2
  export { FloatingCard, IconContainer, ListItem, Menu, Menu as default, MenuDivider, MenuHeading, MenuHeadingProps, MenuItem, MenuItemProps, MenuItemType, MenuList, MenuProps };
@@ -1,2 +1,2 @@
1
- import { a as MenuDivider, c as MenuItem, d as MenuList, f as MenuProps, i as Menu, l as MenuItemProps, n as IconContainer, o as MenuHeading, r as ListItem, s as MenuHeadingProps, t as FloatingCard, u as MenuItemType } from "../../Menu-DIFkRQ6x.mjs";
1
+ import { a as MenuDivider, c as MenuItem, d as MenuList, f as MenuProps, i as Menu, l as MenuItemProps, n as IconContainer, o as MenuHeading, r as ListItem, s as MenuHeadingProps, t as FloatingCard, u as MenuItemType } from "../../Menu-BJ5c7HGD.mjs";
2
2
  export { FloatingCard, IconContainer, ListItem, Menu, Menu as default, MenuDivider, MenuHeading, MenuHeadingProps, MenuItem, MenuItemProps, MenuItemType, MenuList, MenuProps };
@@ -1,2 +1,2 @@
1
- import { a as MenuDivider, c as MenuList, i as Menu, n as IconContainer, o as MenuHeading, r as ListItem, s as MenuItem, t as FloatingCard } from "../../Menu-DNRHo2i_.mjs";
1
+ import { a as MenuDivider, c as MenuList, i as Menu, n as IconContainer, o as MenuHeading, r as ListItem, s as MenuItem, t as FloatingCard } from "../../Menu-CVuFAxl2.mjs";
2
2
  export { FloatingCard, IconContainer, ListItem, Menu, Menu as default, MenuDivider, MenuHeading, MenuItem, MenuList };
@@ -2,20 +2,18 @@ Object.defineProperties(exports, {
2
2
  __esModule: { value: true },
3
3
  [Symbol.toStringTag]: { value: "Module" }
4
4
  });
5
- const require_chunk = require("../../chunk-CoPdw6nB.cjs");
6
- const require_Stack = require("../../Stack-BHb3ZB2A.cjs");
7
- require("../Stack/index.cjs");
8
- const require_Card = require("../../Card-CyCKL-M5.cjs");
9
- const require_Text = require("../../Text-DVz8erdF.cjs");
10
- const require_IconButton = require("../../IconButton-B1ZL8BqW.cjs");
11
- require("../Button/index.cjs");
12
- const require_TabBar = require("../../TabBar-BMv8dAS3.cjs");
5
+ const require_chunk = require("../../chunk-CKQMccvm.cjs");
6
+ const require_Card = require("../../Card-CaOItkgL.cjs");
7
+ const require_Text = require("../../Text-CzN0DOXV.cjs");
8
+ const require_Stack = require("../../Stack-BF-9YjA1.cjs");
9
+ const require_IconButton = require("../../IconButton-DNy7g5zh.cjs");
10
+ const require_TabBar = require("../../TabBar-BpHMYvNb.cjs");
13
11
  let _persona_design_tokens = require("@persona/design-tokens");
14
12
  let styled_components = require("styled-components");
15
13
  styled_components = require_chunk.__toESM(styled_components);
16
- let react_jsx_runtime = require("react/jsx-runtime");
17
14
  let react = require("react");
18
15
  let react_aria_components = require("react-aria-components");
16
+ let react_jsx_runtime = require("react/jsx-runtime");
19
17
  let _persona_icons = require("@persona/icons");
20
18
  //#region lib/useModalInsetRight.ts
21
19
  const CSS_VAR = "--modal-inset-right";
@@ -123,6 +121,9 @@ const ModalFooter = (0, styled_components.default)(require_Stack.HStack).attrs({
123
121
  padding: ${_persona_design_tokens.Spacing[3]} ${_persona_design_tokens.Spacing[4]};
124
122
  border-top: 1px solid ${_persona_design_tokens.Color.BorderDivider};
125
123
  `;
124
+ const ModalHeaderTitle = styled_components.default.div`
125
+ flex: 1;
126
+ `;
126
127
  const ModalTrigger = react_aria_components.DialogTrigger;
127
128
  const ModalContent = StyledModal;
128
129
  const ModalClose = (props) => {
@@ -151,6 +152,16 @@ const ModalTitle = ({ children, ...props }) => {
151
152
  children
152
153
  });
153
154
  };
155
+ const ModalHeader = (0, styled_components.default)(require_Stack.HStack)`
156
+ border-bottom: ${({ $hasTabs }) => $hasTabs ? "none" : `1px solid ${_persona_design_tokens.Color.BorderDivider}`};
157
+ padding: ${({ $hasTabs }) => $hasTabs ? `${_persona_design_tokens.Spacing[3]} ${_persona_design_tokens.Spacing[2]} ${_persona_design_tokens.Spacing[1]} ${_persona_design_tokens.Spacing[4]}` : `${_persona_design_tokens.Spacing[3]} ${_persona_design_tokens.Spacing[2]} ${_persona_design_tokens.Spacing[3]} ${_persona_design_tokens.Spacing[4]}`};
158
+ `;
159
+ const ModalTabBar = (0, styled_components.default)(require_TabBar.TabBar)`
160
+ padding-left: ${_persona_design_tokens.Spacing[4]};
161
+ `;
162
+ const StyledDialog = (0, styled_components.default)(react_aria_components.Dialog)`
163
+ outline: none;
164
+ `;
154
165
  const StyledCard = (0, styled_components.default)(require_Card.Card_default)`
155
166
  position: relative;
156
167
  left: 50%;
@@ -192,33 +203,26 @@ const StyledModalCardBody = (0, styled_components.default)(require_Card.Card_def
192
203
  /**
193
204
  * Card to be used in Modal contexts. Inherits props from react-aria-components Dialog.
194
205
  */
195
- const ModalCard = (0, react.forwardRef)(function ModalCard({ title, children, showCloseButton = true, size, footer, tabs, noBodyPadding = false, ...props }, ref) {
206
+ const ModalCard = (0, react.forwardRef)(function ModalCard({ title, children, showCloseButton = true, size, footer, tabs, noBodyPadding = false, portalContainer, ...props }, ref) {
196
207
  const [selectedTabIdx, setSelectedTabIdx] = (0, react.useState)(0);
197
- const titleAndClose = /* @__PURE__ */ (0, react_jsx_runtime.jsxs)(require_Stack.HStack, {
208
+ (0, react.useEffect)(() => {
209
+ setSelectedTabIdx(0);
210
+ }, [tabs?.length ?? 0]);
211
+ const titleAndClose = /* @__PURE__ */ (0, react_jsx_runtime.jsxs)(ModalHeader, {
198
212
  justify: "flex-start",
199
213
  align: "center",
200
214
  spacing: _persona_design_tokens.Spacing[2],
201
- css: {
202
- borderBottom: tabs ? "none" : `1px solid ${_persona_design_tokens.Color.BorderDivider}`,
203
- padding: tabs ? `${_persona_design_tokens.Spacing[3]} ${_persona_design_tokens.Spacing[2]} ${_persona_design_tokens.Spacing[1]} ${_persona_design_tokens.Spacing[4]}` : `${_persona_design_tokens.Spacing[3]} ${_persona_design_tokens.Spacing[2]} ${_persona_design_tokens.Spacing[3]} ${_persona_design_tokens.Spacing[4]}`
204
- },
205
- children: [/* @__PURE__ */ (0, react_jsx_runtime.jsx)("div", {
206
- css: { flex: 1 },
207
- children: title ? /* @__PURE__ */ (0, react_jsx_runtime.jsx)(ModalTitle, { children: title }) : null
208
- }), showCloseButton && /* @__PURE__ */ (0, react_jsx_runtime.jsx)(ModalClose, { "aria-label": "Close" })]
215
+ $hasTabs: Boolean(tabs),
216
+ children: [/* @__PURE__ */ (0, react_jsx_runtime.jsx)(ModalHeaderTitle, { children: title ? /* @__PURE__ */ (0, react_jsx_runtime.jsx)(ModalTitle, { children: title }) : null }), showCloseButton && /* @__PURE__ */ (0, react_jsx_runtime.jsx)(ModalClose, { "aria-label": "Close" })]
209
217
  });
210
- const modalHeader = tabs ? /* @__PURE__ */ (0, react_jsx_runtime.jsxs)(require_Stack.Stack, { children: [titleAndClose, /* @__PURE__ */ (0, react_jsx_runtime.jsx)(require_TabBar.TabBar, {
211
- css: { paddingLeft: _persona_design_tokens.Spacing[4] },
212
- children: tabs.map((tab, idx) => /* @__PURE__ */ (0, react_jsx_runtime.jsx)(require_TabBar.Tab, {
213
- selected: selectedTabIdx === idx,
214
- id: `pds-modal_tab-${idx}`,
215
- onClick: () => setSelectedTabIdx(idx),
216
- "aria-controls": `pds-modal_tab-panel-${idx}`,
217
- children: tab.name
218
- }, tab.name))
219
- })] }) : titleAndClose;
220
- return /* @__PURE__ */ (0, react_jsx_runtime.jsx)(react_aria_components.Dialog, {
221
- css: { outline: "none" },
218
+ const modalHeader = tabs ? /* @__PURE__ */ (0, react_jsx_runtime.jsxs)(require_Stack.Stack, { children: [titleAndClose, /* @__PURE__ */ (0, react_jsx_runtime.jsx)(ModalTabBar, { children: tabs.map((tab, idx) => /* @__PURE__ */ (0, react_jsx_runtime.jsx)(require_TabBar.Tab, {
219
+ selected: selectedTabIdx === idx,
220
+ id: `pds-modal_tab-${idx}`,
221
+ onClick: () => setSelectedTabIdx(idx),
222
+ "aria-controls": `pds-modal_tab-panel-${idx}`,
223
+ children: tab.name
224
+ }, tab.name)) })] }) : titleAndClose;
225
+ return /* @__PURE__ */ (0, react_jsx_runtime.jsx)(StyledDialog, {
222
226
  ...props,
223
227
  ref,
224
228
  children: /* @__PURE__ */ (0, react_jsx_runtime.jsxs)(StyledCard, {
@@ -232,7 +236,7 @@ const ModalCard = (0, react.forwardRef)(function ModalCard({ title, children, sh
232
236
  role: tabs ? "tabpanel" : void 0,
233
237
  id: `pds-modal_tab-panel-${tab.name}`,
234
238
  "aria-labelledby": `pds-modal_tab-${tab.name}`,
235
- children: tab.contents
239
+ children: typeof tab.contents === "function" ? tab.contents({ portalContainer }) : tab.contents
236
240
  }, tab.name)) : /* @__PURE__ */ (0, react_jsx_runtime.jsx)(StyledModalCardBody, {
237
241
  $noPadding: noBodyPadding,
238
242
  role: tabs ? "tabpanel" : void 0,
@@ -256,6 +260,7 @@ const Modal = ({ children, trigger, contentProps, noBodyPadding = false, size =
256
260
  tabs,
257
261
  noBodyPadding,
258
262
  ...contentProps,
263
+ portalContainer,
259
264
  children: typeof children === "function" ? children({ portalContainer }) : children
260
265
  });
261
266
  return /* @__PURE__ */ (0, react_jsx_runtime.jsxs)(react_aria_components.DialogTrigger, {
@@ -1 +1 @@
1
- {"version":3,"file":"index.cjs","names":["ModalOverlay","AriaModal","Button","Spacing","HStack","Color","DialogTrigger","AriaButton","XIcon","Heading","AriaHeading","Card","Stack","TabBar","Tab","Dialog","Pressable"],"sources":["../../../lib/useModalInsetRight.ts","../../../components/Modal/Modal.tsx"],"sourcesContent":["import { useEffect, useRef, useState } from 'react';\n\nconst CSS_VAR = '--modal-inset-right';\n\n// Match AgentsPanel sidebar transition durations\nexport const SIDEBAR_OPEN_TRANSITION_MS = 425;\nexport const SIDEBAR_CLOSE_TRANSITION_MS = 200;\n\nconst getModalInsetRight = () =>\n getComputedStyle(document.documentElement).getPropertyValue(CSS_VAR).trim() || '0px';\n\nconst prefersReducedMotion = () =>\n typeof window !== 'undefined' && window.matchMedia('(prefers-reduced-motion: reduce)').matches;\n\nexport type PanelInsetState = 'closed' | 'opening' | 'open' | 'closing';\n\nexport interface ModalInsetRight {\n /** Animated inset value — starts at 0px on panel open so CSS transition fires */\n insetRight: string;\n panelState: PanelInsetState;\n}\n\n/**\n * Returns the current value of --modal-inset-right from :root, reactively updating\n * as the agents side panel animates open/closed or is resized. Also tracks whether\n * the panel is opening, open, closing, or closed.\n *\n * panelState stays 'opening'/'closing' for the full transition duration so that\n * CSS transitions on consumers have time to animate.\n */\nconst useModalInsetRight = (): ModalInsetRight => {\n const [insetRight, setInsetRight] = useState(getModalInsetRight);\n const [panelState, setPanelState] = useState<PanelInsetState>(() =>\n getModalInsetRight() !== '0px' ? 'open' : 'closed',\n );\n const prevInsetRight = useRef(getModalInsetRight());\n const transitionTimerRef = useRef<ReturnType<typeof setTimeout> | null>(null);\n const rafRef = useRef<number | null>(null);\n\n useEffect(() => {\n const observer = new MutationObserver(() => {\n const prev = prevInsetRight.current;\n const next = getModalInsetRight();\n prevInsetRight.current = next;\n\n if (prev === '0px' && next !== '0px') {\n if (prefersReducedMotion()) {\n setInsetRight(next);\n setPanelState('open');\n } else {\n if (rafRef.current) {\n cancelAnimationFrame(rafRef.current);\n }\n if (transitionTimerRef.current) {\n clearTimeout(transitionTimerRef.current);\n }\n setInsetRight('0px');\n setPanelState('opening');\n rafRef.current = requestAnimationFrame(() => setInsetRight(next));\n transitionTimerRef.current = setTimeout(\n () => setPanelState('open'),\n SIDEBAR_OPEN_TRANSITION_MS,\n );\n }\n } else if (prev !== '0px' && next === '0px') {\n if (prefersReducedMotion()) {\n setInsetRight('0px');\n setPanelState('closed');\n } else {\n if (rafRef.current) {\n cancelAnimationFrame(rafRef.current);\n }\n if (transitionTimerRef.current) {\n clearTimeout(transitionTimerRef.current);\n }\n setInsetRight(prev);\n setPanelState('closing');\n rafRef.current = requestAnimationFrame(() => setInsetRight('0px'));\n transitionTimerRef.current = setTimeout(\n () => setPanelState('closed'),\n SIDEBAR_CLOSE_TRANSITION_MS,\n );\n }\n } else {\n setInsetRight(next);\n }\n });\n\n observer.observe(document.documentElement, {\n attributes: true,\n attributeFilter: ['style'],\n });\n\n return () => {\n observer.disconnect();\n if (transitionTimerRef.current) {\n clearTimeout(transitionTimerRef.current);\n }\n if (rafRef.current) {\n cancelAnimationFrame(rafRef.current);\n }\n };\n }, []);\n\n return { insetRight, panelState };\n};\n\nexport default useModalInsetRight;\n","import Button, { type ButtonProps } from '@persona/design-system/components/Button';\nimport Card from '@persona/design-system/components/Card';\nimport Stack, { HStack } from '@persona/design-system/components/Stack';\nimport TabBar, { Tab } from '@persona/design-system/components/TabBar';\nimport { Heading } from '@persona/design-system/components/Text';\nimport { Color, Spacing } from '@persona/design-tokens';\nimport { XIcon } from '@persona/icons';\nimport type { ComponentProps, ComponentPropsWithoutRef } from 'react';\nimport { forwardRef, type ReactNode, useState } from 'react';\nimport {\n Button as AriaButton,\n Dialog,\n DialogTrigger,\n Heading as AriaHeading,\n Modal as AriaModal,\n ModalOverlay,\n Pressable,\n} from 'react-aria-components';\nimport styled from 'styled-components';\n\nimport useModalInsetRight, {\n SIDEBAR_CLOSE_TRANSITION_MS,\n SIDEBAR_OPEN_TRANSITION_MS,\n} from 'design-system/lib/useModalInsetRight';\n\nconst StyledModalOverlay = styled(ModalOverlay)<{ $insetRight: string; $transitionMs: number }>`\n @keyframes overlayShow {\n from {\n opacity: 0;\n }\n to {\n opacity: 1;\n }\n }\n background-color: rgba(0, 0, 0, 0.5);\n position: fixed;\n top: 0;\n bottom: 0;\n left: 0;\n right: ${({ $insetRight }) => $insetRight};\n transition: right ${({ $transitionMs }) => $transitionMs}ms ease-out;\n animation: overlayShow 150ms cubic-bezier(0.16, 1, 0.3, 1);\n z-index: 10000;\n display: flex;\n align-items: center;\n justify-content: center;\n`;\n\nconst StyledModal = styled(AriaModal)`\n z-index: 10001;\n outline: none;\n width: 100%;\n`;\n\nconst ModalCloseButton = styled(Button)`\n display: inline-flex;\n padding: ${Spacing[2]};\n border-radius: ${Spacing[1]};\n width: fit-content;\n min-width: unset;\n`;\n\nconst ModalFooter = styled(HStack).attrs({\n justify: 'flex-end',\n align: 'center',\n spacing: Spacing[2],\n})`\n padding: ${Spacing[3]} ${Spacing[4]};\n border-top: 1px solid ${Color.BorderDivider};\n`;\n\nexport const ModalTrigger = DialogTrigger;\nexport const ModalContent = StyledModal;\n\nexport const ModalClose = (props: ButtonProps) => {\n return (\n <AriaButton slot='close' style={{ all: 'unset', display: 'contents' }}>\n <ModalCloseButton variant='text' width='icon' size='md' {...props}>\n <XIcon />\n </ModalCloseButton>\n </AriaButton>\n );\n};\n\nexport interface ModalTitleProps {\n children: ReactNode;\n className?: string;\n}\n\nconst ModalTitle = ({ children, ...props }: ModalTitleProps) => {\n return (\n <Heading size='sm' color='primary' as={AriaHeading} slot='title' {...props}>\n {children}\n </Heading>\n );\n};\n\nconst StyledCard = styled(Card)<{ $size?: 'auto' | 'md' | 'lg' | 'xl' | 'full' }>`\n position: relative;\n left: 50%;\n transform: translateX(-50%);\n width: ${({ $size }) => {\n switch ($size) {\n case 'auto':\n return 'auto';\n case 'full':\n return 'calc(100% - 160px)';\n default:\n return '90vw';\n }\n }};\n max-width: ${({ theme, $size }) => {\n switch ($size) {\n case 'auto':\n return 'auto';\n case 'full':\n return 'calc(100% - 160px)';\n default:\n return theme.modal.width[$size];\n }\n }};\n /* TODO: Use breakpoints to make this responsive */\n max-height: ${({ $size }) => ($size === 'full' ? 'calc(100vh - 160px)' : '85vh')};\n display: flex;\n flex-direction: column;\n overflow: hidden;\n ${({ $size }) =>\n $size === 'full' &&\n `\n height: calc(100vh - 160px);\n `}\n margin-bottom: 0;\n`;\n\ninterface ModalCardProps extends ComponentPropsWithoutRef<typeof Dialog> {\n /**\n * Display X button to close popover\n */\n showCloseButton?: boolean;\n\n /**\n * Max width of the modal\n */\n size?: 'auto' | 'md' | 'lg' | 'xl' | 'full';\n\n /**\n * Footer content\n */\n footer?: ReactNode;\n\n /**\n * Renders tabs within the modal.\n * Adds a tab bar and will render the contents of the selected tab in a tabpanel.\n * Overrides `children`.\n */\n tabs?: TabView[];\n\n /**\n * Title of the modal\n */\n title?: ReactNode;\n\n /**\n * Children content\n */\n children?: ReactNode;\n\n /**\n * When true, removes horizontal and vertical padding from the body. Defaults to false.\n */\n noBodyPadding?: boolean;\n\n /**\n * Additional props for the Dialog element\n */\n className?: string;\n}\n\nconst StyledModalCardBody = styled(Card.Body)<{\n $noPadding?: boolean;\n $hidden?: boolean;\n}>`\n overflow-y: auto;\n flex: 1;\n min-height: 0;\n ${({ $noPadding }) =>\n $noPadding\n ? 'padding: 0;'\n : `\n padding-left: ${Spacing[4]};\n padding-right: ${Spacing[4]};\n `}\n ${({ $hidden }) => $hidden && 'display: none;'}\n`;\n\n/**\n * Card to be used in Modal contexts. Inherits props from react-aria-components Dialog.\n */\nconst ModalCard = forwardRef<HTMLDivElement, ModalCardProps>(function ModalCard(\n { title, children, showCloseButton = true, size, footer, tabs, noBodyPadding = false, ...props },\n ref,\n) {\n const [selectedTabIdx, setSelectedTabIdx] = useState(0);\n\n const titleAndClose = (\n <HStack\n justify='flex-start'\n align='center'\n spacing={Spacing[2]}\n css={{\n borderBottom: tabs ? 'none' : `1px solid ${Color.BorderDivider}`,\n padding: tabs\n ? `${Spacing[3]} ${Spacing[2]} ${Spacing[1]} ${Spacing[4]}`\n : `${Spacing[3]} ${Spacing[2]} ${Spacing[3]} ${Spacing[4]}`,\n }}\n >\n <div css={{ flex: 1 }}>{title ? <ModalTitle>{title}</ModalTitle> : null}</div>\n {showCloseButton && <ModalClose aria-label='Close' />}\n </HStack>\n );\n\n const modalHeader = tabs ? (\n <Stack>\n {titleAndClose}\n <TabBar css={{ paddingLeft: Spacing[4] }}>\n {tabs.map((tab, idx) => (\n <Tab\n key={tab.name}\n selected={selectedTabIdx === idx}\n id={`pds-modal_tab-${idx}`}\n onClick={() => setSelectedTabIdx(idx)}\n aria-controls={`pds-modal_tab-panel-${idx}`}\n >\n {tab.name}\n </Tab>\n ))}\n </TabBar>\n </Stack>\n ) : (\n titleAndClose\n );\n\n return (\n <Dialog css={{ outline: 'none' }} {...props} ref={ref}>\n <StyledCard elevated $size={size}>\n {(showCloseButton || title) && modalHeader}\n {tabs ? (\n tabs.map((tab, idx) => (\n <StyledModalCardBody\n key={tab.name}\n $noPadding={noBodyPadding}\n $hidden={selectedTabIdx !== idx}\n role={tabs ? 'tabpanel' : undefined}\n id={`pds-modal_tab-panel-${tab.name}`}\n aria-labelledby={`pds-modal_tab-${tab.name}`}\n >\n {tab.contents}\n </StyledModalCardBody>\n ))\n ) : (\n <StyledModalCardBody\n $noPadding={noBodyPadding}\n role={tabs ? 'tabpanel' : undefined}\n id={`pds-modal_tab-panel-${selectedTabIdx}`}\n aria-labelledby={`pds-modal_tab-${selectedTabIdx}`}\n >\n {children}\n </StyledModalCardBody>\n )}\n\n {footer && <ModalFooter>{footer}</ModalFooter>}\n </StyledCard>\n </Dialog>\n );\n});\n\ninterface TabView {\n name: string;\n contents: JSX.Element;\n badge?: React.ReactElement;\n disabled?: boolean;\n 'data-tour-target'?: string;\n}\n\nexport interface ModalProps {\n /**\n * Title of the Card\n */\n title?: string;\n\n /**\n * Component to use as trigger. React Aria trigger props will be merged with this element.\n */\n trigger?: ComponentProps<typeof Pressable>['children'];\n\n /**\n * Props to apply to Modal.Card within\n */\n contentProps?: ModalCardProps;\n\n /**\n * Max width of the modal\n */\n size?: 'auto' | 'md' | 'lg' | 'xl' | 'full';\n\n /**\n * Footer section intended for actions.\n * You can pass in Buttons directly and they will render in a HStack.\n */\n footer?: ReactNode;\n\n /**\n * Renders tabs within the modal.\n * Adds a tab bar and will render the contents of the selected tab in a tabpanel.\n * Overrides `children`.\n */\n tabs?: TabView[];\n\n /**\n * Children content\n */\n children?: ReactNode | ((props: { portalContainer: HTMLDivElement | null }) => ReactNode);\n\n /**\n * When true, removes horizontal and vertical padding from the body. Defaults to false.\n * Can also be set via contentProps.noBodyPadding.\n */\n noBodyPadding?: boolean;\n\n /**\n * Controls whether the modal is open (controlled)\n */\n open?: boolean;\n\n /**\n * Default open state (uncontrolled)\n */\n defaultOpen?: boolean;\n\n /**\n * Handler called when open state changes\n */\n onOpenChange?: (isOpen: boolean) => void;\n\n /**\n * Whether the modal can be dismissed by clicking outside or pressing escape\n */\n isDismissable?: boolean;\n\n /**\n * Whether pressing the escape key closes the modal\n */\n isKeyboardDismissDisabled?: boolean;\n}\n\nconst Modal = ({\n children,\n trigger,\n contentProps,\n noBodyPadding = false,\n size = 'md',\n title,\n footer,\n tabs,\n defaultOpen,\n onOpenChange,\n isDismissable = false,\n isKeyboardDismissDisabled = false,\n open,\n}: ModalProps) => {\n const [portalContainer, setPortalContainer] = useState<HTMLDivElement | null>(null);\n const { insetRight: modalInsetRight, panelState } = useModalInsetRight();\n const transitionMs =\n panelState === 'opening'\n ? SIDEBAR_OPEN_TRANSITION_MS\n : panelState === 'closing'\n ? SIDEBAR_CLOSE_TRANSITION_MS\n : 0;\n\n const content = (\n <ModalCard\n size={size}\n title={title}\n footer={footer}\n tabs={tabs}\n noBodyPadding={noBodyPadding}\n {...contentProps}\n >\n {typeof children === 'function' ? children({ portalContainer }) : children}\n </ModalCard>\n );\n\n // Wrap trigger element to ensure it works with react-aria-components\n const wrappedTrigger = trigger ? <Pressable>{trigger}</Pressable> : null;\n\n return (\n <DialogTrigger isOpen={open} defaultOpen={defaultOpen} onOpenChange={onOpenChange}>\n {wrappedTrigger}\n <StyledModalOverlay\n $insetRight={modalInsetRight}\n $transitionMs={transitionMs}\n isDismissable={isDismissable}\n isKeyboardDismissDisabled={isKeyboardDismissDisabled}\n shouldCloseOnInteractOutside={(element) => !element.closest('[data-react-aria-top-layer]')}\n >\n <StyledModal ref={setPortalContainer}>{content}</StyledModal>\n </StyledModalOverlay>\n </DialogTrigger>\n );\n};\n\nexport default Object.assign(Modal, {\n Title: ModalTitle,\n});\n"],"mappings":";;;;;;;;;;;;;;;;;;;;AAEA,MAAM,UAAU;AAMhB,MAAM,2BACJ,iBAAiB,SAAS,gBAAgB,CAAC,iBAAiB,QAAQ,CAAC,MAAM,IAAI;AAEjF,MAAM,6BACJ,OAAO,WAAW,eAAe,OAAO,WAAW,mCAAmC,CAAC;;;;;;;;;AAkBzF,MAAM,2BAA4C;CAChD,MAAM,CAAC,YAAY,kBAAA,GAAA,MAAA,UAA0B,mBAAmB;CAChE,MAAM,CAAC,YAAY,kBAAA,GAAA,MAAA,gBACjB,oBAAoB,KAAK,QAAQ,SAAS,SAC3C;CACD,MAAM,kBAAA,GAAA,MAAA,QAAwB,oBAAoB,CAAC;CACnD,MAAM,sBAAA,GAAA,MAAA,QAAkE,KAAK;CAC7E,MAAM,UAAA,GAAA,MAAA,QAA+B,KAAK;AAE1C,EAAA,GAAA,MAAA,iBAAgB;EACd,MAAM,WAAW,IAAI,uBAAuB;GAC1C,MAAM,OAAO,eAAe;GAC5B,MAAM,OAAO,oBAAoB;AACjC,kBAAe,UAAU;AAEzB,OAAI,SAAS,SAAS,SAAS,MAC7B,KAAI,sBAAsB,EAAE;AAC1B,kBAAc,KAAK;AACnB,kBAAc,OAAO;UAChB;AACL,QAAI,OAAO,QACT,sBAAqB,OAAO,QAAQ;AAEtC,QAAI,mBAAmB,QACrB,cAAa,mBAAmB,QAAQ;AAE1C,kBAAc,MAAM;AACpB,kBAAc,UAAU;AACxB,WAAO,UAAU,4BAA4B,cAAc,KAAK,CAAC;AACjE,uBAAmB,UAAU,iBACrB,cAAc,OAAO,EAAA,IAE5B;;YAEM,SAAS,SAAS,SAAS,MACpC,KAAI,sBAAsB,EAAE;AAC1B,kBAAc,MAAM;AACpB,kBAAc,SAAS;UAClB;AACL,QAAI,OAAO,QACT,sBAAqB,OAAO,QAAQ;AAEtC,QAAI,mBAAmB,QACrB,cAAa,mBAAmB,QAAQ;AAE1C,kBAAc,KAAK;AACnB,kBAAc,UAAU;AACxB,WAAO,UAAU,4BAA4B,cAAc,MAAM,CAAC;AAClE,uBAAmB,UAAU,iBACrB,cAAc,SAAS,EAAA,IAE9B;;OAGH,eAAc,KAAK;IAErB;AAEF,WAAS,QAAQ,SAAS,iBAAiB;GACzC,YAAY;GACZ,iBAAiB,CAAC,QAAQ;GAC3B,CAAC;AAEF,eAAa;AACX,YAAS,YAAY;AACrB,OAAI,mBAAmB,QACrB,cAAa,mBAAmB,QAAQ;AAE1C,OAAI,OAAO,QACT,sBAAqB,OAAO,QAAQ;;IAGvC,EAAE,CAAC;AAEN,QAAO;EAAE;EAAY;EAAY;;;;AC/EnC,MAAM,qBAAqB,CAAA,GAAA,kBAAA,SAAOA,sBAAAA,aAAa;;;;;;;;;;;;;;YAcnC,EAAE,kBAAkB,YAAY;uBACrB,EAAE,oBAAoB,cAAc;;;;;;;AAQ3D,MAAM,cAAc,CAAA,GAAA,kBAAA,SAAOC,sBAAAA,MAAU;;;;;AAMrC,MAAM,mBAAmB,CAAA,GAAA,kBAAA,SAAOC,mBAAAA,OAAO;;aAE1BC,uBAAAA,QAAQ,GAAG;mBACLA,uBAAAA,QAAQ,GAAG;;;;AAK9B,MAAM,cAAc,CAAA,GAAA,kBAAA,SAAOC,cAAAA,OAAO,CAAC,MAAM;CACvC,SAAS;CACT,OAAO;CACP,SAASD,uBAAAA,QAAQ;CAClB,CAAC;aACWA,uBAAAA,QAAQ,GAAG,GAAGA,uBAAAA,QAAQ,GAAG;0BACZE,uBAAAA,MAAM,cAAc;;AAG9C,MAAa,eAAeC,sBAAAA;AAC5B,MAAa,eAAe;AAE5B,MAAa,cAAc,UAAuB;AAChD,QACE,iBAAA,GAAA,kBAAA,KAACC,sBAAAA,QAAD;EAAY,MAAK;EAAQ,OAAO;GAAE,KAAK;GAAS,SAAS;GAAY;YACnE,iBAAA,GAAA,kBAAA,KAAC,kBAAD;GAAkB,SAAQ;GAAO,OAAM;GAAO,MAAK;GAAK,GAAI;aAC1D,iBAAA,GAAA,kBAAA,KAACC,eAAAA,OAAD,EAAS,CAAA;GACQ,CAAA;EACR,CAAA;;AASjB,MAAM,cAAc,EAAE,UAAU,GAAG,YAA6B;AAC9D,QACE,iBAAA,GAAA,kBAAA,KAACC,aAAAA,SAAD;EAAS,MAAK;EAAK,OAAM;EAAU,IAAIC,sBAAAA;EAAa,MAAK;EAAQ,GAAI;EAClE;EACO,CAAA;;AAId,MAAM,aAAa,CAAA,GAAA,kBAAA,SAAOC,aAAAA,aAAK;;;;YAInB,EAAE,YAAY;AACtB,SAAQ,OAAR;EACE,KAAK,OACH,QAAO;EACT,KAAK,OACH,QAAO;EACT,QACE,QAAO;;EAEX;gBACY,EAAE,OAAO,YAAY;AACjC,SAAQ,OAAR;EACE,KAAK,OACH,QAAO;EACT,KAAK,OACH,QAAO;EACT,QACE,QAAO,MAAM,MAAM,MAAM;;EAE7B;;iBAEa,EAAE,YAAa,UAAU,SAAS,wBAAwB,OAAQ;;;;KAI9E,EAAE,YACH,UAAU,UACV;;IAEA;;;AAgDJ,MAAM,sBAAsB,CAAA,GAAA,kBAAA,SAAOA,aAAAA,aAAK,KAAK;;;;KAOxC,EAAE,iBACH,aACI,gBACA;oBACYR,uBAAAA,QAAQ,GAAG;qBACVA,uBAAAA,QAAQ,GAAG;IAC5B;KACC,EAAE,cAAc,WAAW,iBAAiB;;;;;AAMjD,MAAM,aAAA,GAAA,MAAA,YAAuD,SAAS,UACpE,EAAE,OAAO,UAAU,kBAAkB,MAAM,MAAM,QAAQ,MAAM,gBAAgB,OAAO,GAAG,SACzF,KACA;CACA,MAAM,CAAC,gBAAgB,sBAAA,GAAA,MAAA,UAA8B,EAAE;CAEvD,MAAM,gBACJ,iBAAA,GAAA,kBAAA,MAACC,cAAAA,QAAD;EACE,SAAQ;EACR,OAAM;EACN,SAASD,uBAAAA,QAAQ;EACjB,KAAK;GACH,cAAc,OAAO,SAAS,aAAaE,uBAAAA,MAAM;GACjD,SAAS,OACL,GAAGF,uBAAAA,QAAQ,GAAG,GAAGA,uBAAAA,QAAQ,GAAG,GAAGA,uBAAAA,QAAQ,GAAG,GAAGA,uBAAAA,QAAQ,OACrD,GAAGA,uBAAAA,QAAQ,GAAG,GAAGA,uBAAAA,QAAQ,GAAG,GAAGA,uBAAAA,QAAQ,GAAG,GAAGA,uBAAAA,QAAQ;GAC1D;YATH,CAWE,iBAAA,GAAA,kBAAA,KAAC,OAAD;GAAK,KAAK,EAAE,MAAM,GAAG;aAAG,QAAQ,iBAAA,GAAA,kBAAA,KAAC,YAAD,EAAA,UAAa,OAAmB,CAAA,GAAG;GAAW,CAAA,EAC7E,mBAAmB,iBAAA,GAAA,kBAAA,KAAC,YAAD,EAAY,cAAW,SAAU,CAAA,CAC9C;;CAGX,MAAM,cAAc,OAClB,iBAAA,GAAA,kBAAA,MAACS,cAAAA,OAAD,EAAA,UAAA,CACG,eACD,iBAAA,GAAA,kBAAA,KAACC,eAAAA,QAAD;EAAQ,KAAK,EAAE,aAAaV,uBAAAA,QAAQ,IAAI;YACrC,KAAK,KAAK,KAAK,QACd,iBAAA,GAAA,kBAAA,KAACW,eAAAA,KAAD;GAEE,UAAU,mBAAmB;GAC7B,IAAI,iBAAiB;GACrB,eAAe,kBAAkB,IAAI;GACrC,iBAAe,uBAAuB;aAErC,IAAI;GACD,EAPC,IAAI,KAOL,CACN;EACK,CAAA,CACH,EAAA,CAAA,GAER;AAGF,QACE,iBAAA,GAAA,kBAAA,KAACC,sBAAAA,QAAD;EAAQ,KAAK,EAAE,SAAS,QAAQ;EAAE,GAAI;EAAY;YAChD,iBAAA,GAAA,kBAAA,MAAC,YAAD;GAAY,UAAA;GAAS,OAAO;aAA5B;KACI,mBAAmB,UAAU;IAC9B,OACC,KAAK,KAAK,KAAK,QACb,iBAAA,GAAA,kBAAA,KAAC,qBAAD;KAEE,YAAY;KACZ,SAAS,mBAAmB;KAC5B,MAAM,OAAO,aAAa,KAAA;KAC1B,IAAI,uBAAuB,IAAI;KAC/B,mBAAiB,iBAAiB,IAAI;eAErC,IAAI;KACe,EARf,IAAI,KAQW,CACtB,GAEF,iBAAA,GAAA,kBAAA,KAAC,qBAAD;KACE,YAAY;KACZ,MAAM,OAAO,aAAa,KAAA;KAC1B,IAAI,uBAAuB;KAC3B,mBAAiB,iBAAiB;KAEjC;KACmB,CAAA;IAGvB,UAAU,iBAAA,GAAA,kBAAA,KAAC,aAAD,EAAA,UAAc,QAAqB,CAAA;IACnC;;EACN,CAAA;EAEX;AAiFF,MAAM,SAAS,EACb,UACA,SACA,cACA,gBAAgB,OAChB,OAAO,MACP,OACA,QACA,MACA,aACA,cACA,gBAAgB,OAChB,4BAA4B,OAC5B,WACgB;CAChB,MAAM,CAAC,iBAAiB,uBAAA,GAAA,MAAA,UAAsD,KAAK;CACnF,MAAM,EAAE,YAAY,iBAAiB,eAAe,oBAAoB;CACxE,MAAM,eACJ,eAAe,YAAA,MAEX,eAAe,YAAA,MAEb;CAER,MAAM,UACJ,iBAAA,GAAA,kBAAA,KAAC,WAAD;EACQ;EACC;EACC;EACF;EACS;EACf,GAAI;YAEH,OAAO,aAAa,aAAa,SAAS,EAAE,iBAAiB,CAAC,GAAG;EACxD,CAAA;AAMd,QACE,iBAAA,GAAA,kBAAA,MAACT,sBAAAA,eAAD;EAAe,QAAQ;EAAmB;EAA2B;YAArE,CAHqB,UAAU,iBAAA,GAAA,kBAAA,KAACU,sBAAAA,WAAD,EAAA,UAAY,SAAoB,CAAA,GAAG,MAKhE,iBAAA,GAAA,kBAAA,KAAC,oBAAD;GACE,aAAa;GACb,eAAe;GACA;GACY;GAC3B,+BAA+B,YAAY,CAAC,QAAQ,QAAQ,8BAA8B;aAE1F,iBAAA,GAAA,kBAAA,KAAC,aAAD;IAAa,KAAK;cAAqB;IAAsB,CAAA;GAC1C,CAAA,CACP;;;AAIpB,IAAA,gBAAe,OAAO,OAAO,OAAO,EAClC,OAAO,YACR,CAAC"}
1
+ {"version":3,"file":"index.cjs","names":["ModalOverlay","AriaModal","Button","Spacing","HStack","Color","DialogTrigger","AriaButton","XIcon","Heading","AriaHeading","TabBar","Dialog","Card","Stack","Tab","Pressable"],"sources":["../../../lib/useModalInsetRight.ts","../../../components/Modal/Modal.tsx"],"sourcesContent":["import { useEffect, useRef, useState } from 'react';\n\nconst CSS_VAR = '--modal-inset-right';\n\n// Match AgentsPanel sidebar transition durations\nexport const SIDEBAR_OPEN_TRANSITION_MS = 425;\nexport const SIDEBAR_CLOSE_TRANSITION_MS = 200;\n\nconst getModalInsetRight = () =>\n getComputedStyle(document.documentElement).getPropertyValue(CSS_VAR).trim() || '0px';\n\nconst prefersReducedMotion = () =>\n typeof window !== 'undefined' && window.matchMedia('(prefers-reduced-motion: reduce)').matches;\n\nexport type PanelInsetState = 'closed' | 'opening' | 'open' | 'closing';\n\nexport interface ModalInsetRight {\n /** Animated inset value — starts at 0px on panel open so CSS transition fires */\n insetRight: string;\n panelState: PanelInsetState;\n}\n\n/**\n * Returns the current value of --modal-inset-right from :root, reactively updating\n * as the agents side panel animates open/closed or is resized. Also tracks whether\n * the panel is opening, open, closing, or closed.\n *\n * panelState stays 'opening'/'closing' for the full transition duration so that\n * CSS transitions on consumers have time to animate.\n */\nconst useModalInsetRight = (): ModalInsetRight => {\n const [insetRight, setInsetRight] = useState(getModalInsetRight);\n const [panelState, setPanelState] = useState<PanelInsetState>(() =>\n getModalInsetRight() !== '0px' ? 'open' : 'closed',\n );\n const prevInsetRight = useRef(getModalInsetRight());\n const transitionTimerRef = useRef<ReturnType<typeof setTimeout> | null>(null);\n const rafRef = useRef<number | null>(null);\n\n useEffect(() => {\n const observer = new MutationObserver(() => {\n const prev = prevInsetRight.current;\n const next = getModalInsetRight();\n prevInsetRight.current = next;\n\n if (prev === '0px' && next !== '0px') {\n if (prefersReducedMotion()) {\n setInsetRight(next);\n setPanelState('open');\n } else {\n if (rafRef.current) {\n cancelAnimationFrame(rafRef.current);\n }\n if (transitionTimerRef.current) {\n clearTimeout(transitionTimerRef.current);\n }\n setInsetRight('0px');\n setPanelState('opening');\n rafRef.current = requestAnimationFrame(() => setInsetRight(next));\n transitionTimerRef.current = setTimeout(\n () => setPanelState('open'),\n SIDEBAR_OPEN_TRANSITION_MS,\n );\n }\n } else if (prev !== '0px' && next === '0px') {\n if (prefersReducedMotion()) {\n setInsetRight('0px');\n setPanelState('closed');\n } else {\n if (rafRef.current) {\n cancelAnimationFrame(rafRef.current);\n }\n if (transitionTimerRef.current) {\n clearTimeout(transitionTimerRef.current);\n }\n setInsetRight(prev);\n setPanelState('closing');\n rafRef.current = requestAnimationFrame(() => setInsetRight('0px'));\n transitionTimerRef.current = setTimeout(\n () => setPanelState('closed'),\n SIDEBAR_CLOSE_TRANSITION_MS,\n );\n }\n } else {\n setInsetRight(next);\n }\n });\n\n observer.observe(document.documentElement, {\n attributes: true,\n attributeFilter: ['style'],\n });\n\n return () => {\n observer.disconnect();\n if (transitionTimerRef.current) {\n clearTimeout(transitionTimerRef.current);\n }\n if (rafRef.current) {\n cancelAnimationFrame(rafRef.current);\n }\n };\n }, []);\n\n return { insetRight, panelState };\n};\n\nexport default useModalInsetRight;\n","import type { ComponentProps, ComponentPropsWithoutRef } from 'react';\nimport { forwardRef, type ReactNode, useEffect, useState } from 'react';\nimport {\n Button as AriaButton,\n Dialog,\n DialogTrigger,\n Heading as AriaHeading,\n Modal as AriaModal,\n ModalOverlay,\n Pressable,\n} from 'react-aria-components';\nimport styled from 'styled-components';\n\nimport Button, { type ButtonProps } from '@persona/design-system/components/Button';\nimport Card from '@persona/design-system/components/Card';\nimport Stack, { HStack } from '@persona/design-system/components/Stack';\nimport TabBar, { Tab } from '@persona/design-system/components/TabBar';\nimport { Heading } from '@persona/design-system/components/Text';\nimport { Color, Spacing } from '@persona/design-tokens';\nimport { XIcon } from '@persona/icons';\nimport useModalInsetRight, {\n SIDEBAR_CLOSE_TRANSITION_MS,\n SIDEBAR_OPEN_TRANSITION_MS,\n} from 'design-system/lib/useModalInsetRight';\n\nconst StyledModalOverlay = styled(ModalOverlay)<{ $insetRight: string; $transitionMs: number }>`\n @keyframes overlayShow {\n from {\n opacity: 0;\n }\n to {\n opacity: 1;\n }\n }\n background-color: rgba(0, 0, 0, 0.5);\n position: fixed;\n top: 0;\n bottom: 0;\n left: 0;\n right: ${({ $insetRight }) => $insetRight};\n transition: right ${({ $transitionMs }) => $transitionMs}ms ease-out;\n animation: overlayShow 150ms cubic-bezier(0.16, 1, 0.3, 1);\n z-index: 10000;\n display: flex;\n align-items: center;\n justify-content: center;\n`;\n\nconst StyledModal = styled(AriaModal)`\n z-index: 10001;\n outline: none;\n width: 100%;\n`;\n\nconst ModalCloseButton = styled(Button)`\n display: inline-flex;\n padding: ${Spacing[2]};\n border-radius: ${Spacing[1]};\n width: fit-content;\n min-width: unset;\n`;\n\nconst ModalFooter = styled(HStack).attrs({\n justify: 'flex-end',\n align: 'center',\n spacing: Spacing[2],\n})`\n padding: ${Spacing[3]} ${Spacing[4]};\n border-top: 1px solid ${Color.BorderDivider};\n`;\n\nconst ModalHeaderTitle = styled.div`\n flex: 1;\n`;\n\nexport const ModalTrigger = DialogTrigger;\nexport const ModalContent = StyledModal;\n\nexport const ModalClose = (props: ButtonProps) => {\n return (\n <AriaButton slot='close' style={{ all: 'unset', display: 'contents' }}>\n <ModalCloseButton variant='text' width='icon' size='md' {...props}>\n <XIcon />\n </ModalCloseButton>\n </AriaButton>\n );\n};\n\nexport interface ModalTitleProps {\n children: ReactNode;\n className?: string;\n}\n\n/** Props passed to modal content render functions. */\nexport interface ModalRenderProps {\n /** Element that floating content should use as its portal container. */\n portalContainer: HTMLDivElement | null;\n}\n\ntype ModalRenderable = ReactNode | ((props: ModalRenderProps) => ReactNode);\n\nconst ModalTitle = ({ children, ...props }: ModalTitleProps) => {\n return (\n <Heading size='sm' color='primary' as={AriaHeading} slot='title' {...props}>\n {children}\n </Heading>\n );\n};\n\nconst ModalHeader = styled(HStack)<{ $hasTabs: boolean }>`\n border-bottom: ${({ $hasTabs }) => ($hasTabs ? 'none' : `1px solid ${Color.BorderDivider}`)};\n padding: ${({ $hasTabs }) =>\n $hasTabs\n ? `${Spacing[3]} ${Spacing[2]} ${Spacing[1]} ${Spacing[4]}`\n : `${Spacing[3]} ${Spacing[2]} ${Spacing[3]} ${Spacing[4]}`};\n`;\n\nconst ModalTabBar = styled(TabBar)`\n padding-left: ${Spacing[4]};\n`;\n\nconst StyledDialog = styled(Dialog)`\n outline: none;\n`;\n\nconst StyledCard = styled(Card)<{ $size?: 'auto' | 'md' | 'lg' | 'xl' | 'full' }>`\n position: relative;\n left: 50%;\n transform: translateX(-50%);\n width: ${({ $size }) => {\n switch ($size) {\n case 'auto':\n return 'auto';\n case 'full':\n return 'calc(100% - 160px)';\n default:\n return '90vw';\n }\n }};\n max-width: ${({ theme, $size }) => {\n switch ($size) {\n case 'auto':\n return 'auto';\n case 'full':\n return 'calc(100% - 160px)';\n default:\n return theme.modal.width[$size];\n }\n }};\n /* TODO: Use breakpoints to make this responsive */\n max-height: ${({ $size }) => ($size === 'full' ? 'calc(100vh - 160px)' : '85vh')};\n display: flex;\n flex-direction: column;\n overflow: hidden;\n ${({ $size }) =>\n $size === 'full' &&\n `\n height: calc(100vh - 160px);\n `}\n margin-bottom: 0;\n`;\n\ninterface ModalCardProps extends ComponentPropsWithoutRef<typeof Dialog> {\n /**\n * Display X button to close popover\n */\n showCloseButton?: boolean;\n\n /**\n * Max width of the modal\n */\n size?: 'auto' | 'md' | 'lg' | 'xl' | 'full';\n\n /**\n * Footer content\n */\n footer?: ReactNode;\n\n /**\n * Renders tabs within the modal.\n * Adds a tab bar and will render the contents of the selected tab in a tabpanel.\n * Overrides `children`.\n * Tab contents can be render functions that receive the modal portal container.\n */\n tabs?: TabView[];\n\n /**\n * Title of the modal\n */\n title?: ReactNode;\n\n /**\n * Children content\n */\n children?: ReactNode;\n\n /**\n * When true, removes horizontal and vertical padding from the body. Defaults to false.\n */\n noBodyPadding?: boolean;\n\n /**\n * Additional props for the Dialog element\n */\n className?: string;\n}\n\ninterface ModalCardInternalProps extends ModalCardProps {\n portalContainer: HTMLDivElement | null;\n}\n\nconst StyledModalCardBody = styled(Card.Body)<{\n $noPadding?: boolean;\n $hidden?: boolean;\n}>`\n overflow-y: auto;\n flex: 1;\n min-height: 0;\n ${({ $noPadding }) =>\n $noPadding\n ? 'padding: 0;'\n : `\n padding-left: ${Spacing[4]};\n padding-right: ${Spacing[4]};\n `}\n ${({ $hidden }) => $hidden && 'display: none;'}\n`;\n\n/**\n * Card to be used in Modal contexts. Inherits props from react-aria-components Dialog.\n */\nconst ModalCard = forwardRef<HTMLDivElement, ModalCardInternalProps>(function ModalCard(\n {\n title,\n children,\n showCloseButton = true,\n size,\n footer,\n tabs,\n noBodyPadding = false,\n portalContainer,\n ...props\n },\n ref,\n) {\n const [selectedTabIdx, setSelectedTabIdx] = useState(0);\n const tabCount = tabs?.length ?? 0;\n\n useEffect(() => {\n setSelectedTabIdx(0);\n }, [tabCount]);\n\n const titleAndClose = (\n <ModalHeader justify='flex-start' align='center' spacing={Spacing[2]} $hasTabs={Boolean(tabs)}>\n <ModalHeaderTitle>{title ? <ModalTitle>{title}</ModalTitle> : null}</ModalHeaderTitle>\n {showCloseButton && <ModalClose aria-label='Close' />}\n </ModalHeader>\n );\n\n const modalHeader = tabs ? (\n <Stack>\n {titleAndClose}\n <ModalTabBar>\n {tabs.map((tab, idx) => (\n <Tab\n key={tab.name}\n selected={selectedTabIdx === idx}\n id={`pds-modal_tab-${idx}`}\n onClick={() => setSelectedTabIdx(idx)}\n aria-controls={`pds-modal_tab-panel-${idx}`}\n >\n {tab.name}\n </Tab>\n ))}\n </ModalTabBar>\n </Stack>\n ) : (\n titleAndClose\n );\n\n return (\n <StyledDialog {...props} ref={ref}>\n <StyledCard elevated $size={size}>\n {(showCloseButton || title) && modalHeader}\n {tabs ? (\n tabs.map((tab, idx) => (\n <StyledModalCardBody\n key={tab.name}\n $noPadding={noBodyPadding}\n $hidden={selectedTabIdx !== idx}\n role={tabs ? 'tabpanel' : undefined}\n id={`pds-modal_tab-panel-${tab.name}`}\n aria-labelledby={`pds-modal_tab-${tab.name}`}\n >\n {typeof tab.contents === 'function'\n ? tab.contents({ portalContainer })\n : tab.contents}\n </StyledModalCardBody>\n ))\n ) : (\n <StyledModalCardBody\n $noPadding={noBodyPadding}\n role={tabs ? 'tabpanel' : undefined}\n id={`pds-modal_tab-panel-${selectedTabIdx}`}\n aria-labelledby={`pds-modal_tab-${selectedTabIdx}`}\n >\n {children}\n </StyledModalCardBody>\n )}\n\n {footer && <ModalFooter>{footer}</ModalFooter>}\n </StyledCard>\n </StyledDialog>\n );\n});\n\ninterface TabView {\n name: string;\n contents: ModalRenderable;\n badge?: React.ReactElement;\n disabled?: boolean;\n 'data-tour-target'?: string;\n}\n\nexport interface ModalProps {\n /**\n * Title of the Card\n */\n title?: string;\n\n /**\n * Component to use as trigger. React Aria trigger props will be merged with this element.\n */\n trigger?: ComponentProps<typeof Pressable>['children'];\n\n /**\n * Props to apply to Modal.Card within\n */\n contentProps?: ModalCardProps;\n\n /**\n * Max width of the modal\n */\n size?: 'auto' | 'md' | 'lg' | 'xl' | 'full';\n\n /**\n * Footer section intended for actions.\n * You can pass in Buttons directly and they will render in a HStack.\n */\n footer?: ReactNode;\n\n /**\n * Renders tabs within the modal.\n * Adds a tab bar and will render the contents of the selected tab in a tabpanel.\n * Overrides `children`.\n */\n tabs?: TabView[];\n\n /**\n * Children content\n */\n children?: ModalRenderable;\n\n /**\n * When true, removes horizontal and vertical padding from the body. Defaults to false.\n * Can also be set via contentProps.noBodyPadding.\n */\n noBodyPadding?: boolean;\n\n /**\n * Controls whether the modal is open (controlled)\n */\n open?: boolean;\n\n /**\n * Default open state (uncontrolled)\n */\n defaultOpen?: boolean;\n\n /**\n * Handler called when open state changes\n */\n onOpenChange?: (isOpen: boolean) => void;\n\n /**\n * Whether the modal can be dismissed by clicking outside or pressing escape\n */\n isDismissable?: boolean;\n\n /**\n * Whether pressing the escape key closes the modal\n */\n isKeyboardDismissDisabled?: boolean;\n}\n\nconst Modal = ({\n children,\n trigger,\n contentProps,\n noBodyPadding = false,\n size = 'md',\n title,\n footer,\n tabs,\n defaultOpen,\n onOpenChange,\n isDismissable = false,\n isKeyboardDismissDisabled = false,\n open,\n}: ModalProps) => {\n const [portalContainer, setPortalContainer] = useState<HTMLDivElement | null>(null);\n const { insetRight: modalInsetRight, panelState } = useModalInsetRight();\n const transitionMs =\n panelState === 'opening'\n ? SIDEBAR_OPEN_TRANSITION_MS\n : panelState === 'closing'\n ? SIDEBAR_CLOSE_TRANSITION_MS\n : 0;\n\n const content = (\n <ModalCard\n size={size}\n title={title}\n footer={footer}\n tabs={tabs}\n noBodyPadding={noBodyPadding}\n {...contentProps}\n portalContainer={portalContainer}\n >\n {typeof children === 'function' ? children({ portalContainer }) : children}\n </ModalCard>\n );\n\n // Wrap trigger element to ensure it works with react-aria-components\n const wrappedTrigger = trigger ? <Pressable>{trigger}</Pressable> : null;\n\n return (\n <DialogTrigger isOpen={open} defaultOpen={defaultOpen} onOpenChange={onOpenChange}>\n {wrappedTrigger}\n <StyledModalOverlay\n $insetRight={modalInsetRight}\n $transitionMs={transitionMs}\n isDismissable={isDismissable}\n isKeyboardDismissDisabled={isKeyboardDismissDisabled}\n shouldCloseOnInteractOutside={(element) => !element.closest('[data-react-aria-top-layer]')}\n >\n <StyledModal ref={setPortalContainer}>{content}</StyledModal>\n </StyledModalOverlay>\n </DialogTrigger>\n );\n};\n\nexport default Object.assign(Modal, {\n Title: ModalTitle,\n});\n"],"mappings":";;;;;;;;;;;;;;;;;;AAEA,MAAM,UAAU;AAMhB,MAAM,2BACJ,iBAAiB,SAAS,gBAAgB,CAAC,iBAAiB,QAAQ,CAAC,MAAM,IAAI;AAEjF,MAAM,6BACJ,OAAO,WAAW,eAAe,OAAO,WAAW,mCAAmC,CAAC;;;;;;;;;AAkBzF,MAAM,2BAA4C;CAChD,MAAM,CAAC,YAAY,kBAAA,GAAA,MAAA,UAA0B,mBAAmB;CAChE,MAAM,CAAC,YAAY,kBAAA,GAAA,MAAA,gBACjB,oBAAoB,KAAK,QAAQ,SAAS,SAC3C;CACD,MAAM,kBAAA,GAAA,MAAA,QAAwB,oBAAoB,CAAC;CACnD,MAAM,sBAAA,GAAA,MAAA,QAAkE,KAAK;CAC7E,MAAM,UAAA,GAAA,MAAA,QAA+B,KAAK;AAE1C,EAAA,GAAA,MAAA,iBAAgB;EACd,MAAM,WAAW,IAAI,uBAAuB;GAC1C,MAAM,OAAO,eAAe;GAC5B,MAAM,OAAO,oBAAoB;AACjC,kBAAe,UAAU;AAEzB,OAAI,SAAS,SAAS,SAAS,MAC7B,KAAI,sBAAsB,EAAE;AAC1B,kBAAc,KAAK;AACnB,kBAAc,OAAO;UAChB;AACL,QAAI,OAAO,QACT,sBAAqB,OAAO,QAAQ;AAEtC,QAAI,mBAAmB,QACrB,cAAa,mBAAmB,QAAQ;AAE1C,kBAAc,MAAM;AACpB,kBAAc,UAAU;AACxB,WAAO,UAAU,4BAA4B,cAAc,KAAK,CAAC;AACjE,uBAAmB,UAAU,iBACrB,cAAc,OAAO,EAAA,IAE5B;;YAEM,SAAS,SAAS,SAAS,MACpC,KAAI,sBAAsB,EAAE;AAC1B,kBAAc,MAAM;AACpB,kBAAc,SAAS;UAClB;AACL,QAAI,OAAO,QACT,sBAAqB,OAAO,QAAQ;AAEtC,QAAI,mBAAmB,QACrB,cAAa,mBAAmB,QAAQ;AAE1C,kBAAc,KAAK;AACnB,kBAAc,UAAU;AACxB,WAAO,UAAU,4BAA4B,cAAc,MAAM,CAAC;AAClE,uBAAmB,UAAU,iBACrB,cAAc,SAAS,EAAA,IAE9B;;OAGH,eAAc,KAAK;IAErB;AAEF,WAAS,QAAQ,SAAS,iBAAiB;GACzC,YAAY;GACZ,iBAAiB,CAAC,QAAQ;GAC3B,CAAC;AAEF,eAAa;AACX,YAAS,YAAY;AACrB,OAAI,mBAAmB,QACrB,cAAa,mBAAmB,QAAQ;AAE1C,OAAI,OAAO,QACT,sBAAqB,OAAO,QAAQ;;IAGvC,EAAE,CAAC;AAEN,QAAO;EAAE;EAAY;EAAY;;;;AC/EnC,MAAM,qBAAqB,CAAA,GAAA,kBAAA,SAAOA,sBAAAA,aAAa;;;;;;;;;;;;;;YAcnC,EAAE,kBAAkB,YAAY;uBACrB,EAAE,oBAAoB,cAAc;;;;;;;AAQ3D,MAAM,cAAc,CAAA,GAAA,kBAAA,SAAOC,sBAAAA,MAAU;;;;;AAMrC,MAAM,mBAAmB,CAAA,GAAA,kBAAA,SAAOC,mBAAAA,OAAO;;aAE1BC,uBAAAA,QAAQ,GAAG;mBACLA,uBAAAA,QAAQ,GAAG;;;;AAK9B,MAAM,cAAc,CAAA,GAAA,kBAAA,SAAOC,cAAAA,OAAO,CAAC,MAAM;CACvC,SAAS;CACT,OAAO;CACP,SAASD,uBAAAA,QAAQ;CAClB,CAAC;aACWA,uBAAAA,QAAQ,GAAG,GAAGA,uBAAAA,QAAQ,GAAG;0BACZE,uBAAAA,MAAM,cAAc;;AAG9C,MAAM,mBAAmB,kBAAA,QAAO,GAAG;;;AAInC,MAAa,eAAeC,sBAAAA;AAC5B,MAAa,eAAe;AAE5B,MAAa,cAAc,UAAuB;AAChD,QACE,iBAAA,GAAA,kBAAA,KAACC,sBAAAA,QAAD;EAAY,MAAK;EAAQ,OAAO;GAAE,KAAK;GAAS,SAAS;GAAY;YACnE,iBAAA,GAAA,kBAAA,KAAC,kBAAD;GAAkB,SAAQ;GAAO,OAAM;GAAO,MAAK;GAAK,GAAI;aAC1D,iBAAA,GAAA,kBAAA,KAACC,eAAAA,OAAD,EAAS,CAAA;GACQ,CAAA;EACR,CAAA;;AAiBjB,MAAM,cAAc,EAAE,UAAU,GAAG,YAA6B;AAC9D,QACE,iBAAA,GAAA,kBAAA,KAACC,aAAAA,SAAD;EAAS,MAAK;EAAK,OAAM;EAAU,IAAIC,sBAAAA;EAAa,MAAK;EAAQ,GAAI;EAClE;EACO,CAAA;;AAId,MAAM,cAAc,CAAA,GAAA,kBAAA,SAAON,cAAAA,OAAO;oBACd,EAAE,eAAgB,WAAW,SAAS,aAAaC,uBAAAA,MAAM,gBAAiB;cAChF,EAAE,eACZ,WACI,GAAGF,uBAAAA,QAAQ,GAAG,GAAGA,uBAAAA,QAAQ,GAAG,GAAGA,uBAAAA,QAAQ,GAAG,GAAGA,uBAAAA,QAAQ,OACrD,GAAGA,uBAAAA,QAAQ,GAAG,GAAGA,uBAAAA,QAAQ,GAAG,GAAGA,uBAAAA,QAAQ,GAAG,GAAGA,uBAAAA,QAAQ,KAAK;;AAGlE,MAAM,cAAc,CAAA,GAAA,kBAAA,SAAOQ,eAAAA,OAAO;kBAChBR,uBAAAA,QAAQ,GAAG;;AAG7B,MAAM,eAAe,CAAA,GAAA,kBAAA,SAAOS,sBAAAA,OAAO;;;AAInC,MAAM,aAAa,CAAA,GAAA,kBAAA,SAAOC,aAAAA,aAAK;;;;YAInB,EAAE,YAAY;AACtB,SAAQ,OAAR;EACE,KAAK,OACH,QAAO;EACT,KAAK,OACH,QAAO;EACT,QACE,QAAO;;EAEX;gBACY,EAAE,OAAO,YAAY;AACjC,SAAQ,OAAR;EACE,KAAK,OACH,QAAO;EACT,KAAK,OACH,QAAO;EACT,QACE,QAAO,MAAM,MAAM,MAAM;;EAE7B;;iBAEa,EAAE,YAAa,UAAU,SAAS,wBAAwB,OAAQ;;;;KAI9E,EAAE,YACH,UAAU,UACV;;IAEA;;;AAqDJ,MAAM,sBAAsB,CAAA,GAAA,kBAAA,SAAOA,aAAAA,aAAK,KAAK;;;;KAOxC,EAAE,iBACH,aACI,gBACA;oBACYV,uBAAAA,QAAQ,GAAG;qBACVA,uBAAAA,QAAQ,GAAG;IAC5B;KACC,EAAE,cAAc,WAAW,iBAAiB;;;;;AAMjD,MAAM,aAAA,GAAA,MAAA,YAA+D,SAAS,UAC5E,EACE,OACA,UACA,kBAAkB,MAClB,MACA,QACA,MACA,gBAAgB,OAChB,iBACA,GAAG,SAEL,KACA;CACA,MAAM,CAAC,gBAAgB,sBAAA,GAAA,MAAA,UAA8B,EAAE;AAGvD,EAAA,GAAA,MAAA,iBAAgB;AACd,oBAAkB,EAAE;IACnB,CAJc,MAAM,UAAU,EAIpB,CAAC;CAEd,MAAM,gBACJ,iBAAA,GAAA,kBAAA,MAAC,aAAD;EAAa,SAAQ;EAAa,OAAM;EAAS,SAASA,uBAAAA,QAAQ;EAAI,UAAU,QAAQ,KAAK;YAA7F,CACE,iBAAA,GAAA,kBAAA,KAAC,kBAAD,EAAA,UAAmB,QAAQ,iBAAA,GAAA,kBAAA,KAAC,YAAD,EAAA,UAAa,OAAmB,CAAA,GAAG,MAAwB,CAAA,EACrF,mBAAmB,iBAAA,GAAA,kBAAA,KAAC,YAAD,EAAY,cAAW,SAAU,CAAA,CACzC;;CAGhB,MAAM,cAAc,OAClB,iBAAA,GAAA,kBAAA,MAACW,cAAAA,OAAD,EAAA,UAAA,CACG,eACD,iBAAA,GAAA,kBAAA,KAAC,aAAD,EAAA,UACG,KAAK,KAAK,KAAK,QACd,iBAAA,GAAA,kBAAA,KAACC,eAAAA,KAAD;EAEE,UAAU,mBAAmB;EAC7B,IAAI,iBAAiB;EACrB,eAAe,kBAAkB,IAAI;EACrC,iBAAe,uBAAuB;YAErC,IAAI;EACD,EAPC,IAAI,KAOL,CACN,EACU,CAAA,CACR,EAAA,CAAA,GAER;AAGF,QACE,iBAAA,GAAA,kBAAA,KAAC,cAAD;EAAc,GAAI;EAAY;YAC5B,iBAAA,GAAA,kBAAA,MAAC,YAAD;GAAY,UAAA;GAAS,OAAO;aAA5B;KACI,mBAAmB,UAAU;IAC9B,OACC,KAAK,KAAK,KAAK,QACb,iBAAA,GAAA,kBAAA,KAAC,qBAAD;KAEE,YAAY;KACZ,SAAS,mBAAmB;KAC5B,MAAM,OAAO,aAAa,KAAA;KAC1B,IAAI,uBAAuB,IAAI;KAC/B,mBAAiB,iBAAiB,IAAI;eAErC,OAAO,IAAI,aAAa,aACrB,IAAI,SAAS,EAAE,iBAAiB,CAAC,GACjC,IAAI;KACY,EAVf,IAAI,KAUW,CACtB,GAEF,iBAAA,GAAA,kBAAA,KAAC,qBAAD;KACE,YAAY;KACZ,MAAM,OAAO,aAAa,KAAA;KAC1B,IAAI,uBAAuB;KAC3B,mBAAiB,iBAAiB;KAEjC;KACmB,CAAA;IAGvB,UAAU,iBAAA,GAAA,kBAAA,KAAC,aAAD,EAAA,UAAc,QAAqB,CAAA;IACnC;;EACA,CAAA;EAEjB;AAiFF,MAAM,SAAS,EACb,UACA,SACA,cACA,gBAAgB,OAChB,OAAO,MACP,OACA,QACA,MACA,aACA,cACA,gBAAgB,OAChB,4BAA4B,OAC5B,WACgB;CAChB,MAAM,CAAC,iBAAiB,uBAAA,GAAA,MAAA,UAAsD,KAAK;CACnF,MAAM,EAAE,YAAY,iBAAiB,eAAe,oBAAoB;CACxE,MAAM,eACJ,eAAe,YAAA,MAEX,eAAe,YAAA,MAEb;CAER,MAAM,UACJ,iBAAA,GAAA,kBAAA,KAAC,WAAD;EACQ;EACC;EACC;EACF;EACS;EACf,GAAI;EACa;YAEhB,OAAO,aAAa,aAAa,SAAS,EAAE,iBAAiB,CAAC,GAAG;EACxD,CAAA;AAMd,QACE,iBAAA,GAAA,kBAAA,MAACT,sBAAAA,eAAD;EAAe,QAAQ;EAAmB;EAA2B;YAArE,CAHqB,UAAU,iBAAA,GAAA,kBAAA,KAACU,sBAAAA,WAAD,EAAA,UAAY,SAAoB,CAAA,GAAG,MAKhE,iBAAA,GAAA,kBAAA,KAAC,oBAAD;GACE,aAAa;GACb,eAAe;GACA;GACY;GAC3B,+BAA+B,YAAY,CAAC,QAAQ,QAAQ,8BAA8B;aAE1F,iBAAA,GAAA,kBAAA,KAAC,aAAD;IAAa,KAAK;cAAqB;IAAsB,CAAA;GAC1C,CAAA,CACP;;;AAIpB,IAAA,gBAAe,OAAO,OAAO,OAAO,EAClC,OAAO,YACR,CAAC"}
@@ -1,2 +1,2 @@
1
- import _default, { ModalClose, ModalContent, ModalProps, ModalTitleProps, ModalTrigger } from "../../Modal.cjs";
2
- export { ModalClose, ModalContent, ModalProps, ModalTitleProps, ModalTrigger, _default as default };
1
+ import _default, { ModalClose, ModalContent, ModalProps, ModalRenderProps, ModalTitleProps, ModalTrigger } from "../../Modal.cjs";
2
+ export { ModalClose, ModalContent, ModalProps, ModalRenderProps, ModalTitleProps, ModalTrigger, _default as default };
@@ -1,2 +1,2 @@
1
- import _default, { ModalClose, ModalContent, ModalProps, ModalTitleProps, ModalTrigger } from "../../Modal.mjs";
2
- export { ModalClose, ModalContent, ModalProps, ModalTitleProps, ModalTrigger, _default as default };
1
+ import _default, { ModalClose, ModalContent, ModalProps, ModalRenderProps, ModalTitleProps, ModalTrigger } from "../../Modal.mjs";
2
+ export { ModalClose, ModalContent, ModalProps, ModalRenderProps, ModalTitleProps, ModalTrigger, _default as default };
@@ -1,15 +1,13 @@
1
- import { n as Stack, t as HStack } from "../../Stack-hwgS2FU1.mjs";
2
- import "../Stack/index.mjs";
3
- import { t as Card_default } from "../../Card-DeJSt5ys.mjs";
4
- import { n as Heading$1 } from "../../Text-DOTYjIt0.mjs";
5
- import { n as Button$1 } from "../../IconButton-C28qxOdi.mjs";
6
- import "../Button/index.mjs";
7
- import { i as TabBar, r as Tab } from "../../TabBar-Bf89XksH.mjs";
1
+ import { t as Card_default } from "../../Card-CLTkZLKr.mjs";
2
+ import { n as Heading$1 } from "../../Text-hEoPeOc9.mjs";
3
+ import { n as Stack, t as HStack } from "../../Stack-ckRN7LrP.mjs";
4
+ import { n as Button$1 } from "../../IconButton-DC4rh6ow.mjs";
5
+ import { i as TabBar, r as Tab } from "../../TabBar-ByusqAXF.mjs";
8
6
  import { Color, Spacing } from "@persona/design-tokens";
9
7
  import styled from "styled-components";
10
- import { jsx, jsxs } from "react/jsx-runtime";
11
8
  import { forwardRef, useEffect, useRef, useState } from "react";
12
9
  import { Button, Dialog, DialogTrigger, Heading, Modal, ModalOverlay, Pressable } from "react-aria-components";
10
+ import { jsx, jsxs } from "react/jsx-runtime";
13
11
  import { XIcon } from "@persona/icons";
14
12
  //#region lib/useModalInsetRight.ts
15
13
  const CSS_VAR = "--modal-inset-right";
@@ -117,6 +115,9 @@ const ModalFooter = styled(HStack).attrs({
117
115
  padding: ${Spacing[3]} ${Spacing[4]};
118
116
  border-top: 1px solid ${Color.BorderDivider};
119
117
  `;
118
+ const ModalHeaderTitle = styled.div`
119
+ flex: 1;
120
+ `;
120
121
  const ModalTrigger = DialogTrigger;
121
122
  const ModalContent = StyledModal;
122
123
  const ModalClose = (props) => {
@@ -145,6 +146,16 @@ const ModalTitle = ({ children, ...props }) => {
145
146
  children
146
147
  });
147
148
  };
149
+ const ModalHeader = styled(HStack)`
150
+ border-bottom: ${({ $hasTabs }) => $hasTabs ? "none" : `1px solid ${Color.BorderDivider}`};
151
+ padding: ${({ $hasTabs }) => $hasTabs ? `${Spacing[3]} ${Spacing[2]} ${Spacing[1]} ${Spacing[4]}` : `${Spacing[3]} ${Spacing[2]} ${Spacing[3]} ${Spacing[4]}`};
152
+ `;
153
+ const ModalTabBar = styled(TabBar)`
154
+ padding-left: ${Spacing[4]};
155
+ `;
156
+ const StyledDialog = styled(Dialog)`
157
+ outline: none;
158
+ `;
148
159
  const StyledCard = styled(Card_default)`
149
160
  position: relative;
150
161
  left: 50%;
@@ -186,33 +197,26 @@ const StyledModalCardBody = styled(Card_default.Body)`
186
197
  /**
187
198
  * Card to be used in Modal contexts. Inherits props from react-aria-components Dialog.
188
199
  */
189
- const ModalCard = forwardRef(function ModalCard({ title, children, showCloseButton = true, size, footer, tabs, noBodyPadding = false, ...props }, ref) {
200
+ const ModalCard = forwardRef(function ModalCard({ title, children, showCloseButton = true, size, footer, tabs, noBodyPadding = false, portalContainer, ...props }, ref) {
190
201
  const [selectedTabIdx, setSelectedTabIdx] = useState(0);
191
- const titleAndClose = /* @__PURE__ */ jsxs(HStack, {
202
+ useEffect(() => {
203
+ setSelectedTabIdx(0);
204
+ }, [tabs?.length ?? 0]);
205
+ const titleAndClose = /* @__PURE__ */ jsxs(ModalHeader, {
192
206
  justify: "flex-start",
193
207
  align: "center",
194
208
  spacing: Spacing[2],
195
- css: {
196
- borderBottom: tabs ? "none" : `1px solid ${Color.BorderDivider}`,
197
- padding: tabs ? `${Spacing[3]} ${Spacing[2]} ${Spacing[1]} ${Spacing[4]}` : `${Spacing[3]} ${Spacing[2]} ${Spacing[3]} ${Spacing[4]}`
198
- },
199
- children: [/* @__PURE__ */ jsx("div", {
200
- css: { flex: 1 },
201
- children: title ? /* @__PURE__ */ jsx(ModalTitle, { children: title }) : null
202
- }), showCloseButton && /* @__PURE__ */ jsx(ModalClose, { "aria-label": "Close" })]
209
+ $hasTabs: Boolean(tabs),
210
+ children: [/* @__PURE__ */ jsx(ModalHeaderTitle, { children: title ? /* @__PURE__ */ jsx(ModalTitle, { children: title }) : null }), showCloseButton && /* @__PURE__ */ jsx(ModalClose, { "aria-label": "Close" })]
203
211
  });
204
- const modalHeader = tabs ? /* @__PURE__ */ jsxs(Stack, { children: [titleAndClose, /* @__PURE__ */ jsx(TabBar, {
205
- css: { paddingLeft: Spacing[4] },
206
- children: tabs.map((tab, idx) => /* @__PURE__ */ jsx(Tab, {
207
- selected: selectedTabIdx === idx,
208
- id: `pds-modal_tab-${idx}`,
209
- onClick: () => setSelectedTabIdx(idx),
210
- "aria-controls": `pds-modal_tab-panel-${idx}`,
211
- children: tab.name
212
- }, tab.name))
213
- })] }) : titleAndClose;
214
- return /* @__PURE__ */ jsx(Dialog, {
215
- css: { outline: "none" },
212
+ const modalHeader = tabs ? /* @__PURE__ */ jsxs(Stack, { children: [titleAndClose, /* @__PURE__ */ jsx(ModalTabBar, { children: tabs.map((tab, idx) => /* @__PURE__ */ jsx(Tab, {
213
+ selected: selectedTabIdx === idx,
214
+ id: `pds-modal_tab-${idx}`,
215
+ onClick: () => setSelectedTabIdx(idx),
216
+ "aria-controls": `pds-modal_tab-panel-${idx}`,
217
+ children: tab.name
218
+ }, tab.name)) })] }) : titleAndClose;
219
+ return /* @__PURE__ */ jsx(StyledDialog, {
216
220
  ...props,
217
221
  ref,
218
222
  children: /* @__PURE__ */ jsxs(StyledCard, {
@@ -226,7 +230,7 @@ const ModalCard = forwardRef(function ModalCard({ title, children, showCloseButt
226
230
  role: tabs ? "tabpanel" : void 0,
227
231
  id: `pds-modal_tab-panel-${tab.name}`,
228
232
  "aria-labelledby": `pds-modal_tab-${tab.name}`,
229
- children: tab.contents
233
+ children: typeof tab.contents === "function" ? tab.contents({ portalContainer }) : tab.contents
230
234
  }, tab.name)) : /* @__PURE__ */ jsx(StyledModalCardBody, {
231
235
  $noPadding: noBodyPadding,
232
236
  role: tabs ? "tabpanel" : void 0,
@@ -250,6 +254,7 @@ const Modal$1 = ({ children, trigger, contentProps, noBodyPadding = false, size
250
254
  tabs,
251
255
  noBodyPadding,
252
256
  ...contentProps,
257
+ portalContainer,
253
258
  children: typeof children === "function" ? children({ portalContainer }) : children
254
259
  });
255
260
  return /* @__PURE__ */ jsxs(DialogTrigger, {