@persona/design-system 0.7.1 → 0.8.0
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 +49 -0
- package/README.md +9 -9
- package/dist/Accordion.d.mts +38 -0
- package/dist/AccordionItem.d.mts +31 -0
- package/dist/{Action-C7INft7X.d.mts → Action-B-AiHknZ.d.mts} +3 -3
- package/dist/Action.d.mts +1 -1
- package/dist/AdvancedFilterRuleRow.d.mts +2 -2
- package/dist/AdvancedFilterRulesPopover.d.mts +2 -2
- package/dist/ArrayValueControl.d.mts +1 -1
- package/dist/Attribute.d.mts +3 -3
- package/dist/{Badge-BD0Ut46g.mjs → Badge-COqUjFQu.mjs} +2 -2
- package/dist/{Badge-BD0Ut46g.mjs.map → Badge-COqUjFQu.mjs.map} +1 -1
- package/dist/BooleanValueControl.d.mts +1 -1
- package/dist/{Breadcrumb-DtW1R9xW.d.mts → Breadcrumb-DRFY46ZW.d.mts} +1 -1
- package/dist/Breadcrumb.d.mts +1 -1
- package/dist/{Breadcrumbs-B6JyoS8n.d.mts → Breadcrumbs-DUSbT1I7.d.mts} +2 -2
- package/dist/{Breadcrumbs-CrXfUK1V.mjs → Breadcrumbs-DXS7rU7_.mjs} +5 -5
- package/dist/{Breadcrumbs-CrXfUK1V.mjs.map → Breadcrumbs-DXS7rU7_.mjs.map} +1 -1
- package/dist/Breadcrumbs.d.mts +1 -1
- package/dist/{Button-HodDf_bB.d.mts → Button-xZ6DC5XC.d.mts} +4 -4
- package/dist/Button.d.mts +1 -1
- package/dist/{Calendar-DrdTvzAa.d.mts → Calendar-dPmo2dkj.d.mts} +1 -1
- package/dist/Calendar.d.mts +1 -1
- package/dist/CalendarBase.d.mts +1 -1
- package/dist/{Card-CpDwATnX.d.mts → Card-CUeM8Lh8.d.mts} +3 -3
- package/dist/Card.d.mts +1 -1
- package/dist/{CardV2-M3o4BELp.mjs → CardV2-D9p7D7jX.mjs} +9 -7
- package/dist/{CardV2-M3o4BELp.mjs.map → CardV2-D9p7D7jX.mjs.map} +1 -1
- package/dist/{Checkbox-CyWXhuby.mjs → Checkbox-DQynkc_I.mjs} +3 -3
- package/dist/{Checkbox-CyWXhuby.mjs.map → Checkbox-DQynkc_I.mjs.map} +1 -1
- package/dist/{Checkbox-C-hMfItK.d.mts → Checkbox-DoJpxPEz.d.mts} +1 -1
- package/dist/Checkbox.d.mts +1 -1
- package/dist/CheckboxGroupField.d.mts +1 -1
- package/dist/ChoicesValueControl.d.mts +1 -1
- package/dist/{Combobox-1M6EwVmq.mjs → Combobox-C_kCY3P3.mjs} +28 -12
- package/dist/Combobox-C_kCY3P3.mjs.map +1 -0
- package/dist/{Combobox-DyNllwt8.d.mts → Combobox-D7hyf-jA.d.mts} +3 -3
- package/dist/Combobox.d.mts +2 -2
- package/dist/{ComboboxBase-B3YqkjQp.d.mts → ComboboxBase-BMCY6O7Y.d.mts} +10 -5
- package/dist/ComboboxBase.d.mts +1 -1
- package/dist/{ComboboxMultiSelect-BuwVssvZ.d.mts → ComboboxMultiSelect-L0KYMkmm.d.mts} +2 -2
- package/dist/ComboboxMultiSelect.d.mts +1 -1
- package/dist/{ComboboxSingleSelect-gJC4v7ER.d.mts → ComboboxSingleSelect-v5oNrJ7M.d.mts} +4 -4
- package/dist/ComboboxSingleSelect.d.mts +1 -1
- package/dist/{CompactBar-DhHh7Roq.d.mts → CompactBar-DjFaUAsN.d.mts} +4 -4
- package/dist/CompactBar.d.mts +1 -1
- package/dist/{ConfigFormGroup-Cz7GeTYd.mjs → ConfigFormGroup-DLOZOuLf.mjs} +2 -2
- package/dist/{ConfigFormGroup-Cz7GeTYd.mjs.map → ConfigFormGroup-DLOZOuLf.mjs.map} +1 -1
- package/dist/{ControlBar-C8kagIck.d.mts → ControlBar-Cegjxa6-.d.mts} +7 -2
- package/dist/ControlBar.d.mts +1 -1
- package/dist/DataTable.d.mts +4 -3
- package/dist/{DateField-2aigfD4u.d.mts → DateField-Dk5ykLdr.d.mts} +2 -2
- package/dist/DateField.d.mts +1 -1
- package/dist/{DatePicker-D9JurBBj.mjs → DatePicker-C7z1yodK.mjs} +77 -42
- package/dist/DatePicker-C7z1yodK.mjs.map +1 -0
- package/dist/{DatePicker-DC_RKjdM.d.mts → DatePicker-Dtvv0V45.d.mts} +2 -2
- package/dist/DatePicker.d.mts +1 -1
- package/dist/{DateRangePicker-ByD6IsLB.d.mts → DateRangePicker-HPYsa4wC.d.mts} +3 -3
- package/dist/DateRangePicker.d.mts +1 -1
- package/dist/DateRangeValueControl.d.mts +5 -3
- package/dist/DateValueControl.d.mts +8 -5
- package/dist/{DropdownButton-BWiXLMfD.mjs → DropdownButton-CQrFHOIW.mjs} +3 -3
- package/dist/{DropdownButton-BWiXLMfD.mjs.map → DropdownButton-CQrFHOIW.mjs.map} +1 -1
- package/dist/DropdownButton.d.mts +2 -2
- package/dist/{DropdownMenu-Xl1BYXsY.d.mts → DropdownMenu-D1qvgGTZ.d.mts} +2 -2
- package/dist/{DropdownMenu-CuKSNxc9.mjs → DropdownMenu-rm9Nnxn7.mjs} +7 -2
- package/dist/DropdownMenu-rm9Nnxn7.mjs.map +1 -0
- package/dist/DropdownMenu.d.mts +1 -1
- package/dist/{ErrorProps-Dgu98PkH.d.mts → ErrorProps-B8-Mqf1W.d.mts} +1 -1
- package/dist/ErrorProps.d.mts +1 -1
- package/dist/{FieldRegistry-BdtxI1N2.d.mts → FieldRegistry-0LmSQ-jc.d.mts} +2 -2
- package/dist/FieldRegistry.d.mts +1 -1
- package/dist/{FilterBar-jYjPeD7F.d.mts → FilterBar-BMM4Swbt.d.mts} +11 -4
- package/dist/FilterBar.d.mts +1 -1
- package/dist/FilterPickerMenu.d.mts +2 -2
- package/dist/FilterPill.d.mts +1 -1
- package/dist/FilterPopover.d.mts +1 -1
- package/dist/FloatValueControl.d.mts +1 -1
- package/dist/{FormControl-BEk4F1EV.mjs → FormControl-DXrxoJLl.mjs} +26 -11
- package/dist/FormControl-DXrxoJLl.mjs.map +1 -0
- package/dist/{FormControl-CJfYdgZF.d.mts → FormControl-Dg8doZq2.d.mts} +6 -2
- package/dist/FormControl.d.mts +1 -1
- package/dist/FormControlLabel.d.mts +1 -1
- package/dist/{FormField-CK8o1sMB.d.mts → FormField-BeLigf9j.d.mts} +4 -2
- package/dist/{FormField-ByT0avVx.mjs → FormField-Crp3F-hv.mjs} +31 -21
- package/dist/FormField-Crp3F-hv.mjs.map +1 -0
- package/dist/FormField.d.mts +1 -1
- package/dist/Grid-eMLuyRzV.mjs +92 -0
- package/dist/Grid-eMLuyRzV.mjs.map +1 -0
- package/dist/Grid.d.mts +4 -1
- package/dist/{Header-ZnHGm8fs.d.mts → Header-DxJ6TfPw.d.mts} +1 -1
- package/dist/Header.d.mts +1 -1
- package/dist/{HelperTooltip-CQpPO16Q.d.mts → HelperTooltip-DcyrpEZI.d.mts} +2 -2
- package/dist/HelperTooltip.d.mts +1 -1
- package/dist/{HoverCopyableField-CN3gl0ny.mjs → HoverCopyableField-12bBuG-d.mjs} +3 -3
- package/dist/{HoverCopyableField-CN3gl0ny.mjs.map → HoverCopyableField-12bBuG-d.mjs.map} +1 -1
- package/dist/{IconButton-zu-VNp1h.d.mts → IconButton-BUMMN-gH.d.mts} +2 -2
- package/dist/{IconButton-CqTPMhjV.mjs → IconButton-CCLMYWVN.mjs} +1 -1
- package/dist/{IconButton-CqTPMhjV.mjs.map → IconButton-CCLMYWVN.mjs.map} +1 -1
- package/dist/IconButton.d.mts +1 -1
- package/dist/ImageTile.d.mts +1 -1
- package/dist/InlineCombobox.d.mts +1 -1
- package/dist/InlineInput.d.mts +1 -1
- package/dist/{Input-Ce8FvSYf.d.mts → Input-2N2e5JCf.d.mts} +3 -3
- package/dist/{Input-Bc2yWH3j.mjs → Input-Cl4o41k4.mjs} +7 -3
- package/dist/Input-Cl4o41k4.mjs.map +1 -0
- package/dist/Input.d.mts +1 -1
- package/dist/{InputProps-B1Xod4wm.d.mts → InputProps-TWzig3QO.d.mts} +2 -2
- package/dist/InputProps.d.mts +1 -1
- package/dist/IntegerValueControl.d.mts +1 -1
- package/dist/Link-I9Bklen-.mjs +79 -0
- package/dist/Link-I9Bklen-.mjs.map +1 -0
- package/dist/Link.d.mts +1 -1
- package/dist/{ListBox-D-8iwYVj.d.mts → ListBox-BcoXOt73.d.mts} +3 -3
- package/dist/{ListBox-CFBhILRy.mjs → ListBox-sqeLBiKS.mjs} +33 -16
- package/dist/ListBox-sqeLBiKS.mjs.map +1 -0
- package/dist/ListBox.d.mts +1 -1
- package/dist/ListBoxField.d.mts +3 -2
- package/dist/{LoadingShimmer-Dizk2sZu.mjs → LoadingShimmer-dRSkdlqD.mjs} +13 -8
- package/dist/LoadingShimmer-dRSkdlqD.mjs.map +1 -0
- package/dist/LoadingShimmer.d.mts +1 -1
- package/dist/{LogicRow-CgPds2tq.d.mts → LogicRow-DXywXdYt.d.mts} +3 -3
- package/dist/LogicRow.d.mts +1 -1
- package/dist/MaskedInput.d.mts +2 -2
- package/dist/{Menu-CSwzFqdv.d.mts → Menu-BekLwm8w.d.mts} +3 -3
- package/dist/{Menu-Cd6oxjAe.mjs → Menu-CwlI7BMN.mjs} +1 -1
- package/dist/{Menu-Cd6oxjAe.mjs.map → Menu-CwlI7BMN.mjs.map} +1 -1
- package/dist/Menu.d.mts +1 -1
- package/dist/Modal-CMiFcXC9.mjs +260 -0
- package/dist/Modal-CMiFcXC9.mjs.map +1 -0
- package/dist/Modal-ymxlGYKt.d.mts +145 -0
- package/dist/Modal.d.mts +2 -145
- package/dist/{PageHeader-DJOlcAiW.mjs → PageHeader-D_0p7UK_.mjs} +2 -2
- package/dist/{PageHeader-DJOlcAiW.mjs.map → PageHeader-D_0p7UK_.mjs.map} +1 -1
- package/dist/PageHeader.d.mts +1 -1
- package/dist/PageLayoutFrame.d.mts +28 -0
- package/dist/{PageSelector-BMz2Q4P6.d.mts → PageSelector-Bxulu6vU.d.mts} +3 -3
- package/dist/PageSelector.d.mts +1 -1
- package/dist/{Pagination-B1u203DE.mjs → Pagination-Co9CfyFQ.mjs} +5 -5
- package/dist/{Pagination-B1u203DE.mjs.map → Pagination-Co9CfyFQ.mjs.map} +1 -1
- package/dist/{Pagination-ne9hnVoe.d.mts → Pagination-Dg-4O7F7.d.mts} +2 -2
- package/dist/Pagination.d.mts +1 -1
- package/dist/{Pii-Dz4woKd8.mjs → Pii-JGV9gP95.mjs} +2 -2
- package/dist/{Pii-Dz4woKd8.mjs.map → Pii-JGV9gP95.mjs.map} +1 -1
- package/dist/{PillShell-ChTB_koa.d.mts → PillShell-BA7KK1zS.d.mts} +2 -2
- package/dist/PillShell.d.mts +1 -1
- package/dist/{Popover-opVa9Xhc.mjs → Popover-ZAj03lws.mjs} +15 -2
- package/dist/Popover-ZAj03lws.mjs.map +1 -0
- package/dist/ProgressIndicator-CQg08vuA.mjs +188 -0
- package/dist/ProgressIndicator-CQg08vuA.mjs.map +1 -0
- package/dist/ProgressIndicator-D85HQGSx.d.mts +66 -0
- package/dist/ProgressIndicator.d.mts +2 -66
- package/dist/{PseudoClassProps-CdRF3QNn.d.mts → PseudoClassProps-BHs8TX_3.d.mts} +1 -1
- package/dist/PseudoClassProps.d.mts +1 -1
- package/dist/{Radio-Ds1pODKw.mjs → Radio-CYV290JI.mjs} +2 -2
- package/dist/{Radio-Ds1pODKw.mjs.map → Radio-CYV290JI.mjs.map} +1 -1
- package/dist/{RadioGroup-CxL6LW4q.d.mts → RadioGroup-Cq3KV1TN.d.mts} +1 -1
- package/dist/{RadioGroup-HIC9V2hO.mjs → RadioGroup-lWMMtu9V.mjs} +2 -2
- package/dist/{RadioGroup-HIC9V2hO.mjs.map → RadioGroup-lWMMtu9V.mjs.map} +1 -1
- package/dist/RadioGroup.d.mts +1 -1
- package/dist/{RangeCalendar-B7TwRJbg.d.mts → RangeCalendar-Mh7h74Tp.d.mts} +2 -2
- package/dist/RangeCalendar.d.mts +1 -1
- package/dist/RangeCalendarPresets.d.mts +1 -1
- package/dist/{RouterContext-B7N12wkK.d.mts → RouterContext-B3IU1jb0.d.mts} +2 -2
- package/dist/RouterContext.d.mts +1 -1
- package/dist/{RouterLink-Bq36EGjc.d.mts → RouterLink-CwAqTLC2.d.mts} +2 -2
- package/dist/RouterLink.d.mts +1 -1
- package/dist/RuleEditorFields.d.mts +2 -2
- package/dist/RulesPill.d.mts +1 -1
- package/dist/{SearchInput-D69WxMNq.d.mts → SearchInput-BGyUUcoz.d.mts} +2 -2
- package/dist/SearchInput.d.mts +1 -1
- package/dist/SectionHeading.d.mts +1 -1
- package/dist/{SegmentedControl-OHrfJiw0.mjs → SegmentedControl-BEbIcV3g.mjs} +13 -6
- package/dist/SegmentedControl-BEbIcV3g.mjs.map +1 -0
- package/dist/{SegmentedControl-vCnGsdXo.d.mts → SegmentedControl-DgDabSgr.d.mts} +2 -1
- package/dist/SegmentedControl.d.mts +1 -1
- package/dist/{Select-sQb4dQwT.d.mts → Select-wqTtGyga.d.mts} +3 -3
- package/dist/{Select-DE7uv9C8.mjs → Select-yC2t_gZb.mjs} +10 -8
- package/dist/Select-yC2t_gZb.mjs.map +1 -0
- package/dist/Select.d.mts +1 -1
- package/dist/SingleColumnLayout.d.mts +16 -0
- package/dist/{Spinner-DplDSBqf.mjs → Spinner-BlAg8_OX.mjs} +1 -1
- package/dist/{Spinner-DplDSBqf.mjs.map → Spinner-BlAg8_OX.mjs.map} +1 -1
- package/dist/SplitColumnLayout.d.mts +19 -0
- package/dist/{Stack-ChsImaEY.mjs → Stack-Bkn0TUDe.mjs} +1 -1
- package/dist/{Stack-ChsImaEY.mjs.map → Stack-Bkn0TUDe.mjs.map} +1 -1
- package/dist/{Stack-8KGPQp0u.d.mts → Stack-CYqjBXe8.d.mts} +1 -1
- package/dist/Stack.d.mts +1 -1
- package/dist/StatusIndicator-DT2zNbkp.mjs +315 -0
- package/dist/StatusIndicator-DT2zNbkp.mjs.map +1 -0
- package/dist/{Sticker-C3Eb13OQ.mjs → Sticker-BLbgJxcH.mjs} +5 -8
- package/dist/Sticker-BLbgJxcH.mjs.map +1 -0
- package/dist/{Sticker-Bf9rhSkv.d.mts → Sticker-BmyKaxwx.d.mts} +4 -4
- package/dist/Sticker.d.mts +1 -1
- package/dist/StringValueControl.d.mts +1 -1
- package/dist/Tab.d.mts +1 -1
- package/dist/{TabBar-BepWbJHz.mjs → TabBar-Bj84q1Mr.mjs} +4 -7
- package/dist/{TabBar-BepWbJHz.mjs.map → TabBar-Bj84q1Mr.mjs.map} +1 -1
- package/dist/{Table-BefytM6w.d.mts → Table-DhdHUQ8V.d.mts} +1 -1
- package/dist/{Table-B1gRr2XT.mjs → Table-WqNfjasd.mjs} +22 -3
- package/dist/Table-WqNfjasd.mjs.map +1 -0
- package/dist/Table.d.mts +1 -1
- package/dist/{TableBody-BZ34-_wV.d.mts → TableBody-qoSvQDds.d.mts} +1 -1
- package/dist/TableBody.d.mts +1 -1
- package/dist/{TableBox-NP6bhtKb.mjs → TableBox-obl64W5Y.mjs} +22 -17
- package/dist/TableBox-obl64W5Y.mjs.map +1 -0
- package/dist/TableBox.d.mts +2 -2
- package/dist/{TableBoxCell-CHGw9HVj.d.mts → TableBoxCell-DzYMx4Ju.d.mts} +6 -6
- package/dist/TableBoxCell.d.mts +1 -1
- package/dist/TableBoxField.d.mts +4 -3
- package/dist/{TableBoxRow-BljsXKrL.d.mts → TableBoxRow-B4rFCvWK.d.mts} +3 -3
- package/dist/TableBoxRow.d.mts +1 -1
- package/dist/{TableBoxRowActions-h6HNEv9F.d.mts → TableBoxRowActions-qMKcVuTL.d.mts} +2 -2
- package/dist/TableBoxRowActions.d.mts +1 -1
- package/dist/{TableCell-DorRxyke.d.mts → TableCell-CGPQRc5g.d.mts} +2 -2
- package/dist/TableCell.d.mts +1 -1
- package/dist/{TableControls-CYTpBlQN.mjs → TableControls-RS_ozBsI.mjs} +219 -70
- package/dist/TableControls-RS_ozBsI.mjs.map +1 -0
- package/dist/{TableControls-BtGFiZeD.d.mts → TableControls-WP78qtET.d.mts} +4 -3
- package/dist/TableControls.d.mts +1 -1
- package/dist/{TableControlsContext-C3DYeUmB.d.mts → TableControlsContext-DZIZSyfX.d.mts} +2 -2
- package/dist/TableControlsContext.d.mts +1 -1
- package/dist/{TableHead-B0Fdldgw.d.mts → TableHead-36j-_oyn.d.mts} +1 -1
- package/dist/TableHead.d.mts +1 -1
- package/dist/{TableHeaderCell-C_7X8QAT.d.mts → TableHeaderCell-C7gp9j1X.d.mts} +1 -1
- package/dist/TableHeaderCell.d.mts +1 -1
- package/dist/{TableLayout-CXVVzq0e.d.mts → TableLayout-CQqIV0vj.d.mts} +1 -1
- package/dist/TableLayout.d.mts +1 -1
- package/dist/{TableRow-Dr61XJNw.d.mts → TableRow-BJZM8I8i.d.mts} +2 -2
- package/dist/TableRow.d.mts +1 -1
- package/dist/TableTH.d.mts +1 -1
- package/dist/{TableViewConfigurationDropdown-CCtwcB3I.d.mts → TableViewConfigurationDropdown-Dwy_9FBz.d.mts} +2 -2
- package/dist/TableViewConfigurationDropdown.d.mts +1 -1
- package/dist/{TechnicalSticker-_LtE-PRY.mjs → TechnicalSticker-CL0zkOAj.mjs} +1 -1
- package/dist/{TechnicalSticker-_LtE-PRY.mjs.map → TechnicalSticker-CL0zkOAj.mjs.map} +1 -1
- package/dist/{Text-DD_W_ixb.d.mts → Text-DbtTa83E.d.mts} +3 -3
- package/dist/Text.d.mts +1 -1
- package/dist/{TextArea-DOofaXJi.d.mts → TextArea-CbxF6u7z.d.mts} +2 -2
- package/dist/{TextArea-8TuVvmvj.mjs → TextArea-CfZr5Sk4.mjs} +2 -2
- package/dist/{TextArea-8TuVvmvj.mjs.map → TextArea-CfZr5Sk4.mjs.map} +1 -1
- package/dist/TextArea.d.mts +1 -1
- package/dist/{TextUnderlineTooltip-BPLKU9wu.d.mts → TextUnderlineTooltip-BgLQuK38.d.mts} +2 -2
- package/dist/TextUnderlineTooltip.d.mts +1 -1
- package/dist/Tile.d.mts +1 -1
- package/dist/Toast.d.mts +1 -1
- package/dist/{Toggle-2nrUX591.d.mts → Toggle-BYMLrPXk.d.mts} +3 -1
- package/dist/{Toggle-Dcn2Rqgm.mjs → Toggle-D4ZaUcVt.mjs} +11 -5
- package/dist/Toggle-D4ZaUcVt.mjs.map +1 -0
- package/dist/Toggle.d.mts +1 -1
- package/dist/{Tooltip-Cnqf1-tx.d.mts → Tooltip-4pshzB_i.d.mts} +2 -2
- package/dist/Tooltip.d.mts +1 -1
- package/dist/{TruncatedText-g2T5HlqX.d.mts → TruncatedText-O7hE3w0O.d.mts} +1 -1
- package/dist/VersionHistory.d.mts +23 -0
- package/dist/VersionHistoryItem-CIcEgl0K.d.mts +54 -0
- package/dist/VersionHistoryItem.d.mts +2 -0
- package/dist/WizardModal.d.mts +41 -0
- package/dist/accordionTitleTypography-CNB1w3kn.d.mts +17 -0
- package/dist/accordionTitleTypography.d.mts +2 -0
- package/dist/assertNever.d.mts +5 -0
- package/dist/{codec-CoX6LfOY.d.mts → codec-BXVBsB8Y.d.mts} +2 -2
- package/dist/codec.d.mts +1 -1
- package/dist/{color-Bt0Lv1e3.d.mts → color-3UO63ocQ.d.mts} +9 -4
- package/dist/components/Accordion/index.d.mts +4 -0
- package/dist/components/Accordion/index.mjs +330 -0
- package/dist/components/Accordion/index.mjs.map +1 -0
- package/dist/components/Attribute/index.mjs +2 -2
- package/dist/components/Badge/index.mjs +1 -1
- package/dist/components/Banner/index.mjs +1 -1
- package/dist/components/BottomPanel/index.mjs +5 -3
- package/dist/components/BottomPanel/index.mjs.map +1 -1
- package/dist/components/Breadcrumbs/index.d.mts +1 -1
- package/dist/components/Breadcrumbs/index.mjs +1 -1
- package/dist/components/Button/index.d.mts +2 -2
- package/dist/components/Button/index.mjs +1 -1
- package/dist/components/ButtonGroup/index.mjs +2 -2
- package/dist/components/Card/index.d.mts +2 -2
- package/dist/components/CardV2/index.d.mts +1 -1
- package/dist/components/CardV2/index.mjs +1 -1
- package/dist/components/Checkbox/index.d.mts +1 -1
- package/dist/components/Checkbox/index.mjs +1 -1
- package/dist/components/CodeHighlight/index.mjs +3 -1
- package/dist/components/CodeHighlight/index.mjs.map +1 -1
- package/dist/components/Combobox/index.d.mts +2 -2
- package/dist/components/Combobox/index.mjs +1 -1
- package/dist/components/ConfigFormGroup/index.mjs +2 -2
- package/dist/components/DataTable/TableControls/index.d.mts +19 -19
- package/dist/components/DataTable/TableControls/index.mjs +1 -1
- package/dist/components/DataTable/index.mjs +27 -16
- package/dist/components/DataTable/index.mjs.map +1 -1
- package/dist/components/DataTable/types.d.mts +2 -2
- package/dist/components/DatePicker/index.d.mts +5 -5
- package/dist/components/DatePicker/index.mjs +1 -1
- package/dist/components/DropdownButton/index.mjs +1 -1
- package/dist/components/DropdownMenu/index.d.mts +1 -1
- package/dist/components/DropdownMenu/index.mjs +1 -1
- package/dist/components/FloatingPanel/index.mjs +10 -7
- package/dist/components/FloatingPanel/index.mjs.map +1 -1
- package/dist/components/FormControl/index.d.mts +2 -2
- package/dist/components/FormControl/index.mjs +2 -2
- package/dist/components/FormField/index.d.mts +1 -1
- package/dist/components/FormField/index.mjs +1 -1
- package/dist/components/Grid/index.d.mts +2 -2
- package/dist/components/Grid/index.mjs +2 -85
- package/dist/components/HoverCopyableField/index.mjs +1 -1
- package/dist/components/ImageTile/index.mjs +13 -9
- package/dist/components/ImageTile/index.mjs.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.mjs +1 -78
- package/dist/components/ListBox/index.d.mts +3 -3
- package/dist/components/ListBox/index.mjs +1 -1
- package/dist/components/LoadingShimmer/index.mjs +1 -1
- package/dist/components/MaskedInput/index.mjs +1 -1
- package/dist/components/Menu/index.d.mts +1 -1
- package/dist/components/Menu/index.mjs +1 -1
- package/dist/components/Modal/index.d.mts +1 -1
- package/dist/components/Modal/index.mjs +1 -257
- package/dist/components/PageHeader/index.mjs +1 -1
- package/dist/components/Pagination/index.d.mts +3 -3
- package/dist/components/Pagination/index.mjs +1 -1
- package/dist/components/Pii/index.mjs +1 -1
- package/dist/components/Popover/index.mjs +1 -1
- package/dist/components/ProgressBar/index.mjs +1 -2
- package/dist/components/ProgressBar/index.mjs.map +1 -1
- package/dist/components/ProgressIndicator/index.d.mts +2 -2
- package/dist/components/ProgressIndicator/index.mjs +1 -187
- package/dist/components/Radio/index.mjs +1 -1
- package/dist/components/RadioGroup/index.d.mts +1 -1
- package/dist/components/RadioGroup/index.mjs +1 -1
- package/dist/components/RightPanel/index.mjs +10 -7
- package/dist/components/RightPanel/index.mjs.map +1 -1
- package/dist/components/SegmentedControl/index.d.mts +1 -1
- package/dist/components/SegmentedControl/index.mjs +1 -1
- package/dist/components/Select/index.d.mts +1 -1
- package/dist/components/Select/index.mjs +1 -1
- package/dist/components/Slider/index.mjs +1 -1
- package/dist/components/Slider/index.mjs.map +1 -1
- package/dist/components/SmartTextInput/parser/method-chain/types.d.mts +2 -105
- package/dist/components/SmartTextInput/parser/smart-text/types.d.mts +1 -1
- package/dist/components/Spinner/index.mjs +1 -1
- package/dist/components/Stack/index.d.mts +1 -1
- package/dist/components/Stack/index.mjs +1 -1
- package/dist/components/StatusIndicator/index.mjs +1 -314
- package/dist/components/Sticker/index.d.mts +1 -1
- package/dist/components/Sticker/index.mjs +1 -1
- package/dist/components/TabBar/index.mjs +1 -1
- package/dist/components/Table/index.d.mts +8 -8
- package/dist/components/Table/index.mjs +1 -1
- package/dist/components/TableBox/index.d.mts +2 -2
- package/dist/components/TableBox/index.mjs +1 -1
- package/dist/components/TechnicalSticker/index.mjs +1 -1
- package/dist/components/Text/index.d.mts +1 -1
- package/dist/components/TextArea/index.d.mts +1 -1
- package/dist/components/TextArea/index.mjs +1 -1
- package/dist/components/Tile/index.mjs +2 -2
- package/dist/components/Toast/index.mjs +2 -2
- package/dist/components/Toast/index.mjs.map +1 -1
- package/dist/components/Toggle/index.d.mts +1 -1
- package/dist/components/Toggle/index.mjs +1 -1
- package/dist/components/Tooltip/index.d.mts +3 -3
- package/dist/components/VersionHistory/index.d.mts +3 -0
- package/dist/components/VersionHistory/index.mjs +389 -0
- package/dist/components/VersionHistory/index.mjs.map +1 -0
- package/dist/components/WizardModal/index.d.mts +2 -0
- package/dist/components/WizardModal/index.mjs +106 -0
- package/dist/components/WizardModal/index.mjs.map +1 -0
- package/dist/compound-expression.d.mts +1 -1
- package/dist/{constants-D8bzZ-7B.d.mts → constants-BOxzLX-O.d.mts} +1 -1
- package/dist/constants.d.mts +1 -1
- package/dist/{createPath-BDYRvl57.d.mts → createPath-OeTC9kvS.d.mts} +2 -2
- package/dist/createPath.d.mts +1 -1
- package/dist/{date-filter-CZeChs9T.mjs → date-filter-BnzR6NxT.mjs} +1 -1
- package/dist/{date-filter-CZeChs9T.mjs.map → date-filter-BnzR6NxT.mjs.map} +1 -1
- package/dist/{date-range-rule-value-jZAHuxZJ.d.mts → date-range-rule-value-BRp5Bi7R.d.mts} +2 -2
- package/dist/date-range-rule-value.d.mts +1 -1
- package/dist/{date-rule-intent-CC1LdkE7.d.mts → date-rule-intent-CDBtV0ET.d.mts} +3 -3
- package/dist/date-rule-intent.d.mts +1 -1
- package/dist/display.d.mts +2 -2
- package/dist/fieldPickerOptions.d.mts +2 -2
- package/dist/{filter-size-context-BGczB5R9.d.mts → filter-size-context-CqvQ190x.d.mts} +2 -2
- package/dist/filter-size-context.d.mts +1 -1
- package/dist/format-date-value.d.mts +5 -0
- package/dist/helpers.d.mts +1 -1
- package/dist/{index-DalP_w0c.d.mts → index-BXSe73Xn.d.mts} +2 -2
- package/dist/{index-BRKXhLGa.d.mts → index-CyAok7As.d.mts} +2 -2
- package/dist/index-gVcIuWLd.d.mts +1 -0
- package/dist/{index-BZmGEbsA.d.mts → index-wKK9f9La.d.mts} +3 -3
- package/dist/index-zeAhjge4.d.mts +1 -0
- package/dist/index.d.mts +1 -1
- package/dist/index2.d.mts +1 -1
- package/dist/index3.d.mts +3 -3
- package/dist/index4.d.mts +1 -1
- package/dist/index5.d.mts +14 -14
- package/dist/{input-DCJivcWf.d.mts → input-C6cyiqm2.d.mts} +3 -3
- package/dist/inputFields.d.mts +14 -12
- package/dist/{intersperse-Bxcrxj2Q.mjs → intersperse-Df9zw7Bk.mjs} +1 -1
- package/dist/{intersperse-Bxcrxj2Q.mjs.map → intersperse-Df9zw7Bk.mjs.map} +1 -1
- package/dist/{jsonSchema-c_EfAj8y.d.mts → jsonSchema-CfGi1bzI.d.mts} +67 -11
- package/dist/lib/PDSProvider.d.mts +2 -2
- package/dist/lib/TruncatedText.d.mts +1 -1
- package/dist/lib/TruncatedTextWithTooltip.d.mts +1 -1
- package/dist/lib/chainTypes.d.mts +17 -0
- package/dist/lib/chainTypes.mjs +0 -0
- package/dist/lib/color.d.mts +2 -2
- package/dist/lib/color.mjs +18 -11
- package/dist/lib/color.mjs.map +1 -1
- package/dist/lib/customFunctionSchema.d.mts +49 -0
- package/dist/lib/customFunctionSchema.mjs +299 -0
- package/dist/lib/customFunctionSchema.mjs.map +1 -0
- package/dist/lib/date-filter/index.d.mts +2 -2
- package/dist/lib/date-filter/index.mjs +1 -1
- package/dist/lib/jsonSchema.d.mts +2 -2
- package/dist/lib/jsonSchema.mjs +36 -11
- package/dist/lib/jsonSchema.mjs.map +1 -1
- package/dist/lib/jsonSchemaType.d.mts +7 -0
- package/dist/lib/jsonSchemaType.mjs +31 -0
- package/dist/lib/jsonSchemaType.mjs.map +1 -0
- package/dist/lib/letPointerDownReachDocument.d.mts +22 -0
- package/dist/lib/letPointerDownReachDocument.mjs +25 -0
- package/dist/lib/letPointerDownReachDocument.mjs.map +1 -0
- package/dist/lib/message.d.mts +1 -1
- package/dist/lib/methodChain.d.mts +3 -66
- package/dist/lib/methodChain.mjs +1 -237
- package/dist/lib/methodChainNormalize.d.mts +2 -2
- package/dist/lib/methodChainTypes.d.mts +2 -23
- package/dist/lib/objectSchemaTypes.d.mts +1 -1
- package/dist/lib/platformObject.d.mts +38 -0
- package/dist/lib/platformObject.mjs +79 -0
- package/dist/lib/platformObject.mjs.map +1 -0
- package/dist/lib/pseudoClass.d.mts +1 -1
- package/dist/lib/router/adapters/reactRouter.d.mts +1 -1
- package/dist/lib/router/adapters/tanstack.d.mts +1 -1
- package/dist/lib/router/index.d.mts +5 -5
- package/dist/lib/schemaOptions.d.mts +173 -0
- package/dist/lib/schemaOptions.mjs +481 -0
- package/dist/lib/schemaOptions.mjs.map +1 -0
- package/dist/lib/semanticColor.d.mts +1 -1
- package/dist/lib/snakifyPath.d.mts +5 -0
- package/dist/lib/snakifyPath.mjs +11 -0
- package/dist/lib/snakifyPath.mjs.map +1 -0
- package/dist/{message-CjIHdhX1.d.mts → message-CblP0EjG.d.mts} +1 -1
- package/dist/methodChain-DAQxLgxt.mjs +241 -0
- package/dist/methodChain-DAQxLgxt.mjs.map +1 -0
- package/dist/methodChain-Pk1C3i_E.d.mts +66 -0
- package/dist/methodChainTypes-CqWzfx0M.d.mts +23 -0
- package/dist/mixins/focus.d.mts +1 -1
- package/dist/mixins/hoverable.d.mts +2 -2
- package/dist/mixins/input.d.mts +1 -1
- package/dist/mixins/input.mjs +6 -14
- package/dist/mixins/input.mjs.map +1 -1
- package/dist/mixins/menuItem.d.mts +2 -2
- package/dist/mixins/scrollbar.d.mts +10 -0
- package/dist/mixins/scrollbar.mjs +31 -0
- package/dist/mixins/scrollbar.mjs.map +1 -0
- package/dist/mixins/text.d.mts +1 -1
- package/dist/{operators-x_ZENhrT.d.mts → operators-CoXL5Hv6.d.mts} +2 -2
- package/dist/operators.d.mts +1 -1
- package/dist/{palette-qgPRWgUN.d.mts → palette-CxXUs1Fu.d.mts} +3 -3
- package/dist/palette.d.mts +1 -1
- package/dist/patterns/LayoutLoadingShimmer/index.mjs +5 -5
- package/dist/patterns/PageLayout/index.d.mts +4 -1
- package/dist/patterns/PageLayout/index.mjs +99 -2
- package/dist/patterns/PageLayout/index.mjs.map +1 -1
- package/dist/reactRouterFallback.d.mts +1 -1
- package/dist/relative-date-label.d.mts +1 -1
- package/dist/scrollExpandedItemIntoView.d.mts +12 -0
- package/dist/{semantic-DUctmpu_.d.mts → semantic-CFMBsuiJ.d.mts} +2 -2
- package/dist/{semanticColor-IAhXS17y.d.mts → semanticColor-DuJCmDrH.d.mts} +3 -3
- package/dist/{text-DjTGRUM1.d.mts → text-D8HPjiEX.d.mts} +1 -1
- package/dist/{theme-DKiszVRN.d.mts → theme-BcaR-Au5.d.mts} +3 -3
- package/dist/theme.d.mts +1 -1
- package/dist/time-range.d.mts +7 -0
- package/dist/tone.d.mts +3 -3
- package/dist/{types-CcZbBH0e.d.mts → types-BCiq4hGv.d.mts} +1 -1
- package/dist/types-BGMmkUpy.d.mts +105 -0
- package/dist/{types-N8PYonjD.d.mts → types-C4WUSW3e.d.mts} +7 -2
- package/dist/{types-CuQSgl1F.d.mts → types-CkpixGWr.d.mts} +1 -1
- package/dist/{types-D8rWSj3z.d.mts → types-Cl-w8tYc.d.mts} +1 -1
- package/dist/{types-gnF3MPfk2.d.mts → types-CoVZwrMW.d.mts} +2 -2
- package/dist/{types-RWjW1d9I.d.mts → types-DgyGecdM.d.mts} +1 -1
- package/dist/types.d.mts +1 -1
- package/dist/types2.d.mts +1 -1
- package/dist/types3.d.mts +1 -1
- package/dist/types4.d.mts +1 -1
- package/dist/types5.d.mts +1 -1
- package/dist/types6.d.mts +1 -1
- package/dist/{url-state-C2gl07_y.d.mts → url-state-8j_ef8Uf.d.mts} +2 -2
- package/dist/url-state.d.mts +1 -1
- package/dist/useComboboxFooterAction.d.mts +1 -1
- package/dist/{useFilterStateV2-BQYcAdKR.d.mts → useFilterStateV2-CW6eght1.d.mts} +3 -3
- package/dist/useFilterStateV2.d.mts +1 -1
- package/dist/{useFormField-DDbo-ExT.d.mts → useFormField-CLRZkUZt.d.mts} +4 -2
- package/dist/{useFormField-DsvC5dOb.mjs → useFormField-XezSxho_.mjs} +3 -2
- package/dist/useFormField-XezSxho_.mjs.map +1 -0
- package/dist/useFormField.d.mts +1 -1
- package/dist/{useFormGroup-CH3kiXoa.mjs → useFormGroup-C7Cax8zO.mjs} +1 -1
- package/dist/{useFormGroup-CH3kiXoa.mjs.map → useFormGroup-C7Cax8zO.mjs.map} +1 -1
- package/dist/{useLocationPathname-K2N4fw8j.d.mts → useLocationPathname-DH5Tdq5X.d.mts} +1 -1
- package/dist/useLocationPathname.d.mts +1 -1
- package/dist/{useTableBoxDragAndDrop-CbbH3pMK.d.mts → useTableBoxDragAndDrop-Da4TiYBT.d.mts} +1 -1
- package/dist/useTableBoxDragAndDrop.d.mts +1 -1
- package/dist/useTruncation.d.mts +1 -1
- package/dist/{utilities-D0EhDri-.d.mts → utilities-DcsbI71T.d.mts} +1 -1
- package/dist/utilities.d.mts +1 -1
- package/dist/utils/storybook.mjs +1 -1
- package/dist/utils/testing.d.mts +1 -1
- package/dist/utils/testing.mjs.map +1 -1
- package/dist/utils.d.mts +1 -1
- package/dist/{validation-CMtfUd-R.d.mts → validation-BgwNghi2.d.mts} +3 -3
- package/dist/validation.d.mts +1 -1
- package/dist/{value-control-resolver-Au9JNS5z.d.mts → value-control-resolver-B0HDRxRN.d.mts} +3 -2
- package/dist/value-control-resolver.d.mts +1 -1
- package/dist/variables/effect.d.mts +1 -1
- package/dist/variables/semantic.d.mts +1 -1
- package/dist/variables/semantic.mjs +15 -18
- package/dist/variables/semantic.mjs.map +1 -1
- package/llms.txt +10 -1
- package/package.json +27 -6
- package/skills/ui-authoring/COMPONENTS.md +6 -1
- package/skills/ui-authoring/PATTERNS.md +74 -115
- package/dist/Combobox-1M6EwVmq.mjs.map +0 -1
- package/dist/DatePicker-D9JurBBj.mjs.map +0 -1
- package/dist/DropdownMenu-CuKSNxc9.mjs.map +0 -1
- package/dist/FormControl-BEk4F1EV.mjs.map +0 -1
- package/dist/FormField-ByT0avVx.mjs.map +0 -1
- package/dist/Input-Bc2yWH3j.mjs.map +0 -1
- package/dist/ListBox-CFBhILRy.mjs.map +0 -1
- package/dist/LoadingShimmer-Dizk2sZu.mjs.map +0 -1
- package/dist/Popover-opVa9Xhc.mjs.map +0 -1
- package/dist/SegmentedControl-OHrfJiw0.mjs.map +0 -1
- package/dist/Select-DE7uv9C8.mjs.map +0 -1
- package/dist/Sticker-C3Eb13OQ.mjs.map +0 -1
- package/dist/Table-B1gRr2XT.mjs.map +0 -1
- package/dist/TableBox-NP6bhtKb.mjs.map +0 -1
- package/dist/TableControls-CYTpBlQN.mjs.map +0 -1
- package/dist/Toggle-Dcn2Rqgm.mjs.map +0 -1
- package/dist/components/Grid/index.mjs.map +0 -1
- package/dist/components/Link/index.mjs.map +0 -1
- package/dist/components/Modal/index.mjs.map +0 -1
- package/dist/components/ProgressIndicator/index.mjs.map +0 -1
- package/dist/components/StatusIndicator/index.mjs.map +0 -1
- package/dist/fieldSchemaTypes-BVYSm74B.d.mts +0 -39
- package/dist/lib/fieldSchemaTypes.d.mts +0 -2
- package/dist/lib/fieldSchemaTypes.mjs +0 -41
- package/dist/lib/fieldSchemaTypes.mjs.map +0 -1
- package/dist/lib/methodChain.mjs.map +0 -1
- package/dist/useFormField-DsvC5dOb.mjs.map +0 -1
- /package/dist/{index--p6oQT9I.d.mts → index-B24gUwOx.d.mts} +0 -0
- /package/dist/{index-B33elXxm.d.mts → index-BFnNtGdX.d.mts} +0 -0
- /package/dist/{index-BO_854F2.d.mts → index-BNRXMhlr.d.mts} +0 -0
- /package/dist/{index-BrGZHEgX.d.mts → index-BPiqSRRl.d.mts} +0 -0
- /package/dist/{index-BwAfCVZH2.d.mts → index-BYd3Btr1.d.mts} +0 -0
- /package/dist/{index-CRo77wc3.d.mts → index-Bt4QNofW.d.mts} +0 -0
- /package/dist/{index-CX869wwk.d.mts → index-CEqOS-7M.d.mts} +0 -0
- /package/dist/{index-CsuikFeJ.d.mts → index-CIABef8t.d.mts} +0 -0
- /package/dist/{index-CuYZJcK3.d.mts → index-CTHojwxd.d.mts} +0 -0
- /package/dist/{index-CzItj62a.d.mts → index-Cm-1i165.d.mts} +0 -0
- /package/dist/{index-D13oYj4_.d.mts → index-DB7t8whN.d.mts} +0 -0
- /package/dist/{index-D4DUvwPf.d.mts → index-DBGd4WeR.d.mts} +0 -0
- /package/dist/{index-DMRtRo7y.d.mts → index-DGsJdI5l.d.mts} +0 -0
- /package/dist/{index-DXJd7-2Z.d.mts → index-DWfPppPU.d.mts} +0 -0
- /package/dist/{index-DZlqSwCF.d.mts → index-DedbSZMv.d.mts} +0 -0
- /package/dist/{index-Dflz2i1X.d.mts → index-Jh0C5PIG.d.mts} +0 -0
- /package/dist/{index-DkrC-i1D.d.mts → index-NKYLt_R9.d.mts} +0 -0
- /package/dist/{index-DztUdPP_.d.mts → index-Qwqzz3XM.d.mts} +0 -0
- /package/dist/{index-Rvd9MEUQ.d.mts → index-VWno75SQ.d.mts} +0 -0
- /package/dist/{index-bHnO4ZKt.d.mts → index-fxXoW-qc.d.mts} +0 -0
|
@@ -8,24 +8,26 @@ import { i as Paragraph, r as Label$1 } from "./Text-BdluS7Fy.mjs";
|
|
|
8
8
|
import "./variables/transitions.mjs";
|
|
9
9
|
import { a as Tooltip } from "./Tooltip-C0FuZS1C.mjs";
|
|
10
10
|
import { transparent, withAlpha } from "./lib/color.mjs";
|
|
11
|
-
import {
|
|
11
|
+
import { letPointerDownReachDocument } from "./lib/letPointerDownReachDocument.mjs";
|
|
12
|
+
import { isActive, isDisabled, isFocused, isHovered, isNotDisabled } from "./lib/pseudoClass.mjs";
|
|
12
13
|
import { useScrollOverflow } from "./lib/useScrollOverflow.mjs";
|
|
13
14
|
import { Z_INDICES } from "./lib/zindex.mjs";
|
|
14
15
|
import { focusOutline, focusWithinOutline } from "./mixins/focus.mjs";
|
|
15
|
-
import {
|
|
16
|
-
import { n as
|
|
17
|
-
import {
|
|
18
|
-
import { r as
|
|
16
|
+
import { semanticScrollbar } from "./mixins/scrollbar.mjs";
|
|
17
|
+
import { n as Stack, t as HStack } from "./Stack-Bkn0TUDe.mjs";
|
|
18
|
+
import { n as Button, t as IconButton } from "./IconButton-CCLMYWVN.mjs";
|
|
19
|
+
import { i as TabBar, n as StyledTab, r as Tab } from "./TabBar-Bj84q1Mr.mjs";
|
|
20
|
+
import { r as InputGroup } from "./Input-Cl4o41k4.mjs";
|
|
19
21
|
import Input_default from "./components/Input/index.mjs";
|
|
20
|
-
import { c as MenuList, s as MenuItem } from "./Menu-
|
|
21
|
-
import { n as DropdownMenu_default } from "./DropdownMenu-
|
|
22
|
-
import { t as Combobox } from "./Combobox-
|
|
23
|
-
import { s as Popover_default } from "./Popover-
|
|
24
|
-
import { t as Toggle } from "./Toggle-
|
|
25
|
-
import { i as selectedPresetFor, n as parseDateFilterValue, r as resolveDateFilterValue, t as formatDateFilterValue } from "./date-filter-
|
|
26
|
-
import { t as ListBox } from "./ListBox-
|
|
27
|
-
import { m as FormField, o as ComboboxField } from "./FormField-
|
|
28
|
-
import { r as DatePicker, t as DateRangePicker } from "./DatePicker-
|
|
22
|
+
import { c as MenuList, s as MenuItem } from "./Menu-CwlI7BMN.mjs";
|
|
23
|
+
import { n as DropdownMenu_default } from "./DropdownMenu-rm9Nnxn7.mjs";
|
|
24
|
+
import { t as Combobox } from "./Combobox-C_kCY3P3.mjs";
|
|
25
|
+
import { s as Popover_default } from "./Popover-ZAj03lws.mjs";
|
|
26
|
+
import { t as Toggle } from "./Toggle-D4ZaUcVt.mjs";
|
|
27
|
+
import { i as selectedPresetFor, n as parseDateFilterValue, r as resolveDateFilterValue, t as formatDateFilterValue } from "./date-filter-BnzR6NxT.mjs";
|
|
28
|
+
import { t as ListBox } from "./ListBox-sqeLBiKS.mjs";
|
|
29
|
+
import { m as FormField, o as ComboboxField } from "./FormField-Crp3F-hv.mjs";
|
|
30
|
+
import { r as DatePicker, t as DateRangePicker } from "./DatePicker-C7z1yodK.mjs";
|
|
29
31
|
import { BorderRadius, Color, Spacing, Typography } from "@persona/design-tokens";
|
|
30
32
|
import { Fragment, createContext, createElement, forwardRef, useCallback, useContext, useEffect, useLayoutEffect, useMemo, useRef, useState } from "react";
|
|
31
33
|
import { Fragment as Fragment$1, jsx, jsxs } from "react/jsx-runtime";
|
|
@@ -35,10 +37,10 @@ import { debounce, isEqual, noop, partition, startCase, union, uniqueId } from "
|
|
|
35
37
|
import { useId } from "react-aria";
|
|
36
38
|
import Fuse from "fuse.js";
|
|
37
39
|
import { DragIcon as DragIcon$1 } from "@persona/icons/24px";
|
|
38
|
-
import { DateTime } from "luxon";
|
|
40
|
+
import { DateTime, Settings } from "luxon";
|
|
39
41
|
import * as PopoverPrimitive from "@radix-ui/react-popover";
|
|
40
42
|
import { DragDropContext, Draggable, Droppable } from "@hello-pangea/dnd";
|
|
41
|
-
import { parseDate } from "@internationalized/date";
|
|
43
|
+
import { parseAbsolute, parseDate, toCalendarDate, toZoned } from "@internationalized/date";
|
|
42
44
|
import { v4 } from "uuid";
|
|
43
45
|
//#region components/DataTable/FormControlLabel/FormControlLabel.ts
|
|
44
46
|
const FormControlLabel = styled(Label$1).attrs(() => ({
|
|
@@ -76,6 +78,12 @@ const CursorAnchor = styled.div`
|
|
|
76
78
|
pointer-events: none;
|
|
77
79
|
`;
|
|
78
80
|
const StyledInput = styled(Input_default)`
|
|
81
|
+
&&,
|
|
82
|
+
&&${isHovered}${isNotDisabled},
|
|
83
|
+
&&${isDisabled} {
|
|
84
|
+
background: transparent;
|
|
85
|
+
}
|
|
86
|
+
|
|
79
87
|
${({ theme, flattenDisplay }) => flattenDisplay && css`
|
|
80
88
|
border-width: 0px;
|
|
81
89
|
|
|
@@ -207,7 +215,7 @@ const CompactSearchInput = styled(SearchInput)`
|
|
|
207
215
|
* @see ControlBar.tsx
|
|
208
216
|
* @see ControlBar.spec.tsx
|
|
209
217
|
*/
|
|
210
|
-
const CompactBar = ({ title, searchProps, showFilters, setShowFilters, filtersId, isLoading, propertiesButton, tableActions, "data-tour-target": dataTourTarget, filterPanel }) => {
|
|
218
|
+
const CompactBar = ({ title, searchProps, showFilters, setShowFilters, filtersId, isLoading, isFilterPanelLoading, propertiesButton, tableActions, "data-tour-target": dataTourTarget, filterPanel }) => {
|
|
211
219
|
const autoExpandSearch = !title;
|
|
212
220
|
const [showSearch, setShowSearch] = useState(autoExpandSearch);
|
|
213
221
|
return /* @__PURE__ */ jsxs(Fragment$1, { children: [/* @__PURE__ */ jsxs(DataTableCompactBar, {
|
|
@@ -255,7 +263,8 @@ const CompactBar = ({ title, searchProps, showFilters, setShowFilters, filtersId
|
|
|
255
263
|
"aria-label": showFilters ? "Hide filters" : "Show filters",
|
|
256
264
|
"aria-expanded": showFilters,
|
|
257
265
|
"aria-controls": filtersId,
|
|
258
|
-
disabled: isLoading,
|
|
266
|
+
disabled: isLoading || isFilterPanelLoading,
|
|
267
|
+
isPending: isFilterPanelLoading,
|
|
259
268
|
active: showFilters,
|
|
260
269
|
width: "icon",
|
|
261
270
|
size: "sm",
|
|
@@ -289,9 +298,17 @@ const rectContainsRect = (parent, child) => {
|
|
|
289
298
|
//#region components/DataTable/TableControls/ControlBar.tsx
|
|
290
299
|
const TAB_ID_PREFIX = "table-controls__view-tab_";
|
|
291
300
|
const OVERFLOW_TAB_ID_PREFIX = "table-controls__view-tab-overflow_";
|
|
301
|
+
const OVERFLOW_WIDTH_SHRINK_THRESHOLD = 16;
|
|
292
302
|
function enterProxiesClick(e) {
|
|
293
303
|
if (e.key === "Enter") e.target.dispatchEvent(new Event("click", { bubbles: true }));
|
|
294
304
|
}
|
|
305
|
+
const ViewNameInput = styled(Input_default)`
|
|
306
|
+
&&,
|
|
307
|
+
&&${isHovered}${isNotDisabled},
|
|
308
|
+
&&${isDisabled} {
|
|
309
|
+
background: transparent;
|
|
310
|
+
}
|
|
311
|
+
`;
|
|
295
312
|
const AddViewButton = styled(IconButton)`
|
|
296
313
|
color: ${({ theme }) => semanticColor(theme, "FgSecondary", theme.color.text.secondary)};
|
|
297
314
|
`;
|
|
@@ -304,6 +321,7 @@ const LockedTab = styled(Tab)`
|
|
|
304
321
|
const OverflowMenuList = styled(MenuList)`
|
|
305
322
|
max-height: 300px;
|
|
306
323
|
overflow: auto;
|
|
324
|
+
${semanticScrollbar}
|
|
307
325
|
`;
|
|
308
326
|
const ExpandedSearchInput = styled(SearchInput)`
|
|
309
327
|
flex-basis: 440px;
|
|
@@ -332,6 +350,12 @@ const TabOverflowContainer = styled.div`
|
|
|
332
350
|
`;
|
|
333
351
|
const SavedViewTab = ({ view, selected, tabIdPrefix = TAB_ID_PREFIX, canEditViews, handleNameChange, onDuplicateView, onDeleteView, onSelectView, onResetCurrentView, onSaveView, onSetDefaultView, isViewDirty, showTabContextMenu, setShowTabContextMenu, className, ...rest }) => {
|
|
334
352
|
const inputRef = useRef(null);
|
|
353
|
+
const lastSubmittedNameRef = useRef(null);
|
|
354
|
+
const submitNameChange = (newName) => {
|
|
355
|
+
if (newName === view.name || newName === lastSubmittedNameRef.current) return;
|
|
356
|
+
lastSubmittedNameRef.current = newName;
|
|
357
|
+
handleNameChange?.(view, newName);
|
|
358
|
+
};
|
|
335
359
|
const tab = /* @__PURE__ */ jsx(StyledTab, {
|
|
336
360
|
id: `${tabIdPrefix}${view.id}`,
|
|
337
361
|
selected,
|
|
@@ -348,7 +372,8 @@ const SavedViewTab = ({ view, selected, tabIdPrefix = TAB_ID_PREFIX, canEditView
|
|
|
348
372
|
open: showTabContextMenu,
|
|
349
373
|
onOpenChange: (open) => {
|
|
350
374
|
if (selected) setShowTabContextMenu(open);
|
|
351
|
-
if (
|
|
375
|
+
if (open) lastSubmittedNameRef.current = null;
|
|
376
|
+
else if (inputRef.current) submitNameChange(inputRef.current.value);
|
|
352
377
|
},
|
|
353
378
|
contentProps: {
|
|
354
379
|
align: "start",
|
|
@@ -356,11 +381,11 @@ const SavedViewTab = ({ view, selected, tabIdPrefix = TAB_ID_PREFIX, canEditView
|
|
|
356
381
|
},
|
|
357
382
|
children: /* @__PURE__ */ jsxs(Stack, {
|
|
358
383
|
spacing: Spacing[3],
|
|
359
|
-
children: [/* @__PURE__ */ jsx(
|
|
384
|
+
children: [/* @__PURE__ */ jsx(ViewNameInput, {
|
|
360
385
|
defaultValue: view.name,
|
|
361
|
-
onBlur: (e) =>
|
|
386
|
+
onBlur: (e) => submitNameChange(e.currentTarget.value),
|
|
362
387
|
onKeyDown: (e) => {
|
|
363
|
-
if (e.key === "Enter")
|
|
388
|
+
if (e.key === "Enter") submitNameChange(e.currentTarget.value);
|
|
364
389
|
},
|
|
365
390
|
disabled: !handleNameChange,
|
|
366
391
|
ref: inputRef
|
|
@@ -524,7 +549,7 @@ const ProductTourStyles = createGlobalStyle`
|
|
|
524
549
|
}
|
|
525
550
|
}
|
|
526
551
|
`;
|
|
527
|
-
const ControlBar = ({ presetViews, currentView, onSelectView, views, onAddView, onDuplicateView, onDeleteView, onViewNameChange, onSaveView, onSetDefaultView, isViewDirty, canEditViews, showFilters, setShowFilters, searchProps, filtersId, propertiesButton, tableActions, isLoading, showViews, selectedRows = [], bulkActions, onResetCurrentView, onClearSelection, title, "data-tour-target": dataTourTarget, compact, onError, filterPanel }) => {
|
|
552
|
+
const ControlBar = ({ presetViews, currentView, onSelectView, views, onAddView, onDuplicateView, onDeleteView, onViewNameChange, onSaveView, onSetDefaultView, isViewDirty, canEditViews, showFilters, setShowFilters, searchProps, filtersId, propertiesButton, tableActions, isLoading, isFilterPanelLoading, showViews, selectedRows = [], bulkActions, onResetCurrentView, onClearSelection, title, "data-tour-target": dataTourTarget, compact, onError, filterPanel }) => {
|
|
528
553
|
const tabListRef = useRef(null);
|
|
529
554
|
const tabOverflowRef = useRef(null);
|
|
530
555
|
const [hiddenViews, setHiddenViews] = useState([]);
|
|
@@ -549,7 +574,7 @@ const ControlBar = ({ presetViews, currentView, onSelectView, views, onAddView,
|
|
|
549
574
|
}
|
|
550
575
|
setHiddenViews((firstHiddenIndex === -1 ? [] : views?.slice(firstHiddenIndex)) || []);
|
|
551
576
|
const tabOverflowWidth = tabOverflowRef.current?.getBoundingClientRect().width;
|
|
552
|
-
if (tabOverflowWidth) setTabOverflowWidth(tabOverflowWidth);
|
|
577
|
+
if (tabOverflowWidth) setTabOverflowWidth((prev) => prev != null && prev > tabOverflowWidth && prev - tabOverflowWidth < OVERFLOW_WIDTH_SHRINK_THRESHOLD ? prev : tabOverflowWidth);
|
|
553
578
|
}, [setHiddenViews, views]);
|
|
554
579
|
useLayoutEffect(() => {
|
|
555
580
|
if (!showViews || !tabListRef.current) return;
|
|
@@ -598,6 +623,7 @@ const ControlBar = ({ presetViews, currentView, onSelectView, views, onAddView,
|
|
|
598
623
|
setShowFilters,
|
|
599
624
|
filtersId,
|
|
600
625
|
isLoading,
|
|
626
|
+
isFilterPanelLoading,
|
|
601
627
|
propertiesButton,
|
|
602
628
|
tableActions,
|
|
603
629
|
filterPanel
|
|
@@ -740,7 +766,8 @@ const ControlBar = ({ presetViews, currentView, onSelectView, views, onAddView,
|
|
|
740
766
|
"aria-label": showFilters ? "Hide filters" : "Show filters",
|
|
741
767
|
"aria-expanded": showFilters,
|
|
742
768
|
"aria-controls": filtersId,
|
|
743
|
-
disabled: isLoading,
|
|
769
|
+
disabled: isLoading || isFilterPanelLoading,
|
|
770
|
+
isPending: isFilterPanelLoading,
|
|
744
771
|
active: showFilters,
|
|
745
772
|
width: "icon",
|
|
746
773
|
size: "md",
|
|
@@ -755,7 +782,7 @@ const ControlBar = ({ presetViews, currentView, onSelectView, views, onAddView,
|
|
|
755
782
|
};
|
|
756
783
|
//#endregion
|
|
757
784
|
//#region components/DataTable/TableControls/TableControls.tsx
|
|
758
|
-
const TableControls = ({ filterPanel, searchProps, defaultShowFilters, showFilters: controlledShowFilters, setShowFilters: controlledSetShowFilters, className, tableActions, propertiesButton, isLoading, showViews, canEditViews, onSelectView, views, currentView, onAddView, onViewNameChange, onDuplicateView, onDeleteView, onSaveView, onSetDefaultView, isViewDirty, selectedRows, bulkActions, onClearSelection, title, presetViews, compact, columnConfigurationProps, showFiltersAlways = false, onError, "data-tour-target": dataTourTarget }) => {
|
|
785
|
+
const TableControls = ({ filterPanel, searchProps, defaultShowFilters, showFilters: controlledShowFilters, setShowFilters: controlledSetShowFilters, className, tableActions, propertiesButton, isLoading, isFilterPanelLoading, showViews, canEditViews, onSelectView, views, currentView, onAddView, onViewNameChange, onDuplicateView, onDeleteView, onSaveView, onSetDefaultView, isViewDirty, selectedRows, bulkActions, onClearSelection, title, presetViews, compact, columnConfigurationProps, showFiltersAlways = false, onError, "data-tour-target": dataTourTarget }) => {
|
|
759
786
|
const filtersId = useId();
|
|
760
787
|
const [internalShowFilters, internalSetShowFilters] = useState(defaultShowFilters ?? false);
|
|
761
788
|
const showFilters = controlledShowFilters != null ? controlledShowFilters : internalShowFilters;
|
|
@@ -786,13 +813,14 @@ const TableControls = ({ filterPanel, searchProps, defaultShowFilters, showFilte
|
|
|
786
813
|
onSetDefaultView: compact ? void 0 : onSetDefaultView,
|
|
787
814
|
isViewDirty,
|
|
788
815
|
canEditViews: compact ? false : canEditViews,
|
|
789
|
-
showFilters,
|
|
790
|
-
setShowFilters: filterPanel != null && !showFiltersAlways ? setShowFilters : void 0,
|
|
816
|
+
showFilters: showFilters && (showFiltersAlways || !isFilterPanelLoading),
|
|
817
|
+
setShowFilters: (filterPanel != null || isFilterPanelLoading) && !showFiltersAlways ? setShowFilters : void 0,
|
|
791
818
|
filtersId,
|
|
792
819
|
searchProps,
|
|
793
820
|
propertiesButton: enhancedPropertiesButton,
|
|
794
821
|
tableActions,
|
|
795
822
|
isLoading,
|
|
823
|
+
isFilterPanelLoading,
|
|
796
824
|
selectedRows,
|
|
797
825
|
bulkActions,
|
|
798
826
|
onClearSelection,
|
|
@@ -1239,6 +1267,7 @@ const VALUELESS_OPERATORS = new Set(["is_empty", "is_not_empty"]);
|
|
|
1239
1267
|
* a `{ startDate, endDate }` pair for `between`.
|
|
1240
1268
|
*/
|
|
1241
1269
|
const RANGE_OPERATORS = new Set(["between"]);
|
|
1270
|
+
const TIME_COMPONENT$1 = /T\d{2}:\d{2}/;
|
|
1242
1271
|
function getOperatorsForType(type) {
|
|
1243
1272
|
return OPERATORS_BY_TYPE[type] ?? [];
|
|
1244
1273
|
}
|
|
@@ -1376,6 +1405,17 @@ function emptyValueForRule(field, operator) {
|
|
|
1376
1405
|
function reconcileValueForOperator(field, nextOperator, previousOperator, value) {
|
|
1377
1406
|
if (isValuelessOperator(nextOperator)) return null;
|
|
1378
1407
|
if (isRangeOperator(nextOperator) !== isRangeOperator(previousOperator)) return emptyValueForRule(field, nextOperator);
|
|
1408
|
+
if (field.type === "date" && nextOperator === "is" && typeof value === "string" && TIME_COMPONENT$1.test(value)) return DateTime.fromISO(value).setZone(Settings.defaultZone).toISODate();
|
|
1409
|
+
if (field.type === "date" && (previousOperator === "before" || previousOperator === "after") && (nextOperator === "before" || nextOperator === "after") && previousOperator !== nextOperator && typeof value === "string" && TIME_COMPONENT$1.test(value)) {
|
|
1410
|
+
const dateTime = DateTime.fromISO(value, { setZone: true });
|
|
1411
|
+
return nextOperator === "after" ? dateTime.set({
|
|
1412
|
+
second: 0,
|
|
1413
|
+
millisecond: 0
|
|
1414
|
+
}).toISO() : dateTime.set({
|
|
1415
|
+
second: 59,
|
|
1416
|
+
millisecond: 999
|
|
1417
|
+
}).toISO();
|
|
1418
|
+
}
|
|
1379
1419
|
return value ?? emptyValueForRule(field, nextOperator);
|
|
1380
1420
|
}
|
|
1381
1421
|
//#endregion
|
|
@@ -1398,6 +1438,14 @@ function resolveDateRangeRuleValue(rule, fieldType) {
|
|
|
1398
1438
|
return parsed ? resolveDateFilterValue(parsed) : null;
|
|
1399
1439
|
}
|
|
1400
1440
|
//#endregion
|
|
1441
|
+
//#region components/DataTable/TableControls/FiltersV2/format-date-value.ts
|
|
1442
|
+
const TIME_COMPONENT = /T\d{2}:\d{2}/;
|
|
1443
|
+
function formatDateValueForDisplay(value) {
|
|
1444
|
+
if (!TIME_COMPONENT.test(value)) return value;
|
|
1445
|
+
const dateTime = DateTime.fromISO(value).setZone(Settings.defaultZone);
|
|
1446
|
+
return dateTime.isValid ? dateTime.toFormat("MMM d, yyyy h:mm a") : value;
|
|
1447
|
+
}
|
|
1448
|
+
//#endregion
|
|
1401
1449
|
//#region components/DataTable/TableControls/FiltersV2/relative-date-label.ts
|
|
1402
1450
|
/**
|
|
1403
1451
|
* The preset name a rule should display instead of its dates, or `undefined`
|
|
@@ -1414,11 +1462,11 @@ function relativePresetLabel(value, relativeDate) {
|
|
|
1414
1462
|
}
|
|
1415
1463
|
//#endregion
|
|
1416
1464
|
//#region components/DataTable/TableControls/FiltersV2/AdvancedFilterRulesPopover/display.ts
|
|
1417
|
-
function valueDisplayString(value, optionLabels, relativeDate) {
|
|
1465
|
+
function valueDisplayString(value, optionLabels, relativeDate, fieldType) {
|
|
1418
1466
|
if (value == null) return;
|
|
1419
1467
|
const relativeLabel = relativePresetLabel(value, relativeDate);
|
|
1420
1468
|
if (relativeLabel) return relativeLabel;
|
|
1421
|
-
const display = (raw) => optionLabels?.[raw] ?? raw;
|
|
1469
|
+
const display = (raw) => optionLabels?.[raw] ?? (fieldType === "date" || fieldType === "date_range" ? formatDateValueForDisplay(raw) : raw);
|
|
1422
1470
|
if (Array.isArray(value)) {
|
|
1423
1471
|
if (value.length === 0) return;
|
|
1424
1472
|
if (value.length === 1) return display(String(value[0]));
|
|
@@ -1429,8 +1477,8 @@ function valueDisplayString(value, optionLabels, relativeDate) {
|
|
|
1429
1477
|
if (typeof value === "string") return value.length > 0 ? display(value) : void 0;
|
|
1430
1478
|
if (typeof value === "object") {
|
|
1431
1479
|
const { startDate, endDate } = value;
|
|
1432
|
-
if (startDate && endDate) return `${startDate} – ${endDate}`;
|
|
1433
|
-
return startDate
|
|
1480
|
+
if (startDate && endDate) return `${display(startDate)} – ${display(endDate)}`;
|
|
1481
|
+
return startDate ? display(startDate) : endDate ? display(endDate) : void 0;
|
|
1434
1482
|
}
|
|
1435
1483
|
}
|
|
1436
1484
|
function draftValueFor(field, operator) {
|
|
@@ -1544,9 +1592,21 @@ function buildFieldPickerOptions(registry, visibleCustomFieldParents, excludeFie
|
|
|
1544
1592
|
}
|
|
1545
1593
|
//#endregion
|
|
1546
1594
|
//#region components/DataTable/TableControls/FiltersV2/AdvancedFilterRulesPopover/RuleEditorFields.tsx
|
|
1595
|
+
const StatementFields = styled.div`
|
|
1596
|
+
display: contents;
|
|
1597
|
+
|
|
1598
|
+
&& input,
|
|
1599
|
+
&& input${isHovered}${isNotDisabled},
|
|
1600
|
+
&& input${isDisabled},
|
|
1601
|
+
&& [role='group'],
|
|
1602
|
+
&& [role='group']${isHovered}${isNotDisabled},
|
|
1603
|
+
&& [role='group']${isDisabled} {
|
|
1604
|
+
background: transparent;
|
|
1605
|
+
}
|
|
1606
|
+
`;
|
|
1547
1607
|
function RuleEditorFields({ registry, field, groupIndex, ruleIndex, rule, size, operators, operatorConfigurable, onFieldChange, onOperatorChange, onValueChange, renderValueControl }) {
|
|
1548
1608
|
const fieldOptions = useMemo(() => buildFieldPickerOptions(registry), [registry]);
|
|
1549
|
-
return /* @__PURE__ */ jsxs(
|
|
1609
|
+
return /* @__PURE__ */ jsxs(StatementFields, { children: [
|
|
1550
1610
|
/* @__PURE__ */ jsx(ComboboxField, {
|
|
1551
1611
|
label: "Value",
|
|
1552
1612
|
labelProps: { size },
|
|
@@ -1600,7 +1660,7 @@ function AdvancedFilterRuleRow({ registry, groupIndex, ruleIndex, rule, size, is
|
|
|
1600
1660
|
const operatorConfigurable = field ? fieldHasMultipleOperators(field) : true;
|
|
1601
1661
|
const condition = ruleIndex === 0 ? "If" : "And";
|
|
1602
1662
|
const rowId = `${groupIndex}-${ruleIndex}`;
|
|
1603
|
-
const valueDisplay = isValuelessOperator(rule.operator) ? void 0 : valueDisplayString(rule.value, registry.optionLabelsFor(rule.fieldId), carriesDateRange(rule.operator, field?.type) ? rule.relativeDate : void 0);
|
|
1663
|
+
const valueDisplay = isValuelessOperator(rule.operator) ? void 0 : valueDisplayString(rule.value, registry.optionLabelsFor(rule.fieldId), carriesDateRange(rule.operator, field?.type) ? rule.relativeDate : void 0, field?.type);
|
|
1604
1664
|
const textValue = [
|
|
1605
1665
|
condition,
|
|
1606
1666
|
field?.label ?? rule.fieldId,
|
|
@@ -1746,6 +1806,10 @@ const PopoverCard = styled(Card_default)`
|
|
|
1746
1806
|
width: 384px;
|
|
1747
1807
|
max-width: calc(100vw - ${Spacing[4]});
|
|
1748
1808
|
margin-bottom: 0;
|
|
1809
|
+
|
|
1810
|
+
&& {
|
|
1811
|
+
background-color: ${({ theme }) => semanticColor(theme, "SurfaceElevated", theme.color.background.primary)};
|
|
1812
|
+
}
|
|
1749
1813
|
`;
|
|
1750
1814
|
const Header = styled.div`
|
|
1751
1815
|
display: flex;
|
|
@@ -1760,6 +1824,7 @@ const Body = styled.div`
|
|
|
1760
1824
|
padding: 0 ${Spacing[3]} ${Spacing[3]};
|
|
1761
1825
|
max-height: 60vh;
|
|
1762
1826
|
overflow-y: auto;
|
|
1827
|
+
${semanticScrollbar}
|
|
1763
1828
|
`;
|
|
1764
1829
|
/**
|
|
1765
1830
|
* Bordered container that wraps a single AndGroup. Visually mirrors the
|
|
@@ -1794,6 +1859,11 @@ const GroupHeaderActions = styled.div`
|
|
|
1794
1859
|
align-items: center;
|
|
1795
1860
|
gap: ${Spacing[1]};
|
|
1796
1861
|
`;
|
|
1862
|
+
const GroupActionsMenu = styled(DropdownMenu_default)`
|
|
1863
|
+
&& {
|
|
1864
|
+
background-color: ${({ theme }) => semanticColor(theme, "SurfaceElevated", theme.color.background.primary)};
|
|
1865
|
+
}
|
|
1866
|
+
`;
|
|
1797
1867
|
/**
|
|
1798
1868
|
* A focused-down `ListBox` for the rules in one AndGroup. Strips the
|
|
1799
1869
|
* default 204px width AND the standalone border (the parent `GroupCard`
|
|
@@ -1945,6 +2015,7 @@ const AdvancedFilterRulesPopover = ({ registry, compound, onChange, trigger, ope
|
|
|
1945
2015
|
role: "dialog",
|
|
1946
2016
|
"aria-label": "Advanced filter rules",
|
|
1947
2017
|
id: baseId,
|
|
2018
|
+
onPointerDownCapture: letPointerDownReachDocument,
|
|
1948
2019
|
ref: popoverContentRef,
|
|
1949
2020
|
tabIndex: -1,
|
|
1950
2021
|
onKeyDown: (event) => {
|
|
@@ -1981,7 +2052,7 @@ const AdvancedFilterRulesPopover = ({ registry, compound, onChange, trigger, ope
|
|
|
1981
2052
|
children: [/* @__PURE__ */ jsxs(GroupHeader, { children: [/* @__PURE__ */ jsx(GroupTitle, {
|
|
1982
2053
|
$size: resolvedSize,
|
|
1983
2054
|
children: groupTitle
|
|
1984
|
-
}), /* @__PURE__ */ jsxs(GroupHeaderActions, { children: [hideGroupMenu ? null : /* @__PURE__ */ jsx(
|
|
2055
|
+
}), /* @__PURE__ */ jsxs(GroupHeaderActions, { children: [hideGroupMenu ? null : /* @__PURE__ */ jsx(GroupActionsMenu, {
|
|
1985
2056
|
trigger: /* @__PURE__ */ jsx(IconButton, {
|
|
1986
2057
|
size: subtleIconSize,
|
|
1987
2058
|
"aria-label": `More actions for filter group ${groupIndex + 1}`,
|
|
@@ -2248,6 +2319,7 @@ function ChoicesValueControl({ field, operator, value, onChange, onCommit, ariaL
|
|
|
2248
2319
|
//#endregion
|
|
2249
2320
|
//#region components/DataTable/TableControls/FiltersV2/value-controls/DateRangeValueControl/DateRangeValueControl.tsx
|
|
2250
2321
|
const CALENDAR_DATE = /^(\d{4}-\d{2}-\d{2})/;
|
|
2322
|
+
const DATE_ONLY$1 = /^\d{4}-\d{2}-\d{2}$/;
|
|
2251
2323
|
const parseIsoDate$1 = (value) => {
|
|
2252
2324
|
if (typeof value !== "string") return;
|
|
2253
2325
|
const calendarDay = CALENDAR_DATE.exec(value)?.[1];
|
|
@@ -2263,29 +2335,63 @@ const parseIsoDate$1 = (value) => {
|
|
|
2263
2335
|
return;
|
|
2264
2336
|
}
|
|
2265
2337
|
};
|
|
2266
|
-
const
|
|
2338
|
+
const parseIsoDateTime = (value, endpoint) => {
|
|
2339
|
+
if (typeof value !== "string") return;
|
|
2340
|
+
const dateTime = DateTime.fromISO(value, DATE_ONLY$1.test(value) ? { zone: Settings.defaultZone } : {}).setZone(Settings.defaultZone);
|
|
2341
|
+
if (!dateTime.isValid) return;
|
|
2342
|
+
return DATE_ONLY$1.test(value) ? dateTime[endpoint === "start" ? "startOf" : "endOf"]("day") : dateTime;
|
|
2343
|
+
};
|
|
2344
|
+
const useDateRange = (value, relativeDate, minuteMode) => {
|
|
2267
2345
|
const parsedRelativeDate = parseDateFilterValue(relativeDate);
|
|
2268
2346
|
const parsed = parsedRelativeDate?.kind === "relative" ? parsedRelativeDate : parseDateFilterValue(value);
|
|
2269
2347
|
const resolved = parsed ? resolveDateFilterValue(parsed) : void 0;
|
|
2270
2348
|
return useMemo(() => ({
|
|
2271
|
-
startDate: parseIsoDate$1(resolved?.startDate),
|
|
2272
|
-
endDate: parseIsoDate$1(resolved?.endDate)
|
|
2273
|
-
}), [
|
|
2349
|
+
startDate: minuteMode ? parseIsoDateTime(resolved?.startDate, "start") : parseIsoDate$1(resolved?.startDate),
|
|
2350
|
+
endDate: minuteMode ? parseIsoDateTime(resolved?.endDate, "end") : parseIsoDate$1(resolved?.endDate)
|
|
2351
|
+
}), [
|
|
2352
|
+
minuteMode,
|
|
2353
|
+
resolved?.startDate,
|
|
2354
|
+
resolved?.endDate
|
|
2355
|
+
]);
|
|
2274
2356
|
};
|
|
2275
|
-
const DateRangeValueControl = ({ field, operator, value, relativeDate, onChange, ariaLabel, hidePresets, portalContainer, visibleMonths, relativeDatesEnabled = false }) => {
|
|
2357
|
+
const DateRangeValueControl = ({ field, operator, value, relativeDate, onChange, ariaLabel, hidePresets, portalContainer, visibleMonths, relativeDatesEnabled = false, dateTimesEnabled = false }) => {
|
|
2276
2358
|
const size = useFilterBarSize();
|
|
2277
|
-
const
|
|
2359
|
+
const minuteMode = dateTimesEnabled && field.timeGranularity === "minute";
|
|
2360
|
+
const dateRange = useDateRange(value, relativeDate, minuteMode);
|
|
2278
2361
|
const noopChange = useCallback(() => void 0, []);
|
|
2279
2362
|
const handleChange = useCallback((range) => {
|
|
2280
2363
|
if (!range?.start || !range.end || range.start.compare(range.end) > 0) {
|
|
2281
2364
|
onChange(null);
|
|
2282
2365
|
return;
|
|
2283
2366
|
}
|
|
2284
|
-
|
|
2285
|
-
|
|
2286
|
-
|
|
2367
|
+
if (!minuteMode) {
|
|
2368
|
+
onChange({
|
|
2369
|
+
startDate: range.start.toString(),
|
|
2370
|
+
endDate: range.end.toString()
|
|
2371
|
+
});
|
|
2372
|
+
return;
|
|
2373
|
+
}
|
|
2374
|
+
const zone = Settings.defaultZone.name;
|
|
2375
|
+
const toDateTime = (date) => DateTime.fromJSDate(toZoned(date, zone).toDate(), { zone });
|
|
2376
|
+
const startDate = toDateTime(range.start).set({
|
|
2377
|
+
second: 0,
|
|
2378
|
+
millisecond: 0
|
|
2287
2379
|
});
|
|
2288
|
-
|
|
2380
|
+
const endDate = toDateTime(range.end).set({
|
|
2381
|
+
second: 59,
|
|
2382
|
+
millisecond: 999
|
|
2383
|
+
});
|
|
2384
|
+
if (!startDate.isValid || !endDate.isValid) {
|
|
2385
|
+
onChange(null);
|
|
2386
|
+
return;
|
|
2387
|
+
}
|
|
2388
|
+
const startIso = startDate.toISO();
|
|
2389
|
+
const endIso = endDate.toISO();
|
|
2390
|
+
onChange(startIso && endIso ? {
|
|
2391
|
+
startDate: startIso,
|
|
2392
|
+
endDate: endIso
|
|
2393
|
+
} : null);
|
|
2394
|
+
}, [minuteMode, onChange]);
|
|
2289
2395
|
const handleDateFilterChange = useCallback((change) => {
|
|
2290
2396
|
const intent = dateRuleIntent(change, relativeDatesEnabled);
|
|
2291
2397
|
if (intent.kind === "clear") {
|
|
@@ -2297,8 +2403,8 @@ const DateRangeValueControl = ({ field, operator, value, relativeDate, onChange,
|
|
|
2297
2403
|
return;
|
|
2298
2404
|
}
|
|
2299
2405
|
onChange({
|
|
2300
|
-
startDate: intent.range.start.toString(),
|
|
2301
|
-
endDate: intent.range.end.toString()
|
|
2406
|
+
startDate: toCalendarDate(intent.range.start).toString(),
|
|
2407
|
+
endDate: toCalendarDate(intent.range.end).toString()
|
|
2302
2408
|
}, {
|
|
2303
2409
|
kind: "relative",
|
|
2304
2410
|
preset: intent.preset
|
|
@@ -2309,6 +2415,8 @@ const DateRangeValueControl = ({ field, operator, value, relativeDate, onChange,
|
|
|
2309
2415
|
relativeDatesEnabled
|
|
2310
2416
|
]);
|
|
2311
2417
|
const relativePreset = selectedPresetFor(parseDateFilterValue(relativeDate), relativeDatesEnabled);
|
|
2418
|
+
const hasDayEdgeBounds = dateRange.startDate !== void 0 && dateRange.endDate !== void 0 && dateRange.startDate.toMillis() === dateRange.startDate.startOf("day").toMillis() && dateRange.endDate.toMillis() === dateRange.endDate.endOf("day").toMillis();
|
|
2419
|
+
const selectedPreset = minuteMode && relativePreset === void 0 && !hasDayEdgeBounds ? null : relativePreset;
|
|
2312
2420
|
if (isValuelessOperator(operator)) return null;
|
|
2313
2421
|
const hasCompleteRange = dateRange.startDate != null && dateRange.endDate != null;
|
|
2314
2422
|
return /* @__PURE__ */ jsx(DateRangePicker, {
|
|
@@ -2319,19 +2427,29 @@ const DateRangeValueControl = ({ field, operator, value, relativeDate, onChange,
|
|
|
2319
2427
|
label: null,
|
|
2320
2428
|
onChange: noopChange,
|
|
2321
2429
|
onDateFilterChange: handleDateFilterChange,
|
|
2322
|
-
selectedPreset
|
|
2430
|
+
selectedPreset,
|
|
2323
2431
|
portalContainer,
|
|
2324
2432
|
showClear: false,
|
|
2325
2433
|
size,
|
|
2326
|
-
visibleMonths
|
|
2434
|
+
visibleMonths,
|
|
2435
|
+
granularity: minuteMode ? "minute" : "day"
|
|
2327
2436
|
}, hasCompleteRange ? "range" : "empty");
|
|
2328
2437
|
};
|
|
2329
2438
|
//#endregion
|
|
2330
2439
|
//#region components/DataTable/TableControls/FiltersV2/value-controls/DateValueControl/DateValueControl.tsx
|
|
2331
|
-
const
|
|
2440
|
+
const DATE_ONLY = /^\d{4}-\d{2}-\d{2}$/;
|
|
2441
|
+
const parseIsoDate = (value, field, operator, dateTimesEnabled) => {
|
|
2332
2442
|
if (typeof value !== "string") return null;
|
|
2333
2443
|
try {
|
|
2334
|
-
|
|
2444
|
+
if (dateTimesEnabled && field.timeGranularity === "minute" && operator !== "is") {
|
|
2445
|
+
if (DATE_ONLY.test(value)) {
|
|
2446
|
+
const dateTime = DateTime.fromISO(value, { zone: Settings.defaultZone });
|
|
2447
|
+
const iso = (operator === "after" ? dateTime.startOf("day") : dateTime.endOf("day")).toISO();
|
|
2448
|
+
return iso ? parseAbsolute(iso, Settings.defaultZone.name) : null;
|
|
2449
|
+
}
|
|
2450
|
+
return parseAbsolute(value, Settings.defaultZone.name);
|
|
2451
|
+
}
|
|
2452
|
+
return DATE_ONLY.test(value) ? parseDate(value) : toCalendarDate(parseAbsolute(value, Settings.defaultZone.name));
|
|
2335
2453
|
} catch {
|
|
2336
2454
|
return null;
|
|
2337
2455
|
}
|
|
@@ -2344,20 +2462,38 @@ const parseIsoDate = (value) => {
|
|
|
2344
2462
|
* (`is_empty` / `is_not_empty`) — those operators are themselves the
|
|
2345
2463
|
* predicate and need no companion value.
|
|
2346
2464
|
*
|
|
2347
|
-
*
|
|
2348
|
-
*
|
|
2465
|
+
* Before/after values may use minute-precision ISO instants when the field
|
|
2466
|
+
* and bar both opt in; other date values remain `YYYY-MM-DD`.
|
|
2349
2467
|
*/
|
|
2350
|
-
const DateValueControl = ({ field, operator, value, onChange, ariaLabel }) => {
|
|
2468
|
+
const DateValueControl = ({ field, operator, value, onChange, ariaLabel, dateTimesEnabled = false }) => {
|
|
2351
2469
|
const size = useFilterBarSize();
|
|
2470
|
+
const minuteMode = dateTimesEnabled && field.timeGranularity === "minute" && operator !== "is";
|
|
2352
2471
|
const handleChange = useCallback((nextDate) => {
|
|
2353
|
-
|
|
2354
|
-
|
|
2472
|
+
if (!nextDate || !minuteMode) {
|
|
2473
|
+
onChange(nextDate ? nextDate.toString() : null);
|
|
2474
|
+
return;
|
|
2475
|
+
}
|
|
2476
|
+
const zone = Settings.defaultZone.name;
|
|
2477
|
+
const dateTime = DateTime.fromJSDate(toZoned(nextDate, zone).toDate(), { zone });
|
|
2478
|
+
onChange((operator === "after" ? dateTime.set({
|
|
2479
|
+
second: 0,
|
|
2480
|
+
millisecond: 0
|
|
2481
|
+
}) : dateTime.set({
|
|
2482
|
+
second: 59,
|
|
2483
|
+
millisecond: 999
|
|
2484
|
+
})).toISO() ?? null);
|
|
2485
|
+
}, [
|
|
2486
|
+
minuteMode,
|
|
2487
|
+
onChange,
|
|
2488
|
+
operator
|
|
2489
|
+
]);
|
|
2355
2490
|
if (isValuelessOperator(operator)) return null;
|
|
2356
2491
|
return /* @__PURE__ */ jsx(DatePicker, {
|
|
2357
|
-
value: parseIsoDate(value),
|
|
2492
|
+
value: parseIsoDate(value, field, operator, dateTimesEnabled),
|
|
2358
2493
|
size,
|
|
2359
2494
|
"aria-label": ariaLabel ?? `${field.label} value`,
|
|
2360
2495
|
onChange: handleChange,
|
|
2496
|
+
granularity: minuteMode ? "minute" : "day",
|
|
2361
2497
|
useModalZIndex: true
|
|
2362
2498
|
});
|
|
2363
2499
|
};
|
|
@@ -2675,7 +2811,7 @@ const PillRoot = styled.span`
|
|
|
2675
2811
|
background-color: ${tokens ? withAlpha(tokens.SurfaceAccent, tokens.Opacity25) : Color.CorePurple100};
|
|
2676
2812
|
color: ${semanticColor(theme, "FgAccent", Color.TextActive)};
|
|
2677
2813
|
` : css`
|
|
2678
|
-
background-color: ${semanticColor(theme, "
|
|
2814
|
+
background-color: ${semanticColor(theme, "SurfaceSecondary", theme.color.background.secondary)};
|
|
2679
2815
|
color: ${semanticColor(theme, "FgPrimary", Color.TextPrimary)};
|
|
2680
2816
|
|
|
2681
2817
|
&:hover {
|
|
@@ -2873,20 +3009,20 @@ const OverflowTooltipList = styled(Stack).attrs({
|
|
|
2873
3009
|
* `optionLabels` lookup so the pill renders human-readable option labels
|
|
2874
3010
|
* instead of raw option ids. Null / undefined collapses to an empty list.
|
|
2875
3011
|
*/
|
|
2876
|
-
function normalizeValueToDisplay(value, optionLabels, relativeDate) {
|
|
3012
|
+
function normalizeValueToDisplay(value, optionLabels, relativeDate, fieldType) {
|
|
2877
3013
|
if (value == null) return [];
|
|
2878
3014
|
const relativeLabel = relativePresetLabel(value, relativeDate);
|
|
2879
3015
|
if (relativeLabel) return [relativeLabel];
|
|
2880
|
-
const lookup = (raw) => optionLabels?.[raw] ?? raw;
|
|
3016
|
+
const lookup = (raw) => optionLabels?.[raw] ?? (fieldType === "date" || fieldType === "date_range" ? formatDateValueForDisplay(raw) : raw);
|
|
2881
3017
|
if (Array.isArray(value)) {
|
|
2882
3018
|
if (value.length > 0 && Array.isArray(value[0])) return [`${value.length} group${value.length === 1 ? "" : "s"}`];
|
|
2883
3019
|
return value.map((entry) => lookup(String(entry)));
|
|
2884
3020
|
}
|
|
2885
3021
|
if (typeof value === "object") {
|
|
2886
3022
|
const { startDate, endDate } = value;
|
|
2887
|
-
if (startDate && endDate) return [`${startDate} – ${endDate}`];
|
|
3023
|
+
if (startDate && endDate) return [`${lookup(startDate)} – ${lookup(endDate)}`];
|
|
2888
3024
|
const single = startDate || endDate;
|
|
2889
|
-
return single ? [single] : [];
|
|
3025
|
+
return single ? [lookup(single)] : [];
|
|
2890
3026
|
}
|
|
2891
3027
|
if (typeof value === "boolean") return [value ? "True" : "False"];
|
|
2892
3028
|
if (typeof value === "number") return [String(value)];
|
|
@@ -2908,7 +3044,7 @@ function buildAccessibleName(field, rule, displayedValues) {
|
|
|
2908
3044
|
const FilterPill = forwardRef(function FilterPill({ field, rule, onClick, onDismiss, variant = "default", optionLabels, size, ...rest }, ref) {
|
|
2909
3045
|
const reactId = useMemo(() => uniqueId("filter-pill-"), []);
|
|
2910
3046
|
const resolvedSize = useFilterBarSize(size);
|
|
2911
|
-
const displayedValues = useMemo(() => rule && !isValuelessOperator(rule.operator) ? normalizeValueToDisplay(rule.value, optionLabels, carriesDateRange(rule.operator, field?.type) ? rule.relativeDate : void 0) : [], [
|
|
3047
|
+
const displayedValues = useMemo(() => rule && !isValuelessOperator(rule.operator) ? normalizeValueToDisplay(rule.value, optionLabels, carriesDateRange(rule.operator, field?.type) ? rule.relativeDate : void 0, field?.type) : [], [
|
|
2912
3048
|
rule,
|
|
2913
3049
|
optionLabels,
|
|
2914
3050
|
field?.type
|
|
@@ -2955,9 +3091,20 @@ const FilterPill = forwardRef(function FilterPill({ field, rule, onClick, onDism
|
|
|
2955
3091
|
});
|
|
2956
3092
|
//#endregion
|
|
2957
3093
|
//#region components/DataTable/TableControls/FiltersV2/FilterPopover/FilterPopover.tsx
|
|
3094
|
+
/**
|
|
3095
|
+
* Compact value controls fit the minimum width; wider controls can grow
|
|
3096
|
+
* up to 320px without overflowing.
|
|
3097
|
+
*/
|
|
3098
|
+
const POPOVER_MIN_WIDTH = "196px";
|
|
3099
|
+
const POPOVER_MAX_WIDTH = "320px";
|
|
3100
|
+
const OperatorMenu = styled(DropdownMenu_default)`
|
|
3101
|
+
&& {
|
|
3102
|
+
background-color: ${({ theme }) => semanticColor(theme, "SurfaceElevated", theme.color.background.primary)};
|
|
3103
|
+
}
|
|
3104
|
+
`;
|
|
2958
3105
|
const PopoverPanel = styled(Stack).attrs({ spacing: Spacing[0] })`
|
|
2959
|
-
min-width: ${
|
|
2960
|
-
max-width: ${
|
|
3106
|
+
min-width: ${POPOVER_MIN_WIDTH};
|
|
3107
|
+
max-width: ${POPOVER_MAX_WIDTH};
|
|
2961
3108
|
/* The design-system Popover.Card already supplies bg, border, shadow,
|
|
2962
3109
|
and 6px corner radius — we just constrain the inner content. */
|
|
2963
3110
|
`;
|
|
@@ -3117,7 +3264,7 @@ const FilterPopover = ({ field, operator, onChangeOperator, valueControlSlot, on
|
|
|
3117
3264
|
children: [/* @__PURE__ */ jsx(FieldTypeLabel, {
|
|
3118
3265
|
$size: resolvedSize,
|
|
3119
3266
|
children: /* @__PURE__ */ jsx(TruncatedText, { children: field.label })
|
|
3120
|
-
}), showOperatorSelector ? /* @__PURE__ */ jsx(
|
|
3267
|
+
}), showOperatorSelector ? /* @__PURE__ */ jsx(OperatorMenu, {
|
|
3121
3268
|
trigger: /* @__PURE__ */ jsxs(InlineOperatorTrigger, {
|
|
3122
3269
|
type: "button",
|
|
3123
3270
|
"aria-label": "Operator",
|
|
@@ -3765,7 +3912,7 @@ function useStableFieldIds(fieldIds) {
|
|
|
3765
3912
|
if (previous == null || fieldIds == null || previous.length !== fieldIds.length || fieldIds.some((id, index) => previous[index] !== id)) stable.current = fieldIds;
|
|
3766
3913
|
return stable.current;
|
|
3767
3914
|
}
|
|
3768
|
-
function FilterBar({ registry, initialState, onChange, advancedRulesEnabled = true, relativeDatesEnabled = false, singleUseFields = false, size = "md", valueControlResolver }) {
|
|
3915
|
+
function FilterBar({ registry, initialState, onChange, advancedRulesEnabled = true, relativeDatesEnabled = false, dateTimesEnabled = false, singleUseFields = false, size = "md", valueControlResolver }) {
|
|
3769
3916
|
const filterState = useFilterStateV2({
|
|
3770
3917
|
registry,
|
|
3771
3918
|
initialState,
|
|
@@ -3887,7 +4034,8 @@ function FilterBar({ registry, initialState, onChange, advancedRulesEnabled = tr
|
|
|
3887
4034
|
relativeDate,
|
|
3888
4035
|
onChange,
|
|
3889
4036
|
layout: "inline",
|
|
3890
|
-
relativeDatesEnabled
|
|
4037
|
+
relativeDatesEnabled,
|
|
4038
|
+
dateTimesEnabled
|
|
3891
4039
|
}, valueControlResolver),
|
|
3892
4040
|
trigger: /* @__PURE__ */ jsx(RulesPill, {
|
|
3893
4041
|
compound: filterState.state.compound,
|
|
@@ -3934,7 +4082,8 @@ function FilterBar({ registry, initialState, onChange, advancedRulesEnabled = tr
|
|
|
3934
4082
|
});
|
|
3935
4083
|
},
|
|
3936
4084
|
onCommit: () => setEditingRuleId(null),
|
|
3937
|
-
relativeDatesEnabled
|
|
4085
|
+
relativeDatesEnabled,
|
|
4086
|
+
dateTimesEnabled
|
|
3938
4087
|
}, valueControlResolver),
|
|
3939
4088
|
onClose: () => setEditingRuleId(null),
|
|
3940
4089
|
open: isOpen,
|
|
@@ -4282,4 +4431,4 @@ function decodeBase64(input) {
|
|
|
4282
4431
|
//#endregion
|
|
4283
4432
|
export { TableControlsProvider as A, getOperatorsForType as C, reconcileValueForOperator as D, isValuelessOperator as E, ControlBar as F, DataTableCompactBar as I, TableViewConfiguration as M, TableViewConfigurationDropdown as N, dateRuleIntent as O, TableControls as P, getOperatorsForField as S, isRangeOperator as T, FILTER_SIZE_TOKENS as _, encodeFilterStateToUrlParam as a, emptyValueForRule as b, FilterBar_default as c, isFilterStateV2 as d, pruneToRegistry as f, resolveValueControl as g, PillShell as h, decodeFilterStateFromUrl as i, useTableControls as j, TableControlsContext as k, useFilterStateV2 as l, isEmptyState as m, applyFilterStateToSearchParams as n, FieldRegistry as o, EMPTY_FILTER_STATE as p, decodeFilterStateFromString as r, buildFieldRegistry as s, FILTER_STATE_URL_PARAM as t, hasCompleteValue as u, useFilterBarSize as v, isCompleteDateRange as w, getDefaultOperatorForType as x, resolveDateRangeRuleValue as y };
|
|
4284
4433
|
|
|
4285
|
-
//# sourceMappingURL=TableControls-
|
|
4434
|
+
//# sourceMappingURL=TableControls-RS_ozBsI.mjs.map
|