@persona/design-system 0.10.3 → 0.10.5

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 (900) hide show
  1. package/CHANGELOG.md +28 -0
  2. package/dist/Accordion.d.mts +2 -2
  3. package/dist/AccordionItem.d.mts +2 -2
  4. package/dist/{Action-DT8WqfEg.d.mts → Action-Bmo8B-Q3.d.mts} +4 -4
  5. package/dist/Action.d.mts +1 -1
  6. package/dist/AdvancedFilterRuleRow.d.mts +3 -3
  7. package/dist/AdvancedFilterRulesPopover.d.mts +3 -3
  8. package/dist/ArrayValueControl.d.mts +2 -2
  9. package/dist/Attribute.d.mts +4 -4
  10. package/dist/AttributeGrid.d.mts +1 -1
  11. package/dist/{Badge-Bvn3afds.mjs → Badge-8YzapjWf.mjs} +4 -4
  12. package/dist/Badge-8YzapjWf.mjs.map +1 -0
  13. package/dist/Badge.d.mts +1 -1
  14. package/dist/Banner.d.mts +1 -1
  15. package/dist/BooleanValueControl.d.mts +2 -2
  16. package/dist/BottomPanel.d.mts +1 -1
  17. package/dist/{Breadcrumb-BDbY1Ffu.d.mts → Breadcrumb-DnY8n3EL.d.mts} +8 -3
  18. package/dist/Breadcrumb.d.mts +2 -2
  19. package/dist/{Breadcrumbs-C2ThOYJ-.d.mts → Breadcrumbs-DRu_JfdI.d.mts} +3 -3
  20. package/dist/{Breadcrumbs-CQUe9VTM.mjs → Breadcrumbs-Dft2TR4v.mjs} +61 -21
  21. package/dist/Breadcrumbs-Dft2TR4v.mjs.map +1 -0
  22. package/dist/Breadcrumbs.d.mts +1 -1
  23. package/dist/{Button-CyjqQa5v.d.mts → Button-Cg8KyT5M.d.mts} +5 -5
  24. package/dist/Button.d.mts +1 -1
  25. package/dist/ButtonGroup.d.mts +1 -1
  26. package/dist/{Calendar-CkjYG7Mj.d.mts → Calendar-D-6WOLJ1.d.mts} +2 -2
  27. package/dist/Calendar.d.mts +1 -1
  28. package/dist/CalendarBase.d.mts +2 -2
  29. package/dist/CalendarCell.d.mts +1 -1
  30. package/dist/CalendarGrid.d.mts +1 -1
  31. package/dist/{Card-CzRHVUFo.d.mts → Card-CfECLwQ6.d.mts} +5 -5
  32. package/dist/{Card-BXNxWX5C.mjs → Card-DuQHyroh.mjs} +7 -7
  33. package/dist/Card-DuQHyroh.mjs.map +1 -0
  34. package/dist/Card.d.mts +1 -1
  35. package/dist/Card2.d.mts +1 -1
  36. package/dist/CardGrouping.d.mts +3 -3
  37. package/dist/{CardV2-Dp4eHSE-.mjs → CardV2-BRJbRSts.mjs} +14 -14
  38. package/dist/CardV2-BRJbRSts.mjs.map +1 -0
  39. package/dist/{Checkbox-BaJ-dGdX.mjs → Checkbox-Dr4LMKHV.mjs} +7 -7
  40. package/dist/Checkbox-Dr4LMKHV.mjs.map +1 -0
  41. package/dist/{Checkbox-B2MZShdu.d.mts → Checkbox-ZywrdT_h.d.mts} +2 -2
  42. package/dist/Checkbox.d.mts +1 -1
  43. package/dist/{CheckboxGroupField-6E5o6bYi.d.mts → CheckboxGroupField-UHpA38U5.d.mts} +4 -4
  44. package/dist/CheckboxGroupField.d.mts +1 -1
  45. package/dist/ChoicesValueControl.d.mts +2 -2
  46. package/dist/CodeHighlight.d.mts +1 -1
  47. package/dist/{Combobox-DTeu9_RR.d.mts → Combobox-BXkcQ2aY.d.mts} +4 -4
  48. package/dist/{Combobox-CBM-oY-e.mjs → Combobox-DQxaOCLA.mjs} +18 -18
  49. package/dist/Combobox-DQxaOCLA.mjs.map +1 -0
  50. package/dist/Combobox.d.mts +2 -2
  51. package/dist/{ComboboxBase-BMBdtP2Z.d.mts → ComboboxBase-D2rDQHYZ.d.mts} +8 -8
  52. package/dist/ComboboxBase.d.mts +1 -1
  53. package/dist/{ComboboxMultiSelect-DY5bAep9.d.mts → ComboboxMultiSelect-CrvB6ap5.d.mts} +3 -3
  54. package/dist/ComboboxMultiSelect.d.mts +1 -1
  55. package/dist/{ComboboxSingleSelect-1NglA-u2.d.mts → ComboboxSingleSelect-Dp0iTdDO.d.mts} +5 -5
  56. package/dist/ComboboxSingleSelect.d.mts +1 -1
  57. package/dist/{CompactBar-D9egXqY_.d.mts → CompactBar-zYfXjFmn.d.mts} +4 -4
  58. package/dist/CompactBar.d.mts +1 -1
  59. package/dist/{ConfigFormGroup-CidT_cE9.mjs → ConfigFormGroup-BCTWCws5.mjs} +5 -5
  60. package/dist/ConfigFormGroup-BCTWCws5.mjs.map +1 -0
  61. package/dist/ConfigFormGroup.d.mts +1 -1
  62. package/dist/{ControlBar-RIz-xjxs.d.mts → ControlBar-kJ_eWf8f.d.mts} +3 -3
  63. package/dist/ControlBar.d.mts +1 -1
  64. package/dist/{DataTable-l1bFeLXL.d.mts → DataTable-C000E74h.d.mts} +7 -7
  65. package/dist/{DataTable-DQ8axNfo.mjs → DataTable-DEJHWrsy.mjs} +25 -25
  66. package/dist/DataTable-DEJHWrsy.mjs.map +1 -0
  67. package/dist/DataTable.d.mts +1 -1
  68. package/dist/{DateField-CwSq77Ri.d.mts → DateField-g7malFm-.d.mts} +3 -3
  69. package/dist/DateField.d.mts +1 -1
  70. package/dist/{DatePicker-DRhY_0st.d.mts → DatePicker-8kUpFFh8.d.mts} +3 -3
  71. package/dist/{DatePicker-D0cvVbzq.mjs → DatePicker-D-_ibUd1.mjs} +20 -20
  72. package/dist/DatePicker-D-_ibUd1.mjs.map +1 -0
  73. package/dist/DatePicker.d.mts +1 -1
  74. package/dist/{DateRangePicker-CLuBLF1q.d.mts → DateRangePicker-Nv4uNuIW.d.mts} +4 -4
  75. package/dist/DateRangePicker.d.mts +1 -1
  76. package/dist/DateRangeValueControl.d.mts +3 -3
  77. package/dist/DateValueControl.d.mts +2 -2
  78. package/dist/{DropdownButton-5oNcpsOq.mjs → DropdownButton-BiFRlSVD.mjs} +4 -4
  79. package/dist/DropdownButton-BiFRlSVD.mjs.map +1 -0
  80. package/dist/DropdownButton.d.mts +3 -3
  81. package/dist/{DropdownMenu-UIrnFxfG.d.mts → DropdownMenu-CQbS7ML5.d.mts} +3 -3
  82. package/dist/{DropdownMenu-CedsmO5h.mjs → DropdownMenu-Q8S-9rXm.mjs} +4 -4
  83. package/dist/DropdownMenu-Q8S-9rXm.mjs.map +1 -0
  84. package/dist/DropdownMenu.d.mts +1 -1
  85. package/dist/{ErrorProps-DH0fzeGf.d.mts → ErrorProps-Cy-APmdC.d.mts} +2 -2
  86. package/dist/ErrorProps.d.mts +1 -1
  87. package/dist/{FieldRegistry-B5E-GN91.d.mts → FieldRegistry-a44G08fS.d.mts} +3 -3
  88. package/dist/FieldRegistry.d.mts +1 -1
  89. package/dist/{FilterBar-BQWpTi2b.d.mts → FilterBar-BpMguIXl.d.mts} +5 -5
  90. package/dist/FilterBar.d.mts +1 -1
  91. package/dist/FilterPickerMenu.d.mts +3 -3
  92. package/dist/FilterPill.d.mts +2 -2
  93. package/dist/FilterPopover.d.mts +2 -2
  94. package/dist/FloatValueControl.d.mts +2 -2
  95. package/dist/{FloatingActionBar-CpvLefPm.d.mts → FloatingActionBar-DPA9v_yH.d.mts} +2 -2
  96. package/dist/FloatingActionBar.d.mts +1 -1
  97. package/dist/FloatingPanel.d.mts +1 -1
  98. package/dist/FloatingPanelContext.d.mts +1 -1
  99. package/dist/FloatingPanelRenderer.d.mts +1 -1
  100. package/dist/FloatingToolbar.d.mts +27 -0
  101. package/dist/{FormControl-C4CiA0H-.mjs → FormControl-BztNXLn6.mjs} +7 -7
  102. package/dist/FormControl-BztNXLn6.mjs.map +1 -0
  103. package/dist/{FormControl-DEG_0oXt.d.mts → FormControl-TkYMZeBd.d.mts} +3 -3
  104. package/dist/FormControl.d.mts +1 -1
  105. package/dist/FormControlLabel.d.mts +2 -2
  106. package/dist/{FormField-mLbXDJ9B.d.mts → FormField-PBo1ctY8.d.mts} +3 -3
  107. package/dist/{FormField-C0cd1zVd.mjs → FormField-g1zQFM9T.mjs} +22 -22
  108. package/dist/FormField-g1zQFM9T.mjs.map +1 -0
  109. package/dist/FormField.d.mts +1 -1
  110. package/dist/{Grid-DXVkhyNQ.mjs → Grid-BtTuj5mR.mjs} +5 -5
  111. package/dist/Grid-BtTuj5mR.mjs.map +1 -0
  112. package/dist/Grid.d.mts +1 -1
  113. package/dist/GridItem.d.mts +1 -1
  114. package/dist/{Header-ayDu4VWE.d.mts → Header-fwlbzxYx.d.mts} +2 -2
  115. package/dist/Header.d.mts +1 -1
  116. package/dist/{HelperTooltip-BB9Vznnx.d.mts → HelperTooltip-BLfPfJRN.d.mts} +3 -3
  117. package/dist/HelperTooltip.d.mts +1 -1
  118. package/dist/HighlightedText.d.mts +3 -3
  119. package/dist/{HoverCopyableField-D-BubaRd.mjs → HoverCopyableField-CW7Jxmni.mjs} +8 -8
  120. package/dist/HoverCopyableField-CW7Jxmni.mjs.map +1 -0
  121. package/dist/HoverCopyableField.d.mts +1 -1
  122. package/dist/{I18nContext-TXS9M8t5.d.mts → I18nContext-EPmbUprm.d.mts} +3 -3
  123. package/dist/I18nContext.d.mts +1 -1
  124. package/dist/{IconButton-HWx5Hlmi.mjs → IconButton-DftINsp7.mjs} +8 -8
  125. package/dist/IconButton-DftINsp7.mjs.map +1 -0
  126. package/dist/{IconButton-Bigvu1Q4.d.mts → IconButton-KhCwTwPx.d.mts} +3 -3
  127. package/dist/IconButton.d.mts +1 -1
  128. package/dist/ImageThumbnail.d.mts +1 -1
  129. package/dist/ImageTile.d.mts +2 -2
  130. package/dist/IndexTableLayout.d.mts +6 -6
  131. package/dist/InlineCombobox.d.mts +2 -2
  132. package/dist/InlineInput.d.mts +2 -2
  133. package/dist/{Input-Dap055xf.mjs → Input-DtO3qMnE.mjs} +7 -7
  134. package/dist/Input-DtO3qMnE.mjs.map +1 -0
  135. package/dist/{Input-Bg4bi6VZ.d.mts → Input-QNjbGo38.d.mts} +4 -4
  136. package/dist/Input.d.mts +1 -1
  137. package/dist/{InputProps-Bl-G826g.d.mts → InputProps-BT7-RfnD.d.mts} +3 -3
  138. package/dist/InputProps.d.mts +1 -1
  139. package/dist/{Inserter-BKVrJ4M5.d.mts → Inserter-BnQVEqHV.d.mts} +2 -2
  140. package/dist/Inserter.d.mts +1 -1
  141. package/dist/IntegerValueControl.d.mts +2 -2
  142. package/dist/LayoutLoadingShimmer.d.mts +1 -1
  143. package/dist/LayoutLoadingSpinner.d.mts +1 -1
  144. package/dist/{Link-Cf__H8gD.mjs → Link-DKYmdL9t.mjs} +4 -4
  145. package/dist/Link-DKYmdL9t.mjs.map +1 -0
  146. package/dist/Link.d.mts +2 -2
  147. package/dist/{ListBox-eoyBHtnJ.mjs → ListBox-CDG0EAPg.mjs} +14 -14
  148. package/dist/ListBox-CDG0EAPg.mjs.map +1 -0
  149. package/dist/{ListBox-cH0dfeLN.d.mts → ListBox-D9SYTzOd.d.mts} +4 -4
  150. package/dist/ListBox.d.mts +1 -1
  151. package/dist/{ListBoxField-DOpaE0q4.d.mts → ListBoxField-CtPDd_Aw.d.mts} +5 -5
  152. package/dist/ListBoxField.d.mts +1 -1
  153. package/dist/{LoadingShimmer-Bqjdut7i.mjs → LoadingShimmer-oPIv2ESr.mjs} +3 -3
  154. package/dist/LoadingShimmer-oPIv2ESr.mjs.map +1 -0
  155. package/dist/LoadingShimmer.d.mts +2 -2
  156. package/dist/{LogicRow-CaxsteGU.d.mts → LogicRow-BWIZ7262.d.mts} +4 -4
  157. package/dist/LogicRow.d.mts +1 -1
  158. package/dist/MaskedInput.d.mts +2 -2
  159. package/dist/MatchHighlight.d.mts +1 -1
  160. package/dist/{Menu-5VknNr1T.d.mts → Menu-DizjcMbO.d.mts} +5 -5
  161. package/dist/{Menu-Dw6Rcpk6.mjs → Menu-EIT_MwK6.mjs} +7 -9
  162. package/dist/Menu-EIT_MwK6.mjs.map +1 -0
  163. package/dist/Menu.d.mts +1 -1
  164. package/dist/{MiddleTruncatedText-DoTyfMem.mjs → MiddleTruncatedText-DicQsLDG.mjs} +5 -5
  165. package/dist/MiddleTruncatedText-DicQsLDG.mjs.map +1 -0
  166. package/dist/{Modal-kjUptzg1.mjs → Modal-92O_uW8H.mjs} +10 -10
  167. package/dist/Modal-92O_uW8H.mjs.map +1 -0
  168. package/dist/{Modal-BuxggahW.d.mts → Modal-Bhwq1bQJ.d.mts} +3 -3
  169. package/dist/Modal.d.mts +1 -1
  170. package/dist/{PageHeader-DJF7nxgN.mjs → PageHeader-BzvA_NNt.mjs} +13 -6
  171. package/dist/PageHeader-BzvA_NNt.mjs.map +1 -0
  172. package/dist/{PageHeader-Czj42pyK.d.mts → PageHeader-D2QLrS7-.d.mts} +3 -3
  173. package/dist/PageHeader.d.mts +1 -1
  174. package/dist/{PageLayout-fXJW7daI.mjs → PageLayout-DCe3F76N.mjs} +9 -9
  175. package/dist/PageLayout-DCe3F76N.mjs.map +1 -0
  176. package/dist/{PageLayout-TBemv7oL.d.mts → PageLayout-DfAbeFIh.d.mts} +2 -2
  177. package/dist/PageLayout.d.mts +1 -1
  178. package/dist/{PageLayoutFrame-DzwlkNZ1.d.mts → PageLayoutFrame-CQLREOBH.d.mts} +2 -2
  179. package/dist/PageLayoutFrame.d.mts +1 -1
  180. package/dist/{PageSelector-DXCeBUoU.d.mts → PageSelector-QaKYtk6y.d.mts} +4 -4
  181. package/dist/PageSelector.d.mts +1 -1
  182. package/dist/PageSizeSelector.d.mts +1 -1
  183. package/dist/{Pagination-COcFWlha.d.mts → Pagination-DeXorbSK.d.mts} +3 -3
  184. package/dist/{Pagination-DtK-jbEY.mjs → Pagination-dTsHLVAk.mjs} +13 -13
  185. package/dist/Pagination-dTsHLVAk.mjs.map +1 -0
  186. package/dist/Pagination.d.mts +1 -1
  187. package/dist/{Pii-DueIK287.mjs → Pii-Bvh_kfGN.mjs} +4 -4
  188. package/dist/Pii-Bvh_kfGN.mjs.map +1 -0
  189. package/dist/Pii.d.mts +1 -1
  190. package/dist/{PillShell-DqglbFHe.d.mts → PillShell-B35z66jZ.d.mts} +3 -3
  191. package/dist/PillShell.d.mts +1 -1
  192. package/dist/{Popover-BcII7usF.mjs → Popover-DordjYNM.mjs} +5 -5
  193. package/dist/Popover-DordjYNM.mjs.map +1 -0
  194. package/dist/Popover.d.mts +2 -2
  195. package/dist/ProgressBar.d.mts +2 -2
  196. package/dist/{ProgressIndicator-C5sbFQcd.d.mts → ProgressIndicator-COCwRZfK.d.mts} +2 -2
  197. package/dist/{ProgressIndicator-CM37EU1B.mjs → ProgressIndicator-ISARECzW.mjs} +3 -3
  198. package/dist/ProgressIndicator-ISARECzW.mjs.map +1 -0
  199. package/dist/ProgressIndicator.d.mts +1 -1
  200. package/dist/{PseudoClassProps-BFFh2-u8.d.mts → PseudoClassProps-D_f-JUT1.d.mts} +2 -2
  201. package/dist/PseudoClassProps.d.mts +1 -1
  202. package/dist/{Radio-BstZg3DI.mjs → Radio-BlEtetrr.mjs} +5 -5
  203. package/dist/Radio-BlEtetrr.mjs.map +1 -0
  204. package/dist/Radio.d.mts +1 -1
  205. package/dist/{RadioGroup-erKerwSt.mjs → RadioGroup-CMrXmmn4.mjs} +5 -5
  206. package/dist/RadioGroup-CMrXmmn4.mjs.map +1 -0
  207. package/dist/{RadioGroup-BxEmipHa.d.mts → RadioGroup-pyGpWhhj.d.mts} +2 -2
  208. package/dist/RadioGroup.d.mts +1 -1
  209. package/dist/{RangeCalendar-CK5ArbIQ.d.mts → RangeCalendar-BiugsdSP.d.mts} +3 -3
  210. package/dist/RangeCalendar.d.mts +1 -1
  211. package/dist/RangeCalendarPresets.d.mts +2 -2
  212. package/dist/ResizableVerticalPanel.d.mts +1 -1
  213. package/dist/ResizeHandle.d.mts +1 -1
  214. package/dist/RichTextEditor.d.mts +36 -0
  215. package/dist/RightPanel.d.mts +1 -1
  216. package/dist/RightPanelLoadingContent.d.mts +1 -1
  217. package/dist/RightPanelResizeHandle.d.mts +1 -1
  218. package/dist/{RouterContext-CoDbEb_X.d.mts → RouterContext-BUdfr1it.d.mts} +3 -3
  219. package/dist/{RouterContext-nPSb55p9.mjs → RouterContext-DAQHKOv6.mjs} +2 -2
  220. package/dist/RouterContext-DAQHKOv6.mjs.map +1 -0
  221. package/dist/RouterContext.d.mts +1 -1
  222. package/dist/{RouterLink-BnIEi8d4.d.mts → RouterLink-BKbfvJcM.d.mts} +3 -3
  223. package/dist/RouterLink.d.mts +1 -1
  224. package/dist/RuleEditorFields.d.mts +3 -3
  225. package/dist/RulesPill.d.mts +2 -2
  226. package/dist/{SearchInput-DLC7-A7K.d.mts → SearchInput-BejaiGsS.d.mts} +3 -3
  227. package/dist/SearchInput.d.mts +1 -1
  228. package/dist/Section.d.mts +1 -1
  229. package/dist/SectionHeading.d.mts +2 -2
  230. package/dist/{SegmentedControl-DQjIO6iX.mjs → SegmentedControl-D_DA-MU1.mjs} +5 -5
  231. package/dist/SegmentedControl-D_DA-MU1.mjs.map +1 -0
  232. package/dist/{SegmentedControl-xjU-2IsJ.d.mts → SegmentedControl-UV03Ujqn.d.mts} +2 -2
  233. package/dist/SegmentedControl.d.mts +1 -1
  234. package/dist/{Select-CG_Xkx0m.d.mts → Select-Chk5WB1F.d.mts} +4 -4
  235. package/dist/{Select-BJ9ACmRD.mjs → Select-DkUMz4LG.mjs} +10 -10
  236. package/dist/Select-DkUMz4LG.mjs.map +1 -0
  237. package/dist/Select.d.mts +1 -1
  238. package/dist/SelectionCard.d.mts +1 -1
  239. package/dist/SelectionCardGroup.d.mts +1 -1
  240. package/dist/{SingleColumnLayout-CBynMc76.d.mts → SingleColumnLayout-DBo35psH.d.mts} +3 -3
  241. package/dist/SingleColumnLayout.d.mts +1 -1
  242. package/dist/Slider.d.mts +1 -1
  243. package/dist/SliderRHF.d.mts +1 -1
  244. package/dist/SliderThumb.d.mts +1 -1
  245. package/dist/SmartTextInput.d.mts +7 -7
  246. package/dist/SmartTextInputCodeDialog.d.mts +1 -1
  247. package/dist/SmartTextInputField.d.mts +3 -3
  248. package/dist/SmartTextInputFunctionDialog.d.mts +5 -5
  249. package/dist/SmartTextInputListbox.d.mts +3 -3
  250. package/dist/SmartTextInputPopover.d.mts +2 -2
  251. package/dist/{Spacer-J_HuhxX2.mjs → Spacer-C4d9Aho6.mjs} +3 -3
  252. package/dist/Spacer-C4d9Aho6.mjs.map +1 -0
  253. package/dist/Spacer.d.mts +1 -1
  254. package/dist/{Spinner-7Camx1vs.mjs → Spinner-CXb-KUs1.mjs} +3 -3
  255. package/dist/Spinner-CXb-KUs1.mjs.map +1 -0
  256. package/dist/Spinner.d.mts +1 -1
  257. package/dist/{SplitColumnLayout-BVzGbEDC.d.mts → SplitColumnLayout-C6m_mwdf.d.mts} +3 -3
  258. package/dist/SplitColumnLayout.d.mts +1 -1
  259. package/dist/{Stack-BkC7FCdF.mjs → Stack-Bzom2BTR.mjs} +3 -3
  260. package/dist/Stack-Bzom2BTR.mjs.map +1 -0
  261. package/dist/{Stack-BZyboHQl.d.mts → Stack-DrYxBkiF.d.mts} +3 -3
  262. package/dist/Stack.d.mts +1 -1
  263. package/dist/{StatusIndicator-Bunn9YLV.mjs → StatusIndicator-pWl1-FLb.mjs} +3 -3
  264. package/dist/StatusIndicator-pWl1-FLb.mjs.map +1 -0
  265. package/dist/StatusIndicator.d.mts +1 -1
  266. package/dist/{Sticker-yhxtIYH8.mjs → Sticker-Bi_fezCO.mjs} +6 -6
  267. package/dist/Sticker-Bi_fezCO.mjs.map +1 -0
  268. package/dist/{Sticker-CsUSNIH-.d.mts → Sticker-sIBnBbHD.d.mts} +5 -5
  269. package/dist/Sticker.d.mts +1 -1
  270. package/dist/StringValueControl.d.mts +2 -2
  271. package/dist/StyledIconDrag.d.mts +1 -1
  272. package/dist/SwatchPicker.d.mts +1 -1
  273. package/dist/Tab.d.mts +2 -2
  274. package/dist/{TabBar-SX8E9-Bk.mjs → TabBar-DpXYsWgS.mjs} +9 -9
  275. package/dist/TabBar-DpXYsWgS.mjs.map +1 -0
  276. package/dist/TabBar.d.mts +1 -1
  277. package/dist/TabBarContext.d.mts +1 -1
  278. package/dist/TabBarIconButton.d.mts +1 -1
  279. package/dist/{Table-CadXF71E.d.mts → Table-BJfcRpMX.d.mts} +2 -2
  280. package/dist/{Table-BIDaC0uS.mjs → Table-DPi4Dt5H.mjs} +14 -14
  281. package/dist/Table-DPi4Dt5H.mjs.map +1 -0
  282. package/dist/Table.d.mts +1 -1
  283. package/dist/{TableBody-BKSHNSTo.d.mts → TableBody-CBz2PjA-.d.mts} +2 -2
  284. package/dist/TableBody.d.mts +1 -1
  285. package/dist/{TableBox-Bn_XZEYd.mjs → TableBox-BfSF36Gy.mjs} +23 -23
  286. package/dist/TableBox-BfSF36Gy.mjs.map +1 -0
  287. package/dist/TableBox.d.mts +2 -2
  288. package/dist/{TableBoxCell-v_ag22E0.d.mts → TableBoxCell-CwroLAWy.d.mts} +8 -8
  289. package/dist/TableBoxCell.d.mts +1 -1
  290. package/dist/{TableBoxField-BTpSGmgW.d.mts → TableBoxField-B7bHv7uV.d.mts} +6 -6
  291. package/dist/TableBoxField.d.mts +1 -1
  292. package/dist/{TableBoxRow-BBTztgTT.d.mts → TableBoxRow-Dke8B99J.d.mts} +4 -4
  293. package/dist/TableBoxRow.d.mts +1 -1
  294. package/dist/{TableBoxRowActions-B9QSVySz.d.mts → TableBoxRowActions-CkUDVERC.d.mts} +3 -3
  295. package/dist/TableBoxRowActions.d.mts +1 -1
  296. package/dist/TableBoxRowContext.d.mts +1 -1
  297. package/dist/{TableCell-4u5_BgTC.d.mts → TableCell-KHx5JlqZ.d.mts} +3 -3
  298. package/dist/TableCell.d.mts +1 -1
  299. package/dist/{TableControls-qxoq5abn.mjs → TableControls-BDXOQMr7.mjs} +69 -69
  300. package/dist/TableControls-BDXOQMr7.mjs.map +1 -0
  301. package/dist/{TableControls-wM35j3g4.d.mts → TableControls-DAjx1TYG.d.mts} +6 -6
  302. package/dist/TableControls.d.mts +1 -1
  303. package/dist/{TableControlsContext-rTYwRi5S.d.mts → TableControlsContext-BEIvE9qN.d.mts} +3 -3
  304. package/dist/TableControlsContext.d.mts +1 -1
  305. package/dist/{TableHead-BuCQeDAq.d.mts → TableHead-D5A3bOwt.d.mts} +2 -2
  306. package/dist/TableHead.d.mts +1 -1
  307. package/dist/{TableHeaderCell-DIcQlZps.d.mts → TableHeaderCell-BXgnxPpX.d.mts} +2 -2
  308. package/dist/TableHeaderCell.d.mts +1 -1
  309. package/dist/{TableLayout-ScEVdvvA.d.mts → TableLayout-Dy5ht8KO.d.mts} +2 -2
  310. package/dist/TableLayout.d.mts +1 -1
  311. package/dist/{TableRow-lCsvG0a-.d.mts → TableRow-C1iGbNjZ.d.mts} +3 -3
  312. package/dist/TableRow.d.mts +1 -1
  313. package/dist/TableTH.d.mts +1 -1
  314. package/dist/{TableViewConfigurationDropdown-Gut16-vY.d.mts → TableViewConfigurationDropdown-vYnU0d4k.d.mts} +3 -3
  315. package/dist/TableViewConfigurationDropdown.d.mts +1 -1
  316. package/dist/{TechnicalSticker-CALVwnrT.mjs → TechnicalSticker-B_JlBkXZ.mjs} +7 -7
  317. package/dist/TechnicalSticker-B_JlBkXZ.mjs.map +1 -0
  318. package/dist/TechnicalSticker.d.mts +1 -1
  319. package/dist/{Text-CSwFifQF.mjs → Text-D0vEReED.mjs} +3 -3
  320. package/dist/Text-D0vEReED.mjs.map +1 -0
  321. package/dist/{Text-RSzei6Se.d.mts → Text-SaoRBdB6.d.mts} +4 -4
  322. package/dist/Text.d.mts +1 -1
  323. package/dist/{TextArea-CaIEBz8d.mjs → TextArea-Dro-HH8O.mjs} +4 -4
  324. package/dist/TextArea-Dro-HH8O.mjs.map +1 -0
  325. package/dist/{TextArea-DFn4XuG-.d.mts → TextArea-gtSlghjy.d.mts} +3 -3
  326. package/dist/TextArea.d.mts +1 -1
  327. package/dist/{TextUnderlineTooltip-B0iYaPM1.d.mts → TextUnderlineTooltip-DV61avLv.d.mts} +3 -3
  328. package/dist/TextUnderlineTooltip.d.mts +1 -1
  329. package/dist/Tile.d.mts +2 -2
  330. package/dist/Toast.d.mts +2 -2
  331. package/dist/{Toggle-xtPgGaGD.d.mts → Toggle-BlvrM-Cw.d.mts} +2 -2
  332. package/dist/{Toggle-BsqSNYok.mjs → Toggle-D9MzTIZs.mjs} +7 -7
  333. package/dist/Toggle-D9MzTIZs.mjs.map +1 -0
  334. package/dist/Toggle.d.mts +1 -1
  335. package/dist/{Tooltip-Blfhi2gT.d.mts → Tooltip-CysnLwST.d.mts} +3 -3
  336. package/dist/{Tooltip-B-0VRuKT.mjs → Tooltip-YViXzMdm.mjs} +7 -7
  337. package/dist/Tooltip-YViXzMdm.mjs.map +1 -0
  338. package/dist/Tooltip.d.mts +1 -1
  339. package/dist/{TruncatedText-BMQmveJG.d.mts → TruncatedText-YcjNG-zP.d.mts} +2 -2
  340. package/dist/VersionHistory.d.mts +2 -2
  341. package/dist/{VersionHistoryItem-BExp7oSr.d.mts → VersionHistoryItem-Px3ylMMq.d.mts} +2 -2
  342. package/dist/VersionHistoryItem.d.mts +1 -1
  343. package/dist/WizardModal.d.mts +3 -3
  344. package/dist/{accordionTitleTypography-PMKnfoy0.d.mts → accordionTitleTypography-Dlo2YyWd.d.mts} +3 -3
  345. package/dist/accordionTitleTypography.d.mts +1 -1
  346. package/dist/assertNever.d.mts +1 -1
  347. package/dist/chainTypes-aF5rWav-.d.mts +17 -0
  348. package/dist/{clientFilterUtils-D0Bwapen.d.mts → clientFilterUtils-DYKgw2Yq.d.mts} +3 -3
  349. package/dist/clientFilterUtils.d.mts +1 -1
  350. package/dist/{codec-KAvQRjTW.d.mts → codec-D8ZKFLgs.d.mts} +3 -3
  351. package/dist/codec.d.mts +1 -1
  352. package/dist/{color-C5B1pN1D.d.mts → color-Cy_0z4IY.d.mts} +3 -3
  353. package/dist/common.d.mts +1 -1
  354. package/dist/complete-typography.d.mts +7 -0
  355. package/dist/components/Accordion/index.d.mts +1 -1
  356. package/dist/components/Accordion/index.mjs +8 -8
  357. package/dist/components/Accordion/index.mjs.map +1 -1
  358. package/dist/components/Attribute/index.mjs +8 -8
  359. package/dist/components/Attribute/index.mjs.map +1 -1
  360. package/dist/components/Badge/index.mjs +1 -1
  361. package/dist/components/Banner/index.mjs +3 -3
  362. package/dist/components/Banner/index.mjs.map +1 -1
  363. package/dist/components/BottomPanel/index.mjs +8 -8
  364. package/dist/components/BottomPanel/index.mjs.map +1 -1
  365. package/dist/components/Breadcrumbs/index.d.mts +1 -1
  366. package/dist/components/Breadcrumbs/index.mjs +1 -1
  367. package/dist/components/Button/index.d.mts +2 -2
  368. package/dist/components/Button/index.mjs +1 -1
  369. package/dist/components/ButtonGroup/index.mjs +5 -5
  370. package/dist/components/ButtonGroup/index.mjs.map +1 -1
  371. package/dist/components/Card/index.d.mts +2 -2
  372. package/dist/components/Card/index.mjs +1 -1
  373. package/dist/components/CardV2/index.d.mts +1 -1
  374. package/dist/components/CardV2/index.mjs +1 -1
  375. package/dist/components/Checkbox/index.d.mts +1 -1
  376. package/dist/components/Checkbox/index.mjs +1 -1
  377. package/dist/components/CodeHighlight/PrismWithLanguages.mjs +1 -1
  378. package/dist/components/CodeHighlight/PrismWithLanguages.mjs.map +1 -1
  379. package/dist/components/CodeHighlight/index.mjs +6 -6
  380. package/dist/components/CodeHighlight/index.mjs.map +1 -1
  381. package/dist/components/Combobox/index.d.mts +2 -2
  382. package/dist/components/Combobox/index.mjs +1 -1
  383. package/dist/components/ConfigFormGroup/index.mjs +2 -2
  384. package/dist/components/DataTable/TableControls/index.d.mts +21 -21
  385. package/dist/components/DataTable/TableControls/index.mjs +1 -1
  386. package/dist/components/DataTable/index.d.mts +8 -8
  387. package/dist/components/DataTable/index.mjs +1 -1
  388. package/dist/components/DataTable/types.d.mts +1 -1
  389. package/dist/components/DatePicker/index.d.mts +5 -5
  390. package/dist/components/DatePicker/index.mjs +1 -1
  391. package/dist/components/DropdownButton/index.mjs +1 -1
  392. package/dist/components/DropdownMenu/index.d.mts +1 -1
  393. package/dist/components/DropdownMenu/index.mjs +1 -1
  394. package/dist/components/FloatingPanel/index.mjs +9 -9
  395. package/dist/components/FloatingPanel/index.mjs.map +1 -1
  396. package/dist/components/FormControl/index.d.mts +2 -2
  397. package/dist/components/FormControl/index.mjs +2 -2
  398. package/dist/components/FormField/index.d.mts +5 -5
  399. package/dist/components/FormField/index.mjs +1 -1
  400. package/dist/components/Grid/index.mjs +1 -1
  401. package/dist/components/HoverCopyableField/index.mjs +1 -1
  402. package/dist/components/ImageTile/index.mjs +11 -11
  403. package/dist/components/ImageTile/index.mjs.map +1 -1
  404. package/dist/components/Input/index.d.mts +1 -1
  405. package/dist/components/Input/index.mjs +2 -2
  406. package/dist/components/Input/index.mjs.map +1 -1
  407. package/dist/components/Link/index.mjs +1 -1
  408. package/dist/components/ListBox/index.d.mts +3 -3
  409. package/dist/components/ListBox/index.mjs +1 -1
  410. package/dist/components/LoadingShimmer/index.mjs +1 -1
  411. package/dist/components/MaskedInput/index.mjs +3 -3
  412. package/dist/components/MaskedInput/index.mjs.map +1 -1
  413. package/dist/components/MatchHighlight/index.mjs +2 -2
  414. package/dist/components/MatchHighlight/index.mjs.map +1 -1
  415. package/dist/components/Menu/index.d.mts +1 -1
  416. package/dist/components/Menu/index.mjs +1 -1
  417. package/dist/components/Modal/index.d.mts +1 -1
  418. package/dist/components/Modal/index.mjs +1 -1
  419. package/dist/components/PageHeader/index.d.mts +1 -1
  420. package/dist/components/PageHeader/index.mjs +1 -1
  421. package/dist/components/Pagination/index.d.mts +3 -3
  422. package/dist/components/Pagination/index.mjs +1 -1
  423. package/dist/components/Pii/index.mjs +1 -1
  424. package/dist/components/Popover/index.mjs +1 -1
  425. package/dist/components/ProgressBar/index.mjs +4 -4
  426. package/dist/components/ProgressBar/index.mjs.map +1 -1
  427. package/dist/components/ProgressIndicator/index.d.mts +1 -1
  428. package/dist/components/ProgressIndicator/index.mjs +1 -1
  429. package/dist/components/Radio/index.mjs +1 -1
  430. package/dist/components/RadioGroup/index.d.mts +1 -1
  431. package/dist/components/RadioGroup/index.mjs +1 -1
  432. package/dist/components/RichTextEditor/index.d.mts +5 -0
  433. package/dist/components/RichTextEditor/index.mjs +1050 -0
  434. package/dist/components/RichTextEditor/index.mjs.map +1 -0
  435. package/dist/components/RightPanel/index.mjs +9 -9
  436. package/dist/components/RightPanel/index.mjs.map +1 -1
  437. package/dist/components/SegmentedControl/index.d.mts +1 -1
  438. package/dist/components/SegmentedControl/index.mjs +1 -1
  439. package/dist/components/Select/index.d.mts +1 -1
  440. package/dist/components/Select/index.mjs +1 -1
  441. package/dist/components/SelectionCard/index.mjs +9 -9
  442. package/dist/components/SelectionCard/index.mjs.map +1 -1
  443. package/dist/components/Slider/index.mjs +6 -6
  444. package/dist/components/Slider/index.mjs.map +1 -1
  445. package/dist/components/SmartTextInput/PillType.d.mts +1 -1
  446. package/dist/components/SmartTextInput/PillType.mjs +2 -2
  447. package/dist/components/SmartTextInput/PillType.mjs.map +1 -1
  448. package/dist/components/SmartTextInput/index.d.mts +2 -2
  449. package/dist/components/SmartTextInput/index.mjs +25 -25
  450. package/dist/components/SmartTextInput/index.mjs.map +1 -1
  451. package/dist/components/SmartTextInput/parser/method-chain/parser.mjs +1 -1
  452. package/dist/components/SmartTextInput/parser/method-chain/types.d.mts +1 -1
  453. package/dist/components/SmartTextInput/parser/method-chain/types.mjs +1 -1
  454. package/dist/components/SmartTextInput/parser/method-chain/types.mjs.map +1 -1
  455. package/dist/components/SmartTextInput/parser/smart-text/parser.mjs +2 -2
  456. package/dist/components/SmartTextInput/parser/smart-text/parser.mjs.map +1 -1
  457. package/dist/components/SmartTextInput/parser/smart-text/types.d.mts +2 -2
  458. package/dist/components/SmartTextInput/parser/smart-text/types.mjs +1 -1
  459. package/dist/components/SmartTextInput/parser/smart-text/types.mjs.map +1 -1
  460. package/dist/components/Spacer/index.mjs +1 -1
  461. package/dist/components/Spinner/index.mjs +1 -1
  462. package/dist/components/Stack/index.d.mts +1 -1
  463. package/dist/components/Stack/index.mjs +1 -1
  464. package/dist/components/StatusIndicator/index.mjs +1 -1
  465. package/dist/components/Sticker/index.d.mts +1 -1
  466. package/dist/components/Sticker/index.mjs +1 -1
  467. package/dist/components/SwatchPicker/index.mjs +2 -2
  468. package/dist/components/SwatchPicker/index.mjs.map +1 -1
  469. package/dist/components/TabBar/index.mjs +1 -1
  470. package/dist/components/Table/index.d.mts +8 -8
  471. package/dist/components/Table/index.mjs +1 -1
  472. package/dist/components/TableBox/index.d.mts +2 -2
  473. package/dist/components/TableBox/index.mjs +1 -1
  474. package/dist/components/TechnicalSticker/index.mjs +1 -1
  475. package/dist/components/Text/index.d.mts +1 -1
  476. package/dist/components/Text/index.mjs +1 -1
  477. package/dist/components/TextArea/index.d.mts +1 -1
  478. package/dist/components/TextArea/index.mjs +1 -1
  479. package/dist/components/Tile/index.mjs +6 -6
  480. package/dist/components/Tile/index.mjs.map +1 -1
  481. package/dist/components/Toast/index.mjs +3 -3
  482. package/dist/components/Toast/index.mjs.map +1 -1
  483. package/dist/components/Toggle/index.d.mts +1 -1
  484. package/dist/components/Toggle/index.mjs +1 -1
  485. package/dist/components/Tooltip/index.d.mts +3 -3
  486. package/dist/components/Tooltip/index.mjs +1 -1
  487. package/dist/components/VersionHistory/index.d.mts +1 -1
  488. package/dist/components/VersionHistory/index.mjs +12 -12
  489. package/dist/components/VersionHistory/index.mjs.map +1 -1
  490. package/dist/compound-expression.d.mts +2 -2
  491. package/dist/{constants-4rSh8e5G.d.mts → constants-CW1DRgwi.d.mts} +2 -2
  492. package/dist/{constants-BaMvTUbS.d.mts → constants-D1hoZ5LO.d.mts} +2 -2
  493. package/dist/constants.d.mts +1 -1
  494. package/dist/constants2.d.mts +1 -1
  495. package/dist/containers.d.mts +1 -1
  496. package/dist/createPath-C4ZFkt93.d.mts +7 -0
  497. package/dist/createPath.d.mts +1 -1
  498. package/dist/{date-filter-D0ys8s0D.mjs → date-filter-Bj4XkwkT.mjs} +3 -3
  499. package/dist/date-filter-Bj4XkwkT.mjs.map +1 -0
  500. package/dist/{date-range-rule-value-Dk6pZHnD.d.mts → date-range-rule-value-CrVBpQcf.d.mts} +3 -3
  501. package/dist/date-range-rule-value.d.mts +1 -1
  502. package/dist/{date-rule-intent-C5C8HB1v.d.mts → date-rule-intent-C1aptAoX.d.mts} +4 -4
  503. package/dist/date-rule-intent.d.mts +1 -1
  504. package/dist/display.d.mts +3 -3
  505. package/dist/fieldPickerOptions.d.mts +3 -3
  506. package/dist/{filter-size-context-5xQ3ycnC.d.mts → filter-size-context-CbT4pi3S.d.mts} +3 -3
  507. package/dist/filter-size-context.d.mts +1 -1
  508. package/dist/{filters-C8YLLbH3.d.mts → filters-DjXkx8GJ.d.mts} +3 -3
  509. package/dist/filters.d.mts +1 -1
  510. package/dist/format-date-value.d.mts +1 -1
  511. package/dist/{formatDateTime-Dd9inM5H.d.mts → formatDateTime-BikGGrvq.d.mts} +2 -2
  512. package/dist/formatDateTime.d.mts +1 -1
  513. package/dist/{helpers-DvqDI2e5.d.mts → helpers-CdxEL7ri.d.mts} +5 -5
  514. package/dist/helpers.d.mts +1 -1
  515. package/dist/{i18n-BscB9FUy.mjs → i18n-BLyCaSdJ.mjs} +4 -4
  516. package/dist/i18n-BLyCaSdJ.mjs.map +1 -0
  517. package/dist/index-BWAycP6L.d.mts +4025 -0
  518. package/dist/{index-EGvEhP1j.d.mts → index-D2YFHdsf.d.mts} +3 -3
  519. package/dist/{index-CNDe1Lij.d.mts → index-DX5Zu9JU.d.mts} +4 -4
  520. package/dist/index-FgIOTuJ4.d.mts +7 -0
  521. package/dist/index.d.mts +1 -2
  522. package/dist/index2.d.mts +2 -2
  523. package/dist/index3.d.mts +2 -4
  524. package/dist/index4.d.mts +4 -2
  525. package/dist/index5.d.mts +2 -15
  526. package/dist/index6.d.mts +15 -1
  527. package/dist/{input-CKhARTlS.d.mts → input-gtTnb9M8.d.mts} +4 -4
  528. package/dist/{inputFields-BZcm1UV5.d.mts → inputFields-CYttsz5M.d.mts} +12 -12
  529. package/dist/inputFields.d.mts +1 -1
  530. package/dist/{intersperse-ObkRVOag.mjs → intersperse-DvJsBw5D.mjs} +2 -2
  531. package/dist/intersperse-DvJsBw5D.mjs.map +1 -0
  532. package/dist/intersperse.d.mts +1 -1
  533. package/dist/{jsonSchema-DmOA0Lnu.d.mts → jsonSchema-DUkfAip_.d.mts} +3 -3
  534. package/dist/lib/ConfigContext.d.mts +1 -1
  535. package/dist/lib/ConfigContext.mjs +1 -1
  536. package/dist/lib/ConfigContext.mjs.map +1 -1
  537. package/dist/lib/GlobalStyles.d.mts +1 -1
  538. package/dist/lib/GlobalStyles.mjs +2 -2
  539. package/dist/lib/GlobalStyles.mjs.map +1 -1
  540. package/dist/lib/HeadlessAriaButton.d.mts +1 -1
  541. package/dist/lib/HeadlessAriaButton.mjs +2 -2
  542. package/dist/lib/HeadlessAriaButton.mjs.map +1 -1
  543. package/dist/lib/MiddleTruncatedText.d.mts +1 -1
  544. package/dist/lib/MiddleTruncatedText.mjs +1 -1
  545. package/dist/lib/PDSProvider.d.mts +4 -4
  546. package/dist/lib/PDSProvider.mjs +4 -4
  547. package/dist/lib/PDSProvider.mjs.map +1 -1
  548. package/dist/lib/TruncatedText.d.mts +1 -1
  549. package/dist/lib/TruncatedText.mjs +2 -2
  550. package/dist/lib/TruncatedText.mjs.map +1 -1
  551. package/dist/lib/TruncatedTextWithTooltip.d.mts +2 -2
  552. package/dist/lib/TruncatedTextWithTooltip.mjs +2 -2
  553. package/dist/lib/TruncatedTextWithTooltip.mjs.map +1 -1
  554. package/dist/lib/chainTypes.d.mts +1 -1
  555. package/dist/lib/color.d.mts +1 -1
  556. package/dist/lib/color.mjs +1 -1
  557. package/dist/lib/color.mjs.map +1 -1
  558. package/dist/lib/colorMode.d.mts +3 -3
  559. package/dist/lib/colorMode.mjs +2 -2
  560. package/dist/lib/colorMode.mjs.map +1 -1
  561. package/dist/lib/comboboxHelper.d.mts +1 -1
  562. package/dist/lib/comboboxHelper.mjs +1 -1
  563. package/dist/lib/comboboxHelper.mjs.map +1 -1
  564. package/dist/lib/copyTextToClipboard.d.mts +1 -1
  565. package/dist/lib/copyTextToClipboard.mjs +1 -1
  566. package/dist/lib/copyTextToClipboard.mjs.map +1 -1
  567. package/dist/lib/customFunctionSchema.d.mts +2 -2
  568. package/dist/lib/customFunctionSchema.mjs +1 -1
  569. package/dist/lib/customFunctionSchema.mjs.map +1 -1
  570. package/dist/lib/date-filter/index.d.mts +2 -2
  571. package/dist/lib/date-filter/index.mjs +1 -1
  572. package/dist/lib/datePickerHelper.d.mts +1 -1
  573. package/dist/lib/datePickerHelper.mjs +1 -1
  574. package/dist/lib/datePickerHelper.mjs.map +1 -1
  575. package/dist/lib/embeddedSurfaceProtocol.d.mts +1 -1
  576. package/dist/lib/embeddedSurfaceProtocol.mjs +1 -1
  577. package/dist/lib/embeddedSurfaceProtocol.mjs.map +1 -1
  578. package/dist/lib/embeddedSurfaceRegistry.d.mts +1 -1
  579. package/dist/lib/embeddedSurfaceRegistry.mjs +1 -1
  580. package/dist/lib/embeddedSurfaceRegistry.mjs.map +1 -1
  581. package/dist/lib/errorReporter.d.mts +1 -1
  582. package/dist/lib/errorReporter.mjs +1 -1
  583. package/dist/lib/errorReporter.mjs.map +1 -1
  584. package/dist/lib/i18n/index.d.mts +3 -3
  585. package/dist/lib/i18n/index.mjs +1 -1
  586. package/dist/lib/jsonSchema.d.mts +1 -1
  587. package/dist/lib/jsonSchema.mjs +1 -1
  588. package/dist/lib/jsonSchema.mjs.map +1 -1
  589. package/dist/lib/jsonSchemaType.d.mts +2 -2
  590. package/dist/lib/jsonSchemaType.mjs +1 -1
  591. package/dist/lib/jsonSchemaType.mjs.map +1 -1
  592. package/dist/lib/letPointerDownReachDocument.d.mts +1 -1
  593. package/dist/lib/letPointerDownReachDocument.mjs +1 -1
  594. package/dist/lib/letPointerDownReachDocument.mjs.map +1 -1
  595. package/dist/lib/message.d.mts +1 -1
  596. package/dist/lib/message.mjs +1 -1
  597. package/dist/lib/message.mjs.map +1 -1
  598. package/dist/lib/methodChain.d.mts +2 -2
  599. package/dist/lib/methodChain.mjs +1 -1
  600. package/dist/lib/methodChainNormalize.d.mts +3 -3
  601. package/dist/lib/methodChainNormalize.mjs +1 -1
  602. package/dist/lib/methodChainNormalize.mjs.map +1 -1
  603. package/dist/lib/methodChainTypes.d.mts +1 -1
  604. package/dist/lib/objectSchemaTypes.d.mts +1 -1
  605. package/dist/lib/platformObject.d.mts +2 -2
  606. package/dist/lib/platformObject.mjs +1 -1
  607. package/dist/lib/platformObject.mjs.map +1 -1
  608. package/dist/lib/pseudoClass.d.mts +2 -2
  609. package/dist/lib/pseudoClass.mjs +1 -1
  610. package/dist/lib/pseudoClass.mjs.map +1 -1
  611. package/dist/lib/reorderItems.d.mts +1 -1
  612. package/dist/lib/reorderItems.mjs +1 -1
  613. package/dist/lib/reorderItems.mjs.map +1 -1
  614. package/dist/lib/router/adapters/reactRouter.d.mts +2 -2
  615. package/dist/lib/router/adapters/reactRouter.mjs +2 -2
  616. package/dist/lib/router/adapters/reactRouter.mjs.map +1 -1
  617. package/dist/lib/router/adapters/tanstack.d.mts +2 -2
  618. package/dist/lib/router/adapters/tanstack.mjs +2 -2
  619. package/dist/lib/router/adapters/tanstack.mjs.map +1 -1
  620. package/dist/lib/router/index.d.mts +5 -5
  621. package/dist/lib/router/index.mjs +2 -2
  622. package/dist/lib/schemaOptions.d.mts +1 -1
  623. package/dist/lib/schemaOptions.mjs +2 -2
  624. package/dist/lib/schemaOptions.mjs.map +1 -1
  625. package/dist/lib/selectHelper.d.mts +1 -1
  626. package/dist/lib/selectHelper.mjs +1 -1
  627. package/dist/lib/selectHelper.mjs.map +1 -1
  628. package/dist/lib/semanticColor.d.mts +1 -1
  629. package/dist/lib/semanticColor.mjs +1 -1
  630. package/dist/lib/semanticColor.mjs.map +1 -1
  631. package/dist/lib/snakifyPath.d.mts +1 -1
  632. package/dist/lib/snakifyPath.mjs +1 -1
  633. package/dist/lib/snakifyPath.mjs.map +1 -1
  634. package/dist/lib/useChain.d.mts +1 -1
  635. package/dist/lib/useChain.mjs +1 -1
  636. package/dist/lib/useControlled.d.mts +1 -1
  637. package/dist/lib/useControlled.mjs +1 -1
  638. package/dist/lib/useControlled.mjs.map +1 -1
  639. package/dist/lib/useEmbeddedSurface.d.mts +1 -1
  640. package/dist/lib/useEmbeddedSurface.mjs +1 -1
  641. package/dist/lib/useEmbeddedSurface.mjs.map +1 -1
  642. package/dist/lib/useIsOverflow.d.mts +1 -1
  643. package/dist/lib/useIsOverflow.mjs +1 -1
  644. package/dist/lib/useIsOverflow.mjs.map +1 -1
  645. package/dist/lib/useModalInsetRight.d.mts +1 -1
  646. package/dist/lib/useModalInsetRight.mjs +1 -1
  647. package/dist/lib/useModalInsetRight.mjs.map +1 -1
  648. package/dist/lib/useOutsideClick.d.mts +1 -1
  649. package/dist/lib/useOutsideClick.mjs +1 -1
  650. package/dist/lib/useOutsideClick.mjs.map +1 -1
  651. package/dist/lib/useResizablePanel.d.mts +1 -1
  652. package/dist/lib/useResizablePanel.mjs +1 -1
  653. package/dist/lib/useResizablePanel.mjs.map +1 -1
  654. package/dist/lib/useScrollOverflow.d.mts +1 -1
  655. package/dist/lib/useScrollOverflow.mjs +1 -1
  656. package/dist/lib/useScrollOverflow.mjs.map +1 -1
  657. package/dist/lib/zindex.d.mts +1 -1
  658. package/dist/lib/zindex.mjs +1 -1
  659. package/dist/lib/zindex.mjs.map +1 -1
  660. package/dist/lint/index.d.mts +11 -0
  661. package/dist/lint/index.mjs +399 -0
  662. package/dist/lint/index.mjs.map +1 -0
  663. package/dist/lint/recommended.json +10 -0
  664. package/dist/{listbox-options-DCmqWWgy.d.mts → listbox-options-CkwENvff.d.mts} +4 -4
  665. package/dist/listbox-options.d.mts +1 -1
  666. package/dist/markdownUtils.d.mts +23 -0
  667. package/dist/{message-Dti22dmx.d.mts → message-klSuXfNN.d.mts} +2 -2
  668. package/dist/{methodChain-DaDvXsHF.d.mts → methodChain-CRYRDa1k.d.mts} +6 -6
  669. package/dist/{methodChain-xZ1_vhbz.mjs → methodChain-LVNHiGPB.mjs} +4 -4
  670. package/dist/methodChain-LVNHiGPB.mjs.map +1 -0
  671. package/dist/{methodChainTypes-a7kHYhs7.d.mts → methodChainTypes-BtbYWrdP.d.mts} +3 -3
  672. package/dist/middleTruncateText.d.mts +1 -1
  673. package/dist/min-copy-size.d.mts +7 -0
  674. package/dist/mixins/focus.d.mts +2 -2
  675. package/dist/mixins/focus.mjs +2 -2
  676. package/dist/mixins/focus.mjs.map +1 -1
  677. package/dist/mixins/hoverable.d.mts +3 -3
  678. package/dist/mixins/hoverable.mjs +2 -2
  679. package/dist/mixins/hoverable.mjs.map +1 -1
  680. package/dist/mixins/input.d.mts +1 -1
  681. package/dist/mixins/input.mjs +2 -2
  682. package/dist/mixins/input.mjs.map +1 -1
  683. package/dist/mixins/menuItem.d.mts +3 -3
  684. package/dist/mixins/menuItem.mjs +2 -2
  685. package/dist/mixins/menuItem.mjs.map +1 -1
  686. package/dist/mixins/print/index.d.mts +1 -1
  687. package/dist/mixins/print/index.mjs +2 -2
  688. package/dist/mixins/print/index.mjs.map +1 -1
  689. package/dist/mixins/scrollbar.d.mts +2 -2
  690. package/dist/mixins/scrollbar.mjs +2 -2
  691. package/dist/mixins/scrollbar.mjs.map +1 -1
  692. package/dist/mixins/text.d.mts +1 -1
  693. package/dist/mixins/text.mjs +6 -2
  694. package/dist/mixins/text.mjs.map +1 -1
  695. package/dist/navigationEvents.d.mts +1 -1
  696. package/dist/no-raw-table.d.mts +7 -0
  697. package/dist/{operators-Seez5p9U.d.mts → operators-gCG7uZ6y.d.mts} +4 -4
  698. package/dist/operators.d.mts +1 -1
  699. package/dist/{palette-Bp5G-S_5.d.mts → palette-C1gBbxLO.d.mts} +4 -4
  700. package/dist/palette.d.mts +1 -1
  701. package/dist/{parser-BeTiVjRs.mjs → parser-BQ2aDi7S.mjs} +2 -2
  702. package/dist/parser-BQ2aDi7S.mjs.map +1 -0
  703. package/dist/patterns/CardGrouping/index.mjs +11 -11
  704. package/dist/patterns/CardGrouping/index.mjs.map +1 -1
  705. package/dist/patterns/IndexTableLayout/index.mjs +6 -6
  706. package/dist/patterns/IndexTableLayout/index.mjs.map +1 -1
  707. package/dist/patterns/LayoutLoadingShimmer/index.mjs +8 -8
  708. package/dist/patterns/LayoutLoadingShimmer/index.mjs.map +1 -1
  709. package/dist/patterns/LayoutLoadingSpinner/index.mjs +2 -2
  710. package/dist/patterns/LayoutLoadingSpinner/index.mjs.map +1 -1
  711. package/dist/patterns/PageLayout/index.d.mts +4 -4
  712. package/dist/patterns/PageLayout/index.mjs +1 -1
  713. package/dist/patterns/WizardModal/index.mjs +7 -7
  714. package/dist/patterns/WizardModal/index.mjs.map +1 -1
  715. package/dist/positioning.d.mts +1 -1
  716. package/dist/reactRouterFallback.d.mts +2 -2
  717. package/dist/reduced-motion.d.mts +7 -0
  718. package/dist/relative-date-label.d.mts +2 -2
  719. package/dist/{router-COrZcVkf.mjs → router-BxmA940v.mjs} +7 -7
  720. package/dist/router-BxmA940v.mjs.map +1 -0
  721. package/dist/safe-parse.d.mts +3 -3
  722. package/dist/{schemaOptions-BQgLOgtD.d.mts → schemaOptions-C_JM2-sg.d.mts} +4 -4
  723. package/dist/scrollExpandedItemIntoView.d.mts +1 -1
  724. package/dist/{semantic-DjKvtUi8.d.mts → semantic-BLaQSW1r.d.mts} +2 -2
  725. package/dist/semantic-color.d.mts +7 -0
  726. package/dist/{semanticColor-CmGmGRj8.d.mts → semanticColor-Bxufk3ZO.d.mts} +4 -4
  727. package/dist/shared.d.mts +30 -0
  728. package/dist/{strings-FWNWdSn1.d.mts → strings-CK9n6b65.d.mts} +2 -2
  729. package/dist/strings.d.mts +1 -1
  730. package/dist/{styledComponentsInterop-NxwFjeA4.mjs → styledComponentsInterop-Cs5CCPRy.mjs} +2 -2
  731. package/dist/styledComponentsInterop-Cs5CCPRy.mjs.map +1 -0
  732. package/dist/styles.d.mts +8 -0
  733. package/dist/tableBoxKeyboardNavigation.d.mts +1 -1
  734. package/dist/{text-BNfECpa5.d.mts → text-Csytfclh.d.mts} +3 -3
  735. package/dist/{theme-VNhXxAF3.d.mts → theme-mQ4WkH90.d.mts} +4 -4
  736. package/dist/theme.d.mts +1 -1
  737. package/dist/theme.mjs +1 -1
  738. package/dist/theme.mjs.map +1 -1
  739. package/dist/time-range.d.mts +1 -1
  740. package/dist/tone.d.mts +4 -4
  741. package/dist/tree.d.mts +2 -2
  742. package/dist/{types-CFe4tA8Q.d.mts → types-6L0ptM6-.d.mts} +2 -2
  743. package/dist/{types-SOkNtcBq.d.mts → types-B4KbdEDc.d.mts} +3 -3
  744. package/dist/{types-Kmnood9Y.d.mts → types-C2RhHxbE.d.mts} +2 -2
  745. package/dist/{types-Ci-KTHfu.d.mts → types-CayYd8EX.d.mts} +4 -4
  746. package/dist/{types-SYxBPX6o.d.mts → types-DJobO07d.d.mts} +4 -4
  747. package/dist/{types-EodOhsjw.d.mts → types-DbOD5vE_.d.mts} +3 -3
  748. package/dist/{types-HxiGiwQN.d.mts → types-Dhz6VMKx.d.mts} +2 -2
  749. package/dist/{types-DWU0Dmy9.d.mts → types-XjJqUj-p.d.mts} +5 -5
  750. package/dist/{types-DfpVVjso.d.mts → types-dmItSshr.d.mts} +3 -3
  751. package/dist/{types-39QvBZuZ.d.mts → types-rDQg74j-.d.mts} +2 -2
  752. package/dist/types.d.mts +1 -1
  753. package/dist/types2.d.mts +1 -1
  754. package/dist/types3.d.mts +1 -1
  755. package/dist/types4.d.mts +1 -1
  756. package/dist/types5.d.mts +1 -1
  757. package/dist/types6.d.mts +1 -1
  758. package/dist/types7.d.mts +14 -2
  759. package/dist/types8.d.mts +2 -0
  760. package/dist/{url-state-CwaRVyXR.d.mts → url-state-CmgyDnG7.d.mts} +3 -3
  761. package/dist/url-state.d.mts +1 -1
  762. package/dist/use-rules-popover-selection.d.mts +1 -1
  763. package/dist/{useChain-DXkKKe-J.d.mts → useChain-7ztbfujM.d.mts} +7 -7
  764. package/dist/{useChain-Cu4KDfFk.mjs → useChain-D1aNsdvn.mjs} +4 -4
  765. package/dist/useChain-D1aNsdvn.mjs.map +1 -0
  766. package/dist/useChainAtCursor.d.mts +7 -7
  767. package/dist/useCodeChainFunctionPanel.d.mts +2 -2
  768. package/dist/useColumnConfiguration.d.mts +3 -3
  769. package/dist/useColumnWidthLock.d.mts +1 -1
  770. package/dist/useComboboxFooterAction.d.mts +2 -2
  771. package/dist/useDelayedInlineEditError.d.mts +1 -1
  772. package/dist/{useFilterStateV2-Bzo27PR-.d.mts → useFilterStateV2-CPBt0qwc.d.mts} +4 -4
  773. package/dist/useFilterStateV2.d.mts +1 -1
  774. package/dist/{useFormField-Ba8rh1CH.d.mts → useFormField-CmEJCqse.d.mts} +3 -3
  775. package/dist/{useFormField-CbNYbDdp.mjs → useFormField-pOVkb5BK.mjs} +3 -3
  776. package/dist/useFormField-pOVkb5BK.mjs.map +1 -0
  777. package/dist/useFormField.d.mts +1 -1
  778. package/dist/{useFormGroup-CsKC93Pt.mjs → useFormGroup-DSQkoWLh.mjs} +2 -2
  779. package/dist/useFormGroup-DSQkoWLh.mjs.map +1 -0
  780. package/dist/useFormGroup.d.mts +1 -1
  781. package/dist/useLocationPathname-Cnqj8pf4.d.mts +5 -0
  782. package/dist/useLocationPathname.d.mts +1 -1
  783. package/dist/{useTableBoxDragAndDrop-CKPIY98e.d.mts → useTableBoxDragAndDrop-8NS4JBuI.d.mts} +2 -2
  784. package/dist/useTableBoxDragAndDrop.d.mts +1 -1
  785. package/dist/{useTableColumns-PyxNyTD6.d.mts → useTableColumns-BK-KYY0L.d.mts} +3 -3
  786. package/dist/useTableColumns.d.mts +1 -1
  787. package/dist/{useToggle-DRzCDqrc.mjs → useToggle-1z8JE7Ym.mjs} +2 -2
  788. package/dist/useToggle-1z8JE7Ym.mjs.map +1 -0
  789. package/dist/useToggle.d.mts +1 -1
  790. package/dist/useTruncation.d.mts +2 -2
  791. package/dist/{utilities-BrEUGFGq.d.mts → utilities-CXoc5Cyr.d.mts} +2 -2
  792. package/dist/utilities.d.mts +1 -1
  793. package/dist/utils/storybook.mjs +2 -2
  794. package/dist/utils/storybook.mjs.map +1 -1
  795. package/dist/utils/testing.d.mts +2 -2
  796. package/dist/utils/testing.mjs +1 -1
  797. package/dist/utils/testing.mjs.map +1 -1
  798. package/dist/utils.d.mts +2 -2
  799. package/dist/utils2.d.mts +1 -1
  800. package/dist/utils3.d.mts +1 -1
  801. package/dist/utils4.d.mts +6 -6
  802. package/dist/{validation-D6NPueNk.d.mts → validation-BaqPVG1C.d.mts} +4 -4
  803. package/dist/validation.d.mts +1 -1
  804. package/dist/validation2.d.mts +5 -5
  805. package/dist/{value-control-resolver-C-UrXVlB.d.mts → value-control-resolver-CMyFwEY7.d.mts} +3 -3
  806. package/dist/value-control-resolver.d.mts +1 -1
  807. package/dist/variables/color.d.mts +1 -1
  808. package/dist/variables/color.mjs +1 -1
  809. package/dist/variables/color.mjs.map +1 -1
  810. package/dist/variables/effect.d.mts +2 -2
  811. package/dist/variables/effect.mjs +1 -1
  812. package/dist/variables/effect.mjs.map +1 -1
  813. package/dist/variables/keyframes.d.mts +1 -1
  814. package/dist/variables/keyframes.mjs +2 -2
  815. package/dist/variables/keyframes.mjs.map +1 -1
  816. package/dist/variables/semantic.d.mts +1 -1
  817. package/dist/variables/semantic.mjs +1 -1
  818. package/dist/variables/semantic.mjs.map +1 -1
  819. package/dist/variables/spacing.d.mts +1 -1
  820. package/dist/variables/spacing.mjs +1 -1
  821. package/dist/variables/spacing.mjs.map +1 -1
  822. package/dist/variables/text.d.mts +1 -1
  823. package/dist/variables/text.mjs +1 -1
  824. package/dist/variables/text.mjs.map +1 -1
  825. package/dist/variables/transitions.d.mts +1 -1
  826. package/dist/variables/transitions.mjs +1 -1
  827. package/dist/variables/transitions.mjs.map +1 -1
  828. package/llms.txt +2 -2
  829. package/package.json +32 -8
  830. package/skills/design-system-component-authoring/SKILL.md +4 -4
  831. package/skills/design-system-component-authoring/component-conventions.md +2 -2
  832. package/skills/new-screen/SKILL.md +56 -0
  833. package/skills/ui-authoring/COMPONENTS.md +2 -1
  834. package/skills/ui-authoring/SKILL.md +5 -3
  835. package/skills/ui-authoring/STANDARD.md +65 -50
  836. package/dist/Badge-Bvn3afds.mjs.map +0 -1
  837. package/dist/Breadcrumbs-CQUe9VTM.mjs.map +0 -1
  838. package/dist/Card-BXNxWX5C.mjs.map +0 -1
  839. package/dist/CardV2-Dp4eHSE-.mjs.map +0 -1
  840. package/dist/Checkbox-BaJ-dGdX.mjs.map +0 -1
  841. package/dist/Combobox-CBM-oY-e.mjs.map +0 -1
  842. package/dist/ConfigFormGroup-CidT_cE9.mjs.map +0 -1
  843. package/dist/DataTable-DQ8axNfo.mjs.map +0 -1
  844. package/dist/DatePicker-D0cvVbzq.mjs.map +0 -1
  845. package/dist/DropdownButton-5oNcpsOq.mjs.map +0 -1
  846. package/dist/DropdownMenu-CedsmO5h.mjs.map +0 -1
  847. package/dist/FormControl-C4CiA0H-.mjs.map +0 -1
  848. package/dist/FormField-C0cd1zVd.mjs.map +0 -1
  849. package/dist/Grid-DXVkhyNQ.mjs.map +0 -1
  850. package/dist/HoverCopyableField-D-BubaRd.mjs.map +0 -1
  851. package/dist/IconButton-HWx5Hlmi.mjs.map +0 -1
  852. package/dist/Input-Dap055xf.mjs.map +0 -1
  853. package/dist/Link-Cf__H8gD.mjs.map +0 -1
  854. package/dist/ListBox-eoyBHtnJ.mjs.map +0 -1
  855. package/dist/LoadingShimmer-Bqjdut7i.mjs.map +0 -1
  856. package/dist/Menu-Dw6Rcpk6.mjs.map +0 -1
  857. package/dist/MiddleTruncatedText-DoTyfMem.mjs.map +0 -1
  858. package/dist/Modal-kjUptzg1.mjs.map +0 -1
  859. package/dist/PageHeader-DJF7nxgN.mjs.map +0 -1
  860. package/dist/PageLayout-fXJW7daI.mjs.map +0 -1
  861. package/dist/Pagination-DtK-jbEY.mjs.map +0 -1
  862. package/dist/Pii-DueIK287.mjs.map +0 -1
  863. package/dist/Popover-BcII7usF.mjs.map +0 -1
  864. package/dist/ProgressIndicator-CM37EU1B.mjs.map +0 -1
  865. package/dist/Radio-BstZg3DI.mjs.map +0 -1
  866. package/dist/RadioGroup-erKerwSt.mjs.map +0 -1
  867. package/dist/RouterContext-nPSb55p9.mjs.map +0 -1
  868. package/dist/SegmentedControl-DQjIO6iX.mjs.map +0 -1
  869. package/dist/Select-BJ9ACmRD.mjs.map +0 -1
  870. package/dist/Spacer-J_HuhxX2.mjs.map +0 -1
  871. package/dist/Spinner-7Camx1vs.mjs.map +0 -1
  872. package/dist/Stack-BkC7FCdF.mjs.map +0 -1
  873. package/dist/StatusIndicator-Bunn9YLV.mjs.map +0 -1
  874. package/dist/Sticker-yhxtIYH8.mjs.map +0 -1
  875. package/dist/TabBar-SX8E9-Bk.mjs.map +0 -1
  876. package/dist/Table-BIDaC0uS.mjs.map +0 -1
  877. package/dist/TableBox-Bn_XZEYd.mjs.map +0 -1
  878. package/dist/TableControls-qxoq5abn.mjs.map +0 -1
  879. package/dist/TechnicalSticker-CALVwnrT.mjs.map +0 -1
  880. package/dist/Text-CSwFifQF.mjs.map +0 -1
  881. package/dist/TextArea-CaIEBz8d.mjs.map +0 -1
  882. package/dist/Toggle-BsqSNYok.mjs.map +0 -1
  883. package/dist/Tooltip-B-0VRuKT.mjs.map +0 -1
  884. package/dist/chainTypes-Cjp0zZ4E.d.mts +0 -17
  885. package/dist/createPath-B_CLq82C.d.mts +0 -7
  886. package/dist/date-filter-D0ys8s0D.mjs.map +0 -1
  887. package/dist/i18n-BscB9FUy.mjs.map +0 -1
  888. package/dist/index-DTAcGzW4.d.mts +0 -7
  889. package/dist/intersperse-ObkRVOag.mjs.map +0 -1
  890. package/dist/methodChain-xZ1_vhbz.mjs.map +0 -1
  891. package/dist/parser-BeTiVjRs.mjs.map +0 -1
  892. package/dist/router-COrZcVkf.mjs.map +0 -1
  893. package/dist/styledComponentsInterop-NxwFjeA4.mjs.map +0 -1
  894. package/dist/useChain-Cu4KDfFk.mjs.map +0 -1
  895. package/dist/useFormField-CbNYbDdp.mjs.map +0 -1
  896. package/dist/useFormGroup-CsKC93Pt.mjs.map +0 -1
  897. package/dist/useLocationPathname-OsvI7mH5.d.mts +0 -5
  898. package/dist/useToggle-DRzCDqrc.mjs.map +0 -1
  899. package/skills/ui-authoring/lanes.json +0 -22
  900. /package/dist/{index-BOaE2xDE.d.mts → index-Bq9Ub6MB.d.mts} +0 -0
@@ -1 +0,0 @@
1
- {"version":3,"file":"TechnicalSticker-CALVwnrT.mjs","names":[],"sources":["../components/TechnicalSticker/TechnicalSticker.tsx"],"sourcesContent":["import {\n type ComponentPropsWithoutRef,\n type MouseEvent,\n useCallback,\n useEffect,\n useRef,\n useState,\n} from 'react';\nimport styled, { css, useTheme } from 'styled-components';\n\nimport { BorderRadius, Color, Spacing, Typography } from '@persona/design-tokens';\nimport { CopyIcon } from '@persona/icons/12px';\nimport Tooltip from 'design-system/components/Tooltip';\nimport { withAlpha } from 'design-system/lib/color';\nimport copyTextToClipboard from 'design-system/lib/copyTextToClipboard';\nimport MiddleTruncatedText from 'design-system/lib/MiddleTruncatedText';\nimport { isHovered } from 'design-system/lib/pseudoClass';\nimport {\n type MaybeSemanticTheme,\n semanticColor,\n semanticTokens,\n} from 'design-system/lib/semanticColor';\nimport useToggle from 'design-system/lib/useToggle';\nimport type { SemanticTokens } from 'design-system/variables/semantic';\n\nexport type TechnicalStickerVariant = 'grey' | 'white';\n\nconst COPY_CONFIRMATION_TEXT = 'Copied!';\nconst COPY_CONFIRMATION_DURATION_MS = 1200;\nconst DEFAULT_COPY_TOOLTIP_LABEL = 'Copy ID';\nconst HREF_VALIDATION_BASE_URL = 'https://withpersona.com';\nconst TECHNICAL_TEXT_FONT = `${Typography.TextMono.fontWeight} ${Typography.TextExtraSmall.fontSize} ${Typography.TextMono.fontFamily}`;\n\nconst semanticRestFill = (tokens: SemanticTokens, variant: TechnicalStickerVariant) =>\n variant === 'white' ? tokens.FeedbackNeutralInverse : tokens.FeedbackNeutral1;\n\nconst restFill = (theme: MaybeSemanticTheme, variant: TechnicalStickerVariant) => {\n const tokens = semanticTokens(theme);\n if (tokens) {\n return semanticRestFill(tokens, variant);\n }\n return variant === 'white' ? Color.BackgroundLabelWhite : Color.BackgroundLabelGrey;\n};\n\nconst hoverFill = (theme: MaybeSemanticTheme, variant: TechnicalStickerVariant) =>\n variant === 'white'\n ? semanticColor(theme, 'FeedbackNeutral1', Color.BackgroundButtonInverseHover)\n : semanticColor(theme, 'ActionNeutralActive', Color.BackgroundLabelGreyHover);\n\nconst isSafeTechnicalStickerHref = (href: string) => {\n try {\n const url = new URL(href, HREF_VALIDATION_BASE_URL);\n return url.protocol === 'http:' || url.protocol === 'https:';\n } catch {\n return false;\n }\n};\n\nconst TechnicalStickerShell = styled.div<{\n variant: TechnicalStickerVariant;\n disabled?: boolean;\n $width?: number | string;\n}>`\n display: inline-flex;\n align-items: center;\n white-space: nowrap;\n\n border-radius: ${BorderRadius.Sm};\n height: 1rem;\n width: ${({ $width }) => (typeof $width === 'number' ? `${$width}px` : ($width ?? 'auto'))};\n max-width: 100%;\n box-sizing: border-box;\n\n color: ${({ theme, disabled }) =>\n disabled\n ? semanticColor(theme, 'FgDisabled', theme.color.text.disabled)\n : semanticColor(theme, 'FgPrimary', theme.color.text.primary)};\n background: ${({ theme, variant, disabled }) => {\n const tokens = semanticTokens(theme);\n return tokens && disabled\n ? withAlpha(semanticRestFill(tokens, variant), tokens.Opacity65)\n : restFill(theme, variant);\n }};\n\n position: relative;\n overflow: hidden;\n border: 1px solid ${({ theme }) => semanticColor(theme, 'BorderDefault', Color.BorderInputDefault)};\n\n ${({ theme, variant, disabled }) =>\n !disabled &&\n css`\n &:hover {\n background: ${hoverFill(theme, variant)};\n }\n `}\n`;\n\nconst labelContainerStyles = css`\n display: flex;\n align-items: center;\n justify-content: center;\n flex: 1 1 auto;\n min-width: 0;\n padding: 0 ${Spacing[1]};\n`;\n\nconst LabelContainer = styled.div`\n ${labelContainerStyles}\n`;\n\nconst LabelLink = styled.a`\n ${labelContainerStyles}\n color: inherit;\n text-decoration: none;\n`;\n\nconst TechnicalText = styled(MiddleTruncatedText)<{\n $isLinkEnabled: boolean;\n $isTruncated: boolean;\n}>`\n ${Typography.TextMono};\n font-size: ${Typography.TextExtraSmall.fontSize};\n line-height: ${Typography.TextExtraSmall.lineHeight};\n text-align: center;\n\n ${({ $isLinkEnabled, $isTruncated }) =>\n $isTruncated &&\n css`\n cursor: ${$isLinkEnabled ? 'pointer' : 'default'};\n user-select: none;\n\n & > span {\n user-select: none;\n }\n `}\n`;\n\nconst CopyActions = styled.div<{ $visible: boolean }>`\n position: absolute;\n top: 0;\n right: 0;\n z-index: 1;\n display: flex;\n align-items: center;\n height: 16px;\n opacity: ${({ $visible }) => ($visible ? 1 : 0)};\n pointer-events: ${({ $visible }) => ($visible ? 'auto' : 'none')};\n transition: opacity 120ms ease-in-out;\n\n /* Keyboard focus keeps the actions reachable, but a click also focuses the\n button — matching plain :focus-within would leave them visible after the\n pointer moves away. */\n &:has(:focus-visible) {\n opacity: 1;\n pointer-events: auto;\n }\n`;\n\nconst CopyGradient = styled.div<{ $background: string }>`\n width: 8px;\n height: 16px;\n background: linear-gradient(to left, ${({ $background }) => $background}, transparent);\n`;\n\nconst CopyButton = styled.button<{ $background: string }>`\n display: inline-flex;\n align-items: center;\n justify-content: center;\n width: 16px;\n height: 16px;\n padding: 0 2px 0 0;\n border: none;\n background: ${({ $background }) => $background};\n color: ${({ theme }) => semanticColor(theme, 'FgPrimary', Color.BorderIconPrimary)};\n cursor: pointer;\n\n &:disabled {\n cursor: not-allowed;\n }\n\n &${isHovered}:not(:disabled) {\n color: ${({ theme }) => semanticColor(theme, 'FgPrimary', Color.TextPrimary)};\n }\n`;\n\nexport interface TechnicalStickerProps extends Omit<ComponentPropsWithoutRef<'div'>, 'children'> {\n /** Full untruncated technical value displayed in the sticker. */\n children: string;\n /** Visual style for the technical sticker. Default: `grey`. */\n variant?: TechnicalStickerVariant;\n /** Renders disabled style and disables copy/link interaction. */\n disabled?: boolean;\n /** Opens in a new tab when the sticker body is clicked. */\n href?: string;\n /**\n * Hover tooltip for the sticker body. Shown when text is truncated or when set explicitly.\n * Defaults to the untruncated `children` string when shown.\n */\n tooltipLabel?: string;\n /**\n * Hover tooltip for the copy icon.\n * Defaults to `Copy ID`.\n */\n copyTooltipLabel?: string;\n /**\n * Confirmation label shown in the copy tooltip after a successful copy.\n * Defaults to `Copied!`.\n */\n copyConfirmationLabel?: string;\n /** Whether to show the hover copy action. Default: true. */\n copyable?: boolean;\n /** Value copied to the clipboard. Defaults to `children`. */\n copyValue?: string;\n /** Width of the sticker. Numbers are interpreted as pixels. */\n width?: number | string;\n /** Max width for middle truncation. Default: '96px'. */\n maxWidth?: number | string;\n}\n\nexport const TechnicalSticker = ({\n variant = 'grey',\n href,\n tooltipLabel: tooltipLabelProp,\n copyTooltipLabel = DEFAULT_COPY_TOOLTIP_LABEL,\n copyConfirmationLabel = COPY_CONFIRMATION_TEXT,\n copyable = true,\n copyValue,\n width,\n maxWidth = '96px',\n children,\n disabled,\n onMouseEnter,\n onMouseLeave,\n ...stickerProps\n}: TechnicalStickerProps) => {\n const [isHoveredState, setIsHoveredState] = useState(false);\n const [isCopyButtonKeyboardFocused, setIsCopyButtonKeyboardFocused] = useState(false);\n const [isTruncated, setIsTruncated] = useState(false);\n const [isCopyTooltipOpen, setIsCopyTooltipOpen] = useState(false);\n const [copyConfirmationOpen, { enable: showCopyConfirmation, disable: hideCopyConfirmation }] =\n useToggle(false);\n const copyConfirmationTimerRef = useRef<ReturnType<typeof setTimeout> | null>(null);\n const copyButtonRef = useRef<HTMLButtonElement>(null);\n const isPointerFocusRef = useRef(false);\n const copyRequestIdRef = useRef(0);\n\n const tooltipLabel = tooltipLabelProp ?? children;\n const hasCustomTooltipLabel = tooltipLabelProp != null;\n\n const theme = useTheme();\n const hoverBackground = hoverFill(theme, variant);\n const copyActionBackground = isHoveredState ? hoverBackground : restFill(theme, variant);\n const showCopyActions =\n copyable &&\n !disabled &&\n (isHoveredState || isCopyButtonKeyboardFocused || copyConfirmationOpen);\n const showStickerTooltip = tooltipLabel.length > 0 && (isTruncated || hasCustomTooltipLabel);\n const isCopyTooltipVisible = isCopyTooltipOpen || copyConfirmationOpen;\n const isLinkEnabled = href != null && !disabled && isSafeTechnicalStickerHref(href);\n\n const handleCopyTooltipOpenChange = useCallback(\n (open: boolean) => {\n if (copyConfirmationOpen) {\n return;\n }\n\n setIsCopyTooltipOpen(open);\n },\n [copyConfirmationOpen],\n );\n\n const dismissCopyConfirmation = useCallback(() => {\n // Writing to the clipboard is async, so a copy still in flight would\n // otherwise surface its confirmation after the dismissal.\n copyRequestIdRef.current += 1;\n\n if (copyConfirmationTimerRef.current) {\n clearTimeout(copyConfirmationTimerRef.current);\n copyConfirmationTimerRef.current = null;\n }\n\n setIsCopyTooltipOpen(false);\n hideCopyConfirmation();\n }, [hideCopyConfirmation]);\n\n const handleCopy = useCallback(\n async (event: MouseEvent<HTMLButtonElement>) => {\n event.preventDefault();\n event.stopPropagation();\n\n if (disabled) {\n return;\n }\n\n const requestId = ++copyRequestIdRef.current;\n const copyWasSuccessful = await copyTextToClipboard(copyValue ?? children);\n if (!copyWasSuccessful || requestId !== copyRequestIdRef.current) {\n return;\n }\n\n setIsCopyTooltipOpen(true);\n showCopyConfirmation();\n if (copyConfirmationTimerRef.current) {\n clearTimeout(copyConfirmationTimerRef.current);\n }\n copyConfirmationTimerRef.current = setTimeout(() => {\n setIsCopyTooltipOpen(false);\n hideCopyConfirmation();\n copyConfirmationTimerRef.current = null;\n }, COPY_CONFIRMATION_DURATION_MS);\n },\n [children, copyValue, disabled, hideCopyConfirmation, showCopyConfirmation],\n );\n\n useEffect(\n () => () => {\n if (copyConfirmationTimerRef.current) {\n clearTimeout(copyConfirmationTimerRef.current);\n }\n },\n [],\n );\n\n // Clicking an already keyboard-focused button fires no second focus event, so\n // pointer input has to retire the keyboard state itself.\n const handleCopyButtonMouseDown = () => {\n isPointerFocusRef.current = true;\n setIsCopyButtonKeyboardFocused(false);\n };\n\n // A click focuses the button too, so treating any focus as a reason to keep\n // the actions visible would pin them open once the pointer moves away.\n const handleCopyButtonFocus = () => {\n setIsCopyButtonKeyboardFocused(!isPointerFocusRef.current);\n isPointerFocusRef.current = false;\n };\n\n const handleCopyButtonBlur = () => {\n isPointerFocusRef.current = false;\n setIsCopyButtonKeyboardFocused(false);\n };\n\n const technicalText = (\n <TechnicalText\n value={children}\n maxWidth={width ?? maxWidth}\n font={TECHNICAL_TEXT_FONT}\n onTruncatedChange={setIsTruncated}\n titleBehavior='never'\n $isLinkEnabled={isLinkEnabled}\n $isTruncated={isTruncated}\n />\n );\n\n const labelContent = isLinkEnabled ? (\n <LabelLink href={href} target='_blank' rel='noopener noreferrer'>\n {technicalText}\n </LabelLink>\n ) : (\n <LabelContainer>{technicalText}</LabelContainer>\n );\n\n const labelWithTooltip = showStickerTooltip ? (\n <Tooltip trigger={labelContent} interactive side='top' maxWidth='400px'>\n {tooltipLabel}\n </Tooltip>\n ) : (\n labelContent\n );\n\n return (\n <TechnicalStickerShell\n {...stickerProps}\n variant={variant}\n disabled={disabled}\n $width={width}\n onMouseEnter={(event) => {\n onMouseEnter?.(event);\n setIsHoveredState(true);\n }}\n onMouseLeave={(event) => {\n onMouseLeave?.(event);\n setIsHoveredState(false);\n if (!isCopyButtonKeyboardFocused) {\n // Otherwise a click's focus lingers on a button that is now hidden.\n copyButtonRef.current?.blur();\n dismissCopyConfirmation();\n }\n }}\n >\n {labelWithTooltip}\n {copyable && (\n <CopyActions $visible={showCopyActions}>\n <CopyGradient $background={copyActionBackground} />\n <Tooltip\n open={isCopyTooltipVisible}\n onOpenChange={handleCopyTooltipOpenChange}\n trigger={\n <CopyButton\n ref={copyButtonRef}\n type='button'\n aria-label='Copy'\n disabled={disabled}\n $background={copyActionBackground}\n onClick={handleCopy}\n onMouseDown={handleCopyButtonMouseDown}\n onBlur={handleCopyButtonBlur}\n onFocus={handleCopyButtonFocus}\n >\n <CopyIcon />\n </CopyButton>\n }\n interactive={false}\n side='top'\n >\n {copyConfirmationOpen ? copyConfirmationLabel : copyTooltipLabel}\n </Tooltip>\n </CopyActions>\n )}\n </TechnicalStickerShell>\n );\n};\n\nexport default TechnicalSticker;\n"],"mappings":"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"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"Text-CSwFifQF.mjs","names":[],"sources":["../components/Text/Text.tsx"],"sourcesContent":["import type { ComponentPropsWithoutRef, ComponentType, FC, PropsWithChildren } from 'react';\nimport styled from 'styled-components';\n\nimport { type MaybeSemanticTheme, semanticColor } from 'design-system/lib/semanticColor';\nimport {\n displayMixins,\n type DisplaySize,\n fontFamilyMixin,\n headingMixins,\n type HeadingSize,\n paragraphMixins,\n type ParagraphMixinSize,\n type ParagraphSize,\n} from 'design-system/mixins/text';\nimport type { PersonaTheme, TextColors } from 'design-system/theme';\nimport type { SemanticTokens } from 'design-system/variables/semantic';\n\nexport interface SpanProps {\n id?: string;\n color?: keyof TextColors | null;\n 'data-test'?: string;\n}\n\nconst StyledSpan: FC<PropsWithChildren<SpanProps>> = ({ children, color, ...othersThanColor }) => (\n <span {...othersThanColor}>{children}</span>\n);\n\nconst TEXT_COLOR_TO_SEMANTIC = {\n primary: 'FgPrimary',\n secondary: 'FgSecondary',\n tertiary: 'FgTertiary',\n brand: 'FgAccentStatic',\n inverse: 'FgInverseStatic',\n disabled: 'FgDisabled',\n} as const satisfies Record<keyof TextColors, keyof SemanticTokens>;\n\nconst textColor = (theme: PersonaTheme & MaybeSemanticTheme, color: keyof TextColors | null) =>\n color == null\n ? 'inherit'\n : semanticColor(theme, TEXT_COLOR_TO_SEMANTIC[color], theme.color.text[color]);\n\n/**\n * Base class of all Text components.\n */\nexport const Span = styled(StyledSpan)`\n color: ${({ color = 'primary', theme }) => textColor(theme, color)};\n ${fontFamilyMixin};\n`;\n\nexport interface DisplayProps {\n size: DisplaySize;\n}\n\nexport const Display = styled(Span).attrs(() => ({ as: 'h1' }))<DisplayProps>`\n ${({ size }) => displayMixins[size]}\n`;\n\nexport interface HeadingProps\n extends\n Omit<ComponentPropsWithoutRef<'h1' | 'h2' | 'h3' | 'h4' | 'h5' | 'h6'>, 'color'>,\n SpanProps {\n size: HeadingSize;\n as?: string | ComponentType<any>;\n}\n\nconst HeadingComponent = styled(Span)<HeadingProps>`\n ${({ size }) => headingMixins[size]}\n`;\n\n// Needs a wrapper to support chaining .attrs without overwriting `as: size`\n// This is a bug with styled components when chaining .attrs where the inner\n// .attr cannot access values passed by the outer .attr.\nexport const Heading: FC<HeadingProps> = ({ as, size, ...props }) => {\n return <HeadingComponent as={as || 'h3'} size={size} {...props} />;\n};\n\nexport interface ParagraphProps extends Omit<ComponentPropsWithoutRef<'p'>, 'color'>, SpanProps {\n size?: ParagraphSize;\n weight?: 'bold' | 'normal' | 'light';\n as?: string | ComponentType<any>;\n}\n\nexport const Paragraph = styled(Span).attrs<ParagraphProps>(({ as = 'p' }) => ({\n as,\n}))<ParagraphProps>`\n ${({ size = 'md', weight = 'normal' }) => {\n if (weight !== 'normal') {\n if (!['sm', 'md', 'lg'].includes(size) || (size === 'sm' && weight === 'light')) {\n console.error(`Size '${size}' does not exist for weight '${weight}'.`);\n } else {\n return paragraphMixins[\n (size + weight.charAt(0).toUpperCase() + weight.slice(1)) as ParagraphMixinSize\n ];\n }\n }\n\n return paragraphMixins[size];\n }}\n /* Unlike the other text components, Paragraph defaults to the secondary text color. */\n color: ${({ color = 'secondary', theme }) => textColor(theme, color)};\n`;\n\nexport interface LabelProps extends Omit<ComponentPropsWithoutRef<'label'>, 'color'>, SpanProps {\n size?: ParagraphSize;\n weight?: 'bold' | 'normal' | 'light';\n 'data-test'?: string;\n}\n\nexport const Label = styled(Paragraph).attrs<LabelProps>({\n as: 'label',\n})<LabelProps>`\n color: ${({ color = 'primary', theme }) => textColor(theme, color)};\n`;\n\nexport const TabularNumber = styled(Paragraph)`\n font-variant-numeric: tabular-nums;\n color: ${({ color = 'primary', theme }) => textColor(theme, color)};\n`;\n"],"mappings":";;;;;AAuBA,MAAM,cAAgD,EAAE,UAAU,OAAO,GAAG,sBAC1E,oBAAC,QAAD;CAAM,GAAI;CAAkB;CAAgB,CAAA;AAG9C,MAAM,yBAAyB;CAC7B,SAAS;CACT,WAAW;CACX,UAAU;CACV,OAAO;CACP,SAAS;CACT,UAAU;CACX;AAED,MAAM,aAAa,OAA0C,UAC3D,SAAS,OACL,YACA,cAAc,OAAO,uBAAuB,QAAQ,MAAM,MAAM,KAAK,OAAO;;;;AAKlF,MAAa,OAAO,OAAO,WAAW;YAC1B,EAAE,QAAQ,WAAW,YAAY,UAAU,OAAO,MAAM,CAAC;IACjE,gBAAgB;;AAOpB,MAAa,UAAU,OAAO,KAAK,CAAC,aAAa,EAAE,IAAI,MAAM,EAAE;KAC1D,EAAE,WAAW,cAAc,MAAM;;AAWtC,MAAM,mBAAmB,OAAO,KAAK;KAChC,EAAE,WAAW,cAAc,MAAM;;AAMtC,MAAa,WAA6B,EAAE,IAAI,MAAM,GAAG,YAAY;AACnE,QAAO,oBAAC,kBAAD;EAAkB,IAAI,MAAM;EAAY;EAAM,GAAI;EAAS,CAAA;;AASpE,MAAa,YAAY,OAAO,KAAK,CAAC,OAAuB,EAAE,KAAK,WAAW,EAC7E,IACD,EAAE;KACE,EAAE,OAAO,MAAM,SAAS,eAAe;AACxC,KAAI,WAAW,SACb,KAAI,CAAC;EAAC;EAAM;EAAM;EAAK,CAAC,SAAS,KAAK,IAAK,SAAS,QAAQ,WAAW,QACrE,SAAQ,MAAM,SAAS,KAAK,+BAA+B,OAAO,IAAI;KAEtE,QAAO,gBACJ,OAAO,OAAO,OAAO,EAAE,CAAC,aAAa,GAAG,OAAO,MAAM,EAAE;AAK9D,QAAO,gBAAgB;EACvB;;YAEQ,EAAE,QAAQ,aAAa,YAAY,UAAU,OAAO,MAAM,CAAC;;AASvE,MAAa,QAAQ,OAAO,UAAU,CAAC,MAAkB,EACvD,IAAI,SACL,CAAC;YACU,EAAE,QAAQ,WAAW,YAAY,UAAU,OAAO,MAAM,CAAC;;AAGrE,MAAa,gBAAgB,OAAO,UAAU;;YAElC,EAAE,QAAQ,WAAW,YAAY,UAAU,OAAO,MAAM,CAAC"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"TextArea-CaIEBz8d.mjs","names":[],"sources":["../components/TextArea/TextArea.tsx"],"sourcesContent":["import { type ComponentPropsWithoutRef, forwardRef } from 'react';\nimport styled from 'styled-components';\n\nimport useFormField from 'design-system/components/FormControl/useFormField';\nimport inputMixin, { type InputMixinProps } from 'design-system/mixins/input';\nimport type { InputProps } from 'design-system/types/InputProps';\nimport { TransitionDuration } from 'design-system/variables/transitions';\n\nexport interface TextAreaProps\n extends ComponentPropsWithoutRef<'textarea'>, Omit<InputProps, 'inputSize'> {}\n\nconst TextArea = styled('textarea')<InputMixinProps>`\n ${inputMixin};\n /* Don't cut off overflow text */\n padding-bottom: 0;\n font-family: ${({ theme }) => theme.text.fontFamily.base};\n height: ${({ theme }) => theme.element.height.xl};\n white-space: pre-wrap;\n transition:\n all ${TransitionDuration.Fast},\n height 0s,\n width 0s;\n`;\n\nconst TextAreaWithStyle = forwardRef<HTMLTextAreaElement, TextAreaProps>(function TextAreaWithStyle(\n { size, ...props },\n ref,\n) {\n const { inputId } = useFormField(props);\n\n return (\n <TextArea\n id={inputId}\n aria-invalid={props.hasError === true}\n ref={ref}\n {...props}\n $size={size}\n />\n );\n});\n\nexport { TextAreaWithStyle as TextArea };\nexport default TextAreaWithStyle;\n"],"mappings":";;;;;;;AAWA,MAAM,WAAW,OAAO,WAAW;IAC/B,WAAW;;;kBAGG,EAAE,YAAY,MAAM,KAAK,WAAW,KAAK;aAC9C,EAAE,YAAY,MAAM,QAAQ,OAAO,GAAG;;;kBAGjB;;;;AAKlC,MAAM,oBAAoB,WAA+C,SAAS,kBAChF,EAAE,MAAM,GAAG,SACX,KACA;CACA,MAAM,EAAE,YAAY,aAAa,MAAM;AAEvC,QACE,oBAAC,UAAD;EACE,IAAI;EACJ,gBAAc,MAAM,aAAa;EAC5B;EACL,GAAI;EACJ,OAAO;EACP,CAAA;EAEJ"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"Toggle-BsqSNYok.mjs","names":[],"sources":["../components/Toggle/Toggle.tsx"],"sourcesContent":["import { forwardRef, type ReactNode, useCallback, useRef } from 'react';\nimport { useId } from 'react-aria';\nimport styled, { css } from 'styled-components';\n\nimport { Color, Spacing } from '@persona/design-tokens';\nimport useFormField from 'design-system/components/FormControl/useFormField';\nimport { Label } from 'design-system/components/Text';\nimport { opacityOf } from 'design-system/lib/color';\nimport { isDisabled, isHovered, isNotDisabled } from 'design-system/lib/pseudoClass';\nimport { semanticColor, semanticOnly, semanticTokens } from 'design-system/lib/semanticColor';\nimport useToggle from 'design-system/lib/useToggle';\nimport { focusOutlineControlled } from 'design-system/mixins/focus';\nimport { TransitionDuration } from 'design-system/variables/transitions';\n\ntype ToggleSize = 'md' | 'sm';\n\ninterface SwitchSizes {\n width: number;\n height: number;\n}\n\nconst SWITCH_SIZES: Record<ToggleSize, SwitchSizes> = {\n md: { width: 32, height: 18 },\n sm: { width: 28, height: parseInt(Spacing[4], 10) }, // 16px height from tokens\n};\n\ninterface SliderSizes {\n diameter: number;\n offset: number;\n}\n\nconst SLIDER_SIZES: Record<ToggleSize, SliderSizes> = {\n md: { diameter: 14, offset: 2 },\n sm: { diameter: parseInt(Spacing[3], 10), offset: 2 }, // 12px diameter from tokens\n};\n\nconst Container = styled.div`\n display: inline-flex;\n align-items: center;\n position: relative;\n`;\n\ntype SwitchProps = Pick<ToggleProps, 'disabled'> & {\n checked: boolean;\n focused: boolean;\n size: ToggleSize;\n};\nconst Switch = styled.div<SwitchProps>`\n transition: box-shadow ${TransitionDuration.Fast};\n position: relative;\n display: inline-flex;\n height: ${({ size }) => SWITCH_SIZES[size].height}px;\n width: ${({ size }) => SWITCH_SIZES[size].width}px;\n border-radius: 1000px;\n cursor: pointer;\n &${isDisabled} {\n cursor: not-allowed;\n }\n\n ${focusOutlineControlled}\n\n /* Background */\n &:before {\n position: absolute;\n content: '';\n height: ${({ size }) => SWITCH_SIZES[size].height}px;\n width: ${({ size }) => SWITCH_SIZES[size].width}px;\n top: 0;\n right: 0;\n bottom: 0;\n background-color: ${({ theme, checked, disabled }) => {\n const tokens = semanticTokens(theme);\n if (tokens) {\n if (disabled) {\n return checked ? tokens.InputSurfaceAccentDisabled : tokens.BorderDivider;\n }\n return checked ? tokens.InputSurfaceAccent : tokens.InputBorderStrong;\n }\n if (disabled) {\n return checked ? Color.BackgroundInputActiveDisabled : Color.BackgroundInputDisabled;\n }\n return checked ? Color.BackgroundInputActive : Color.BackgroundInputToggle;\n }};\n\n transition: ${TransitionDuration.Medium};\n border-radius: 1000px;\n\n ${(props) =>\n !props.checked && props.disabled\n ? semanticOnly((tokens) => `opacity: ${opacityOf(tokens.Opacity65)};`)(props)\n : ''}\n }\n\n &${isHovered}${isNotDisabled}:before {\n background-color: ${({ theme, checked }) =>\n checked\n ? semanticColor(theme, 'InputSurfaceAccentHover', Color.BackgroundInputActiveHover)\n : semanticColor(theme, 'InputBorderHoverStrong', Color.BackgroundInputToggleHover)};\n }\n\n /* Slider thumb */\n &:after {\n position: absolute;\n content: '';\n height: ${({ size }) => SLIDER_SIZES[size].diameter}px;\n width: ${({ size }) => SLIDER_SIZES[size].diameter}px;\n bottom: ${({ size }) => SLIDER_SIZES[size].offset}px;\n background-color: ${({ theme }) => semanticColor(theme, 'InputSurfaceInverseStatic', Color.BackgroundInputDefault)};\n transition: ${TransitionDuration.Medium};\n border-radius: 1000px;\n\n right: ${({ size }) => SLIDER_SIZES[size].offset}px;\n\n ${({ checked, size }) =>\n !checked &&\n css`\n transform: translateX(-${getSlideDistance(size)}px);\n `}\n\n ${(props) =>\n props.disabled\n ? semanticOnly((tokens) => `opacity: ${opacityOf(tokens.Opacity65)};`)(props)\n : ''}\n }\n`;\n\nconst ToggleLabel = styled(Label)<Pick<ToggleProps, 'disabled' | 'size'>>`\n cursor: ${({ disabled }) => (disabled ? 'initial' : 'pointer')};\n color: ${({ theme }) => semanticColor(theme, 'FgSecondary', Color.TextSecondary)};\n\n padding: 0 ${Spacing[2]};\n white-space: nowrap;\n line-height: ${({ size = 'md' }) => `${SWITCH_SIZES[size].height}px`};\n\n ${({ theme, disabled }) =>\n disabled &&\n css`\n color: ${semanticColor(theme, 'FgDisabled', theme.color.text.disabled)};\n `}\n`;\n\nfunction getSlideDistance(size: ToggleSize) {\n const switchSize = SWITCH_SIZES[size];\n const sliderSize = SLIDER_SIZES[size];\n return switchSize.width - sliderSize.diameter - sliderSize.offset * 2;\n}\n\nconst HiddenInput = styled.input`\n height: 0;\n width: 0;\n margin: -1px;\n border: 0;\n overflow: hidden;\n clip: rect(0, 0, 0, 0);\n position: absolute;\n`;\n\nexport interface ToggleProps {\n className?: string;\n /** Disables interaction and renders the toggle in a muted style. */\n disabled?: boolean;\n /** Marks the switch as required (sets aria-required). */\n required?: boolean;\n /**\n * Tooltip / title shown on the root element when the toggle is off.\n * @defaultValue 'Off'\n */\n titleOff?: string;\n /**\n * Tooltip / title shown on the root element when the toggle is on.\n * @defaultValue 'On'\n */\n titleOn?: string;\n /**\n * Called with the new boolean value when the user clicks the toggle.\n * The component is fully controlled — you must update `value` in response.\n */\n onChange?: (value: boolean) => void;\n /**\n * Current on/off state. Falsy values (`false`, `null`, `undefined`, `''`)\n * are treated as off; `true` is treated as on.\n */\n value: boolean | null | undefined | '';\n /** `id` forwarded to the visible switch element. */\n id?: string;\n /** Label node rendered to the left of the switch when the toggle is on. */\n labelOn?: ReactNode;\n /**\n * Label node rendered to the left of the switch when the toggle is off.\n * Falls back to `labelOn` when not provided.\n */\n labelOff?: ReactNode;\n 'data-test'?: string;\n /**\n * Accessible label for the hidden `<input role=\"switch\">`.\n * Required when no visible label is provided via `labelOn` / `labelOff`.\n */\n 'aria-label'?: string;\n /**\n * Size of the toggle switch.\n * @defaultValue 'md'\n */\n size?: ToggleSize;\n}\n\nexport const Toggle = forwardRef<HTMLDivElement, ToggleProps>(function Toggle(\n {\n className,\n disabled,\n required,\n titleOff = 'Off',\n titleOn = 'On',\n onChange = () => undefined,\n value,\n id,\n labelOn,\n labelOff,\n 'data-test': dataTest,\n 'aria-label': ariaLabel,\n size = 'md',\n },\n ref,\n) {\n const field = useFormField({ disabled });\n const generatedId = useId();\n const label = value ? labelOn : labelOff || labelOn;\n\n const [focused, { enable: setFocus, disable: clearFocus }] = useToggle();\n\n const handleChange = useCallback(() => {\n onChange(!value);\n inputRef.current?.focus();\n }, [onChange, value]);\n\n const inputRef = useRef<HTMLInputElement>();\n\n return (\n <Container\n className={className}\n data-test={dataTest}\n title={value ? titleOn : titleOff}\n ref={ref}\n >\n {label != null && (\n <ToggleLabel htmlFor={generatedId} disabled={field.disabled} size={size}>\n {label}\n </ToggleLabel>\n )}\n <Switch\n id={id}\n checked={!!value}\n disabled={field.disabled}\n focused={focused}\n onClick={field.disabled ? undefined : handleChange}\n size={size}\n />\n <HiddenInput\n id={generatedId}\n /* @ts-expect-error [strict-migration] The following line is not strict; please fix! */\n ref={inputRef}\n data-test-toggle-status={value ? 'on' : 'off'}\n disabled={field.disabled}\n type='checkbox'\n checked={!!value}\n readOnly={true}\n onChange={disabled ? undefined : handleChange}\n onFocus={setFocus}\n onBlur={clearFocus}\n aria-checked={!!value}\n role='switch'\n aria-readonly={field.disabled}\n aria-required={required || undefined}\n {...(label\n ? { 'aria-labelledby': generatedId }\n : { 'aria-label': ariaLabel ?? (value ? 'Toggle on' : 'Toggle off') })}\n />\n </Container>\n );\n});\n\nexport default Toggle;\n"],"mappings":"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"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"Tooltip-B-0VRuKT.mjs","names":["Card","CircleHelpIconSmall"],"sources":["../components/Tooltip/Tooltip.tsx","../components/Tooltip/HelperTooltip.tsx","../components/Tooltip/TextUnderlineTooltip.tsx"],"sourcesContent":["import * as TooltipPrimitive from '@radix-ui/react-tooltip';\nimport {\n Children,\n cloneElement,\n type ComponentPropsWithoutRef,\n type ComponentType,\n type ReactElement,\n type ReactNode,\n} from 'react';\nimport styled, { type DefaultTheme, type StyledComponent } from 'styled-components';\n\nimport { Color, Spacing } from '@persona/design-tokens';\nimport Card, { type CardProps } from 'design-system/components/Card';\nimport { semanticColor, semanticOnly } from 'design-system/lib/semanticColor';\nimport { paragraphMixins } from 'design-system/mixins/text';\nimport { fadeIn } from 'design-system/variables/keyframes';\nimport { TransitionDuration } from 'design-system/variables/transitions';\n\ninterface FloatingTooltipProps extends CardProps {\n zIndex?: number;\n contentAlignment: 'start' | 'center' | 'end';\n maxWidth?: string;\n size?: 'sm' | 'md';\n}\n\nexport const FloatingTooltip: StyledComponent<\n ComponentType<ComponentPropsWithoutRef<typeof Card>>,\n DefaultTheme,\n FloatingTooltipProps\n> = styled(Card)<FloatingTooltipProps>`\n ${({ size = 'md' }) => (size === 'sm' ? paragraphMixins.sm : paragraphMixins.md)};\n line-height: ${({ size = 'md' }) => (size === 'sm' ? '16px' : '20px')};\n box-shadow: 0px 0px 14px 2px rgba(0, 0, 0, 0.12);\n border-radius: 4px;\n display: flex;\n align-items: ${({ contentAlignment }) => contentAlignment || 'center'};\n justify-content: center;\n padding: 6px ${Spacing[2]};\n animation: ${fadeIn} ${TransitionDuration.Fast} ease-in-out;\n z-index: ${({ zIndex }) => zIndex};\n margin: 0;\n max-width: ${({ maxWidth }) => maxWidth || '250px'};\n ${semanticOnly((tokens) => `background-color: ${tokens.SurfaceElevated};`)}\n color: ${({ theme }) => semanticColor(theme, 'FgPrimary', Color.TextPrimary)};\n`;\n\nconst TooltipArrow = styled.div`\n width: 0;\n height: 0;\n border-color: ${({ theme }) => semanticColor(theme, 'SurfaceElevated', theme.color.background.primary)};\n border-left: 8px solid transparent;\n border-top: 8px solid ${({ theme }) => semanticColor(theme, 'SurfaceElevated', theme.color.background.primary)};\n border-right: 8px solid transparent;\n`;\n\nconst TooltipIcon = styled.div`\n display: inline-flex;\n`;\n\ninterface TooltipBaseProps\n extends\n Omit<TooltipPrimitive.TooltipProps, 'disableHoverableContent'>,\n TooltipPrimitive.TooltipContentProps {\n /**\n * Optionally hide tooltip arrow.\n */\n hideArrow?: boolean;\n\n children?: ReactNode;\n\n /**\n * Disabling will prevent tooltip from rendering on the trigger\n */\n disabled?: boolean;\n\n /**\n * Render in a portal.\n * Disable to render adjacent to trigger for rendering within elements such as modals\n */\n portal?: boolean;\n\n /**\n * Props applied to Radix UI Portal component\n */\n portalProps?: TooltipPrimitive.TooltipPortalProps;\n\n /**\n * Determines if the tooltip closes when the mouse hovers into the tooltip content area\n */\n interactive?: boolean;\n\n /**\n * Override the zIndex in case the tooltip is used in situations where the content is\n * already elevated\n */\n zIndex?: number;\n\n /**\n * Max width of the contents in the tooltip\n */\n maxWidth?: string;\n\n /**\n * Props to apply to Tooltip.Trigger within\n */\n triggerProps?: TooltipPrimitive.TooltipTriggerProps;\n\n /**\n * Size of the tooltip. Defaults to 'md'.\n */\n size?: 'sm' | 'md';\n}\n\nexport interface TooltipStandardProps extends TooltipBaseProps {\n /**\n * Element that will trigger the tooltip. A `ref` will be set.\n */\n trigger: ReactElement;\n\n iconTrigger?: never;\n\n className?: never;\n\n contentAlignment?: 'start' | 'center' | 'end';\n}\n\nexport interface TooltipWithIconProps extends TooltipBaseProps {\n trigger?: never;\n\n /**\n * Icon that will trigger the tooltip. A wrapper div will be set.\n */\n iconTrigger: ReactElement;\n\n className?: string;\n\n contentAlignment?: 'start' | 'center' | 'end';\n}\n\ntype TooltipProps = TooltipStandardProps | TooltipWithIconProps;\n\nexport const Tooltip = ({\n trigger: triggerProp,\n iconTrigger,\n side = 'bottom',\n hideArrow,\n defaultOpen,\n open,\n delayDuration = 300,\n onOpenChange,\n interactive = true,\n children,\n 'aria-label': ariaLabel,\n portal = true,\n disabled = false,\n className,\n maxWidth,\n zIndex = 10,\n triggerProps,\n portalProps,\n contentAlignment,\n size = 'md',\n ...contentProps\n}: TooltipProps) => {\n let trigger;\n\n if (iconTrigger) {\n trigger = (\n <TooltipIcon tabIndex={0} aria-label={ariaLabel} className={className}>\n {cloneElement(iconTrigger, { focusable: false, 'aria-hidden': true })}\n </TooltipIcon>\n );\n } else {\n trigger = triggerProp;\n }\n\n // quick way to check if children are renderable. null, false, and true will be filtered out when converting to an array\n const hasRenderableChildren = Children.toArray(children).length > 0;\n\n const content = (\n <TooltipPrimitive.Content side={side} sideOffset={8} asChild {...contentProps}>\n <FloatingTooltip\n zIndex={zIndex}\n contentAlignment={contentAlignment}\n maxWidth={maxWidth}\n size={size}\n >\n {children}\n {!hideArrow && (\n <TooltipPrimitive.Arrow asChild>\n <TooltipArrow />\n </TooltipPrimitive.Arrow>\n )}\n </FloatingTooltip>\n </TooltipPrimitive.Content>\n );\n\n return (\n <TooltipPrimitive.Provider delayDuration={delayDuration}>\n <TooltipPrimitive.Root\n open={open}\n defaultOpen={defaultOpen}\n disableHoverableContent={!interactive}\n onOpenChange={onOpenChange}\n >\n <TooltipPrimitive.Trigger asChild aria-label={ariaLabel} {...triggerProps}>\n {trigger}\n </TooltipPrimitive.Trigger>\n\n {!disabled &&\n hasRenderableChildren &&\n (portal ? (\n <TooltipPrimitive.Portal {...portalProps}>{content}</TooltipPrimitive.Portal>\n ) : (\n content\n ))}\n </TooltipPrimitive.Root>\n </TooltipPrimitive.Provider>\n );\n};\n\nexport default Tooltip;\n","import type { ReactNode } from 'react';\nimport { useTheme } from 'styled-components';\n\nimport { Color } from '@persona/design-tokens';\nimport { CircleHelpIcon } from '@persona/icons';\nimport { CircleHelpIcon as CircleHelpIconSmall } from '@persona/icons/12px';\nimport { semanticColor } from 'design-system/lib/semanticColor';\n\nimport Tooltip, { type TooltipWithIconProps } from './Tooltip';\n\nexport interface HelperTooltipProps extends Omit<TooltipWithIconProps, 'iconTrigger'> {\n children: ReactNode;\n size?: 'md' | 'sm';\n}\n\n/**\n * Helper component for rendering help text via help icons.\n */\nconst HelperTooltip = ({ children, size = 'md', ...props }: HelperTooltipProps) => {\n const theme = useTheme();\n const iconColor = semanticColor(theme, 'FgSecondary', Color.BorderIconSecondary);\n return (\n <Tooltip\n size={size}\n iconTrigger={\n size === 'md' ? (\n <CircleHelpIcon color={iconColor} />\n ) : (\n <CircleHelpIconSmall color={iconColor} />\n )\n }\n {...props}\n >\n {children}\n </Tooltip>\n );\n};\n\nexport default HelperTooltip;\n","import type { ReactNode } from 'react';\nimport styled from 'styled-components';\n\nimport { Color } from '@persona/design-tokens';\nimport { semanticColor } from 'design-system/lib/semanticColor';\n\nimport Tooltip, { type TooltipStandardProps } from './Tooltip';\n\nexport const TextWithDashedUnderline = styled.span`\n text-decoration: underline;\n text-decoration-style: dashed;\n text-decoration-color: ${({ theme }) => semanticColor(theme, 'FgTertiary', Color.CoreSlate700)};\n text-underline-offset: 2px;\n text-decoration-thickness: 1px;\n width: fit-content;\n`;\n\ninterface TextUnderlineTooltipProps extends Omit<TooltipStandardProps, 'trigger' | 'iconTrigger'> {\n tooltip: ReactNode;\n}\n\nconst TextUnderlineTooltip = ({ children, tooltip, ...props }: TextUnderlineTooltipProps) => {\n return (\n <Tooltip trigger={<TextWithDashedUnderline>{children}</TextWithDashedUnderline>} {...props}>\n {tooltip}\n </Tooltip>\n );\n};\n\nexport default TextUnderlineTooltip;\n"],"mappings":";;;;;;;;;;;;;AAyBA,MAAa,kBAIT,OAAOA,aAAK;KACX,EAAE,OAAO,WAAY,SAAS,OAAO,gBAAgB,KAAK,gBAAgB,GAAI;kBACjE,EAAE,OAAO,WAAY,SAAS,OAAO,SAAS,OAAQ;;;;kBAItD,EAAE,uBAAuB,oBAAoB,SAAS;;iBAEvD,QAAQ,GAAG;eACb,OAAO,GAAA,QAA2B;cACnC,EAAE,aAAa,OAAO;;gBAEpB,EAAE,eAAe,YAAY,QAAQ;IACjD,cAAc,WAAW,qBAAqB,OAAO,gBAAgB,GAAG,CAAC;YACjE,EAAE,YAAY,cAAc,OAAO,aAAa,MAAM,YAAY,CAAC;;AAG/E,MAAM,eAAe,OAAO,GAAG;;;mBAGZ,EAAE,YAAY,cAAc,OAAO,mBAAmB,MAAM,MAAM,WAAW,QAAQ,CAAC;;2BAE9E,EAAE,YAAY,cAAc,OAAO,mBAAmB,MAAM,MAAM,WAAW,QAAQ,CAAC;;;AAIjH,MAAM,cAAc,OAAO,GAAG;;;AAsF9B,MAAa,WAAW,EACtB,SAAS,aACT,aACA,OAAO,UACP,WACA,aACA,MACA,gBAAgB,KAChB,cACA,cAAc,MACd,UACA,cAAc,WACd,SAAS,MACT,WAAW,OACX,WACA,UACA,SAAS,IACT,cACA,aACA,kBACA,OAAO,MACP,GAAG,mBACe;CAClB,IAAI;AAEJ,KAAI,YACF,WACE,oBAAC,aAAD;EAAa,UAAU;EAAG,cAAY;EAAsB;YACzD,aAAa,aAAa;GAAE,WAAW;GAAO,eAAe;GAAM,CAAC;EACzD,CAAA;KAGhB,WAAU;CAIZ,MAAM,wBAAwB,SAAS,QAAQ,SAAS,CAAC,SAAS;CAElE,MAAM,UACJ,oBAAC,iBAAiB,SAAlB;EAAgC;EAAM,YAAY;EAAG,SAAA;EAAQ,GAAI;YAC/D,qBAAC,iBAAD;GACU;GACU;GACR;GACJ;aAJR,CAMG,UACA,CAAC,aACA,oBAAC,iBAAiB,OAAlB;IAAwB,SAAA;cACtB,oBAAC,cAAD,EAAgB,CAAA;IACO,CAAA,CAEX;;EACO,CAAA;AAG7B,QACE,oBAAC,iBAAiB,UAAlB;EAA0C;YACxC,qBAAC,iBAAiB,MAAlB;GACQ;GACO;GACb,yBAAyB,CAAC;GACZ;aAJhB,CAME,oBAAC,iBAAiB,SAAlB;IAA0B,SAAA;IAAQ,cAAY;IAAW,GAAI;cAC1D;IACwB,CAAA,EAE1B,CAAC,YACA,0BACC,SACC,oBAAC,iBAAiB,QAAlB;IAAyB,GAAI;cAAc;IAAkC,CAAA,GAE7E,SAEkB;;EACE,CAAA;;;;;;;ACvMhC,MAAM,iBAAiB,EAAE,UAAU,OAAO,MAAM,GAAG,YAAgC;CAEjF,MAAM,YAAY,cADJ,UACuB,EAAE,eAAe,MAAM,oBAAoB;AAChF,QACE,oBAAC,SAAD;EACQ;EACN,aACE,SAAS,OACP,oBAAC,gBAAD,EAAgB,OAAO,WAAa,CAAA,GAEpC,oBAACC,kBAAD,EAAqB,OAAO,WAAa,CAAA;EAG7C,GAAI;EAEH;EACO,CAAA;;;;AC1Bd,MAAa,0BAA0B,OAAO,IAAI;;;4BAGtB,EAAE,YAAY,cAAc,OAAO,cAAc,MAAM,aAAa,CAAC;;;;;AAUjG,MAAM,wBAAwB,EAAE,UAAU,SAAS,GAAG,YAAuC;AAC3F,QACE,oBAAC,SAAD;EAAS,SAAS,oBAAC,yBAAD,EAA0B,UAAmC,CAAA;EAAE,GAAI;YAClF;EACO,CAAA"}
@@ -1,17 +0,0 @@
1
- import { n as JsonSchema } from "./jsonSchema-DmOA0Lnu.mjs";
2
- import { n as Chain } from "./methodChainTypes-a7kHYhs7.mjs";
3
- import { t as Option } from "./schemaOptions-BQgLOgtD.mjs";
4
-
5
- //#region lib/chainTypes.d.ts
6
- interface ChainRoot {
7
- chain: Chain;
8
- label: string;
9
- schema: JsonSchema;
10
- }
11
- interface PossibleChainSchema extends Option {
12
- parentSchema: JsonSchema;
13
- returnType: string;
14
- }
15
- //#endregion
16
- export { PossibleChainSchema as n, ChainRoot as t };
17
- //# sourceMappingURL=chainTypes-Cjp0zZ4E.d.mts.map
@@ -1,7 +0,0 @@
1
- import { i as To } from "./types-HxiGiwQN.mjs";
2
-
3
- //#region lib/router/createPath.d.ts
4
- declare function createPath(to: To): string;
5
- //#endregion
6
- export { createPath as t };
7
- //# sourceMappingURL=createPath-B_CLq82C.d.mts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"date-filter-D0ys8s0D.mjs","names":[],"sources":["../lib/date-filter/types.ts","../lib/date-filter/codec.ts"],"sourcesContent":["/** Ordered preset list shared by date-filter consumers. */\nexport const DATE_FILTER_PRESETS = [\n 'last_7_days',\n 'last_14_days',\n 'last_30_days',\n 'this_month',\n 'last_month',\n 'this_year',\n 'last_year',\n] as const;\n\n/** Closed vocabulary of named presets the picker offers. */\nexport type DateFilterPreset = (typeof DATE_FILTER_PRESETS)[number];\n\nexport const DATE_FILTER_PRESET_LABELS: Record<DateFilterPreset, string> = {\n last_7_days: 'Last 7 days',\n last_14_days: 'Last 14 days',\n last_30_days: 'Last 30 days',\n this_month: 'This month',\n last_month: 'Last month',\n this_year: 'This year',\n last_year: 'Last year',\n};\n\nexport interface AbsoluteDateFilterValue {\n kind: 'absolute';\n startDate?: string;\n endDate?: string;\n}\n\nexport interface PresetRelativeDateFilterValue {\n kind: 'relative';\n preset: DateFilterPreset;\n}\n\nexport type RelativeDateFilterValue = PresetRelativeDateFilterValue;\n\nexport type DateFilterValue = AbsoluteDateFilterValue | RelativeDateFilterValue;\n\nexport interface AbsoluteDateRange {\n startDate?: string;\n endDate?: string;\n}\n","import { DateTime, Settings } from 'luxon';\n\nimport { DATE_FILTER_PRESET_LABELS, DATE_FILTER_PRESETS } from './types';\nimport type {\n AbsoluteDateFilterValue,\n AbsoluteDateRange,\n DateFilterPreset,\n DateFilterValue,\n PresetRelativeDateFilterValue,\n RelativeDateFilterValue,\n} from './types';\n\ntype InternalWindow =\n | { mode: 'rolling-days'; days: number }\n | { mode: 'calendar'; unit: 'month' | 'year'; offset: 0 | 1 };\n\nconst PRESET_WINDOWS = {\n last_7_days: { mode: 'rolling-days', days: 7 },\n last_14_days: { mode: 'rolling-days', days: 14 },\n last_30_days: { mode: 'rolling-days', days: 30 },\n this_month: { mode: 'calendar', unit: 'month', offset: 0 },\n last_month: { mode: 'calendar', unit: 'month', offset: 1 },\n this_year: { mode: 'calendar', unit: 'year', offset: 0 },\n last_year: { mode: 'calendar', unit: 'year', offset: 1 },\n} satisfies Record<DateFilterPreset, InternalWindow>;\n\nconst DATE_FILTER_PRESET_SET = new Set<DateFilterPreset>(DATE_FILTER_PRESETS);\n\nfunction isOptionalString(value: unknown): value is string | undefined {\n return typeof value === 'undefined' || typeof value === 'string';\n}\n\nfunction normalizeOptionalString(value: unknown): unknown {\n return value == null ? undefined : value;\n}\n\nfunction isAbsoluteDateFilterValue(value: unknown): value is AbsoluteDateFilterValue {\n if (typeof value !== 'object' || value == null || Array.isArray(value)) {\n return false;\n }\n const record = value as Record<string, unknown>;\n return (\n record.kind === 'absolute' &&\n isOptionalString(normalizeOptionalString(record.startDate)) &&\n isOptionalString(normalizeOptionalString(record.endDate))\n );\n}\n\nfunction isPresetRelativeDateFilterValue(value: unknown): value is PresetRelativeDateFilterValue {\n if (typeof value !== 'object' || value == null || Array.isArray(value)) {\n return false;\n }\n const record = value as Record<string, unknown>;\n return (\n record.kind === 'relative' &&\n typeof record.preset === 'string' &&\n DATE_FILTER_PRESET_SET.has(record.preset as DateFilterPreset)\n );\n}\n\nfunction normalizedAbsoluteDateRange(value: Record<string, unknown>): AbsoluteDateRange {\n return {\n startDate: normalizeOptionalString(value.startDate) as string | undefined,\n endDate: normalizeOptionalString(value.endDate) as string | undefined,\n };\n}\n\nexport function parseDateFilterValue(raw: unknown): DateFilterValue | null {\n if (typeof raw !== 'object' || raw == null || Array.isArray(raw)) {\n return null;\n }\n const value = raw as Record<string, unknown>;\n if (!('kind' in value)) {\n if (\n ('startDate' in value || 'endDate' in value) &&\n isOptionalString(normalizeOptionalString(value.startDate)) &&\n isOptionalString(normalizeOptionalString(value.endDate))\n ) {\n return {\n kind: 'absolute',\n ...normalizedAbsoluteDateRange(value),\n };\n }\n return null;\n }\n if (isAbsoluteDateFilterValue(value)) {\n return {\n kind: 'absolute',\n ...normalizedAbsoluteDateRange(value),\n };\n }\n if (isPresetRelativeDateFilterValue(value)) {\n return {\n kind: 'relative',\n preset: value.preset,\n };\n }\n return 'startDate' in value || 'endDate' in value\n ? parseDateFilterValue({ startDate: value.startDate, endDate: value.endDate })\n : null;\n}\n\nfunction relativeWindowFor(value: RelativeDateFilterValue): InternalWindow {\n return PRESET_WINDOWS[value.preset];\n}\n\nfunction dateTimeToISO(value: DateTime): string {\n const iso = value.toISO();\n if (iso == null) {\n throw new Error(\n `Unable to evaluate invalid date: ${value.invalidExplanation ?? 'unknown error'}`,\n );\n }\n return iso;\n}\n\nfunction isValidZone(zone: string): boolean {\n return DateTime.utc().setZone(zone).isValid;\n}\n\nfunction resolvedZone(zone?: string): string {\n if (zone && isValidZone(zone)) {\n return zone;\n }\n\n const defaultZone = Settings.defaultZone.name;\n return isValidZone(defaultZone) ? defaultZone : 'UTC';\n}\n\nfunction evaluationNow(context: { zone?: string; now?: DateTime }): DateTime {\n // Constructing `DateTime.now()` uses Settings.defaultZone and is itself invalid\n // when an application has configured an unsupported default zone. UTC gives us\n // the same instant without depending on that ambient setting.\n const now = context.now ?? DateTime.utc();\n if (!now.isValid) {\n throw new Error(\n `Unable to evaluate invalid date: ${now.invalidExplanation ?? 'unknown error'}`,\n );\n }\n\n const zonedNow = now.setZone(resolvedZone(context.zone));\n if (!zonedNow.isValid) {\n throw new Error(\n `Unable to evaluate invalid date: ${zonedNow.invalidExplanation ?? 'unknown error'}`,\n );\n }\n return zonedNow;\n}\n\nfunction evaluateRelative(\n value: RelativeDateFilterValue,\n context: { zone?: string; now?: DateTime },\n): Required<AbsoluteDateRange> {\n const window = relativeWindowFor(value);\n const zonedNow = evaluationNow(context);\n let start: DateTime;\n let end: DateTime;\n\n if (window.mode === 'rolling-days') {\n end = zonedNow.endOf('day');\n // Preserve the established picker and legacy-filter contract: `days` is a\n // lookback offset, so the start date and today are both included.\n start = zonedNow.minus({ days: window.days }).startOf('day');\n } else {\n const referencedPeriod = zonedNow.minus({ [window.unit]: window.offset });\n start = referencedPeriod.startOf(window.unit);\n end = window.offset === 0 ? zonedNow.endOf('day') : referencedPeriod.endOf(window.unit);\n }\n\n return { startDate: dateTimeToISO(start), endDate: dateTimeToISO(end) };\n}\n\nexport function resolveDateFilterValue(\n value: RelativeDateFilterValue,\n context?: { zone?: string; now?: DateTime },\n): Required<AbsoluteDateRange>;\nexport function resolveDateFilterValue(\n value: DateFilterValue,\n context?: { zone?: string; now?: DateTime },\n): AbsoluteDateRange;\nexport function resolveDateFilterValue(\n value: DateFilterValue,\n context: { zone?: string; now?: DateTime } = {},\n): AbsoluteDateRange {\n if (!isRelative(value)) {\n return {\n startDate: value.startDate,\n endDate: value.endDate,\n };\n }\n return evaluateRelative(value, context);\n}\n\n/**\n * Which preset a control should render as selected.\n *\n * Only stored metadata makes a value semantic. Once writes are enabled an absolute\n * value means the user picked dates, so inferring a preset from them would relabel\n * their choice; with writes disabled no metadata is ever stored, so inference is\n * the only thing that can highlight a preset at all.\n *\n * `undefined` asks the picker to infer from the dates, `null` selects nothing.\n */\nexport function selectedPresetFor(\n value: DateFilterValue | null,\n writesEnabled: boolean,\n): DateFilterPreset | null | undefined {\n if (value != null && isRelative(value)) {\n return value.preset;\n }\n return writesEnabled ? null : undefined;\n}\n\nexport function isRelative(value: DateFilterValue): value is RelativeDateFilterValue {\n return value.kind === 'relative';\n}\n\nexport function formatDateFilterValue(value: DateFilterValue): string | null {\n if (!isRelative(value)) {\n return null;\n }\n return DATE_FILTER_PRESET_LABELS[value.preset];\n}\n"],"mappings":"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"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"i18n-BscB9FUy.mjs","names":[],"sources":["../lib/i18n/strings.ts","../lib/i18n/I18nContext.tsx","../lib/i18n/formatDateTime.ts"],"sourcesContent":["/**\n * Built-in, user-visible copy rendered by PDS components.\n *\n * Every key has an English default in `DEFAULT_COMMON_STRINGS`. Hosts translate by passing\n * overrides to `PDSProvider`'s `strings` prop; any key they omit keeps its English default.\n * Function-valued keys take the interpolated values (counts, names, labels) as arguments.\n *\n * Key names line up with the `CommonStringOverrides` tables that\n * `@persona-id/persona-dashboard-app` ships (`useCommonStrings()`), so a dashboard can pass\n * those tables straight through.\n */\ntype Arg = string | number;\n\nexport interface CommonStrings {\n // --- Modal ------------------------------------------------------------------------------\n closeModal: string;\n\n // --- DataTable --------------------------------------------------------------------------\n noResults: string;\n noResultsTryFilters: string;\n noColumnsConfigured: string;\n selectAll: string;\n selectAllOf: (header: Arg) => string;\n selectRow: (rowId: Arg) => string;\n selectRowForColumn: (columnHeader: Arg, rowId: Arg) => string;\n clearSelection: string;\n selectedItems: (count: Arg) => string;\n noImage: string;\n viewRowActions: (rowNumber: Arg) => string;\n\n // --- Pagination -------------------------------------------------------------------------\n pagination: string;\n itemsPerPage: string;\n showingItems: (firstItem: Arg, lastItem: Arg, totalItems: Arg) => string;\n /**\n * Totals phrase rendered right after the current page (the go-to-page input, or the page number\n * as text), e.g. `of 3 pages` in `[1] of 3 pages`. Return only that phrase: the current page is\n * already on screen, so do not interpolate `currentPage` into the result. It is passed only for\n * languages whose wording depends on it. `totalPages` is `many` when the total is unknown.\n */\n pageCount: (currentPage: Arg, totalPages: Arg) => string;\n /** Stands in for an unknown total (\"of many pages\") when the server only knows a lower bound. */\n many: string;\n goToPageNumber: string;\n previousPage: string;\n nextPage: string;\n previousShort: string;\n next: string;\n\n // --- Column configuration (table properties gear) --------------------------------------\n tableProperties: string;\n configureViewPermissionDenied: string;\n configureColumns: string;\n searchColumns: string;\n shownColumns: string;\n hiddenColumns: string;\n noMatchingColumns: string;\n showColumn: (label: Arg) => string;\n hideColumn: (label: Arg) => string;\n\n // --- Saved views (control bar tabs) -----------------------------------------------------\n defaultView: string;\n saveView: string;\n saveCurrentView: string;\n addNewView: string;\n searchViews: string;\n moreViews: (count: Arg) => string;\n duplicateView: string;\n resetView: string;\n saveViewMenuItem: string;\n setAsDefaultView: string;\n unsetDefaultView: string;\n setDefaultViewTitle: string;\n setDefaultViewConfirmation: (viewName: Arg) => string;\n unsetDefaultViewTitle: string;\n unsetDefaultViewConfirmation: (viewName: Arg) => string;\n showView: string;\n hideView: string;\n hideViewTitle: string;\n hideViewNamed: (viewName: Arg) => string;\n delete: string;\n cancel: string;\n deleteViewTitle: string;\n deleteViewConfirmation: (viewName: Arg) => string;\n showFilters: string;\n hideFilters: string;\n showSearchBar: string;\n\n // --- Config-driven TableControls filters -----------------------------------------------\n filterType: string;\n filterActions: string;\n selectFilterOption: string;\n selectFilterType: string;\n deleteFilter: string;\n addFilter: string;\n filterGroupLabel: (filterName: Arg) => string;\n\n // --- Filters V2: bar, pills and field picker -------------------------------------------\n filterBar: string;\n filter: string;\n filterFieldPicker: string;\n fields: string;\n editFilter: (description: Arg) => string;\n removeFilter: (description: Arg) => string;\n editFilterFor: (fieldLabel: Arg) => string;\n additionalValues: string;\n operator: string;\n groupCount: (count: Arg) => string;\n booleanTrue: string;\n booleanFalse: string;\n booleanValue: string;\n fieldValue: (fieldLabel: Arg) => string;\n applyFilter: string;\n selectAnOptionPlaceholder: string;\n enterAValue: string;\n enterANumber: string;\n searchPlaceholder: string;\n noMatches: string;\n\n // --- Filters V2: advanced rules builder -------------------------------------------------\n rules: string;\n rulesWithCount: (count: Arg) => string;\n advancedFilterRules: string;\n conditionIf: string;\n conditionAnd: string;\n conditionOr: string;\n editStatement: (condition: Arg) => string;\n clearAll: string;\n deleteGroup: string;\n filterGroup: (groupNumber: Arg) => string;\n moreActionsForFilterGroup: (groupNumber: Arg) => string;\n addRuleToFilterGroup: (groupNumber: Arg) => string;\n noRulesYet: string;\n rulesInGroup: (groupNumber: Arg) => string;\n orGroup: string;\n field: string;\n value: string;\n selectField: string;\n fieldForRule: (ruleNumber: Arg, groupNumber: Arg) => string;\n operatorForRule: (ruleNumber: Arg, groupNumber: Arg) => string;\n\n // --- Filters V2: operator labels --------------------------------------------------------\n operatorIs: string;\n operatorIsNot: string;\n operatorContains: string;\n operatorDoesNotContain: string;\n operatorIsEmpty: string;\n operatorIsNotEmpty: string;\n operatorIsTrue: string;\n operatorIsFalse: string;\n operatorBefore: string;\n operatorAfter: string;\n operatorBetween: string;\n operatorIsAnyOf: string;\n operatorIsNoneOf: string;\n operatorGreaterThan: string;\n operatorGreaterThanOrEqual: string;\n operatorLessThan: string;\n operatorLessThanOrEqual: string;\n /** Numeric (`integer` / `float`) field operators, e.g. \"Members is equal to 5\". */\n operatorIsEqualTo: string;\n operatorIsGreaterThan: string;\n operatorIsLessThan: string;\n}\n\nexport type CommonStringKey = keyof CommonStrings;\n\n/** A single override value: plain copy, or a formatter for keys that interpolate. */\nexport type CommonStringValue = string | ((...args: Arg[]) => string);\n\n/**\n * What `PDSProvider` accepts. Deliberately loose (any string key, string or formatter value) so a\n * host's translation table can be passed through untyped; values whose kind does not match the\n * default (a string where a formatter is expected, or vice versa) are ignored.\n */\nexport type CommonStringOverrides = Readonly<Record<string, CommonStringValue | undefined>>;\n\nexport const DEFAULT_COMMON_STRINGS: Readonly<CommonStrings> = {\n closeModal: 'Close',\n\n noResults: 'No results found.',\n noResultsTryFilters: 'No results found. Try changing your filters.',\n noColumnsConfigured: 'No columns configured',\n selectAll: 'Select all',\n selectAllOf: (header) => `Select all ${header}`,\n selectRow: (rowId) => `Select row ${rowId}`,\n selectRowForColumn: (columnHeader, rowId) => `${columnHeader} for row ${rowId}`,\n clearSelection: 'Clear selection',\n selectedItems: (count) => `${count} selected`,\n noImage: 'No image',\n viewRowActions: (rowNumber) => `View actions for row ${rowNumber}`,\n\n pagination: 'pagination',\n itemsPerPage: 'Items per page:',\n showingItems: (firstItem, lastItem, totalItems) =>\n `Showing ${firstItem}-${lastItem} of ${totalItems} items`,\n pageCount: (_currentPage, totalPages) => `of ${totalPages} pages`,\n many: 'many',\n goToPageNumber: 'Go to page number',\n previousPage: 'Previous page',\n nextPage: 'Next page',\n previousShort: 'Prev',\n next: 'Next',\n\n tableProperties: 'Table Properties',\n configureViewPermissionDenied: 'Your role does not have permission to configure the view.',\n configureColumns: 'Configure columns',\n searchColumns: 'Search by item...',\n shownColumns: 'Shown attributes',\n hiddenColumns: 'Hidden attributes',\n noMatchingColumns: 'No matching attributes',\n showColumn: (label) => `Show ${label}`,\n hideColumn: (label) => `Hide ${label}`,\n\n defaultView: 'Default view',\n saveView: 'Save view',\n saveCurrentView: 'Save current view',\n addNewView: 'Add new view',\n searchViews: 'Search for a view...',\n moreViews: (count) => `${count} more\\u2026`,\n duplicateView: 'Duplicate',\n resetView: 'Reset',\n saveViewMenuItem: 'Save',\n setAsDefaultView: 'Set as default',\n unsetDefaultView: 'Unset default',\n setDefaultViewTitle: 'Set as default view?',\n setDefaultViewConfirmation: (viewName) =>\n `This will change the default view for your entire organization. Everyone will see \\u201c${viewName}\\u201d when they open this table without a view selected.`,\n unsetDefaultViewTitle: 'Unset default view?',\n unsetDefaultViewConfirmation: (viewName) =>\n `This will change the default view for your entire organization. Everyone will see the built-in default view instead of \\u201c${viewName}\\u201d.`,\n showView: 'Show',\n hideView: 'Hide',\n hideViewTitle: 'Hide view',\n hideViewNamed: (viewName) => `Hide ${viewName}`,\n delete: 'Delete',\n cancel: 'Cancel',\n deleteViewTitle: 'Delete view?',\n deleteViewConfirmation: (viewName) =>\n `This will permanently delete \\u201c${viewName}\\u201d. This action cannot be undone.`,\n showFilters: 'Show filters',\n hideFilters: 'Hide filters',\n showSearchBar: 'Show search bar',\n\n filterType: 'Filter type',\n filterActions: 'Filter actions',\n selectFilterOption: 'Select...',\n selectFilterType: 'Select filter type',\n deleteFilter: 'Delete filter',\n addFilter: 'Add filter',\n filterGroupLabel: (filterName) => `${filterName} filter`,\n\n filterBar: 'Filter bar',\n filter: 'Filter',\n filterFieldPicker: 'Filter field picker',\n fields: 'Fields',\n editFilter: (description) => `Edit filter: ${description}`,\n removeFilter: (description) => `Remove filter: ${description}`,\n editFilterFor: (fieldLabel) => `Edit filter for ${fieldLabel}`,\n additionalValues: 'Additional values',\n operator: 'Operator',\n groupCount: (count) => `${count} group${Number(count) === 1 ? '' : 's'}`,\n booleanTrue: 'True',\n booleanFalse: 'False',\n booleanValue: 'Boolean value',\n fieldValue: (fieldLabel) => `${fieldLabel} value`,\n applyFilter: 'Apply filter',\n selectAnOptionPlaceholder: 'Select an option',\n enterAValue: 'Enter a value',\n enterANumber: 'Enter a number',\n searchPlaceholder: 'Search',\n noMatches: 'No matches',\n\n rules: 'Rules',\n rulesWithCount: (count) => `Rules ${count}`,\n advancedFilterRules: 'Advanced filter rules',\n conditionIf: 'If',\n conditionAnd: 'And',\n conditionOr: 'Or',\n editStatement: (condition) => `Edit \\u2018${condition}\\u2019 statement`,\n clearAll: 'Clear all',\n deleteGroup: 'Delete group',\n filterGroup: (groupNumber) => `Filter group ${groupNumber}`,\n moreActionsForFilterGroup: (groupNumber) => `More actions for filter group ${groupNumber}`,\n addRuleToFilterGroup: (groupNumber) => `Add rule to filter group ${groupNumber}`,\n noRulesYet: 'No rules yet',\n rulesInGroup: (groupNumber) => `Rules in group ${groupNumber}`,\n orGroup: 'Or group',\n field: 'Field',\n value: 'Value',\n selectField: 'Select field',\n fieldForRule: (ruleNumber, groupNumber) => `Field for rule ${ruleNumber} in group ${groupNumber}`,\n operatorForRule: (ruleNumber, groupNumber) =>\n `Operator for rule ${ruleNumber} in group ${groupNumber}`,\n\n operatorIs: 'is',\n operatorIsNot: 'is not',\n operatorContains: 'contains',\n operatorDoesNotContain: 'does not contain',\n operatorIsEmpty: 'is empty',\n operatorIsNotEmpty: 'is not empty',\n operatorIsTrue: 'is true',\n operatorIsFalse: 'is false',\n operatorBefore: 'before',\n operatorAfter: 'after',\n operatorBetween: 'is between',\n operatorIsAnyOf: 'is any of',\n operatorIsNoneOf: 'is none of',\n operatorGreaterThan: '>',\n operatorGreaterThanOrEqual: '≥',\n operatorLessThan: '<',\n operatorLessThanOrEqual: '≤',\n operatorIsEqualTo: 'is equal to',\n operatorIsGreaterThan: 'is greater than',\n operatorIsLessThan: 'is less than',\n};\n\n/**\n * Layer `overrides` on top of `base`. A value only replaces the base entry when it has the same\n * kind (string vs. formatter), so a mistyped override can never crash a render.\n */\nexport function resolveCommonStrings(\n overrides: CommonStringOverrides | undefined,\n base: Readonly<CommonStrings> = DEFAULT_COMMON_STRINGS,\n): CommonStrings {\n const resolved = { ...base } as Record<CommonStringKey, CommonStringValue>;\n if (!overrides) {\n return resolved as unknown as CommonStrings;\n }\n (Object.keys(base) as CommonStringKey[]).forEach((key) => {\n const override = Object.prototype.hasOwnProperty.call(overrides, key)\n ? overrides[key]\n : undefined;\n if (override != null && typeof override === typeof base[key]) {\n resolved[key] = override;\n }\n });\n return resolved as unknown as CommonStrings;\n}\n","import { createContext, useContext, useMemo, type FC, type PropsWithChildren } from 'react';\n\nimport {\n DEFAULT_COMMON_STRINGS,\n resolveCommonStrings,\n type CommonStringOverrides,\n type CommonStrings,\n} from './strings';\n\ninterface PDSI18nContextValue {\n strings: CommonStrings;\n locale: string | undefined;\n}\n\nconst PDSI18nContext = createContext<PDSI18nContextValue>({\n strings: DEFAULT_COMMON_STRINGS,\n locale: undefined,\n});\n\nexport interface PDSI18nProviderProps {\n /** Overrides for built-in copy; omitted keys inherit from an outer provider, then English. */\n strings?: CommonStringOverrides;\n /** BCP 47 locale for date/time formatting; inherits from an outer provider when omitted. */\n locale?: string;\n}\n\n/**\n * Supplies translated built-in copy and the active locale to PDS components. `PDSProvider`\n * always renders this; use it directly only to override a subtree.\n */\nexport const PDSI18nProvider: FC<PropsWithChildren<PDSI18nProviderProps>> = ({\n strings,\n locale,\n children,\n}) => {\n const parent = useContext(PDSI18nContext);\n const value = useMemo(\n () => ({\n strings: strings ? resolveCommonStrings(strings, parent.strings) : parent.strings,\n locale: locale ?? parent.locale,\n }),\n [parent, strings, locale],\n );\n return <PDSI18nContext.Provider value={value}>{children}</PDSI18nContext.Provider>;\n};\n\n/** Built-in copy for the current locale (English unless a provider supplied overrides). */\nexport function usePDSStrings(): CommonStrings {\n return useContext(PDSI18nContext).strings;\n}\n\n/** The locale supplied to `PDSProvider`, or `undefined` when the host has not set one. */\nexport function usePDSLocale(): string | undefined {\n return useContext(PDSI18nContext).locale;\n}\n","import { DateTime, type DateTimeFormatOptions } from 'luxon';\n\n/** Luxon medium date, e.g. \"Oct 5, 2011\". */\nexport const LEGACY_DATE_FORMAT = 'DD';\n/** e.g. \"Oct 5, 2011 2:48 PM\". */\nexport const LEGACY_DATETIME_FORMAT = 'MMM d, yyyy h:mm a';\n/** Short time zone name, e.g. \"EDT\" (en-US) or \"HAE\" (fr-CA). */\nconst TIME_ZONE_TOKEN = 'ZZZZ';\n\n/**\n * Whether `locale` keeps PDS's historical English token formats. No locale (a host that has not\n * opted in) and US English render exactly as before; every other locale gets `Intl` presets so\n * the day/month order, month names, 24-hour clock and separators follow the locale.\n */\nexport function usesLegacyDateFormat(locale: string | undefined): boolean {\n if (!locale) {\n return true;\n }\n const normalized = locale.toLowerCase().replace('_', '-');\n return normalized === 'en' || normalized === 'en-us';\n}\n\nexport interface FormatDateTimeOptions {\n /** BCP 47 locale, usually from `usePDSLocale()`. */\n locale?: string;\n /** Explicit Luxon `toFormat` tokens; month/day names still localize when a locale is set. */\n format?: string;\n /** Append the short time zone name, localized (\"EDT\" in en-US, \"HAE\" in fr-CA). */\n showTimeZone?: boolean;\n}\n\nfunction withLocale(dateTime: DateTime, locale: string | undefined): DateTime {\n return locale ? dateTime.setLocale(locale) : dateTime;\n}\n\nfunction format(\n dateTime: DateTime,\n legacyFormat: string,\n preset: DateTimeFormatOptions,\n { locale, format: explicitFormat, showTimeZone }: FormatDateTimeOptions,\n): string {\n const localized = withLocale(dateTime, locale);\n if (explicitFormat || usesLegacyDateFormat(locale)) {\n const formatted = localized.toFormat(explicitFormat ?? legacyFormat);\n return showTimeZone ? `${formatted} ${localized.toFormat(TIME_ZONE_TOKEN)}` : formatted;\n }\n return localized.toLocaleString(showTimeZone ? { ...preset, timeZoneName: 'short' } : preset);\n}\n\n/** Format a calendar date for display (\"Oct 5, 2011\" / \"5 oct. 2011\"). */\nexport function formatDate(dateTime: DateTime, options: FormatDateTimeOptions = {}): string {\n return format(dateTime, LEGACY_DATE_FORMAT, DateTime.DATE_MED, options);\n}\n\n/** Format a date and time for display (\"Oct 5, 2011 2:48 PM\" / \"5 oct. 2011, 14 h 48\"). */\nexport function formatDateTime(dateTime: DateTime, options: FormatDateTimeOptions = {}): string {\n return format(dateTime, LEGACY_DATETIME_FORMAT, DateTime.DATETIME_MED, options);\n}\n\n/** The short time zone name for `dateTime`'s zone in `locale` (\"EDT\" / \"HAE\"). */\nexport function formatTimeZoneName(dateTime: DateTime, locale?: string): string {\n return withLocale(dateTime, locale).toFormat(TIME_ZONE_TOKEN);\n}\n"],"mappings":"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"}
@@ -1,7 +0,0 @@
1
- import { n as FilterBarProps$1 } from "./FilterBar-BQWpTi2b.mjs";
2
-
3
- //#region components/DataTable/TableControls/FiltersV2/FilterBar/index.d.ts
4
- type FilterBarProps = FilterBarProps$1;
5
- //#endregion
6
- export { FilterBarProps as t };
7
- //# sourceMappingURL=index-DTAcGzW4.d.mts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"intersperse-ObkRVOag.mjs","names":[],"sources":["../lib/intersperse.ts"],"sourcesContent":["/**\n * @name intersperse\n *\n * Inserts an element between array items using a separator function. The\n * separator function is passed the previous index, the previous element, and\n * the next element.\n *\n * ```typescript\n * const nodeList: React.ReactNode[] = [...]\n * const commaSeparatedList = intersperse(nodeList, () => ', ')\n * const advancedSeparatedList = intersperse(nodeList, i => <Separator key={i}/>)\n * ```\n */\nexport function intersperse<T>(arr: T[], separator: (n: number, prev: T, curr: T) => T): T[] {\n return arr.flatMap((a, i) => (i > 0 ? [separator(i - 1, arr[i - 1], a), a] : [a]));\n}\n"],"mappings":";;;;;;;;;;;;;;AAaA,SAAgB,YAAe,KAAU,WAAoD;AAC3F,QAAO,IAAI,SAAS,GAAG,MAAO,IAAI,IAAI,CAAC,UAAU,IAAI,GAAG,IAAI,IAAI,IAAI,EAAE,EAAE,EAAE,GAAG,CAAC,EAAE,CAAE"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"methodChain-xZ1_vhbz.mjs","names":["isEmpty","updatedParse","UpdatedSyntaxError"],"sources":["../lib/assertNever.ts","../lib/methodChain.ts"],"sourcesContent":["import { reportError } from './errorReporter';\n\n// @ts-expect-error Returns never so the compiler checks exhaustiveness, but doesn't throw so a malformed\n// value degrades instead of breaking render.\nexport function assertNever(value: never): never {\n const dump = typeof value === 'object' ? JSON.stringify(value) : value;\n reportError(new TypeError(`assertNever non-exhaustive match: ${dump}`));\n}\n","import { last } from 'lodash-es';\n\nimport {\n parse as updatedParse,\n SyntaxError as UpdatedSyntaxError,\n} from '@persona/design-system/components/SmartTextInput/parser/method-chain/parser';\nimport { ASTNodeType } from '@persona/design-system/components/SmartTextInput/parser/method-chain/types';\n\nimport { assertNever } from './assertNever';\nimport { type JsonSchema, JsonSchemaTypes } from './jsonSchema';\nimport { normalizeChain } from './methodChainNormalize';\nimport type {\n Chain,\n FunctionNode,\n CustomFunctionNode,\n IdentifierNode,\n StringNode,\n NumberNode,\n ArrayNode,\n FunctionParamType,\n MethodChainNode,\n} from './methodChainTypes';\n\n// Re-export types for backward compatibility\nexport {\n Chain,\n FunctionNode,\n CustomFunctionNode,\n IdentifierNode,\n StringNode,\n NumberNode,\n ArrayNode,\n FunctionParamType,\n MethodChainNode,\n};\n\nexport const methodChainCache: { [key: string]: Chain } = {};\n\nexport const MethodChainNodeTypes = {\n Chain: ASTNodeType.Chain,\n String: ASTNodeType.String,\n Number: ASTNodeType.Number,\n Identifier: ASTNodeType.Identifier,\n Function: ASTNodeType.Function,\n CustomFunction: ASTNodeType.CustomFunction,\n Array: ASTNodeType.Array,\n} as const;\n\nexport const EMPTY_METHOD_CHAIN: Chain = {\n type: MethodChainNodeTypes.Chain,\n links: [],\n};\n\ntype MethodChainLiteral = string | number | (string | number)[];\n\nexport const isFunctionNode = (node: MethodChainNode): node is FunctionNode =>\n node.type === MethodChainNodeTypes.Function;\n\nexport const isCustomFunctionNode = (node: MethodChainNode): node is CustomFunctionNode =>\n node.type === MethodChainNodeTypes.CustomFunction;\n\nexport const isIdentifierNode = (node: MethodChainNode): node is IdentifierNode =>\n node.type === MethodChainNodeTypes.Identifier;\n\nexport const isStringNode = (node: FunctionParamType): node is StringNode =>\n node.type === MethodChainNodeTypes.String;\n\nexport const isArrayNode = (node: FunctionParamType): node is ArrayNode =>\n node.type === MethodChainNodeTypes.Array;\n\nexport const containsFunctionNode = (methodChain: Chain, ...functionNames: string[]): boolean =>\n methodChain.links.some((link) => isFunctionNode(link) && functionNames.includes(link.name));\n\n/**\n * Returns true if the string contains any function node (e.g. `.at(...)`) when parsed\n * as a method chain. Use this to detect whether a field path must be treated as an\n * opaque key rather than split on `.` for Lodash set/get operations.\n */\nexport const pathContainsFunctionNode = (path: string): boolean => {\n try {\n const chain = parseMethodChain(path);\n return chain.links.some(\n (link) =>\n link.type === MethodChainNodeTypes.Function ||\n link.type === MethodChainNodeTypes.CustomFunction,\n );\n } catch {\n return false;\n }\n};\n\nexport const isEmpty = (methodChain: Chain): boolean => methodChain.links.length === 0;\n\nexport const getFunctionParams = (\n methodChain: Chain,\n ...functionNames: string[]\n): Record<string, MethodChainLiteral[]> => {\n return Object.fromEntries(\n methodChain.links\n .filter((link) => isFunctionNode(link))\n .filter((link) => functionNames.includes(link.name))\n .map((link) => [link.name, flattenParamsToString(link.params)]),\n );\n};\n\nexport const removeFunctionNode = (methodChain: Chain, functionName: string): Chain => {\n return {\n type: MethodChainNodeTypes.Chain,\n links: methodChain.links.filter(\n (link) => link.type !== MethodChainNodeTypes.Function || link.name !== functionName,\n ),\n };\n};\n\nconst flattenParamsToString = (params: FunctionParamType[]): MethodChainLiteral[] => {\n const result: MethodChainLiteral[] = [];\n\n for (const param of params) {\n switch (param.type) {\n case MethodChainNodeTypes.Chain:\n result.push(...flattenChainToString(param));\n break;\n case MethodChainNodeTypes.String:\n case MethodChainNodeTypes.Number:\n result.push(param.value);\n break;\n case MethodChainNodeTypes.Array:\n result.push(param.items.map((item) => item.value));\n break;\n }\n }\n\n return result;\n};\n\nconst flattenChainToString = (methodChain: Chain): MethodChainLiteral[] =>\n methodChain.links\n .map((link) => {\n switch (link.type) {\n case MethodChainNodeTypes.Function:\n case MethodChainNodeTypes.CustomFunction:\n return flattenParamsToString(link.params);\n case MethodChainNodeTypes.Identifier:\n return link.name;\n }\n })\n .flat();\n\nexport const isValid = (methodChain: string): boolean => {\n try {\n parseMethodChain(methodChain);\n return true;\n } catch {\n return false;\n }\n};\n\n/**\n * The parsed chain, or undefined when it will not parse. Callers that read a chain while it is being\n * authored hold half-typed input, where a throw is noise rather than an error.\n */\nexport const tryParseMethodChain = (methodChain: string): Chain | undefined => {\n try {\n return parseMethodChain(methodChain);\n } catch {\n return undefined;\n }\n};\n\n/** The object a chain is rooted at: `current_case.inquiries` -> `current_case`. */\nexport const methodChainRootName = (methodChain: string): string | undefined => {\n const [root] = tryParseMethodChain(methodChain)?.links ?? [];\n return root && isIdentifierNode(root) ? root.name : undefined;\n};\n\nexport const parseMethodChain = (methodChain: string): Chain => {\n if (!methodChain || methodChain === '') {\n return EMPTY_METHOD_CHAIN;\n }\n\n if (!methodChainCache[methodChain]) {\n methodChainCache[methodChain] = normalizeChain(updatedParse(methodChain, { strict: true }));\n }\n return methodChainCache[methodChain];\n};\n\nconst memberToString = (value: string): string => {\n return `'${value.replace(/'/g, \"\\\\'\")}'`;\n};\n\n// Number#toString gives the shortest decimal string that round-trips back to the same\n// float64, but for magnitudes below 1e-6 (or above 1e21) it switches to exponential\n// notation (e.g. `0.0000001` -> \"1e-7\"), which the method chain grammar's plain-decimal\n// literal can't parse. Expand that exponential form back into plain decimal by shifting\n// its digits, rather than capping fraction digits (e.g. via toLocaleString), which silently\n// rounds magnitudes below the cap to \"0\" instead of reproducing them.\nconst expandExponentialNotation = (str: string): string => {\n const match = /^(-?)(\\d)(?:\\.(\\d+))?e([+-]\\d+)$/.exec(str);\n if (!match) {\n return str;\n }\n const [, sign, leadingDigit, fractionDigits = '', exponentStr] = match;\n const digits = leadingDigit + fractionDigits;\n const exponent = Number(exponentStr);\n\n if (exponent < 0) {\n return `${sign}0.${'0'.repeat(-exponent - 1)}${digits}`;\n }\n // Positive exponential notation only appears at exponent >= 21 (Number#toString's own\n // threshold), while a double's mantissa never carries more than 17 significant digits,\n // so the exponent always reaches past the end of `digits` — there's no case where the\n // decimal point lands inside them.\n return `${sign}${digits}${'0'.repeat(exponent - fractionDigits.length)}`;\n};\n\nconst numberLiteralToString = (value: number): string => {\n // The grammar has no literal for Infinity/NaN; render/label call sites have no way to\n // recover from a throw, so fall back to JS's own string form instead of crashing them.\n if (!Number.isFinite(value)) {\n return `${value}`;\n }\n\n const str = value.toString();\n return /e/i.test(str) ? expandExponentialNotation(str) : str;\n};\n\nexport const methodChainToString = (\n methodChain: Chain | StringNode | NumberNode | ArrayNode,\n): string => {\n switch (methodChain.type) {\n case MethodChainNodeTypes.String:\n return methodChain.value;\n case MethodChainNodeTypes.Number:\n return numberLiteralToString(methodChain.value);\n case MethodChainNodeTypes.Array:\n return `[${methodChain.items\n .map((item) =>\n item.type === MethodChainNodeTypes.String\n ? memberToString(item.value)\n : `#${numberLiteralToString(item.value)}`,\n )\n .join(', ')}]`;\n default: {\n const regex = new RegExp('^@?[a-zA-Z0-9_-]+$');\n return methodChain.links\n .map((link, index) => {\n switch (link.type) {\n case MethodChainNodeTypes.Identifier: {\n const fullName = `${link.prefix ?? ''}${link.name}`;\n return index === 0\n ? fullName\n : regex.test(fullName)\n ? `.${fullName}`\n : `['${fullName.replace(/'/g, \"\\\\'\")}']`;\n }\n case MethodChainNodeTypes.Function: {\n return `.${link.name}(${link.params\n .map((param) => {\n switch (param.type) {\n case MethodChainNodeTypes.String:\n return memberToString(param.value);\n case MethodChainNodeTypes.Number:\n return `#${numberLiteralToString(param.value)}`;\n case MethodChainNodeTypes.Chain:\n case MethodChainNodeTypes.Array:\n return methodChainToString(param);\n }\n })\n .join(', ')})`;\n }\n case MethodChainNodeTypes.CustomFunction: {\n const paramStr = link.params\n .map((param) => {\n switch (param.type) {\n case MethodChainNodeTypes.String:\n return memberToString(param.value);\n case MethodChainNodeTypes.Number:\n return `#${numberLiteralToString(param.value)}`;\n case MethodChainNodeTypes.Chain:\n case MethodChainNodeTypes.Array:\n return methodChainToString(param);\n }\n })\n .join(', ');\n return [\n index === 0 ? '' : '.',\n `@${link.name}`,\n link.params.length === 0 ? '' : `(${paramStr})`,\n ].join('');\n }\n default:\n assertNever(link);\n }\n })\n .join('');\n }\n }\n};\n\nexport const appendedMethodChain = (\n parentChain: Chain,\n appended: string | MethodChainNode,\n): Chain => {\n const buildNode = (name: string): MethodChainNode => {\n if (name.startsWith('@')) {\n return { type: MethodChainNodeTypes.CustomFunction, name: name.slice(1), params: [] };\n }\n return { type: MethodChainNodeTypes.Identifier, name };\n };\n\n return {\n type: MethodChainNodeTypes.Chain,\n links: [...parentChain.links, typeof appended === 'string' ? buildNode(appended) : appended],\n };\n};\n\nexport const parseWithPartialOption = (\n path: string,\n): { methodChain: Chain; partial: string; valid: boolean } => {\n if (isValid(path)) {\n const methodChain = parseMethodChain(path);\n\n return {\n methodChain: {\n type: MethodChainNodeTypes.Chain,\n links: methodChain.links.slice(0, methodChain.links.length - 1),\n },\n partial: last(methodChain.links)?.name || '',\n valid: true,\n };\n }\n\n const rawParse = (input: string): Chain => {\n return normalizeChain(updatedParse(input, { strict: true }));\n };\n\n try {\n if (path.endsWith('.')) {\n return {\n methodChain: rawParse(path.slice(0, -1)),\n partial: '',\n valid: true,\n };\n }\n\n if (path.lastIndexOf('[') > path.lastIndexOf(']')) {\n const partialString = path.slice(path.lastIndexOf('[') + 2);\n const partialValue = partialString.endsWith(\"'\") ? partialString.slice(0, -1) : partialString;\n return {\n methodChain: rawParse(path.slice(0, path.lastIndexOf('['))),\n partial: partialValue,\n valid: true,\n };\n }\n } catch {\n /* empty */\n }\n\n return {\n methodChain: EMPTY_METHOD_CHAIN,\n partial: path,\n valid: false,\n };\n};\n\n// Check if the path can be parsed as legacy method chain format.\n// Normative means all the name parts are\n// 1. delimited by only dots and\n// 2. only contain alphanumeric characters, underscores, and hyphens.\nexport const pathIsNormative = (path: string): boolean => {\n return path.split('.').every((part) => /^[a-zA-Z0-9_-]+$/.test(part));\n};\nexport const getSyntaxError = (): typeof UpdatedSyntaxError => UpdatedSyntaxError;\n\nexport const methodChainNodeToJsonSchema = (\n node: StringNode | NumberNode | ArrayNode,\n): JsonSchema | null => {\n if (node.type === MethodChainNodeTypes.String) {\n return {\n type: JsonSchemaTypes.String,\n };\n } else if (node.type === MethodChainNodeTypes.Number) {\n return {\n type: JsonSchemaTypes.Number,\n };\n } else if (node.type === MethodChainNodeTypes.Array) {\n // Determine the items schema based on the first item type\n // For simplicity, assume all items are the same type\n if (node.items.length > 0) {\n const firstItem = node.items[0];\n const itemSchema: JsonSchema =\n firstItem.type === MethodChainNodeTypes.String\n ? { type: JsonSchemaTypes.String }\n : { type: JsonSchemaTypes.Number };\n\n return {\n type: JsonSchemaTypes.Array,\n items: itemSchema,\n };\n } else {\n return {\n type: JsonSchemaTypes.Array,\n items: { type: JsonSchemaTypes.String },\n };\n }\n }\n\n return null;\n};\n"],"mappings":";;;;;;;AAIA,SAAgB,YAAY,OAAqB;CAC/C,MAAM,OAAO,OAAO,UAAU,WAAW,KAAK,UAAU,MAAM,GAAG;AACjE,6BAAY,IAAI,UAAU,qCAAqC,OAAO,CAAC;;;;AC8BzE,MAAa,mBAA6C,EAAE;AAE5D,MAAa,uBAAuB;CAClC,OAAA;CACA,QAAA;CACA,QAAA;CACA,YAAA;CACA,UAAA;CACA,gBAAA;CACA,OAAA;CACD;AAED,MAAa,qBAA4B;CACvC,MAAM,qBAAqB;CAC3B,OAAO,EAAE;CACV;AAID,MAAa,kBAAkB,SAC7B,KAAK,SAAS,qBAAqB;AAErC,MAAa,wBAAwB,SACnC,KAAK,SAAS,qBAAqB;AAErC,MAAa,oBAAoB,SAC/B,KAAK,SAAS,qBAAqB;AAErC,MAAa,gBAAgB,SAC3B,KAAK,SAAS,qBAAqB;AAErC,MAAa,eAAe,SAC1B,KAAK,SAAS,qBAAqB;AAErC,MAAa,wBAAwB,aAAoB,GAAG,kBAC1D,YAAY,MAAM,MAAM,SAAS,eAAe,KAAK,IAAI,cAAc,SAAS,KAAK,KAAK,CAAC;;;;;;AAO7F,MAAa,4BAA4B,SAA0B;AACjE,KAAI;AAEF,SADc,iBAAiB,KACnB,CAAC,MAAM,MAChB,SACC,KAAK,SAAS,qBAAqB,YACnC,KAAK,SAAS,qBAAqB,eACtC;SACK;AACN,SAAO;;;AAIX,MAAaA,aAAW,gBAAgC,YAAY,MAAM,WAAW;AAErF,MAAa,qBACX,aACA,GAAG,kBACsC;AACzC,QAAO,OAAO,YACZ,YAAY,MACT,QAAQ,SAAS,eAAe,KAAK,CAAC,CACtC,QAAQ,SAAS,cAAc,SAAS,KAAK,KAAK,CAAC,CACnD,KAAK,SAAS,CAAC,KAAK,MAAM,sBAAsB,KAAK,OAAO,CAAC,CAAC,CAClE;;AAGH,MAAa,sBAAsB,aAAoB,iBAAgC;AACrF,QAAO;EACL,MAAM,qBAAqB;EAC3B,OAAO,YAAY,MAAM,QACtB,SAAS,KAAK,SAAS,qBAAqB,YAAY,KAAK,SAAS,aACxE;EACF;;AAGH,MAAM,yBAAyB,WAAsD;CACnF,MAAM,SAA+B,EAAE;AAEvC,MAAK,MAAM,SAAS,OAClB,SAAQ,MAAM,MAAd;EACE,KAAK,qBAAqB;AACxB,UAAO,KAAK,GAAG,qBAAqB,MAAM,CAAC;AAC3C;EACF,KAAK,qBAAqB;EAC1B,KAAK,qBAAqB;AACxB,UAAO,KAAK,MAAM,MAAM;AACxB;EACF,KAAK,qBAAqB;AACxB,UAAO,KAAK,MAAM,MAAM,KAAK,SAAS,KAAK,MAAM,CAAC;AAClD;;AAIN,QAAO;;AAGT,MAAM,wBAAwB,gBAC5B,YAAY,MACT,KAAK,SAAS;AACb,SAAQ,KAAK,MAAb;EACE,KAAK,qBAAqB;EAC1B,KAAK,qBAAqB,eACxB,QAAO,sBAAsB,KAAK,OAAO;EAC3C,KAAK,qBAAqB,WACxB,QAAO,KAAK;;EAEhB,CACD,MAAM;AAEX,MAAa,WAAW,gBAAiC;AACvD,KAAI;AACF,mBAAiB,YAAY;AAC7B,SAAO;SACD;AACN,SAAO;;;;;;;AAQX,MAAa,uBAAuB,gBAA2C;AAC7E,KAAI;AACF,SAAO,iBAAiB,YAAY;SAC9B;AACN;;;;AAKJ,MAAa,uBAAuB,gBAA4C;CAC9E,MAAM,CAAC,QAAQ,oBAAoB,YAAY,EAAE,SAAS,EAAE;AAC5D,QAAO,QAAQ,iBAAiB,KAAK,GAAG,KAAK,OAAO,KAAA;;AAGtD,MAAa,oBAAoB,gBAA+B;AAC9D,KAAI,CAAC,eAAe,gBAAgB,GAClC,QAAO;AAGT,KAAI,CAAC,iBAAiB,aACpB,kBAAiB,eAAe,eAAeC,UAAa,aAAa,EAAE,QAAQ,MAAM,CAAC,CAAC;AAE7F,QAAO,iBAAiB;;AAG1B,MAAM,kBAAkB,UAA0B;AAChD,QAAO,IAAI,MAAM,QAAQ,MAAM,MAAM,CAAC;;AASxC,MAAM,6BAA6B,QAAwB;CACzD,MAAM,QAAQ,mCAAmC,KAAK,IAAI;AAC1D,KAAI,CAAC,MACH,QAAO;CAET,MAAM,GAAG,MAAM,cAAc,iBAAiB,IAAI,eAAe;CACjE,MAAM,SAAS,eAAe;CAC9B,MAAM,WAAW,OAAO,YAAY;AAEpC,KAAI,WAAW,EACb,QAAO,GAAG,KAAK,IAAI,IAAI,OAAO,CAAC,WAAW,EAAE,GAAG;AAMjD,QAAO,GAAG,OAAO,SAAS,IAAI,OAAO,WAAW,eAAe,OAAO;;AAGxE,MAAM,yBAAyB,UAA0B;AAGvD,KAAI,CAAC,OAAO,SAAS,MAAM,CACzB,QAAO,GAAG;CAGZ,MAAM,MAAM,MAAM,UAAU;AAC5B,QAAO,KAAK,KAAK,IAAI,GAAG,0BAA0B,IAAI,GAAG;;AAG3D,MAAa,uBACX,gBACW;AACX,SAAQ,YAAY,MAApB;EACE,KAAK,qBAAqB,OACxB,QAAO,YAAY;EACrB,KAAK,qBAAqB,OACxB,QAAO,sBAAsB,YAAY,MAAM;EACjD,KAAK,qBAAqB,MACxB,QAAO,IAAI,YAAY,MACpB,KAAK,SACJ,KAAK,SAAS,qBAAqB,SAC/B,eAAe,KAAK,MAAM,GAC1B,IAAI,sBAAsB,KAAK,MAAM,GAC1C,CACA,KAAK,KAAK,CAAC;EAChB,SAAS;GACP,MAAM,wBAAQ,IAAI,OAAO,qBAAqB;AAC9C,UAAO,YAAY,MAChB,KAAK,MAAM,UAAU;AACpB,YAAQ,KAAK,MAAb;KACE,KAAK,qBAAqB,YAAY;MACpC,MAAM,WAAW,GAAG,KAAK,UAAU,KAAK,KAAK;AAC7C,aAAO,UAAU,IACb,WACA,MAAM,KAAK,SAAS,GAClB,IAAI,aACJ,KAAK,SAAS,QAAQ,MAAM,MAAM,CAAC;;KAE3C,KAAK,qBAAqB,SACxB,QAAO,IAAI,KAAK,KAAK,GAAG,KAAK,OAC1B,KAAK,UAAU;AACd,cAAQ,MAAM,MAAd;OACE,KAAK,qBAAqB,OACxB,QAAO,eAAe,MAAM,MAAM;OACpC,KAAK,qBAAqB,OACxB,QAAO,IAAI,sBAAsB,MAAM,MAAM;OAC/C,KAAK,qBAAqB;OAC1B,KAAK,qBAAqB,MACxB,QAAO,oBAAoB,MAAM;;OAErC,CACD,KAAK,KAAK,CAAC;KAEhB,KAAK,qBAAqB,gBAAgB;MACxC,MAAM,WAAW,KAAK,OACnB,KAAK,UAAU;AACd,eAAQ,MAAM,MAAd;QACE,KAAK,qBAAqB,OACxB,QAAO,eAAe,MAAM,MAAM;QACpC,KAAK,qBAAqB,OACxB,QAAO,IAAI,sBAAsB,MAAM,MAAM;QAC/C,KAAK,qBAAqB;QAC1B,KAAK,qBAAqB,MACxB,QAAO,oBAAoB,MAAM;;QAErC,CACD,KAAK,KAAK;AACb,aAAO;OACL,UAAU,IAAI,KAAK;OACnB,IAAI,KAAK;OACT,KAAK,OAAO,WAAW,IAAI,KAAK,IAAI,SAAS;OAC9C,CAAC,KAAK,GAAG;;KAEZ,QACE,aAAY,KAAK;;KAErB,CACD,KAAK,GAAG;;;;AAKjB,MAAa,uBACX,aACA,aACU;CACV,MAAM,aAAa,SAAkC;AACnD,MAAI,KAAK,WAAW,IAAI,CACtB,QAAO;GAAE,MAAM,qBAAqB;GAAgB,MAAM,KAAK,MAAM,EAAE;GAAE,QAAQ,EAAE;GAAE;AAEvF,SAAO;GAAE,MAAM,qBAAqB;GAAY;GAAM;;AAGxD,QAAO;EACL,MAAM,qBAAqB;EAC3B,OAAO,CAAC,GAAG,YAAY,OAAO,OAAO,aAAa,WAAW,UAAU,SAAS,GAAG,SAAS;EAC7F;;AAGH,MAAa,0BACX,SAC4D;AAC5D,KAAI,QAAQ,KAAK,EAAE;EACjB,MAAM,cAAc,iBAAiB,KAAK;AAE1C,SAAO;GACL,aAAa;IACX,MAAM,qBAAqB;IAC3B,OAAO,YAAY,MAAM,MAAM,GAAG,YAAY,MAAM,SAAS,EAAE;IAChE;GACD,SAAS,KAAK,YAAY,MAAM,EAAE,QAAQ;GAC1C,OAAO;GACR;;CAGH,MAAM,YAAY,UAAyB;AACzC,SAAO,eAAeA,UAAa,OAAO,EAAE,QAAQ,MAAM,CAAC,CAAC;;AAG9D,KAAI;AACF,MAAI,KAAK,SAAS,IAAI,CACpB,QAAO;GACL,aAAa,SAAS,KAAK,MAAM,GAAG,GAAG,CAAC;GACxC,SAAS;GACT,OAAO;GACR;AAGH,MAAI,KAAK,YAAY,IAAI,GAAG,KAAK,YAAY,IAAI,EAAE;GACjD,MAAM,gBAAgB,KAAK,MAAM,KAAK,YAAY,IAAI,GAAG,EAAE;GAC3D,MAAM,eAAe,cAAc,SAAS,IAAI,GAAG,cAAc,MAAM,GAAG,GAAG,GAAG;AAChF,UAAO;IACL,aAAa,SAAS,KAAK,MAAM,GAAG,KAAK,YAAY,IAAI,CAAC,CAAC;IAC3D,SAAS;IACT,OAAO;IACR;;SAEG;AAIR,QAAO;EACL,aAAa;EACb,SAAS;EACT,OAAO;EACR;;AAOH,MAAa,mBAAmB,SAA0B;AACxD,QAAO,KAAK,MAAM,IAAI,CAAC,OAAO,SAAS,mBAAmB,KAAK,KAAK,CAAC;;AAEvE,MAAa,uBAAkDC;AAE/D,MAAa,+BACX,SACsB;AACtB,KAAI,KAAK,SAAS,qBAAqB,OACrC,QAAO,EACL,MAAA,UACD;UACQ,KAAK,SAAS,qBAAqB,OAC5C,QAAO,EACL,MAAA,UACD;UACQ,KAAK,SAAS,qBAAqB,MAG5C,KAAI,KAAK,MAAM,SAAS,EAOtB,QAAO;EACL,MAAA;EACA,OARgB,KAAK,MAAM,GAEjB,SAAS,qBAAqB,SACpC,EAAE,MAAA,UAA8B,GAChC,EAAE,MAAA,UAA8B;EAKrC;KAED,QAAO;EACL,MAAA;EACA,OAAO,EAAE,MAAA,UAA8B;EACxC;AAIL,QAAO"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"parser-BeTiVjRs.mjs","names":[],"sources":["../components/SmartTextInput/parser/method-chain/parser.js"],"sourcesContent":["/**\n * =========================================================\n * This file is generated by bin/method_chain_parser/generate.sh\n * Do not edit this file directly\n * =========================================================\n */\n\n\n// @generated by Peggy 4.2.0.\n//\n// https://peggyjs.org/\n\n\n\n function mkError(start, end, kind, extra) {\n return { type: 'error', start, end, ...(kind ? { kind } : {}), ...(extra || {}) };\n }\n function hasErrors(node) {\n if (!node || typeof node !== 'object') return false;\n if (node.type === 'error') return true;\n const children = node.children || [];\n return children.some(hasErrors);\n }\n\nfunction peg$subclass(child, parent) {\n function C() { this.constructor = child; }\n C.prototype = parent.prototype;\n child.prototype = new C();\n}\n\nfunction peg$SyntaxError(message, expected, found, location) {\n var self = Error.call(this, message);\n // istanbul ignore next Check is a necessary evil to support older environments\n if (Object.setPrototypeOf) {\n Object.setPrototypeOf(self, peg$SyntaxError.prototype);\n }\n self.expected = expected;\n self.found = found;\n self.location = location;\n self.name = \"SyntaxError\";\n return self;\n}\n\npeg$subclass(peg$SyntaxError, Error);\n\nfunction peg$padEnd(str, targetLength, padString) {\n padString = padString || \" \";\n if (str.length > targetLength) { return str; }\n targetLength -= str.length;\n padString += padString.repeat(targetLength);\n return str + padString.slice(0, targetLength);\n}\n\npeg$SyntaxError.prototype.format = function(sources) {\n var str = \"Error: \" + this.message;\n if (this.location) {\n var src = null;\n var k;\n for (k = 0; k < sources.length; k++) {\n if (sources[k].source === this.location.source) {\n src = sources[k].text.split(/\\r\\n|\\n|\\r/g);\n break;\n }\n }\n var s = this.location.start;\n var offset_s = (this.location.source && (typeof this.location.source.offset === \"function\"))\n ? this.location.source.offset(s)\n : s;\n var loc = this.location.source + \":\" + offset_s.line + \":\" + offset_s.column;\n if (src) {\n var e = this.location.end;\n var filler = peg$padEnd(\"\", offset_s.line.toString().length, ' ');\n var line = src[s.line - 1];\n var last = s.line === e.line ? e.column : line.length + 1;\n var hatLen = (last - s.column) || 1;\n str += \"\\n --> \" + loc + \"\\n\"\n + filler + \" |\\n\"\n + offset_s.line + \" | \" + line + \"\\n\"\n + filler + \" | \" + peg$padEnd(\"\", s.column - 1, ' ')\n + peg$padEnd(\"\", hatLen, \"^\");\n } else {\n str += \"\\n at \" + loc;\n }\n }\n return str;\n};\n\npeg$SyntaxError.buildMessage = function(expected, found) {\n var DESCRIBE_EXPECTATION_FNS = {\n literal: function(expectation) {\n return \"\\\"\" + literalEscape(expectation.text) + \"\\\"\";\n },\n\n class: function(expectation) {\n var escapedParts = expectation.parts.map(function(part) {\n return Array.isArray(part)\n ? classEscape(part[0]) + \"-\" + classEscape(part[1])\n : classEscape(part);\n });\n\n return \"[\" + (expectation.inverted ? \"^\" : \"\") + escapedParts.join(\"\") + \"]\";\n },\n\n any: function() {\n return \"any character\";\n },\n\n end: function() {\n return \"end of input\";\n },\n\n other: function(expectation) {\n return expectation.description;\n }\n };\n\n function hex(ch) {\n return ch.charCodeAt(0).toString(16).toUpperCase();\n }\n\n function literalEscape(s) {\n return s\n .replace(/\\\\/g, \"\\\\\\\\\")\n .replace(/\"/g, \"\\\\\\\"\")\n .replace(/\\0/g, \"\\\\0\")\n .replace(/\\t/g, \"\\\\t\")\n .replace(/\\n/g, \"\\\\n\")\n .replace(/\\r/g, \"\\\\r\")\n .replace(/[\\x00-\\x0F]/g, function(ch) { return \"\\\\x0\" + hex(ch); })\n .replace(/[\\x10-\\x1F\\x7F-\\x9F]/g, function(ch) { return \"\\\\x\" + hex(ch); });\n }\n\n function classEscape(s) {\n return s\n .replace(/\\\\/g, \"\\\\\\\\\")\n .replace(/\\]/g, \"\\\\]\")\n .replace(/\\^/g, \"\\\\^\")\n .replace(/-/g, \"\\\\-\")\n .replace(/\\0/g, \"\\\\0\")\n .replace(/\\t/g, \"\\\\t\")\n .replace(/\\n/g, \"\\\\n\")\n .replace(/\\r/g, \"\\\\r\")\n .replace(/[\\x00-\\x0F]/g, function(ch) { return \"\\\\x0\" + hex(ch); })\n .replace(/[\\x10-\\x1F\\x7F-\\x9F]/g, function(ch) { return \"\\\\x\" + hex(ch); });\n }\n\n function describeExpectation(expectation) {\n return DESCRIBE_EXPECTATION_FNS[expectation.type](expectation);\n }\n\n function describeExpected(expected) {\n var descriptions = expected.map(describeExpectation);\n var i, j;\n\n descriptions.sort();\n\n if (descriptions.length > 0) {\n for (i = 1, j = 1; i < descriptions.length; i++) {\n if (descriptions[i - 1] !== descriptions[i]) {\n descriptions[j] = descriptions[i];\n j++;\n }\n }\n descriptions.length = j;\n }\n\n switch (descriptions.length) {\n case 1:\n return descriptions[0];\n\n case 2:\n return descriptions[0] + \" or \" + descriptions[1];\n\n default:\n return descriptions.slice(0, -1).join(\", \")\n + \", or \"\n + descriptions[descriptions.length - 1];\n }\n }\n\n function describeFound(found) {\n return found ? \"\\\"\" + literalEscape(found) + \"\\\"\" : \"end of input\";\n }\n\n return \"Expected \" + describeExpected(expected) + \" but \" + describeFound(found) + \" found.\";\n};\n\nfunction peg$parse(input, options) {\n options = options !== undefined ? options : {};\n\n var peg$FAILED = {};\n var peg$source = options.grammarSource;\n\n var peg$startRuleFunctions = { Chain: peg$parseChain, InvalidChainStart: peg$parseInvalidChainStart, ErrorLink: peg$parseErrorLink, Link: peg$parseLink, DotNode: peg$parseDotNode, CustomFunction: peg$parseCustomFunction, Function: peg$parseFunction, InvalidParamContent: peg$parseInvalidParamContent, ParenOpen: peg$parseParenOpen, ParenClose: peg$parseParenClose, Parameters: peg$parseParameters, Parameter: peg$parseParameter, LiteralIdentifier: peg$parseLiteralIdentifier, SymbolIdentifier: peg$parseSymbolIdentifier, NonEmptyString: peg$parseNonEmptyString, String: peg$parseString, Array: peg$parseArray, ArrayItems: peg$parseArrayItems, ArrayItem: peg$parseArrayItem, StringChar: peg$parseStringChar, Number: peg$parseNumber, Escapables: peg$parseEscapables, Escape: peg$parseEscape, Dot: peg$parseDot, Quote: peg$parseQuote, _: peg$parse_ };\n var peg$startRuleFunction = peg$parseChain;\n\n var peg$c0 = \"}\";\n var peg$c1 = \",\";\n var peg$c2 = \")\";\n var peg$c3 = \"@\";\n var peg$c4 = \".\";\n var peg$c5 = \"(\";\n var peg$c6 = \"[\";\n var peg$c7 = \"]\";\n var peg$c8 = \"'\";\n var peg$c9 = \"\\\\\";\n var peg$c10 = \"#\";\n\n var peg$r0 = /^[${}]/;\n var peg$r1 = /^[@[]/;\n var peg$r2 = /^[ \\t]/;\n var peg$r3 = /^[a-z0-9_\\-]/i;\n var peg$r4 = /^[a-zA-Z0-9_]/;\n var peg$r5 = /^[a-zA-Z0-9_\\-]/;\n var peg$r6 = /^['\\\\]/;\n var peg$r7 = /^[0-9]/;\n var peg$r8 = /^[ \\t\\n\\r]/;\n\n var peg$e0 = peg$literalExpectation(\"}\", false);\n var peg$e1 = peg$literalExpectation(\",\", false);\n var peg$e2 = peg$literalExpectation(\")\", false);\n var peg$e3 = peg$anyExpectation();\n var peg$e4 = peg$classExpectation([\"$\", \"{\", \"}\"], false, false);\n var peg$e5 = peg$literalExpectation(\"@\", false);\n var peg$e6 = peg$classExpectation([\"@\", \"[\"], false, false);\n var peg$e7 = peg$classExpectation([\" \", \"\\t\"], false, false);\n var peg$e8 = peg$literalExpectation(\".\", false);\n var peg$e9 = peg$classExpectation([[\"a\", \"z\"], [\"0\", \"9\"], \"_\", \"-\"], false, true);\n var peg$e10 = peg$literalExpectation(\"(\", false);\n var peg$e11 = peg$literalExpectation(\"[\", false);\n var peg$e12 = peg$literalExpectation(\"]\", false);\n var peg$e13 = peg$classExpectation([[\"a\", \"z\"], [\"A\", \"Z\"], [\"0\", \"9\"], \"_\"], false, false);\n var peg$e14 = peg$classExpectation([[\"a\", \"z\"], [\"A\", \"Z\"], [\"0\", \"9\"], \"_\", \"-\"], false, false);\n var peg$e15 = peg$literalExpectation(\"'\", false);\n var peg$e16 = peg$classExpectation([\"'\", \"\\\\\"], false, false);\n var peg$e17 = peg$literalExpectation(\"\\\\\", false);\n var peg$e18 = peg$literalExpectation(\"#\", false);\n var peg$e19 = peg$classExpectation([[\"0\", \"9\"]], false, false);\n var peg$e20 = peg$otherExpectation(\"whitespace\");\n var peg$e21 = peg$classExpectation([\" \", \"\\t\", \"\\n\", \"\\r\"], false, false);\n\n var peg$f0 = function(first, rest) {\n const chain = { type: 'chain', children: [first, ...rest.flat()],\n start: location().start.offset, end: location().end.offset };\n if (options.strict === true && hasErrors(chain)) { error('Invalid chain'); }\n return chain;\n };\n var peg$f1 = function(c) {\n const s = location().start.offset;\n const e = location().end.offset;\n return mkError(s, e, 'invalidMethodChainSyntax');\n };\n var peg$f2 = function(d) {\n // Dot at absolute end of input — user is still typing (wip).\n const e = location().end.offset;\n return [d, mkError(e, e, 'trailingDot', { wip: true })];\n };\n var peg$f3 = function(d) {\n // Dot immediately before a Handlebars/Code delimiter — user is still\n // typing the identifier that will follow (wip).\n const e = location().end.offset;\n return [d, mkError(e, e, 'trailingDot', { wip: true })];\n };\n var peg$f4 = function(d) {\n // '@' at end of input or before a delimiter — user starting a custom function name (wip).\n const e = location().end.offset;\n return [d, mkError(e, e, 'trailingAtSign', { wip: true })];\n };\n var peg$f5 = function(d, c) {\n // Dot followed by a character that is not a valid link start — consume\n // the bad character and report it as a syntax error (not wip).\n const s = d.end;\n const e = location().end.offset;\n return [d, mkError(s, e, 'invalidMethodChainSyntax')];\n };\n var peg$f6 = function() {\n return mkError(location().start.offset, location().end.offset, 'invalidMethodChainSyntax');\n };\n var peg$f7 = function(d, link) { return [d, link] };\n var peg$f8 = function() { return { type: 'dot', start: location().start.offset, end: location().end.offset } };\n var peg$f9 = function(name, po, params, pc) { return { type: 'custom_function', name: name.join(''),\n children: [po, ...(params || []), pc],\n start: location().start.offset, end: location().end.offset } };\n var peg$f10 = function(name, po, params) { return options.strict !== true; };\n var peg$f11 = function(name, po, params) {\n const s = location().start.offset;\n const e = location().end.offset;\n return { type: 'custom_function', name: name.join(''), start: s, end: e,\n children: [po, ...params.map(p => ({ ...p, end: e })),\n mkError(e, e, 'unclosedFunctionParen', { wip: true })] };\n };\n var peg$f12 = function(name, po) { return options.strict !== true; };\n var peg$f13 = function(name, po) {\n const e = location().end.offset;\n return { type: 'custom_function', name: name.join(''),\n start: location().start.offset, end: e,\n children: [po, mkError(e, e, 'unclosedFunctionParen', { wip: true })] };\n };\n var peg$f14 = function(name) { return { type: 'custom_function', name: name.join(''), children: [],\n start: location().start.offset, end: location().end.offset } };\n var peg$f15 = function(id, po, params, pc) { return { type: 'function', name: id.name,\n children: [po, ...(params || []), pc],\n start: location().start.offset, end: location().end.offset } };\n var peg$f16 = function(id, po, params) { return options.strict !== true; };\n var peg$f17 = function(id, po, params) {\n const s = location().start.offset;\n const e = location().end.offset;\n if (params.length === 0) {\n return { type: 'function', name: id.name, start: s, end: e,\n children: [po, mkError(po.end, e, 'emptyFunctionParam')] };\n }\n return { type: 'function', name: id.name, start: s, end: e,\n children: [po, ...params.map(p => ({ ...p, end: e })),\n mkError(po.end, e, 'trailingFunctionComma', { wip: true })] };\n };\n var peg$f18 = function(id, po, ic, pc) { return options.strict !== true; };\n var peg$f19 = function(id, po, ic, pc) {\n return { type: 'function', name: id.name,\n start: location().start.offset, end: location().end.offset,\n children: [po, ic, pc] };\n };\n var peg$f20 = function(id, po) { return options.strict !== true; };\n var peg$f21 = function(id, po) {\n return { type: 'function', name: id.name,\n start: location().start.offset, end: location().end.offset,\n children: [po, mkError(po.end, po.end, 'unclosedFunctionParen', { wip: true })] };\n };\n var peg$f22 = function(id, po, params) { return options.strict !== true; };\n var peg$f23 = function(id, po, params) {\n const s = location().start.offset;\n const e = location().end.offset;\n return { type: 'function', name: id.name, start: s, end: e,\n children: [po, ...params.map(p => ({ ...p, end: e })),\n mkError(e, e, 'unclosedFunctionParen', { wip: true })] };\n };\n var peg$f24 = function(id, po) { return options.strict !== true; };\n var peg$f25 = function(id, po) {\n const e = location().end.offset;\n return { type: 'function', name: id.name,\n start: location().start.offset, end: e,\n children: [po, mkError(e, e, 'unclosedFunctionParen', { wip: true })] };\n };\n var peg$f26 = function() {\n return mkError(location().start.offset, location().end.offset, 'invalidMethodChainSyntax');\n };\n var peg$f27 = function() { return { type: 'paren_open', start: location().start.offset, end: location().end.offset } };\n var peg$f28 = function() { return { type: 'paren_close', start: location().start.offset, end: location().end.offset } };\n var peg$f29 = function(str) { return { type: 'string', value: str, start: location().start.offset, end: location().end.offset}};\n var peg$f30 = function(num) { return { type: 'number', value: num, start: location().start.offset, end: location().end.offset}};\n var peg$f31 = function(chain) { return chain; };\n var peg$f32 = function(id) { return { type: 'identifier', name: id,\n start: location().start.offset, end: location().end.offset } };\n var peg$f33 = function(first, rest) { return { type: 'identifier', name: first + rest.join(''),\n start: location().start.offset, end: location().end.offset } };\n var peg$f34 = function(chars) { return chars.join('') };\n var peg$f35 = function(chars) { return chars.join('') };\n var peg$f36 = function(items) {\n return {\n type: 'array',\n children: items || [],\n start: location().start.offset,\n end: location().end.offset\n }\n };\n var peg$f37 = function(str) { return { type: 'string', value: str}};\n var peg$f38 = function(num) { return { type: 'number', value: num}};\n var peg$f39 = function(char) { return char };\n var peg$f40 = function(char) { return char };\n var peg$f41 = function() { return parseFloat(text().substr(1)) };\n var peg$currPos = options.peg$currPos | 0;\n var peg$savedPos = peg$currPos;\n var peg$posDetailsCache = [{ line: 1, column: 1 }];\n var peg$maxFailPos = peg$currPos;\n var peg$maxFailExpected = options.peg$maxFailExpected || [];\n var peg$silentFails = options.peg$silentFails | 0;\n\n var peg$result;\n\n if (options.startRule) {\n if (!(options.startRule in peg$startRuleFunctions)) {\n throw new Error(\"Can't start parsing from rule \\\"\" + options.startRule + \"\\\".\");\n }\n\n peg$startRuleFunction = peg$startRuleFunctions[options.startRule];\n }\n\n function text() {\n return input.substring(peg$savedPos, peg$currPos);\n }\n\n function offset() {\n return peg$savedPos;\n }\n\n function range() {\n return {\n source: peg$source,\n start: peg$savedPos,\n end: peg$currPos\n };\n }\n\n function location() {\n return peg$computeLocation(peg$savedPos, peg$currPos);\n }\n\n function expected(description, location) {\n location = location !== undefined\n ? location\n : peg$computeLocation(peg$savedPos, peg$currPos);\n\n throw peg$buildStructuredError(\n [peg$otherExpectation(description)],\n input.substring(peg$savedPos, peg$currPos),\n location\n );\n }\n\n function error(message, location) {\n location = location !== undefined\n ? location\n : peg$computeLocation(peg$savedPos, peg$currPos);\n\n throw peg$buildSimpleError(message, location);\n }\n\n function peg$literalExpectation(text, ignoreCase) {\n return { type: \"literal\", text: text, ignoreCase: ignoreCase };\n }\n\n function peg$classExpectation(parts, inverted, ignoreCase) {\n return { type: \"class\", parts: parts, inverted: inverted, ignoreCase: ignoreCase };\n }\n\n function peg$anyExpectation() {\n return { type: \"any\" };\n }\n\n function peg$endExpectation() {\n return { type: \"end\" };\n }\n\n function peg$otherExpectation(description) {\n return { type: \"other\", description: description };\n }\n\n function peg$computePosDetails(pos) {\n var details = peg$posDetailsCache[pos];\n var p;\n\n if (details) {\n return details;\n } else {\n if (pos >= peg$posDetailsCache.length) {\n p = peg$posDetailsCache.length - 1;\n } else {\n p = pos;\n while (!peg$posDetailsCache[--p]) {}\n }\n\n details = peg$posDetailsCache[p];\n details = {\n line: details.line,\n column: details.column\n };\n\n while (p < pos) {\n if (input.charCodeAt(p) === 10) {\n details.line++;\n details.column = 1;\n } else {\n details.column++;\n }\n\n p++;\n }\n\n peg$posDetailsCache[pos] = details;\n\n return details;\n }\n }\n\n function peg$computeLocation(startPos, endPos, offset) {\n var startPosDetails = peg$computePosDetails(startPos);\n var endPosDetails = peg$computePosDetails(endPos);\n\n var res = {\n source: peg$source,\n start: {\n offset: startPos,\n line: startPosDetails.line,\n column: startPosDetails.column\n },\n end: {\n offset: endPos,\n line: endPosDetails.line,\n column: endPosDetails.column\n }\n };\n if (offset && peg$source && (typeof peg$source.offset === \"function\")) {\n res.start = peg$source.offset(res.start);\n res.end = peg$source.offset(res.end);\n }\n return res;\n }\n\n function peg$fail(expected) {\n if (peg$currPos < peg$maxFailPos) { return; }\n\n if (peg$currPos > peg$maxFailPos) {\n peg$maxFailPos = peg$currPos;\n peg$maxFailExpected = [];\n }\n\n peg$maxFailExpected.push(expected);\n }\n\n function peg$buildSimpleError(message, location) {\n return new peg$SyntaxError(message, null, null, location);\n }\n\n function peg$buildStructuredError(expected, found, location) {\n return new peg$SyntaxError(\n peg$SyntaxError.buildMessage(expected, found),\n expected,\n found,\n location\n );\n }\n\n function peg$parseChain() {\n var s0, s1, s2, s3;\n\n s0 = peg$currPos;\n s1 = peg$parseSymbolIdentifier();\n if (s1 === peg$FAILED) {\n s1 = peg$parseInvalidChainStart();\n }\n if (s1 !== peg$FAILED) {\n s2 = [];\n s3 = peg$parseLink();\n if (s3 === peg$FAILED) {\n s3 = peg$parseErrorLink();\n }\n while (s3 !== peg$FAILED) {\n s2.push(s3);\n s3 = peg$parseLink();\n if (s3 === peg$FAILED) {\n s3 = peg$parseErrorLink();\n }\n }\n peg$savedPos = s0;\n s0 = peg$f0(s1, s2);\n } else {\n peg$currPos = s0;\n s0 = peg$FAILED;\n }\n\n return s0;\n }\n\n function peg$parseInvalidChainStart() {\n var s0, s1, s2, s3, s4, s5;\n\n s0 = peg$currPos;\n s1 = peg$currPos;\n peg$silentFails++;\n if (input.charCodeAt(peg$currPos) === 125) {\n s2 = peg$c0;\n peg$currPos++;\n } else {\n s2 = peg$FAILED;\n if (peg$silentFails === 0) { peg$fail(peg$e0); }\n }\n peg$silentFails--;\n if (s2 === peg$FAILED) {\n s1 = undefined;\n } else {\n peg$currPos = s1;\n s1 = peg$FAILED;\n }\n if (s1 !== peg$FAILED) {\n s2 = peg$currPos;\n peg$silentFails++;\n if (input.charCodeAt(peg$currPos) === 44) {\n s3 = peg$c1;\n peg$currPos++;\n } else {\n s3 = peg$FAILED;\n if (peg$silentFails === 0) { peg$fail(peg$e1); }\n }\n peg$silentFails--;\n if (s3 === peg$FAILED) {\n s2 = undefined;\n } else {\n peg$currPos = s2;\n s2 = peg$FAILED;\n }\n if (s2 !== peg$FAILED) {\n s3 = peg$currPos;\n peg$silentFails++;\n if (input.charCodeAt(peg$currPos) === 41) {\n s4 = peg$c2;\n peg$currPos++;\n } else {\n s4 = peg$FAILED;\n if (peg$silentFails === 0) { peg$fail(peg$e2); }\n }\n peg$silentFails--;\n if (s4 === peg$FAILED) {\n s3 = undefined;\n } else {\n peg$currPos = s3;\n s3 = peg$FAILED;\n }\n if (s3 !== peg$FAILED) {\n s4 = peg$currPos;\n peg$silentFails++;\n s5 = peg$parseSymbolIdentifier();\n peg$silentFails--;\n if (s5 === peg$FAILED) {\n s4 = undefined;\n } else {\n peg$currPos = s4;\n s4 = peg$FAILED;\n }\n if (s4 !== peg$FAILED) {\n if (input.length > peg$currPos) {\n s5 = input.charAt(peg$currPos);\n peg$currPos++;\n } else {\n s5 = peg$FAILED;\n if (peg$silentFails === 0) { peg$fail(peg$e3); }\n }\n if (s5 !== peg$FAILED) {\n peg$savedPos = s0;\n s0 = peg$f1(s5);\n } else {\n peg$currPos = s0;\n s0 = peg$FAILED;\n }\n } else {\n peg$currPos = s0;\n s0 = peg$FAILED;\n }\n } else {\n peg$currPos = s0;\n s0 = peg$FAILED;\n }\n } else {\n peg$currPos = s0;\n s0 = peg$FAILED;\n }\n } else {\n peg$currPos = s0;\n s0 = peg$FAILED;\n }\n\n return s0;\n }\n\n function peg$parseErrorLink() {\n var s0, s1, s2, s3, s4, s5;\n\n s0 = peg$currPos;\n s1 = peg$parseDotNode();\n if (s1 !== peg$FAILED) {\n s2 = peg$currPos;\n peg$silentFails++;\n if (input.length > peg$currPos) {\n s3 = input.charAt(peg$currPos);\n peg$currPos++;\n } else {\n s3 = peg$FAILED;\n if (peg$silentFails === 0) { peg$fail(peg$e3); }\n }\n peg$silentFails--;\n if (s3 === peg$FAILED) {\n s2 = undefined;\n } else {\n peg$currPos = s2;\n s2 = peg$FAILED;\n }\n if (s2 !== peg$FAILED) {\n peg$savedPos = s0;\n s0 = peg$f2(s1);\n } else {\n peg$currPos = s0;\n s0 = peg$FAILED;\n }\n } else {\n peg$currPos = s0;\n s0 = peg$FAILED;\n }\n if (s0 === peg$FAILED) {\n s0 = peg$currPos;\n s1 = peg$parseDotNode();\n if (s1 !== peg$FAILED) {\n s2 = peg$currPos;\n peg$silentFails++;\n s3 = input.charAt(peg$currPos);\n if (peg$r0.test(s3)) {\n peg$currPos++;\n } else {\n s3 = peg$FAILED;\n if (peg$silentFails === 0) { peg$fail(peg$e4); }\n }\n peg$silentFails--;\n if (s3 !== peg$FAILED) {\n peg$currPos = s2;\n s2 = undefined;\n } else {\n s2 = peg$FAILED;\n }\n if (s2 !== peg$FAILED) {\n peg$savedPos = s0;\n s0 = peg$f3(s1);\n } else {\n peg$currPos = s0;\n s0 = peg$FAILED;\n }\n } else {\n peg$currPos = s0;\n s0 = peg$FAILED;\n }\n if (s0 === peg$FAILED) {\n s0 = peg$currPos;\n s1 = peg$parseDotNode();\n if (s1 !== peg$FAILED) {\n if (input.charCodeAt(peg$currPos) === 64) {\n s2 = peg$c3;\n peg$currPos++;\n } else {\n s2 = peg$FAILED;\n if (peg$silentFails === 0) { peg$fail(peg$e5); }\n }\n if (s2 !== peg$FAILED) {\n s3 = peg$currPos;\n peg$silentFails++;\n if (input.length > peg$currPos) {\n s4 = input.charAt(peg$currPos);\n peg$currPos++;\n } else {\n s4 = peg$FAILED;\n if (peg$silentFails === 0) { peg$fail(peg$e3); }\n }\n peg$silentFails--;\n if (s4 === peg$FAILED) {\n s3 = undefined;\n } else {\n peg$currPos = s3;\n s3 = peg$FAILED;\n }\n if (s3 === peg$FAILED) {\n s3 = peg$currPos;\n peg$silentFails++;\n s4 = input.charAt(peg$currPos);\n if (peg$r0.test(s4)) {\n peg$currPos++;\n } else {\n s4 = peg$FAILED;\n if (peg$silentFails === 0) { peg$fail(peg$e4); }\n }\n peg$silentFails--;\n if (s4 !== peg$FAILED) {\n peg$currPos = s3;\n s3 = undefined;\n } else {\n s3 = peg$FAILED;\n }\n }\n if (s3 !== peg$FAILED) {\n peg$savedPos = s0;\n s0 = peg$f4(s1);\n } else {\n peg$currPos = s0;\n s0 = peg$FAILED;\n }\n } else {\n peg$currPos = s0;\n s0 = peg$FAILED;\n }\n } else {\n peg$currPos = s0;\n s0 = peg$FAILED;\n }\n if (s0 === peg$FAILED) {\n s0 = peg$currPos;\n s1 = peg$parseDotNode();\n if (s1 !== peg$FAILED) {\n s2 = peg$currPos;\n peg$silentFails++;\n s3 = peg$parseSymbolIdentifier();\n if (s3 === peg$FAILED) {\n s3 = input.charAt(peg$currPos);\n if (peg$r1.test(s3)) {\n peg$currPos++;\n } else {\n s3 = peg$FAILED;\n if (peg$silentFails === 0) { peg$fail(peg$e6); }\n }\n }\n peg$silentFails--;\n if (s3 === peg$FAILED) {\n s2 = undefined;\n } else {\n peg$currPos = s2;\n s2 = peg$FAILED;\n }\n if (s2 !== peg$FAILED) {\n if (input.length > peg$currPos) {\n s3 = input.charAt(peg$currPos);\n peg$currPos++;\n } else {\n s3 = peg$FAILED;\n if (peg$silentFails === 0) { peg$fail(peg$e3); }\n }\n if (s3 !== peg$FAILED) {\n peg$savedPos = s0;\n s0 = peg$f5(s1, s3);\n } else {\n peg$currPos = s0;\n s0 = peg$FAILED;\n }\n } else {\n peg$currPos = s0;\n s0 = peg$FAILED;\n }\n } else {\n peg$currPos = s0;\n s0 = peg$FAILED;\n }\n if (s0 === peg$FAILED) {\n s0 = peg$currPos;\n s1 = [];\n s2 = input.charAt(peg$currPos);\n if (peg$r2.test(s2)) {\n peg$currPos++;\n } else {\n s2 = peg$FAILED;\n if (peg$silentFails === 0) { peg$fail(peg$e7); }\n }\n if (s2 !== peg$FAILED) {\n while (s2 !== peg$FAILED) {\n s1.push(s2);\n s2 = input.charAt(peg$currPos);\n if (peg$r2.test(s2)) {\n peg$currPos++;\n } else {\n s2 = peg$FAILED;\n if (peg$silentFails === 0) { peg$fail(peg$e7); }\n }\n }\n } else {\n s1 = peg$FAILED;\n }\n if (s1 !== peg$FAILED) {\n s2 = [];\n s3 = peg$currPos;\n s4 = peg$currPos;\n peg$silentFails++;\n s5 = input.charAt(peg$currPos);\n if (peg$r0.test(s5)) {\n peg$currPos++;\n } else {\n s5 = peg$FAILED;\n if (peg$silentFails === 0) { peg$fail(peg$e4); }\n }\n peg$silentFails--;\n if (s5 === peg$FAILED) {\n s4 = undefined;\n } else {\n peg$currPos = s4;\n s4 = peg$FAILED;\n }\n if (s4 !== peg$FAILED) {\n if (input.length > peg$currPos) {\n s5 = input.charAt(peg$currPos);\n peg$currPos++;\n } else {\n s5 = peg$FAILED;\n if (peg$silentFails === 0) { peg$fail(peg$e3); }\n }\n if (s5 !== peg$FAILED) {\n s4 = [s4, s5];\n s3 = s4;\n } else {\n peg$currPos = s3;\n s3 = peg$FAILED;\n }\n } else {\n peg$currPos = s3;\n s3 = peg$FAILED;\n }\n while (s3 !== peg$FAILED) {\n s2.push(s3);\n s3 = peg$currPos;\n s4 = peg$currPos;\n peg$silentFails++;\n s5 = input.charAt(peg$currPos);\n if (peg$r0.test(s5)) {\n peg$currPos++;\n } else {\n s5 = peg$FAILED;\n if (peg$silentFails === 0) { peg$fail(peg$e4); }\n }\n peg$silentFails--;\n if (s5 === peg$FAILED) {\n s4 = undefined;\n } else {\n peg$currPos = s4;\n s4 = peg$FAILED;\n }\n if (s4 !== peg$FAILED) {\n if (input.length > peg$currPos) {\n s5 = input.charAt(peg$currPos);\n peg$currPos++;\n } else {\n s5 = peg$FAILED;\n if (peg$silentFails === 0) { peg$fail(peg$e3); }\n }\n if (s5 !== peg$FAILED) {\n s4 = [s4, s5];\n s3 = s4;\n } else {\n peg$currPos = s3;\n s3 = peg$FAILED;\n }\n } else {\n peg$currPos = s3;\n s3 = peg$FAILED;\n }\n }\n peg$savedPos = s0;\n s0 = peg$f6();\n } else {\n peg$currPos = s0;\n s0 = peg$FAILED;\n }\n }\n }\n }\n }\n\n return s0;\n }\n\n function peg$parseLink() {\n var s0, s1, s2;\n\n s0 = peg$currPos;\n s1 = peg$parseDotNode();\n if (s1 !== peg$FAILED) {\n s2 = peg$parseCustomFunction();\n if (s2 === peg$FAILED) {\n s2 = peg$parseFunction();\n if (s2 === peg$FAILED) {\n s2 = peg$parseSymbolIdentifier();\n }\n }\n if (s2 !== peg$FAILED) {\n peg$savedPos = s0;\n s0 = peg$f7(s1, s2);\n } else {\n peg$currPos = s0;\n s0 = peg$FAILED;\n }\n } else {\n peg$currPos = s0;\n s0 = peg$FAILED;\n }\n if (s0 === peg$FAILED) {\n s0 = peg$currPos;\n s1 = peg$parseLiteralIdentifier();\n if (s1 !== peg$FAILED) {\n s0 = s1;\n } else {\n peg$currPos = s0;\n s0 = peg$FAILED;\n }\n }\n\n return s0;\n }\n\n function peg$parseDotNode() {\n var s0, s1;\n\n s0 = peg$currPos;\n if (input.charCodeAt(peg$currPos) === 46) {\n s1 = peg$c4;\n peg$currPos++;\n } else {\n s1 = peg$FAILED;\n if (peg$silentFails === 0) { peg$fail(peg$e8); }\n }\n if (s1 !== peg$FAILED) {\n peg$savedPos = s0;\n s1 = peg$f8();\n }\n s0 = s1;\n\n return s0;\n }\n\n function peg$parseCustomFunction() {\n var s0, s1, s2, s3, s4, s5, s6, s7;\n\n s0 = peg$currPos;\n if (input.charCodeAt(peg$currPos) === 64) {\n s1 = peg$c3;\n peg$currPos++;\n } else {\n s1 = peg$FAILED;\n if (peg$silentFails === 0) { peg$fail(peg$e5); }\n }\n if (s1 !== peg$FAILED) {\n s2 = [];\n s3 = input.charAt(peg$currPos);\n if (peg$r3.test(s3)) {\n peg$currPos++;\n } else {\n s3 = peg$FAILED;\n if (peg$silentFails === 0) { peg$fail(peg$e9); }\n }\n if (s3 !== peg$FAILED) {\n while (s3 !== peg$FAILED) {\n s2.push(s3);\n s3 = input.charAt(peg$currPos);\n if (peg$r3.test(s3)) {\n peg$currPos++;\n } else {\n s3 = peg$FAILED;\n if (peg$silentFails === 0) { peg$fail(peg$e9); }\n }\n }\n } else {\n s2 = peg$FAILED;\n }\n if (s2 !== peg$FAILED) {\n s3 = peg$parseParenOpen();\n if (s3 !== peg$FAILED) {\n s4 = peg$parse_();\n s5 = peg$parseParameters();\n s6 = peg$parse_();\n s7 = peg$parseParenClose();\n if (s7 !== peg$FAILED) {\n peg$savedPos = s0;\n s0 = peg$f9(s2, s3, s5, s7);\n } else {\n peg$currPos = s0;\n s0 = peg$FAILED;\n }\n } else {\n peg$currPos = s0;\n s0 = peg$FAILED;\n }\n } else {\n peg$currPos = s0;\n s0 = peg$FAILED;\n }\n } else {\n peg$currPos = s0;\n s0 = peg$FAILED;\n }\n if (s0 === peg$FAILED) {\n s0 = peg$currPos;\n if (input.charCodeAt(peg$currPos) === 64) {\n s1 = peg$c3;\n peg$currPos++;\n } else {\n s1 = peg$FAILED;\n if (peg$silentFails === 0) { peg$fail(peg$e5); }\n }\n if (s1 !== peg$FAILED) {\n s2 = [];\n s3 = input.charAt(peg$currPos);\n if (peg$r3.test(s3)) {\n peg$currPos++;\n } else {\n s3 = peg$FAILED;\n if (peg$silentFails === 0) { peg$fail(peg$e9); }\n }\n if (s3 !== peg$FAILED) {\n while (s3 !== peg$FAILED) {\n s2.push(s3);\n s3 = input.charAt(peg$currPos);\n if (peg$r3.test(s3)) {\n peg$currPos++;\n } else {\n s3 = peg$FAILED;\n if (peg$silentFails === 0) { peg$fail(peg$e9); }\n }\n }\n } else {\n s2 = peg$FAILED;\n }\n if (s2 !== peg$FAILED) {\n s3 = peg$parseParenOpen();\n if (s3 !== peg$FAILED) {\n s4 = peg$parse_();\n s5 = peg$parseParameters();\n s6 = peg$parse_();\n peg$savedPos = peg$currPos;\n s7 = peg$f10(s2, s3, s5);\n if (s7) {\n s7 = undefined;\n } else {\n s7 = peg$FAILED;\n }\n if (s7 !== peg$FAILED) {\n peg$savedPos = s0;\n s0 = peg$f11(s2, s3, s5);\n } else {\n peg$currPos = s0;\n s0 = peg$FAILED;\n }\n } else {\n peg$currPos = s0;\n s0 = peg$FAILED;\n }\n } else {\n peg$currPos = s0;\n s0 = peg$FAILED;\n }\n } else {\n peg$currPos = s0;\n s0 = peg$FAILED;\n }\n if (s0 === peg$FAILED) {\n s0 = peg$currPos;\n if (input.charCodeAt(peg$currPos) === 64) {\n s1 = peg$c3;\n peg$currPos++;\n } else {\n s1 = peg$FAILED;\n if (peg$silentFails === 0) { peg$fail(peg$e5); }\n }\n if (s1 !== peg$FAILED) {\n s2 = [];\n s3 = input.charAt(peg$currPos);\n if (peg$r3.test(s3)) {\n peg$currPos++;\n } else {\n s3 = peg$FAILED;\n if (peg$silentFails === 0) { peg$fail(peg$e9); }\n }\n if (s3 !== peg$FAILED) {\n while (s3 !== peg$FAILED) {\n s2.push(s3);\n s3 = input.charAt(peg$currPos);\n if (peg$r3.test(s3)) {\n peg$currPos++;\n } else {\n s3 = peg$FAILED;\n if (peg$silentFails === 0) { peg$fail(peg$e9); }\n }\n }\n } else {\n s2 = peg$FAILED;\n }\n if (s2 !== peg$FAILED) {\n s3 = peg$parseParenOpen();\n if (s3 !== peg$FAILED) {\n s4 = peg$parse_();\n peg$savedPos = peg$currPos;\n s5 = peg$f12(s2, s3);\n if (s5) {\n s5 = undefined;\n } else {\n s5 = peg$FAILED;\n }\n if (s5 !== peg$FAILED) {\n peg$savedPos = s0;\n s0 = peg$f13(s2, s3);\n } else {\n peg$currPos = s0;\n s0 = peg$FAILED;\n }\n } else {\n peg$currPos = s0;\n s0 = peg$FAILED;\n }\n } else {\n peg$currPos = s0;\n s0 = peg$FAILED;\n }\n } else {\n peg$currPos = s0;\n s0 = peg$FAILED;\n }\n if (s0 === peg$FAILED) {\n s0 = peg$currPos;\n if (input.charCodeAt(peg$currPos) === 64) {\n s1 = peg$c3;\n peg$currPos++;\n } else {\n s1 = peg$FAILED;\n if (peg$silentFails === 0) { peg$fail(peg$e5); }\n }\n if (s1 !== peg$FAILED) {\n s2 = [];\n s3 = input.charAt(peg$currPos);\n if (peg$r3.test(s3)) {\n peg$currPos++;\n } else {\n s3 = peg$FAILED;\n if (peg$silentFails === 0) { peg$fail(peg$e9); }\n }\n if (s3 !== peg$FAILED) {\n while (s3 !== peg$FAILED) {\n s2.push(s3);\n s3 = input.charAt(peg$currPos);\n if (peg$r3.test(s3)) {\n peg$currPos++;\n } else {\n s3 = peg$FAILED;\n if (peg$silentFails === 0) { peg$fail(peg$e9); }\n }\n }\n } else {\n s2 = peg$FAILED;\n }\n if (s2 !== peg$FAILED) {\n peg$savedPos = s0;\n s0 = peg$f14(s2);\n } else {\n peg$currPos = s0;\n s0 = peg$FAILED;\n }\n } else {\n peg$currPos = s0;\n s0 = peg$FAILED;\n }\n }\n }\n }\n\n return s0;\n }\n\n function peg$parseFunction() {\n var s0, s1, s2, s3, s4, s5, s6, s7, s8;\n\n s0 = peg$currPos;\n s1 = peg$parseSymbolIdentifier();\n if (s1 !== peg$FAILED) {\n s2 = peg$parseParenOpen();\n if (s2 !== peg$FAILED) {\n s3 = peg$parse_();\n s4 = peg$parseParameters();\n s5 = peg$parse_();\n s6 = peg$parseParenClose();\n if (s6 !== peg$FAILED) {\n peg$savedPos = s0;\n s0 = peg$f15(s1, s2, s4, s6);\n } else {\n peg$currPos = s0;\n s0 = peg$FAILED;\n }\n } else {\n peg$currPos = s0;\n s0 = peg$FAILED;\n }\n } else {\n peg$currPos = s0;\n s0 = peg$FAILED;\n }\n if (s0 === peg$FAILED) {\n s0 = peg$currPos;\n s1 = peg$parseSymbolIdentifier();\n if (s1 !== peg$FAILED) {\n s2 = peg$parseParenOpen();\n if (s2 !== peg$FAILED) {\n s3 = peg$parse_();\n s4 = peg$parseParameters();\n s5 = peg$parse_();\n if (input.charCodeAt(peg$currPos) === 44) {\n s6 = peg$c1;\n peg$currPos++;\n } else {\n s6 = peg$FAILED;\n if (peg$silentFails === 0) { peg$fail(peg$e1); }\n }\n if (s6 !== peg$FAILED) {\n s7 = peg$parse_();\n peg$savedPos = peg$currPos;\n s8 = peg$f16(s1, s2, s4);\n if (s8) {\n s8 = undefined;\n } else {\n s8 = peg$FAILED;\n }\n if (s8 !== peg$FAILED) {\n peg$savedPos = s0;\n s0 = peg$f17(s1, s2, s4);\n } else {\n peg$currPos = s0;\n s0 = peg$FAILED;\n }\n } else {\n peg$currPos = s0;\n s0 = peg$FAILED;\n }\n } else {\n peg$currPos = s0;\n s0 = peg$FAILED;\n }\n } else {\n peg$currPos = s0;\n s0 = peg$FAILED;\n }\n if (s0 === peg$FAILED) {\n s0 = peg$currPos;\n s1 = peg$parseSymbolIdentifier();\n if (s1 !== peg$FAILED) {\n s2 = peg$parseParenOpen();\n if (s2 !== peg$FAILED) {\n s3 = peg$parse_();\n s4 = peg$parseInvalidParamContent();\n if (s4 !== peg$FAILED) {\n s5 = peg$parse_();\n s6 = peg$parseParenClose();\n if (s6 !== peg$FAILED) {\n peg$savedPos = peg$currPos;\n s7 = peg$f18(s1, s2, s4, s6);\n if (s7) {\n s7 = undefined;\n } else {\n s7 = peg$FAILED;\n }\n if (s7 !== peg$FAILED) {\n peg$savedPos = s0;\n s0 = peg$f19(s1, s2, s4, s6);\n } else {\n peg$currPos = s0;\n s0 = peg$FAILED;\n }\n } else {\n peg$currPos = s0;\n s0 = peg$FAILED;\n }\n } else {\n peg$currPos = s0;\n s0 = peg$FAILED;\n }\n } else {\n peg$currPos = s0;\n s0 = peg$FAILED;\n }\n } else {\n peg$currPos = s0;\n s0 = peg$FAILED;\n }\n if (s0 === peg$FAILED) {\n s0 = peg$currPos;\n s1 = peg$parseSymbolIdentifier();\n if (s1 !== peg$FAILED) {\n s2 = peg$parseParenOpen();\n if (s2 !== peg$FAILED) {\n s3 = peg$currPos;\n peg$silentFails++;\n if (input.length > peg$currPos) {\n s4 = input.charAt(peg$currPos);\n peg$currPos++;\n } else {\n s4 = peg$FAILED;\n if (peg$silentFails === 0) { peg$fail(peg$e3); }\n }\n peg$silentFails--;\n if (s4 === peg$FAILED) {\n s3 = undefined;\n } else {\n peg$currPos = s3;\n s3 = peg$FAILED;\n }\n if (s3 !== peg$FAILED) {\n peg$savedPos = peg$currPos;\n s4 = peg$f20(s1, s2);\n if (s4) {\n s4 = undefined;\n } else {\n s4 = peg$FAILED;\n }\n if (s4 !== peg$FAILED) {\n peg$savedPos = s0;\n s0 = peg$f21(s1, s2);\n } else {\n peg$currPos = s0;\n s0 = peg$FAILED;\n }\n } else {\n peg$currPos = s0;\n s0 = peg$FAILED;\n }\n } else {\n peg$currPos = s0;\n s0 = peg$FAILED;\n }\n } else {\n peg$currPos = s0;\n s0 = peg$FAILED;\n }\n if (s0 === peg$FAILED) {\n s0 = peg$currPos;\n s1 = peg$parseSymbolIdentifier();\n if (s1 !== peg$FAILED) {\n s2 = peg$parseParenOpen();\n if (s2 !== peg$FAILED) {\n s3 = peg$parse_();\n s4 = peg$parseParameters();\n s5 = peg$parse_();\n peg$savedPos = peg$currPos;\n s6 = peg$f22(s1, s2, s4);\n if (s6) {\n s6 = undefined;\n } else {\n s6 = peg$FAILED;\n }\n if (s6 !== peg$FAILED) {\n peg$savedPos = s0;\n s0 = peg$f23(s1, s2, s4);\n } else {\n peg$currPos = s0;\n s0 = peg$FAILED;\n }\n } else {\n peg$currPos = s0;\n s0 = peg$FAILED;\n }\n } else {\n peg$currPos = s0;\n s0 = peg$FAILED;\n }\n if (s0 === peg$FAILED) {\n s0 = peg$currPos;\n s1 = peg$parseSymbolIdentifier();\n if (s1 !== peg$FAILED) {\n s2 = peg$parseParenOpen();\n if (s2 !== peg$FAILED) {\n s3 = peg$parse_();\n peg$savedPos = peg$currPos;\n s4 = peg$f24(s1, s2);\n if (s4) {\n s4 = undefined;\n } else {\n s4 = peg$FAILED;\n }\n if (s4 !== peg$FAILED) {\n peg$savedPos = s0;\n s0 = peg$f25(s1, s2);\n } else {\n peg$currPos = s0;\n s0 = peg$FAILED;\n }\n } else {\n peg$currPos = s0;\n s0 = peg$FAILED;\n }\n } else {\n peg$currPos = s0;\n s0 = peg$FAILED;\n }\n }\n }\n }\n }\n }\n\n return s0;\n }\n\n function peg$parseInvalidParamContent() {\n var s0, s1, s2, s3, s4;\n\n s0 = peg$currPos;\n s1 = [];\n s2 = peg$currPos;\n s3 = peg$currPos;\n peg$silentFails++;\n s4 = peg$parseParenClose();\n peg$silentFails--;\n if (s4 === peg$FAILED) {\n s3 = undefined;\n } else {\n peg$currPos = s3;\n s3 = peg$FAILED;\n }\n if (s3 !== peg$FAILED) {\n if (input.length > peg$currPos) {\n s4 = input.charAt(peg$currPos);\n peg$currPos++;\n } else {\n s4 = peg$FAILED;\n if (peg$silentFails === 0) { peg$fail(peg$e3); }\n }\n if (s4 !== peg$FAILED) {\n s3 = [s3, s4];\n s2 = s3;\n } else {\n peg$currPos = s2;\n s2 = peg$FAILED;\n }\n } else {\n peg$currPos = s2;\n s2 = peg$FAILED;\n }\n if (s2 !== peg$FAILED) {\n while (s2 !== peg$FAILED) {\n s1.push(s2);\n s2 = peg$currPos;\n s3 = peg$currPos;\n peg$silentFails++;\n s4 = peg$parseParenClose();\n peg$silentFails--;\n if (s4 === peg$FAILED) {\n s3 = undefined;\n } else {\n peg$currPos = s3;\n s3 = peg$FAILED;\n }\n if (s3 !== peg$FAILED) {\n if (input.length > peg$currPos) {\n s4 = input.charAt(peg$currPos);\n peg$currPos++;\n } else {\n s4 = peg$FAILED;\n if (peg$silentFails === 0) { peg$fail(peg$e3); }\n }\n if (s4 !== peg$FAILED) {\n s3 = [s3, s4];\n s2 = s3;\n } else {\n peg$currPos = s2;\n s2 = peg$FAILED;\n }\n } else {\n peg$currPos = s2;\n s2 = peg$FAILED;\n }\n }\n } else {\n s1 = peg$FAILED;\n }\n if (s1 !== peg$FAILED) {\n peg$savedPos = s0;\n s1 = peg$f26();\n }\n s0 = s1;\n\n return s0;\n }\n\n function peg$parseParenOpen() {\n var s0, s1;\n\n s0 = peg$currPos;\n if (input.charCodeAt(peg$currPos) === 40) {\n s1 = peg$c5;\n peg$currPos++;\n } else {\n s1 = peg$FAILED;\n if (peg$silentFails === 0) { peg$fail(peg$e10); }\n }\n if (s1 !== peg$FAILED) {\n peg$savedPos = s0;\n s1 = peg$f27();\n }\n s0 = s1;\n\n return s0;\n }\n\n function peg$parseParenClose() {\n var s0, s1;\n\n s0 = peg$currPos;\n if (input.charCodeAt(peg$currPos) === 41) {\n s1 = peg$c2;\n peg$currPos++;\n } else {\n s1 = peg$FAILED;\n if (peg$silentFails === 0) { peg$fail(peg$e2); }\n }\n if (s1 !== peg$FAILED) {\n peg$savedPos = s0;\n s1 = peg$f28();\n }\n s0 = s1;\n\n return s0;\n }\n\n function peg$parseParameters() {\n var s0, s1, s2, s3, s4, s5;\n\n s0 = [];\n s1 = peg$parseParameter();\n while (s1 !== peg$FAILED) {\n s0.push(s1);\n s1 = peg$currPos;\n s2 = peg$currPos;\n s3 = peg$parse_();\n if (input.charCodeAt(peg$currPos) === 44) {\n s4 = peg$c1;\n peg$currPos++;\n } else {\n s4 = peg$FAILED;\n if (peg$silentFails === 0) { peg$fail(peg$e1); }\n }\n if (s4 !== peg$FAILED) {\n s5 = peg$parse_();\n s3 = [s3, s4, s5];\n s2 = s3;\n } else {\n peg$currPos = s2;\n s2 = peg$FAILED;\n }\n if (s2 !== peg$FAILED) {\n s2 = peg$parseParameter();\n if (s2 === peg$FAILED) {\n peg$currPos = s1;\n s1 = peg$FAILED;\n } else {\n s1 = s2;\n }\n } else {\n s1 = s2;\n }\n }\n\n return s0;\n }\n\n function peg$parseParameter() {\n var s0, s1, s2;\n\n s0 = peg$currPos;\n s1 = peg$parseString();\n if (s1 !== peg$FAILED) {\n peg$savedPos = s0;\n s1 = peg$f29(s1);\n }\n s0 = s1;\n if (s0 === peg$FAILED) {\n s0 = peg$currPos;\n s1 = peg$parseNumber();\n if (s1 !== peg$FAILED) {\n peg$savedPos = s0;\n s1 = peg$f30(s1);\n }\n s0 = s1;\n if (s0 === peg$FAILED) {\n s0 = peg$parseArray();\n if (s0 === peg$FAILED) {\n s0 = peg$currPos;\n s1 = peg$currPos;\n peg$silentFails++;\n s2 = peg$parseSymbolIdentifier();\n if (s2 === peg$FAILED) {\n if (input.charCodeAt(peg$currPos) === 64) {\n s2 = peg$c3;\n peg$currPos++;\n } else {\n s2 = peg$FAILED;\n if (peg$silentFails === 0) { peg$fail(peg$e5); }\n }\n if (s2 === peg$FAILED) {\n s2 = peg$parseLiteralIdentifier();\n }\n }\n peg$silentFails--;\n if (s2 !== peg$FAILED) {\n peg$currPos = s1;\n s1 = undefined;\n } else {\n s1 = peg$FAILED;\n }\n if (s1 !== peg$FAILED) {\n s2 = peg$parseChain();\n if (s2 !== peg$FAILED) {\n peg$savedPos = s0;\n s0 = peg$f31(s2);\n } else {\n peg$currPos = s0;\n s0 = peg$FAILED;\n }\n } else {\n peg$currPos = s0;\n s0 = peg$FAILED;\n }\n }\n }\n }\n\n return s0;\n }\n\n function peg$parseLiteralIdentifier() {\n var s0, s1, s2, s3;\n\n s0 = peg$currPos;\n if (input.charCodeAt(peg$currPos) === 91) {\n s1 = peg$c6;\n peg$currPos++;\n } else {\n s1 = peg$FAILED;\n if (peg$silentFails === 0) { peg$fail(peg$e11); }\n }\n if (s1 !== peg$FAILED) {\n s2 = peg$parseNonEmptyString();\n if (s2 !== peg$FAILED) {\n if (input.charCodeAt(peg$currPos) === 93) {\n s3 = peg$c7;\n peg$currPos++;\n } else {\n s3 = peg$FAILED;\n if (peg$silentFails === 0) { peg$fail(peg$e12); }\n }\n if (s3 !== peg$FAILED) {\n peg$savedPos = s0;\n s0 = peg$f32(s2);\n } else {\n peg$currPos = s0;\n s0 = peg$FAILED;\n }\n } else {\n peg$currPos = s0;\n s0 = peg$FAILED;\n }\n } else {\n peg$currPos = s0;\n s0 = peg$FAILED;\n }\n\n return s0;\n }\n\n function peg$parseSymbolIdentifier() {\n var s0, s1, s2, s3;\n\n s0 = peg$currPos;\n s1 = input.charAt(peg$currPos);\n if (peg$r4.test(s1)) {\n peg$currPos++;\n } else {\n s1 = peg$FAILED;\n if (peg$silentFails === 0) { peg$fail(peg$e13); }\n }\n if (s1 !== peg$FAILED) {\n s2 = [];\n s3 = input.charAt(peg$currPos);\n if (peg$r5.test(s3)) {\n peg$currPos++;\n } else {\n s3 = peg$FAILED;\n if (peg$silentFails === 0) { peg$fail(peg$e14); }\n }\n while (s3 !== peg$FAILED) {\n s2.push(s3);\n s3 = input.charAt(peg$currPos);\n if (peg$r5.test(s3)) {\n peg$currPos++;\n } else {\n s3 = peg$FAILED;\n if (peg$silentFails === 0) { peg$fail(peg$e14); }\n }\n }\n peg$savedPos = s0;\n s0 = peg$f33(s1, s2);\n } else {\n peg$currPos = s0;\n s0 = peg$FAILED;\n }\n\n return s0;\n }\n\n function peg$parseNonEmptyString() {\n var s0, s1, s2, s3;\n\n s0 = peg$currPos;\n if (input.charCodeAt(peg$currPos) === 39) {\n s1 = peg$c8;\n peg$currPos++;\n } else {\n s1 = peg$FAILED;\n if (peg$silentFails === 0) { peg$fail(peg$e15); }\n }\n if (s1 !== peg$FAILED) {\n s2 = [];\n s3 = peg$parseStringChar();\n if (s3 !== peg$FAILED) {\n while (s3 !== peg$FAILED) {\n s2.push(s3);\n s3 = peg$parseStringChar();\n }\n } else {\n s2 = peg$FAILED;\n }\n if (s2 !== peg$FAILED) {\n if (input.charCodeAt(peg$currPos) === 39) {\n s3 = peg$c8;\n peg$currPos++;\n } else {\n s3 = peg$FAILED;\n if (peg$silentFails === 0) { peg$fail(peg$e15); }\n }\n if (s3 !== peg$FAILED) {\n peg$savedPos = s0;\n s0 = peg$f34(s2);\n } else {\n peg$currPos = s0;\n s0 = peg$FAILED;\n }\n } else {\n peg$currPos = s0;\n s0 = peg$FAILED;\n }\n } else {\n peg$currPos = s0;\n s0 = peg$FAILED;\n }\n\n return s0;\n }\n\n function peg$parseString() {\n var s0, s1, s2, s3;\n\n s0 = peg$currPos;\n if (input.charCodeAt(peg$currPos) === 39) {\n s1 = peg$c8;\n peg$currPos++;\n } else {\n s1 = peg$FAILED;\n if (peg$silentFails === 0) { peg$fail(peg$e15); }\n }\n if (s1 !== peg$FAILED) {\n s2 = [];\n s3 = peg$parseStringChar();\n while (s3 !== peg$FAILED) {\n s2.push(s3);\n s3 = peg$parseStringChar();\n }\n if (input.charCodeAt(peg$currPos) === 39) {\n s3 = peg$c8;\n peg$currPos++;\n } else {\n s3 = peg$FAILED;\n if (peg$silentFails === 0) { peg$fail(peg$e15); }\n }\n if (s3 !== peg$FAILED) {\n peg$savedPos = s0;\n s0 = peg$f35(s2);\n } else {\n peg$currPos = s0;\n s0 = peg$FAILED;\n }\n } else {\n peg$currPos = s0;\n s0 = peg$FAILED;\n }\n\n return s0;\n }\n\n function peg$parseArray() {\n var s0, s1, s2, s3, s4, s5;\n\n s0 = peg$currPos;\n if (input.charCodeAt(peg$currPos) === 91) {\n s1 = peg$c6;\n peg$currPos++;\n } else {\n s1 = peg$FAILED;\n if (peg$silentFails === 0) { peg$fail(peg$e11); }\n }\n if (s1 !== peg$FAILED) {\n s2 = peg$parse_();\n s3 = peg$parseArrayItems();\n s4 = peg$parse_();\n if (input.charCodeAt(peg$currPos) === 93) {\n s5 = peg$c7;\n peg$currPos++;\n } else {\n s5 = peg$FAILED;\n if (peg$silentFails === 0) { peg$fail(peg$e12); }\n }\n if (s5 !== peg$FAILED) {\n peg$savedPos = s0;\n s0 = peg$f36(s3);\n } else {\n peg$currPos = s0;\n s0 = peg$FAILED;\n }\n } else {\n peg$currPos = s0;\n s0 = peg$FAILED;\n }\n\n return s0;\n }\n\n function peg$parseArrayItems() {\n var s0, s1, s2, s3, s4, s5;\n\n s0 = [];\n s1 = peg$parseArrayItem();\n while (s1 !== peg$FAILED) {\n s0.push(s1);\n s1 = peg$currPos;\n s2 = peg$currPos;\n s3 = peg$parse_();\n if (input.charCodeAt(peg$currPos) === 44) {\n s4 = peg$c1;\n peg$currPos++;\n } else {\n s4 = peg$FAILED;\n if (peg$silentFails === 0) { peg$fail(peg$e1); }\n }\n if (s4 !== peg$FAILED) {\n s5 = peg$parse_();\n s3 = [s3, s4, s5];\n s2 = s3;\n } else {\n peg$currPos = s2;\n s2 = peg$FAILED;\n }\n if (s2 !== peg$FAILED) {\n s2 = peg$parseArrayItem();\n if (s2 === peg$FAILED) {\n peg$currPos = s1;\n s1 = peg$FAILED;\n } else {\n s1 = s2;\n }\n } else {\n s1 = s2;\n }\n }\n\n return s0;\n }\n\n function peg$parseArrayItem() {\n var s0, s1;\n\n s0 = peg$currPos;\n s1 = peg$parseString();\n if (s1 !== peg$FAILED) {\n peg$savedPos = s0;\n s1 = peg$f37(s1);\n }\n s0 = s1;\n if (s0 === peg$FAILED) {\n s0 = peg$currPos;\n s1 = peg$parseNumber();\n if (s1 !== peg$FAILED) {\n peg$savedPos = s0;\n s1 = peg$f38(s1);\n }\n s0 = s1;\n }\n\n return s0;\n }\n\n function peg$parseStringChar() {\n var s0, s1, s2;\n\n s0 = peg$currPos;\n s1 = peg$currPos;\n peg$silentFails++;\n s2 = input.charAt(peg$currPos);\n if (peg$r6.test(s2)) {\n peg$currPos++;\n } else {\n s2 = peg$FAILED;\n if (peg$silentFails === 0) { peg$fail(peg$e16); }\n }\n peg$silentFails--;\n if (s2 === peg$FAILED) {\n s1 = undefined;\n } else {\n peg$currPos = s1;\n s1 = peg$FAILED;\n }\n if (s1 !== peg$FAILED) {\n if (input.length > peg$currPos) {\n s2 = input.charAt(peg$currPos);\n peg$currPos++;\n } else {\n s2 = peg$FAILED;\n if (peg$silentFails === 0) { peg$fail(peg$e3); }\n }\n if (s2 !== peg$FAILED) {\n peg$savedPos = s0;\n s0 = peg$f39(s2);\n } else {\n peg$currPos = s0;\n s0 = peg$FAILED;\n }\n } else {\n peg$currPos = s0;\n s0 = peg$FAILED;\n }\n if (s0 === peg$FAILED) {\n s0 = peg$currPos;\n if (input.charCodeAt(peg$currPos) === 92) {\n s1 = peg$c9;\n peg$currPos++;\n } else {\n s1 = peg$FAILED;\n if (peg$silentFails === 0) { peg$fail(peg$e17); }\n }\n if (s1 !== peg$FAILED) {\n s2 = peg$parseEscapables();\n if (s2 !== peg$FAILED) {\n peg$savedPos = s0;\n s0 = peg$f40(s2);\n } else {\n peg$currPos = s0;\n s0 = peg$FAILED;\n }\n } else {\n peg$currPos = s0;\n s0 = peg$FAILED;\n }\n }\n\n return s0;\n }\n\n function peg$parseNumber() {\n var s0, s1, s2, s3, s4, s5, s6, s7;\n\n s0 = peg$currPos;\n s1 = peg$parse_();\n if (input.charCodeAt(peg$currPos) === 35) {\n s2 = peg$c10;\n peg$currPos++;\n } else {\n s2 = peg$FAILED;\n if (peg$silentFails === 0) { peg$fail(peg$e18); }\n }\n if (s2 !== peg$FAILED) {\n s3 = [];\n s4 = input.charAt(peg$currPos);\n if (peg$r7.test(s4)) {\n peg$currPos++;\n } else {\n s4 = peg$FAILED;\n if (peg$silentFails === 0) { peg$fail(peg$e19); }\n }\n if (s4 !== peg$FAILED) {\n while (s4 !== peg$FAILED) {\n s3.push(s4);\n s4 = input.charAt(peg$currPos);\n if (peg$r7.test(s4)) {\n peg$currPos++;\n } else {\n s4 = peg$FAILED;\n if (peg$silentFails === 0) { peg$fail(peg$e19); }\n }\n }\n } else {\n s3 = peg$FAILED;\n }\n if (s3 !== peg$FAILED) {\n s4 = peg$currPos;\n s5 = peg$parseDot();\n if (s5 !== peg$FAILED) {\n s6 = [];\n s7 = input.charAt(peg$currPos);\n if (peg$r7.test(s7)) {\n peg$currPos++;\n } else {\n s7 = peg$FAILED;\n if (peg$silentFails === 0) { peg$fail(peg$e19); }\n }\n if (s7 !== peg$FAILED) {\n while (s7 !== peg$FAILED) {\n s6.push(s7);\n s7 = input.charAt(peg$currPos);\n if (peg$r7.test(s7)) {\n peg$currPos++;\n } else {\n s7 = peg$FAILED;\n if (peg$silentFails === 0) { peg$fail(peg$e19); }\n }\n }\n } else {\n s6 = peg$FAILED;\n }\n if (s6 !== peg$FAILED) {\n s5 = [s5, s6];\n s4 = s5;\n } else {\n peg$currPos = s4;\n s4 = peg$FAILED;\n }\n } else {\n peg$currPos = s4;\n s4 = peg$FAILED;\n }\n if (s4 === peg$FAILED) {\n s4 = null;\n }\n peg$savedPos = s0;\n s0 = peg$f41();\n } else {\n peg$currPos = s0;\n s0 = peg$FAILED;\n }\n } else {\n peg$currPos = s0;\n s0 = peg$FAILED;\n }\n\n return s0;\n }\n\n function peg$parseEscapables() {\n var s0;\n\n s0 = input.charAt(peg$currPos);\n if (peg$r6.test(s0)) {\n peg$currPos++;\n } else {\n s0 = peg$FAILED;\n if (peg$silentFails === 0) { peg$fail(peg$e16); }\n }\n\n return s0;\n }\n\n function peg$parseEscape() {\n var s0;\n\n if (input.charCodeAt(peg$currPos) === 92) {\n s0 = peg$c9;\n peg$currPos++;\n } else {\n s0 = peg$FAILED;\n if (peg$silentFails === 0) { peg$fail(peg$e17); }\n }\n\n return s0;\n }\n\n function peg$parseDot() {\n var s0;\n\n if (input.charCodeAt(peg$currPos) === 46) {\n s0 = peg$c4;\n peg$currPos++;\n } else {\n s0 = peg$FAILED;\n if (peg$silentFails === 0) { peg$fail(peg$e8); }\n }\n\n return s0;\n }\n\n function peg$parseQuote() {\n var s0;\n\n if (input.charCodeAt(peg$currPos) === 39) {\n s0 = peg$c8;\n peg$currPos++;\n } else {\n s0 = peg$FAILED;\n if (peg$silentFails === 0) { peg$fail(peg$e15); }\n }\n\n return s0;\n }\n\n function peg$parse_() {\n var s0, s1;\n\n peg$silentFails++;\n s0 = [];\n s1 = input.charAt(peg$currPos);\n if (peg$r8.test(s1)) {\n peg$currPos++;\n } else {\n s1 = peg$FAILED;\n if (peg$silentFails === 0) { peg$fail(peg$e21); }\n }\n while (s1 !== peg$FAILED) {\n s0.push(s1);\n s1 = input.charAt(peg$currPos);\n if (peg$r8.test(s1)) {\n peg$currPos++;\n } else {\n s1 = peg$FAILED;\n if (peg$silentFails === 0) { peg$fail(peg$e21); }\n }\n }\n peg$silentFails--;\n s1 = peg$FAILED;\n if (peg$silentFails === 0) { peg$fail(peg$e20); }\n\n return s0;\n }\n\n peg$result = peg$startRuleFunction();\n\n if (options.peg$library) {\n return /** @type {any} */ ({\n peg$result,\n peg$currPos,\n peg$FAILED,\n peg$maxFailExpected,\n peg$maxFailPos\n });\n }\n if (peg$result !== peg$FAILED && peg$currPos === input.length) {\n return peg$result;\n } else {\n if (peg$result !== peg$FAILED && peg$currPos < input.length) {\n peg$fail(peg$endExpectation());\n }\n\n throw peg$buildStructuredError(\n peg$maxFailExpected,\n peg$maxFailPos < input.length ? input.charAt(peg$maxFailPos) : null,\n peg$maxFailPos < input.length\n ? peg$computeLocation(peg$maxFailPos, peg$maxFailPos + 1)\n : peg$computeLocation(peg$maxFailPos, peg$maxFailPos)\n );\n }\n}\n\nconst peg$allowedStartRules = [\n \"Chain\",\n \"InvalidChainStart\",\n \"ErrorLink\",\n \"Link\",\n \"DotNode\",\n \"CustomFunction\",\n \"Function\",\n \"InvalidParamContent\",\n \"ParenOpen\",\n \"ParenClose\",\n \"Parameters\",\n \"Parameter\",\n \"LiteralIdentifier\",\n \"SymbolIdentifier\",\n \"NonEmptyString\",\n \"String\",\n \"Array\",\n \"ArrayItems\",\n \"ArrayItem\",\n \"StringChar\",\n \"Number\",\n \"Escapables\",\n \"Escape\",\n \"Dot\",\n \"Quote\",\n \"_\"\n];\n\nexport {\n peg$allowedStartRules as StartRules,\n peg$SyntaxError as SyntaxError,\n peg$parse as parse\n};\n"],"mappings":"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"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"router-COrZcVkf.mjs","names":[],"sources":["../lib/router/createPath.ts","../lib/router/navigationEvents.ts","../lib/router/reactRouterFallback.tsx","../lib/router/RouterLink.tsx","../lib/router/useLocationPathname.ts"],"sourcesContent":["import type { To } from './types';\n\nexport function createPath(to: To): string {\n if (typeof to === 'string') {\n return to;\n }\n\n const { pathname = '', search = '', hash = '' } = to;\n let path = pathname;\n\n if (search) {\n path += search.startsWith('?') ? search : `?${search}`;\n }\n if (hash) {\n path += hash.startsWith('#') ? hash : `#${hash}`;\n }\n\n return path;\n}\n","const navigationListeners = new Set<() => void>();\n\nexport const subscribeNavigation = (listener: () => void): (() => void) => {\n navigationListeners.add(listener);\n return () => navigationListeners.delete(listener);\n};\n\nexport const emitNavigation = (): void => {\n navigationListeners.forEach((listener) => listener());\n};\n","import { forwardRef } from 'react';\nimport {\n Link,\n useInRouterContext,\n useLocation,\n} from 'react-router-dom';\n\nimport type { RouterLinkComponentProps } from './types';\n\nexport const useInReactRouterContext = useInRouterContext;\n\nexport const useReactRouterPathname = () => useLocation().pathname;\n\nexport const ReactRouterFallbackLink = forwardRef<\n HTMLAnchorElement,\n RouterLinkComponentProps\n>(function ReactRouterFallbackLink({ to, replace, state, reloadDocument, ...rest }, ref) {\n return (\n <Link\n to={to}\n replace={replace}\n state={state}\n reloadDocument={reloadDocument}\n {...rest}\n ref={ref}\n />\n );\n});\n","import { forwardRef, type MouseEvent } from 'react';\n\nimport { createPath } from './createPath';\nimport { emitNavigation } from './navigationEvents';\nimport {\n ReactRouterFallbackLink,\n useInReactRouterContext,\n} from './reactRouterFallback';\nimport { useRouter } from './RouterContext';\nimport type { RouterAdapter, RouterLinkComponentProps } from './types';\n\nconst AdapterLink = forwardRef<\n HTMLAnchorElement,\n RouterLinkComponentProps & { router: RouterAdapter }\n>(function AdapterLink(\n { router, to, replace, state, target, onClick, reloadDocument, ...rest },\n ref,\n) {\n const useHref = router.useHref ?? (() => createPath(to));\n const href = useHref(to);\n\n const handleClick = (event: MouseEvent<HTMLAnchorElement>) => {\n onClick?.(event);\n if (\n !event.defaultPrevented &&\n !reloadDocument &&\n event.button === 0 &&\n (!target || target === '_self') &&\n !(event.metaKey || event.altKey || event.ctrlKey || event.shiftKey)\n ) {\n event.preventDefault();\n router.navigate(to, { replace, state });\n queueMicrotask(emitNavigation);\n }\n };\n\n return <a href={href} target={target} onClick={handleClick} {...rest} ref={ref} />;\n});\n\nconst RouterLink = forwardRef<HTMLAnchorElement, RouterLinkComponentProps>(\n function RouterLink(props, ref) {\n const router = useRouter();\n const inReactRouter = useInReactRouterContext();\n\n if (router?.linkComponent) {\n const LinkComponent = router.linkComponent;\n return <LinkComponent {...props} ref={ref} />;\n }\n\n if (router) {\n return (\n <AdapterLink\n key={router.useHref ? 'href' : 'path'}\n {...props}\n router={router}\n ref={ref}\n />\n );\n }\n\n if (inReactRouter) {\n return <ReactRouterFallbackLink {...props} ref={ref} />;\n }\n\n const { to, replace, state, reloadDocument, ...rest } = props;\n return <a href={createPath(to)} {...rest} ref={ref} />;\n },\n);\n\nexport default RouterLink;\n","import { useEffect, useState } from 'react';\n\nimport { subscribeNavigation } from './navigationEvents';\nimport { useInReactRouterContext, useReactRouterPathname } from './reactRouterFallback';\nimport { useRouter } from './RouterContext';\n\nconst useWindowPathname = (): string => {\n const [pathname, setPathname] = useState(() =>\n typeof window === 'undefined' ? '' : window.location.pathname,\n );\n\n useEffect(() => {\n if (typeof window === 'undefined') {\n return;\n }\n const onNavigation = () => setPathname(window.location.pathname);\n window.addEventListener('popstate', onNavigation);\n const unsubscribe = subscribeNavigation(onNavigation);\n return () => {\n window.removeEventListener('popstate', onNavigation);\n unsubscribe();\n };\n }, []);\n\n return pathname;\n};\n\nexport const usePathname = (): string => {\n const router = useRouter();\n const inReactRouter = useInReactRouterContext();\n\n // The router mode (adapter / react-router / none) must stay fixed for the lifetime of the tree.\n const useAdapterPathname = () => router?.useLocation?.().pathname ?? '';\n const useSelectedPathname = router?.useLocation\n ? useAdapterPathname\n : inReactRouter\n ? useReactRouterPathname\n : useWindowPathname;\n\n return useSelectedPathname();\n};\n"],"mappings":";;;;;AAEA,SAAgB,WAAW,IAAgB;AACzC,KAAI,OAAO,OAAO,SAChB,QAAO;CAGT,MAAM,EAAE,WAAW,IAAI,SAAS,IAAI,OAAO,OAAO;CAClD,IAAI,OAAO;AAEX,KAAI,OACF,SAAQ,OAAO,WAAW,IAAI,GAAG,SAAS,IAAI;AAEhD,KAAI,KACF,SAAQ,KAAK,WAAW,IAAI,GAAG,OAAO,IAAI;AAG5C,QAAO;;;;ACjBT,MAAM,sCAAsB,IAAI,KAAiB;AAEjD,MAAa,uBAAuB,aAAuC;AACzE,qBAAoB,IAAI,SAAS;AACjC,cAAa,oBAAoB,OAAO,SAAS;;AAGnD,MAAa,uBAA6B;AACxC,qBAAoB,SAAS,aAAa,UAAU,CAAC;;;;ACCvD,MAAa,0BAA0B;AAEvC,MAAa,+BAA+B,aAAa,CAAC;AAE1D,MAAa,0BAA0B,WAGrC,SAAS,wBAAwB,EAAE,IAAI,SAAS,OAAO,gBAAgB,GAAG,QAAQ,KAAK;AACvF,QACE,oBAAC,MAAD;EACM;EACK;EACF;EACS;EAChB,GAAI;EACC;EACL,CAAA;EAEJ;;;AChBF,MAAM,cAAc,WAGlB,SAAS,YACT,EAAE,QAAQ,IAAI,SAAS,OAAO,QAAQ,SAAS,gBAAgB,GAAG,QAClE,KACA;CAEA,MAAM,QADU,OAAO,kBAAkB,WAAW,GAAG,GAClC,GAAG;CAExB,MAAM,eAAe,UAAyC;AAC5D,YAAU,MAAM;AAChB,MACE,CAAC,MAAM,oBACP,CAAC,kBACD,MAAM,WAAW,MAChB,CAAC,UAAU,WAAW,YACvB,EAAE,MAAM,WAAW,MAAM,UAAU,MAAM,WAAW,MAAM,WAC1D;AACA,SAAM,gBAAgB;AACtB,UAAO,SAAS,IAAI;IAAE;IAAS;IAAO,CAAC;AACvC,kBAAe,eAAe;;;AAIlC,QAAO,oBAAC,KAAD;EAAS;EAAc;EAAQ,SAAS;EAAa,GAAI;EAAW;EAAO,CAAA;EAClF;AAEF,MAAM,aAAa,WACjB,SAAS,WAAW,OAAO,KAAK;CAC9B,MAAM,SAAS,WAAW;CAC1B,MAAM,gBAAgB,yBAAyB;AAE/C,KAAI,QAAQ,eAAe;EACzB,MAAM,gBAAgB,OAAO;AAC7B,SAAO,oBAAC,eAAD;GAAe,GAAI;GAAY;GAAO,CAAA;;AAG/C,KAAI,OACF,QACE,oBAAC,aAAD;EAEE,GAAI;EACI;EACH;EACL,EAJK,OAAO,UAAU,SAAS,OAI/B;AAIN,KAAI,cACF,QAAO,oBAAC,yBAAD;EAAyB,GAAI;EAAY;EAAO,CAAA;CAGzD,MAAM,EAAE,IAAI,SAAS,OAAO,gBAAgB,GAAG,SAAS;AACxD,QAAO,oBAAC,KAAD;EAAG,MAAM,WAAW,GAAG;EAAE,GAAI;EAAW;EAAO,CAAA;EAEzD;;;AC7DD,MAAM,0BAAkC;CACtC,MAAM,CAAC,UAAU,eAAe,eAC9B,OAAO,WAAW,cAAc,KAAK,OAAO,SAAS,SACtD;AAED,iBAAgB;AACd,MAAI,OAAO,WAAW,YACpB;EAEF,MAAM,qBAAqB,YAAY,OAAO,SAAS,SAAS;AAChE,SAAO,iBAAiB,YAAY,aAAa;EACjD,MAAM,cAAc,oBAAoB,aAAa;AACrD,eAAa;AACX,UAAO,oBAAoB,YAAY,aAAa;AACpD,gBAAa;;IAEd,EAAE,CAAC;AAEN,QAAO;;AAGT,MAAa,oBAA4B;CACvC,MAAM,SAAS,WAAW;CAC1B,MAAM,gBAAgB,yBAAyB;CAG/C,MAAM,2BAA2B,QAAQ,eAAe,CAAC,YAAY;AAOrE,SAN4B,QAAQ,cAChC,qBACA,gBACE,yBACA,oBAEsB"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"styledComponentsInterop-NxwFjeA4.mjs","names":[],"sources":["../lib/styledComponentsInterop.ts"],"sourcesContent":["/**\n * `styled-components` with its default export normalized across module systems.\n *\n * styled-components@5 ships no `exports` map, so a bundler (Vite/rollup) resolves the bare\n * specifier to the ESM build while Node resolves it to the CJS build. Under Node's CJS→ESM interop\n * the ESM `default` binding is the whole `module.exports` object, so `import styled from\n * 'styled-components'` yields the namespace and `styled.button` is undefined. That is what happens\n * when a consumer's Vitest run loads `@persona/design-system/dist/**` from `node_modules` without\n * inlining it. The tsdown build (see `tsdown.config.ts`) redirects every `styled-components`\n * import in the emitted bundle to this module; source files keep importing `styled-components`\n * directly so `babel-plugin-styled-components` still sees them in the monolith.\n */\nimport * as namespace from 'styled-components';\n\ntype StyledComponents = typeof import('styled-components');\ntype StyledDefault = StyledComponents['default'];\n\ntype CjsModuleExports = StyledComponents & { default?: StyledDefault };\n\ninterface InteropNamespace {\n default?: StyledDefault | CjsModuleExports;\n}\n\nconst isCjsModuleExports = (value: InteropNamespace['default']): value is CjsModuleExports =>\n typeof value === 'object' && value != null && 'default' in value;\n\n/**\n * Returns the module with `default` pointing at the real `styled` factory, whichever build Node or\n * the bundler resolved. Exported for the spec; runtime callers use the re-exports below.\n */\nexport const normalizeStyledComponents = (mod: InteropNamespace): StyledComponents => {\n if (mod.default != null && isCjsModuleExports(mod.default)) {\n return {\n ...mod.default,\n default: mod.default.default ?? (mod.default as unknown as StyledDefault),\n };\n }\n return mod as unknown as StyledComponents;\n};\n\nconst resolved = normalizeStyledComponents(namespace as unknown as InteropNamespace);\n\nconst styled: StyledDefault = resolved.default;\n\nexport default styled;\nexport const {\n ServerStyleSheet,\n StyleSheetManager,\n ThemeConsumer,\n ThemeContext,\n ThemeProvider,\n createGlobalStyle,\n css,\n isStyledComponent,\n keyframes,\n useTheme,\n withTheme,\n} = resolved;\n"],"mappings":";;;;;;;;;;;;;;AAuBA,MAAM,sBAAsB,UAC1B,OAAO,UAAU,YAAY,SAAS,QAAQ,aAAa;;;;;AAM7D,MAAa,6BAA6B,QAA4C;AACpF,KAAI,IAAI,WAAW,QAAQ,mBAAmB,IAAI,QAAQ,CACxD,QAAO;EACL,GAAG,IAAI;EACP,SAAS,IAAI,QAAQ,WAAY,IAAI;EACtC;AAEH,QAAO;;AAGT,MAAM,WAAW,0BAA0B,UAAyC;AAEpF,MAAM,SAAwB,SAAS;AAGvC,MAAa,EACX,kBACA,mBACA,eACA,cACA,eACA,mBACA,KACA,mBACA,WACA,UACA,cACE"}