@persona/design-system 0.1.5-pre.4 → 0.1.6
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 +42 -111
- package/dist/{Action-B10lxofb.d.mts → Action-DSg3yZck.d.mts} +3 -3
- package/dist/Action.d.mts +1 -1
- package/dist/Attribute.d.mts +4 -4
- package/dist/AttributeGrid.d.mts +1 -1
- package/dist/{Badge-BwAZD9BH.cjs → Badge-CvdUyXSH.cjs} +3 -3
- package/dist/{Badge-BwAZD9BH.cjs.map → Badge-CvdUyXSH.cjs.map} +1 -1
- package/dist/{Badge-BqLnhb4n.mjs → Badge-pq6B-3ue.mjs} +2 -2
- package/dist/{Badge-BqLnhb4n.mjs.map → Badge-pq6B-3ue.mjs.map} +1 -1
- package/dist/Banner.d.mts +1 -1
- package/dist/{Button-DqDLGURJ.d.mts → Button-DcTUxRNI.d.mts} +2 -2
- 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-DeJSt5ys.mjs → Card-CLTkZLKr.mjs} +4 -4
- package/dist/{Card-DeJSt5ys.mjs.map → Card-CLTkZLKr.mjs.map} +1 -1
- package/dist/{Card-CyCKL-M5.cjs → Card-CaOItkgL.cjs} +5 -5
- package/dist/{Card-CyCKL-M5.cjs.map → Card-CaOItkgL.cjs.map} +1 -1
- package/dist/{Card-CcU9cKCd.d.mts → Card-YzGS3nQI.d.mts} +4 -4
- package/dist/Card.d.mts +1 -1
- package/dist/Card2.d.cts +3 -3
- package/dist/Card2.d.mts +1 -1
- package/dist/{Checkbox-D4nv7eNs.cjs → Checkbox-B83WfsOZ.cjs} +6 -6
- package/dist/{Checkbox-D4nv7eNs.cjs.map → Checkbox-B83WfsOZ.cjs.map} +1 -1
- package/dist/{Checkbox-BWJNAP27.d.mts → Checkbox-Bc2kzl9q.d.mts} +1 -1
- package/dist/{Checkbox-C5bGcb-r.mjs → Checkbox-UWdk4pqb.mjs} +5 -5
- package/dist/{Checkbox-C5bGcb-r.mjs.map → Checkbox-UWdk4pqb.mjs.map} +1 -1
- package/dist/Checkbox.d.mts +1 -1
- package/dist/CheckboxGroupField.d.mts +2 -2
- package/dist/{Combobox-DjbJYK_u.d.mts → Combobox-DtD1XXaf.d.mts} +3 -3
- package/dist/Combobox-Dx1u-L1A.d.cts +11 -0
- package/dist/{Combobox-B_-swcix.mjs → Combobox-I44W5oX0.mjs} +26 -30
- package/dist/Combobox-I44W5oX0.mjs.map +1 -0
- package/dist/{Combobox-B_oe33Re.cjs → Combobox-R3_NDBi3.cjs} +18 -22
- package/dist/Combobox-R3_NDBi3.cjs.map +1 -0
- package/dist/Combobox.d.cts +3 -12
- package/dist/Combobox.d.mts +2 -2
- package/dist/{ComboboxBase-D2wypeXf.d.cts → ComboboxBase-d98GJD-k.d.cts} +2 -2
- package/dist/{ComboboxBase-INya0Csa.d.mts → ComboboxBase-sRVxlTJw.d.mts} +7 -7
- package/dist/ComboboxBase.d.cts +1 -1
- package/dist/ComboboxBase.d.mts +1 -1
- package/dist/{ComboboxMultiSelect-Dn8cRZ6Z.d.cts → ComboboxMultiSelect-CRHf5TI-.d.cts} +2 -2
- package/dist/{ComboboxMultiSelect-Dq9DGH8S.d.mts → ComboboxMultiSelect-CdLQDBMN.d.mts} +2 -2
- package/dist/ComboboxMultiSelect.d.cts +1 -1
- package/dist/ComboboxMultiSelect.d.mts +1 -1
- package/dist/{ComboboxSingleSelect-WwBJRb0e.d.mts → ComboboxSingleSelect-CxiQ2o6t.d.mts} +4 -4
- package/dist/{ComboboxSingleSelect-D8YM7GKP.d.cts → ComboboxSingleSelect-DvK8QioK.d.cts} +3 -3
- package/dist/ComboboxSingleSelect.d.cts +1 -1
- package/dist/ComboboxSingleSelect.d.mts +1 -1
- package/dist/CompactBar-ODUl2Q6G.d.cts +21 -0
- package/dist/CompactBar-k-rhZ5Z-.d.mts +21 -0
- package/dist/CompactBar.d.cts +2 -0
- package/dist/CompactBar.d.mts +2 -0
- package/dist/ConfigFormGroup-BhO9nm3P.cjs +35 -0
- package/dist/ConfigFormGroup-BhO9nm3P.cjs.map +1 -0
- package/dist/ConfigFormGroup-_yCksmZo.mjs +28 -0
- package/dist/ConfigFormGroup-_yCksmZo.mjs.map +1 -0
- package/dist/ControlBar-9m-DNImB.d.mts +151 -0
- package/dist/ControlBar-oT-I2y6E.d.cts +151 -0
- package/dist/ControlBar.d.cts +2 -0
- package/dist/ControlBar.d.mts +2 -0
- package/dist/DataTable.d.cts +372 -0
- package/dist/DataTable.d.mts +372 -0
- package/dist/DateField.d.cts +23 -2
- package/dist/DateField.d.mts +23 -2
- package/dist/DatePicker.d.cts +1 -1
- package/dist/DatePicker.d.mts +2 -2
- package/dist/DateRangePicker.d.cts +2 -1
- package/dist/DateRangePicker.d.mts +4 -4
- package/dist/{DropdownButton-k9kEcexu.mjs → DropdownButton-BS1QfVX_.mjs} +3 -4
- package/dist/{DropdownButton-k9kEcexu.mjs.map → DropdownButton-BS1QfVX_.mjs.map} +1 -1
- package/dist/{DropdownButton-DO4NqvWR.cjs → DropdownButton-Dpiy5v-R.cjs} +4 -5
- package/dist/{DropdownButton-DO4NqvWR.cjs.map → DropdownButton-Dpiy5v-R.cjs.map} +1 -1
- package/dist/DropdownButton.d.cts +1 -1
- package/dist/DropdownButton.d.mts +2 -2
- package/dist/{DropdownMenu-rWgROxQe.d.mts → DropdownMenu-COkpUmIO.d.mts} +4 -4
- package/dist/{DropdownMenu-D2fzpkX2.cjs → DropdownMenu-CeqZAxjs.cjs} +4 -4
- package/dist/{DropdownMenu-D2fzpkX2.cjs.map → DropdownMenu-CeqZAxjs.cjs.map} +1 -1
- package/dist/{DropdownMenu-Bm2QqLEq.d.cts → DropdownMenu-D1E1jpZu.d.cts} +3 -3
- package/dist/{DropdownMenu-BTk--LWo.mjs → DropdownMenu-cN_AnKAT.mjs} +3 -3
- package/dist/{DropdownMenu-BTk--LWo.mjs.map → DropdownMenu-cN_AnKAT.mjs.map} +1 -1
- package/dist/DropdownMenu.d.cts +1 -1
- package/dist/DropdownMenu.d.mts +1 -1
- package/dist/{ErrorProps-DYUKygmd.d.mts → ErrorProps-DBw1_Z0a.d.mts} +1 -1
- package/dist/ErrorProps.d.mts +1 -1
- package/dist/FloatingActionBar.d.cts +40 -0
- package/dist/FloatingActionBar.d.mts +41 -0
- package/dist/{FormControl-DiR2e7Od.cjs → FormControl-DjxkL5Ft.cjs} +6 -6
- package/dist/{FormControl-DiR2e7Od.cjs.map → FormControl-DjxkL5Ft.cjs.map} +1 -1
- package/dist/{FormControl-KkeIYuBa.d.cts → FormControl-OqBTbSwv.d.cts} +1 -1
- package/dist/{FormControl-BXHqI_2D.mjs → FormControl-fK4HA_yF.mjs} +5 -5
- package/dist/{FormControl-BXHqI_2D.mjs.map → FormControl-fK4HA_yF.mjs.map} +1 -1
- package/dist/{FormControl-CM7wTn1P.d.mts → FormControl-vfFzrYhv.d.mts} +3 -3
- package/dist/FormControl.d.cts +1 -1
- package/dist/FormControl.d.mts +1 -1
- package/dist/FormControlLabel.d.mts +14 -0
- package/dist/{FormField-CdMru4s5.d.mts → FormField-24UPuoL6.d.mts} +2 -2
- package/dist/{FormField-19ownwjH.d.cts → FormField-Cqwi_PyR.d.cts} +2 -2
- package/dist/FormField.d.cts +1 -1
- package/dist/FormField.d.mts +1 -1
- package/dist/{Header-t1plnZc0.d.mts → Header-WNGlG541.d.mts} +2 -2
- package/dist/Header.d.mts +1 -1
- package/dist/{HelperTooltip-Cd7I0Ucq.d.mts → HelperTooltip-Bd5pQLqL.d.mts} +3 -3
- package/dist/HelperTooltip.d.mts +1 -1
- package/dist/HoverCopyableField-DBkYvwii.mjs +103 -0
- package/dist/HoverCopyableField-DBkYvwii.mjs.map +1 -0
- package/dist/HoverCopyableField-DyW2iZuo.cjs +110 -0
- package/dist/HoverCopyableField-DyW2iZuo.cjs.map +1 -0
- package/dist/HoverCopyableField.d.cts +16 -0
- package/dist/HoverCopyableField.d.mts +17 -0
- package/dist/{IconButton-C28qxOdi.mjs → IconButton-DC4rh6ow.mjs} +5 -5
- package/dist/{IconButton-C28qxOdi.mjs.map → IconButton-DC4rh6ow.mjs.map} +1 -1
- package/dist/{IconButton-B1ZL8BqW.cjs → IconButton-DNy7g5zh.cjs} +5 -5
- package/dist/{IconButton-B1ZL8BqW.cjs.map → IconButton-DNy7g5zh.cjs.map} +1 -1
- package/dist/{IconButton-DsXbc3nQ.d.mts → IconButton-DggxojBH.d.mts} +2 -2
- package/dist/IconButton.d.mts +1 -1
- package/dist/ImageTile.d.mts +2 -2
- package/dist/InlineCombobox.d.mts +42 -0
- package/dist/InlineInput.d.mts +36 -0
- package/dist/{Input-eoFk39bE.mjs → Input-Bl7633Ux.mjs} +5 -6
- package/dist/{Input-eoFk39bE.mjs.map → Input-Bl7633Ux.mjs.map} +1 -1
- package/dist/{Input-DHOsR4cl.cjs → Input-DQS-BEym.cjs} +6 -7
- package/dist/{Input-DHOsR4cl.cjs.map → Input-DQS-BEym.cjs.map} +1 -1
- package/dist/{Input-Cv5qieRg.d.mts → Input-DW7oacjc.d.mts} +5 -5
- package/dist/Input.d.mts +1 -1
- package/dist/{InputProps-CitGo8QA.d.cts → InputProps-7rEMxBED.d.cts} +1 -1
- package/dist/{InputProps-BHu05fX0.d.mts → InputProps-DQpb2_E3.d.mts} +2 -2
- package/dist/InputProps.d.cts +1 -1
- package/dist/InputProps.d.mts +1 -1
- package/dist/Inserter.d.cts +12 -0
- package/dist/Inserter.d.mts +12 -0
- package/dist/Link.d.mts +1 -1
- package/dist/{ListBox-CE3mfDSB.cjs → ListBox-B4uoo_PT.cjs} +10 -14
- package/dist/{ListBox-CE3mfDSB.cjs.map → ListBox-B4uoo_PT.cjs.map} +1 -1
- package/dist/{ListBox-Z1y0LG1H.mjs → ListBox-B7sbubm5.mjs} +9 -13
- package/dist/{ListBox-Z1y0LG1H.mjs.map → ListBox-B7sbubm5.mjs.map} +1 -1
- package/dist/{ListBox-AyjzT6ra.d.mts → ListBox-CVvKa5sc.d.mts} +4 -4
- package/dist/{ListBox-DbyZFy2W.d.cts → ListBox-DeVmbXeC.d.cts} +2 -2
- 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-CNE6JUVF.mjs → LoadingShimmer-b430vgof.mjs} +2 -2
- package/dist/{LoadingShimmer-CNE6JUVF.mjs.map → LoadingShimmer-b430vgof.mjs.map} +1 -1
- package/dist/{LoadingShimmer-DMK9RC4N.cjs → LoadingShimmer-uG2UzYQd.cjs} +4 -4
- package/dist/{LoadingShimmer-DMK9RC4N.cjs.map → LoadingShimmer-uG2UzYQd.cjs.map} +1 -1
- package/dist/LoadingShimmer.d.mts +2 -2
- package/dist/MaskedInput.d.cts +1 -1
- package/dist/MaskedInput.d.mts +1 -1
- package/dist/{Menu-BpkjNO81.cjs → Menu-BLbEcodU.cjs} +4 -4
- package/dist/{Menu-BpkjNO81.cjs.map → Menu-BLbEcodU.cjs.map} +1 -1
- package/dist/{Menu-DNRHo2i_.mjs → Menu-BbSyWxFD.mjs} +3 -3
- package/dist/{Menu-DNRHo2i_.mjs.map → Menu-BbSyWxFD.mjs.map} +1 -1
- package/dist/{Menu-DIFkRQ6x.d.mts → Menu-CSgCXX0k.d.mts} +4 -4
- package/dist/{Menu-DPrNMatb.d.cts → Menu-C_NOsHAm.d.cts} +2 -2
- package/dist/Menu.d.cts +1 -1
- package/dist/Menu.d.mts +1 -1
- package/dist/MiddleTruncatedText-BIzKECv9.cjs +178 -0
- package/dist/MiddleTruncatedText-BIzKECv9.cjs.map +1 -0
- package/dist/MiddleTruncatedText-Bzpg3zAU.mjs +171 -0
- package/dist/MiddleTruncatedText-Bzpg3zAU.mjs.map +1 -0
- package/dist/Modal.d.mts +2 -2
- package/dist/PageHeader.d.mts +1 -1
- package/dist/PageSelector-COqR1tdA.d.cts +30 -0
- package/dist/PageSelector-mn6q4SKY.d.mts +30 -0
- package/dist/PageSelector.d.cts +2 -30
- package/dist/PageSelector.d.mts +2 -30
- package/dist/Pagination-BUjpYIwq.d.mts +33 -0
- package/dist/Pagination-CeoHVtYD.d.cts +33 -0
- package/dist/Pagination-DEZFb552.cjs +232 -0
- package/dist/Pagination-DEZFb552.cjs.map +1 -0
- package/dist/Pagination-F8ofIWnG.mjs +201 -0
- package/dist/Pagination-F8ofIWnG.mjs.map +1 -0
- package/dist/Pagination.d.cts +2 -33
- package/dist/Pagination.d.mts +2 -33
- package/dist/Pii--c8IxKI0.cjs +25 -0
- package/dist/Pii--c8IxKI0.cjs.map +1 -0
- package/dist/Pii-B_gBVAak.mjs +19 -0
- package/dist/Pii-B_gBVAak.mjs.map +1 -0
- package/dist/Pii.d.mts +1 -1
- package/dist/{Popover-BSdyxuja.mjs → Popover-D4_aqKlm.mjs} +5 -5
- package/dist/{Popover-BSdyxuja.mjs.map → Popover-D4_aqKlm.mjs.map} +1 -1
- package/dist/{Popover-C2dBSwiU.cjs → Popover-jHZICnQt.cjs} +5 -5
- package/dist/{Popover-C2dBSwiU.cjs.map → Popover-jHZICnQt.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-mZgO_iZJ.d.mts → PseudoClassProps--MiDp2l2.d.mts} +1 -1
- package/dist/PseudoClassProps.d.mts +1 -1
- package/dist/{Radio-mFfT6G3d.cjs → Radio-BN9FLRHy.cjs} +4 -4
- package/dist/{Radio-mFfT6G3d.cjs.map → Radio-BN9FLRHy.cjs.map} +1 -1
- package/dist/{Radio-w-L3Otuk.mjs → Radio-DnnJl87b.mjs} +3 -3
- package/dist/{Radio-w-L3Otuk.mjs.map → Radio-DnnJl87b.mjs.map} +1 -1
- package/dist/{RadioGroup-B8htTzsS.mjs → RadioGroup-BDHhFlmy.mjs} +3 -3
- package/dist/{RadioGroup-B8htTzsS.mjs.map → RadioGroup-BDHhFlmy.mjs.map} +1 -1
- package/dist/{RadioGroup-D5ueuC6a.d.cts → RadioGroup-BDO3pTgP.d.cts} +1 -1
- package/dist/{RadioGroup-BjDmweRK.cjs → RadioGroup-D28hdlhz.cjs} +4 -4
- package/dist/{RadioGroup-BjDmweRK.cjs.map → RadioGroup-D28hdlhz.cjs.map} +1 -1
- package/dist/{RadioGroup-Ls0vPsP_.d.mts → RadioGroup-DfhvXpi3.d.mts} +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 +2 -2
- package/dist/SearchInput-2lsv5_R6.d.mts +46 -0
- package/dist/SearchInput-B6d2Qyzb.d.cts +46 -0
- package/dist/SearchInput.d.cts +2 -0
- package/dist/SearchInput.d.mts +2 -0
- package/dist/Section.d.mts +1 -1
- package/dist/{SectionHeading-QvAmhVmD.d.mts → SectionHeading-BLDimf5d.d.mts} +5 -6
- package/dist/{SectionHeading-DVSXofwK.d.cts → SectionHeading-DZyfNPn0.d.cts} +4 -5
- package/dist/SectionHeading.d.cts +1 -1
- package/dist/SectionHeading.d.mts +1 -1
- package/dist/{SegmentedControl-Dk5S4Dhz.d.mts → SegmentedControl-1QD2zH3l.d.mts} +1 -1
- package/dist/{SegmentedControl-DRtXdbLe.d.cts → SegmentedControl-C51htGBp.d.cts} +1 -1
- package/dist/{SegmentedControl-CvznPXgC.cjs → SegmentedControl-DTkFgjac.cjs} +4 -4
- package/dist/{SegmentedControl-CvznPXgC.cjs.map → SegmentedControl-DTkFgjac.cjs.map} +1 -1
- package/dist/{SegmentedControl-DnwNjYre.mjs → SegmentedControl-pRkMcMXe.mjs} +3 -3
- package/dist/{SegmentedControl-DnwNjYre.mjs.map → SegmentedControl-pRkMcMXe.mjs.map} +1 -1
- package/dist/SegmentedControl.d.cts +1 -1
- package/dist/SegmentedControl.d.mts +1 -1
- package/dist/{Select-DRnRqMAL.d.mts → Select-BysJW9mH.d.mts} +5 -5
- package/dist/{Select-CVB-Q1g1.cjs → Select-CowngLd7.cjs} +9 -13
- package/dist/{Select-CVB-Q1g1.cjs.map → Select-CowngLd7.cjs.map} +1 -1
- package/dist/{Select-Cl3AOq0-.mjs → Select-Fg2z5J-p.mjs} +9 -13
- package/dist/{Select-Cl3AOq0-.mjs.map → Select-Fg2z5J-p.mjs.map} +1 -1
- package/dist/{Select-BdPdgtfU.d.cts → Select-XN23Ui_j.d.cts} +3 -3
- package/dist/Select.d.cts +1 -1
- package/dist/Select.d.mts +1 -1
- package/dist/Slider.d.cts +51 -2
- package/dist/Slider.d.mts +51 -2
- package/dist/SliderRHF.d.cts +18 -2
- package/dist/SliderRHF.d.mts +19 -2
- package/dist/SliderThumb.d.mts +2 -119
- package/dist/{Spacer-DWGkX170.cjs → Spacer-GYHbk-dS.cjs} +2 -2
- package/dist/{Spacer-DWGkX170.cjs.map → Spacer-GYHbk-dS.cjs.map} +1 -1
- package/dist/{Spacer-DxH_sQrV.mjs → Spacer-Ln3KChb5.mjs} +1 -1
- package/dist/{Spacer-DxH_sQrV.mjs.map → Spacer-Ln3KChb5.mjs.map} +1 -1
- package/dist/{Spinner-C05An_fn.mjs → Spinner-D9-u_5zS.mjs} +1 -1
- package/dist/Spinner-D9-u_5zS.mjs.map +1 -0
- package/dist/{Spinner-z7DrPE1d.cjs → Spinner-DaSlM4kU.cjs} +2 -2
- package/dist/Spinner-DaSlM4kU.cjs.map +1 -0
- package/dist/{Stack-toDRLy--.d.cts → Stack-B5VYkPBe.d.cts} +5 -5
- package/dist/{Stack-BHb3ZB2A.cjs → Stack-BF-9YjA1.cjs} +2 -2
- package/dist/Stack-BF-9YjA1.cjs.map +1 -0
- package/dist/{Stack-BntgUvsW.d.mts → Stack-Du7tLSPC.d.mts} +6 -6
- package/dist/{Stack-hwgS2FU1.mjs → Stack-ckRN7LrP.mjs} +1 -1
- package/dist/Stack-ckRN7LrP.mjs.map +1 -0
- package/dist/Stack.d.cts +1 -1
- package/dist/Stack.d.mts +1 -1
- package/dist/StatusIndicator.d.mts +1 -1
- package/dist/{Sticker-D6bwBTGr.mjs → Sticker-B0TbkV4o.mjs} +3 -5
- package/dist/{Sticker-D6bwBTGr.mjs.map → Sticker-B0TbkV4o.mjs.map} +1 -1
- package/dist/{Sticker-D_dutvp_.cjs → Sticker-D0jIU2Dt.cjs} +4 -6
- package/dist/{Sticker-D_dutvp_.cjs.map → Sticker-D0jIU2Dt.cjs.map} +1 -1
- package/dist/{Sticker-S6QWjlEJ.d.cts → Sticker-D9HjFQ6e.d.cts} +3 -3
- package/dist/{Sticker-Bd7KkekO.d.mts → Sticker-XfyoDEod.d.mts} +5 -5
- package/dist/Sticker.d.cts +1 -1
- package/dist/Sticker.d.mts +1 -1
- package/dist/StyledIconDrag.d.mts +13 -0
- package/dist/SwatchPicker.d.mts +1 -1
- package/dist/Tab.d.mts +2 -2
- package/dist/{TabBar-Bf89XksH.mjs → TabBar-CAv10XAF.mjs} +6 -7
- package/dist/TabBar-CAv10XAF.mjs.map +1 -0
- package/dist/{TabBar-BMv8dAS3.cjs → TabBar-D8WCGYd5.cjs} +7 -8
- package/dist/TabBar-D8WCGYd5.cjs.map +1 -0
- package/dist/TabBarIconButton.d.mts +1 -1
- package/dist/Table-B3FJsvXP.cjs +478 -0
- package/dist/Table-B3FJsvXP.cjs.map +1 -0
- package/dist/{Table-DkAA1lt_.d.cts → Table-C8D4lpSa.d.mts} +1 -1
- package/dist/Table-CGtyWI6V.mjs +387 -0
- package/dist/Table-CGtyWI6V.mjs.map +1 -0
- package/dist/{Table-34f5m7w5.d.mts → Table-D4SMuVIR.d.cts} +1 -1
- package/dist/Table.d.cts +1 -1
- package/dist/Table.d.mts +1 -1
- package/dist/{TableBody-5QcVMPP_.d.cts → TableBody-0cd50RuX.d.mts} +1 -1
- package/dist/{TableBody-Clf34yzJ.d.mts → TableBody-BLmn5h3y.d.cts} +1 -1
- package/dist/TableBody.d.cts +1 -1
- package/dist/TableBody.d.mts +1 -1
- package/dist/TableBox-CPCWzwSl.mjs +1188 -0
- package/dist/TableBox-CPCWzwSl.mjs.map +1 -0
- package/dist/TableBox-D_B9atn2.cjs +1202 -0
- package/dist/TableBox-D_B9atn2.cjs.map +1 -0
- package/dist/TableBox.d.cts +3 -0
- package/dist/TableBox.d.mts +3 -0
- package/dist/TableBoxCell-CEvOcGYa.d.mts +242 -0
- package/dist/TableBoxCell-DJz423uN.d.cts +242 -0
- package/dist/TableBoxCell.d.cts +2 -0
- package/dist/TableBoxCell.d.mts +2 -0
- package/dist/TableBoxField.d.cts +84 -0
- package/dist/TableBoxField.d.mts +85 -0
- package/dist/TableBoxRow-CZwVgei6.d.cts +77 -0
- package/dist/TableBoxRow-LyHvITwZ.d.mts +77 -0
- package/dist/TableBoxRow.d.cts +2 -0
- package/dist/TableBoxRow.d.mts +2 -0
- package/dist/TableBoxRowActions-C8SAxrYG.d.mts +57 -0
- package/dist/TableBoxRowActions-VDAOxNDG.d.cts +57 -0
- package/dist/TableBoxRowActions.d.cts +2 -0
- package/dist/TableBoxRowActions.d.mts +2 -0
- package/dist/TableBoxRowContext.d.mts +20 -0
- package/dist/TableCell.d.cts +1 -1
- package/dist/TableCell.d.mts +1 -1
- package/dist/TableControls-B2ZsNlr6.mjs +1029 -0
- package/dist/TableControls-B2ZsNlr6.mjs.map +1 -0
- package/dist/TableControls-B4gpAvl7.d.mts +70 -0
- package/dist/TableControls-B7QEAzru.cjs +1080 -0
- package/dist/TableControls-B7QEAzru.cjs.map +1 -0
- package/dist/TableControls-BG0OKwjj.d.cts +70 -0
- package/dist/TableControls.d.cts +2 -0
- package/dist/TableControls.d.mts +2 -0
- package/dist/TableControlsContext-CanIAaLW.d.cts +21 -0
- package/dist/TableControlsContext-NdzzGevw.d.mts +21 -0
- package/dist/TableControlsContext.d.cts +2 -0
- package/dist/TableControlsContext.d.mts +2 -0
- package/dist/{TableHead-9LLM1B8I.d.cts → TableHead-CuHNOeCj.d.mts} +1 -1
- package/dist/{TableHead-DJBGHoUD.d.mts → TableHead-roexW17v.d.cts} +1 -1
- package/dist/TableHead.d.cts +1 -1
- package/dist/TableHead.d.mts +1 -1
- package/dist/{TableHeaderCell-25lC9tNk.d.cts → TableHeaderCell-BTGuqVXy.d.cts} +1 -1
- package/dist/{TableHeaderCell-DzYZq7SG.d.mts → TableHeaderCell-Cflho9R2.d.mts} +1 -1
- package/dist/TableHeaderCell.d.cts +1 -1
- package/dist/TableHeaderCell.d.mts +1 -1
- package/dist/{TableLayout-BA3jbdbi.d.mts → TableLayout-BvVsuUVb.d.cts} +1 -1
- package/dist/{TableLayout-CmDKOu10.d.cts → TableLayout-D9BGrjRs.d.mts} +1 -1
- package/dist/TableLayout.d.cts +1 -1
- package/dist/TableLayout.d.mts +1 -1
- package/dist/{TableRow-IPjQnK2q.d.cts → TableRow-BfGJSGZH.d.cts} +1 -1
- package/dist/{TableRow-CBKpDeUV.d.mts → TableRow-CjQmDmfx.d.mts} +2 -2
- 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-BaQ1IsYM.d.cts +32 -0
- package/dist/TableViewConfigurationDropdown-DMeFkVUa.d.mts +32 -0
- package/dist/TableViewConfigurationDropdown.d.cts +2 -0
- package/dist/TableViewConfigurationDropdown.d.mts +2 -0
- package/dist/TechnicalSticker.d.cts +51 -0
- package/dist/TechnicalSticker.d.mts +51 -0
- package/dist/{Text-CnXedFut.d.mts → Text-CPd0r0w2.d.mts} +3 -3
- package/dist/{Text-DVz8erdF.cjs → Text-CzN0DOXV.cjs} +2 -2
- package/dist/{Text-DVz8erdF.cjs.map → Text-CzN0DOXV.cjs.map} +1 -1
- package/dist/{Text-DOTYjIt0.mjs → Text-hEoPeOc9.mjs} +1 -1
- package/dist/{Text-DOTYjIt0.mjs.map → Text-hEoPeOc9.mjs.map} +1 -1
- package/dist/Text.d.mts +1 -1
- package/dist/{TextArea-B1kitxCl.mjs → TextArea-CJJlw3rV.mjs} +3 -3
- package/dist/{TextArea-B1kitxCl.mjs.map → TextArea-CJJlw3rV.mjs.map} +1 -1
- package/dist/{TextArea-1bHvaq9p.d.mts → TextArea-Dl9_Zizx.d.cts} +2 -2
- package/dist/{TextArea-j43fhp2P.d.cts → TextArea-J1MD_8rK.d.mts} +2 -2
- package/dist/{TextArea-MVgGGM6r.cjs → TextArea-p3oek3Zq.cjs} +4 -4
- package/dist/{TextArea-MVgGGM6r.cjs.map → TextArea-p3oek3Zq.cjs.map} +1 -1
- package/dist/TextArea.d.cts +1 -1
- package/dist/TextArea.d.mts +1 -1
- package/dist/{TextUnderlineTooltip-z4sSGL91.d.mts → TextUnderlineTooltip-D8GFsk5C.d.mts} +3 -3
- 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 +2 -6
- package/dist/Toast.d.mts +2 -6
- package/dist/{Toggle-CVdg5iQ0.cjs → Toggle-7o-n5vF6.cjs} +6 -6
- package/dist/{Toggle-CVdg5iQ0.cjs.map → Toggle-7o-n5vF6.cjs.map} +1 -1
- package/dist/{Toggle-B3Cdyf7T.d.mts → Toggle-CY67yh4T.d.mts} +1 -1
- package/dist/{Toggle-8GNRxyvE.mjs → Toggle-DOo0cLmI.mjs} +5 -5
- package/dist/{Toggle-8GNRxyvE.mjs.map → Toggle-DOo0cLmI.mjs.map} +1 -1
- package/dist/{Toggle-BjkbL_uf.d.cts → Toggle-Dw4hisXm.d.cts} +1 -1
- package/dist/Toggle.d.cts +1 -1
- package/dist/Toggle.d.mts +1 -1
- package/dist/{Tooltip-T7RQpy_a.mjs → Tooltip-CDvOu1UN.mjs} +3 -3
- package/dist/{Tooltip-T7RQpy_a.mjs.map → Tooltip-CDvOu1UN.mjs.map} +1 -1
- package/dist/{Tooltip-C0PS5InA.d.mts → Tooltip-DtWJO_kU.d.mts} +3 -3
- package/dist/{Tooltip-0i_15ysU.cjs → Tooltip-vylydKVv.cjs} +4 -4
- package/dist/{Tooltip-0i_15ysU.cjs.map → Tooltip-vylydKVv.cjs.map} +1 -1
- package/dist/Tooltip.d.mts +1 -1
- package/dist/{TruncatedText-D8f3AiBL.d.cts → TruncatedText-BBoWmFii.d.mts} +2 -2
- package/dist/{TruncatedText-0Tf8CwFX.d.mts → TruncatedText-DMpR-yaJ.d.cts} +2 -2
- package/dist/{chunk-CoPdw6nB.cjs → chunk-CKQMccvm.cjs} +0 -36
- package/dist/components/Attribute/index.cjs +8 -8
- package/dist/components/Attribute/index.cjs.map +1 -1
- package/dist/components/Attribute/index.mjs +10 -10
- package/dist/components/Attribute/index.mjs.map +1 -1
- package/dist/components/Badge/index.cjs +1 -2
- package/dist/components/Badge/index.mjs +1 -1
- package/dist/components/Banner/index.cjs +2 -3
- package/dist/components/Banner/index.cjs.map +1 -1
- package/dist/components/Banner/index.mjs +1 -2
- package/dist/components/Banner/index.mjs.map +1 -1
- package/dist/components/Button/index.cjs +1 -2
- package/dist/components/Button/index.d.mts +2 -2
- package/dist/components/Button/index.mjs +1 -1
- package/dist/components/ButtonGroup/index.cjs +4 -4
- package/dist/components/ButtonGroup/index.cjs.map +1 -1
- package/dist/components/ButtonGroup/index.mjs +3 -3
- package/dist/components/ButtonGroup/index.mjs.map +1 -1
- package/dist/components/Card/index.cjs +1 -2
- package/dist/components/Card/index.d.mts +2 -2
- package/dist/components/Card/index.mjs +1 -1
- package/dist/components/CardV2/index.cjs +13 -89
- package/dist/components/CardV2/index.cjs.map +1 -1
- package/dist/components/CardV2/index.d.mts +1 -1
- package/dist/components/CardV2/index.mjs +17 -100
- package/dist/components/CardV2/index.mjs.map +1 -1
- package/dist/components/Checkbox/index.cjs +1 -2
- package/dist/components/Checkbox/index.d.mts +1 -1
- package/dist/components/Checkbox/index.mjs +1 -1
- package/dist/components/Combobox/index.cjs +1 -2
- package/dist/components/Combobox/index.d.cts +3 -3
- package/dist/components/Combobox/index.d.mts +3 -3
- package/dist/components/Combobox/index.mjs +1 -1
- package/dist/components/ConfigFormGroup/index.cjs +4 -31
- package/dist/components/ConfigFormGroup/index.mjs +2 -27
- package/dist/components/DataTable/TableControls/index.cjs +13 -0
- package/dist/components/DataTable/TableControls/index.d.cts +6 -0
- package/dist/components/DataTable/TableControls/index.d.mts +6 -0
- package/dist/components/DataTable/TableControls/index.mjs +2 -0
- package/dist/components/DataTable/index.cjs +1435 -0
- package/dist/components/DataTable/index.cjs.map +1 -0
- package/dist/components/DataTable/index.d.cts +8 -0
- package/dist/components/DataTable/index.d.mts +8 -0
- package/dist/components/DataTable/index.mjs +1408 -0
- package/dist/components/DataTable/index.mjs.map +1 -0
- package/dist/components/DataTable/types.d.cts +159 -0
- package/dist/components/DataTable/types.d.mts +159 -0
- package/dist/components/DataTable/types.mjs +0 -0
- package/dist/components/DatePicker/index.cjs +235 -10836
- package/dist/components/DatePicker/index.cjs.map +1 -1
- package/dist/components/DatePicker/index.d.cts +1 -1
- package/dist/components/DatePicker/index.d.mts +1 -1
- package/dist/components/DatePicker/index.mjs +230 -10830
- package/dist/components/DatePicker/index.mjs.map +1 -1
- package/dist/components/DropdownButton/index.cjs +1 -2
- package/dist/components/DropdownButton/index.mjs +1 -1
- package/dist/components/DropdownMenu/index.cjs +1 -2
- 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 -3
- 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 +109 -22
- package/dist/components/FormField/index.cjs.map +1 -1
- package/dist/components/FormField/index.d.cts +3 -2
- package/dist/components/FormField/index.d.mts +3 -2
- package/dist/components/FormField/index.mjs +109 -23
- package/dist/components/FormField/index.mjs.map +1 -1
- package/dist/components/HoverCopyableField/index.cjs +2 -0
- package/dist/components/HoverCopyableField/index.d.cts +2 -0
- package/dist/components/HoverCopyableField/index.d.mts +2 -0
- package/dist/components/HoverCopyableField/index.mjs +2 -0
- package/dist/components/ImageTile/index.cjs +9 -12
- package/dist/components/ImageTile/index.cjs.map +1 -1
- package/dist/components/ImageTile/index.mjs +8 -11
- package/dist/components/ImageTile/index.mjs.map +1 -1
- package/dist/components/Input/index.cjs +1 -2
- package/dist/components/Input/index.cjs.map +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 +2 -2
- package/dist/components/Link/index.cjs.map +1 -1
- package/dist/components/Link/index.mjs +1 -1
- package/dist/components/Link/index.mjs.map +1 -1
- package/dist/components/ListBox/index.cjs +1 -2
- package/dist/components/ListBox/index.d.cts +1 -1
- package/dist/components/ListBox/index.d.mts +1 -1
- package/dist/components/ListBox/index.mjs +1 -1
- package/dist/components/LoadingShimmer/index.cjs +1 -2
- package/dist/components/LoadingShimmer/index.mjs +1 -1
- package/dist/components/MaskedInput/index.cjs +3 -3
- package/dist/components/MaskedInput/index.mjs +2 -2
- package/dist/components/MatchHighlight/index.cjs +1 -1
- package/dist/components/MatchHighlight/index.cjs.map +1 -1
- package/dist/components/MatchHighlight/index.mjs.map +1 -1
- package/dist/components/Menu/index.cjs +1 -2
- 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 +31 -30
- package/dist/components/Modal/index.cjs.map +1 -1
- package/dist/components/Modal/index.mjs +30 -29
- package/dist/components/Modal/index.mjs.map +1 -1
- package/dist/components/PageHeader/index.cjs +2 -2
- package/dist/components/PageHeader/index.cjs.map +1 -1
- package/dist/components/PageHeader/index.mjs +1 -1
- package/dist/components/PageHeader/index.mjs.map +1 -1
- package/dist/components/Pagination/index.cjs +6 -207
- package/dist/components/Pagination/index.d.cts +4 -3
- package/dist/components/Pagination/index.d.mts +4 -3
- package/dist/components/Pagination/index.mjs +2 -203
- package/dist/components/Pii/index.cjs +2 -20
- package/dist/components/Pii/index.mjs +1 -18
- package/dist/components/Popover/index.cjs +1 -2
- package/dist/components/Popover/index.mjs +1 -1
- package/dist/components/ProgressBar/index.cjs +2 -2
- package/dist/components/ProgressBar/index.cjs.map +1 -1
- package/dist/components/ProgressBar/index.mjs +1 -1
- package/dist/components/ProgressBar/index.mjs.map +1 -1
- package/dist/components/ProgressIndicator/index.cjs +1 -1
- package/dist/components/ProgressIndicator/index.cjs.map +1 -1
- package/dist/components/ProgressIndicator/index.mjs.map +1 -1
- package/dist/components/Radio/index.cjs +1 -2
- package/dist/components/Radio/index.mjs +1 -1
- package/dist/components/RadioGroup/index.cjs +1 -2
- 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 -2
- 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 -2
- 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 +20 -1282
- package/dist/components/Slider/index.cjs.map +1 -1
- package/dist/components/Slider/index.d.cts +2 -2
- package/dist/components/Slider/index.d.mts +2 -2
- package/dist/components/Slider/index.mjs +18 -1279
- package/dist/components/Slider/index.mjs.map +1 -1
- package/dist/components/Spacer/index.cjs +1 -2
- package/dist/components/Spacer/index.mjs +1 -1
- package/dist/components/Spinner/index.cjs +1 -2
- package/dist/components/Spinner/index.mjs +1 -1
- package/dist/components/Stack/index.cjs +1 -2
- 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 +1 -1
- package/dist/components/StatusIndicator/index.cjs.map +1 -1
- package/dist/components/StatusIndicator/index.mjs.map +1 -1
- package/dist/components/Sticker/index.cjs +1 -2
- 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/SwatchPicker/index.cjs +3 -5
- package/dist/components/SwatchPicker/index.cjs.map +1 -1
- package/dist/components/SwatchPicker/index.mjs +2 -4
- package/dist/components/SwatchPicker/index.mjs.map +1 -1
- package/dist/components/TabBar/index.cjs +1 -2
- package/dist/components/TabBar/index.mjs +1 -1
- package/dist/components/Table/index.cjs +17 -396
- 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 -378
- package/dist/components/TableBox/index.cjs +7 -0
- package/dist/components/TableBox/index.d.cts +3 -0
- package/dist/components/TableBox/index.d.mts +3 -0
- package/dist/components/TableBox/index.mjs +2 -0
- package/dist/components/TechnicalSticker/index.cjs +239 -0
- package/dist/components/TechnicalSticker/index.cjs.map +1 -0
- package/dist/components/TechnicalSticker/index.d.cts +2 -0
- package/dist/components/TechnicalSticker/index.d.mts +2 -0
- package/dist/components/TechnicalSticker/index.mjs +232 -0
- package/dist/components/TechnicalSticker/index.mjs.map +1 -0
- package/dist/components/Text/index.cjs +1 -2
- package/dist/components/Text/index.d.mts +1 -1
- package/dist/components/Text/index.mjs +1 -1
- package/dist/components/TextArea/index.cjs +1 -2
- 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 +5 -6
- package/dist/components/Tile/index.cjs.map +1 -1
- package/dist/components/Tile/index.mjs +4 -5
- package/dist/components/Tile/index.mjs.map +1 -1
- package/dist/components/Toast/index.cjs +5 -12
- package/dist/components/Toast/index.cjs.map +1 -1
- package/dist/components/Toast/index.d.cts +2 -2
- package/dist/components/Toast/index.d.mts +2 -2
- package/dist/components/Toast/index.mjs +4 -10
- package/dist/components/Toast/index.mjs.map +1 -1
- package/dist/components/Toggle/index.cjs +1 -2
- 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 -2
- package/dist/components/Tooltip/index.d.mts +3 -3
- package/dist/components/Tooltip/index.mjs +1 -1
- package/dist/constants-CnkpDWTv.d.mts +6 -0
- package/dist/constants-D5CkrHza.d.cts +6 -0
- package/dist/constants.d.cts +2 -0
- package/dist/constants.d.mts +2 -5
- package/dist/constants2.d.cts +10 -0
- package/dist/constants2.d.mts +10 -0
- package/dist/helpers.d.cts +76 -0
- package/dist/helpers.d.mts +76 -0
- package/dist/{TableCell-DIs9h97h.d.cts → index-Bp3vEph6.d.cts} +3 -3
- package/dist/{TableCell-Dog4Blfq.d.mts → index-BwWgmaXZ.d.mts} +4 -4
- package/dist/index-c55Utzva.d.mts +1 -0
- package/dist/index-dC-i2r_u.d.cts +1 -0
- package/dist/index-e6k85DKM.d.mts +1 -0
- package/dist/index-gpCH5158.d.mts +1 -0
- package/dist/index-kDNN3kX_2.d.mts +1 -0
- package/dist/index-luywJTzJ.d.mts +1 -0
- package/dist/index-qCd8f7Um.d.cts +1 -0
- package/dist/index-uTS5iDq_.d.cts +1 -0
- package/dist/index.cjs +0 -1
- package/dist/index.d.mts +1 -1
- package/dist/index2.d.cts +2 -1
- package/dist/index2.d.mts +2 -1
- package/dist/index3.d.cts +1 -0
- package/dist/index3.d.mts +1 -0
- package/dist/{input-BCmP106-.d.mts → input-FEaQ66an.d.mts} +3 -3
- package/dist/inputFields.d.cts +8 -8
- package/dist/inputFields.d.mts +11 -11
- package/dist/lib/ConfigContext.cjs +1 -1
- package/dist/lib/GlobalStyles.cjs +57 -0
- package/dist/lib/GlobalStyles.cjs.map +1 -0
- package/dist/lib/GlobalStyles.d.cts +8 -0
- package/dist/lib/GlobalStyles.d.mts +8 -0
- package/dist/lib/GlobalStyles.mjs +51 -0
- package/dist/lib/GlobalStyles.mjs.map +1 -0
- package/dist/lib/HeadlessAriaButton.cjs +1 -1
- package/dist/lib/MiddleTruncatedText.cjs +7 -0
- package/dist/lib/MiddleTruncatedText.d.cts +14 -0
- package/dist/lib/MiddleTruncatedText.d.mts +14 -0
- package/dist/lib/MiddleTruncatedText.mjs +2 -0
- package/dist/lib/PDSProvider.cjs +5 -12
- package/dist/lib/PDSProvider.cjs.map +1 -1
- package/dist/lib/PDSProvider.d.cts +0 -2
- package/dist/lib/PDSProvider.d.mts +1 -3
- package/dist/lib/PDSProvider.mjs +4 -11
- package/dist/lib/PDSProvider.mjs.map +1 -1
- package/dist/lib/TruncatedText.cjs +2 -2
- 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 +3 -3
- package/dist/lib/TruncatedTextWithTooltip.d.mts +1 -1
- package/dist/lib/TruncatedTextWithTooltip.mjs +2 -2
- package/dist/lib/comboboxHelper.cjs +6 -6
- package/dist/lib/comboboxHelper.cjs.map +1 -1
- package/dist/lib/comboboxHelper.mjs +1 -1
- package/dist/lib/copyTextToClipboard.cjs +33 -0
- package/dist/lib/copyTextToClipboard.cjs.map +1 -0
- package/dist/lib/copyTextToClipboard.d.cts +4 -0
- package/dist/lib/copyTextToClipboard.d.mts +5 -0
- package/dist/lib/copyTextToClipboard.mjs +33 -0
- package/dist/lib/copyTextToClipboard.mjs.map +1 -0
- package/dist/lib/datePickerHelper.cjs +9 -3541
- package/dist/lib/datePickerHelper.cjs.map +1 -1
- package/dist/lib/datePickerHelper.mjs +3 -3537
- package/dist/lib/datePickerHelper.mjs.map +1 -1
- package/dist/lib/message.cjs +12 -0
- package/dist/lib/message.cjs.map +1 -0
- package/dist/lib/message.d.cts +2 -0
- package/dist/lib/message.d.mts +2 -0
- package/dist/lib/message.mjs +11 -0
- package/dist/lib/message.mjs.map +1 -0
- package/dist/lib/pseudoClass.cjs +0 -1
- package/dist/lib/pseudoClass.cjs.map +1 -1
- package/dist/lib/pseudoClass.d.mts +1 -1
- package/dist/lib/reorderItems.cjs +0 -1
- package/dist/lib/reorderItems.cjs.map +1 -1
- package/dist/lib/selectHelper.cjs +4 -4
- package/dist/lib/selectHelper.cjs.map +1 -1
- package/dist/lib/selectHelper.mjs +1 -1
- package/dist/lib/useControlled.cjs +1 -1
- package/dist/lib/useIsOverflow.cjs +1 -1
- package/dist/lib/useOutsideClick.cjs +1 -1
- package/dist/lib/useScrollOverflow.cjs +61 -0
- package/dist/lib/useScrollOverflow.cjs.map +1 -0
- package/dist/lib/useScrollOverflow.d.cts +36 -0
- package/dist/lib/useScrollOverflow.d.mts +36 -0
- package/dist/lib/useScrollOverflow.mjs +59 -0
- package/dist/lib/useScrollOverflow.mjs.map +1 -0
- package/dist/lib/zindex.cjs +0 -1
- package/dist/lib/zindex.cjs.map +1 -1
- package/dist/message-CWEGi3Xg.d.cts +9 -0
- package/dist/message-SITKO6JZ.d.mts +9 -0
- package/dist/middleTruncateText.d.mts +13 -0
- package/dist/mixins/focus.cjs +1 -1
- package/dist/mixins/focus.cjs.map +1 -1
- package/dist/mixins/focus.d.mts +1 -1
- package/dist/mixins/focus.mjs.map +1 -1
- package/dist/mixins/hoverable.cjs +1 -1
- package/dist/mixins/hoverable.d.mts +2 -2
- package/dist/mixins/input.cjs +1 -1
- package/dist/mixins/input.cjs.map +1 -1
- package/dist/mixins/input.d.mts +1 -1
- package/dist/mixins/input.mjs.map +1 -1
- package/dist/mixins/menuItem.cjs +1 -1
- package/dist/mixins/menuItem.cjs.map +1 -1
- package/dist/mixins/menuItem.d.mts +2 -2
- package/dist/mixins/menuItem.mjs.map +1 -1
- package/dist/mixins/print/index.cjs +1 -1
- package/dist/mixins/text.cjs +1 -1
- package/dist/mixins/text.cjs.map +1 -1
- package/dist/mixins/text.d.mts +1 -1
- package/dist/mixins/text.mjs.map +1 -1
- package/dist/positioning.d.mts +11 -0
- package/dist/tableBoxKeyboardNavigation.d.mts +8 -0
- package/dist/{text-BrSUs-88.d.mts → text-BEKhEWTa.d.mts} +1 -1
- package/dist/{theme-DGAqgnUa.d.mts → theme-q9fNLtcA.d.mts} +1 -1
- package/dist/theme.cjs +1 -1
- package/dist/theme.d.mts +1 -1
- package/dist/types-BG21GgBe.d.cts +25 -0
- package/dist/types-ChCqSD9N.d.mts +25 -0
- package/dist/types-CmnKGG5I.d.cts +10 -0
- package/dist/types-DMjr-u_o.d.mts +10 -0
- package/dist/types.d.cts +2 -0
- package/dist/types.d.mts +2 -0
- package/dist/types2.d.cts +2 -0
- package/dist/types2.d.mts +2 -0
- package/dist/useColumnWidthLock.d.mts +28 -0
- package/dist/{useFormField-DN3gpEEV.cjs → useFormField-BpYf3CAW.cjs} +3 -3
- package/dist/{useFormField-DN3gpEEV.cjs.map → useFormField-BpYf3CAW.cjs.map} +1 -1
- package/dist/{useFormField-BmtItl8y.d.mts → useFormField-CVmt-ti2.d.mts} +2 -2
- package/dist/{useFormField-eftOPiXj.mjs → useFormField-D0RTrPld.mjs} +2 -2
- package/dist/{useFormField-eftOPiXj.mjs.map → useFormField-D0RTrPld.mjs.map} +1 -1
- package/dist/{useFormField-Ba0CQ43u.d.cts → useFormField-DLGEZ1kD.d.cts} +1 -1
- package/dist/useFormField.d.cts +1 -1
- package/dist/useFormField.d.mts +1 -1
- package/dist/{useFormGroup-B_mFNoN9.cjs → useFormGroup-DQJdKaL9.cjs} +2 -2
- package/dist/{useFormGroup-B_mFNoN9.cjs.map → useFormGroup-DQJdKaL9.cjs.map} +1 -1
- package/dist/{useFormGroup-BMukAMAd.mjs → useFormGroup-z0epBxXn.mjs} +1 -1
- package/dist/{useFormGroup-BMukAMAd.mjs.map → useFormGroup-z0epBxXn.mjs.map} +1 -1
- package/dist/useTableBoxDragAndDrop-DXqy_AMP.d.mts +69 -0
- package/dist/useTableBoxDragAndDrop-hrESBhKb.d.cts +69 -0
- package/dist/useTableBoxDragAndDrop.d.cts +2 -0
- package/dist/useTableBoxDragAndDrop.d.mts +2 -0
- package/dist/useTableColumns.d.cts +72 -0
- package/dist/useTableColumns.d.mts +72 -0
- package/dist/{useToggle-0zLL1E7s.mjs → useToggle-3k3EkV8V.mjs} +1 -1
- package/dist/{useToggle-0zLL1E7s.mjs.map → useToggle-3k3EkV8V.mjs.map} +1 -1
- package/dist/{useToggle-DNrEsTpr.cjs → useToggle-CSkZWXtQ.cjs} +2 -2
- package/dist/{useToggle-DNrEsTpr.cjs.map → useToggle-CSkZWXtQ.cjs.map} +1 -1
- package/dist/useTruncation.d.mts +1 -1
- package/dist/{utilities-w1K54IAy.d.mts → utilities-DT-Hh45R.d.mts} +1 -1
- package/dist/utilities.d.mts +1 -1
- package/dist/utils/storybook.cjs +2 -3
- package/dist/utils/storybook.cjs.map +1 -1
- package/dist/utils/storybook.mjs +1 -2
- package/dist/utils/storybook.mjs.map +1 -1
- package/dist/utils/testing.cjs +5 -5
- package/dist/utils/testing.cjs.map +1 -1
- package/dist/utils/testing.d.cts +5 -357
- package/dist/utils/testing.d.mts +4 -356
- package/dist/utils/testing.mjs +2 -2
- package/dist/utils/testing.mjs.map +1 -1
- package/dist/utils.d.mts +9 -0
- package/dist/variables/color.cjs +0 -1
- package/dist/variables/color.cjs.map +1 -1
- package/dist/variables/effect.cjs +1 -1
- package/dist/variables/keyframes.cjs +1 -1
- package/dist/variables/spacing.cjs +0 -1
- package/dist/variables/spacing.cjs.map +1 -1
- package/dist/variables/text.cjs +0 -1
- package/dist/variables/text.cjs.map +1 -1
- package/dist/variables/transitions.cjs +0 -1
- package/dist/variables/transitions.cjs.map +1 -1
- package/package.json +125 -89
- package/dist/Combobox-B_-swcix.mjs.map +0 -1
- package/dist/Combobox-B_oe33Re.cjs.map +0 -1
- package/dist/DateField-Bwe_0qm9.d.cts +0 -24
- package/dist/DateField-Chko9oLb.d.mts +0 -24
- package/dist/RegisterComponent-BDb43KvI.d.mts +0 -34
- package/dist/RegisterComponent-CpXIR-51.d.cts +0 -34
- package/dist/Slider-D3gz7otf.d.mts +0 -56
- package/dist/Slider-uH5MOu2D.d.cts +0 -56
- package/dist/SliderRHF-Cc-9RuPe.d.cts +0 -984
- package/dist/SliderRHF-DIV-tCEv.d.mts +0 -984
- package/dist/Spinner-C05An_fn.mjs.map +0 -1
- package/dist/Spinner-z7DrPE1d.cjs.map +0 -1
- package/dist/Stack-BHb3ZB2A.cjs.map +0 -1
- package/dist/Stack-hwgS2FU1.mjs.map +0 -1
- package/dist/TabBar-BMv8dAS3.cjs.map +0 -1
- package/dist/TabBar-Bf89XksH.mjs.map +0 -1
- package/dist/chunk-Bpcn9VDT.mjs +0 -39
- package/dist/components/ConfigFormGroup/index.cjs.map +0 -1
- package/dist/components/ConfigFormGroup/index.mjs.map +0 -1
- package/dist/components/Pagination/index.cjs.map +0 -1
- package/dist/components/Pagination/index.mjs.map +0 -1
- package/dist/components/Pii/index.cjs.map +0 -1
- package/dist/components/Pii/index.mjs.map +0 -1
- package/dist/components/Table/index.cjs.map +0 -1
- package/dist/components/Table/index.mjs.map +0 -1
- package/dist/ids-Cr-NW2RJ.d.mts +0 -11
- package/dist/ids-e4V5Y3Ub.d.cts +0 -11
- package/dist/index-8R9vlM2B.d.mts +0 -83
- package/dist/index-BM1DqNZf.d.cts +0 -628
- package/dist/index-CExuKKOI.d.cts +0 -218
- package/dist/index-CKu60b9I.d.mts +0 -154
- package/dist/index-DQvVmqvS.d.mts +0 -628
- package/dist/lib/register/RegisterComponent.cjs +0 -91
- package/dist/lib/register/RegisterComponent.cjs.map +0 -1
- package/dist/lib/register/RegisterComponent.d.cts +0 -2
- package/dist/lib/register/RegisterComponent.d.mts +0 -2
- package/dist/lib/register/RegisterComponent.mjs +0 -88
- package/dist/lib/register/RegisterComponent.mjs.map +0 -1
- package/dist/lib/register/ids.cjs +0 -31
- package/dist/lib/register/ids.cjs.map +0 -1
- package/dist/lib/register/ids.d.cts +0 -2
- package/dist/lib/register/ids.d.mts +0 -2
- package/dist/lib/register/ids.mjs +0 -28
- package/dist/lib/register/ids.mjs.map +0 -1
- package/dist/lib/register/index.cjs +0 -8
- package/dist/lib/register/index.d.cts +0 -4
- package/dist/lib/register/index.d.mts +0 -4
- package/dist/lib/register/index.mjs +0 -3
- package/dist/lib/register/types.cjs +0 -1
- package/dist/lib/register/types.d.cts +0 -2
- package/dist/lib/register/types.d.mts +0 -2
- package/dist/mergeRefs-BZinWopc.cjs +0 -31
- package/dist/mergeRefs-BZinWopc.cjs.map +0 -1
- package/dist/mergeRefs-BgcbK0Qy.mjs +0 -26
- package/dist/mergeRefs-BgcbK0Qy.mjs.map +0 -1
- package/dist/motion-DoikasqZ.mjs +0 -7483
- package/dist/motion-DoikasqZ.mjs.map +0 -1
- package/dist/motion-QW6imSxE.cjs +0 -7488
- package/dist/motion-QW6imSxE.cjs.map +0 -1
- package/dist/react.esm-C-es35jP.cjs +0 -11441
- package/dist/react.esm-C-es35jP.cjs.map +0 -1
- package/dist/react.esm-Dv1lMDRs.mjs +0 -11397
- package/dist/react.esm-Dv1lMDRs.mjs.map +0 -1
- package/dist/types-DzHQ5MGm.d.mts +0 -69
- package/dist/types-N-cXznfM.d.cts +0 -69
- package/dist/useLabel-BcbghpIU.cjs +0 -1465
- package/dist/useLabel-BcbghpIU.cjs.map +0 -1
- package/dist/useLabel-DHGzNIKw.mjs +0 -1212
- package/dist/useLabel-DHGzNIKw.mjs.map +0 -1
- /package/dist/{lib/register/types.mjs → components/DataTable/types.cjs} +0 -0
- /package/dist/{index-7in8TPrM.d.mts → index-8SLBz2NH.d.mts} +0 -0
- /package/dist/{index-B2KLYYkM.d.cts → index-BIAn8oQh.d.cts} +0 -0
- /package/dist/{index-BBDa5smF.d.cts → index-BSVhZrWN.d.mts} +0 -0
- /package/dist/{index-BJ8-FA6N.d.cts → index-BlwcRiXv.d.cts} +0 -0
- /package/dist/{index-BPiqSRRl.d.mts → index-C4zERU4O.d.cts} +0 -0
- /package/dist/{index-BUYyA1Xh.d.cts → index-C6yvNuzO.d.cts} +0 -0
- /package/dist/{index-CCt0lwyI.d.mts → index-CDAfh8Ew.d.cts} +0 -0
- /package/dist/{index-CEDY7cmG.d.cts → index-CMuRFTR3.d.mts} +0 -0
- /package/dist/{index-CEqOS-7M.d.mts → index-CTBW75wG2.d.cts} +0 -0
- /package/dist/{index-CIBxlpQo.d.mts → index-CswGToRr2.d.mts} +0 -0
- /package/dist/{index-CRo77wc3.d.mts → index-D8dPsry7.d.mts} +0 -0
- /package/dist/{index-CsuikFeJ.d.mts → index-D9XihFV1.d.mts} +0 -0
- /package/dist/{index-Cz6N-KeS.d.cts → index-DBQaKYAL2.d.cts} +0 -0
- /package/dist/{index-D-BciAtf.d.cts → index-DFKoAoY2.d.cts} +0 -0
- /package/dist/{index-D26lpgQi.d.cts → index-DZlqSwCF.d.mts} +0 -0
- /package/dist/{index-D2HUTZ-d.d.cts → index-Dflz2i1X.d.mts} +0 -0
- /package/dist/{index-D4DUvwPf.d.mts → index-Dpmi5zcN.d.cts} +0 -0
- /package/dist/{index-DcU87nuJ2.d.cts → index-DwBYcw1r.d.cts} +0 -0
- /package/dist/{index-DkrC-i1D.d.mts → index-LhFpnU-f.d.mts} +0 -0
- /package/dist/{index-DvuJXuAN.d.mts → index-N-OgGgfF.d.mts} +0 -0
- /package/dist/{index-OEBbnNdr.d.mts → index-PWQavSPf.d.mts} +0 -0
- /package/dist/{index-QbUkWSLh.d.mts → index-_1bfRgi2.d.cts} +0 -0
package/dist/ListBoxField.d.cts
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
|
-
import { l as MenuItemProps } from "./Menu-
|
|
1
|
+
import { l as MenuItemProps } from "./Menu-C_NOsHAm.cjs";
|
|
2
2
|
import { ImplementsFormField } from "./inputFields.cjs";
|
|
3
|
-
import { r as ListBoxProps } from "./ListBox-
|
|
3
|
+
import { r as ListBoxProps } from "./ListBox-DeVmbXeC.cjs";
|
|
4
4
|
import { ReactNode } from "react";
|
|
5
5
|
import * as _$react_jsx_runtime0 from "react/jsx-runtime.js";
|
|
6
6
|
|
package/dist/ListBoxField.d.mts
CHANGED
|
@@ -1,8 +1,8 @@
|
|
|
1
|
-
import { l as MenuItemProps } from "./Menu-
|
|
1
|
+
import { l as MenuItemProps } from "./Menu-CSgCXX0k.mjs";
|
|
2
2
|
import { ImplementsFormField } from "./inputFields.mjs";
|
|
3
|
-
import { r as ListBoxProps } from "./ListBox-
|
|
4
|
-
import * as _$react_jsx_runtime0 from "react/jsx-runtime";
|
|
3
|
+
import { r as ListBoxProps } from "./ListBox-CVvKa5sc.mjs";
|
|
5
4
|
import { ReactNode } from "react";
|
|
5
|
+
import * as _$react_jsx_runtime0 from "react/jsx-runtime";
|
|
6
6
|
|
|
7
7
|
//#region components/FormField/ListBoxField.d.ts
|
|
8
8
|
interface ListBoxFieldAction extends Omit<MenuItemProps, 'children'> {
|
|
@@ -1,7 +1,7 @@
|
|
|
1
|
-
import { t as motion } from "./motion-DoikasqZ.mjs";
|
|
2
1
|
import { BorderRadius, Color } from "@persona/design-tokens";
|
|
3
2
|
import styled from "styled-components";
|
|
4
3
|
import { Fragment, jsx } from "react/jsx-runtime";
|
|
4
|
+
import { motion } from "framer-motion";
|
|
5
5
|
//#region components/LoadingShimmer/LoadingShimmer.tsx
|
|
6
6
|
const ShimmerContainer = styled.span`
|
|
7
7
|
position: relative;
|
|
@@ -64,4 +64,4 @@ const MaybeLoadingShimmer = ({ isLoading, children, height, width }) => isLoadin
|
|
|
64
64
|
//#endregion
|
|
65
65
|
export { MaybeLoadingShimmer as i, LoadingShimmerHeading as n, LoadingShimmerParagraph as r, LoadingShimmer as t };
|
|
66
66
|
|
|
67
|
-
//# sourceMappingURL=LoadingShimmer-
|
|
67
|
+
//# sourceMappingURL=LoadingShimmer-b430vgof.mjs.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"LoadingShimmer-
|
|
1
|
+
{"version":3,"file":"LoadingShimmer-b430vgof.mjs","names":[],"sources":["../components/LoadingShimmer/LoadingShimmer.tsx"],"sourcesContent":["import { motion } from 'framer-motion';\nimport type { ComponentPropsWithoutRef, FC } from 'react';\nimport styled from 'styled-components';\n\nimport { BorderRadius, Color } from '@persona/design-tokens';\nimport type { HeadingSize, ParagraphSize } from 'design-system/mixins/text';\n\ninterface LoadingShimmerProps extends ComponentPropsWithoutRef<'span'> {\n height?: string;\n width?: string;\n variant?: 'primary' | 'secondary';\n}\n\ntype ShimmerContainerProps = {\n width?: string;\n height?: string;\n $variant: 'primary' | 'secondary';\n};\nconst ShimmerContainer = styled.span<ShimmerContainerProps>`\n position: relative;\n display: inline-block;\n /* Using a one off color since our current color tokens are not quite what we need */\n background-color: ${({ $variant }) => ($variant === 'secondary' ? '#eaeaea' : Color.CoreSlate50)};\n width: ${({ width }) => width ?? '100px'};\n height: ${({ height }) => height ?? 'auto'};\n border-radius: ${BorderRadius.Md};\n overflow: hidden;\n`;\n\ntype ShimmerProps = {\n $variant: 'primary' | 'secondary';\n};\nconst Shimmer = styled(motion.span)<ShimmerProps>`\n position: absolute;\n width: 100%;\n height: 100%;\n background: ${({ $variant }) =>\n `linear-gradient(90deg, transparent 0%, ${$variant === 'secondary' ? Color.CoreSlate50 : Color.CoreSlate25} 50%, transparent 100%)`};\n filter: blur(4px);\n`;\n\n/**\n * Base class of all Loading Shimmer components.\n */\nexport function LoadingShimmer({\n width,\n height,\n variant = 'primary',\n ...props\n}: LoadingShimmerProps) {\n return (\n <ShimmerContainer\n width={width}\n height={height}\n $variant={variant}\n aria-live='polite'\n aria-busy='true'\n data-test='loading-shimmer'\n data-loading-indicator='true'\n {...props}\n >\n <Shimmer\n initial={{ x: '-100%', skew: -30 }}\n animate={{ x: '100%', skew: -30 }}\n $variant={variant}\n transition={{ repeat: Infinity, duration: 1, ease: 'easeOut' }}\n />\n </ShimmerContainer>\n );\n}\n\nexport interface LoadingShimmerHeadingProps extends LoadingShimmerProps {\n size?: HeadingSize;\n}\n\nexport const LoadingShimmerHeading = styled(LoadingShimmer)<LoadingShimmerHeadingProps>`\n height: ${({ theme, size = 'lg' }) => theme.text.heading[size].fontSize};\n`;\n\ninterface LoadingShimmerParagraphProps extends LoadingShimmerProps {\n size?: ParagraphSize;\n // eg. 200px\n width?: string;\n}\n\nexport const LoadingShimmerParagraph = styled(LoadingShimmer)<LoadingShimmerParagraphProps>`\n height: ${({ theme, size = 'md' }) => theme.text.paragraph[size].fontSize};\n`;\n\n// A \"maybe\" shimmer block that is shimmering if the `isLoading`\n// value is set to true and otherwise just displays its children\ninterface MaybeLoadingShimmerProps {\n isLoading: boolean;\n height?: string;\n width?: string;\n}\n\nexport const MaybeLoadingShimmer: FC<MaybeLoadingShimmerProps> = ({\n isLoading,\n children,\n height,\n width,\n}) => (isLoading ? <LoadingShimmer height={height} width={width} /> : <>{children}</>);\n"],"mappings":";;;;;AAkBA,MAAM,mBAAmB,OAAO,IAA2B;;;;uBAIpC,EAAE,eAAgB,aAAa,cAAc,YAAY,MAAM,YAAa;YACvF,EAAE,YAAY,SAAS,QAAQ;aAC9B,EAAE,aAAa,UAAU,OAAO;mBAC1B,aAAa,GAAG;;;AAOnC,MAAM,UAAU,OAAO,OAAO,KAAK;;;;iBAIlB,EAAE,eACf,0CAA0C,aAAa,cAAc,MAAM,cAAc,MAAM,YAAY,yBAAyB;;;;;;AAOxI,SAAgB,eAAe,EAC7B,OACA,QACA,UAAU,WACV,GAAG,SACmB;AACtB,QACE,oBAAC,kBAAD;EACS;EACC;EACR,UAAU;EACV,aAAU;EACV,aAAU;EACV,aAAU;EACV,0BAAuB;EACvB,GAAI;YAEJ,oBAAC,SAAD;GACE,SAAS;IAAE,GAAG;IAAS,MAAM;IAAK;GAClC,SAAS;IAAE,GAAG;IAAQ,MAAM;IAAK;GACjC,UAAU;GACV,YAAY;IAAE,QAAQ;IAAU,UAAU;IAAG,MAAM;IAAW;GAC9D,CAAA;EACe,CAAA;;AAQvB,MAAa,wBAAwB,OAAO,eAAe;aAC9C,EAAE,OAAO,OAAO,WAAW,MAAM,KAAK,QAAQ,MAAM,SAAS;;AAS1E,MAAa,0BAA0B,OAAO,eAAe;aAChD,EAAE,OAAO,OAAO,WAAW,MAAM,KAAK,UAAU,MAAM,SAAS;;AAW5E,MAAa,uBAAqD,EAChE,WACA,UACA,QACA,YACK,YAAY,oBAAC,gBAAD;CAAwB;CAAe;CAAS,CAAA,GAAG,oBAAA,UAAA,EAAG,UAAY,CAAA"}
|
|
@@ -1,9 +1,9 @@
|
|
|
1
|
-
const require_chunk = require("./chunk-
|
|
2
|
-
const require_motion = require("./motion-QW6imSxE.cjs");
|
|
1
|
+
const require_chunk = require("./chunk-CKQMccvm.cjs");
|
|
3
2
|
let _persona_design_tokens = require("@persona/design-tokens");
|
|
4
3
|
let styled_components = require("styled-components");
|
|
5
4
|
styled_components = require_chunk.__toESM(styled_components);
|
|
6
5
|
let react_jsx_runtime = require("react/jsx-runtime");
|
|
6
|
+
let framer_motion = require("framer-motion");
|
|
7
7
|
//#region components/LoadingShimmer/LoadingShimmer.tsx
|
|
8
8
|
const ShimmerContainer = styled_components.default.span`
|
|
9
9
|
position: relative;
|
|
@@ -15,7 +15,7 @@ const ShimmerContainer = styled_components.default.span`
|
|
|
15
15
|
border-radius: ${_persona_design_tokens.BorderRadius.Md};
|
|
16
16
|
overflow: hidden;
|
|
17
17
|
`;
|
|
18
|
-
const Shimmer = (0, styled_components.default)(
|
|
18
|
+
const Shimmer = (0, styled_components.default)(framer_motion.motion.span)`
|
|
19
19
|
position: absolute;
|
|
20
20
|
width: 100%;
|
|
21
21
|
height: 100%;
|
|
@@ -89,4 +89,4 @@ Object.defineProperty(exports, "MaybeLoadingShimmer", {
|
|
|
89
89
|
}
|
|
90
90
|
});
|
|
91
91
|
|
|
92
|
-
//# sourceMappingURL=LoadingShimmer-
|
|
92
|
+
//# sourceMappingURL=LoadingShimmer-uG2UzYQd.cjs.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"LoadingShimmer-
|
|
1
|
+
{"version":3,"file":"LoadingShimmer-uG2UzYQd.cjs","names":["Color","BorderRadius","motion"],"sources":["../components/LoadingShimmer/LoadingShimmer.tsx"],"sourcesContent":["import { motion } from 'framer-motion';\nimport type { ComponentPropsWithoutRef, FC } from 'react';\nimport styled from 'styled-components';\n\nimport { BorderRadius, Color } from '@persona/design-tokens';\nimport type { HeadingSize, ParagraphSize } from 'design-system/mixins/text';\n\ninterface LoadingShimmerProps extends ComponentPropsWithoutRef<'span'> {\n height?: string;\n width?: string;\n variant?: 'primary' | 'secondary';\n}\n\ntype ShimmerContainerProps = {\n width?: string;\n height?: string;\n $variant: 'primary' | 'secondary';\n};\nconst ShimmerContainer = styled.span<ShimmerContainerProps>`\n position: relative;\n display: inline-block;\n /* Using a one off color since our current color tokens are not quite what we need */\n background-color: ${({ $variant }) => ($variant === 'secondary' ? '#eaeaea' : Color.CoreSlate50)};\n width: ${({ width }) => width ?? '100px'};\n height: ${({ height }) => height ?? 'auto'};\n border-radius: ${BorderRadius.Md};\n overflow: hidden;\n`;\n\ntype ShimmerProps = {\n $variant: 'primary' | 'secondary';\n};\nconst Shimmer = styled(motion.span)<ShimmerProps>`\n position: absolute;\n width: 100%;\n height: 100%;\n background: ${({ $variant }) =>\n `linear-gradient(90deg, transparent 0%, ${$variant === 'secondary' ? Color.CoreSlate50 : Color.CoreSlate25} 50%, transparent 100%)`};\n filter: blur(4px);\n`;\n\n/**\n * Base class of all Loading Shimmer components.\n */\nexport function LoadingShimmer({\n width,\n height,\n variant = 'primary',\n ...props\n}: LoadingShimmerProps) {\n return (\n <ShimmerContainer\n width={width}\n height={height}\n $variant={variant}\n aria-live='polite'\n aria-busy='true'\n data-test='loading-shimmer'\n data-loading-indicator='true'\n {...props}\n >\n <Shimmer\n initial={{ x: '-100%', skew: -30 }}\n animate={{ x: '100%', skew: -30 }}\n $variant={variant}\n transition={{ repeat: Infinity, duration: 1, ease: 'easeOut' }}\n />\n </ShimmerContainer>\n );\n}\n\nexport interface LoadingShimmerHeadingProps extends LoadingShimmerProps {\n size?: HeadingSize;\n}\n\nexport const LoadingShimmerHeading = styled(LoadingShimmer)<LoadingShimmerHeadingProps>`\n height: ${({ theme, size = 'lg' }) => theme.text.heading[size].fontSize};\n`;\n\ninterface LoadingShimmerParagraphProps extends LoadingShimmerProps {\n size?: ParagraphSize;\n // eg. 200px\n width?: string;\n}\n\nexport const LoadingShimmerParagraph = styled(LoadingShimmer)<LoadingShimmerParagraphProps>`\n height: ${({ theme, size = 'md' }) => theme.text.paragraph[size].fontSize};\n`;\n\n// A \"maybe\" shimmer block that is shimmering if the `isLoading`\n// value is set to true and otherwise just displays its children\ninterface MaybeLoadingShimmerProps {\n isLoading: boolean;\n height?: string;\n width?: string;\n}\n\nexport const MaybeLoadingShimmer: FC<MaybeLoadingShimmerProps> = ({\n isLoading,\n children,\n height,\n width,\n}) => (isLoading ? <LoadingShimmer height={height} width={width} /> : <>{children}</>);\n"],"mappings":";;;;;;;AAkBA,MAAM,mBAAmB,kBAAA,QAAO,IAA2B;;;;uBAIpC,EAAE,eAAgB,aAAa,cAAc,YAAYA,uBAAAA,MAAM,YAAa;YACvF,EAAE,YAAY,SAAS,QAAQ;aAC9B,EAAE,aAAa,UAAU,OAAO;mBAC1BC,uBAAAA,aAAa,GAAG;;;AAOnC,MAAM,UAAU,CAAA,GAAA,kBAAA,SAAOC,cAAAA,OAAO,KAAK;;;;iBAIlB,EAAE,eACf,0CAA0C,aAAa,cAAcF,uBAAAA,MAAM,cAAcA,uBAAAA,MAAM,YAAY,yBAAyB;;;;;;AAOxI,SAAgB,eAAe,EAC7B,OACA,QACA,UAAU,WACV,GAAG,SACmB;AACtB,QACE,iBAAA,GAAA,kBAAA,KAAC,kBAAD;EACS;EACC;EACR,UAAU;EACV,aAAU;EACV,aAAU;EACV,aAAU;EACV,0BAAuB;EACvB,GAAI;YAEJ,iBAAA,GAAA,kBAAA,KAAC,SAAD;GACE,SAAS;IAAE,GAAG;IAAS,MAAM;IAAK;GAClC,SAAS;IAAE,GAAG;IAAQ,MAAM;IAAK;GACjC,UAAU;GACV,YAAY;IAAE,QAAQ;IAAU,UAAU;IAAG,MAAM;IAAW;GAC9D,CAAA;EACe,CAAA;;AAQvB,MAAa,wBAAwB,CAAA,GAAA,kBAAA,SAAO,eAAe;aAC9C,EAAE,OAAO,OAAO,WAAW,MAAM,KAAK,QAAQ,MAAM,SAAS;;AAS1E,MAAa,0BAA0B,CAAA,GAAA,kBAAA,SAAO,eAAe;aAChD,EAAE,OAAO,OAAO,WAAW,MAAM,KAAK,UAAU,MAAM,SAAS;;AAW5E,MAAa,uBAAqD,EAChE,WACA,UACA,QACA,YACK,YAAY,iBAAA,GAAA,kBAAA,KAAC,gBAAD;CAAwB;CAAe;CAAS,CAAA,GAAG,iBAAA,GAAA,kBAAA,KAAA,kBAAA,UAAA,EAAG,UAAY,CAAA"}
|
|
@@ -1,7 +1,7 @@
|
|
|
1
|
-
import { i as ParagraphSize, n as HeadingSize } from "./text-
|
|
1
|
+
import { i as ParagraphSize, n as HeadingSize } from "./text-BEKhEWTa.mjs";
|
|
2
2
|
import * as _$styled_components0 from "styled-components";
|
|
3
|
-
import * as _$react_jsx_runtime0 from "react/jsx-runtime";
|
|
4
3
|
import { ComponentPropsWithoutRef, FC } from "react";
|
|
4
|
+
import * as _$react_jsx_runtime0 from "react/jsx-runtime";
|
|
5
5
|
|
|
6
6
|
//#region components/LoadingShimmer/LoadingShimmer.d.ts
|
|
7
7
|
interface LoadingShimmerProps extends ComponentPropsWithoutRef<'span'> {
|
package/dist/MaskedInput.d.cts
CHANGED
|
@@ -4,7 +4,7 @@ import { IMaskInputProps } from "react-imask/mixin";
|
|
|
4
4
|
|
|
5
5
|
//#region components/MaskedInput/MaskedInput.d.ts
|
|
6
6
|
type MaskedInputProps = Omit<IMaskInputProps<HTMLInputElement>, 'inputRef' | 'componentProps' | 'size' | 'ref'> & InputProps;
|
|
7
|
-
declare const MaskedInput: _$react.ForwardRefExoticComponent<Omit<IMaskInputProps<HTMLInputElement>, "
|
|
7
|
+
declare const MaskedInput: _$react.ForwardRefExoticComponent<Omit<IMaskInputProps<HTMLInputElement>, "size" | "ref" | "inputRef" | "componentProps"> & InputProps & _$react.RefAttributes<HTMLInputElement>>;
|
|
8
8
|
//#endregion
|
|
9
9
|
export { MaskedInput, MaskedInput as default, MaskedInputProps };
|
|
10
10
|
//# sourceMappingURL=MaskedInput.d.cts.map
|
package/dist/MaskedInput.d.mts
CHANGED
|
@@ -1,16 +1,16 @@
|
|
|
1
|
-
const require_chunk = require("./chunk-
|
|
1
|
+
const require_chunk = require("./chunk-CKQMccvm.cjs");
|
|
2
2
|
const require_theme = require("./theme.cjs");
|
|
3
3
|
const require_lib_pseudoClass = require("./lib/pseudoClass.cjs");
|
|
4
4
|
const require_mixins_text = require("./mixins/text.cjs");
|
|
5
5
|
const require_lib_PDSProvider = require("./lib/PDSProvider.cjs");
|
|
6
|
-
const require_Card = require("./Card-
|
|
6
|
+
const require_Card = require("./Card-CaOItkgL.cjs");
|
|
7
7
|
const require_lib_zindex = require("./lib/zindex.cjs");
|
|
8
8
|
require("./variables/text.cjs");
|
|
9
9
|
let _persona_design_tokens = require("@persona/design-tokens");
|
|
10
10
|
let styled_components = require("styled-components");
|
|
11
11
|
styled_components = require_chunk.__toESM(styled_components);
|
|
12
|
-
let react_jsx_runtime = require("react/jsx-runtime");
|
|
13
12
|
let react = require("react");
|
|
13
|
+
let react_jsx_runtime = require("react/jsx-runtime");
|
|
14
14
|
let react_aria = require("react-aria");
|
|
15
15
|
let _radix_ui_react_dropdown_menu = require("@radix-ui/react-dropdown-menu");
|
|
16
16
|
_radix_ui_react_dropdown_menu = require_chunk.__toESM(_radix_ui_react_dropdown_menu);
|
|
@@ -214,4 +214,4 @@ Object.defineProperty(exports, "MenuList", {
|
|
|
214
214
|
}
|
|
215
215
|
});
|
|
216
216
|
|
|
217
|
-
//# sourceMappingURL=Menu-
|
|
217
|
+
//# sourceMappingURL=Menu-BLbEcodU.cjs.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Menu-BpkjNO81.cjs","names":["Card","Z_INDICES","Spacing","paragraphMixins","isNotDisabled","isHovered","isFocused","Color","isDisabled","DropdownMenu","DismissButton","PDSProvider","darkTheme"],"sources":["../components/Menu/Menu.tsx"],"sourcesContent":["import PDSProvider from '@persona/design-system/lib/PDSProvider';\nimport { Color, Spacing } from '@persona/design-tokens';\nimport * as DropdownMenu from '@radix-ui/react-dropdown-menu';\nimport {\n type ComponentPropsWithoutRef,\n type ComponentPropsWithRef,\n type ComponentType,\n type ElementType,\n type FC,\n forwardRef,\n type ReactNode,\n type Ref,\n type RefObject,\n} from 'react';\nimport { DismissButton } from 'react-aria';\nimport styled, {\n css,\n type DefaultTheme,\n type StyledComponent,\n type StyledComponentPropsWithRef,\n} from 'styled-components';\n\nimport Card from 'design-system/components/Card';\nimport { isDisabled, isFocused, isHovered, isNotDisabled } from 'design-system/lib/pseudoClass';\nimport { Z_INDICES } from 'design-system/lib/zindex';\nimport { paragraphMixins } from 'design-system/mixins/text';\nimport { darkTheme } from 'design-system/theme';\nimport { FontWeight } from 'design-system/variables/text';\n\nexport const FloatingCard: StyledComponent<\n ComponentType<StyledComponentPropsWithRef<typeof Card>>,\n DefaultTheme\n> = styled(Card)`\n box-shadow: 0px 0px 14px 2px rgba(0, 0, 0, 0.12);\n outline: none;\n z-index: ${Z_INDICES.tooltip};\n`;\n\nexport const MenuList = styled.div.attrs<{ padding?: Spacing; doNotSetRole?: boolean }>(\n ({ role, doNotSetRole = false }) => ({\n role: doNotSetRole ? undefined : (role ?? 'menu'),\n }),\n)<{ padding?: Spacing }>`\n list-style: none;\n margin: 0;\n padding: ${({ padding }) => padding || Spacing[2]};\n outline: none;\n`;\n\nexport interface MenuItemProps<T extends ElementType = 'div'> {\n children: ReactNode;\n prefixIcon?: ReactNode;\n suffixIcon?: ReactNode;\n disabled?: boolean;\n variant?: 'basic' | 'danger';\n as?: T;\n stretchLabel?: boolean;\n subtitle?: string;\n focused?: boolean;\n selected?: boolean;\n size?: 'sm' | 'md';\n}\n\nexport const ListItem = styled.li<\n Pick<MenuItemProps, 'variant' | 'disabled' | 'focused' | 'selected' | 'size'>\n>`\n ${({ size }) => (size === 'sm' ? paragraphMixins.sm : paragraphMixins.md)};\n display: flex;\n align-items: center;\n padding: ${({ size }) => (size === 'sm' ? `${Spacing[1]} ${Spacing[2]}` : `${Spacing[2]}`)};\n border-radius: 4px;\n list-style: none;\n text-decoration: none;\n color: ${({ theme }) => theme.color.text.primary};\n cursor: pointer;\n ${({ focused, selected, theme }) =>\n focused &&\n !selected &&\n css`\n outline: none;\n color: ${theme.color.text.primary};\n background-color: ${theme.color.background.secondary};\n `}\n\n &${isNotDisabled}${isHovered}, &${isNotDisabled}${isFocused} {\n ${({ selected }) =>\n !selected &&\n css`\n outline: none;\n color: ${({ theme }) => theme.color.text.primary};\n background-color: ${({ theme }) => theme.color.background.secondary};\n `}\n }\n\n &:focus-visible {\n outline: 2px solid ${Color.BorderFocus};\n outline-offset: 1px;\n }\n\n ${({ selected, theme }) =>\n selected &&\n css`\n outline: none;\n color: ${theme.color.text.brand};\n background-color: ${theme.color.background.highlight};\n `}\n\n &${isDisabled} {\n color: ${({ theme }) => theme.color.text.disabled};\n cursor: default;\n pointer-events: none;\n }\n\n /* Variant Styling */\n ${({ theme, variant }) =>\n variant === 'danger' &&\n css`\n color: ${theme.color.variants[variant].default};\n\n &${isNotDisabled}${isHovered}, &${isNotDisabled}${isFocused} {\n color: ${Color.CoreRed900};\n background-color: ${theme.color.variants[variant].highlightLight};\n }\n\n &${isDisabled} {\n color: ${({ theme }) => theme.color.variants[variant].disabled};\n }\n `}\n`;\n\nexport const IconContainer = styled('div')<{ suffix?: boolean }>`\n display: flex;\n align-items: center;\n justify-content: flex-end;\n margin-right: ${Spacing[2]};\n line-height: 1;\n\n ${({ suffix }) =>\n suffix &&\n css`\n margin-left: ${Spacing[2]};\n `}\n`;\n\nconst LabelContainer = styled('div')<{ stretchLabel: boolean }>`\n line-height: 16px;\n ${({ stretchLabel }) =>\n stretchLabel &&\n css`\n width: 100%;\n `}\n`;\n\n/**\n * https://stackoverflow.com/a/73795494\n */\nexport interface MenuItemType<T extends ElementType = 'div'> extends FC<\n MenuItemProps<T> & ComponentPropsWithRef<T>\n> {\n <T extends ElementType = 'div'>(\n props: MenuItemProps<T> & ComponentPropsWithoutRef<T>,\n ): ReturnType<FC<MenuItemProps<T> & ComponentPropsWithoutRef<T>>>;\n}\n\nexport const MenuItem: MenuItemType = forwardRef(function MenuItem(\n {\n children,\n disabled,\n variant,\n prefixIcon,\n suffixIcon,\n stretchLabel,\n selected,\n size,\n ...elemProps\n },\n ref: Ref<HTMLDivElement>,\n) {\n return (\n <ListItem\n disabled={disabled}\n variant={variant}\n selected={selected}\n ref={ref}\n aria-disabled={disabled}\n // aria-current is the correct a11y attribute for role=\"menuitem\" (not aria-selected).\n aria-current={selected ? 'true' : undefined}\n role='menuitem'\n tabIndex={disabled ? -1 : 0}\n size={size}\n {...elemProps}\n >\n {prefixIcon && <IconContainer>{prefixIcon}</IconContainer>}\n <LabelContainer stretchLabel={!!stretchLabel}>{children}</LabelContainer>\n {suffixIcon && <IconContainer suffix>{suffixIcon}</IconContainer>}\n </ListItem>\n );\n});\n\nconst StyledMenuDivider = styled.hr`\n height: 0px;\n padding: 0px;\n font-size: 0;\n margin: ${Spacing[2]} -${Spacing[2]};\n border: none;\n border-top: 1px solid ${({ theme }) => theme.color.border.primary};\n`;\n\nexport const MenuDivider = (props: ComponentPropsWithoutRef<'hr'>) => (\n <DropdownMenu.Separator asChild>\n <StyledMenuDivider {...props} />\n </DropdownMenu.Separator>\n);\n\nexport interface MenuHeadingProps {\n size?: 'sm' | 'md';\n}\n\nexport const MenuHeading = styled.li<MenuHeadingProps>`\n ${paragraphMixins.sm};\n text-transform: uppercase;\n padding: ${({ size }) => (size === 'sm' ? `${Spacing[1]} ${Spacing[2]}` : Spacing[2])};\n display: block;\n color: ${({ theme }) => theme.color.text.secondary};\n font-weight: ${FontWeight.Regular};\n letter-spacing: 0.1em;\n`;\n\nexport interface MenuProps<T extends ElementType = 'div'> {\n children?: ReactNode;\n className?: string;\n variant?: 'light' | 'dark';\n as?: T;\n doNotSetRole?: boolean;\n containerProps?: ComponentPropsWithRef<'div'>;\n listRef?: RefObject<T>;\n itemProps?:\n | ComponentPropsWithoutRef<'li'>\n | ((\n props: ComponentPropsWithoutRef<'li'>,\n index: number,\n ) => Partial<ComponentPropsWithRef<'li'>>);\n onClose?: VoidFunction;\n}\n\nexport const Menu = <T extends ElementType = 'div'>({\n children,\n variant,\n containerProps,\n itemProps,\n listRef,\n className,\n onClose,\n as,\n ...props\n}: MenuProps<T> & ComponentPropsWithoutRef<T>) => {\n const menu = (\n <FloatingCard {...containerProps} className={className}>\n <MenuList {...props} as={as as any} ref={listRef}>\n {children}\n <DismissButton onDismiss={onClose} />\n </MenuList>\n </FloatingCard>\n );\n\n if (variant === 'dark') {\n return <PDSProvider theme={darkTheme}>{menu}</PDSProvider>;\n }\n\n return menu;\n};\n\nMenu.Heading = MenuHeading;\nMenu.Divider = MenuDivider;\nMenu.Item = MenuItem;\n\nexport default Menu;\n"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"Menu-BLbEcodU.cjs","names":["Card","Z_INDICES","Spacing","paragraphMixins","isNotDisabled","isHovered","isFocused","Color","isDisabled","DropdownMenu","DismissButton","PDSProvider","darkTheme"],"sources":["../components/Menu/Menu.tsx"],"sourcesContent":["import * as DropdownMenu from '@radix-ui/react-dropdown-menu';\nimport {\n type ComponentPropsWithoutRef,\n type ComponentPropsWithRef,\n type ComponentType,\n type ElementType,\n type FC,\n forwardRef,\n type ReactNode,\n type Ref,\n type RefObject,\n} from 'react';\nimport { DismissButton } from 'react-aria';\nimport styled, {\n css,\n type DefaultTheme,\n type StyledComponent,\n type StyledComponentPropsWithRef,\n} from 'styled-components';\n\nimport PDSProvider from '@persona/design-system/lib/PDSProvider';\nimport { Color, Spacing } from '@persona/design-tokens';\nimport Card from 'design-system/components/Card';\nimport { isDisabled, isFocused, isHovered, isNotDisabled } from 'design-system/lib/pseudoClass';\nimport { Z_INDICES } from 'design-system/lib/zindex';\nimport { paragraphMixins } from 'design-system/mixins/text';\nimport { darkTheme } from 'design-system/theme';\nimport { FontWeight } from 'design-system/variables/text';\n\nexport const FloatingCard: StyledComponent<\n ComponentType<StyledComponentPropsWithRef<typeof Card>>,\n DefaultTheme\n> = styled(Card)`\n box-shadow: 0px 0px 14px 2px rgba(0, 0, 0, 0.12);\n outline: none;\n z-index: ${Z_INDICES.tooltip};\n`;\n\nexport const MenuList = styled.div.attrs<{ padding?: Spacing; doNotSetRole?: boolean }>(\n ({ role, doNotSetRole = false }) => ({\n role: doNotSetRole ? undefined : (role ?? 'menu'),\n }),\n)<{ padding?: Spacing }>`\n list-style: none;\n margin: 0;\n padding: ${({ padding }) => padding || Spacing[2]};\n outline: none;\n`;\n\nexport interface MenuItemProps<T extends ElementType = 'div'> {\n children: ReactNode;\n prefixIcon?: ReactNode;\n suffixIcon?: ReactNode;\n disabled?: boolean;\n variant?: 'basic' | 'danger';\n as?: T;\n stretchLabel?: boolean;\n subtitle?: string;\n focused?: boolean;\n selected?: boolean;\n size?: 'sm' | 'md';\n}\n\nexport const ListItem = styled.li<\n Pick<MenuItemProps, 'variant' | 'disabled' | 'focused' | 'selected' | 'size'>\n>`\n ${({ size }) => (size === 'sm' ? paragraphMixins.sm : paragraphMixins.md)};\n display: flex;\n align-items: center;\n padding: ${({ size }) => (size === 'sm' ? `${Spacing[1]} ${Spacing[2]}` : `${Spacing[2]}`)};\n border-radius: 4px;\n list-style: none;\n text-decoration: none;\n color: ${({ theme }) => theme.color.text.primary};\n cursor: pointer;\n ${({ focused, selected, theme }) =>\n focused &&\n !selected &&\n css`\n outline: none;\n color: ${theme.color.text.primary};\n background-color: ${theme.color.background.secondary};\n `}\n\n &${isNotDisabled}${isHovered}, &${isNotDisabled}${isFocused} {\n ${({ selected }) =>\n !selected &&\n css`\n outline: none;\n color: ${({ theme }) => theme.color.text.primary};\n background-color: ${({ theme }) => theme.color.background.secondary};\n `}\n }\n\n &:focus-visible {\n outline: 2px solid ${Color.BorderFocus};\n outline-offset: 1px;\n }\n\n ${({ selected, theme }) =>\n selected &&\n css`\n outline: none;\n color: ${theme.color.text.brand};\n background-color: ${theme.color.background.highlight};\n `}\n\n &${isDisabled} {\n color: ${({ theme }) => theme.color.text.disabled};\n cursor: default;\n pointer-events: none;\n }\n\n /* Variant Styling */\n ${({ theme, variant }) =>\n variant === 'danger' &&\n css`\n color: ${theme.color.variants[variant].default};\n\n &${isNotDisabled}${isHovered}, &${isNotDisabled}${isFocused} {\n color: ${Color.CoreRed900};\n background-color: ${theme.color.variants[variant].highlightLight};\n }\n\n &${isDisabled} {\n color: ${({ theme }) => theme.color.variants[variant].disabled};\n }\n `}\n`;\n\nexport const IconContainer = styled('div')<{ suffix?: boolean }>`\n display: flex;\n align-items: center;\n justify-content: flex-end;\n margin-right: ${Spacing[2]};\n line-height: 1;\n\n ${({ suffix }) =>\n suffix &&\n css`\n margin-left: ${Spacing[2]};\n `}\n`;\n\nconst LabelContainer = styled('div')<{ stretchLabel: boolean }>`\n line-height: 16px;\n ${({ stretchLabel }) =>\n stretchLabel &&\n css`\n width: 100%;\n `}\n`;\n\n/**\n * https://stackoverflow.com/a/73795494\n */\nexport interface MenuItemType<T extends ElementType = 'div'> extends FC<\n MenuItemProps<T> & ComponentPropsWithRef<T>\n> {\n <T extends ElementType = 'div'>(\n props: MenuItemProps<T> & ComponentPropsWithoutRef<T>,\n ): ReturnType<FC<MenuItemProps<T> & ComponentPropsWithoutRef<T>>>;\n}\n\nexport const MenuItem: MenuItemType = forwardRef(function MenuItem(\n {\n children,\n disabled,\n variant,\n prefixIcon,\n suffixIcon,\n stretchLabel,\n selected,\n size,\n ...elemProps\n },\n ref: Ref<HTMLDivElement>,\n) {\n return (\n <ListItem\n disabled={disabled}\n variant={variant}\n selected={selected}\n ref={ref}\n aria-disabled={disabled}\n // aria-current is the correct a11y attribute for role=\"menuitem\" (not aria-selected).\n aria-current={selected ? 'true' : undefined}\n role='menuitem'\n tabIndex={disabled ? -1 : 0}\n size={size}\n {...elemProps}\n >\n {prefixIcon && <IconContainer>{prefixIcon}</IconContainer>}\n <LabelContainer stretchLabel={!!stretchLabel}>{children}</LabelContainer>\n {suffixIcon && <IconContainer suffix>{suffixIcon}</IconContainer>}\n </ListItem>\n );\n});\n\nconst StyledMenuDivider = styled.hr`\n height: 0px;\n padding: 0px;\n font-size: 0;\n margin: ${Spacing[2]} -${Spacing[2]};\n border: none;\n border-top: 1px solid ${({ theme }) => theme.color.border.primary};\n`;\n\nexport const MenuDivider = (props: ComponentPropsWithoutRef<'hr'>) => (\n <DropdownMenu.Separator asChild>\n <StyledMenuDivider {...props} />\n </DropdownMenu.Separator>\n);\n\nexport interface MenuHeadingProps {\n size?: 'sm' | 'md';\n}\n\nexport const MenuHeading = styled.li<MenuHeadingProps>`\n ${paragraphMixins.sm};\n text-transform: uppercase;\n padding: ${({ size }) => (size === 'sm' ? `${Spacing[1]} ${Spacing[2]}` : Spacing[2])};\n display: block;\n color: ${({ theme }) => theme.color.text.secondary};\n font-weight: ${FontWeight.Regular};\n letter-spacing: 0.1em;\n`;\n\nexport interface MenuProps<T extends ElementType = 'div'> {\n children?: ReactNode;\n className?: string;\n variant?: 'light' | 'dark';\n as?: T;\n doNotSetRole?: boolean;\n containerProps?: ComponentPropsWithRef<'div'>;\n listRef?: RefObject<T>;\n itemProps?:\n | ComponentPropsWithoutRef<'li'>\n | ((\n props: ComponentPropsWithoutRef<'li'>,\n index: number,\n ) => Partial<ComponentPropsWithRef<'li'>>);\n onClose?: VoidFunction;\n}\n\nexport const Menu = <T extends ElementType = 'div'>({\n children,\n variant,\n containerProps,\n itemProps,\n listRef,\n className,\n onClose,\n as,\n ...props\n}: MenuProps<T> & ComponentPropsWithoutRef<T>) => {\n const menu = (\n <FloatingCard {...containerProps} className={className}>\n <MenuList {...props} as={as as any} ref={listRef}>\n {children}\n <DismissButton onDismiss={onClose} />\n </MenuList>\n </FloatingCard>\n );\n\n if (variant === 'dark') {\n return <PDSProvider theme={darkTheme}>{menu}</PDSProvider>;\n }\n\n return menu;\n};\n\nMenu.Heading = MenuHeading;\nMenu.Divider = MenuDivider;\nMenu.Item = MenuItem;\n\nexport default Menu;\n"],"mappings":"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"}
|
|
@@ -2,13 +2,13 @@ import { darkTheme } from "./theme.mjs";
|
|
|
2
2
|
import { isDisabled, isFocused, isHovered, isNotDisabled } from "./lib/pseudoClass.mjs";
|
|
3
3
|
import { paragraphMixins } from "./mixins/text.mjs";
|
|
4
4
|
import PDSProvider from "./lib/PDSProvider.mjs";
|
|
5
|
-
import { t as Card_default } from "./Card-
|
|
5
|
+
import { t as Card_default } from "./Card-CLTkZLKr.mjs";
|
|
6
6
|
import { Z_INDICES } from "./lib/zindex.mjs";
|
|
7
7
|
import "./variables/text.mjs";
|
|
8
8
|
import { Color, Spacing } from "@persona/design-tokens";
|
|
9
9
|
import styled, { css } from "styled-components";
|
|
10
|
-
import { jsx, jsxs } from "react/jsx-runtime";
|
|
11
10
|
import { forwardRef } from "react";
|
|
11
|
+
import { jsx, jsxs } from "react/jsx-runtime";
|
|
12
12
|
import { DismissButton } from "react-aria";
|
|
13
13
|
import * as DropdownMenu from "@radix-ui/react-dropdown-menu";
|
|
14
14
|
//#region components/Menu/Menu.tsx
|
|
@@ -164,4 +164,4 @@ Menu.Item = MenuItem;
|
|
|
164
164
|
//#endregion
|
|
165
165
|
export { MenuDivider as a, MenuList as c, Menu as i, IconContainer as n, MenuHeading as o, ListItem as r, MenuItem as s, FloatingCard as t };
|
|
166
166
|
|
|
167
|
-
//# sourceMappingURL=Menu-
|
|
167
|
+
//# sourceMappingURL=Menu-BbSyWxFD.mjs.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Menu-
|
|
1
|
+
{"version":3,"file":"Menu-BbSyWxFD.mjs","names":["Card"],"sources":["../components/Menu/Menu.tsx"],"sourcesContent":["import * as DropdownMenu from '@radix-ui/react-dropdown-menu';\nimport {\n type ComponentPropsWithoutRef,\n type ComponentPropsWithRef,\n type ComponentType,\n type ElementType,\n type FC,\n forwardRef,\n type ReactNode,\n type Ref,\n type RefObject,\n} from 'react';\nimport { DismissButton } from 'react-aria';\nimport styled, {\n css,\n type DefaultTheme,\n type StyledComponent,\n type StyledComponentPropsWithRef,\n} from 'styled-components';\n\nimport PDSProvider from '@persona/design-system/lib/PDSProvider';\nimport { Color, Spacing } from '@persona/design-tokens';\nimport Card from 'design-system/components/Card';\nimport { isDisabled, isFocused, isHovered, isNotDisabled } from 'design-system/lib/pseudoClass';\nimport { Z_INDICES } from 'design-system/lib/zindex';\nimport { paragraphMixins } from 'design-system/mixins/text';\nimport { darkTheme } from 'design-system/theme';\nimport { FontWeight } from 'design-system/variables/text';\n\nexport const FloatingCard: StyledComponent<\n ComponentType<StyledComponentPropsWithRef<typeof Card>>,\n DefaultTheme\n> = styled(Card)`\n box-shadow: 0px 0px 14px 2px rgba(0, 0, 0, 0.12);\n outline: none;\n z-index: ${Z_INDICES.tooltip};\n`;\n\nexport const MenuList = styled.div.attrs<{ padding?: Spacing; doNotSetRole?: boolean }>(\n ({ role, doNotSetRole = false }) => ({\n role: doNotSetRole ? undefined : (role ?? 'menu'),\n }),\n)<{ padding?: Spacing }>`\n list-style: none;\n margin: 0;\n padding: ${({ padding }) => padding || Spacing[2]};\n outline: none;\n`;\n\nexport interface MenuItemProps<T extends ElementType = 'div'> {\n children: ReactNode;\n prefixIcon?: ReactNode;\n suffixIcon?: ReactNode;\n disabled?: boolean;\n variant?: 'basic' | 'danger';\n as?: T;\n stretchLabel?: boolean;\n subtitle?: string;\n focused?: boolean;\n selected?: boolean;\n size?: 'sm' | 'md';\n}\n\nexport const ListItem = styled.li<\n Pick<MenuItemProps, 'variant' | 'disabled' | 'focused' | 'selected' | 'size'>\n>`\n ${({ size }) => (size === 'sm' ? paragraphMixins.sm : paragraphMixins.md)};\n display: flex;\n align-items: center;\n padding: ${({ size }) => (size === 'sm' ? `${Spacing[1]} ${Spacing[2]}` : `${Spacing[2]}`)};\n border-radius: 4px;\n list-style: none;\n text-decoration: none;\n color: ${({ theme }) => theme.color.text.primary};\n cursor: pointer;\n ${({ focused, selected, theme }) =>\n focused &&\n !selected &&\n css`\n outline: none;\n color: ${theme.color.text.primary};\n background-color: ${theme.color.background.secondary};\n `}\n\n &${isNotDisabled}${isHovered}, &${isNotDisabled}${isFocused} {\n ${({ selected }) =>\n !selected &&\n css`\n outline: none;\n color: ${({ theme }) => theme.color.text.primary};\n background-color: ${({ theme }) => theme.color.background.secondary};\n `}\n }\n\n &:focus-visible {\n outline: 2px solid ${Color.BorderFocus};\n outline-offset: 1px;\n }\n\n ${({ selected, theme }) =>\n selected &&\n css`\n outline: none;\n color: ${theme.color.text.brand};\n background-color: ${theme.color.background.highlight};\n `}\n\n &${isDisabled} {\n color: ${({ theme }) => theme.color.text.disabled};\n cursor: default;\n pointer-events: none;\n }\n\n /* Variant Styling */\n ${({ theme, variant }) =>\n variant === 'danger' &&\n css`\n color: ${theme.color.variants[variant].default};\n\n &${isNotDisabled}${isHovered}, &${isNotDisabled}${isFocused} {\n color: ${Color.CoreRed900};\n background-color: ${theme.color.variants[variant].highlightLight};\n }\n\n &${isDisabled} {\n color: ${({ theme }) => theme.color.variants[variant].disabled};\n }\n `}\n`;\n\nexport const IconContainer = styled('div')<{ suffix?: boolean }>`\n display: flex;\n align-items: center;\n justify-content: flex-end;\n margin-right: ${Spacing[2]};\n line-height: 1;\n\n ${({ suffix }) =>\n suffix &&\n css`\n margin-left: ${Spacing[2]};\n `}\n`;\n\nconst LabelContainer = styled('div')<{ stretchLabel: boolean }>`\n line-height: 16px;\n ${({ stretchLabel }) =>\n stretchLabel &&\n css`\n width: 100%;\n `}\n`;\n\n/**\n * https://stackoverflow.com/a/73795494\n */\nexport interface MenuItemType<T extends ElementType = 'div'> extends FC<\n MenuItemProps<T> & ComponentPropsWithRef<T>\n> {\n <T extends ElementType = 'div'>(\n props: MenuItemProps<T> & ComponentPropsWithoutRef<T>,\n ): ReturnType<FC<MenuItemProps<T> & ComponentPropsWithoutRef<T>>>;\n}\n\nexport const MenuItem: MenuItemType = forwardRef(function MenuItem(\n {\n children,\n disabled,\n variant,\n prefixIcon,\n suffixIcon,\n stretchLabel,\n selected,\n size,\n ...elemProps\n },\n ref: Ref<HTMLDivElement>,\n) {\n return (\n <ListItem\n disabled={disabled}\n variant={variant}\n selected={selected}\n ref={ref}\n aria-disabled={disabled}\n // aria-current is the correct a11y attribute for role=\"menuitem\" (not aria-selected).\n aria-current={selected ? 'true' : undefined}\n role='menuitem'\n tabIndex={disabled ? -1 : 0}\n size={size}\n {...elemProps}\n >\n {prefixIcon && <IconContainer>{prefixIcon}</IconContainer>}\n <LabelContainer stretchLabel={!!stretchLabel}>{children}</LabelContainer>\n {suffixIcon && <IconContainer suffix>{suffixIcon}</IconContainer>}\n </ListItem>\n );\n});\n\nconst StyledMenuDivider = styled.hr`\n height: 0px;\n padding: 0px;\n font-size: 0;\n margin: ${Spacing[2]} -${Spacing[2]};\n border: none;\n border-top: 1px solid ${({ theme }) => theme.color.border.primary};\n`;\n\nexport const MenuDivider = (props: ComponentPropsWithoutRef<'hr'>) => (\n <DropdownMenu.Separator asChild>\n <StyledMenuDivider {...props} />\n </DropdownMenu.Separator>\n);\n\nexport interface MenuHeadingProps {\n size?: 'sm' | 'md';\n}\n\nexport const MenuHeading = styled.li<MenuHeadingProps>`\n ${paragraphMixins.sm};\n text-transform: uppercase;\n padding: ${({ size }) => (size === 'sm' ? `${Spacing[1]} ${Spacing[2]}` : Spacing[2])};\n display: block;\n color: ${({ theme }) => theme.color.text.secondary};\n font-weight: ${FontWeight.Regular};\n letter-spacing: 0.1em;\n`;\n\nexport interface MenuProps<T extends ElementType = 'div'> {\n children?: ReactNode;\n className?: string;\n variant?: 'light' | 'dark';\n as?: T;\n doNotSetRole?: boolean;\n containerProps?: ComponentPropsWithRef<'div'>;\n listRef?: RefObject<T>;\n itemProps?:\n | ComponentPropsWithoutRef<'li'>\n | ((\n props: ComponentPropsWithoutRef<'li'>,\n index: number,\n ) => Partial<ComponentPropsWithRef<'li'>>);\n onClose?: VoidFunction;\n}\n\nexport const Menu = <T extends ElementType = 'div'>({\n children,\n variant,\n containerProps,\n itemProps,\n listRef,\n className,\n onClose,\n as,\n ...props\n}: MenuProps<T> & ComponentPropsWithoutRef<T>) => {\n const menu = (\n <FloatingCard {...containerProps} className={className}>\n <MenuList {...props} as={as as any} ref={listRef}>\n {children}\n <DismissButton onDismiss={onClose} />\n </MenuList>\n </FloatingCard>\n );\n\n if (variant === 'dark') {\n return <PDSProvider theme={darkTheme}>{menu}</PDSProvider>;\n }\n\n return menu;\n};\n\nMenu.Heading = MenuHeading;\nMenu.Divider = MenuDivider;\nMenu.Item = MenuItem;\n\nexport default Menu;\n"],"mappings":"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"}
|
|
@@ -1,8 +1,8 @@
|
|
|
1
|
-
import { r as _default } from "./Card-
|
|
1
|
+
import { r as _default } from "./Card-YzGS3nQI.mjs";
|
|
2
2
|
import { Spacing } from "@persona/design-tokens";
|
|
3
3
|
import { DefaultTheme, StyledComponent, StyledComponentPropsWithRef } from "styled-components";
|
|
4
|
-
import * as _$react_jsx_runtime0 from "react/jsx-runtime";
|
|
5
4
|
import { ComponentPropsWithRef, ComponentPropsWithoutRef, ComponentType, ElementType, FC, ReactNode, RefObject } from "react";
|
|
5
|
+
import * as _$react_jsx_runtime0 from "react/jsx-runtime";
|
|
6
6
|
|
|
7
7
|
//#region components/Menu/Menu.d.ts
|
|
8
8
|
declare const FloatingCard: StyledComponent<ComponentType<StyledComponentPropsWithRef<typeof _default>>, DefaultTheme>;
|
|
@@ -22,7 +22,7 @@ interface MenuItemProps<T extends ElementType = 'div'> {
|
|
|
22
22
|
selected?: boolean;
|
|
23
23
|
size?: 'sm' | 'md';
|
|
24
24
|
}
|
|
25
|
-
declare const ListItem: StyledComponent<"li", any, Pick<MenuItemProps<"div">, "
|
|
25
|
+
declare const ListItem: StyledComponent<"li", any, Pick<MenuItemProps<"div">, "disabled" | "size" | "selected" | "variant" | "focused">, never>;
|
|
26
26
|
declare const IconContainer: StyledComponent<"div", any, {
|
|
27
27
|
suffix?: boolean;
|
|
28
28
|
}, never>;
|
|
@@ -67,4 +67,4 @@ declare const Menu: {
|
|
|
67
67
|
};
|
|
68
68
|
//#endregion
|
|
69
69
|
export { MenuDivider as a, MenuItem as c, MenuList as d, MenuProps as f, Menu as i, MenuItemProps as l, IconContainer as n, MenuHeading as o, ListItem as r, MenuHeadingProps as s, FloatingCard as t, MenuItemType as u };
|
|
70
|
-
//# sourceMappingURL=Menu-
|
|
70
|
+
//# sourceMappingURL=Menu-CSgCXX0k.d.mts.map
|
|
@@ -22,7 +22,7 @@ interface MenuItemProps<T extends ElementType = 'div'> {
|
|
|
22
22
|
selected?: boolean;
|
|
23
23
|
size?: 'sm' | 'md';
|
|
24
24
|
}
|
|
25
|
-
declare const ListItem: StyledComponent<"li", any, Pick<MenuItemProps<"div">, "
|
|
25
|
+
declare const ListItem: StyledComponent<"li", any, Pick<MenuItemProps<"div">, "size" | "disabled" | "selected" | "variant" | "focused">, never>;
|
|
26
26
|
declare const IconContainer: StyledComponent<"div", any, {
|
|
27
27
|
suffix?: boolean;
|
|
28
28
|
}, never>;
|
|
@@ -67,4 +67,4 @@ declare const Menu: {
|
|
|
67
67
|
};
|
|
68
68
|
//#endregion
|
|
69
69
|
export { MenuDivider as a, MenuItem as c, MenuList as d, MenuProps as f, Menu as i, MenuItemProps as l, IconContainer as n, MenuHeading as o, ListItem as r, MenuHeadingProps as s, FloatingCard as t, MenuItemType as u };
|
|
70
|
-
//# sourceMappingURL=Menu-
|
|
70
|
+
//# sourceMappingURL=Menu-C_NOsHAm.d.cts.map
|
package/dist/Menu.d.cts
CHANGED
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import { a as MenuDivider, c as MenuItem, d as MenuList, f as MenuProps, i as Menu, l as MenuItemProps, n as IconContainer, o as MenuHeading, r as ListItem, s as MenuHeadingProps, t as FloatingCard, u as MenuItemType } from "./Menu-
|
|
1
|
+
import { a as MenuDivider, c as MenuItem, d as MenuList, f as MenuProps, i as Menu, l as MenuItemProps, n as IconContainer, o as MenuHeading, r as ListItem, s as MenuHeadingProps, t as FloatingCard, u as MenuItemType } from "./Menu-C_NOsHAm.cjs";
|
|
2
2
|
export { FloatingCard, IconContainer, ListItem, Menu, Menu as default, MenuDivider, MenuHeading, MenuHeadingProps, MenuItem, MenuItemProps, MenuItemType, MenuList, MenuProps };
|
package/dist/Menu.d.mts
CHANGED
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import { a as MenuDivider, c as MenuItem, d as MenuList, f as MenuProps, i as Menu, l as MenuItemProps, n as IconContainer, o as MenuHeading, r as ListItem, s as MenuHeadingProps, t as FloatingCard, u as MenuItemType } from "./Menu-
|
|
1
|
+
import { a as MenuDivider, c as MenuItem, d as MenuList, f as MenuProps, i as Menu, l as MenuItemProps, n as IconContainer, o as MenuHeading, r as ListItem, s as MenuHeadingProps, t as FloatingCard, u as MenuItemType } from "./Menu-CSgCXX0k.mjs";
|
|
2
2
|
export { FloatingCard, IconContainer, ListItem, Menu, Menu as default, MenuDivider, MenuHeading, MenuHeadingProps, MenuItem, MenuItemProps, MenuItemType, MenuList, MenuProps };
|
|
@@ -0,0 +1,178 @@
|
|
|
1
|
+
const require_chunk = require("./chunk-CKQMccvm.cjs");
|
|
2
|
+
let _persona_design_tokens = require("@persona/design-tokens");
|
|
3
|
+
let styled_components = require("styled-components");
|
|
4
|
+
styled_components = require_chunk.__toESM(styled_components);
|
|
5
|
+
let react = require("react");
|
|
6
|
+
let react_jsx_runtime = require("react/jsx-runtime");
|
|
7
|
+
//#region lib/middleTruncateText.ts
|
|
8
|
+
const ELLIPSIS = "…";
|
|
9
|
+
const DEFAULT_FONT = `${_persona_design_tokens.Typography.TextMono.fontWeight} ${_persona_design_tokens.Typography.TextExtraSmall.fontSize} ${_persona_design_tokens.Typography.TextMono.fontFamily}`;
|
|
10
|
+
const MEASUREMENT_TOLERANCE_PX = 1;
|
|
11
|
+
function createMeasurementCanvas() {
|
|
12
|
+
const canvas = document.createElement("canvas");
|
|
13
|
+
const cleanup = () => {
|
|
14
|
+
canvas.width = 0;
|
|
15
|
+
canvas.height = 0;
|
|
16
|
+
canvas.remove();
|
|
17
|
+
};
|
|
18
|
+
return [canvas, cleanup];
|
|
19
|
+
}
|
|
20
|
+
function buildMiddleTruncatedText(text, charsToShow) {
|
|
21
|
+
if (charsToShow >= text.length) return text;
|
|
22
|
+
if (charsToShow <= 1) return ELLIPSIS.slice(0, Math.max(charsToShow, 0));
|
|
23
|
+
const contentChars = charsToShow - 1;
|
|
24
|
+
const front = Math.ceil(contentChars / 2);
|
|
25
|
+
const back = Math.floor(contentChars / 2);
|
|
26
|
+
return text.slice(0, front) + ELLIPSIS + text.slice(text.length - back);
|
|
27
|
+
}
|
|
28
|
+
function isMiddleTruncated(displayText, fullText) {
|
|
29
|
+
return displayText !== fullText;
|
|
30
|
+
}
|
|
31
|
+
function parseMaxWidthPx(maxWidth) {
|
|
32
|
+
if (typeof maxWidth === "number") return maxWidth;
|
|
33
|
+
if (maxWidth.endsWith("px")) {
|
|
34
|
+
const parsed = Number.parseFloat(maxWidth);
|
|
35
|
+
return Number.isNaN(parsed) ? null : parsed;
|
|
36
|
+
}
|
|
37
|
+
return null;
|
|
38
|
+
}
|
|
39
|
+
function measureTextWidth(text, font = DEFAULT_FONT) {
|
|
40
|
+
const [canvas, cleanupCanvas] = createMeasurementCanvas();
|
|
41
|
+
try {
|
|
42
|
+
const context = canvas.getContext("2d");
|
|
43
|
+
if (!context) return text.length * 6;
|
|
44
|
+
context.font = font;
|
|
45
|
+
const measuredWidth = context.measureText(text).width;
|
|
46
|
+
const minimumReasonableWidth = text.length * 4;
|
|
47
|
+
if (measuredWidth === 0 || measuredWidth < minimumReasonableWidth) return text.length * 6;
|
|
48
|
+
return measuredWidth;
|
|
49
|
+
} finally {
|
|
50
|
+
cleanupCanvas();
|
|
51
|
+
}
|
|
52
|
+
}
|
|
53
|
+
function findMiddleTruncatedTextForWidth(text, maxWidthPx, font = DEFAULT_FONT) {
|
|
54
|
+
const fitBudget = maxWidthPx + MEASUREMENT_TOLERANCE_PX;
|
|
55
|
+
if (measureTextWidth(text, font) <= fitBudget) return text;
|
|
56
|
+
let low = 1;
|
|
57
|
+
let high = text.length;
|
|
58
|
+
let bestDisplay = buildMiddleTruncatedText(text, 1);
|
|
59
|
+
while (low <= high) {
|
|
60
|
+
const mid = Math.floor((low + high) / 2);
|
|
61
|
+
const candidate = buildMiddleTruncatedText(text, mid);
|
|
62
|
+
if (measureTextWidth(candidate, font) <= fitBudget) {
|
|
63
|
+
bestDisplay = candidate;
|
|
64
|
+
low = mid + 1;
|
|
65
|
+
} else high = mid - 1;
|
|
66
|
+
}
|
|
67
|
+
return bestDisplay;
|
|
68
|
+
}
|
|
69
|
+
function findMaxMiddleTruncatedCharsThatFit(element, text, maxWidthPx, font) {
|
|
70
|
+
const measuredWidth = element.clientWidth > 0 ? element.clientWidth : null;
|
|
71
|
+
const parsedMaxWidth = maxWidthPx ?? parseMaxWidthPx(element.style.maxWidth);
|
|
72
|
+
const widthBudget = measuredWidth != null && parsedMaxWidth != null ? Math.min(measuredWidth, parsedMaxWidth) : measuredWidth ?? parsedMaxWidth;
|
|
73
|
+
if (widthBudget != null && widthBudget > 0) {
|
|
74
|
+
const displayText = findMiddleTruncatedTextForWidth(text, widthBudget, font);
|
|
75
|
+
return {
|
|
76
|
+
displayText,
|
|
77
|
+
charsToShow: displayText.length
|
|
78
|
+
};
|
|
79
|
+
}
|
|
80
|
+
element.textContent = text;
|
|
81
|
+
if (element.scrollWidth <= element.clientWidth) return {
|
|
82
|
+
displayText: text,
|
|
83
|
+
charsToShow: text.length
|
|
84
|
+
};
|
|
85
|
+
let low = 1;
|
|
86
|
+
let high = text.length;
|
|
87
|
+
let bestCharsToShow = 1;
|
|
88
|
+
let bestDisplay = buildMiddleTruncatedText(text, 1);
|
|
89
|
+
while (low <= high) {
|
|
90
|
+
const mid = Math.floor((low + high) / 2);
|
|
91
|
+
const candidate = buildMiddleTruncatedText(text, mid);
|
|
92
|
+
element.textContent = candidate;
|
|
93
|
+
if (element.scrollWidth <= element.clientWidth) {
|
|
94
|
+
bestCharsToShow = mid;
|
|
95
|
+
bestDisplay = candidate;
|
|
96
|
+
low = mid + 1;
|
|
97
|
+
} else high = mid - 1;
|
|
98
|
+
}
|
|
99
|
+
return {
|
|
100
|
+
displayText: bestDisplay,
|
|
101
|
+
charsToShow: bestCharsToShow
|
|
102
|
+
};
|
|
103
|
+
}
|
|
104
|
+
//#endregion
|
|
105
|
+
//#region lib/MiddleTruncatedText.tsx
|
|
106
|
+
const TruncationSpan = styled_components.default.span`
|
|
107
|
+
display: block;
|
|
108
|
+
overflow: hidden;
|
|
109
|
+
white-space: nowrap;
|
|
110
|
+
min-width: 0;
|
|
111
|
+
position: relative;
|
|
112
|
+
`;
|
|
113
|
+
const AccessibleText = styled_components.default.span`
|
|
114
|
+
opacity: 0;
|
|
115
|
+
user-select: text;
|
|
116
|
+
`;
|
|
117
|
+
const VisualTruncatedText = styled_components.default.span`
|
|
118
|
+
position: absolute;
|
|
119
|
+
inset: 0;
|
|
120
|
+
overflow: hidden;
|
|
121
|
+
white-space: nowrap;
|
|
122
|
+
color: inherit;
|
|
123
|
+
pointer-events: none;
|
|
124
|
+
`;
|
|
125
|
+
const MiddleTruncatedText = ({ value, maxWidth = "96px", font, titleBehavior = "conditional", onTruncatedChange, "aria-label": ariaLabel, style, ...props }) => {
|
|
126
|
+
const ref = (0, react.useRef)(null);
|
|
127
|
+
const [displayText, setDisplayText] = (0, react.useState)(value);
|
|
128
|
+
const maxWidthPx = parseMaxWidthPx(maxWidth);
|
|
129
|
+
const updateTruncation = (0, react.useCallback)((element) => {
|
|
130
|
+
const { displayText: nextDisplayText } = findMaxMiddleTruncatedCharsThatFit(element, value, maxWidthPx, font);
|
|
131
|
+
setDisplayText((current) => current === nextDisplayText ? current : nextDisplayText);
|
|
132
|
+
onTruncatedChange?.(isMiddleTruncated(nextDisplayText, value));
|
|
133
|
+
}, [
|
|
134
|
+
value,
|
|
135
|
+
maxWidthPx,
|
|
136
|
+
font,
|
|
137
|
+
onTruncatedChange
|
|
138
|
+
]);
|
|
139
|
+
(0, react.useLayoutEffect)(() => {
|
|
140
|
+
const element = ref.current;
|
|
141
|
+
if (!element) return;
|
|
142
|
+
updateTruncation(element);
|
|
143
|
+
let cancelled = false;
|
|
144
|
+
document.fonts?.ready.then(() => {
|
|
145
|
+
if (!cancelled) updateTruncation(element);
|
|
146
|
+
});
|
|
147
|
+
const resizeObserver = typeof ResizeObserver === "undefined" ? null : new ResizeObserver(() => updateTruncation(element));
|
|
148
|
+
resizeObserver?.observe(element);
|
|
149
|
+
return () => {
|
|
150
|
+
cancelled = true;
|
|
151
|
+
resizeObserver?.disconnect();
|
|
152
|
+
};
|
|
153
|
+
}, [maxWidth, updateTruncation]);
|
|
154
|
+
const isTruncated = isMiddleTruncated(displayText, value);
|
|
155
|
+
return /* @__PURE__ */ (0, react_jsx_runtime.jsx)(TruncationSpan, {
|
|
156
|
+
ref,
|
|
157
|
+
style: {
|
|
158
|
+
...style,
|
|
159
|
+
maxWidth
|
|
160
|
+
},
|
|
161
|
+
"aria-label": ariaLabel ?? (isTruncated ? value : void 0),
|
|
162
|
+
title: titleBehavior !== "never" && (titleBehavior === "always" || isTruncated) ? value : void 0,
|
|
163
|
+
...props,
|
|
164
|
+
children: isTruncated ? /* @__PURE__ */ (0, react_jsx_runtime.jsxs)(react_jsx_runtime.Fragment, { children: [/* @__PURE__ */ (0, react_jsx_runtime.jsx)(AccessibleText, { children: value }), /* @__PURE__ */ (0, react_jsx_runtime.jsx)(VisualTruncatedText, {
|
|
165
|
+
"aria-hidden": "true",
|
|
166
|
+
children: displayText
|
|
167
|
+
})] }) : displayText
|
|
168
|
+
});
|
|
169
|
+
};
|
|
170
|
+
//#endregion
|
|
171
|
+
Object.defineProperty(exports, "MiddleTruncatedText", {
|
|
172
|
+
enumerable: true,
|
|
173
|
+
get: function() {
|
|
174
|
+
return MiddleTruncatedText;
|
|
175
|
+
}
|
|
176
|
+
});
|
|
177
|
+
|
|
178
|
+
//# sourceMappingURL=MiddleTruncatedText-BIzKECv9.cjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"MiddleTruncatedText-BIzKECv9.cjs","names":["Typography"],"sources":["../lib/middleTruncateText.ts","../lib/MiddleTruncatedText.tsx"],"sourcesContent":["import { Typography } from '@persona/design-tokens';\n\nconst ELLIPSIS = '…';\nconst DEFAULT_FONT = `${Typography.TextMono.fontWeight} ${Typography.TextExtraSmall.fontSize} ${Typography.TextMono.fontFamily}`;\nconst MEASUREMENT_TOLERANCE_PX = 1;\n\nfunction createMeasurementCanvas(): [HTMLCanvasElement, () => void] {\n // oxlint-disable-next-line persona-web/document-create-element-canvas\n const canvas = document.createElement('canvas');\n const cleanup = () => {\n canvas.width = 0;\n canvas.height = 0;\n canvas.remove();\n };\n\n return [canvas, cleanup];\n}\n\nexport function buildMiddleTruncatedText(text: string, charsToShow: number): string {\n if (charsToShow >= text.length) {\n return text;\n }\n\n if (charsToShow <= ELLIPSIS.length) {\n return ELLIPSIS.slice(0, Math.max(charsToShow, 0));\n }\n\n const contentChars = charsToShow - ELLIPSIS.length;\n const front = Math.ceil(contentChars / 2);\n const back = Math.floor(contentChars / 2);\n\n return text.slice(0, front) + ELLIPSIS + text.slice(text.length - back);\n}\n\nexport function isMiddleTruncated(displayText: string, fullText: string): boolean {\n return displayText !== fullText;\n}\n\nexport function parseMaxWidthPx(maxWidth: number | string): number | null {\n if (typeof maxWidth === 'number') {\n return maxWidth;\n }\n\n if (maxWidth.endsWith('px')) {\n const parsed = Number.parseFloat(maxWidth);\n return Number.isNaN(parsed) ? null : parsed;\n }\n\n return null;\n}\n\nexport function measureTextWidth(text: string, font = DEFAULT_FONT): number {\n const [canvas, cleanupCanvas] = createMeasurementCanvas();\n\n try {\n const context = canvas.getContext('2d');\n\n if (!context) {\n return text.length * 6;\n }\n\n context.font = font;\n const measuredWidth = context.measureText(text).width;\n const minimumReasonableWidth = text.length * 4;\n\n if (measuredWidth === 0 || measuredWidth < minimumReasonableWidth) {\n return text.length * 6;\n }\n\n return measuredWidth;\n } finally {\n cleanupCanvas();\n }\n}\n\nexport function findMiddleTruncatedTextForWidth(\n text: string,\n maxWidthPx: number,\n font = DEFAULT_FONT,\n): string {\n const fitBudget = maxWidthPx + MEASUREMENT_TOLERANCE_PX;\n\n if (measureTextWidth(text, font) <= fitBudget) {\n return text;\n }\n\n let low = ELLIPSIS.length;\n let high = text.length;\n let bestDisplay = buildMiddleTruncatedText(text, ELLIPSIS.length);\n\n while (low <= high) {\n const mid = Math.floor((low + high) / 2);\n const candidate = buildMiddleTruncatedText(text, mid);\n\n if (measureTextWidth(candidate, font) <= fitBudget) {\n bestDisplay = candidate;\n low = mid + 1;\n } else {\n high = mid - 1;\n }\n }\n\n return bestDisplay;\n}\n\nexport function findMaxMiddleTruncatedCharsThatFit(\n element: HTMLElement,\n text: string,\n maxWidthPx?: number | null,\n font?: string,\n): { displayText: string; charsToShow: number } {\n const measuredWidth = element.clientWidth > 0 ? element.clientWidth : null;\n const parsedMaxWidth = maxWidthPx ?? parseMaxWidthPx(element.style.maxWidth);\n const widthBudget =\n measuredWidth != null && parsedMaxWidth != null\n ? Math.min(measuredWidth, parsedMaxWidth)\n : (measuredWidth ?? parsedMaxWidth);\n\n if (widthBudget != null && widthBudget > 0) {\n const displayText = findMiddleTruncatedTextForWidth(text, widthBudget, font);\n return { displayText, charsToShow: displayText.length };\n }\n\n element.textContent = text;\n if (element.scrollWidth <= element.clientWidth) {\n return { displayText: text, charsToShow: text.length };\n }\n\n let low = ELLIPSIS.length;\n let high = text.length;\n let bestCharsToShow = ELLIPSIS.length;\n let bestDisplay = buildMiddleTruncatedText(text, ELLIPSIS.length);\n\n while (low <= high) {\n const mid = Math.floor((low + high) / 2);\n const candidate = buildMiddleTruncatedText(text, mid);\n element.textContent = candidate;\n\n if (element.scrollWidth <= element.clientWidth) {\n bestCharsToShow = mid;\n bestDisplay = candidate;\n low = mid + 1;\n } else {\n high = mid - 1;\n }\n }\n\n return { displayText: bestDisplay, charsToShow: bestCharsToShow };\n}\n","import {\n type ComponentPropsWithoutRef,\n type FC,\n useCallback,\n useLayoutEffect,\n useRef,\n useState,\n} from 'react';\nimport styled from 'styled-components';\n\nimport {\n findMaxMiddleTruncatedCharsThatFit,\n isMiddleTruncated,\n parseMaxWidthPx,\n} from './middleTruncateText';\n\nconst TruncationSpan = styled.span`\n display: block;\n overflow: hidden;\n white-space: nowrap;\n min-width: 0;\n position: relative;\n`;\n\nconst AccessibleText = styled.span`\n opacity: 0;\n user-select: text;\n`;\n\nconst VisualTruncatedText = styled.span`\n position: absolute;\n inset: 0;\n overflow: hidden;\n white-space: nowrap;\n color: inherit;\n pointer-events: none;\n`;\n\nexport interface MiddleTruncatedTextProps extends ComponentPropsWithoutRef<'span'> {\n value: string;\n maxWidth?: number | string;\n font?: string;\n titleBehavior?: 'always' | 'conditional' | 'never';\n onTruncatedChange?: (isTruncated: boolean) => void;\n}\n\nexport const MiddleTruncatedText: FC<MiddleTruncatedTextProps> = ({\n value,\n maxWidth = '96px',\n font,\n titleBehavior = 'conditional',\n onTruncatedChange,\n 'aria-label': ariaLabel,\n style,\n ...props\n}) => {\n const ref = useRef<HTMLSpanElement>(null);\n const [displayText, setDisplayText] = useState(value);\n const maxWidthPx = parseMaxWidthPx(maxWidth);\n\n const updateTruncation = useCallback(\n (element: HTMLElement) => {\n const { displayText: nextDisplayText } = findMaxMiddleTruncatedCharsThatFit(\n element,\n value,\n maxWidthPx,\n font,\n );\n setDisplayText((current) => (current === nextDisplayText ? current : nextDisplayText));\n onTruncatedChange?.(isMiddleTruncated(nextDisplayText, value));\n },\n [value, maxWidthPx, font, onTruncatedChange],\n );\n\n useLayoutEffect(() => {\n const element = ref.current;\n if (!element) {\n return;\n }\n\n updateTruncation(element);\n\n let cancelled = false;\n void document.fonts?.ready.then(() => {\n if (!cancelled) {\n updateTruncation(element);\n }\n });\n\n const resizeObserver =\n typeof ResizeObserver === 'undefined'\n ? null\n : new ResizeObserver(() => updateTruncation(element));\n resizeObserver?.observe(element);\n\n return () => {\n cancelled = true;\n resizeObserver?.disconnect();\n };\n }, [maxWidth, updateTruncation]);\n\n const isTruncated = isMiddleTruncated(displayText, value);\n\n return (\n <TruncationSpan\n ref={ref}\n style={{ ...style, maxWidth }}\n aria-label={ariaLabel ?? (isTruncated ? value : undefined)}\n title={\n titleBehavior !== 'never' && (titleBehavior === 'always' || isTruncated) ? value : undefined\n }\n {...props}\n >\n {isTruncated ? (\n <>\n <AccessibleText>{value}</AccessibleText>\n <VisualTruncatedText aria-hidden='true'>{displayText}</VisualTruncatedText>\n </>\n ) : (\n displayText\n )}\n </TruncationSpan>\n );\n};\n\nexport default MiddleTruncatedText;\n"],"mappings":";;;;;;;AAEA,MAAM,WAAW;AACjB,MAAM,eAAe,GAAGA,uBAAAA,WAAW,SAAS,WAAW,GAAGA,uBAAAA,WAAW,eAAe,SAAS,GAAGA,uBAAAA,WAAW,SAAS;AACpH,MAAM,2BAA2B;AAEjC,SAAS,0BAA2D;CAElE,MAAM,SAAS,SAAS,cAAc,SAAS;CAC/C,MAAM,gBAAgB;AACpB,SAAO,QAAQ;AACf,SAAO,SAAS;AAChB,SAAO,QAAQ;;AAGjB,QAAO,CAAC,QAAQ,QAAQ;;AAG1B,SAAgB,yBAAyB,MAAc,aAA6B;AAClF,KAAI,eAAe,KAAK,OACtB,QAAO;AAGT,KAAI,eAAe,EACjB,QAAO,SAAS,MAAM,GAAG,KAAK,IAAI,aAAa,EAAE,CAAC;CAGpD,MAAM,eAAe,cAAc;CACnC,MAAM,QAAQ,KAAK,KAAK,eAAe,EAAE;CACzC,MAAM,OAAO,KAAK,MAAM,eAAe,EAAE;AAEzC,QAAO,KAAK,MAAM,GAAG,MAAM,GAAG,WAAW,KAAK,MAAM,KAAK,SAAS,KAAK;;AAGzE,SAAgB,kBAAkB,aAAqB,UAA2B;AAChF,QAAO,gBAAgB;;AAGzB,SAAgB,gBAAgB,UAA0C;AACxE,KAAI,OAAO,aAAa,SACtB,QAAO;AAGT,KAAI,SAAS,SAAS,KAAK,EAAE;EAC3B,MAAM,SAAS,OAAO,WAAW,SAAS;AAC1C,SAAO,OAAO,MAAM,OAAO,GAAG,OAAO;;AAGvC,QAAO;;AAGT,SAAgB,iBAAiB,MAAc,OAAO,cAAsB;CAC1E,MAAM,CAAC,QAAQ,iBAAiB,yBAAyB;AAEzD,KAAI;EACF,MAAM,UAAU,OAAO,WAAW,KAAK;AAEvC,MAAI,CAAC,QACH,QAAO,KAAK,SAAS;AAGvB,UAAQ,OAAO;EACf,MAAM,gBAAgB,QAAQ,YAAY,KAAK,CAAC;EAChD,MAAM,yBAAyB,KAAK,SAAS;AAE7C,MAAI,kBAAkB,KAAK,gBAAgB,uBACzC,QAAO,KAAK,SAAS;AAGvB,SAAO;WACC;AACR,iBAAe;;;AAInB,SAAgB,gCACd,MACA,YACA,OAAO,cACC;CACR,MAAM,YAAY,aAAa;AAE/B,KAAI,iBAAiB,MAAM,KAAK,IAAI,UAClC,QAAO;CAGT,IAAI,MAAM;CACV,IAAI,OAAO,KAAK;CAChB,IAAI,cAAc,yBAAyB,MAAM,EAAgB;AAEjE,QAAO,OAAO,MAAM;EAClB,MAAM,MAAM,KAAK,OAAO,MAAM,QAAQ,EAAE;EACxC,MAAM,YAAY,yBAAyB,MAAM,IAAI;AAErD,MAAI,iBAAiB,WAAW,KAAK,IAAI,WAAW;AAClD,iBAAc;AACd,SAAM,MAAM;QAEZ,QAAO,MAAM;;AAIjB,QAAO;;AAGT,SAAgB,mCACd,SACA,MACA,YACA,MAC8C;CAC9C,MAAM,gBAAgB,QAAQ,cAAc,IAAI,QAAQ,cAAc;CACtE,MAAM,iBAAiB,cAAc,gBAAgB,QAAQ,MAAM,SAAS;CAC5E,MAAM,cACJ,iBAAiB,QAAQ,kBAAkB,OACvC,KAAK,IAAI,eAAe,eAAe,GACtC,iBAAiB;AAExB,KAAI,eAAe,QAAQ,cAAc,GAAG;EAC1C,MAAM,cAAc,gCAAgC,MAAM,aAAa,KAAK;AAC5E,SAAO;GAAE;GAAa,aAAa,YAAY;GAAQ;;AAGzD,SAAQ,cAAc;AACtB,KAAI,QAAQ,eAAe,QAAQ,YACjC,QAAO;EAAE,aAAa;EAAM,aAAa,KAAK;EAAQ;CAGxD,IAAI,MAAM;CACV,IAAI,OAAO,KAAK;CAChB,IAAI,kBAAkB;CACtB,IAAI,cAAc,yBAAyB,MAAM,EAAgB;AAEjE,QAAO,OAAO,MAAM;EAClB,MAAM,MAAM,KAAK,OAAO,MAAM,QAAQ,EAAE;EACxC,MAAM,YAAY,yBAAyB,MAAM,IAAI;AACrD,UAAQ,cAAc;AAEtB,MAAI,QAAQ,eAAe,QAAQ,aAAa;AAC9C,qBAAkB;AAClB,iBAAc;AACd,SAAM,MAAM;QAEZ,QAAO,MAAM;;AAIjB,QAAO;EAAE,aAAa;EAAa,aAAa;EAAiB;;;;ACnInE,MAAM,iBAAiB,kBAAA,QAAO,IAAI;;;;;;;AAQlC,MAAM,iBAAiB,kBAAA,QAAO,IAAI;;;;AAKlC,MAAM,sBAAsB,kBAAA,QAAO,IAAI;;;;;;;;AAiBvC,MAAa,uBAAqD,EAChE,OACA,WAAW,QACX,MACA,gBAAgB,eAChB,mBACA,cAAc,WACd,OACA,GAAG,YACC;CACJ,MAAM,OAAA,GAAA,MAAA,QAA8B,KAAK;CACzC,MAAM,CAAC,aAAa,mBAAA,GAAA,MAAA,UAA2B,MAAM;CACrD,MAAM,aAAa,gBAAgB,SAAS;CAE5C,MAAM,oBAAA,GAAA,MAAA,cACH,YAAyB;EACxB,MAAM,EAAE,aAAa,oBAAoB,mCACvC,SACA,OACA,YACA,KACD;AACD,kBAAgB,YAAa,YAAY,kBAAkB,UAAU,gBAAiB;AACtF,sBAAoB,kBAAkB,iBAAiB,MAAM,CAAC;IAEhE;EAAC;EAAO;EAAY;EAAM;EAAkB,CAC7C;AAED,EAAA,GAAA,MAAA,uBAAsB;EACpB,MAAM,UAAU,IAAI;AACpB,MAAI,CAAC,QACH;AAGF,mBAAiB,QAAQ;EAEzB,IAAI,YAAY;AACX,WAAS,OAAO,MAAM,WAAW;AACpC,OAAI,CAAC,UACH,kBAAiB,QAAQ;IAE3B;EAEF,MAAM,iBACJ,OAAO,mBAAmB,cACtB,OACA,IAAI,qBAAqB,iBAAiB,QAAQ,CAAC;AACzD,kBAAgB,QAAQ,QAAQ;AAEhC,eAAa;AACX,eAAY;AACZ,mBAAgB,YAAY;;IAE7B,CAAC,UAAU,iBAAiB,CAAC;CAEhC,MAAM,cAAc,kBAAkB,aAAa,MAAM;AAEzD,QACE,iBAAA,GAAA,kBAAA,KAAC,gBAAD;EACO;EACL,OAAO;GAAE,GAAG;GAAO;GAAU;EAC7B,cAAY,cAAc,cAAc,QAAQ,KAAA;EAChD,OACE,kBAAkB,YAAY,kBAAkB,YAAY,eAAe,QAAQ,KAAA;EAErF,GAAI;YAEH,cACC,iBAAA,GAAA,kBAAA,MAAA,kBAAA,UAAA,EAAA,UAAA,CACE,iBAAA,GAAA,kBAAA,KAAC,gBAAD,EAAA,UAAiB,OAAuB,CAAA,EACxC,iBAAA,GAAA,kBAAA,KAAC,qBAAD;GAAqB,eAAY;aAAQ;GAAkC,CAAA,CAC1E,EAAA,CAAA,GAEH;EAEa,CAAA"}
|