@persona/design-system 0.1.6 → 0.1.8
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.
- package/CHANGELOG.md +346 -202
- package/dist/{Action-DSg3yZck.d.mts → Action-CVtzREhU.d.mts} +3 -3
- package/dist/{Action-uduFOh2m.d.cts → Action-E90Wvqmc.d.cts} +3 -3
- package/dist/Action.d.cts +1 -1
- package/dist/Action.d.mts +1 -1
- package/dist/AdvancedFilterRuleRow.d.mts +37 -0
- package/dist/AdvancedFilterRulesPopover.d.mts +62 -0
- package/dist/ArrayValueControl.d.mts +38 -0
- package/dist/Attribute.d.mts +4 -4
- package/dist/AttributeGrid.d.mts +1 -1
- package/dist/{Badge-CvdUyXSH.cjs → Badge-ADPloFsd.cjs} +2 -5
- package/dist/{Badge-CvdUyXSH.cjs.map → Badge-ADPloFsd.cjs.map} +1 -1
- package/dist/{Badge-pq6B-3ue.mjs → Badge-DortWowZ.mjs} +2 -5
- package/dist/{Badge-pq6B-3ue.mjs.map → Badge-DortWowZ.mjs.map} +1 -1
- package/dist/Banner.d.mts +1 -1
- package/dist/BooleanValueControl.d.mts +20 -0
- package/dist/Breadcrumb-VH-Mwo-M.d.cts +44 -0
- package/dist/Breadcrumb-lziQ1FX9.d.mts +44 -0
- package/dist/Breadcrumb.d.cts +2 -0
- package/dist/Breadcrumb.d.mts +2 -0
- package/dist/Breadcrumbs-BBREROrw.d.cts +26 -0
- package/dist/Breadcrumbs-CDZ_Mrcg.mjs +288 -0
- package/dist/Breadcrumbs-CDZ_Mrcg.mjs.map +1 -0
- package/dist/Breadcrumbs-DJ5qqqRD.d.mts +26 -0
- package/dist/Breadcrumbs-tR49JqAS.cjs +295 -0
- package/dist/Breadcrumbs-tR49JqAS.cjs.map +1 -0
- package/dist/Breadcrumbs.d.cts +2 -0
- package/dist/Breadcrumbs.d.mts +2 -0
- package/dist/{Button-DcTUxRNI.d.mts → Button-9p469xA1.d.mts} +3 -3
- package/dist/Button.d.mts +1 -1
- package/dist/ButtonGroup.d.mts +1 -1
- package/dist/Calendar.d.mts +1 -1
- package/dist/CalendarBase.d.mts +1 -1
- package/dist/{Card-CLTkZLKr.mjs → Card-BMCB9eFC.mjs} +4 -4
- package/dist/{Card-CLTkZLKr.mjs.map → Card-BMCB9eFC.mjs.map} +1 -1
- package/dist/{Card-CrQL0hXm.d.cts → Card-CJPEmUvg.d.cts} +2 -2
- package/dist/{Card-YzGS3nQI.d.mts → Card-CqnG--CU.d.mts} +4 -4
- package/dist/{Card-CaOItkgL.cjs → Card-Csz-PxX0.cjs} +4 -4
- package/dist/{Card-CaOItkgL.cjs.map → Card-Csz-PxX0.cjs.map} +1 -1
- package/dist/Card.d.cts +1 -1
- package/dist/Card.d.mts +1 -1
- package/dist/Card2.d.cts +1 -1
- package/dist/Card2.d.mts +1 -1
- package/dist/CardV2-C9z0Hr-c.mjs +411 -0
- package/dist/CardV2-C9z0Hr-c.mjs.map +1 -0
- package/dist/CardV2-DJXgFomd.cjs +419 -0
- package/dist/CardV2-DJXgFomd.cjs.map +1 -0
- package/dist/{Checkbox-UWdk4pqb.mjs → Checkbox-B0bjZbji.mjs} +5 -5
- package/dist/{Checkbox-UWdk4pqb.mjs.map → Checkbox-B0bjZbji.mjs.map} +1 -1
- package/dist/{Checkbox-BmjK0Wac.d.cts → Checkbox-Bm8exUfH.d.mts} +1 -1
- package/dist/{Checkbox-B83WfsOZ.cjs → Checkbox-CmCujC1W.cjs} +5 -5
- package/dist/{Checkbox-B83WfsOZ.cjs.map → Checkbox-CmCujC1W.cjs.map} +1 -1
- package/dist/{Checkbox-Bc2kzl9q.d.mts → Checkbox-Cr8ifm10.d.cts} +1 -1
- package/dist/Checkbox.d.cts +1 -1
- package/dist/Checkbox.d.mts +1 -1
- package/dist/CheckboxGroupField.d.cts +1 -1
- package/dist/CheckboxGroupField.d.mts +2 -2
- package/dist/ChoicesValueControl.d.mts +35 -0
- package/dist/{Combobox-I44W5oX0.mjs → Combobox-BdqU5WLG.mjs} +261 -72
- package/dist/Combobox-BdqU5WLG.mjs.map +1 -0
- package/dist/{Combobox-Dx1u-L1A.d.cts → Combobox-C99xluaM.d.mts} +3 -3
- package/dist/{Combobox-R3_NDBi3.cjs → Combobox-COXvmxlM.cjs} +254 -65
- package/dist/Combobox-COXvmxlM.cjs.map +1 -0
- package/dist/{Combobox-DtD1XXaf.d.mts → Combobox-DBWMHwUt.d.cts} +3 -3
- package/dist/Combobox.d.cts +2 -2
- package/dist/Combobox.d.mts +2 -2
- package/dist/{ComboboxBase-sRVxlTJw.d.mts → ComboboxBase-BsY7CYoB.d.mts} +50 -9
- package/dist/{ComboboxBase-d98GJD-k.d.cts → ComboboxBase-zZ3tE-dH.d.cts} +47 -6
- package/dist/ComboboxBase.d.cts +2 -2
- package/dist/ComboboxBase.d.mts +2 -2
- package/dist/{ComboboxMultiSelect-CdLQDBMN.d.mts → ComboboxMultiSelect-dNuETspL.d.mts} +2 -2
- package/dist/{ComboboxMultiSelect-CRHf5TI-.d.cts → ComboboxMultiSelect-ioB4Jx7_.d.cts} +2 -2
- package/dist/ComboboxMultiSelect.d.cts +1 -1
- package/dist/ComboboxMultiSelect.d.mts +1 -1
- package/dist/{ComboboxSingleSelect-CxiQ2o6t.d.mts → ComboboxSingleSelect-C8KvIJ43.d.mts} +4 -4
- package/dist/{ComboboxSingleSelect-DvK8QioK.d.cts → ComboboxSingleSelect-Fn80tdhz.d.cts} +4 -4
- package/dist/ComboboxSingleSelect.d.cts +1 -1
- package/dist/ComboboxSingleSelect.d.mts +1 -1
- package/dist/{CompactBar-ODUl2Q6G.d.cts → CompactBar-BEAK55kh.d.cts} +3 -3
- package/dist/{CompactBar-k-rhZ5Z-.d.mts → CompactBar-CXqlVKy7.d.mts} +3 -3
- package/dist/CompactBar.d.cts +1 -1
- package/dist/CompactBar.d.mts +1 -1
- package/dist/{ConfigFormGroup-BhO9nm3P.cjs → ConfigFormGroup-m5YdVa9n.cjs} +3 -3
- package/dist/{ConfigFormGroup-BhO9nm3P.cjs.map → ConfigFormGroup-m5YdVa9n.cjs.map} +1 -1
- package/dist/{ConfigFormGroup-_yCksmZo.mjs → ConfigFormGroup-yhb2jldT.mjs} +3 -3
- package/dist/{ConfigFormGroup-_yCksmZo.mjs.map → ConfigFormGroup-yhb2jldT.mjs.map} +1 -1
- package/dist/{ControlBar-9m-DNImB.d.mts → ControlBar-D8CirAyZ.d.cts} +2 -2
- package/dist/{ControlBar-oT-I2y6E.d.cts → ControlBar-tOCQnbAl.d.mts} +2 -2
- package/dist/ControlBar.d.cts +1 -1
- package/dist/ControlBar.d.mts +1 -1
- package/dist/DataTable.d.cts +3 -3
- package/dist/DataTable.d.mts +4 -4
- package/dist/DateField.d.cts +1 -1
- package/dist/DateField.d.mts +1 -1
- package/dist/DatePicker-BlCgFb7g.cjs +948 -0
- package/dist/DatePicker-BlCgFb7g.cjs.map +1 -0
- package/dist/DatePicker-DY1YA_Fu.mjs +922 -0
- package/dist/DatePicker-DY1YA_Fu.mjs.map +1 -0
- package/dist/DatePicker.d.cts +1 -1
- package/dist/DatePicker.d.mts +1 -1
- package/dist/DateRangePicker.d.cts +6 -1
- package/dist/DateRangePicker.d.mts +6 -1
- package/dist/DateValueControl.d.mts +26 -0
- package/dist/{DropdownButton-BS1QfVX_.mjs → DropdownButton-DKLjJylQ.mjs} +3 -3
- package/dist/{DropdownButton-BS1QfVX_.mjs.map → DropdownButton-DKLjJylQ.mjs.map} +1 -1
- package/dist/{DropdownButton-Dpiy5v-R.cjs → DropdownButton-Dl7IEzAc.cjs} +3 -3
- package/dist/{DropdownButton-Dpiy5v-R.cjs.map → DropdownButton-Dl7IEzAc.cjs.map} +1 -1
- package/dist/DropdownButton.d.cts +1 -1
- package/dist/DropdownButton.d.mts +2 -2
- package/dist/{DropdownMenu-COkpUmIO.d.mts → DropdownMenu-CVPanvKA.d.mts} +3 -3
- package/dist/{DropdownMenu-cN_AnKAT.mjs → DropdownMenu-DGYexb7s.mjs} +3 -3
- package/dist/{DropdownMenu-cN_AnKAT.mjs.map → DropdownMenu-DGYexb7s.mjs.map} +1 -1
- package/dist/{DropdownMenu-CeqZAxjs.cjs → DropdownMenu-DnlQqTjs.cjs} +3 -3
- package/dist/{DropdownMenu-CeqZAxjs.cjs.map → DropdownMenu-DnlQqTjs.cjs.map} +1 -1
- package/dist/{DropdownMenu-D1E1jpZu.d.cts → DropdownMenu-FkiManPP.d.cts} +2 -2
- package/dist/DropdownMenu.d.cts +1 -1
- package/dist/DropdownMenu.d.mts +1 -1
- package/dist/{ErrorProps-DBw1_Z0a.d.mts → ErrorProps-CN2XjaOX.d.mts} +1 -1
- package/dist/{ErrorProps-DLdVsYlk.d.cts → ErrorProps-Dxqb4gw_.d.cts} +1 -1
- package/dist/ErrorProps.d.cts +1 -1
- package/dist/ErrorProps.d.mts +1 -1
- package/dist/FieldRegistry-OX60T3hr.d.cts +122 -0
- package/dist/FieldRegistry-rqSkjchY.d.mts +122 -0
- package/dist/FieldRegistry.d.cts +2 -0
- package/dist/FieldRegistry.d.mts +2 -0
- package/dist/FilterBar-D3LiIy1-.d.mts +103 -0
- package/dist/FilterBar-YzOh02f9.d.cts +103 -0
- package/dist/FilterBar.d.cts +2 -0
- package/dist/FilterBar.d.mts +2 -0
- package/dist/FilterPickerMenu.d.mts +84 -0
- package/dist/FilterPill.d.mts +60 -0
- package/dist/FilterPopover.d.mts +87 -0
- package/dist/FloatValueControl.d.mts +40 -0
- package/dist/{FormControl-fK4HA_yF.mjs → FormControl-B28qa7aQ.mjs} +6 -6
- package/dist/{FormControl-fK4HA_yF.mjs.map → FormControl-B28qa7aQ.mjs.map} +1 -1
- package/dist/{FormControl-OqBTbSwv.d.cts → FormControl-DFp_qcW1.d.cts} +2 -2
- package/dist/{FormControl-vfFzrYhv.d.mts → FormControl-DH3bgqaB.d.mts} +3 -3
- package/dist/{FormControl-DjxkL5Ft.cjs → FormControl-MkBXuUF6.cjs} +6 -6
- package/dist/{FormControl-DjxkL5Ft.cjs.map → FormControl-MkBXuUF6.cjs.map} +1 -1
- package/dist/FormControl.d.cts +1 -1
- package/dist/FormControl.d.mts +1 -1
- package/dist/FormControlLabel.d.mts +1 -1
- package/dist/{FormField-24UPuoL6.d.mts → FormField-BugkBvN4.d.mts} +2 -2
- package/dist/FormField-D3XhxTMg.cjs +550 -0
- package/dist/FormField-D3XhxTMg.cjs.map +1 -0
- package/dist/FormField-PeYYRO4s.mjs +471 -0
- package/dist/FormField-PeYYRO4s.mjs.map +1 -0
- package/dist/{FormField-Cqwi_PyR.d.cts → FormField-idNLw5PW.d.cts} +2 -2
- package/dist/FormField.d.cts +1 -1
- package/dist/FormField.d.mts +1 -1
- package/dist/{Header-D8oDtnIL.d.cts → Header-C-WhPOin.d.cts} +3 -3
- package/dist/{Header-WNGlG541.d.mts → Header-CDTYK1XJ.d.mts} +2 -2
- package/dist/Header.d.cts +1 -1
- package/dist/Header.d.mts +1 -1
- package/dist/{HelperTooltip-Bd5pQLqL.d.mts → HelperTooltip-B7Ysh8B3.d.mts} +3 -3
- package/dist/{HelperTooltip-oXdyk2At.d.cts → HelperTooltip-T-sTGGLD.d.cts} +2 -2
- package/dist/HelperTooltip.d.cts +1 -1
- package/dist/HelperTooltip.d.mts +1 -1
- package/dist/{HoverCopyableField-DyW2iZuo.cjs → HoverCopyableField-CRkM7o4B.cjs} +12 -12
- package/dist/HoverCopyableField-CRkM7o4B.cjs.map +1 -0
- package/dist/{HoverCopyableField-DBkYvwii.mjs → HoverCopyableField-ClXBg_ld.mjs} +8 -8
- package/dist/HoverCopyableField-ClXBg_ld.mjs.map +1 -0
- package/dist/HoverCopyableField.d.mts +1 -1
- package/dist/{IconButton-DggxojBH.d.mts → IconButton-BSES_-6g.d.mts} +2 -2
- package/dist/{IconButton-DC4rh6ow.mjs → IconButton-CIWiEsS-.mjs} +5 -5
- package/dist/{IconButton-DC4rh6ow.mjs.map → IconButton-CIWiEsS-.mjs.map} +1 -1
- package/dist/{IconButton-DNy7g5zh.cjs → IconButton-nlgjJQCS.cjs} +4 -4
- package/dist/{IconButton-DNy7g5zh.cjs.map → IconButton-nlgjJQCS.cjs.map} +1 -1
- package/dist/IconButton.d.mts +1 -1
- package/dist/ImageTile.d.cts +1 -1
- package/dist/ImageTile.d.mts +2 -2
- package/dist/InlineCombobox.d.mts +6 -3
- package/dist/InlineInput.d.mts +4 -1
- package/dist/{Input-Bl7633Ux.mjs → Input-BFI_e7aU.mjs} +5 -5
- package/dist/{Input-Bl7633Ux.mjs.map → Input-BFI_e7aU.mjs.map} +1 -1
- package/dist/{Input-XppkvfUf.d.cts → Input-BM0DzWEf.d.cts} +2 -2
- package/dist/{Input-DW7oacjc.d.mts → Input-BPClVzwD.d.mts} +4 -4
- package/dist/{Input-DQS-BEym.cjs → Input-OJPQ07TW.cjs} +5 -5
- package/dist/{Input-DQS-BEym.cjs.map → Input-OJPQ07TW.cjs.map} +1 -1
- package/dist/Input.d.cts +1 -1
- package/dist/Input.d.mts +1 -1
- package/dist/{InputProps-7rEMxBED.d.cts → InputProps-BnjxrdWQ.d.mts} +2 -2
- package/dist/{InputProps-DQpb2_E3.d.mts → InputProps-CoVNpQSj.d.cts} +2 -2
- package/dist/InputProps.d.cts +1 -1
- package/dist/InputProps.d.mts +1 -1
- package/dist/IntegerValueControl.d.mts +39 -0
- package/dist/LayoutLoadingShimmer.d.cts +20 -0
- package/dist/LayoutLoadingShimmer.d.mts +20 -0
- package/dist/Link.d.mts +1 -1
- package/dist/{ListBox-B4uoo_PT.cjs → ListBox-BP1eaG7L.cjs} +84 -15
- package/dist/ListBox-BP1eaG7L.cjs.map +1 -0
- package/dist/{ListBox-B7sbubm5.mjs → ListBox-BwID8jpk.mjs} +84 -15
- package/dist/ListBox-BwID8jpk.mjs.map +1 -0
- package/dist/{ListBox-DeVmbXeC.d.cts → ListBox-QaeRQBSC.d.cts} +2 -2
- package/dist/{ListBox-CVvKa5sc.d.mts → ListBox-_fcSPynx.d.mts} +5 -5
- package/dist/ListBox.d.cts +1 -1
- package/dist/ListBox.d.mts +1 -1
- package/dist/ListBoxField.d.cts +2 -2
- package/dist/ListBoxField.d.mts +3 -3
- package/dist/{LoadingShimmer-b430vgof.mjs → LoadingShimmer-Dsc_RCCf.mjs} +1 -1
- package/dist/{LoadingShimmer-b430vgof.mjs.map → LoadingShimmer-Dsc_RCCf.mjs.map} +1 -1
- package/dist/{LoadingShimmer-uG2UzYQd.cjs → LoadingShimmer-Dx6ncVUV.cjs} +1 -1
- package/dist/{LoadingShimmer-uG2UzYQd.cjs.map → LoadingShimmer-Dx6ncVUV.cjs.map} +1 -1
- package/dist/LoadingShimmer.d.mts +2 -2
- package/dist/LogicRow-BtCKGX_j.d.mts +40 -0
- package/dist/LogicRow-C6lrFIq0.d.cts +40 -0
- package/dist/LogicRow.d.cts +2 -0
- package/dist/LogicRow.d.mts +2 -0
- package/dist/MaskedInput.d.cts +1 -1
- package/dist/MaskedInput.d.mts +1 -1
- package/dist/{Menu-BbSyWxFD.mjs → Menu-CPYXo61N.mjs} +5 -5
- package/dist/{Menu-BbSyWxFD.mjs.map → Menu-CPYXo61N.mjs.map} +1 -1
- package/dist/{Menu-CSgCXX0k.d.mts → Menu-CUp_9HgC.d.mts} +4 -4
- package/dist/{Menu-C_NOsHAm.d.cts → Menu-fUnbIYr5.d.cts} +2 -2
- package/dist/{Menu-BLbEcodU.cjs → Menu-t2q8NrV0.cjs} +5 -5
- package/dist/{Menu-BLbEcodU.cjs.map → Menu-t2q8NrV0.cjs.map} +1 -1
- package/dist/Menu.d.cts +1 -1
- package/dist/Menu.d.mts +1 -1
- package/dist/{MiddleTruncatedText-BIzKECv9.cjs → MiddleTruncatedText-CO76xIqP.cjs} +2 -2
- package/dist/{MiddleTruncatedText-BIzKECv9.cjs.map → MiddleTruncatedText-CO76xIqP.cjs.map} +1 -1
- package/dist/{MiddleTruncatedText-Bzpg3zAU.mjs → MiddleTruncatedText-GXI-CPvs.mjs} +3 -3
- package/dist/{MiddleTruncatedText-Bzpg3zAU.mjs.map → MiddleTruncatedText-GXI-CPvs.mjs.map} +1 -1
- package/dist/Modal.d.cts +10 -5
- package/dist/Modal.d.mts +13 -8
- package/dist/PageHeader-CUDnarkt.cjs +77 -0
- package/dist/PageHeader-CUDnarkt.cjs.map +1 -0
- package/dist/PageHeader-D-6W61E_.mjs +64 -0
- package/dist/PageHeader-D-6W61E_.mjs.map +1 -0
- package/dist/PageHeader.d.cts +11 -2
- package/dist/PageHeader.d.mts +12 -3
- package/dist/{PageSelector-COqR1tdA.d.cts → PageSelector-CNnVp3Al.d.cts} +3 -3
- package/dist/{PageSelector-mn6q4SKY.d.mts → PageSelector-vay4jpMp.d.mts} +3 -3
- package/dist/PageSelector.d.cts +1 -1
- package/dist/PageSelector.d.mts +1 -1
- package/dist/PageSizeSelector.d.mts +7 -1
- package/dist/{Pagination-DEZFb552.cjs → Pagination-2Yo1vRJZ.cjs} +13 -9
- package/dist/Pagination-2Yo1vRJZ.cjs.map +1 -0
- package/dist/{Pagination-CeoHVtYD.d.cts → Pagination-D04tn-tf.d.cts} +9 -3
- package/dist/{Pagination-BUjpYIwq.d.mts → Pagination-ygLutOst.d.mts} +9 -3
- package/dist/{Pagination-F8ofIWnG.mjs → Pagination-ztqhywAP.mjs} +14 -10
- package/dist/Pagination-ztqhywAP.mjs.map +1 -0
- package/dist/Pagination.d.cts +1 -1
- package/dist/Pagination.d.mts +1 -1
- package/dist/{Pii--c8IxKI0.cjs → Pii-DHTb3ewO.cjs} +2 -2
- package/dist/{Pii--c8IxKI0.cjs.map → Pii-DHTb3ewO.cjs.map} +1 -1
- package/dist/{Pii-B_gBVAak.mjs → Pii-DrrtEz7U.mjs} +2 -2
- package/dist/{Pii-B_gBVAak.mjs.map → Pii-DrrtEz7U.mjs.map} +1 -1
- package/dist/Pii.d.mts +1 -1
- package/dist/PillShell.d.mts +85 -0
- package/dist/{Popover-D4_aqKlm.mjs → Popover-BkDpDdaO.mjs} +5 -5
- package/dist/{Popover-D4_aqKlm.mjs.map → Popover-BkDpDdaO.mjs.map} +1 -1
- package/dist/{Popover-jHZICnQt.cjs → Popover-BzgMAhsX.cjs} +4 -4
- package/dist/{Popover-jHZICnQt.cjs.map → Popover-BzgMAhsX.cjs.map} +1 -1
- package/dist/Popover.d.mts +1 -1
- package/dist/ProgressBar.d.mts +1 -1
- package/dist/ProgressIndicator.d.mts +1 -1
- package/dist/{PseudoClassProps--MiDp2l2.d.mts → PseudoClassProps-DLxPxo7T.d.mts} +1 -1
- package/dist/PseudoClassProps.d.mts +1 -1
- package/dist/{Radio-BN9FLRHy.cjs → Radio-BrTzy7-C.cjs} +3 -3
- package/dist/{Radio-BN9FLRHy.cjs.map → Radio-BrTzy7-C.cjs.map} +1 -1
- package/dist/{Radio-DnnJl87b.mjs → Radio-CSX2eO-O.mjs} +3 -3
- package/dist/{Radio-DnnJl87b.mjs.map → Radio-CSX2eO-O.mjs.map} +1 -1
- package/dist/{RadioGroup-BDHhFlmy.mjs → RadioGroup-CnK0opBd.mjs} +3 -3
- package/dist/{RadioGroup-BDHhFlmy.mjs.map → RadioGroup-CnK0opBd.mjs.map} +1 -1
- package/dist/{RadioGroup-D28hdlhz.cjs → RadioGroup-CriF2InQ.cjs} +3 -3
- package/dist/{RadioGroup-D28hdlhz.cjs.map → RadioGroup-CriF2InQ.cjs.map} +1 -1
- package/dist/{RadioGroup-BDO3pTgP.d.cts → RadioGroup-DKqbSfju.d.mts} +1 -1
- package/dist/{RadioGroup-DfhvXpi3.d.mts → RadioGroup-XYWjprsv.d.cts} +1 -1
- package/dist/RadioGroup.d.cts +1 -1
- package/dist/RadioGroup.d.mts +1 -1
- package/dist/RangeCalendar.d.mts +1 -1
- package/dist/RangeCalendarPresets.d.mts +1 -1
- package/dist/RuleEditorFields.d.mts +37 -0
- package/dist/RulesPill.d.mts +65 -0
- package/dist/{SearchInput-2lsv5_R6.d.mts → SearchInput-Bp2yjaE1.d.mts} +3 -3
- package/dist/{SearchInput-B6d2Qyzb.d.cts → SearchInput-CTI59-NW.d.cts} +2 -2
- package/dist/SearchInput.d.cts +1 -1
- package/dist/SearchInput.d.mts +1 -1
- package/dist/Section.d.mts +1 -1
- package/dist/{SectionHeading-BLDimf5d.d.mts → SectionHeading-C6hjGdK-.d.cts} +2 -2
- package/dist/{SectionHeading-DZyfNPn0.d.cts → SectionHeading-Q-rx2LEd.d.mts} +2 -2
- package/dist/SectionHeading.d.cts +1 -1
- package/dist/SectionHeading.d.mts +1 -1
- package/dist/{SegmentedControl-DTkFgjac.cjs → SegmentedControl-C2XZF0ys.cjs} +8 -7
- package/dist/SegmentedControl-C2XZF0ys.cjs.map +1 -0
- package/dist/{SegmentedControl-pRkMcMXe.mjs → SegmentedControl-CgDQIVll.mjs} +8 -7
- package/dist/SegmentedControl-CgDQIVll.mjs.map +1 -0
- package/dist/{SegmentedControl-1QD2zH3l.d.mts → SegmentedControl-DrjdUOU9.d.mts} +2 -2
- package/dist/{SegmentedControl-C51htGBp.d.cts → SegmentedControl-nHIK1ZvR.d.cts} +1 -1
- package/dist/SegmentedControl.d.cts +1 -1
- package/dist/SegmentedControl.d.mts +1 -1
- package/dist/{Select-XN23Ui_j.d.cts → Select-2KbtKawr.d.mts} +11 -5
- package/dist/{Select-BysJW9mH.d.mts → Select-BH3hXMxp.d.cts} +11 -5
- package/dist/{Select-CowngLd7.cjs → Select-BurtT6bN.cjs} +13 -10
- package/dist/Select-BurtT6bN.cjs.map +1 -0
- package/dist/{Select-Fg2z5J-p.mjs → Select-cPEORy70.mjs} +14 -11
- package/dist/Select-cPEORy70.mjs.map +1 -0
- package/dist/Select.d.cts +1 -1
- package/dist/Select.d.mts +1 -1
- package/dist/Slider.d.mts +1 -1
- package/dist/SliderRHF.d.mts +1 -1
- package/dist/SliderThumb.d.mts +1 -1
- package/dist/{Spacer-GYHbk-dS.cjs → Spacer-B2CerL6e.cjs} +1 -1
- package/dist/{Spacer-GYHbk-dS.cjs.map → Spacer-B2CerL6e.cjs.map} +1 -1
- package/dist/{Spacer-Ln3KChb5.mjs → Spacer-CJp0lwkL.mjs} +1 -1
- package/dist/{Spacer-Ln3KChb5.mjs.map → Spacer-CJp0lwkL.mjs.map} +1 -1
- package/dist/{Spinner-DaSlM4kU.cjs → Spinner-B6bx70yR.cjs} +1 -1
- package/dist/{Spinner-DaSlM4kU.cjs.map → Spinner-B6bx70yR.cjs.map} +1 -1
- package/dist/{Spinner-D9-u_5zS.mjs → Spinner-BEPF42RW.mjs} +1 -1
- package/dist/{Spinner-D9-u_5zS.mjs.map → Spinner-BEPF42RW.mjs.map} +1 -1
- package/dist/{Stack-ckRN7LrP.mjs → Stack-Bl54WmhY.mjs} +1 -1
- package/dist/{Stack-ckRN7LrP.mjs.map → Stack-Bl54WmhY.mjs.map} +1 -1
- package/dist/{Stack-B5VYkPBe.d.cts → Stack-BzVkf3cz.d.cts} +1 -1
- package/dist/{Stack-Du7tLSPC.d.mts → Stack-CkV7k7TE.d.mts} +2 -2
- package/dist/{Stack-BF-9YjA1.cjs → Stack-UeifHn3c.cjs} +1 -1
- package/dist/{Stack-BF-9YjA1.cjs.map → Stack-UeifHn3c.cjs.map} +1 -1
- package/dist/Stack.d.cts +1 -1
- package/dist/Stack.d.mts +1 -1
- package/dist/StatusIndicator.d.cts +31 -3
- package/dist/StatusIndicator.d.mts +32 -4
- package/dist/{Sticker-XfyoDEod.d.mts → Sticker-Bs25ISz7.d.mts} +5 -5
- package/dist/{Sticker-D9HjFQ6e.d.cts → Sticker-CI-XxUmM.d.cts} +3 -3
- package/dist/{Sticker-D0jIU2Dt.cjs → Sticker-CIoseh9f.cjs} +3 -3
- package/dist/{Sticker-D0jIU2Dt.cjs.map → Sticker-CIoseh9f.cjs.map} +1 -1
- package/dist/{Sticker-B0TbkV4o.mjs → Sticker-DbqKLe33.mjs} +3 -3
- package/dist/{Sticker-B0TbkV4o.mjs.map → Sticker-DbqKLe33.mjs.map} +1 -1
- package/dist/Sticker.d.cts +1 -1
- package/dist/Sticker.d.mts +1 -1
- package/dist/StringValueControl.d.mts +39 -0
- package/dist/SwatchPicker.d.mts +1 -1
- package/dist/Tab.d.mts +2 -2
- package/dist/{TabBar-D8WCGYd5.cjs → TabBar-PFaDNRw0.cjs} +6 -4
- package/dist/TabBar-PFaDNRw0.cjs.map +1 -0
- package/dist/{TabBar-CAv10XAF.mjs → TabBar-zSA8kyE6.mjs} +6 -4
- package/dist/TabBar-zSA8kyE6.mjs.map +1 -0
- package/dist/TabBarIconButton.d.mts +1 -1
- package/dist/{Table-D4SMuVIR.d.cts → Table-BNScLj9g.d.mts} +1 -1
- package/dist/{Table-CGtyWI6V.mjs → Table-D8IcpACv.mjs} +6 -6
- package/dist/{Table-CGtyWI6V.mjs.map → Table-D8IcpACv.mjs.map} +1 -1
- package/dist/{Table-C8D4lpSa.d.mts → Table-DXqyNohc.d.cts} +1 -1
- package/dist/{Table-B3FJsvXP.cjs → Table-DxLvJYWK.cjs} +6 -6
- package/dist/{Table-B3FJsvXP.cjs.map → Table-DxLvJYWK.cjs.map} +1 -1
- package/dist/Table.d.cts +1 -1
- package/dist/Table.d.mts +1 -1
- package/dist/{TableBody-0cd50RuX.d.mts → TableBody-CrDNMyT8.d.mts} +1 -1
- package/dist/{TableBody-BLmn5h3y.d.cts → TableBody-CxwHmdNb.d.cts} +1 -1
- package/dist/TableBody.d.cts +1 -1
- package/dist/TableBody.d.mts +1 -1
- package/dist/{TableBox-D_B9atn2.cjs → TableBox-CiuXCXyv.cjs} +229 -61
- package/dist/TableBox-CiuXCXyv.cjs.map +1 -0
- package/dist/{TableBox-CPCWzwSl.mjs → TableBox-luasMC73.mjs} +230 -62
- package/dist/TableBox-luasMC73.mjs.map +1 -0
- package/dist/TableBox.d.cts +2 -2
- package/dist/TableBox.d.mts +2 -2
- package/dist/{TableBoxCell-CEvOcGYa.d.mts → TableBoxCell-By1xE6_Q.d.mts} +28 -11
- package/dist/{TableBoxCell-DJz423uN.d.cts → TableBoxCell-DIMenSwX.d.cts} +27 -10
- package/dist/TableBoxCell.d.cts +1 -1
- package/dist/TableBoxCell.d.mts +1 -1
- package/dist/TableBoxField.d.cts +20 -5
- package/dist/TableBoxField.d.mts +20 -6
- package/dist/{TableBoxRow-LyHvITwZ.d.mts → TableBoxRow-CsRPRPQ-.d.mts} +13 -4
- package/dist/{TableBoxRow-CZwVgei6.d.cts → TableBoxRow-RNQ6wJLh.d.cts} +12 -3
- package/dist/TableBoxRow.d.cts +1 -1
- package/dist/TableBoxRow.d.mts +1 -1
- package/dist/{TableBoxRowActions-VDAOxNDG.d.cts → TableBoxRowActions-CYpoPhYZ.d.cts} +2 -2
- package/dist/{TableBoxRowActions-C8SAxrYG.d.mts → TableBoxRowActions-DMYOI8Do.d.mts} +2 -2
- package/dist/TableBoxRowActions.d.cts +1 -1
- package/dist/TableBoxRowActions.d.mts +1 -1
- package/dist/TableBoxRowContext.d.mts +5 -3
- package/dist/TableCell.d.cts +1 -1
- package/dist/TableCell.d.mts +1 -1
- package/dist/{TableControls-B4gpAvl7.d.mts → TableControls-BehR7CKS.d.mts} +4 -4
- package/dist/TableControls-BtXK7Ils.cjs +3995 -0
- package/dist/TableControls-BtXK7Ils.cjs.map +1 -0
- package/dist/{TableControls-BG0OKwjj.d.cts → TableControls-CLNF0AJG.d.cts} +3 -3
- package/dist/TableControls-DHMs7o58.mjs +3859 -0
- package/dist/TableControls-DHMs7o58.mjs.map +1 -0
- package/dist/TableControls.d.cts +1 -1
- package/dist/TableControls.d.mts +1 -1
- package/dist/{TableControlsContext-NdzzGevw.d.mts → TableControlsContext-DAZx6Rrj.d.cts} +2 -2
- package/dist/{TableControlsContext-CanIAaLW.d.cts → TableControlsContext-D_SBFZN1.d.mts} +2 -2
- package/dist/TableControlsContext.d.cts +1 -1
- package/dist/TableControlsContext.d.mts +1 -1
- package/dist/{TableHead-CuHNOeCj.d.mts → TableHead-Ch4Ho3LW.d.cts} +1 -1
- package/dist/{TableHead-roexW17v.d.cts → TableHead-LxvG0e9k.d.mts} +1 -1
- package/dist/TableHead.d.cts +1 -1
- package/dist/TableHead.d.mts +1 -1
- package/dist/{TableHeaderCell-Cflho9R2.d.mts → TableHeaderCell-Br8ZE3Xe.d.mts} +1 -1
- package/dist/{TableHeaderCell-BTGuqVXy.d.cts → TableHeaderCell-Crsa2R2g.d.cts} +1 -1
- package/dist/TableHeaderCell.d.cts +1 -1
- package/dist/TableHeaderCell.d.mts +1 -1
- package/dist/{TableLayout-BvVsuUVb.d.cts → TableLayout-Ct0kepcA.d.cts} +1 -1
- package/dist/{TableLayout-D9BGrjRs.d.mts → TableLayout-nwy094C_.d.mts} +1 -1
- package/dist/TableLayout.d.cts +1 -1
- package/dist/TableLayout.d.mts +1 -1
- package/dist/{TableRow-CjQmDmfx.d.mts → TableRow-BvS4yjo6.d.mts} +2 -2
- package/dist/{TableRow-BfGJSGZH.d.cts → TableRow-DVTPqT4w.d.cts} +1 -1
- package/dist/TableRow.d.cts +1 -1
- package/dist/TableRow.d.mts +1 -1
- package/dist/TableTH.d.cts +1 -1
- package/dist/TableTH.d.mts +1 -1
- package/dist/{TableViewConfigurationDropdown-DMeFkVUa.d.mts → TableViewConfigurationDropdown-BYPh4dIP.d.mts} +2 -2
- package/dist/{TableViewConfigurationDropdown-BaQ1IsYM.d.cts → TableViewConfigurationDropdown-CaiOGyrU.d.cts} +2 -2
- package/dist/TableViewConfigurationDropdown.d.cts +1 -1
- package/dist/TableViewConfigurationDropdown.d.mts +1 -1
- package/dist/TechnicalSticker.d.mts +1 -1
- package/dist/{Text-CPd0r0w2.d.mts → Text-DNPbAuUG.d.mts} +3 -3
- package/dist/{Text-CzN0DOXV.cjs → Text-G9QmYf0P.cjs} +1 -1
- package/dist/{Text-CzN0DOXV.cjs.map → Text-G9QmYf0P.cjs.map} +1 -1
- package/dist/{Text-hEoPeOc9.mjs → Text-RcEfNFLx.mjs} +1 -1
- package/dist/{Text-hEoPeOc9.mjs.map → Text-RcEfNFLx.mjs.map} +1 -1
- package/dist/Text.d.mts +1 -1
- package/dist/{TextArea-Dl9_Zizx.d.cts → TextArea-B89wtTsF.d.mts} +2 -2
- package/dist/{TextArea-p3oek3Zq.cjs → TextArea-BNiipQDb.cjs} +3 -3
- package/dist/{TextArea-p3oek3Zq.cjs.map → TextArea-BNiipQDb.cjs.map} +1 -1
- package/dist/{TextArea-J1MD_8rK.d.mts → TextArea-CHW9FKM4.d.cts} +2 -2
- package/dist/{TextArea-CJJlw3rV.mjs → TextArea-NCLsW-03.mjs} +3 -3
- package/dist/{TextArea-CJJlw3rV.mjs.map → TextArea-NCLsW-03.mjs.map} +1 -1
- package/dist/TextArea.d.cts +1 -1
- package/dist/TextArea.d.mts +1 -1
- package/dist/{TextUnderlineTooltip-D8GFsk5C.d.mts → TextUnderlineTooltip-5-0D8s4z.d.mts} +3 -3
- package/dist/{TextUnderlineTooltip-BDMs4iXn.d.cts → TextUnderlineTooltip-DMEyOu8C.d.cts} +2 -2
- package/dist/TextUnderlineTooltip.d.cts +1 -1
- package/dist/TextUnderlineTooltip.d.mts +1 -1
- package/dist/Tile.d.cts +1 -1
- package/dist/Tile.d.mts +2 -2
- package/dist/Toast.d.cts +1 -1
- package/dist/Toast.d.mts +1 -1
- package/dist/{Toggle-DOo0cLmI.mjs → Toggle-Bie9zCem.mjs} +5 -5
- package/dist/{Toggle-DOo0cLmI.mjs.map → Toggle-Bie9zCem.mjs.map} +1 -1
- package/dist/{Toggle-7o-n5vF6.cjs → Toggle-Ce-rF8Xp.cjs} +5 -5
- package/dist/{Toggle-7o-n5vF6.cjs.map → Toggle-Ce-rF8Xp.cjs.map} +1 -1
- package/dist/{Toggle-CY67yh4T.d.mts → Toggle-DzYLgxGk.d.mts} +1 -1
- package/dist/{Toggle-Dw4hisXm.d.cts → Toggle-tbIebQWC.d.cts} +1 -1
- package/dist/Toggle.d.cts +1 -1
- package/dist/Toggle.d.mts +1 -1
- package/dist/{Tooltip-CE1oH6Iz.d.cts → Tooltip--eDrrk2r.d.cts} +2 -2
- package/dist/{Tooltip-CDvOu1UN.mjs → Tooltip-C6AR1xT-.mjs} +3 -3
- package/dist/{Tooltip-CDvOu1UN.mjs.map → Tooltip-C6AR1xT-.mjs.map} +1 -1
- package/dist/{Tooltip-DtWJO_kU.d.mts → Tooltip-CUC-JuRL.d.mts} +3 -3
- package/dist/{Tooltip-vylydKVv.cjs → Tooltip-olP3rdUO.cjs} +3 -3
- package/dist/{Tooltip-vylydKVv.cjs.map → Tooltip-olP3rdUO.cjs.map} +1 -1
- package/dist/Tooltip.d.cts +1 -1
- package/dist/Tooltip.d.mts +1 -1
- package/dist/{TruncatedText-BBoWmFii.d.mts → TruncatedText-BJnowVTx.d.mts} +1 -1
- package/dist/{TruncatedText-DMpR-yaJ.d.cts → TruncatedText-Dit2NJI6.d.cts} +1 -1
- package/dist/components/Attribute/index.cjs +6 -6
- package/dist/components/Attribute/index.mjs +7 -7
- package/dist/components/Attribute/index.mjs.map +1 -1
- package/dist/components/Badge/index.cjs +1 -1
- package/dist/components/Badge/index.mjs +1 -1
- package/dist/components/Banner/index.cjs +1 -1
- package/dist/components/Banner/index.mjs +1 -1
- package/dist/components/Breadcrumbs/index.cjs +7 -0
- package/dist/components/Breadcrumbs/index.d.cts +2 -0
- package/dist/components/Breadcrumbs/index.d.mts +2 -0
- package/dist/components/Breadcrumbs/index.mjs +2 -0
- package/dist/components/Button/index.cjs +1 -1
- package/dist/components/Button/index.d.mts +2 -2
- package/dist/components/Button/index.mjs +1 -1
- package/dist/components/ButtonGroup/index.cjs +3 -3
- package/dist/components/ButtonGroup/index.mjs +3 -3
- package/dist/components/Card/index.cjs +1 -1
- package/dist/components/Card/index.d.cts +2 -2
- package/dist/components/Card/index.d.mts +2 -2
- package/dist/components/Card/index.mjs +1 -1
- package/dist/components/CardV2/index.cjs +3 -432
- package/dist/components/CardV2/index.d.cts +1 -1
- package/dist/components/CardV2/index.d.mts +1 -1
- package/dist/components/CardV2/index.mjs +1 -427
- package/dist/components/Checkbox/index.cjs +1 -1
- package/dist/components/Checkbox/index.d.cts +1 -1
- package/dist/components/Checkbox/index.d.mts +1 -1
- package/dist/components/Checkbox/index.mjs +1 -1
- package/dist/components/Combobox/index.cjs +1 -1
- package/dist/components/Combobox/index.d.cts +2 -2
- package/dist/components/Combobox/index.d.mts +2 -2
- package/dist/components/Combobox/index.mjs +1 -1
- package/dist/components/ConfigFormGroup/index.cjs +2 -2
- package/dist/components/ConfigFormGroup/index.mjs +2 -2
- package/dist/components/DataTable/TableControls/index.cjs +15 -1
- package/dist/components/DataTable/TableControls/index.d.cts +16 -6
- package/dist/components/DataTable/TableControls/index.d.mts +16 -6
- package/dist/components/DataTable/TableControls/index.mjs +2 -2
- package/dist/components/DataTable/index.cjs +15 -16
- package/dist/components/DataTable/index.cjs.map +1 -1
- package/dist/components/DataTable/index.mjs +25 -26
- package/dist/components/DataTable/index.mjs.map +1 -1
- package/dist/components/DataTable/types.d.cts +2 -2
- package/dist/components/DataTable/types.d.mts +2 -2
- package/dist/components/DatePicker/index.cjs +6 -898
- package/dist/components/DatePicker/index.mjs +1 -890
- package/dist/components/DropdownButton/index.cjs +1 -1
- package/dist/components/DropdownButton/index.mjs +1 -1
- package/dist/components/DropdownMenu/index.cjs +1 -1
- package/dist/components/DropdownMenu/index.d.cts +1 -1
- package/dist/components/DropdownMenu/index.d.mts +1 -1
- package/dist/components/DropdownMenu/index.mjs +1 -1
- package/dist/components/FormControl/index.cjs +2 -2
- package/dist/components/FormControl/index.d.cts +2 -2
- package/dist/components/FormControl/index.d.mts +2 -2
- package/dist/components/FormControl/index.mjs +2 -2
- package/dist/components/FormField/index.cjs +15 -468
- package/dist/components/FormField/index.d.cts +3 -3
- package/dist/components/FormField/index.d.mts +3 -3
- package/dist/components/FormField/index.mjs +1 -452
- package/dist/components/HoverCopyableField/index.cjs +1 -1
- package/dist/components/HoverCopyableField/index.mjs +1 -1
- package/dist/components/ImageTile/index.cjs +8 -8
- package/dist/components/ImageTile/index.mjs +8 -8
- package/dist/components/Input/index.cjs +1 -1
- package/dist/components/Input/index.d.cts +1 -1
- package/dist/components/Input/index.d.mts +1 -1
- package/dist/components/Input/index.mjs +1 -1
- package/dist/components/Link/index.cjs +1 -1
- package/dist/components/Link/index.mjs +1 -1
- package/dist/components/ListBox/index.cjs +1 -1
- package/dist/components/ListBox/index.d.cts +4 -2
- package/dist/components/ListBox/index.d.mts +4 -2
- package/dist/components/ListBox/index.mjs +1 -1
- package/dist/components/LoadingShimmer/index.cjs +1 -1
- package/dist/components/LoadingShimmer/index.mjs +1 -1
- package/dist/components/MaskedInput/index.cjs +2 -2
- package/dist/components/MaskedInput/index.mjs +2 -2
- package/dist/components/Menu/index.cjs +1 -1
- package/dist/components/Menu/index.d.cts +1 -1
- package/dist/components/Menu/index.d.mts +1 -1
- package/dist/components/Menu/index.mjs +1 -1
- package/dist/components/Modal/index.cjs +13 -9
- package/dist/components/Modal/index.cjs.map +1 -1
- package/dist/components/Modal/index.d.cts +2 -2
- package/dist/components/Modal/index.d.mts +2 -2
- package/dist/components/Modal/index.mjs +13 -9
- package/dist/components/Modal/index.mjs.map +1 -1
- package/dist/components/PageHeader/index.cjs +3 -67
- package/dist/components/PageHeader/index.mjs +1 -63
- package/dist/components/Pagination/index.cjs +1 -1
- package/dist/components/Pagination/index.d.cts +3 -3
- package/dist/components/Pagination/index.d.mts +3 -3
- package/dist/components/Pagination/index.mjs +1 -1
- package/dist/components/Pii/index.cjs +1 -1
- package/dist/components/Pii/index.mjs +1 -1
- package/dist/components/Popover/index.cjs +1 -1
- package/dist/components/Popover/index.mjs +1 -1
- package/dist/components/ProgressBar/index.cjs +1 -1
- package/dist/components/ProgressBar/index.mjs +1 -1
- package/dist/components/Radio/index.cjs +1 -1
- package/dist/components/Radio/index.mjs +1 -1
- package/dist/components/RadioGroup/index.cjs +1 -1
- package/dist/components/RadioGroup/index.d.cts +1 -1
- package/dist/components/RadioGroup/index.d.mts +1 -1
- package/dist/components/RadioGroup/index.mjs +1 -1
- package/dist/components/SegmentedControl/index.cjs +1 -1
- package/dist/components/SegmentedControl/index.d.cts +1 -1
- package/dist/components/SegmentedControl/index.d.mts +1 -1
- package/dist/components/SegmentedControl/index.mjs +1 -1
- package/dist/components/Select/index.cjs +1 -1
- package/dist/components/Select/index.d.cts +1 -1
- package/dist/components/Select/index.d.mts +1 -1
- package/dist/components/Select/index.mjs +1 -1
- package/dist/components/Slider/index.cjs +2 -2
- package/dist/components/Slider/index.mjs +2 -2
- package/dist/components/Spacer/index.cjs +1 -1
- package/dist/components/Spacer/index.mjs +1 -1
- package/dist/components/Spinner/index.cjs +1 -1
- package/dist/components/Spinner/index.mjs +1 -1
- package/dist/components/Stack/index.cjs +1 -1
- package/dist/components/Stack/index.d.cts +1 -1
- package/dist/components/Stack/index.d.mts +1 -1
- package/dist/components/Stack/index.mjs +1 -1
- package/dist/components/StatusIndicator/index.cjs +60 -10
- package/dist/components/StatusIndicator/index.cjs.map +1 -1
- package/dist/components/StatusIndicator/index.d.cts +2 -2
- package/dist/components/StatusIndicator/index.d.mts +2 -2
- package/dist/components/StatusIndicator/index.mjs +61 -12
- package/dist/components/StatusIndicator/index.mjs.map +1 -1
- package/dist/components/Sticker/index.cjs +1 -1
- package/dist/components/Sticker/index.d.cts +1 -1
- package/dist/components/Sticker/index.d.mts +1 -1
- package/dist/components/Sticker/index.mjs +1 -1
- package/dist/components/TabBar/index.cjs +1 -1
- package/dist/components/TabBar/index.mjs +1 -1
- package/dist/components/Table/index.cjs +1 -1
- package/dist/components/Table/index.d.cts +7 -7
- package/dist/components/Table/index.d.mts +7 -7
- package/dist/components/Table/index.mjs +1 -1
- package/dist/components/TableBox/index.cjs +1 -1
- package/dist/components/TableBox/index.d.cts +2 -2
- package/dist/components/TableBox/index.d.mts +2 -2
- package/dist/components/TableBox/index.mjs +1 -1
- package/dist/components/TechnicalSticker/index.cjs +4 -4
- package/dist/components/TechnicalSticker/index.mjs +4 -4
- package/dist/components/Text/index.cjs +1 -1
- package/dist/components/Text/index.d.mts +1 -1
- package/dist/components/Text/index.mjs +1 -1
- package/dist/components/TextArea/index.cjs +1 -1
- package/dist/components/TextArea/index.d.cts +1 -1
- package/dist/components/TextArea/index.d.mts +1 -1
- package/dist/components/TextArea/index.mjs +1 -1
- package/dist/components/Tile/index.cjs +4 -4
- package/dist/components/Tile/index.mjs +4 -4
- package/dist/components/Toast/index.cjs +1 -1
- package/dist/components/Toast/index.mjs +1 -1
- package/dist/components/Toggle/index.cjs +1 -1
- package/dist/components/Toggle/index.d.cts +1 -1
- package/dist/components/Toggle/index.d.mts +1 -1
- package/dist/components/Toggle/index.mjs +1 -1
- package/dist/components/Tooltip/index.cjs +1 -1
- package/dist/components/Tooltip/index.d.cts +3 -3
- package/dist/components/Tooltip/index.d.mts +3 -3
- package/dist/components/Tooltip/index.mjs +1 -1
- package/dist/compound-expression.d.mts +9 -0
- package/dist/{constants-D5CkrHza.d.cts → constants-B6c8S033.d.cts} +1 -1
- package/dist/{constants-CnkpDWTv.d.mts → constants-BASogfT_.d.mts} +1 -1
- package/dist/constants.d.cts +1 -1
- package/dist/constants.d.mts +1 -1
- package/dist/containers.d.mts +8 -0
- package/dist/display.d.mts +8 -0
- package/dist/fieldPickerOptions.d.mts +29 -0
- package/dist/filter-size-context-Blw6Sd69.d.mts +52 -0
- package/dist/filter-size-context-CIw0Zi6r.d.cts +52 -0
- package/dist/filter-size-context.d.cts +2 -0
- package/dist/filter-size-context.d.mts +2 -0
- package/dist/helpers.d.cts +1 -1
- package/dist/helpers.d.mts +1 -1
- package/dist/index-4_B2yRzD.d.mts +7 -0
- package/dist/{index-Bp3vEph6.d.cts → index-Bw8QVu_o.d.cts} +3 -3
- package/dist/index-C9EIpBh8.d.cts +7 -0
- package/dist/index-D34XP8vp.d.cts +54 -0
- package/dist/{index-BwWgmaXZ.d.mts → index-DDbjWdk0.d.mts} +4 -4
- package/dist/index-IlwGkCAe2.d.mts +54 -0
- package/dist/index-sQecLSpR.d.cts +1 -0
- package/dist/index-sViox9YW.d.mts +1 -0
- package/dist/index.d.cts +1 -1
- package/dist/index.d.mts +1 -1
- package/dist/index2.d.cts +1 -1
- package/dist/index2.d.mts +1 -1
- package/dist/index3.d.cts +4 -1
- package/dist/index3.d.mts +4 -1
- package/dist/index4.d.cts +11 -0
- package/dist/index4.d.mts +11 -0
- package/dist/index5.d.cts +1 -0
- package/dist/index5.d.mts +2 -0
- package/dist/index6.d.mts +1 -0
- package/dist/{input-FEaQ66an.d.mts → input-Bv5fKt5J.d.mts} +3 -3
- package/dist/{input-Bm_anD8X.d.cts → input-DPB0cX2m.d.cts} +2 -2
- package/dist/inputFields.d.cts +10 -10
- package/dist/inputFields.d.mts +11 -11
- package/dist/intersperse-_0nQM5Rb.cjs +26 -0
- package/dist/intersperse-_0nQM5Rb.cjs.map +1 -0
- package/dist/intersperse-vOYvFOfF.mjs +21 -0
- package/dist/intersperse-vOYvFOfF.mjs.map +1 -0
- package/dist/layouts/LayoutLoadingShimmer/index.cjs +139 -0
- package/dist/layouts/LayoutLoadingShimmer/index.cjs.map +1 -0
- package/dist/layouts/LayoutLoadingShimmer/index.d.cts +2 -0
- package/dist/layouts/LayoutLoadingShimmer/index.d.mts +2 -0
- package/dist/layouts/LayoutLoadingShimmer/index.mjs +133 -0
- package/dist/layouts/LayoutLoadingShimmer/index.mjs.map +1 -0
- package/dist/lib/MiddleTruncatedText.cjs +1 -1
- package/dist/lib/MiddleTruncatedText.mjs +1 -1
- package/dist/lib/PDSProvider.d.mts +1 -1
- package/dist/lib/TruncatedText.cjs +1 -1
- package/dist/lib/TruncatedText.d.cts +1 -1
- package/dist/lib/TruncatedText.d.mts +1 -1
- package/dist/lib/TruncatedText.mjs +1 -1
- package/dist/lib/TruncatedTextWithTooltip.cjs +2 -2
- package/dist/lib/TruncatedTextWithTooltip.d.cts +1 -1
- package/dist/lib/TruncatedTextWithTooltip.d.mts +1 -1
- package/dist/lib/TruncatedTextWithTooltip.mjs +2 -2
- package/dist/lib/message.d.cts +1 -1
- package/dist/lib/message.d.mts +1 -1
- package/dist/lib/pseudoClass.d.mts +1 -1
- package/dist/{message-SITKO6JZ.d.mts → message-BEgtEjQC.d.cts} +1 -1
- package/dist/{message-CWEGi3Xg.d.cts → message-CMHvlPGn.d.mts} +1 -1
- package/dist/mixins/focus.d.mts +1 -1
- package/dist/mixins/hoverable.d.mts +2 -2
- package/dist/mixins/input.d.cts +1 -1
- package/dist/mixins/input.d.mts +1 -1
- package/dist/mixins/menuItem.d.mts +2 -2
- package/dist/mixins/text.d.mts +1 -1
- package/dist/operators-1qE2GpC7.d.cts +43 -0
- package/dist/operators-Bo31xlc2.d.mts +43 -0
- package/dist/operators.d.cts +2 -0
- package/dist/operators.d.mts +2 -0
- package/dist/{text-BEKhEWTa.d.mts → text-B21s9mRZ.d.mts} +1 -1
- package/dist/{theme-q9fNLtcA.d.mts → theme-BzBpJXhO.d.mts} +1 -1
- package/dist/theme.d.mts +1 -1
- package/dist/types-B_HHNlia.d.cts +158 -0
- package/dist/types-CCvc590y.d.cts +45 -0
- package/dist/{types-CmnKGG5I.d.cts → types-CkiXVJeR.d.cts} +1 -1
- package/dist/types-D58IoRx6.d.mts +158 -0
- package/dist/types-D7ppqnNj.d.mts +45 -0
- package/dist/{types-BG21GgBe.d.cts → types-DEh_pXgS.d.mts} +1 -1
- package/dist/{types-ChCqSD9N.d.mts → types-SYSKcZKW.d.cts} +1 -1
- package/dist/{types-DMjr-u_o.d.mts → types-TV9nVfSe.d.mts} +1 -1
- package/dist/types.d.cts +1 -1
- package/dist/types.d.mts +1 -1
- package/dist/types2.d.cts +2 -2
- package/dist/types2.d.mts +2 -2
- package/dist/types3.d.cts +2 -0
- package/dist/types3.d.mts +2 -0
- package/dist/types4.d.cts +2 -0
- package/dist/types4.d.mts +2 -0
- package/dist/use-rules-popover-selection.d.mts +19 -0
- package/dist/useColumnWidthLock.d.mts +2 -2
- package/dist/useComboboxFooterAction.d.mts +47 -0
- package/dist/useDelayedInlineEditError.d.mts +12 -0
- package/dist/useFilterStateV2-DCQghouq.d.mts +93 -0
- package/dist/useFilterStateV2-DbPwX5N1.d.cts +93 -0
- package/dist/useFilterStateV2.d.cts +2 -0
- package/dist/useFilterStateV2.d.mts +2 -0
- package/dist/{useFormField-DLGEZ1kD.d.cts → useFormField--Q8ZdpW5.d.cts} +2 -2
- package/dist/{useFormField-BpYf3CAW.cjs → useFormField-BZlArnsI.cjs} +2 -2
- package/dist/{useFormField-BpYf3CAW.cjs.map → useFormField-BZlArnsI.cjs.map} +1 -1
- package/dist/{useFormField-CVmt-ti2.d.mts → useFormField-D8mLsiQc.d.mts} +2 -2
- package/dist/{useFormField-D0RTrPld.mjs → useFormField-DhYd6bNn.mjs} +2 -2
- package/dist/{useFormField-D0RTrPld.mjs.map → useFormField-DhYd6bNn.mjs.map} +1 -1
- package/dist/useFormField.d.cts +1 -1
- package/dist/useFormField.d.mts +1 -1
- package/dist/{useFormGroup-DQJdKaL9.cjs → useFormGroup-Bmnzgq0S.cjs} +1 -1
- package/dist/{useFormGroup-DQJdKaL9.cjs.map → useFormGroup-Bmnzgq0S.cjs.map} +1 -1
- package/dist/{useFormGroup-z0epBxXn.mjs → useFormGroup-DWVW7A9f.mjs} +1 -1
- package/dist/{useFormGroup-z0epBxXn.mjs.map → useFormGroup-DWVW7A9f.mjs.map} +1 -1
- package/dist/{useTableBoxDragAndDrop-DXqy_AMP.d.mts → useTableBoxDragAndDrop-BMo-iaUF.d.mts} +1 -1
- package/dist/{useTableBoxDragAndDrop-hrESBhKb.d.cts → useTableBoxDragAndDrop-DnbUToce.d.cts} +1 -1
- package/dist/useTableBoxDragAndDrop.d.cts +1 -1
- package/dist/useTableBoxDragAndDrop.d.mts +1 -1
- package/dist/{useToggle-3k3EkV8V.mjs → useToggle-Bo3yd14Y.mjs} +1 -1
- package/dist/{useToggle-3k3EkV8V.mjs.map → useToggle-Bo3yd14Y.mjs.map} +1 -1
- package/dist/{useToggle-CSkZWXtQ.cjs → useToggle-DARO917w.cjs} +1 -1
- package/dist/{useToggle-CSkZWXtQ.cjs.map → useToggle-DARO917w.cjs.map} +1 -1
- package/dist/useTruncation.d.mts +1 -1
- package/dist/{utilities-C8Jf-xpi.d.cts → utilities-BO_95qFA.d.mts} +1 -1
- package/dist/{utilities-DT-Hh45R.d.mts → utilities-mSlaTrjB.d.cts} +1 -1
- package/dist/utilities.d.cts +1 -1
- package/dist/utilities.d.mts +1 -1
- package/dist/utils/storybook.cjs +1 -1
- package/dist/utils/storybook.mjs +1 -1
- package/dist/utils/testing.cjs +1 -1
- package/dist/utils/testing.d.mts +1 -1
- package/dist/utils/testing.mjs +1 -1
- package/dist/utils.d.mts +22 -5
- package/dist/utils2.d.mts +9 -0
- package/dist/validation-CJymv6JE.d.cts +51 -0
- package/dist/validation-vLh3t2dk.d.mts +51 -0
- package/dist/validation.d.cts +2 -0
- package/dist/validation.d.mts +2 -0
- package/dist/value-control-resolver-B9p25q3G.d.cts +46 -0
- package/dist/value-control-resolver-CE-bqdAl.d.mts +46 -0
- package/dist/value-control-resolver.d.cts +2 -0
- package/dist/value-control-resolver.d.mts +2 -0
- package/dist/variables/spacing.cjs +1 -1
- package/dist/variables/spacing.cjs.map +1 -1
- package/dist/variables/spacing.d.cts +1 -1
- package/dist/variables/spacing.d.mts +1 -1
- package/dist/variables/spacing.mjs +1 -1
- package/dist/variables/spacing.mjs.map +1 -1
- package/package.json +22 -4
- package/dist/Combobox-I44W5oX0.mjs.map +0 -1
- package/dist/Combobox-R3_NDBi3.cjs.map +0 -1
- package/dist/HoverCopyableField-DBkYvwii.mjs.map +0 -1
- package/dist/HoverCopyableField-DyW2iZuo.cjs.map +0 -1
- package/dist/ListBox-B4uoo_PT.cjs.map +0 -1
- package/dist/ListBox-B7sbubm5.mjs.map +0 -1
- package/dist/Pagination-DEZFb552.cjs.map +0 -1
- package/dist/Pagination-F8ofIWnG.mjs.map +0 -1
- package/dist/SegmentedControl-DTkFgjac.cjs.map +0 -1
- package/dist/SegmentedControl-pRkMcMXe.mjs.map +0 -1
- package/dist/Select-CowngLd7.cjs.map +0 -1
- package/dist/Select-Fg2z5J-p.mjs.map +0 -1
- package/dist/TabBar-CAv10XAF.mjs.map +0 -1
- package/dist/TabBar-D8WCGYd5.cjs.map +0 -1
- package/dist/TableBox-CPCWzwSl.mjs.map +0 -1
- package/dist/TableBox-D_B9atn2.cjs.map +0 -1
- package/dist/TableControls-B2ZsNlr6.mjs +0 -1029
- package/dist/TableControls-B2ZsNlr6.mjs.map +0 -1
- package/dist/TableControls-B7QEAzru.cjs +0 -1080
- package/dist/TableControls-B7QEAzru.cjs.map +0 -1
- package/dist/components/CardV2/index.cjs.map +0 -1
- package/dist/components/CardV2/index.mjs.map +0 -1
- package/dist/components/DatePicker/index.cjs.map +0 -1
- package/dist/components/DatePicker/index.mjs.map +0 -1
- package/dist/components/FormField/index.cjs.map +0 -1
- package/dist/components/FormField/index.mjs.map +0 -1
- package/dist/components/PageHeader/index.cjs.map +0 -1
- package/dist/components/PageHeader/index.mjs.map +0 -1
- /package/dist/{index-1-AkepUA.d.mts → index--p6oQT9I.d.mts} +0 -0
- /package/dist/{index-8SLBz2NH.d.mts → index-BL32-cvv.d.cts} +0 -0
- /package/dist/{index-BSVhZrWN.d.mts → index-BR1oNnaF.d.cts} +0 -0
- /package/dist/{index-C4zERU4O.d.cts → index-BXpMZvwA.d.cts} +0 -0
- /package/dist/{index-C6yvNuzO.d.cts → index-BYd3Btr1.d.mts} +0 -0
- /package/dist/{index-CIABef8t.d.mts → index-BhY1qu3m.d.cts} +0 -0
- /package/dist/{index-CP2eJYlK.d.mts → index-C0NRIDsj2.d.cts} +0 -0
- /package/dist/{index-CTBW75wG2.d.cts → index-C1ihAKnV.d.cts} +0 -0
- /package/dist/{index-CiBIKhMu.d.cts → index-CDGG7lCB.d.mts} +0 -0
- /package/dist/{index-Cii4Qb1X.d.mts → index-CFG0_wK4.d.cts} +0 -0
- /package/dist/{index-CspKFJM1.d.cts → index-CKKoxA9V.d.mts} +0 -0
- /package/dist/{index-CswGToRr2.d.mts → index-CNxS4Tlu.d.mts} +0 -0
- /package/dist/{index-D4ELpJXS.d.cts → index-CQ25UCod.d.cts} +0 -0
- /package/dist/{index-D8dPsry7.d.mts → index-CWB6exYm.d.mts} +0 -0
- /package/dist/{index-D9XihFV1.d.mts → index-Cv0jeUQf2.d.cts} +0 -0
- /package/dist/{index-DBQaKYAL2.d.cts → index-CwSIy_W-.d.cts} +0 -0
- /package/dist/{index-DLoAMD9J.d.cts → index-CzItj62a.d.mts} +0 -0
- /package/dist/{index-DZlqSwCF.d.mts → index-D-BciAtf.d.cts} +0 -0
- /package/dist/{index-Dflz2i1X.d.mts → index-D4DUvwPf.d.mts} +0 -0
- /package/dist/{index-Dpmi5zcN.d.cts → index-D5tSVhTd.d.mts} +0 -0
- /package/dist/{index-DwBYcw1r.d.cts → index-D9IqtUDs.d.cts} +0 -0
- /package/dist/{index-LhFpnU-f.d.mts → index-DGsJdI5l.d.mts} +0 -0
- /package/dist/{index-N-OgGgfF.d.mts → index-DM6vVDZD.d.mts} +0 -0
- /package/dist/{index-VmEFGBxN.d.cts → index-DXJd7-2Z.d.mts} +0 -0
- /package/dist/{index-_1bfRgi2.d.cts → index-DkrC-i1D.d.mts} +0 -0
- /package/dist/{index-c55Utzva.d.mts → index-DpEKQcoR.d.cts} +0 -0
- /package/dist/{index-gpCH5158.d.mts → index-DvuJXuAN.d.mts} +0 -0
- /package/dist/{index-kDNN3kX_2.d.mts → index-Iujpc9_6.d.mts} +0 -0
- /package/dist/{index-luywJTzJ.d.mts → index-Oio5ygqN.d.mts} +0 -0
- /package/dist/{index-qCd8f7Um.d.cts → index-_wQ5ClJU.d.cts} +0 -0
- /package/dist/{index-uTS5iDq_.d.cts → index-lIMqGGJz.d.mts} +0 -0
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import { a as MenuDivider, c as MenuList, i as Menu, n as IconContainer, o as MenuHeading, r as ListItem, s as MenuItem, t as FloatingCard } from "../../Menu-
|
|
1
|
+
import { a as MenuDivider, c as MenuList, i as Menu, n as IconContainer, o as MenuHeading, r as ListItem, s as MenuItem, t as FloatingCard } from "../../Menu-CPYXo61N.mjs";
|
|
2
2
|
export { FloatingCard, IconContainer, ListItem, Menu, Menu as default, MenuDivider, MenuHeading, MenuItem, MenuList };
|
|
@@ -3,17 +3,17 @@ Object.defineProperties(exports, {
|
|
|
3
3
|
[Symbol.toStringTag]: { value: "Module" }
|
|
4
4
|
});
|
|
5
5
|
const require_chunk = require("../../chunk-CKQMccvm.cjs");
|
|
6
|
-
const
|
|
7
|
-
const
|
|
8
|
-
const
|
|
9
|
-
const require_IconButton = require("../../IconButton-
|
|
10
|
-
const require_TabBar = require("../../TabBar-
|
|
6
|
+
const require_Stack = require("../../Stack-UeifHn3c.cjs");
|
|
7
|
+
const require_Card = require("../../Card-Csz-PxX0.cjs");
|
|
8
|
+
const require_Text = require("../../Text-G9QmYf0P.cjs");
|
|
9
|
+
const require_IconButton = require("../../IconButton-nlgjJQCS.cjs");
|
|
10
|
+
const require_TabBar = require("../../TabBar-PFaDNRw0.cjs");
|
|
11
11
|
let _persona_design_tokens = require("@persona/design-tokens");
|
|
12
12
|
let styled_components = require("styled-components");
|
|
13
13
|
styled_components = require_chunk.__toESM(styled_components);
|
|
14
|
-
let react = require("react");
|
|
15
|
-
let react_aria_components = require("react-aria-components");
|
|
16
14
|
let react_jsx_runtime = require("react/jsx-runtime");
|
|
15
|
+
let react_aria_components = require("react-aria-components");
|
|
16
|
+
let react = require("react");
|
|
17
17
|
let _persona_icons = require("@persona/icons");
|
|
18
18
|
//#region lib/useModalInsetRight.ts
|
|
19
19
|
const CSS_VAR = "--modal-inset-right";
|
|
@@ -203,8 +203,11 @@ const StyledModalCardBody = (0, styled_components.default)(require_Card.Card_def
|
|
|
203
203
|
/**
|
|
204
204
|
* Card to be used in Modal contexts. Inherits props from react-aria-components Dialog.
|
|
205
205
|
*/
|
|
206
|
-
const ModalCard = (0, react.forwardRef)(function ModalCard({ title, children, showCloseButton = true, size, footer, tabs, noBodyPadding = false, ...props }, ref) {
|
|
206
|
+
const ModalCard = (0, react.forwardRef)(function ModalCard({ title, children, showCloseButton = true, size, footer, tabs, noBodyPadding = false, portalContainer, ...props }, ref) {
|
|
207
207
|
const [selectedTabIdx, setSelectedTabIdx] = (0, react.useState)(0);
|
|
208
|
+
(0, react.useEffect)(() => {
|
|
209
|
+
setSelectedTabIdx(0);
|
|
210
|
+
}, [tabs?.length ?? 0]);
|
|
208
211
|
const titleAndClose = /* @__PURE__ */ (0, react_jsx_runtime.jsxs)(ModalHeader, {
|
|
209
212
|
justify: "flex-start",
|
|
210
213
|
align: "center",
|
|
@@ -233,7 +236,7 @@ const ModalCard = (0, react.forwardRef)(function ModalCard({ title, children, sh
|
|
|
233
236
|
role: tabs ? "tabpanel" : void 0,
|
|
234
237
|
id: `pds-modal_tab-panel-${tab.name}`,
|
|
235
238
|
"aria-labelledby": `pds-modal_tab-${tab.name}`,
|
|
236
|
-
children: tab.contents
|
|
239
|
+
children: typeof tab.contents === "function" ? tab.contents({ portalContainer }) : tab.contents
|
|
237
240
|
}, tab.name)) : /* @__PURE__ */ (0, react_jsx_runtime.jsx)(StyledModalCardBody, {
|
|
238
241
|
$noPadding: noBodyPadding,
|
|
239
242
|
role: tabs ? "tabpanel" : void 0,
|
|
@@ -257,6 +260,7 @@ const Modal = ({ children, trigger, contentProps, noBodyPadding = false, size =
|
|
|
257
260
|
tabs,
|
|
258
261
|
noBodyPadding,
|
|
259
262
|
...contentProps,
|
|
263
|
+
portalContainer,
|
|
260
264
|
children: typeof children === "function" ? children({ portalContainer }) : children
|
|
261
265
|
});
|
|
262
266
|
return /* @__PURE__ */ (0, react_jsx_runtime.jsxs)(react_aria_components.DialogTrigger, {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.cjs","names":["ModalOverlay","AriaModal","Button","Spacing","HStack","Color","DialogTrigger","AriaButton","XIcon","Heading","AriaHeading","TabBar","Dialog","Card","Stack","Tab","Pressable"],"sources":["../../../lib/useModalInsetRight.ts","../../../components/Modal/Modal.tsx"],"sourcesContent":["import { useEffect, useRef, useState } from 'react';\n\nconst CSS_VAR = '--modal-inset-right';\n\n// Match AgentsPanel sidebar transition durations\nexport const SIDEBAR_OPEN_TRANSITION_MS = 425;\nexport const SIDEBAR_CLOSE_TRANSITION_MS = 200;\n\nconst getModalInsetRight = () =>\n getComputedStyle(document.documentElement).getPropertyValue(CSS_VAR).trim() || '0px';\n\nconst prefersReducedMotion = () =>\n typeof window !== 'undefined' && window.matchMedia('(prefers-reduced-motion: reduce)').matches;\n\nexport type PanelInsetState = 'closed' | 'opening' | 'open' | 'closing';\n\nexport interface ModalInsetRight {\n /** Animated inset value — starts at 0px on panel open so CSS transition fires */\n insetRight: string;\n panelState: PanelInsetState;\n}\n\n/**\n * Returns the current value of --modal-inset-right from :root, reactively updating\n * as the agents side panel animates open/closed or is resized. Also tracks whether\n * the panel is opening, open, closing, or closed.\n *\n * panelState stays 'opening'/'closing' for the full transition duration so that\n * CSS transitions on consumers have time to animate.\n */\nconst useModalInsetRight = (): ModalInsetRight => {\n const [insetRight, setInsetRight] = useState(getModalInsetRight);\n const [panelState, setPanelState] = useState<PanelInsetState>(() =>\n getModalInsetRight() !== '0px' ? 'open' : 'closed',\n );\n const prevInsetRight = useRef(getModalInsetRight());\n const transitionTimerRef = useRef<ReturnType<typeof setTimeout> | null>(null);\n const rafRef = useRef<number | null>(null);\n\n useEffect(() => {\n const observer = new MutationObserver(() => {\n const prev = prevInsetRight.current;\n const next = getModalInsetRight();\n prevInsetRight.current = next;\n\n if (prev === '0px' && next !== '0px') {\n if (prefersReducedMotion()) {\n setInsetRight(next);\n setPanelState('open');\n } else {\n if (rafRef.current) {\n cancelAnimationFrame(rafRef.current);\n }\n if (transitionTimerRef.current) {\n clearTimeout(transitionTimerRef.current);\n }\n setInsetRight('0px');\n setPanelState('opening');\n rafRef.current = requestAnimationFrame(() => setInsetRight(next));\n transitionTimerRef.current = setTimeout(\n () => setPanelState('open'),\n SIDEBAR_OPEN_TRANSITION_MS,\n );\n }\n } else if (prev !== '0px' && next === '0px') {\n if (prefersReducedMotion()) {\n setInsetRight('0px');\n setPanelState('closed');\n } else {\n if (rafRef.current) {\n cancelAnimationFrame(rafRef.current);\n }\n if (transitionTimerRef.current) {\n clearTimeout(transitionTimerRef.current);\n }\n setInsetRight(prev);\n setPanelState('closing');\n rafRef.current = requestAnimationFrame(() => setInsetRight('0px'));\n transitionTimerRef.current = setTimeout(\n () => setPanelState('closed'),\n SIDEBAR_CLOSE_TRANSITION_MS,\n );\n }\n } else {\n setInsetRight(next);\n }\n });\n\n observer.observe(document.documentElement, {\n attributes: true,\n attributeFilter: ['style'],\n });\n\n return () => {\n observer.disconnect();\n if (transitionTimerRef.current) {\n clearTimeout(transitionTimerRef.current);\n }\n if (rafRef.current) {\n cancelAnimationFrame(rafRef.current);\n }\n };\n }, []);\n\n return { insetRight, panelState };\n};\n\nexport default useModalInsetRight;\n","import type { ComponentProps, ComponentPropsWithoutRef } from 'react';\nimport { forwardRef, type ReactNode, useState } from 'react';\nimport {\n Button as AriaButton,\n Dialog,\n DialogTrigger,\n Heading as AriaHeading,\n Modal as AriaModal,\n ModalOverlay,\n Pressable,\n} from 'react-aria-components';\nimport styled from 'styled-components';\n\nimport Button, { type ButtonProps } from '@persona/design-system/components/Button';\nimport Card from '@persona/design-system/components/Card';\nimport Stack, { HStack } from '@persona/design-system/components/Stack';\nimport TabBar, { Tab } from '@persona/design-system/components/TabBar';\nimport { Heading } from '@persona/design-system/components/Text';\nimport { Color, Spacing } from '@persona/design-tokens';\nimport { XIcon } from '@persona/icons';\nimport useModalInsetRight, {\n SIDEBAR_CLOSE_TRANSITION_MS,\n SIDEBAR_OPEN_TRANSITION_MS,\n} from 'design-system/lib/useModalInsetRight';\n\nconst StyledModalOverlay = styled(ModalOverlay)<{ $insetRight: string; $transitionMs: number }>`\n @keyframes overlayShow {\n from {\n opacity: 0;\n }\n to {\n opacity: 1;\n }\n }\n background-color: rgba(0, 0, 0, 0.5);\n position: fixed;\n top: 0;\n bottom: 0;\n left: 0;\n right: ${({ $insetRight }) => $insetRight};\n transition: right ${({ $transitionMs }) => $transitionMs}ms ease-out;\n animation: overlayShow 150ms cubic-bezier(0.16, 1, 0.3, 1);\n z-index: 10000;\n display: flex;\n align-items: center;\n justify-content: center;\n`;\n\nconst StyledModal = styled(AriaModal)`\n z-index: 10001;\n outline: none;\n width: 100%;\n`;\n\nconst ModalCloseButton = styled(Button)`\n display: inline-flex;\n padding: ${Spacing[2]};\n border-radius: ${Spacing[1]};\n width: fit-content;\n min-width: unset;\n`;\n\nconst ModalFooter = styled(HStack).attrs({\n justify: 'flex-end',\n align: 'center',\n spacing: Spacing[2],\n})`\n padding: ${Spacing[3]} ${Spacing[4]};\n border-top: 1px solid ${Color.BorderDivider};\n`;\n\nconst ModalHeaderTitle = styled.div`\n flex: 1;\n`;\n\nexport const ModalTrigger = DialogTrigger;\nexport const ModalContent = StyledModal;\n\nexport const ModalClose = (props: ButtonProps) => {\n return (\n <AriaButton slot='close' style={{ all: 'unset', display: 'contents' }}>\n <ModalCloseButton variant='text' width='icon' size='md' {...props}>\n <XIcon />\n </ModalCloseButton>\n </AriaButton>\n );\n};\n\nexport interface ModalTitleProps {\n children: ReactNode;\n className?: string;\n}\n\nconst ModalTitle = ({ children, ...props }: ModalTitleProps) => {\n return (\n <Heading size='sm' color='primary' as={AriaHeading} slot='title' {...props}>\n {children}\n </Heading>\n );\n};\n\nconst ModalHeader = styled(HStack)<{ $hasTabs: boolean }>`\n border-bottom: ${({ $hasTabs }) => ($hasTabs ? 'none' : `1px solid ${Color.BorderDivider}`)};\n padding: ${({ $hasTabs }) =>\n $hasTabs\n ? `${Spacing[3]} ${Spacing[2]} ${Spacing[1]} ${Spacing[4]}`\n : `${Spacing[3]} ${Spacing[2]} ${Spacing[3]} ${Spacing[4]}`};\n`;\n\nconst ModalTabBar = styled(TabBar)`\n padding-left: ${Spacing[4]};\n`;\n\nconst StyledDialog = styled(Dialog)`\n outline: none;\n`;\n\nconst StyledCard = styled(Card)<{ $size?: 'auto' | 'md' | 'lg' | 'xl' | 'full' }>`\n position: relative;\n left: 50%;\n transform: translateX(-50%);\n width: ${({ $size }) => {\n switch ($size) {\n case 'auto':\n return 'auto';\n case 'full':\n return 'calc(100% - 160px)';\n default:\n return '90vw';\n }\n }};\n max-width: ${({ theme, $size }) => {\n switch ($size) {\n case 'auto':\n return 'auto';\n case 'full':\n return 'calc(100% - 160px)';\n default:\n return theme.modal.width[$size];\n }\n }};\n /* TODO: Use breakpoints to make this responsive */\n max-height: ${({ $size }) => ($size === 'full' ? 'calc(100vh - 160px)' : '85vh')};\n display: flex;\n flex-direction: column;\n overflow: hidden;\n ${({ $size }) =>\n $size === 'full' &&\n `\n height: calc(100vh - 160px);\n `}\n margin-bottom: 0;\n`;\n\ninterface ModalCardProps extends ComponentPropsWithoutRef<typeof Dialog> {\n /**\n * Display X button to close popover\n */\n showCloseButton?: boolean;\n\n /**\n * Max width of the modal\n */\n size?: 'auto' | 'md' | 'lg' | 'xl' | 'full';\n\n /**\n * Footer content\n */\n footer?: ReactNode;\n\n /**\n * Renders tabs within the modal.\n * Adds a tab bar and will render the contents of the selected tab in a tabpanel.\n * Overrides `children`.\n */\n tabs?: TabView[];\n\n /**\n * Title of the modal\n */\n title?: ReactNode;\n\n /**\n * Children content\n */\n children?: ReactNode;\n\n /**\n * When true, removes horizontal and vertical padding from the body. Defaults to false.\n */\n noBodyPadding?: boolean;\n\n /**\n * Additional props for the Dialog element\n */\n className?: string;\n}\n\nconst StyledModalCardBody = styled(Card.Body)<{\n $noPadding?: boolean;\n $hidden?: boolean;\n}>`\n overflow-y: auto;\n flex: 1;\n min-height: 0;\n ${({ $noPadding }) =>\n $noPadding\n ? 'padding: 0;'\n : `\n padding-left: ${Spacing[4]};\n padding-right: ${Spacing[4]};\n `}\n ${({ $hidden }) => $hidden && 'display: none;'}\n`;\n\n/**\n * Card to be used in Modal contexts. Inherits props from react-aria-components Dialog.\n */\nconst ModalCard = forwardRef<HTMLDivElement, ModalCardProps>(function ModalCard(\n { title, children, showCloseButton = true, size, footer, tabs, noBodyPadding = false, ...props },\n ref,\n) {\n const [selectedTabIdx, setSelectedTabIdx] = useState(0);\n\n const titleAndClose = (\n <ModalHeader justify='flex-start' align='center' spacing={Spacing[2]} $hasTabs={Boolean(tabs)}>\n <ModalHeaderTitle>{title ? <ModalTitle>{title}</ModalTitle> : null}</ModalHeaderTitle>\n {showCloseButton && <ModalClose aria-label='Close' />}\n </ModalHeader>\n );\n\n const modalHeader = tabs ? (\n <Stack>\n {titleAndClose}\n <ModalTabBar>\n {tabs.map((tab, idx) => (\n <Tab\n key={tab.name}\n selected={selectedTabIdx === idx}\n id={`pds-modal_tab-${idx}`}\n onClick={() => setSelectedTabIdx(idx)}\n aria-controls={`pds-modal_tab-panel-${idx}`}\n >\n {tab.name}\n </Tab>\n ))}\n </ModalTabBar>\n </Stack>\n ) : (\n titleAndClose\n );\n\n return (\n <StyledDialog {...props} ref={ref}>\n <StyledCard elevated $size={size}>\n {(showCloseButton || title) && modalHeader}\n {tabs ? (\n tabs.map((tab, idx) => (\n <StyledModalCardBody\n key={tab.name}\n $noPadding={noBodyPadding}\n $hidden={selectedTabIdx !== idx}\n role={tabs ? 'tabpanel' : undefined}\n id={`pds-modal_tab-panel-${tab.name}`}\n aria-labelledby={`pds-modal_tab-${tab.name}`}\n >\n {tab.contents}\n </StyledModalCardBody>\n ))\n ) : (\n <StyledModalCardBody\n $noPadding={noBodyPadding}\n role={tabs ? 'tabpanel' : undefined}\n id={`pds-modal_tab-panel-${selectedTabIdx}`}\n aria-labelledby={`pds-modal_tab-${selectedTabIdx}`}\n >\n {children}\n </StyledModalCardBody>\n )}\n\n {footer && <ModalFooter>{footer}</ModalFooter>}\n </StyledCard>\n </StyledDialog>\n );\n});\n\ninterface TabView {\n name: string;\n contents: JSX.Element;\n badge?: React.ReactElement;\n disabled?: boolean;\n 'data-tour-target'?: string;\n}\n\nexport interface ModalProps {\n /**\n * Title of the Card\n */\n title?: string;\n\n /**\n * Component to use as trigger. React Aria trigger props will be merged with this element.\n */\n trigger?: ComponentProps<typeof Pressable>['children'];\n\n /**\n * Props to apply to Modal.Card within\n */\n contentProps?: ModalCardProps;\n\n /**\n * Max width of the modal\n */\n size?: 'auto' | 'md' | 'lg' | 'xl' | 'full';\n\n /**\n * Footer section intended for actions.\n * You can pass in Buttons directly and they will render in a HStack.\n */\n footer?: ReactNode;\n\n /**\n * Renders tabs within the modal.\n * Adds a tab bar and will render the contents of the selected tab in a tabpanel.\n * Overrides `children`.\n */\n tabs?: TabView[];\n\n /**\n * Children content\n */\n children?: ReactNode | ((props: { portalContainer: HTMLDivElement | null }) => ReactNode);\n\n /**\n * When true, removes horizontal and vertical padding from the body. Defaults to false.\n * Can also be set via contentProps.noBodyPadding.\n */\n noBodyPadding?: boolean;\n\n /**\n * Controls whether the modal is open (controlled)\n */\n open?: boolean;\n\n /**\n * Default open state (uncontrolled)\n */\n defaultOpen?: boolean;\n\n /**\n * Handler called when open state changes\n */\n onOpenChange?: (isOpen: boolean) => void;\n\n /**\n * Whether the modal can be dismissed by clicking outside or pressing escape\n */\n isDismissable?: boolean;\n\n /**\n * Whether pressing the escape key closes the modal\n */\n isKeyboardDismissDisabled?: boolean;\n}\n\nconst Modal = ({\n children,\n trigger,\n contentProps,\n noBodyPadding = false,\n size = 'md',\n title,\n footer,\n tabs,\n defaultOpen,\n onOpenChange,\n isDismissable = false,\n isKeyboardDismissDisabled = false,\n open,\n}: ModalProps) => {\n const [portalContainer, setPortalContainer] = useState<HTMLDivElement | null>(null);\n const { insetRight: modalInsetRight, panelState } = useModalInsetRight();\n const transitionMs =\n panelState === 'opening'\n ? SIDEBAR_OPEN_TRANSITION_MS\n : panelState === 'closing'\n ? SIDEBAR_CLOSE_TRANSITION_MS\n : 0;\n\n const content = (\n <ModalCard\n size={size}\n title={title}\n footer={footer}\n tabs={tabs}\n noBodyPadding={noBodyPadding}\n {...contentProps}\n >\n {typeof children === 'function' ? children({ portalContainer }) : children}\n </ModalCard>\n );\n\n // Wrap trigger element to ensure it works with react-aria-components\n const wrappedTrigger = trigger ? <Pressable>{trigger}</Pressable> : null;\n\n return (\n <DialogTrigger isOpen={open} defaultOpen={defaultOpen} onOpenChange={onOpenChange}>\n {wrappedTrigger}\n <StyledModalOverlay\n $insetRight={modalInsetRight}\n $transitionMs={transitionMs}\n isDismissable={isDismissable}\n isKeyboardDismissDisabled={isKeyboardDismissDisabled}\n shouldCloseOnInteractOutside={(element) => !element.closest('[data-react-aria-top-layer]')}\n >\n <StyledModal ref={setPortalContainer}>{content}</StyledModal>\n </StyledModalOverlay>\n </DialogTrigger>\n );\n};\n\nexport default Object.assign(Modal, {\n Title: ModalTitle,\n});\n"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"index.cjs","names":["ModalOverlay","AriaModal","Button","Spacing","HStack","Color","DialogTrigger","AriaButton","XIcon","Heading","AriaHeading","TabBar","Dialog","Card","Stack","Tab","Pressable"],"sources":["../../../lib/useModalInsetRight.ts","../../../components/Modal/Modal.tsx"],"sourcesContent":["import { useEffect, useRef, useState } from 'react';\n\nconst CSS_VAR = '--modal-inset-right';\n\n// Match AgentsPanel sidebar transition durations\nexport const SIDEBAR_OPEN_TRANSITION_MS = 425;\nexport const SIDEBAR_CLOSE_TRANSITION_MS = 200;\n\nconst getModalInsetRight = () =>\n getComputedStyle(document.documentElement).getPropertyValue(CSS_VAR).trim() || '0px';\n\nconst prefersReducedMotion = () =>\n typeof window !== 'undefined' && window.matchMedia('(prefers-reduced-motion: reduce)').matches;\n\nexport type PanelInsetState = 'closed' | 'opening' | 'open' | 'closing';\n\nexport interface ModalInsetRight {\n /** Animated inset value — starts at 0px on panel open so CSS transition fires */\n insetRight: string;\n panelState: PanelInsetState;\n}\n\n/**\n * Returns the current value of --modal-inset-right from :root, reactively updating\n * as the agents side panel animates open/closed or is resized. Also tracks whether\n * the panel is opening, open, closing, or closed.\n *\n * panelState stays 'opening'/'closing' for the full transition duration so that\n * CSS transitions on consumers have time to animate.\n */\nconst useModalInsetRight = (): ModalInsetRight => {\n const [insetRight, setInsetRight] = useState(getModalInsetRight);\n const [panelState, setPanelState] = useState<PanelInsetState>(() =>\n getModalInsetRight() !== '0px' ? 'open' : 'closed',\n );\n const prevInsetRight = useRef(getModalInsetRight());\n const transitionTimerRef = useRef<ReturnType<typeof setTimeout> | null>(null);\n const rafRef = useRef<number | null>(null);\n\n useEffect(() => {\n const observer = new MutationObserver(() => {\n const prev = prevInsetRight.current;\n const next = getModalInsetRight();\n prevInsetRight.current = next;\n\n if (prev === '0px' && next !== '0px') {\n if (prefersReducedMotion()) {\n setInsetRight(next);\n setPanelState('open');\n } else {\n if (rafRef.current) {\n cancelAnimationFrame(rafRef.current);\n }\n if (transitionTimerRef.current) {\n clearTimeout(transitionTimerRef.current);\n }\n setInsetRight('0px');\n setPanelState('opening');\n rafRef.current = requestAnimationFrame(() => setInsetRight(next));\n transitionTimerRef.current = setTimeout(\n () => setPanelState('open'),\n SIDEBAR_OPEN_TRANSITION_MS,\n );\n }\n } else if (prev !== '0px' && next === '0px') {\n if (prefersReducedMotion()) {\n setInsetRight('0px');\n setPanelState('closed');\n } else {\n if (rafRef.current) {\n cancelAnimationFrame(rafRef.current);\n }\n if (transitionTimerRef.current) {\n clearTimeout(transitionTimerRef.current);\n }\n setInsetRight(prev);\n setPanelState('closing');\n rafRef.current = requestAnimationFrame(() => setInsetRight('0px'));\n transitionTimerRef.current = setTimeout(\n () => setPanelState('closed'),\n SIDEBAR_CLOSE_TRANSITION_MS,\n );\n }\n } else {\n setInsetRight(next);\n }\n });\n\n observer.observe(document.documentElement, {\n attributes: true,\n attributeFilter: ['style'],\n });\n\n return () => {\n observer.disconnect();\n if (transitionTimerRef.current) {\n clearTimeout(transitionTimerRef.current);\n }\n if (rafRef.current) {\n cancelAnimationFrame(rafRef.current);\n }\n };\n }, []);\n\n return { insetRight, panelState };\n};\n\nexport default useModalInsetRight;\n","import type { ComponentProps, ComponentPropsWithoutRef } from 'react';\nimport { forwardRef, type ReactNode, useEffect, useState } from 'react';\nimport {\n Button as AriaButton,\n Dialog,\n DialogTrigger,\n Heading as AriaHeading,\n Modal as AriaModal,\n ModalOverlay,\n Pressable,\n} from 'react-aria-components';\nimport styled from 'styled-components';\n\nimport Button, { type ButtonProps } from '@persona/design-system/components/Button';\nimport Card from '@persona/design-system/components/Card';\nimport Stack, { HStack } from '@persona/design-system/components/Stack';\nimport TabBar, { Tab } from '@persona/design-system/components/TabBar';\nimport { Heading } from '@persona/design-system/components/Text';\nimport { Color, Spacing } from '@persona/design-tokens';\nimport { XIcon } from '@persona/icons';\nimport useModalInsetRight, {\n SIDEBAR_CLOSE_TRANSITION_MS,\n SIDEBAR_OPEN_TRANSITION_MS,\n} from 'design-system/lib/useModalInsetRight';\n\nconst StyledModalOverlay = styled(ModalOverlay)<{ $insetRight: string; $transitionMs: number }>`\n @keyframes overlayShow {\n from {\n opacity: 0;\n }\n to {\n opacity: 1;\n }\n }\n background-color: rgba(0, 0, 0, 0.5);\n position: fixed;\n top: 0;\n bottom: 0;\n left: 0;\n right: ${({ $insetRight }) => $insetRight};\n transition: right ${({ $transitionMs }) => $transitionMs}ms ease-out;\n animation: overlayShow 150ms cubic-bezier(0.16, 1, 0.3, 1);\n z-index: 10000;\n display: flex;\n align-items: center;\n justify-content: center;\n`;\n\nconst StyledModal = styled(AriaModal)`\n z-index: 10001;\n outline: none;\n width: 100%;\n`;\n\nconst ModalCloseButton = styled(Button)`\n display: inline-flex;\n padding: ${Spacing[2]};\n border-radius: ${Spacing[1]};\n width: fit-content;\n min-width: unset;\n`;\n\nconst ModalFooter = styled(HStack).attrs({\n justify: 'flex-end',\n align: 'center',\n spacing: Spacing[2],\n})`\n padding: ${Spacing[3]} ${Spacing[4]};\n border-top: 1px solid ${Color.BorderDivider};\n`;\n\nconst ModalHeaderTitle = styled.div`\n flex: 1;\n`;\n\nexport const ModalTrigger = DialogTrigger;\nexport const ModalContent = StyledModal;\n\nexport const ModalClose = (props: ButtonProps) => {\n return (\n <AriaButton slot='close' style={{ all: 'unset', display: 'contents' }}>\n <ModalCloseButton variant='text' width='icon' size='md' {...props}>\n <XIcon />\n </ModalCloseButton>\n </AriaButton>\n );\n};\n\nexport interface ModalTitleProps {\n children: ReactNode;\n className?: string;\n}\n\n/** Props passed to modal content render functions. */\nexport interface ModalRenderProps {\n /** Element that floating content should use as its portal container. */\n portalContainer: HTMLDivElement | null;\n}\n\ntype ModalRenderable = ReactNode | ((props: ModalRenderProps) => ReactNode);\n\nconst ModalTitle = ({ children, ...props }: ModalTitleProps) => {\n return (\n <Heading size='sm' color='primary' as={AriaHeading} slot='title' {...props}>\n {children}\n </Heading>\n );\n};\n\nconst ModalHeader = styled(HStack)<{ $hasTabs: boolean }>`\n border-bottom: ${({ $hasTabs }) => ($hasTabs ? 'none' : `1px solid ${Color.BorderDivider}`)};\n padding: ${({ $hasTabs }) =>\n $hasTabs\n ? `${Spacing[3]} ${Spacing[2]} ${Spacing[1]} ${Spacing[4]}`\n : `${Spacing[3]} ${Spacing[2]} ${Spacing[3]} ${Spacing[4]}`};\n`;\n\nconst ModalTabBar = styled(TabBar)`\n padding-left: ${Spacing[4]};\n`;\n\nconst StyledDialog = styled(Dialog)`\n outline: none;\n`;\n\nconst StyledCard = styled(Card)<{ $size?: 'auto' | 'md' | 'lg' | 'xl' | 'full' }>`\n position: relative;\n left: 50%;\n transform: translateX(-50%);\n width: ${({ $size }) => {\n switch ($size) {\n case 'auto':\n return 'auto';\n case 'full':\n return 'calc(100% - 160px)';\n default:\n return '90vw';\n }\n }};\n max-width: ${({ theme, $size }) => {\n switch ($size) {\n case 'auto':\n return 'auto';\n case 'full':\n return 'calc(100% - 160px)';\n default:\n return theme.modal.width[$size];\n }\n }};\n /* TODO: Use breakpoints to make this responsive */\n max-height: ${({ $size }) => ($size === 'full' ? 'calc(100vh - 160px)' : '85vh')};\n display: flex;\n flex-direction: column;\n overflow: hidden;\n ${({ $size }) =>\n $size === 'full' &&\n `\n height: calc(100vh - 160px);\n `}\n margin-bottom: 0;\n`;\n\ninterface ModalCardProps extends ComponentPropsWithoutRef<typeof Dialog> {\n /**\n * Display X button to close popover\n */\n showCloseButton?: boolean;\n\n /**\n * Max width of the modal\n */\n size?: 'auto' | 'md' | 'lg' | 'xl' | 'full';\n\n /**\n * Footer content\n */\n footer?: ReactNode;\n\n /**\n * Renders tabs within the modal.\n * Adds a tab bar and will render the contents of the selected tab in a tabpanel.\n * Overrides `children`.\n * Tab contents can be render functions that receive the modal portal container.\n */\n tabs?: TabView[];\n\n /**\n * Title of the modal\n */\n title?: ReactNode;\n\n /**\n * Children content\n */\n children?: ReactNode;\n\n /**\n * When true, removes horizontal and vertical padding from the body. Defaults to false.\n */\n noBodyPadding?: boolean;\n\n /**\n * Additional props for the Dialog element\n */\n className?: string;\n}\n\ninterface ModalCardInternalProps extends ModalCardProps {\n portalContainer: HTMLDivElement | null;\n}\n\nconst StyledModalCardBody = styled(Card.Body)<{\n $noPadding?: boolean;\n $hidden?: boolean;\n}>`\n overflow-y: auto;\n flex: 1;\n min-height: 0;\n ${({ $noPadding }) =>\n $noPadding\n ? 'padding: 0;'\n : `\n padding-left: ${Spacing[4]};\n padding-right: ${Spacing[4]};\n `}\n ${({ $hidden }) => $hidden && 'display: none;'}\n`;\n\n/**\n * Card to be used in Modal contexts. Inherits props from react-aria-components Dialog.\n */\nconst ModalCard = forwardRef<HTMLDivElement, ModalCardInternalProps>(function ModalCard(\n {\n title,\n children,\n showCloseButton = true,\n size,\n footer,\n tabs,\n noBodyPadding = false,\n portalContainer,\n ...props\n },\n ref,\n) {\n const [selectedTabIdx, setSelectedTabIdx] = useState(0);\n const tabCount = tabs?.length ?? 0;\n\n useEffect(() => {\n setSelectedTabIdx(0);\n }, [tabCount]);\n\n const titleAndClose = (\n <ModalHeader justify='flex-start' align='center' spacing={Spacing[2]} $hasTabs={Boolean(tabs)}>\n <ModalHeaderTitle>{title ? <ModalTitle>{title}</ModalTitle> : null}</ModalHeaderTitle>\n {showCloseButton && <ModalClose aria-label='Close' />}\n </ModalHeader>\n );\n\n const modalHeader = tabs ? (\n <Stack>\n {titleAndClose}\n <ModalTabBar>\n {tabs.map((tab, idx) => (\n <Tab\n key={tab.name}\n selected={selectedTabIdx === idx}\n id={`pds-modal_tab-${idx}`}\n onClick={() => setSelectedTabIdx(idx)}\n aria-controls={`pds-modal_tab-panel-${idx}`}\n >\n {tab.name}\n </Tab>\n ))}\n </ModalTabBar>\n </Stack>\n ) : (\n titleAndClose\n );\n\n return (\n <StyledDialog {...props} ref={ref}>\n <StyledCard elevated $size={size}>\n {(showCloseButton || title) && modalHeader}\n {tabs ? (\n tabs.map((tab, idx) => (\n <StyledModalCardBody\n key={tab.name}\n $noPadding={noBodyPadding}\n $hidden={selectedTabIdx !== idx}\n role={tabs ? 'tabpanel' : undefined}\n id={`pds-modal_tab-panel-${tab.name}`}\n aria-labelledby={`pds-modal_tab-${tab.name}`}\n >\n {typeof tab.contents === 'function'\n ? tab.contents({ portalContainer })\n : tab.contents}\n </StyledModalCardBody>\n ))\n ) : (\n <StyledModalCardBody\n $noPadding={noBodyPadding}\n role={tabs ? 'tabpanel' : undefined}\n id={`pds-modal_tab-panel-${selectedTabIdx}`}\n aria-labelledby={`pds-modal_tab-${selectedTabIdx}`}\n >\n {children}\n </StyledModalCardBody>\n )}\n\n {footer && <ModalFooter>{footer}</ModalFooter>}\n </StyledCard>\n </StyledDialog>\n );\n});\n\ninterface TabView {\n name: string;\n contents: ModalRenderable;\n badge?: React.ReactElement;\n disabled?: boolean;\n 'data-tour-target'?: string;\n}\n\nexport interface ModalProps {\n /**\n * Title of the Card\n */\n title?: string;\n\n /**\n * Component to use as trigger. React Aria trigger props will be merged with this element.\n */\n trigger?: ComponentProps<typeof Pressable>['children'];\n\n /**\n * Props to apply to Modal.Card within\n */\n contentProps?: ModalCardProps;\n\n /**\n * Max width of the modal\n */\n size?: 'auto' | 'md' | 'lg' | 'xl' | 'full';\n\n /**\n * Footer section intended for actions.\n * You can pass in Buttons directly and they will render in a HStack.\n */\n footer?: ReactNode;\n\n /**\n * Renders tabs within the modal.\n * Adds a tab bar and will render the contents of the selected tab in a tabpanel.\n * Overrides `children`.\n */\n tabs?: TabView[];\n\n /**\n * Children content\n */\n children?: ModalRenderable;\n\n /**\n * When true, removes horizontal and vertical padding from the body. Defaults to false.\n * Can also be set via contentProps.noBodyPadding.\n */\n noBodyPadding?: boolean;\n\n /**\n * Controls whether the modal is open (controlled)\n */\n open?: boolean;\n\n /**\n * Default open state (uncontrolled)\n */\n defaultOpen?: boolean;\n\n /**\n * Handler called when open state changes\n */\n onOpenChange?: (isOpen: boolean) => void;\n\n /**\n * Whether the modal can be dismissed by clicking outside or pressing escape\n */\n isDismissable?: boolean;\n\n /**\n * Whether pressing the escape key closes the modal\n */\n isKeyboardDismissDisabled?: boolean;\n}\n\nconst Modal = ({\n children,\n trigger,\n contentProps,\n noBodyPadding = false,\n size = 'md',\n title,\n footer,\n tabs,\n defaultOpen,\n onOpenChange,\n isDismissable = false,\n isKeyboardDismissDisabled = false,\n open,\n}: ModalProps) => {\n const [portalContainer, setPortalContainer] = useState<HTMLDivElement | null>(null);\n const { insetRight: modalInsetRight, panelState } = useModalInsetRight();\n const transitionMs =\n panelState === 'opening'\n ? SIDEBAR_OPEN_TRANSITION_MS\n : panelState === 'closing'\n ? SIDEBAR_CLOSE_TRANSITION_MS\n : 0;\n\n const content = (\n <ModalCard\n size={size}\n title={title}\n footer={footer}\n tabs={tabs}\n noBodyPadding={noBodyPadding}\n {...contentProps}\n portalContainer={portalContainer}\n >\n {typeof children === 'function' ? children({ portalContainer }) : children}\n </ModalCard>\n );\n\n // Wrap trigger element to ensure it works with react-aria-components\n const wrappedTrigger = trigger ? <Pressable>{trigger}</Pressable> : null;\n\n return (\n <DialogTrigger isOpen={open} defaultOpen={defaultOpen} onOpenChange={onOpenChange}>\n {wrappedTrigger}\n <StyledModalOverlay\n $insetRight={modalInsetRight}\n $transitionMs={transitionMs}\n isDismissable={isDismissable}\n isKeyboardDismissDisabled={isKeyboardDismissDisabled}\n shouldCloseOnInteractOutside={(element) => !element.closest('[data-react-aria-top-layer]')}\n >\n <StyledModal ref={setPortalContainer}>{content}</StyledModal>\n </StyledModalOverlay>\n </DialogTrigger>\n );\n};\n\nexport default Object.assign(Modal, {\n Title: ModalTitle,\n});\n"],"mappings":"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"}
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import _default, { ModalClose, ModalContent, ModalProps, ModalTitleProps, ModalTrigger } from "../../Modal.cjs";
|
|
2
|
-
export { ModalClose, ModalContent, ModalProps, ModalTitleProps, ModalTrigger, _default as default };
|
|
1
|
+
import _default, { ModalClose, ModalContent, ModalProps, ModalRenderProps, ModalTitleProps, ModalTrigger } from "../../Modal.cjs";
|
|
2
|
+
export { ModalClose, ModalContent, ModalProps, ModalRenderProps, ModalTitleProps, ModalTrigger, _default as default };
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import _default, { ModalClose, ModalContent, ModalProps, ModalTitleProps, ModalTrigger } from "../../Modal.mjs";
|
|
2
|
-
export { ModalClose, ModalContent, ModalProps, ModalTitleProps, ModalTrigger, _default as default };
|
|
1
|
+
import _default, { ModalClose, ModalContent, ModalProps, ModalRenderProps, ModalTitleProps, ModalTrigger } from "../../Modal.mjs";
|
|
2
|
+
export { ModalClose, ModalContent, ModalProps, ModalRenderProps, ModalTitleProps, ModalTrigger, _default as default };
|
|
@@ -1,13 +1,13 @@
|
|
|
1
|
-
import { t as
|
|
2
|
-
import {
|
|
3
|
-
import { n as
|
|
4
|
-
import { n as Button$1 } from "../../IconButton-
|
|
5
|
-
import { i as TabBar, r as Tab } from "../../TabBar-
|
|
1
|
+
import { n as Stack, t as HStack } from "../../Stack-Bl54WmhY.mjs";
|
|
2
|
+
import { t as Card_default } from "../../Card-BMCB9eFC.mjs";
|
|
3
|
+
import { n as Heading$1 } from "../../Text-RcEfNFLx.mjs";
|
|
4
|
+
import { n as Button$1 } from "../../IconButton-CIWiEsS-.mjs";
|
|
5
|
+
import { i as TabBar, r as Tab } from "../../TabBar-zSA8kyE6.mjs";
|
|
6
6
|
import { Color, Spacing } from "@persona/design-tokens";
|
|
7
7
|
import styled from "styled-components";
|
|
8
|
-
import { forwardRef, useEffect, useRef, useState } from "react";
|
|
9
|
-
import { Button, Dialog, DialogTrigger, Heading, Modal, ModalOverlay, Pressable } from "react-aria-components";
|
|
10
8
|
import { jsx, jsxs } from "react/jsx-runtime";
|
|
9
|
+
import { Button, Dialog, DialogTrigger, Heading, Modal, ModalOverlay, Pressable } from "react-aria-components";
|
|
10
|
+
import { forwardRef, useEffect, useRef, useState } from "react";
|
|
11
11
|
import { XIcon } from "@persona/icons";
|
|
12
12
|
//#region lib/useModalInsetRight.ts
|
|
13
13
|
const CSS_VAR = "--modal-inset-right";
|
|
@@ -197,8 +197,11 @@ const StyledModalCardBody = styled(Card_default.Body)`
|
|
|
197
197
|
/**
|
|
198
198
|
* Card to be used in Modal contexts. Inherits props from react-aria-components Dialog.
|
|
199
199
|
*/
|
|
200
|
-
const ModalCard = forwardRef(function ModalCard({ title, children, showCloseButton = true, size, footer, tabs, noBodyPadding = false, ...props }, ref) {
|
|
200
|
+
const ModalCard = forwardRef(function ModalCard({ title, children, showCloseButton = true, size, footer, tabs, noBodyPadding = false, portalContainer, ...props }, ref) {
|
|
201
201
|
const [selectedTabIdx, setSelectedTabIdx] = useState(0);
|
|
202
|
+
useEffect(() => {
|
|
203
|
+
setSelectedTabIdx(0);
|
|
204
|
+
}, [tabs?.length ?? 0]);
|
|
202
205
|
const titleAndClose = /* @__PURE__ */ jsxs(ModalHeader, {
|
|
203
206
|
justify: "flex-start",
|
|
204
207
|
align: "center",
|
|
@@ -227,7 +230,7 @@ const ModalCard = forwardRef(function ModalCard({ title, children, showCloseButt
|
|
|
227
230
|
role: tabs ? "tabpanel" : void 0,
|
|
228
231
|
id: `pds-modal_tab-panel-${tab.name}`,
|
|
229
232
|
"aria-labelledby": `pds-modal_tab-${tab.name}`,
|
|
230
|
-
children: tab.contents
|
|
233
|
+
children: typeof tab.contents === "function" ? tab.contents({ portalContainer }) : tab.contents
|
|
231
234
|
}, tab.name)) : /* @__PURE__ */ jsx(StyledModalCardBody, {
|
|
232
235
|
$noPadding: noBodyPadding,
|
|
233
236
|
role: tabs ? "tabpanel" : void 0,
|
|
@@ -251,6 +254,7 @@ const Modal$1 = ({ children, trigger, contentProps, noBodyPadding = false, size
|
|
|
251
254
|
tabs,
|
|
252
255
|
noBodyPadding,
|
|
253
256
|
...contentProps,
|
|
257
|
+
portalContainer,
|
|
254
258
|
children: typeof children === "function" ? children({ portalContainer }) : children
|
|
255
259
|
});
|
|
256
260
|
return /* @__PURE__ */ jsxs(DialogTrigger, {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.mjs","names":["AriaModal","Button","AriaButton","Heading","AriaHeading","Card","Modal"],"sources":["../../../lib/useModalInsetRight.ts","../../../components/Modal/Modal.tsx"],"sourcesContent":["import { useEffect, useRef, useState } from 'react';\n\nconst CSS_VAR = '--modal-inset-right';\n\n// Match AgentsPanel sidebar transition durations\nexport const SIDEBAR_OPEN_TRANSITION_MS = 425;\nexport const SIDEBAR_CLOSE_TRANSITION_MS = 200;\n\nconst getModalInsetRight = () =>\n getComputedStyle(document.documentElement).getPropertyValue(CSS_VAR).trim() || '0px';\n\nconst prefersReducedMotion = () =>\n typeof window !== 'undefined' && window.matchMedia('(prefers-reduced-motion: reduce)').matches;\n\nexport type PanelInsetState = 'closed' | 'opening' | 'open' | 'closing';\n\nexport interface ModalInsetRight {\n /** Animated inset value — starts at 0px on panel open so CSS transition fires */\n insetRight: string;\n panelState: PanelInsetState;\n}\n\n/**\n * Returns the current value of --modal-inset-right from :root, reactively updating\n * as the agents side panel animates open/closed or is resized. Also tracks whether\n * the panel is opening, open, closing, or closed.\n *\n * panelState stays 'opening'/'closing' for the full transition duration so that\n * CSS transitions on consumers have time to animate.\n */\nconst useModalInsetRight = (): ModalInsetRight => {\n const [insetRight, setInsetRight] = useState(getModalInsetRight);\n const [panelState, setPanelState] = useState<PanelInsetState>(() =>\n getModalInsetRight() !== '0px' ? 'open' : 'closed',\n );\n const prevInsetRight = useRef(getModalInsetRight());\n const transitionTimerRef = useRef<ReturnType<typeof setTimeout> | null>(null);\n const rafRef = useRef<number | null>(null);\n\n useEffect(() => {\n const observer = new MutationObserver(() => {\n const prev = prevInsetRight.current;\n const next = getModalInsetRight();\n prevInsetRight.current = next;\n\n if (prev === '0px' && next !== '0px') {\n if (prefersReducedMotion()) {\n setInsetRight(next);\n setPanelState('open');\n } else {\n if (rafRef.current) {\n cancelAnimationFrame(rafRef.current);\n }\n if (transitionTimerRef.current) {\n clearTimeout(transitionTimerRef.current);\n }\n setInsetRight('0px');\n setPanelState('opening');\n rafRef.current = requestAnimationFrame(() => setInsetRight(next));\n transitionTimerRef.current = setTimeout(\n () => setPanelState('open'),\n SIDEBAR_OPEN_TRANSITION_MS,\n );\n }\n } else if (prev !== '0px' && next === '0px') {\n if (prefersReducedMotion()) {\n setInsetRight('0px');\n setPanelState('closed');\n } else {\n if (rafRef.current) {\n cancelAnimationFrame(rafRef.current);\n }\n if (transitionTimerRef.current) {\n clearTimeout(transitionTimerRef.current);\n }\n setInsetRight(prev);\n setPanelState('closing');\n rafRef.current = requestAnimationFrame(() => setInsetRight('0px'));\n transitionTimerRef.current = setTimeout(\n () => setPanelState('closed'),\n SIDEBAR_CLOSE_TRANSITION_MS,\n );\n }\n } else {\n setInsetRight(next);\n }\n });\n\n observer.observe(document.documentElement, {\n attributes: true,\n attributeFilter: ['style'],\n });\n\n return () => {\n observer.disconnect();\n if (transitionTimerRef.current) {\n clearTimeout(transitionTimerRef.current);\n }\n if (rafRef.current) {\n cancelAnimationFrame(rafRef.current);\n }\n };\n }, []);\n\n return { insetRight, panelState };\n};\n\nexport default useModalInsetRight;\n","import type { ComponentProps, ComponentPropsWithoutRef } from 'react';\nimport { forwardRef, type ReactNode, useState } from 'react';\nimport {\n Button as AriaButton,\n Dialog,\n DialogTrigger,\n Heading as AriaHeading,\n Modal as AriaModal,\n ModalOverlay,\n Pressable,\n} from 'react-aria-components';\nimport styled from 'styled-components';\n\nimport Button, { type ButtonProps } from '@persona/design-system/components/Button';\nimport Card from '@persona/design-system/components/Card';\nimport Stack, { HStack } from '@persona/design-system/components/Stack';\nimport TabBar, { Tab } from '@persona/design-system/components/TabBar';\nimport { Heading } from '@persona/design-system/components/Text';\nimport { Color, Spacing } from '@persona/design-tokens';\nimport { XIcon } from '@persona/icons';\nimport useModalInsetRight, {\n SIDEBAR_CLOSE_TRANSITION_MS,\n SIDEBAR_OPEN_TRANSITION_MS,\n} from 'design-system/lib/useModalInsetRight';\n\nconst StyledModalOverlay = styled(ModalOverlay)<{ $insetRight: string; $transitionMs: number }>`\n @keyframes overlayShow {\n from {\n opacity: 0;\n }\n to {\n opacity: 1;\n }\n }\n background-color: rgba(0, 0, 0, 0.5);\n position: fixed;\n top: 0;\n bottom: 0;\n left: 0;\n right: ${({ $insetRight }) => $insetRight};\n transition: right ${({ $transitionMs }) => $transitionMs}ms ease-out;\n animation: overlayShow 150ms cubic-bezier(0.16, 1, 0.3, 1);\n z-index: 10000;\n display: flex;\n align-items: center;\n justify-content: center;\n`;\n\nconst StyledModal = styled(AriaModal)`\n z-index: 10001;\n outline: none;\n width: 100%;\n`;\n\nconst ModalCloseButton = styled(Button)`\n display: inline-flex;\n padding: ${Spacing[2]};\n border-radius: ${Spacing[1]};\n width: fit-content;\n min-width: unset;\n`;\n\nconst ModalFooter = styled(HStack).attrs({\n justify: 'flex-end',\n align: 'center',\n spacing: Spacing[2],\n})`\n padding: ${Spacing[3]} ${Spacing[4]};\n border-top: 1px solid ${Color.BorderDivider};\n`;\n\nconst ModalHeaderTitle = styled.div`\n flex: 1;\n`;\n\nexport const ModalTrigger = DialogTrigger;\nexport const ModalContent = StyledModal;\n\nexport const ModalClose = (props: ButtonProps) => {\n return (\n <AriaButton slot='close' style={{ all: 'unset', display: 'contents' }}>\n <ModalCloseButton variant='text' width='icon' size='md' {...props}>\n <XIcon />\n </ModalCloseButton>\n </AriaButton>\n );\n};\n\nexport interface ModalTitleProps {\n children: ReactNode;\n className?: string;\n}\n\nconst ModalTitle = ({ children, ...props }: ModalTitleProps) => {\n return (\n <Heading size='sm' color='primary' as={AriaHeading} slot='title' {...props}>\n {children}\n </Heading>\n );\n};\n\nconst ModalHeader = styled(HStack)<{ $hasTabs: boolean }>`\n border-bottom: ${({ $hasTabs }) => ($hasTabs ? 'none' : `1px solid ${Color.BorderDivider}`)};\n padding: ${({ $hasTabs }) =>\n $hasTabs\n ? `${Spacing[3]} ${Spacing[2]} ${Spacing[1]} ${Spacing[4]}`\n : `${Spacing[3]} ${Spacing[2]} ${Spacing[3]} ${Spacing[4]}`};\n`;\n\nconst ModalTabBar = styled(TabBar)`\n padding-left: ${Spacing[4]};\n`;\n\nconst StyledDialog = styled(Dialog)`\n outline: none;\n`;\n\nconst StyledCard = styled(Card)<{ $size?: 'auto' | 'md' | 'lg' | 'xl' | 'full' }>`\n position: relative;\n left: 50%;\n transform: translateX(-50%);\n width: ${({ $size }) => {\n switch ($size) {\n case 'auto':\n return 'auto';\n case 'full':\n return 'calc(100% - 160px)';\n default:\n return '90vw';\n }\n }};\n max-width: ${({ theme, $size }) => {\n switch ($size) {\n case 'auto':\n return 'auto';\n case 'full':\n return 'calc(100% - 160px)';\n default:\n return theme.modal.width[$size];\n }\n }};\n /* TODO: Use breakpoints to make this responsive */\n max-height: ${({ $size }) => ($size === 'full' ? 'calc(100vh - 160px)' : '85vh')};\n display: flex;\n flex-direction: column;\n overflow: hidden;\n ${({ $size }) =>\n $size === 'full' &&\n `\n height: calc(100vh - 160px);\n `}\n margin-bottom: 0;\n`;\n\ninterface ModalCardProps extends ComponentPropsWithoutRef<typeof Dialog> {\n /**\n * Display X button to close popover\n */\n showCloseButton?: boolean;\n\n /**\n * Max width of the modal\n */\n size?: 'auto' | 'md' | 'lg' | 'xl' | 'full';\n\n /**\n * Footer content\n */\n footer?: ReactNode;\n\n /**\n * Renders tabs within the modal.\n * Adds a tab bar and will render the contents of the selected tab in a tabpanel.\n * Overrides `children`.\n */\n tabs?: TabView[];\n\n /**\n * Title of the modal\n */\n title?: ReactNode;\n\n /**\n * Children content\n */\n children?: ReactNode;\n\n /**\n * When true, removes horizontal and vertical padding from the body. Defaults to false.\n */\n noBodyPadding?: boolean;\n\n /**\n * Additional props for the Dialog element\n */\n className?: string;\n}\n\nconst StyledModalCardBody = styled(Card.Body)<{\n $noPadding?: boolean;\n $hidden?: boolean;\n}>`\n overflow-y: auto;\n flex: 1;\n min-height: 0;\n ${({ $noPadding }) =>\n $noPadding\n ? 'padding: 0;'\n : `\n padding-left: ${Spacing[4]};\n padding-right: ${Spacing[4]};\n `}\n ${({ $hidden }) => $hidden && 'display: none;'}\n`;\n\n/**\n * Card to be used in Modal contexts. Inherits props from react-aria-components Dialog.\n */\nconst ModalCard = forwardRef<HTMLDivElement, ModalCardProps>(function ModalCard(\n { title, children, showCloseButton = true, size, footer, tabs, noBodyPadding = false, ...props },\n ref,\n) {\n const [selectedTabIdx, setSelectedTabIdx] = useState(0);\n\n const titleAndClose = (\n <ModalHeader justify='flex-start' align='center' spacing={Spacing[2]} $hasTabs={Boolean(tabs)}>\n <ModalHeaderTitle>{title ? <ModalTitle>{title}</ModalTitle> : null}</ModalHeaderTitle>\n {showCloseButton && <ModalClose aria-label='Close' />}\n </ModalHeader>\n );\n\n const modalHeader = tabs ? (\n <Stack>\n {titleAndClose}\n <ModalTabBar>\n {tabs.map((tab, idx) => (\n <Tab\n key={tab.name}\n selected={selectedTabIdx === idx}\n id={`pds-modal_tab-${idx}`}\n onClick={() => setSelectedTabIdx(idx)}\n aria-controls={`pds-modal_tab-panel-${idx}`}\n >\n {tab.name}\n </Tab>\n ))}\n </ModalTabBar>\n </Stack>\n ) : (\n titleAndClose\n );\n\n return (\n <StyledDialog {...props} ref={ref}>\n <StyledCard elevated $size={size}>\n {(showCloseButton || title) && modalHeader}\n {tabs ? (\n tabs.map((tab, idx) => (\n <StyledModalCardBody\n key={tab.name}\n $noPadding={noBodyPadding}\n $hidden={selectedTabIdx !== idx}\n role={tabs ? 'tabpanel' : undefined}\n id={`pds-modal_tab-panel-${tab.name}`}\n aria-labelledby={`pds-modal_tab-${tab.name}`}\n >\n {tab.contents}\n </StyledModalCardBody>\n ))\n ) : (\n <StyledModalCardBody\n $noPadding={noBodyPadding}\n role={tabs ? 'tabpanel' : undefined}\n id={`pds-modal_tab-panel-${selectedTabIdx}`}\n aria-labelledby={`pds-modal_tab-${selectedTabIdx}`}\n >\n {children}\n </StyledModalCardBody>\n )}\n\n {footer && <ModalFooter>{footer}</ModalFooter>}\n </StyledCard>\n </StyledDialog>\n );\n});\n\ninterface TabView {\n name: string;\n contents: JSX.Element;\n badge?: React.ReactElement;\n disabled?: boolean;\n 'data-tour-target'?: string;\n}\n\nexport interface ModalProps {\n /**\n * Title of the Card\n */\n title?: string;\n\n /**\n * Component to use as trigger. React Aria trigger props will be merged with this element.\n */\n trigger?: ComponentProps<typeof Pressable>['children'];\n\n /**\n * Props to apply to Modal.Card within\n */\n contentProps?: ModalCardProps;\n\n /**\n * Max width of the modal\n */\n size?: 'auto' | 'md' | 'lg' | 'xl' | 'full';\n\n /**\n * Footer section intended for actions.\n * You can pass in Buttons directly and they will render in a HStack.\n */\n footer?: ReactNode;\n\n /**\n * Renders tabs within the modal.\n * Adds a tab bar and will render the contents of the selected tab in a tabpanel.\n * Overrides `children`.\n */\n tabs?: TabView[];\n\n /**\n * Children content\n */\n children?: ReactNode | ((props: { portalContainer: HTMLDivElement | null }) => ReactNode);\n\n /**\n * When true, removes horizontal and vertical padding from the body. Defaults to false.\n * Can also be set via contentProps.noBodyPadding.\n */\n noBodyPadding?: boolean;\n\n /**\n * Controls whether the modal is open (controlled)\n */\n open?: boolean;\n\n /**\n * Default open state (uncontrolled)\n */\n defaultOpen?: boolean;\n\n /**\n * Handler called when open state changes\n */\n onOpenChange?: (isOpen: boolean) => void;\n\n /**\n * Whether the modal can be dismissed by clicking outside or pressing escape\n */\n isDismissable?: boolean;\n\n /**\n * Whether pressing the escape key closes the modal\n */\n isKeyboardDismissDisabled?: boolean;\n}\n\nconst Modal = ({\n children,\n trigger,\n contentProps,\n noBodyPadding = false,\n size = 'md',\n title,\n footer,\n tabs,\n defaultOpen,\n onOpenChange,\n isDismissable = false,\n isKeyboardDismissDisabled = false,\n open,\n}: ModalProps) => {\n const [portalContainer, setPortalContainer] = useState<HTMLDivElement | null>(null);\n const { insetRight: modalInsetRight, panelState } = useModalInsetRight();\n const transitionMs =\n panelState === 'opening'\n ? SIDEBAR_OPEN_TRANSITION_MS\n : panelState === 'closing'\n ? SIDEBAR_CLOSE_TRANSITION_MS\n : 0;\n\n const content = (\n <ModalCard\n size={size}\n title={title}\n footer={footer}\n tabs={tabs}\n noBodyPadding={noBodyPadding}\n {...contentProps}\n >\n {typeof children === 'function' ? children({ portalContainer }) : children}\n </ModalCard>\n );\n\n // Wrap trigger element to ensure it works with react-aria-components\n const wrappedTrigger = trigger ? <Pressable>{trigger}</Pressable> : null;\n\n return (\n <DialogTrigger isOpen={open} defaultOpen={defaultOpen} onOpenChange={onOpenChange}>\n {wrappedTrigger}\n <StyledModalOverlay\n $insetRight={modalInsetRight}\n $transitionMs={transitionMs}\n isDismissable={isDismissable}\n isKeyboardDismissDisabled={isKeyboardDismissDisabled}\n shouldCloseOnInteractOutside={(element) => !element.closest('[data-react-aria-top-layer]')}\n >\n <StyledModal ref={setPortalContainer}>{content}</StyledModal>\n </StyledModalOverlay>\n </DialogTrigger>\n );\n};\n\nexport default Object.assign(Modal, {\n Title: ModalTitle,\n});\n"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"index.mjs","names":["AriaModal","Button","AriaButton","Heading","AriaHeading","Card","Modal"],"sources":["../../../lib/useModalInsetRight.ts","../../../components/Modal/Modal.tsx"],"sourcesContent":["import { useEffect, useRef, useState } from 'react';\n\nconst CSS_VAR = '--modal-inset-right';\n\n// Match AgentsPanel sidebar transition durations\nexport const SIDEBAR_OPEN_TRANSITION_MS = 425;\nexport const SIDEBAR_CLOSE_TRANSITION_MS = 200;\n\nconst getModalInsetRight = () =>\n getComputedStyle(document.documentElement).getPropertyValue(CSS_VAR).trim() || '0px';\n\nconst prefersReducedMotion = () =>\n typeof window !== 'undefined' && window.matchMedia('(prefers-reduced-motion: reduce)').matches;\n\nexport type PanelInsetState = 'closed' | 'opening' | 'open' | 'closing';\n\nexport interface ModalInsetRight {\n /** Animated inset value — starts at 0px on panel open so CSS transition fires */\n insetRight: string;\n panelState: PanelInsetState;\n}\n\n/**\n * Returns the current value of --modal-inset-right from :root, reactively updating\n * as the agents side panel animates open/closed or is resized. Also tracks whether\n * the panel is opening, open, closing, or closed.\n *\n * panelState stays 'opening'/'closing' for the full transition duration so that\n * CSS transitions on consumers have time to animate.\n */\nconst useModalInsetRight = (): ModalInsetRight => {\n const [insetRight, setInsetRight] = useState(getModalInsetRight);\n const [panelState, setPanelState] = useState<PanelInsetState>(() =>\n getModalInsetRight() !== '0px' ? 'open' : 'closed',\n );\n const prevInsetRight = useRef(getModalInsetRight());\n const transitionTimerRef = useRef<ReturnType<typeof setTimeout> | null>(null);\n const rafRef = useRef<number | null>(null);\n\n useEffect(() => {\n const observer = new MutationObserver(() => {\n const prev = prevInsetRight.current;\n const next = getModalInsetRight();\n prevInsetRight.current = next;\n\n if (prev === '0px' && next !== '0px') {\n if (prefersReducedMotion()) {\n setInsetRight(next);\n setPanelState('open');\n } else {\n if (rafRef.current) {\n cancelAnimationFrame(rafRef.current);\n }\n if (transitionTimerRef.current) {\n clearTimeout(transitionTimerRef.current);\n }\n setInsetRight('0px');\n setPanelState('opening');\n rafRef.current = requestAnimationFrame(() => setInsetRight(next));\n transitionTimerRef.current = setTimeout(\n () => setPanelState('open'),\n SIDEBAR_OPEN_TRANSITION_MS,\n );\n }\n } else if (prev !== '0px' && next === '0px') {\n if (prefersReducedMotion()) {\n setInsetRight('0px');\n setPanelState('closed');\n } else {\n if (rafRef.current) {\n cancelAnimationFrame(rafRef.current);\n }\n if (transitionTimerRef.current) {\n clearTimeout(transitionTimerRef.current);\n }\n setInsetRight(prev);\n setPanelState('closing');\n rafRef.current = requestAnimationFrame(() => setInsetRight('0px'));\n transitionTimerRef.current = setTimeout(\n () => setPanelState('closed'),\n SIDEBAR_CLOSE_TRANSITION_MS,\n );\n }\n } else {\n setInsetRight(next);\n }\n });\n\n observer.observe(document.documentElement, {\n attributes: true,\n attributeFilter: ['style'],\n });\n\n return () => {\n observer.disconnect();\n if (transitionTimerRef.current) {\n clearTimeout(transitionTimerRef.current);\n }\n if (rafRef.current) {\n cancelAnimationFrame(rafRef.current);\n }\n };\n }, []);\n\n return { insetRight, panelState };\n};\n\nexport default useModalInsetRight;\n","import type { ComponentProps, ComponentPropsWithoutRef } from 'react';\nimport { forwardRef, type ReactNode, useEffect, useState } from 'react';\nimport {\n Button as AriaButton,\n Dialog,\n DialogTrigger,\n Heading as AriaHeading,\n Modal as AriaModal,\n ModalOverlay,\n Pressable,\n} from 'react-aria-components';\nimport styled from 'styled-components';\n\nimport Button, { type ButtonProps } from '@persona/design-system/components/Button';\nimport Card from '@persona/design-system/components/Card';\nimport Stack, { HStack } from '@persona/design-system/components/Stack';\nimport TabBar, { Tab } from '@persona/design-system/components/TabBar';\nimport { Heading } from '@persona/design-system/components/Text';\nimport { Color, Spacing } from '@persona/design-tokens';\nimport { XIcon } from '@persona/icons';\nimport useModalInsetRight, {\n SIDEBAR_CLOSE_TRANSITION_MS,\n SIDEBAR_OPEN_TRANSITION_MS,\n} from 'design-system/lib/useModalInsetRight';\n\nconst StyledModalOverlay = styled(ModalOverlay)<{ $insetRight: string; $transitionMs: number }>`\n @keyframes overlayShow {\n from {\n opacity: 0;\n }\n to {\n opacity: 1;\n }\n }\n background-color: rgba(0, 0, 0, 0.5);\n position: fixed;\n top: 0;\n bottom: 0;\n left: 0;\n right: ${({ $insetRight }) => $insetRight};\n transition: right ${({ $transitionMs }) => $transitionMs}ms ease-out;\n animation: overlayShow 150ms cubic-bezier(0.16, 1, 0.3, 1);\n z-index: 10000;\n display: flex;\n align-items: center;\n justify-content: center;\n`;\n\nconst StyledModal = styled(AriaModal)`\n z-index: 10001;\n outline: none;\n width: 100%;\n`;\n\nconst ModalCloseButton = styled(Button)`\n display: inline-flex;\n padding: ${Spacing[2]};\n border-radius: ${Spacing[1]};\n width: fit-content;\n min-width: unset;\n`;\n\nconst ModalFooter = styled(HStack).attrs({\n justify: 'flex-end',\n align: 'center',\n spacing: Spacing[2],\n})`\n padding: ${Spacing[3]} ${Spacing[4]};\n border-top: 1px solid ${Color.BorderDivider};\n`;\n\nconst ModalHeaderTitle = styled.div`\n flex: 1;\n`;\n\nexport const ModalTrigger = DialogTrigger;\nexport const ModalContent = StyledModal;\n\nexport const ModalClose = (props: ButtonProps) => {\n return (\n <AriaButton slot='close' style={{ all: 'unset', display: 'contents' }}>\n <ModalCloseButton variant='text' width='icon' size='md' {...props}>\n <XIcon />\n </ModalCloseButton>\n </AriaButton>\n );\n};\n\nexport interface ModalTitleProps {\n children: ReactNode;\n className?: string;\n}\n\n/** Props passed to modal content render functions. */\nexport interface ModalRenderProps {\n /** Element that floating content should use as its portal container. */\n portalContainer: HTMLDivElement | null;\n}\n\ntype ModalRenderable = ReactNode | ((props: ModalRenderProps) => ReactNode);\n\nconst ModalTitle = ({ children, ...props }: ModalTitleProps) => {\n return (\n <Heading size='sm' color='primary' as={AriaHeading} slot='title' {...props}>\n {children}\n </Heading>\n );\n};\n\nconst ModalHeader = styled(HStack)<{ $hasTabs: boolean }>`\n border-bottom: ${({ $hasTabs }) => ($hasTabs ? 'none' : `1px solid ${Color.BorderDivider}`)};\n padding: ${({ $hasTabs }) =>\n $hasTabs\n ? `${Spacing[3]} ${Spacing[2]} ${Spacing[1]} ${Spacing[4]}`\n : `${Spacing[3]} ${Spacing[2]} ${Spacing[3]} ${Spacing[4]}`};\n`;\n\nconst ModalTabBar = styled(TabBar)`\n padding-left: ${Spacing[4]};\n`;\n\nconst StyledDialog = styled(Dialog)`\n outline: none;\n`;\n\nconst StyledCard = styled(Card)<{ $size?: 'auto' | 'md' | 'lg' | 'xl' | 'full' }>`\n position: relative;\n left: 50%;\n transform: translateX(-50%);\n width: ${({ $size }) => {\n switch ($size) {\n case 'auto':\n return 'auto';\n case 'full':\n return 'calc(100% - 160px)';\n default:\n return '90vw';\n }\n }};\n max-width: ${({ theme, $size }) => {\n switch ($size) {\n case 'auto':\n return 'auto';\n case 'full':\n return 'calc(100% - 160px)';\n default:\n return theme.modal.width[$size];\n }\n }};\n /* TODO: Use breakpoints to make this responsive */\n max-height: ${({ $size }) => ($size === 'full' ? 'calc(100vh - 160px)' : '85vh')};\n display: flex;\n flex-direction: column;\n overflow: hidden;\n ${({ $size }) =>\n $size === 'full' &&\n `\n height: calc(100vh - 160px);\n `}\n margin-bottom: 0;\n`;\n\ninterface ModalCardProps extends ComponentPropsWithoutRef<typeof Dialog> {\n /**\n * Display X button to close popover\n */\n showCloseButton?: boolean;\n\n /**\n * Max width of the modal\n */\n size?: 'auto' | 'md' | 'lg' | 'xl' | 'full';\n\n /**\n * Footer content\n */\n footer?: ReactNode;\n\n /**\n * Renders tabs within the modal.\n * Adds a tab bar and will render the contents of the selected tab in a tabpanel.\n * Overrides `children`.\n * Tab contents can be render functions that receive the modal portal container.\n */\n tabs?: TabView[];\n\n /**\n * Title of the modal\n */\n title?: ReactNode;\n\n /**\n * Children content\n */\n children?: ReactNode;\n\n /**\n * When true, removes horizontal and vertical padding from the body. Defaults to false.\n */\n noBodyPadding?: boolean;\n\n /**\n * Additional props for the Dialog element\n */\n className?: string;\n}\n\ninterface ModalCardInternalProps extends ModalCardProps {\n portalContainer: HTMLDivElement | null;\n}\n\nconst StyledModalCardBody = styled(Card.Body)<{\n $noPadding?: boolean;\n $hidden?: boolean;\n}>`\n overflow-y: auto;\n flex: 1;\n min-height: 0;\n ${({ $noPadding }) =>\n $noPadding\n ? 'padding: 0;'\n : `\n padding-left: ${Spacing[4]};\n padding-right: ${Spacing[4]};\n `}\n ${({ $hidden }) => $hidden && 'display: none;'}\n`;\n\n/**\n * Card to be used in Modal contexts. Inherits props from react-aria-components Dialog.\n */\nconst ModalCard = forwardRef<HTMLDivElement, ModalCardInternalProps>(function ModalCard(\n {\n title,\n children,\n showCloseButton = true,\n size,\n footer,\n tabs,\n noBodyPadding = false,\n portalContainer,\n ...props\n },\n ref,\n) {\n const [selectedTabIdx, setSelectedTabIdx] = useState(0);\n const tabCount = tabs?.length ?? 0;\n\n useEffect(() => {\n setSelectedTabIdx(0);\n }, [tabCount]);\n\n const titleAndClose = (\n <ModalHeader justify='flex-start' align='center' spacing={Spacing[2]} $hasTabs={Boolean(tabs)}>\n <ModalHeaderTitle>{title ? <ModalTitle>{title}</ModalTitle> : null}</ModalHeaderTitle>\n {showCloseButton && <ModalClose aria-label='Close' />}\n </ModalHeader>\n );\n\n const modalHeader = tabs ? (\n <Stack>\n {titleAndClose}\n <ModalTabBar>\n {tabs.map((tab, idx) => (\n <Tab\n key={tab.name}\n selected={selectedTabIdx === idx}\n id={`pds-modal_tab-${idx}`}\n onClick={() => setSelectedTabIdx(idx)}\n aria-controls={`pds-modal_tab-panel-${idx}`}\n >\n {tab.name}\n </Tab>\n ))}\n </ModalTabBar>\n </Stack>\n ) : (\n titleAndClose\n );\n\n return (\n <StyledDialog {...props} ref={ref}>\n <StyledCard elevated $size={size}>\n {(showCloseButton || title) && modalHeader}\n {tabs ? (\n tabs.map((tab, idx) => (\n <StyledModalCardBody\n key={tab.name}\n $noPadding={noBodyPadding}\n $hidden={selectedTabIdx !== idx}\n role={tabs ? 'tabpanel' : undefined}\n id={`pds-modal_tab-panel-${tab.name}`}\n aria-labelledby={`pds-modal_tab-${tab.name}`}\n >\n {typeof tab.contents === 'function'\n ? tab.contents({ portalContainer })\n : tab.contents}\n </StyledModalCardBody>\n ))\n ) : (\n <StyledModalCardBody\n $noPadding={noBodyPadding}\n role={tabs ? 'tabpanel' : undefined}\n id={`pds-modal_tab-panel-${selectedTabIdx}`}\n aria-labelledby={`pds-modal_tab-${selectedTabIdx}`}\n >\n {children}\n </StyledModalCardBody>\n )}\n\n {footer && <ModalFooter>{footer}</ModalFooter>}\n </StyledCard>\n </StyledDialog>\n );\n});\n\ninterface TabView {\n name: string;\n contents: ModalRenderable;\n badge?: React.ReactElement;\n disabled?: boolean;\n 'data-tour-target'?: string;\n}\n\nexport interface ModalProps {\n /**\n * Title of the Card\n */\n title?: string;\n\n /**\n * Component to use as trigger. React Aria trigger props will be merged with this element.\n */\n trigger?: ComponentProps<typeof Pressable>['children'];\n\n /**\n * Props to apply to Modal.Card within\n */\n contentProps?: ModalCardProps;\n\n /**\n * Max width of the modal\n */\n size?: 'auto' | 'md' | 'lg' | 'xl' | 'full';\n\n /**\n * Footer section intended for actions.\n * You can pass in Buttons directly and they will render in a HStack.\n */\n footer?: ReactNode;\n\n /**\n * Renders tabs within the modal.\n * Adds a tab bar and will render the contents of the selected tab in a tabpanel.\n * Overrides `children`.\n */\n tabs?: TabView[];\n\n /**\n * Children content\n */\n children?: ModalRenderable;\n\n /**\n * When true, removes horizontal and vertical padding from the body. Defaults to false.\n * Can also be set via contentProps.noBodyPadding.\n */\n noBodyPadding?: boolean;\n\n /**\n * Controls whether the modal is open (controlled)\n */\n open?: boolean;\n\n /**\n * Default open state (uncontrolled)\n */\n defaultOpen?: boolean;\n\n /**\n * Handler called when open state changes\n */\n onOpenChange?: (isOpen: boolean) => void;\n\n /**\n * Whether the modal can be dismissed by clicking outside or pressing escape\n */\n isDismissable?: boolean;\n\n /**\n * Whether pressing the escape key closes the modal\n */\n isKeyboardDismissDisabled?: boolean;\n}\n\nconst Modal = ({\n children,\n trigger,\n contentProps,\n noBodyPadding = false,\n size = 'md',\n title,\n footer,\n tabs,\n defaultOpen,\n onOpenChange,\n isDismissable = false,\n isKeyboardDismissDisabled = false,\n open,\n}: ModalProps) => {\n const [portalContainer, setPortalContainer] = useState<HTMLDivElement | null>(null);\n const { insetRight: modalInsetRight, panelState } = useModalInsetRight();\n const transitionMs =\n panelState === 'opening'\n ? SIDEBAR_OPEN_TRANSITION_MS\n : panelState === 'closing'\n ? SIDEBAR_CLOSE_TRANSITION_MS\n : 0;\n\n const content = (\n <ModalCard\n size={size}\n title={title}\n footer={footer}\n tabs={tabs}\n noBodyPadding={noBodyPadding}\n {...contentProps}\n portalContainer={portalContainer}\n >\n {typeof children === 'function' ? children({ portalContainer }) : children}\n </ModalCard>\n );\n\n // Wrap trigger element to ensure it works with react-aria-components\n const wrappedTrigger = trigger ? <Pressable>{trigger}</Pressable> : null;\n\n return (\n <DialogTrigger isOpen={open} defaultOpen={defaultOpen} onOpenChange={onOpenChange}>\n {wrappedTrigger}\n <StyledModalOverlay\n $insetRight={modalInsetRight}\n $transitionMs={transitionMs}\n isDismissable={isDismissable}\n isKeyboardDismissDisabled={isKeyboardDismissDisabled}\n shouldCloseOnInteractOutside={(element) => !element.closest('[data-react-aria-top-layer]')}\n >\n <StyledModal ref={setPortalContainer}>{content}</StyledModal>\n </StyledModalOverlay>\n </DialogTrigger>\n );\n};\n\nexport default Object.assign(Modal, {\n Title: ModalTitle,\n});\n"],"mappings":"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"}
|
|
@@ -2,70 +2,6 @@ Object.defineProperties(exports, {
|
|
|
2
2
|
__esModule: { value: true },
|
|
3
3
|
[Symbol.toStringTag]: { value: "Module" }
|
|
4
4
|
});
|
|
5
|
-
const
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
let styled_components = require("styled-components");
|
|
9
|
-
styled_components = require_chunk.__toESM(styled_components);
|
|
10
|
-
let react_jsx_runtime = require("react/jsx-runtime");
|
|
11
|
-
//#region components/PageHeader/PageHeader.tsx
|
|
12
|
-
const PageHeaderContainer = styled_components.default.header`
|
|
13
|
-
display: flex;
|
|
14
|
-
width: 100%;
|
|
15
|
-
justify-content: space-between;
|
|
16
|
-
align-items: center;
|
|
17
|
-
padding: ${_persona_design_tokens.Spacing[3]} ${_persona_design_tokens.Spacing[5]};
|
|
18
|
-
background-color: ${({ theme }) => theme.color.background.primary};
|
|
19
|
-
border-bottom: 1px solid ${({ theme }) => theme.color.border.primary};
|
|
20
|
-
box-sizing: border-box;
|
|
21
|
-
min-height: 56px; /* Standardize height for most PageHeaders */
|
|
22
|
-
`;
|
|
23
|
-
const TitleContainer = styled_components.default.div`
|
|
24
|
-
display: flex;
|
|
25
|
-
flex: 1;
|
|
26
|
-
align-items: center;
|
|
27
|
-
h1 {
|
|
28
|
-
margin: 0;
|
|
29
|
-
}
|
|
30
|
-
p {
|
|
31
|
-
margin: 0 0 0 ${_persona_design_tokens.Spacing[2]};
|
|
32
|
-
}
|
|
33
|
-
`;
|
|
34
|
-
const LeftContainer = styled_components.default.div`
|
|
35
|
-
display: flex;
|
|
36
|
-
align-items: center;
|
|
37
|
-
`;
|
|
38
|
-
const RightContainer = styled_components.default.div`
|
|
39
|
-
display: flex;
|
|
40
|
-
gap: ${_persona_design_tokens.Spacing[2]};
|
|
41
|
-
margin-left: ${_persona_design_tokens.Spacing[3]};
|
|
42
|
-
`;
|
|
43
|
-
const PageHeader = ({ title, subtitle, level = "product", prepend, append, children, ...props }) => /* @__PURE__ */ (0, react_jsx_runtime.jsxs)(PageHeaderContainer, {
|
|
44
|
-
...props,
|
|
45
|
-
children: [/* @__PURE__ */ (0, react_jsx_runtime.jsxs)(LeftContainer, { children: [
|
|
46
|
-
prepend && /* @__PURE__ */ (0, react_jsx_runtime.jsx)("div", { children: prepend }),
|
|
47
|
-
/* @__PURE__ */ (0, react_jsx_runtime.jsxs)(TitleContainer, { children: [
|
|
48
|
-
level === "product" && /* @__PURE__ */ (0, react_jsx_runtime.jsx)(require_Text.Heading, {
|
|
49
|
-
as: "h1",
|
|
50
|
-
size: "sm",
|
|
51
|
-
children: title
|
|
52
|
-
}),
|
|
53
|
-
level === "detail" && /* @__PURE__ */ (0, react_jsx_runtime.jsx)(require_Text.Paragraph, {
|
|
54
|
-
as: "h1",
|
|
55
|
-
size: "lg",
|
|
56
|
-
color: "primary",
|
|
57
|
-
children: title
|
|
58
|
-
}),
|
|
59
|
-
subtitle && /* @__PURE__ */ (0, react_jsx_runtime.jsx)(require_Text.Paragraph, {
|
|
60
|
-
size: "md",
|
|
61
|
-
children: subtitle
|
|
62
|
-
})
|
|
63
|
-
] }),
|
|
64
|
-
append && /* @__PURE__ */ (0, react_jsx_runtime.jsx)("div", { children: append })
|
|
65
|
-
] }), children && /* @__PURE__ */ (0, react_jsx_runtime.jsx)(RightContainer, { children })]
|
|
66
|
-
});
|
|
67
|
-
//#endregion
|
|
68
|
-
exports.PageHeaderContainer = PageHeaderContainer;
|
|
69
|
-
exports.default = PageHeader;
|
|
70
|
-
|
|
71
|
-
//# sourceMappingURL=index.cjs.map
|
|
5
|
+
const require_PageHeader = require("../../PageHeader-CUDnarkt.cjs");
|
|
6
|
+
exports.PageHeaderContainer = require_PageHeader.PageHeaderContainer;
|
|
7
|
+
exports.default = require_PageHeader.PageHeader;
|
|
@@ -1,64 +1,2 @@
|
|
|
1
|
-
import {
|
|
2
|
-
import { Spacing } from "@persona/design-tokens";
|
|
3
|
-
import styled from "styled-components";
|
|
4
|
-
import { jsx, jsxs } from "react/jsx-runtime";
|
|
5
|
-
//#region components/PageHeader/PageHeader.tsx
|
|
6
|
-
const PageHeaderContainer = styled.header`
|
|
7
|
-
display: flex;
|
|
8
|
-
width: 100%;
|
|
9
|
-
justify-content: space-between;
|
|
10
|
-
align-items: center;
|
|
11
|
-
padding: ${Spacing[3]} ${Spacing[5]};
|
|
12
|
-
background-color: ${({ theme }) => theme.color.background.primary};
|
|
13
|
-
border-bottom: 1px solid ${({ theme }) => theme.color.border.primary};
|
|
14
|
-
box-sizing: border-box;
|
|
15
|
-
min-height: 56px; /* Standardize height for most PageHeaders */
|
|
16
|
-
`;
|
|
17
|
-
const TitleContainer = styled.div`
|
|
18
|
-
display: flex;
|
|
19
|
-
flex: 1;
|
|
20
|
-
align-items: center;
|
|
21
|
-
h1 {
|
|
22
|
-
margin: 0;
|
|
23
|
-
}
|
|
24
|
-
p {
|
|
25
|
-
margin: 0 0 0 ${Spacing[2]};
|
|
26
|
-
}
|
|
27
|
-
`;
|
|
28
|
-
const LeftContainer = styled.div`
|
|
29
|
-
display: flex;
|
|
30
|
-
align-items: center;
|
|
31
|
-
`;
|
|
32
|
-
const RightContainer = styled.div`
|
|
33
|
-
display: flex;
|
|
34
|
-
gap: ${Spacing[2]};
|
|
35
|
-
margin-left: ${Spacing[3]};
|
|
36
|
-
`;
|
|
37
|
-
const PageHeader = ({ title, subtitle, level = "product", prepend, append, children, ...props }) => /* @__PURE__ */ jsxs(PageHeaderContainer, {
|
|
38
|
-
...props,
|
|
39
|
-
children: [/* @__PURE__ */ jsxs(LeftContainer, { children: [
|
|
40
|
-
prepend && /* @__PURE__ */ jsx("div", { children: prepend }),
|
|
41
|
-
/* @__PURE__ */ jsxs(TitleContainer, { children: [
|
|
42
|
-
level === "product" && /* @__PURE__ */ jsx(Heading, {
|
|
43
|
-
as: "h1",
|
|
44
|
-
size: "sm",
|
|
45
|
-
children: title
|
|
46
|
-
}),
|
|
47
|
-
level === "detail" && /* @__PURE__ */ jsx(Paragraph, {
|
|
48
|
-
as: "h1",
|
|
49
|
-
size: "lg",
|
|
50
|
-
color: "primary",
|
|
51
|
-
children: title
|
|
52
|
-
}),
|
|
53
|
-
subtitle && /* @__PURE__ */ jsx(Paragraph, {
|
|
54
|
-
size: "md",
|
|
55
|
-
children: subtitle
|
|
56
|
-
})
|
|
57
|
-
] }),
|
|
58
|
-
append && /* @__PURE__ */ jsx("div", { children: append })
|
|
59
|
-
] }), children && /* @__PURE__ */ jsx(RightContainer, { children })]
|
|
60
|
-
});
|
|
61
|
-
//#endregion
|
|
1
|
+
import { n as PageHeaderContainer, t as PageHeader } from "../../PageHeader-D-6W61E_.mjs";
|
|
62
2
|
export { PageHeaderContainer, PageHeader as default };
|
|
63
|
-
|
|
64
|
-
//# sourceMappingURL=index.mjs.map
|
|
@@ -2,7 +2,7 @@ Object.defineProperties(exports, {
|
|
|
2
2
|
__esModule: { value: true },
|
|
3
3
|
[Symbol.toStringTag]: { value: "Module" }
|
|
4
4
|
});
|
|
5
|
-
const require_Pagination = require("../../Pagination-
|
|
5
|
+
const require_Pagination = require("../../Pagination-2Yo1vRJZ.cjs");
|
|
6
6
|
exports.DEFAULT_PAGE_SIZE_OPTIONS = require_Pagination.DEFAULT_PAGE_SIZE_OPTIONS;
|
|
7
7
|
exports.MIN_PAGE_SIZE = require_Pagination.MIN_PAGE_SIZE;
|
|
8
8
|
exports.PAGE_LIMIT_BEFORE_SCROLL_MODE = require_Pagination.PAGE_LIMIT_BEFORE_SCROLL_MODE;
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { t as Pagination } from "../../Pagination-
|
|
2
|
-
import { r as PageSelector, t as PAGE_LIMIT_BEFORE_SCROLL_MODE } from "../../PageSelector-
|
|
3
|
-
import { n as MIN_PAGE_SIZE, t as DEFAULT_PAGE_SIZE_OPTIONS } from "../../constants-
|
|
1
|
+
import { t as Pagination } from "../../Pagination-D04tn-tf.cjs";
|
|
2
|
+
import { r as PageSelector, t as PAGE_LIMIT_BEFORE_SCROLL_MODE } from "../../PageSelector-CNnVp3Al.cjs";
|
|
3
|
+
import { n as MIN_PAGE_SIZE, t as DEFAULT_PAGE_SIZE_OPTIONS } from "../../constants-B6c8S033.cjs";
|
|
4
4
|
export { DEFAULT_PAGE_SIZE_OPTIONS, MIN_PAGE_SIZE, PAGE_LIMIT_BEFORE_SCROLL_MODE, PageSelector, Pagination as default };
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { t as Pagination } from "../../Pagination-
|
|
2
|
-
import { r as PageSelector, t as PAGE_LIMIT_BEFORE_SCROLL_MODE } from "../../PageSelector-
|
|
3
|
-
import { n as MIN_PAGE_SIZE, t as DEFAULT_PAGE_SIZE_OPTIONS } from "../../constants-
|
|
1
|
+
import { t as Pagination } from "../../Pagination-ygLutOst.mjs";
|
|
2
|
+
import { r as PageSelector, t as PAGE_LIMIT_BEFORE_SCROLL_MODE } from "../../PageSelector-vay4jpMp.mjs";
|
|
3
|
+
import { n as MIN_PAGE_SIZE, t as DEFAULT_PAGE_SIZE_OPTIONS } from "../../constants-BASogfT_.mjs";
|
|
4
4
|
export { DEFAULT_PAGE_SIZE_OPTIONS, MIN_PAGE_SIZE, PAGE_LIMIT_BEFORE_SCROLL_MODE, PageSelector, Pagination as default };
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import { a as MIN_PAGE_SIZE, i as DEFAULT_PAGE_SIZE_OPTIONS, n as PAGE_LIMIT_BEFORE_SCROLL_MODE, r as PageSelector, t as Pagination_default } from "../../Pagination-
|
|
1
|
+
import { a as MIN_PAGE_SIZE, i as DEFAULT_PAGE_SIZE_OPTIONS, n as PAGE_LIMIT_BEFORE_SCROLL_MODE, r as PageSelector, t as Pagination_default } from "../../Pagination-ztqhywAP.mjs";
|
|
2
2
|
export { DEFAULT_PAGE_SIZE_OPTIONS, MIN_PAGE_SIZE, PAGE_LIMIT_BEFORE_SCROLL_MODE, PageSelector, Pagination_default as default };
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
const require_Pii = require("../../Pii
|
|
1
|
+
const require_Pii = require("../../Pii-DHTb3ewO.cjs");
|
|
2
2
|
module.exports = require_Pii.Pii_default;
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import { t as Pii_default } from "../../Pii-
|
|
1
|
+
import { t as Pii_default } from "../../Pii-DrrtEz7U.mjs";
|
|
2
2
|
export { Pii_default as default };
|
|
@@ -2,7 +2,7 @@ Object.defineProperties(exports, {
|
|
|
2
2
|
__esModule: { value: true },
|
|
3
3
|
[Symbol.toStringTag]: { value: "Module" }
|
|
4
4
|
});
|
|
5
|
-
const require_Popover = require("../../Popover-
|
|
5
|
+
const require_Popover = require("../../Popover-BzgMAhsX.cjs");
|
|
6
6
|
exports.PopoverAnchor = require_Popover.PopoverAnchor;
|
|
7
7
|
exports.PopoverCard = require_Popover.PopoverCard;
|
|
8
8
|
exports.PopoverClose = require_Popover.PopoverClose;
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import { a as PopoverPortal, i as PopoverContent, n as PopoverCard, o as PopoverTrigger, r as PopoverClose, s as Popover_default, t as PopoverAnchor } from "../../Popover-
|
|
1
|
+
import { a as PopoverPortal, i as PopoverContent, n as PopoverCard, o as PopoverTrigger, r as PopoverClose, s as Popover_default, t as PopoverAnchor } from "../../Popover-BkDpDdaO.mjs";
|
|
2
2
|
export { PopoverAnchor, PopoverCard, PopoverClose, PopoverContent, PopoverPortal, PopoverTrigger, Popover_default as default };
|
|
@@ -4,7 +4,7 @@ Object.defineProperties(exports, {
|
|
|
4
4
|
});
|
|
5
5
|
const require_chunk = require("../../chunk-CKQMccvm.cjs");
|
|
6
6
|
const require_mixins_text = require("../../mixins/text.cjs");
|
|
7
|
-
const require_Tooltip = require("../../Tooltip-
|
|
7
|
+
const require_Tooltip = require("../../Tooltip-olP3rdUO.cjs");
|
|
8
8
|
let _persona_design_tokens = require("@persona/design-tokens");
|
|
9
9
|
let styled_components = require("styled-components");
|
|
10
10
|
styled_components = require_chunk.__toESM(styled_components);
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { paragraphMixins } from "../../mixins/text.mjs";
|
|
2
|
-
import { a as Tooltip } from "../../Tooltip-
|
|
2
|
+
import { a as Tooltip } from "../../Tooltip-C6AR1xT-.mjs";
|
|
3
3
|
import { Color, Spacing } from "@persona/design-tokens";
|
|
4
4
|
import styled, { keyframes } from "styled-components";
|
|
5
5
|
import { Fragment, jsx, jsxs } from "react/jsx-runtime";
|
|
@@ -2,6 +2,6 @@ Object.defineProperties(exports, {
|
|
|
2
2
|
__esModule: { value: true },
|
|
3
3
|
[Symbol.toStringTag]: { value: "Module" }
|
|
4
4
|
});
|
|
5
|
-
const require_Radio = require("../../Radio-
|
|
5
|
+
const require_Radio = require("../../Radio-BrTzy7-C.cjs");
|
|
6
6
|
exports.Radio = require_Radio.Radio;
|
|
7
7
|
exports.default = require_Radio.Radio;
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import { t as Radio } from "../../Radio-
|
|
1
|
+
import { t as Radio } from "../../Radio-CSX2eO-O.mjs";
|
|
2
2
|
export { Radio, Radio as default };
|
|
@@ -2,6 +2,6 @@ Object.defineProperties(exports, {
|
|
|
2
2
|
__esModule: { value: true },
|
|
3
3
|
[Symbol.toStringTag]: { value: "Module" }
|
|
4
4
|
});
|
|
5
|
-
const require_RadioGroup = require("../../RadioGroup-
|
|
5
|
+
const require_RadioGroup = require("../../RadioGroup-CriF2InQ.cjs");
|
|
6
6
|
exports.RadioGroup = require_RadioGroup.RadioGroup;
|
|
7
7
|
exports.default = require_RadioGroup.RadioGroup;
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import { n as RadioGroupProps, t as RadioGroup } from "../../RadioGroup-
|
|
1
|
+
import { n as RadioGroupProps, t as RadioGroup } from "../../RadioGroup-XYWjprsv.cjs";
|
|
2
2
|
export { RadioGroup, RadioGroup as default, RadioGroupProps };
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import { n as RadioGroupProps, t as RadioGroup } from "../../RadioGroup-
|
|
1
|
+
import { n as RadioGroupProps, t as RadioGroup } from "../../RadioGroup-DKqbSfju.mjs";
|
|
2
2
|
export { RadioGroup, RadioGroup as default, RadioGroupProps };
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import { t as RadioGroup } from "../../RadioGroup-
|
|
1
|
+
import { t as RadioGroup } from "../../RadioGroup-CnK0opBd.mjs";
|
|
2
2
|
export { RadioGroup, RadioGroup as default };
|
|
@@ -2,7 +2,7 @@ Object.defineProperties(exports, {
|
|
|
2
2
|
__esModule: { value: true },
|
|
3
3
|
[Symbol.toStringTag]: { value: "Module" }
|
|
4
4
|
});
|
|
5
|
-
const require_SegmentedControl = require("../../SegmentedControl-
|
|
5
|
+
const require_SegmentedControl = require("../../SegmentedControl-C2XZF0ys.cjs");
|
|
6
6
|
exports.SegmentedControl = require_SegmentedControl.SegmentedControl;
|
|
7
7
|
exports.SegmentedControlItem = require_SegmentedControl.SegmentedControlItem;
|
|
8
8
|
exports.default = require_SegmentedControl.SegmentedControl;
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import { i as SegmentedControlProps, n as SegmentedControlItem, t as SegmentedControl } from "../../SegmentedControl-
|
|
1
|
+
import { i as SegmentedControlProps, n as SegmentedControlItem, t as SegmentedControl } from "../../SegmentedControl-nHIK1ZvR.cjs";
|
|
2
2
|
export { SegmentedControl, SegmentedControl as default, SegmentedControlItem, SegmentedControlProps };
|