@servicetitan/anvil2 3.16.1 → 3.17.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 +37 -0
- package/dist/{AiMark-BfmK30vL.js → AiMark-CYXbKuCA.js} +2 -2
- package/dist/{AiMark-BfmK30vL.js.map → AiMark-CYXbKuCA.js.map} +1 -1
- package/dist/AiMark.js +1 -1
- package/dist/{Alert-lLo1N7Tj.js → Alert-CYpl0czJ.js} +3 -3
- package/dist/{Alert-lLo1N7Tj.js.map → Alert-CYpl0czJ.js.map} +1 -1
- package/dist/Alert.js +1 -1
- package/dist/{Announcement-PfnsVVz1.js → Announcement-AN9HnhZ-.js} +2 -2
- package/dist/{Announcement-PfnsVVz1.js.map → Announcement-AN9HnhZ-.js.map} +1 -1
- package/dist/Announcement.js +1 -1
- package/dist/{Breadcrumbs-RdL4Fvmu.js → Breadcrumbs-C0CXs9Ma.js} +2 -2
- package/dist/{Breadcrumbs-RdL4Fvmu.js.map → Breadcrumbs-C0CXs9Ma.js.map} +1 -1
- package/dist/Breadcrumbs.js +1 -1
- package/dist/{Button-Dn6-01xl.js → Button-B_E6ybA-.js} +3 -3
- package/dist/{Button-Dn6-01xl.js.map → Button-B_E6ybA-.js.map} +1 -1
- package/dist/Button.js +1 -1
- package/dist/{ButtonToggle-BSU8GBxr.js → ButtonToggle-D0eXySEM.js} +2 -2
- package/dist/{ButtonToggle-BSU8GBxr.js.map → ButtonToggle-D0eXySEM.js.map} +1 -1
- package/dist/ButtonToggle.js +1 -1
- package/dist/{luxon-wpz4A-OQ.js → Calendar-BAIyDHX9.js} +1761 -3
- package/dist/Calendar-BAIyDHX9.js.map +1 -0
- package/dist/{Calendar-DoLRAWLp.js → Calendar-C_NPqjx3.js} +2 -2
- package/dist/{Calendar-DoLRAWLp.js.map → Calendar-C_NPqjx3.js.map} +1 -1
- package/dist/Calendar.js +2 -2
- package/dist/{Checkbox-U-kuWhgc.js → Checkbox-4Ow8rCbD.js} +2 -2
- package/dist/{Checkbox-U-kuWhgc.js.map → Checkbox-4Ow8rCbD.js.map} +1 -1
- package/dist/{Checkbox-CVxbe-iN.js → Checkbox-f1vutjn0.js} +3 -3
- package/dist/{Checkbox-CVxbe-iN.js.map → Checkbox-f1vutjn0.js.map} +1 -1
- package/dist/Checkbox.js +1 -1
- package/dist/{Chip-2OydLs66.js → Chip-AIF0WiNS.js} +2 -2
- package/dist/{Chip-2OydLs66.js.map → Chip-AIF0WiNS.js.map} +1 -1
- package/dist/Chip.js +1 -1
- package/dist/Combobox.js +1 -1
- package/dist/{DataTable-DIXP9-Bx.js → DataTableEditColumnsDrawer-DRgJgso9.js} +1288 -263
- package/dist/DataTableEditColumnsDrawer-DRgJgso9.js.map +1 -0
- package/dist/{DataTable.css → DataTableEditColumnsDrawer.css} +41 -0
- package/dist/{DateFieldRange-X2jdOTYY.js → DateFieldRange-D9PA985Z.js} +6 -7
- package/dist/{DateFieldRange-X2jdOTYY.js.map → DateFieldRange-D9PA985Z.js.map} +1 -1
- package/dist/DateFieldRange.js +1 -1
- package/dist/{DateFieldSingle-BJ16tpOz.js → DateFieldSingle-CMLojOb3.js} +6 -7
- package/dist/{DateFieldSingle-BJ16tpOz.js.map → DateFieldSingle-CMLojOb3.js.map} +1 -1
- package/dist/DateFieldSingle.js +1 -1
- package/dist/{DateFieldYearless-CMm8vtz_.js → DateFieldYearless-B5IyR75v.js} +4 -4
- package/dist/{DateFieldYearless-CMm8vtz_.js.map → DateFieldYearless-B5IyR75v.js.map} +1 -1
- package/dist/DateFieldYearless.js +1 -1
- package/dist/{DateFieldYearlessRange-BHHs-Z1Q.js → DateFieldYearlessRange-8yXILjx7.js} +3 -3
- package/dist/{DateFieldYearlessRange-BHHs-Z1Q.js.map → DateFieldYearlessRange-8yXILjx7.js.map} +1 -1
- package/dist/DateFieldYearlessRange.js +1 -1
- package/dist/{DaysOfTheWeek-BHXxs0Bo.js → DaysOfTheWeek-Cxp5VdYK.js} +3 -3
- package/dist/{DaysOfTheWeek-BHXxs0Bo.js.map → DaysOfTheWeek-Cxp5VdYK.js.map} +1 -1
- package/dist/DaysOfTheWeek.js +1 -1
- package/dist/{Dialog-_tHqOsbr.js → Dialog-KDAJphrA.js} +8 -7
- package/dist/Dialog-KDAJphrA.js.map +1 -0
- package/dist/Dialog.js +1 -1
- package/dist/{DialogCancelButton-C0r8hJ8Z.js → DialogCancelButton-CplrFu69.js} +2 -2
- package/dist/{DialogCancelButton-C0r8hJ8Z.js.map → DialogCancelButton-CplrFu69.js.map} +1 -1
- package/dist/Dnd.js +2 -2
- package/dist/{DndHandleButton-BRlodkDO.js → DndHandleButton-BJqj2hc0.js} +6 -4
- package/dist/DndHandleButton-BJqj2hc0.js.map +1 -0
- package/dist/DndSort.js +2 -2
- package/dist/{Drawer-D-ThWNp0.js → Drawer-C7E2NNnH.js} +9 -8
- package/dist/Drawer-C7E2NNnH.js.map +1 -0
- package/dist/Drawer.js +1 -1
- package/dist/DrillDown.css +41 -34
- package/dist/DrillDown.js +1 -1
- package/dist/DrillDown.module-BFE5BcJB.js +28 -0
- package/dist/DrillDown.module-BFE5BcJB.js.map +1 -0
- package/dist/{EditCard-B6l2vhBS.js → EditCard-CutlsXfK.js} +3 -3
- package/dist/{EditCard-B6l2vhBS.js.map → EditCard-CutlsXfK.js.map} +1 -1
- package/dist/EditCard.js +1 -1
- package/dist/{FieldLabel-ThEmUiAq.js → FieldLabel-DYcUS3A4.js} +2 -2
- package/dist/{FieldLabel-ThEmUiAq.js.map → FieldLabel-DYcUS3A4.js.map} +1 -1
- package/dist/FieldLabel.js +1 -1
- package/dist/{FilterBar-CGsDg6Hy.js → FilterBar-DbDfZph-.js} +7 -7
- package/dist/{FilterBar-CGsDg6Hy.js.map → FilterBar-DbDfZph-.js.map} +1 -1
- package/dist/FilterBar.js +1 -1
- package/dist/{InputMask-BQigi5oW.js → InputMask-BxdQc1ld.js} +3 -3
- package/dist/{InputMask-BQigi5oW.js.map → InputMask-BxdQc1ld.js.map} +1 -1
- package/dist/InputMask.js +1 -1
- package/dist/{ListView-YJscfG4x.js → ListView-BVanVvBk.js} +87 -108
- package/dist/ListView-BVanVvBk.js.map +1 -0
- package/dist/ListView.js +1 -1
- package/dist/{Listbox-CD9ZptSZ.js → Listbox-BR0YQIee.js} +2 -2
- package/dist/{Listbox-CD9ZptSZ.js.map → Listbox-BR0YQIee.js.map} +1 -1
- package/dist/Listbox.js +1 -1
- package/dist/{Menu-Da2OEN0o.js → Menu-DqP7YQgE.js} +2 -2
- package/dist/{Menu-Da2OEN0o.js.map → Menu-DqP7YQgE.js.map} +1 -1
- package/dist/Menu.js +1 -1
- package/dist/{MenuFooter-D__gg92C.js → MenuFooter-Dzhv0EfD.js} +2 -2
- package/dist/{MenuFooter-D__gg92C.js.map → MenuFooter-Dzhv0EfD.js.map} +1 -1
- package/dist/MultiSelectField.js +1 -1
- package/dist/{MultiSelectFieldSync-Cq5sena6.js → MultiSelectFieldSync-9253tott.js} +7 -7
- package/dist/{MultiSelectFieldSync-Cq5sena6.js.map → MultiSelectFieldSync-9253tott.js.map} +1 -1
- package/dist/MultiSelectMenu.js +1 -1
- package/dist/{MultiSelectMenuSync-BhNXsgAN.js → MultiSelectMenuSync-BUJbWN2I.js} +5 -5
- package/dist/{MultiSelectMenuSync-BhNXsgAN.js.map → MultiSelectMenuSync-BUJbWN2I.js.map} +1 -1
- package/dist/{useNumberField-CXFYUZ_n.js → NumberField-DhxywJVp.js} +251 -5
- package/dist/NumberField-DhxywJVp.js.map +1 -0
- package/dist/NumberField.js +1 -1
- package/dist/{Page-ZSHNJs7z.js → Page-D_KL2tdK.js} +14 -13
- package/dist/{Page-ZSHNJs7z.js.map → Page-D_KL2tdK.js.map} +1 -1
- package/dist/Page.js +1 -1
- package/dist/{Pagination-Bsl99RRI.js → Pagination-DYpUtMha.js} +5 -5
- package/dist/{Pagination-Bsl99RRI.js.map → Pagination-DYpUtMha.js.map} +1 -1
- package/dist/Pagination.js +1 -1
- package/dist/{Popover-CIh1CsoJ.js → Popover-B2ix8Ji4.js} +2 -2
- package/dist/{Popover-CIh1CsoJ.js.map → Popover-B2ix8Ji4.js.map} +1 -1
- package/dist/Popover.js +1 -1
- package/dist/{ProgressBar-zPKYv4Il.js → ProgressBar-CjoOuJCi.js} +2 -2
- package/dist/{ProgressBar-zPKYv4Il.js.map → ProgressBar-CjoOuJCi.js.map} +1 -1
- package/dist/ProgressBar.js +1 -1
- package/dist/{Radio-C1VnatcL.js → Radio-Bz36_d0V.js} +2 -2
- package/dist/{Radio-C1VnatcL.js.map → Radio-Bz36_d0V.js.map} +1 -1
- package/dist/{Radio-BYowelK2.js → Radio-DOD1d9Vw.js} +3 -3
- package/dist/{Radio-BYowelK2.js.map → Radio-DOD1d9Vw.js.map} +1 -1
- package/dist/Radio.js +1 -1
- package/dist/{RichTextEditor-DcAVqd2d.js → RichTextEditor-BORVXVDw.js} +11 -11
- package/dist/{RichTextEditor-DcAVqd2d.js.map → RichTextEditor-BORVXVDw.js.map} +1 -1
- package/dist/RichTextEditor.js +1 -1
- package/dist/{SavedFiltersButton-BLvi8j1T.js → SavedFiltersButton-vq_Kt4Qc.js} +10 -10
- package/dist/{SavedFiltersButton-BLvi8j1T.js.map → SavedFiltersButton-vq_Kt4Qc.js.map} +1 -1
- package/dist/SavedFiltersButton.js +1 -1
- package/dist/{SegmentedControl-BHVJmmTH.js → SegmentedControl-BCqWq65N.js} +3 -3
- package/dist/{SegmentedControl-BHVJmmTH.js.map → SegmentedControl-BCqWq65N.js.map} +1 -1
- package/dist/SegmentedControl.js +1 -1
- package/dist/{SelectCard-DrmMU_GD.js → SelectCard-CJwetC1k.js} +3 -3
- package/dist/{SelectCard-DrmMU_GD.js.map → SelectCard-CJwetC1k.js.map} +1 -1
- package/dist/SelectCard.js +1 -1
- package/dist/SelectField.js +1 -1
- package/dist/{SelectFieldLabel-BxsKvfqo.js → SelectFieldLabel-BTKqybZm.js} +2 -2
- package/dist/{SelectFieldLabel-BxsKvfqo.js.map → SelectFieldLabel-BTKqybZm.js.map} +1 -1
- package/dist/{SelectFieldSync-CeazN-gI.js → SelectFieldSync-CoUi-BYw.js} +6 -6
- package/dist/{SelectFieldSync-CeazN-gI.js.map → SelectFieldSync-CoUi-BYw.js.map} +1 -1
- package/dist/SelectMenu.js +1 -1
- package/dist/{SelectMenuSync-CPpE6vUG.js → SelectMenuSync-CvXx-6uU.js} +5 -5
- package/dist/{SelectMenuSync-CPpE6vUG.js.map → SelectMenuSync-CvXx-6uU.js.map} +1 -1
- package/dist/{SelectOptions-BDAu_9dv.js → SelectOptions-CGRUCyf4.js} +2 -2
- package/dist/{SelectOptions-BDAu_9dv.js.map → SelectOptions-CGRUCyf4.js.map} +1 -1
- package/dist/{SelectTrigger-B4OUTO9S.js → SelectTrigger-CRbl804u.js} +2 -2
- package/dist/{SelectTrigger-B4OUTO9S.js.map → SelectTrigger-CRbl804u.js.map} +1 -1
- package/dist/SelectTrigger.js +1 -1
- package/dist/{SelectTriggerBase-BTWSaiQ-.js → SelectTriggerBase-BRUW_Zgc.js} +4 -4
- package/dist/{SelectTriggerBase-BTWSaiQ-.js.map → SelectTriggerBase-BRUW_Zgc.js.map} +1 -1
- package/dist/{Stepper-l_P6VPOv.js → Stepper-D3SHXfX1.js} +3 -3
- package/dist/{Stepper-l_P6VPOv.js.map → Stepper-D3SHXfX1.js.map} +1 -1
- package/dist/Stepper.js +1 -1
- package/dist/{Switch-1iNdXTik.js → Switch-rPPL4yEa.js} +2 -2
- package/dist/{Switch-1iNdXTik.js.map → Switch-rPPL4yEa.js.map} +1 -1
- package/dist/Switch.js +1 -1
- package/dist/{Tab-DR5YYXkq.js → Tab-CXwVQ5-G.js} +11 -7
- package/dist/Tab-CXwVQ5-G.js.map +1 -0
- package/dist/Tab.js +1 -1
- package/dist/Table.js +1 -1
- package/dist/{Text-rihxXHSe.js → Text-BRbkPr5s.js} +2 -2
- package/dist/{Text-rihxXHSe.js.map → Text-BRbkPr5s.js.map} +1 -1
- package/dist/Text.js +1 -1
- package/dist/{TextField-vuS7xeo-.js → TextField-B9hivHsD.js} +3 -3
- package/dist/{TextField-vuS7xeo-.js.map → TextField-B9hivHsD.js.map} +1 -1
- package/dist/{TextField-Bxd-Qzoi.js → TextField-DGRVg_Cw.js} +2 -2
- package/dist/{TextField-Bxd-Qzoi.js.map → TextField-DGRVg_Cw.js.map} +1 -1
- package/dist/TextField.js +1 -1
- package/dist/{Textarea-ppapJUwh.js → Textarea-DNqfV8rJ.js} +3 -3
- package/dist/{Textarea-ppapJUwh.js.map → Textarea-DNqfV8rJ.js.map} +1 -1
- package/dist/Textarea.js +1 -1
- package/dist/{TimeField-Hwt_oRbg.js → TimeField-DldMBNAj.js} +5 -5
- package/dist/{TimeField-Hwt_oRbg.js.map → TimeField-DldMBNAj.js.map} +1 -1
- package/dist/TimeField.js +1 -1
- package/dist/{TimezoneMessage-BrKB_psP.js → TimezoneMessage-CgVNxYpM.js} +2 -2
- package/dist/{TimezoneMessage-BrKB_psP.js.map → TimezoneMessage-CgVNxYpM.js.map} +1 -1
- package/dist/Toast.js +2 -2
- package/dist/{Toaster-dVGVVcat.js → Toaster-Bcy9XN3c.js} +2 -2
- package/dist/{Toaster-dVGVVcat.js.map → Toaster-Bcy9XN3c.js.map} +1 -1
- package/dist/{Toaster-SqkX0Kes.js → Toaster-C66ra4BK.js} +6 -8
- package/dist/Toaster-C66ra4BK.js.map +1 -0
- package/dist/{Toolbar-CMulzswf.js → Toolbar-Br-5yBxq.js} +5 -5
- package/dist/{Toolbar-CMulzswf.js.map → Toolbar-Br-5yBxq.js.map} +1 -1
- package/dist/{Toolbar-DGHZpFi9.js → Toolbar-DgPah7M3.js} +5 -5
- package/dist/{Toolbar-DGHZpFi9.js.map → Toolbar-DgPah7M3.js.map} +1 -1
- package/dist/Toolbar.js +2 -2
- package/dist/{ToolbarButtonToggle-T8YnSJ5x.js → ToolbarButtonToggle-BDfoHeie.js} +2 -2
- package/dist/{ToolbarButtonToggle-T8YnSJ5x.js.map → ToolbarButtonToggle-BDfoHeie.js.map} +1 -1
- package/dist/TreeSelectField.js +1 -1
- package/dist/{TreeSelectFieldSync-DT6uZ3Ca.js → TreeSelectFieldSync-1psUeqtG.js} +6 -6
- package/dist/{TreeSelectFieldSync-DT6uZ3Ca.js.map → TreeSelectFieldSync-1psUeqtG.js.map} +1 -1
- package/dist/TreeSelectMenu.js +1 -1
- package/dist/{TreeSelectMenuSync-D2TvKxP-.js → TreeSelectMenuSync-DIPSYUnE.js} +4 -4
- package/dist/{TreeSelectMenuSync-D2TvKxP-.js.map → TreeSelectMenuSync-DIPSYUnE.js.map} +1 -1
- package/dist/{TypeaheadTextField-DgazozK7.js → TypeaheadTextField-Di9ulOBl.js} +3 -3
- package/dist/{TypeaheadTextField-DgazozK7.js.map → TypeaheadTextField-Di9ulOBl.js.map} +1 -1
- package/dist/TypeaheadTextField.js +1 -1
- package/dist/{YearlessDateInputWithPicker-Bc8a33D5.js → YearlessDateInputWithPicker-CQ2-6Uj4.js} +3 -3
- package/dist/{YearlessDateInputWithPicker-Bc8a33D5.js.map → YearlessDateInputWithPicker-CQ2-6Uj4.js.map} +1 -1
- package/dist/assets/icons/st/gnav_messages_active.svg +1 -0
- package/dist/assets/icons/st/gnav_messages_inactive.svg +1 -0
- package/dist/assets/icons/st.ts +2 -0
- package/dist/beta.js +17 -17
- package/dist/{bulkActionTypes-SukoplGV.js → bulkActionTypes-B71ZHjVu.js} +2 -2
- package/dist/{bulkActionTypes-SukoplGV.js.map → bulkActionTypes-B71ZHjVu.js.map} +1 -1
- package/dist/{filter-state-D3-SYfuy.js → filter-state-Lw9qL0zP.js} +23 -23
- package/dist/{filter-state-D3-SYfuy.js.map → filter-state-Lw9qL0zP.js.map} +1 -1
- package/dist/{index-C2dOrf4N.js → index-B3WhDZeI.js} +2 -2
- package/dist/{index-C2dOrf4N.js.map → index-B3WhDZeI.js.map} +1 -1
- package/dist/{index-Bldaza5t.js → index-CyN5oapA.js} +2 -2
- package/dist/{index-Bldaza5t.js.map → index-CyN5oapA.js.map} +1 -1
- package/dist/index-DfZCfS0S.js +36 -0
- package/dist/index-DfZCfS0S.js.map +1 -0
- package/dist/{index.esm-C2ZhC_8d.js → index.esm-CQXMoq5w.js} +2 -2
- package/dist/{index.esm-C2ZhC_8d.js.map → index.esm-CQXMoq5w.js.map} +1 -1
- package/dist/index.js +55 -53
- package/dist/index.js.map +1 -1
- package/dist/{react-ORV84FjM.js → react-CG1BUt2y.js} +5 -38
- package/dist/react-CG1BUt2y.js.map +1 -0
- package/dist/src/beta/components/Table/DataTable/DataTable.d.ts +31 -4
- package/dist/src/beta/components/Table/DataTable/DataTableEditColumnsDrawer.d.ts +18 -0
- package/dist/src/beta/components/Table/DataTable/index.d.ts +1 -0
- package/dist/src/beta/components/Table/DataTable/internal/DataTableAddRow.d.ts +11 -0
- package/dist/src/beta/components/Table/DataTable/internal/DataTableBulkActionBar.d.ts +23 -0
- package/dist/src/beta/components/Table/DataTable/internal/DataTableFilterToolbar.d.ts +12 -0
- package/dist/src/beta/components/Table/DataTable/internal/columnEditing/EditColumnsDrawer.d.ts +29 -0
- package/dist/src/beta/components/Table/DataTable/internal/columnEditing/columnLayout.d.ts +43 -0
- package/dist/src/beta/components/Table/DataTable/internal/columnEditing/toEditColumnsSection.d.ts +7 -0
- package/dist/src/beta/components/Table/DataTable/parts.d.ts +17 -0
- package/dist/src/beta/components/Table/DataTable/types.d.ts +245 -2
- package/dist/src/beta/components/Table/types.d.ts +6 -0
- package/dist/src/components/DrillDown/DrillDownHeader.d.ts +11 -2
- package/dist/src/components/DrillDown/index.d.ts +1 -1
- package/dist/src/components/DrillDown/internal/DrillDownContext.d.ts +7 -2
- package/dist/src/components/DrillDown/internal/useDrillDownContextState.d.ts +6 -3
- package/dist/src/hooks/usePrefersReducedMotion/index.d.ts +2 -0
- package/dist/src/hooks/usePrefersReducedMotion/prefersReducedMotion.d.ts +6 -0
- package/dist/src/hooks/usePrefersReducedMotion/useReducedMotion.d.ts +5 -0
- package/dist/{stripInlineMarkdown-BhYLEiXu.js → stripInlineMarkdown-B6lAJb4-.js} +2 -2
- package/dist/{stripInlineMarkdown-BhYLEiXu.js.map → stripInlineMarkdown-B6lAJb4-.js.map} +1 -1
- package/dist/{syncFilterUtils-SMop8ckR.js → syncFilterUtils-DnhuqY1S.js} +4 -4
- package/dist/{syncFilterUtils-SMop8ckR.js.map → syncFilterUtils-DnhuqY1S.js.map} +1 -1
- package/dist/token/core/component-variables.scss +49 -49
- package/dist/token/core/component.js +49 -49
- package/dist/token/core/component.scss +40 -40
- package/dist/token.js +49 -49
- package/dist/token.js.map +1 -1
- package/dist/{treeSync-B38r1dRQ.js → treeSync-BDwht_1r.js} +3 -3
- package/dist/{treeSync-B38r1dRQ.js.map → treeSync-BDwht_1r.js.map} +1 -1
- package/dist/{use-reduced-motion-yYB9Tb0D.js → use-reduced-motion-CUshwaEW.js} +2 -2
- package/dist/{use-reduced-motion-yYB9Tb0D.js.map → use-reduced-motion-CUshwaEW.js.map} +1 -1
- package/dist/{useDrillDownContext-D5_NjqY4.js → useDrillDownContext-BLDjyNEt.js} +2 -2
- package/dist/{useDrillDownContext-D5_NjqY4.js.map → useDrillDownContext-BLDjyNEt.js.map} +1 -1
- package/dist/{useDrilldown-BOeeNUsy.js → useDrilldown-CGdhHs8L.js} +54 -21
- package/dist/{useDrilldown-BOeeNUsy.js.map → useDrilldown-CGdhHs8L.js.map} +1 -1
- package/dist/{useInfiniteCombobox-ynkeFngn.js → useInfiniteCombobox-Db0kaxCj.js} +4 -4
- package/dist/{useInfiniteCombobox-ynkeFngn.js.map → useInfiniteCombobox-Db0kaxCj.js.map} +1 -1
- package/dist/{useInitialFocus-CGybEc6x.js → useInitialFocus-fBiTU9l8.js} +7 -4
- package/dist/useInitialFocus-fBiTU9l8.js.map +1 -0
- package/dist/{useInvalidateOnOptionsChange-BD2VBpbK.js → useInvalidateOnOptionsChange-PweyDORd.js} +4 -4
- package/dist/{useInvalidateOnOptionsChange-BD2VBpbK.js.map → useInvalidateOnOptionsChange-PweyDORd.js.map} +1 -1
- package/dist/{usePrefersReducedMotion-DR9B_D6w.js → usePrefersReducedMotion-BLoVFiJL.js} +11 -3
- package/dist/usePrefersReducedMotion-BLoVFiJL.js.map +1 -0
- package/dist/usePrefersReducedMotion.js +2 -1
- package/dist/usePrefersReducedMotion.js.map +1 -1
- package/package.json +3 -3
- package/dist/Calendar-IzXG1aJw.js +0 -1761
- package/dist/Calendar-IzXG1aJw.js.map +0 -1
- package/dist/DataTable-DIXP9-Bx.js.map +0 -1
- package/dist/Dialog-_tHqOsbr.js.map +0 -1
- package/dist/DndHandleButton-BRlodkDO.js.map +0 -1
- package/dist/Drawer-D-ThWNp0.js.map +0 -1
- package/dist/DrillDown.module-1VBKDZRA.js +0 -27
- package/dist/DrillDown.module-1VBKDZRA.js.map +0 -1
- package/dist/Lato.css +0 -24
- package/dist/ListView-YJscfG4x.js.map +0 -1
- package/dist/NumberField-CxmJx4gs.js +0 -252
- package/dist/NumberField-CxmJx4gs.js.map +0 -1
- package/dist/Tab-DR5YYXkq.js.map +0 -1
- package/dist/Toaster-SqkX0Kes.js.map +0 -1
- package/dist/app-css.379821199ec8105f2efd.bundle.css +0 -57579
- package/dist/bugfix-71.1orion.css +0 -491
- package/dist/design-system.859a127fc3b66175f0f0.bundle.css +0 -34599
- package/dist/drag_indicator-BRHAPLSJ.js +0 -6
- package/dist/drag_indicator-BRHAPLSJ.js.map +0 -1
- package/dist/favicon.ico +0 -0
- package/dist/kendo-css.ed976099efbbcc8b0639.bundle.css +0 -20601
- package/dist/luxon-wpz4A-OQ.js.map +0 -1
- package/dist/main.e26f249642be9a4bd747.bundle.css +0 -50386
- package/dist/react-ORV84FjM.js.map +0 -1
- package/dist/sui.a9dc22e36a27b7ea1ee8.bundle.css +0 -41149
- package/dist/useInitialFocus-CGybEc6x.js.map +0 -1
- package/dist/useNumberField-CXFYUZ_n.js.map +0 -1
- package/dist/usePrefersReducedMotion-DR9B_D6w.js.map +0 -1
- package/dist/vite.svg +0 -1
|
@@ -1,8 +1,8 @@
|
|
|
1
1
|
import { ComponentPropsWithoutRef, forwardRef, Ref, ReactNode } from 'react';
|
|
2
2
|
import { DataAttributes, LayoutUtilProps } from '../../../../types';
|
|
3
3
|
import { ColumnDef, CustomTableFooterCellProps, TableRow } from '../types';
|
|
4
|
-
import { DataTableCacheOptions, DataTableEmptyState, DataTablePaginationConfig, DataTableRef, SortedColumn } from './types';
|
|
5
|
-
export type { DataTableCacheOptions, DataTableRef, DataTableEmptyState, SortedColumn, };
|
|
4
|
+
import { DataTableBulkAction, DataTableBulkActions, DataTableBulkMenuAction, DataTableBulkMenuItem, DataTableBulkPrimaryAction, DataTableBulkSecondaryAction, DataTableBulkSelection, DataTableCacheOptions, DataTableColumnEditing, DataTableColumnPref, DataTableEditColumnsSection, DataTableEmptyState, DataTablePaginationConfig, DataTableFilters, DataTableRef, DataTableRowAdd, DataTableToolbarAction, DataTableTools, SortedColumn } from './types';
|
|
5
|
+
export type { DataTableBulkAction, DataTableBulkActions, DataTableBulkMenuAction, DataTableBulkMenuItem, DataTableBulkPrimaryAction, DataTableBulkSecondaryAction, DataTableBulkSelection, DataTableCacheOptions, DataTableFilters, DataTableColumnEditing, DataTableColumnPref, DataTableEditColumnsSection, DataTableRef, DataTableRowAdd, DataTableEmptyState, DataTableToolbarAction, DataTableTools, SortedColumn, };
|
|
6
6
|
export type DataTableRowData = object;
|
|
7
7
|
/**
|
|
8
8
|
* @extends LayoutUtilProps
|
|
@@ -148,11 +148,38 @@ export type DataTableProps<T extends DataTableRowData> = LayoutUtilProps & Compo
|
|
|
148
148
|
* appear stale when external state changes.
|
|
149
149
|
*/
|
|
150
150
|
getRowVersion?: (row: T) => unknown;
|
|
151
|
+
/**
|
|
152
|
+
* Filter bar rendered above the table. See {@link DataTableFilters}.
|
|
153
|
+
*/
|
|
154
|
+
filters?: DataTableFilters;
|
|
155
|
+
/**
|
|
156
|
+
* Toolbar rendered to the right of the filter bar. See
|
|
157
|
+
* {@link DataTableTools}.
|
|
158
|
+
*/
|
|
159
|
+
tools?: DataTableTools;
|
|
160
|
+
/**
|
|
161
|
+
* {@link DataTableBulkActions} shown in a bar above the table while rows
|
|
162
|
+
* are selected; the bar replaces the filter bar and toolbar until the
|
|
163
|
+
* selection clears. Requires `isSelectable`.
|
|
164
|
+
*/
|
|
165
|
+
bulkActions?: DataTableBulkActions<T>;
|
|
166
|
+
/**
|
|
167
|
+
* Adds an Edit Columns button at the end of the toolbar (unless `hideButton`). Its drawer lets
|
|
168
|
+
* users reorder, hide, and pin columns, then reports the result through
|
|
169
|
+
* `onLayoutChange`. Feed that layout back in; DataTable applies it to
|
|
170
|
+
* `columns` and doesn't store it.
|
|
171
|
+
*/
|
|
172
|
+
columnEditing?: DataTableColumnEditing;
|
|
173
|
+
/**
|
|
174
|
+
* Add row button in a toolbar below the table. See {@link DataTableRowAdd}.
|
|
175
|
+
*/
|
|
176
|
+
rowAdd?: DataTableRowAdd;
|
|
151
177
|
};
|
|
152
178
|
declare function DataTableInner<T extends DataTableRowData>(props: DataTableProps<T>, ref: Ref<DataTableRef>): import("react/jsx-runtime").JSX.Element;
|
|
153
179
|
/**
|
|
154
|
-
* Sortable, pageable data grid with optional selection,
|
|
155
|
-
* and cell editing. Attach a {@link DataTableRef} to
|
|
180
|
+
* Sortable, pageable data grid with optional selection, bulk actions,
|
|
181
|
+
* expansion, pinning, and cell editing. Attach a {@link DataTableRef} to
|
|
182
|
+
* `refresh`, `clearCache`, or `clearSelection`.
|
|
156
183
|
*/
|
|
157
184
|
export declare const DataTable: (<T extends DataTableRowData>(props: DataTableProps<T> & {
|
|
158
185
|
ref?: Ref<DataTableRef>;
|
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
import { DataTableEditColumnsSection } from './types';
|
|
2
|
+
export type DataTableEditColumnsDrawerProps = {
|
|
3
|
+
/** Controls whether the drawer is shown. */
|
|
4
|
+
open: boolean;
|
|
5
|
+
/** Requests that the controlling page close the drawer. */
|
|
6
|
+
onClose: () => void;
|
|
7
|
+
/**
|
|
8
|
+
* One titled section per table. Apply reports only the sections the user
|
|
9
|
+
* changed; Reset Defaults resets every section. Memoize the array.
|
|
10
|
+
*/
|
|
11
|
+
sections: DataTableEditColumnsSection[];
|
|
12
|
+
};
|
|
13
|
+
/**
|
|
14
|
+
* Edit Columns drawer for one page-level trigger that covers several tables.
|
|
15
|
+
* Set `columnEditing.hideButton` on each table so only this drawer's trigger
|
|
16
|
+
* shows. For a single table, `columnEditing` alone is enough.
|
|
17
|
+
*/
|
|
18
|
+
export declare function DataTableEditColumnsDrawer({ open, onClose, sections, }: DataTableEditColumnsDrawerProps): import("react/jsx-runtime").JSX.Element;
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
import { DataTableRowAdd } from '../types';
|
|
2
|
+
/**
|
|
3
|
+
* Duplicate of the toolbar button, centered under the empty state. Rendered
|
|
4
|
+
* outside the grid element because the button is not a row or gridcell.
|
|
5
|
+
*/
|
|
6
|
+
export declare function DataTableEmptyAddRow({ rowAdd }: {
|
|
7
|
+
rowAdd: DataTableRowAdd;
|
|
8
|
+
}): import("react/jsx-runtime").JSX.Element;
|
|
9
|
+
export declare function DataTableAddRow({ rowAdd }: {
|
|
10
|
+
rowAdd: DataTableRowAdd;
|
|
11
|
+
}): import("react/jsx-runtime").JSX.Element;
|
|
@@ -0,0 +1,23 @@
|
|
|
1
|
+
import { RefObject } from 'react';
|
|
2
|
+
import { DataTableBulkActions, DataTableBulkSelection } from '../types';
|
|
3
|
+
export type DataTableBulkActionBarProps<T> = {
|
|
4
|
+
actions: DataTableBulkActions<T>;
|
|
5
|
+
/** Rows counted as selected; the total row count in "all" mode. */
|
|
6
|
+
selectedCount: number;
|
|
7
|
+
/** Shows "Select all N items" when set. */
|
|
8
|
+
selectAllCount?: number;
|
|
9
|
+
/** Some rows can't be selected, so the button reads "Select all N items of N". */
|
|
10
|
+
hasUnselectableRows: boolean;
|
|
11
|
+
onSelectAll: () => void;
|
|
12
|
+
onCancel: () => void;
|
|
13
|
+
getSelection: () => DataTableBulkSelection<T>;
|
|
14
|
+
/** Runs after an action completes without asking to keep the selection. */
|
|
15
|
+
onActionComplete: () => void;
|
|
16
|
+
tableRef: RefObject<HTMLDivElement>;
|
|
17
|
+
};
|
|
18
|
+
/**
|
|
19
|
+
* Selection count, select-all, cancel, and consumer actions shown above the
|
|
20
|
+
* table while rows are selected. The live region stays mounted so the first
|
|
21
|
+
* selection is announced too.
|
|
22
|
+
*/
|
|
23
|
+
export declare function DataTableBulkActionBar<T>({ actions, selectedCount, selectAllCount, hasUnselectableRows, onSelectAll, onCancel, getSelection, onActionComplete, tableRef, }: DataTableBulkActionBarProps<T>): import("react/jsx-runtime").JSX.Element;
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
import { Filter } from '../../../FilterBar';
|
|
2
|
+
import { DataTableFilters, DataTableTools } from '../types';
|
|
3
|
+
import { EditColumnsSection } from './columnEditing/EditColumnsDrawer';
|
|
4
|
+
type DataTableFilterToolbarProps = {
|
|
5
|
+
filters?: DataTableFilters;
|
|
6
|
+
tools?: DataTableTools;
|
|
7
|
+
columnEditing?: EditColumnsSection;
|
|
8
|
+
/** Wraps `filters.onChange` with DataTable's page and cache reset. */
|
|
9
|
+
onFilterChange: (filters: Filter[]) => void;
|
|
10
|
+
};
|
|
11
|
+
export declare function DataTableFilterToolbar({ filters, tools, onFilterChange, columnEditing, }: DataTableFilterToolbarProps): import("react/jsx-runtime").JSX.Element;
|
|
12
|
+
export {};
|
package/dist/src/beta/components/Table/DataTable/internal/columnEditing/EditColumnsDrawer.d.ts
ADDED
|
@@ -0,0 +1,29 @@
|
|
|
1
|
+
import { DataTableColumnPref } from '../../types';
|
|
2
|
+
/** One table's columns in an {@link EditColumnsDrawer}. */
|
|
3
|
+
export type EditColumnsSection = {
|
|
4
|
+
/** Unique within the drawer; namespaces the drag zones. */
|
|
5
|
+
id: string;
|
|
6
|
+
/** Heading shown above the section when the drawer has more than one. */
|
|
7
|
+
title?: string;
|
|
8
|
+
/** True when `alwaysVisible` or right-pinned columns keep the table non-empty. */
|
|
9
|
+
hasFixedColumns?: boolean;
|
|
10
|
+
/** Ids of `alwaysVisible` columns, whose hide button is disabled. */
|
|
11
|
+
alwaysVisibleIds?: string[];
|
|
12
|
+
/** Editable columns' header labels by id. */
|
|
13
|
+
labels: Record<string, string>;
|
|
14
|
+
layout: DataTableColumnPref[];
|
|
15
|
+
onApply: (layout: DataTableColumnPref[]) => void;
|
|
16
|
+
onReset: () => void;
|
|
17
|
+
};
|
|
18
|
+
type EditColumnsDrawerProps = {
|
|
19
|
+
open: boolean;
|
|
20
|
+
onClose: () => void;
|
|
21
|
+
sections: EditColumnsSection[];
|
|
22
|
+
};
|
|
23
|
+
/**
|
|
24
|
+
* Edits stay in local drafts until Apply, which reports only the sections that
|
|
25
|
+
* changed. The drafts are rebuilt only when the drawer opens, so a layout
|
|
26
|
+
* change from outside mid-edit doesn't wipe them.
|
|
27
|
+
*/
|
|
28
|
+
export declare function EditColumnsDrawer({ open, onClose, sections, }: EditColumnsDrawerProps): import("react/jsx-runtime").JSX.Element;
|
|
29
|
+
export {};
|
|
@@ -0,0 +1,43 @@
|
|
|
1
|
+
import { DndSortChangeEvent } from '../../../../../../components/DndSort';
|
|
2
|
+
import { ColumnDef } from '../../../types';
|
|
3
|
+
import { DataTableColumnLike, DataTableColumnPref } from '../../types';
|
|
4
|
+
/** Columns the drawer can move: everything but those pinned right. */
|
|
5
|
+
export declare function isEditableColumn(column: DataTableColumnLike): boolean;
|
|
6
|
+
export declare function getColumnLabel(column: DataTableColumnLike): string;
|
|
7
|
+
/** Ids of the columns that render a header cell of their own, descending into groups. */
|
|
8
|
+
export declare function getLeafColumnIds<T>(columns: ColumnDef<T>[]): Set<string>;
|
|
9
|
+
/** Layout implied by the `columns` prop: its order, all visible, left-pinned as declared. */
|
|
10
|
+
export declare function getDefaultLayout(columns: DataTableColumnLike[]): DataTableColumnPref[];
|
|
11
|
+
/**
|
|
12
|
+
* Reconciles a layout with the editable columns: unknown and duplicate ids
|
|
13
|
+
* drop out, omitted columns append as visible with their declared left pin,
|
|
14
|
+
* an `alwaysVisible` column is never hidden, and a hidden column is never
|
|
15
|
+
* pinned.
|
|
16
|
+
*/
|
|
17
|
+
export declare function mergeLayout(layout: readonly DataTableColumnPref[], editable: readonly DataTableColumnLike[]): DataTableColumnPref[];
|
|
18
|
+
/**
|
|
19
|
+
* Returns `columns` reordered, filtered, and pinned by `layout`. Columns the
|
|
20
|
+
* drawer can't edit keep their slot; hidden columns are removed.
|
|
21
|
+
*/
|
|
22
|
+
export declare function applyColumnLayout<T>(columns: ColumnDef<T>[], layout: readonly DataTableColumnPref[]): ColumnDef<T>[];
|
|
23
|
+
declare const PINNED = "pinned";
|
|
24
|
+
declare const VISIBLE = "visible";
|
|
25
|
+
declare const HIDDEN = "hidden";
|
|
26
|
+
export type ColumnBucketName = typeof PINNED | typeof VISIBLE | typeof HIDDEN;
|
|
27
|
+
/** Column ids grouped by where they sit in the drawer. */
|
|
28
|
+
export type ColumnBuckets = Record<ColumnBucketName, string[]>;
|
|
29
|
+
export declare function toBuckets(layout: readonly DataTableColumnPref[]): ColumnBuckets;
|
|
30
|
+
export declare function toLayout(buckets: ColumnBuckets): DataTableColumnPref[];
|
|
31
|
+
/** Applies a drop within one zone. Pinned and visible zones never exchange cards. */
|
|
32
|
+
export declare function reorderBucket(prev: ColumnBuckets, bucket: typeof PINNED | typeof VISIBLE, event: DndSortChangeEvent): ColumnBuckets;
|
|
33
|
+
/** Pins a visible column (to the end of the pinned list) or unpins one (to the top of visible). */
|
|
34
|
+
export declare function togglePinnedIn(prev: ColumnBuckets, id: string): ColumnBuckets;
|
|
35
|
+
/**
|
|
36
|
+
* True when hiding one more column would leave the table with none showing.
|
|
37
|
+
* `hasFixedColumns` is true when columns outside the drawer (`alwaysVisible`
|
|
38
|
+
* or pinned right) keep the table populated regardless.
|
|
39
|
+
*/
|
|
40
|
+
export declare function isLastShown(buckets: ColumnBuckets, hasFixedColumns?: boolean): boolean;
|
|
41
|
+
/** Hides or shows an unpinned column; never hides the last one showing. */
|
|
42
|
+
export declare function toggleVisibleIn(prev: ColumnBuckets, id: string, hasFixedColumns?: boolean): ColumnBuckets;
|
|
43
|
+
export {};
|
package/dist/src/beta/components/Table/DataTable/internal/columnEditing/toEditColumnsSection.d.ts
ADDED
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
import { DataTableEditColumnsSection } from '../../types';
|
|
2
|
+
import { EditColumnsSection } from './EditColumnsDrawer';
|
|
3
|
+
/**
|
|
4
|
+
* Reduces a table's `columns` and stored layout to what the drawer edits.
|
|
5
|
+
* Reset reports the layout implied by `columns`.
|
|
6
|
+
*/
|
|
7
|
+
export declare function toEditColumnsSection({ title, columns, layout, onLayoutChange }: DataTableEditColumnsSection, id: string): EditColumnsSection;
|
|
@@ -13,4 +13,21 @@ export declare const PARTS: {
|
|
|
13
13
|
readonly expandAllButton: "expand-all-button";
|
|
14
14
|
readonly resizeHandle: "resize-handle";
|
|
15
15
|
readonly editableInput: "editable-input";
|
|
16
|
+
readonly bulkActionBar: "bulk-action-bar";
|
|
17
|
+
readonly bulkSelectAllButton: "bulk-select-all-button";
|
|
18
|
+
readonly bulkCancelButton: "bulk-cancel-button";
|
|
19
|
+
readonly bulkActionsMenuButton: "bulk-actions-menu-button";
|
|
20
|
+
readonly bulkActionButton: "bulk-action-button";
|
|
21
|
+
readonly bulkActionMenuItem: "bulk-action-menu-item";
|
|
22
|
+
readonly rowAddButton: "row-add-button";
|
|
23
|
+
readonly editColumnsButton: "edit-columns-button";
|
|
24
|
+
readonly editColumnsDrawer: "edit-columns-drawer";
|
|
25
|
+
readonly columnsSection: "columns-section";
|
|
26
|
+
readonly columnCard: "column-card";
|
|
27
|
+
readonly pinColumnButton: "pin-column-button";
|
|
28
|
+
readonly hideColumnButton: "hide-column-button";
|
|
29
|
+
readonly resetColumnsButton: "reset-columns-button";
|
|
30
|
+
readonly applyButton: "apply-button";
|
|
31
|
+
readonly cancelButton: "cancel-button";
|
|
32
|
+
readonly confirmButton: "confirm-button";
|
|
16
33
|
};
|
|
@@ -1,6 +1,10 @@
|
|
|
1
1
|
import { ReactNode } from 'react';
|
|
2
2
|
import { TableRow } from '../types';
|
|
3
|
-
import { Svg } from '../../../../types';
|
|
3
|
+
import { DataAttributes, Svg } from '../../../../types';
|
|
4
|
+
import { ButtonProps } from '../../../../components/Button';
|
|
5
|
+
import { ToolbarButtonProps } from '../../Toolbar';
|
|
6
|
+
import { ToolbarSize } from '../../Toolbar/types';
|
|
7
|
+
import { Filter } from '../../FilterBar';
|
|
4
8
|
/**
|
|
5
9
|
* Single-column sort. DataTable only applies `sorting[0]`.
|
|
6
10
|
*/
|
|
@@ -25,6 +29,11 @@ export type DataTableEmptyState = {
|
|
|
25
29
|
};
|
|
26
30
|
/** Rendered under the illustration. */
|
|
27
31
|
content?: ReactNode;
|
|
32
|
+
/**
|
|
33
|
+
* Repeats the `rowAdd` button under `content`, for tables that start empty.
|
|
34
|
+
* Does nothing without `rowAdd`.
|
|
35
|
+
*/
|
|
36
|
+
includeAddRow?: boolean;
|
|
28
37
|
};
|
|
29
38
|
/**
|
|
30
39
|
* `loadPageData` page cache. Hits restore a page without calling the loader.
|
|
@@ -129,7 +138,96 @@ export type DataTableCursorPaginationConfig<T> = DataTablePaginationBaseConfig<T
|
|
|
129
138
|
*/
|
|
130
139
|
export type DataTablePaginationConfig<T> = DataTableOffsetPaginationConfig<T> | DataTableCursorPaginationConfig<T>;
|
|
131
140
|
/**
|
|
132
|
-
*
|
|
141
|
+
* What a bulk action applies to. `"rows"` lists the checked row ids as
|
|
142
|
+
* strings, the same form as `onSelectRow` (numeric ids arrive stringified).
|
|
143
|
+
* `"all"` means every selectable row across pages, including rows that have
|
|
144
|
+
* not loaded — rows rejected by `isSelectable` and rows in `readOnlyRowIds`
|
|
145
|
+
* are excluded, so the backend must apply the same rules. Its
|
|
146
|
+
* `selectedRowCount` is the count the bar shows, sub-rows included.
|
|
147
|
+
*/
|
|
148
|
+
export type DataTableBulkSelection<T> = {
|
|
149
|
+
mode: "rows";
|
|
150
|
+
rowIds: TableRow<T>["id"][];
|
|
151
|
+
} | {
|
|
152
|
+
mode: "all";
|
|
153
|
+
selectedRowCount: number;
|
|
154
|
+
};
|
|
155
|
+
/**
|
|
156
|
+
* A bulk action button, or a menu item when nested under `items`.
|
|
157
|
+
*/
|
|
158
|
+
export type DataTableBulkAction<T> = Omit<ButtonProps, "appearance" | "onClick" | "loading" | "children"> & {
|
|
159
|
+
/**
|
|
160
|
+
* Visible button text, or menu-item text when nested under `items`. A
|
|
161
|
+
* function receives the selected count (the total after "Select all N
|
|
162
|
+
* items"), e.g. for singular and plural wording.
|
|
163
|
+
*/
|
|
164
|
+
label: string | ((selectedCount: number) => string);
|
|
165
|
+
/**
|
|
166
|
+
* Runs with the current {@link DataTableBulkSelection}. Selection clears
|
|
167
|
+
* once it returns or resolves. Return or resolve `false` to keep rows
|
|
168
|
+
* selected (e.g. while a confirmation dialog is open); a rejected promise
|
|
169
|
+
* also keeps them selected. The button shows a spinner while it is pending.
|
|
170
|
+
*/
|
|
171
|
+
onClick: (selection: DataTableBulkSelection<T>) => void | boolean | Promise<void | boolean>;
|
|
172
|
+
};
|
|
173
|
+
/**
|
|
174
|
+
* The bar's primary button.
|
|
175
|
+
*/
|
|
176
|
+
export type DataTableBulkPrimaryAction<T> = DataTableBulkAction<T> & {
|
|
177
|
+
/** Defaults to `"primary"`. */
|
|
178
|
+
appearance?: "primary" | "danger";
|
|
179
|
+
};
|
|
180
|
+
/**
|
|
181
|
+
* A primary button that opens a menu of actions instead of running one.
|
|
182
|
+
*/
|
|
183
|
+
export type DataTableBulkMenuAction<T> = Omit<DataTableBulkPrimaryAction<T>, "onClick"> & {
|
|
184
|
+
/** Menu items. The button runs no handler of its own. */
|
|
185
|
+
items: DataTableBulkMenuItem<T>[];
|
|
186
|
+
};
|
|
187
|
+
/**
|
|
188
|
+
* An item in a primary action's menu. `data-*` attributes reach the item.
|
|
189
|
+
*/
|
|
190
|
+
export type DataTableBulkMenuItem<T> = DataAttributes & Pick<DataTableBulkAction<T>, "label" | "onClick"> & {
|
|
191
|
+
/** Leading icon. */
|
|
192
|
+
icon?: Svg;
|
|
193
|
+
/** Prevents selection. Defaults to `false`. */
|
|
194
|
+
disabled?: boolean;
|
|
195
|
+
};
|
|
196
|
+
/**
|
|
197
|
+
* A secondary button in the bar.
|
|
198
|
+
*/
|
|
199
|
+
export type DataTableBulkSecondaryAction<T> = DataTableBulkAction<T> & {
|
|
200
|
+
/** Defaults to `"secondary"`. */
|
|
201
|
+
appearance?: "secondary" | "danger-secondary";
|
|
202
|
+
};
|
|
203
|
+
/**
|
|
204
|
+
* Actions shown in the bulk action bar while rows are selected.
|
|
205
|
+
*/
|
|
206
|
+
export type DataTableBulkActions<T> = {
|
|
207
|
+
/** Primary button. Pass `items` to open a menu of actions instead. */
|
|
208
|
+
primary?: DataTableBulkPrimaryAction<T> | DataTableBulkMenuAction<T>;
|
|
209
|
+
/**
|
|
210
|
+
* Button before the primary one. For more actions, pass `items` to the
|
|
211
|
+
* primary action instead.
|
|
212
|
+
*/
|
|
213
|
+
secondary?: DataTableBulkSecondaryAction<T>;
|
|
214
|
+
/**
|
|
215
|
+
* Shows a "Select all N items" button that selects rows across pages. Only
|
|
216
|
+
* shown with offset pagination when the total exceeds one page.
|
|
217
|
+
* @default false
|
|
218
|
+
*/
|
|
219
|
+
selectAll?: boolean;
|
|
220
|
+
/**
|
|
221
|
+
* Rows "Select all" selects when pages come from `loadPageData`, counting
|
|
222
|
+
* sub-rows and leaving out rows that can't be selected; the table can't see
|
|
223
|
+
* rows that haven't loaded. Defaults to `pagination.totalRowCount`. With
|
|
224
|
+
* `data`, the table counts the selectable rows itself.
|
|
225
|
+
*/
|
|
226
|
+
selectableRowCount?: number;
|
|
227
|
+
};
|
|
228
|
+
/**
|
|
229
|
+
* Imperative handle: refetch the current loader, drop cached pages, or clear
|
|
230
|
+
* the selection.
|
|
133
231
|
*/
|
|
134
232
|
export type DataTableRef = {
|
|
135
233
|
/**
|
|
@@ -143,5 +241,150 @@ export type DataTableRef = {
|
|
|
143
241
|
* `refresh` or a cache-invalidating input changes.
|
|
144
242
|
*/
|
|
145
243
|
clearCache: () => void;
|
|
244
|
+
/**
|
|
245
|
+
* Clears the selection, including a "Select all N items" selection. Use it
|
|
246
|
+
* after a bulk action returned `false` to keep rows selected, e.g. once a
|
|
247
|
+
* confirmation dialog is confirmed.
|
|
248
|
+
*/
|
|
249
|
+
clearSelection: () => void;
|
|
250
|
+
};
|
|
251
|
+
/** One column's place in a {@link DataTableColumnEditing} layout. */
|
|
252
|
+
export type DataTableColumnPref = {
|
|
253
|
+
/** Id of a top-level column in `columns`. */
|
|
254
|
+
id: string;
|
|
255
|
+
/** Controls rendering while retaining the column in the layout so it can be restored. */
|
|
256
|
+
visible: boolean;
|
|
257
|
+
/** Pins the column to the left. Hidden columns are never pinned. */
|
|
258
|
+
pinned: boolean;
|
|
259
|
+
};
|
|
260
|
+
/**
|
|
261
|
+
* Turns on the Edit Columns button and drawer. The consumer owns the layout:
|
|
262
|
+
* DataTable applies it to `columns` and reports Apply and Reset Defaults
|
|
263
|
+
* through `onLayoutChange`.
|
|
264
|
+
*/
|
|
265
|
+
export type DataTableColumnEditing = {
|
|
266
|
+
/**
|
|
267
|
+
* Current order, visibility, and pinning: pinned columns first, then the
|
|
268
|
+
* rest, each in list order, with hidden columns left out. Ids that match no
|
|
269
|
+
* editable column and repeated ids are ignored; columns missing from the
|
|
270
|
+
* list are appended as visible, keeping a declared `pinned: "left"`, so a
|
|
271
|
+
* stored layout survives column changes.
|
|
272
|
+
*/
|
|
273
|
+
layout: DataTableColumnPref[];
|
|
274
|
+
/**
|
|
275
|
+
* Fires with the full layout when the user applies their edits, and with
|
|
276
|
+
* the layout implied by `columns` when they reset to defaults.
|
|
277
|
+
*/
|
|
278
|
+
onLayoutChange: (layout: DataTableColumnPref[]) => void;
|
|
279
|
+
/**
|
|
280
|
+
* Hides the toolbar button while the layout still applies, for a page that
|
|
281
|
+
* opens one {@link DataTableEditColumnsDrawer} across several tables.
|
|
282
|
+
* @default false
|
|
283
|
+
*/
|
|
284
|
+
hideButton?: boolean;
|
|
285
|
+
};
|
|
286
|
+
/** The parts of a column def the drawer reads, so tables of any row type fit one section list. */
|
|
287
|
+
export type DataTableColumnLike = {
|
|
288
|
+
id: string | number | symbol;
|
|
289
|
+
pinned?: "left" | "right";
|
|
290
|
+
alwaysVisible?: boolean;
|
|
291
|
+
header?: {
|
|
292
|
+
label: string;
|
|
293
|
+
};
|
|
294
|
+
headerLabel?: string;
|
|
295
|
+
};
|
|
296
|
+
/** One table in a {@link DataTableEditColumnsDrawer}. */
|
|
297
|
+
export type DataTableEditColumnsSection = {
|
|
298
|
+
/** Heading shown above the section when the drawer has more than one. */
|
|
299
|
+
title?: string;
|
|
300
|
+
/** The same `columns` the table receives. */
|
|
301
|
+
columns: DataTableColumnLike[];
|
|
302
|
+
/**
|
|
303
|
+
* Current order, visibility, and pinning for this table's drawer-editable
|
|
304
|
+
* columns: pinned columns first, then the rest, each in list order, with
|
|
305
|
+
* hidden columns left out. Ids that match no editable column and repeated
|
|
306
|
+
* ids are ignored; columns missing from the list are appended as visible,
|
|
307
|
+
* keeping a declared `pinned: "left"`.
|
|
308
|
+
*/
|
|
309
|
+
layout: DataTableColumnPref[];
|
|
310
|
+
/** Fires with the new layout on Apply, or the default layout on Reset. */
|
|
311
|
+
onLayoutChange: (layout: DataTableColumnPref[]) => void;
|
|
312
|
+
};
|
|
313
|
+
/**
|
|
314
|
+
* A button in the DataTable toolbar. Takes the props of a toolbar button:
|
|
315
|
+
* a text label as `children`, or an `icon` with a required `aria-label`.
|
|
316
|
+
*/
|
|
317
|
+
export type DataTableToolbarAction = ToolbarButtonProps & {
|
|
318
|
+
/** Stable identity for the button. Not forwarded to the DOM. */
|
|
319
|
+
id: string;
|
|
320
|
+
};
|
|
321
|
+
/**
|
|
322
|
+
* Filter bar configuration for DataTable. DataTable does not filter rows
|
|
323
|
+
* itself: apply changes from `onChange` to `data` or to your `loadPageData`
|
|
324
|
+
* request.
|
|
325
|
+
*/
|
|
326
|
+
export type DataTableFilters = {
|
|
327
|
+
/**
|
|
328
|
+
* Filter definitions rendered as a filter bar above the table. Memoize the
|
|
329
|
+
* array; a new identity re-syncs the bar and discards in-progress input.
|
|
330
|
+
*/
|
|
331
|
+
items: Filter[];
|
|
332
|
+
/**
|
|
333
|
+
* Fires with the full filter list after a filter commit. Any change also
|
|
334
|
+
* returns a paginated table to its first page and, with `loadPageData`,
|
|
335
|
+
* clears the page cache and reloads, so the loader sees the new filters.
|
|
336
|
+
*/
|
|
337
|
+
onChange: (filters: Filter[]) => void;
|
|
338
|
+
/**
|
|
339
|
+
* Delays inline commits for filters with an Apply affordance. Filters
|
|
340
|
+
* without one still commit immediately; the drawer always batches changes.
|
|
341
|
+
* @default false
|
|
342
|
+
*/
|
|
343
|
+
controlled?: boolean;
|
|
344
|
+
/**
|
|
345
|
+
* Size of the filter bar controls.
|
|
346
|
+
* @default "medium"
|
|
347
|
+
*/
|
|
348
|
+
size?: ToolbarSize;
|
|
349
|
+
};
|
|
350
|
+
/**
|
|
351
|
+
* Toolbar configuration for DataTable, rendered to the right of the filter
|
|
352
|
+
* bar. Works without `filters`.
|
|
353
|
+
*/
|
|
354
|
+
export type DataTableTools = {
|
|
355
|
+
/**
|
|
356
|
+
* Buttons in the toolbar, e.g. Export. Only Anvil2 buttons are accepted;
|
|
357
|
+
* arbitrary nodes are not.
|
|
358
|
+
*/
|
|
359
|
+
actions: DataTableToolbarAction[];
|
|
360
|
+
/**
|
|
361
|
+
* Size of the toolbar controls.
|
|
362
|
+
* @default "medium"
|
|
363
|
+
*/
|
|
364
|
+
size?: ToolbarSize;
|
|
365
|
+
};
|
|
366
|
+
/**
|
|
367
|
+
* Add row button in a toolbar below the table. DataTable only fires
|
|
368
|
+
* `onAddRow`: the page owns the flow, such as a dialog or a takeover, and
|
|
369
|
+
* must update `data` when it finishes, or call {@link DataTableRef} `refresh`
|
|
370
|
+
* for a table that loads rows with `pagination.loadPageData`.
|
|
371
|
+
*/
|
|
372
|
+
export type DataTableRowAdd = {
|
|
373
|
+
/** Fires when the Add button is clicked. */
|
|
374
|
+
onAddRow: () => void;
|
|
375
|
+
/**
|
|
376
|
+
* Label of the Add button.
|
|
377
|
+
* @default "Add row"
|
|
378
|
+
*/
|
|
379
|
+
addRowLabel?: string;
|
|
380
|
+
/** Disables the Add button. */
|
|
381
|
+
disabled?: boolean;
|
|
382
|
+
/** Shows the Add button as busy, e.g. while an external check runs. */
|
|
383
|
+
loading?: boolean;
|
|
384
|
+
/**
|
|
385
|
+
* Size of the toolbar controls.
|
|
386
|
+
* @default "medium"
|
|
387
|
+
*/
|
|
388
|
+
size?: ToolbarSize;
|
|
146
389
|
};
|
|
147
390
|
export {};
|
|
@@ -519,6 +519,12 @@ export type ColumnBaseDef = ColumnHeaderConfig & {
|
|
|
519
519
|
defaultWidth?: number;
|
|
520
520
|
/** Keeps the column against the chosen edge while horizontally scrolling. */
|
|
521
521
|
pinned?: "left" | "right";
|
|
522
|
+
/**
|
|
523
|
+
* Disables the column's hide button in the Edit Columns drawer. It is still
|
|
524
|
+
* listed there and can be reordered or pinned. Only applies when DataTable
|
|
525
|
+
* has `columnEditing`.
|
|
526
|
+
*/
|
|
527
|
+
alwaysVisible?: boolean;
|
|
522
528
|
/** Shows a pointer-driven resize handle. */
|
|
523
529
|
resizable?: boolean;
|
|
524
530
|
};
|
|
@@ -1,11 +1,20 @@
|
|
|
1
1
|
import { PassThroughPropsWithRef } from '../../types';
|
|
2
2
|
import { TextProps } from '../Text';
|
|
3
|
+
import { DrawerHeaderAction } from '../Drawer/DrawerHeader';
|
|
4
|
+
/** Command shown in `DrillDown.Header`'s overflow menu. Same shape as {@link DrawerHeaderAction}. */
|
|
5
|
+
export type DrillDownHeaderAction = DrawerHeaderAction;
|
|
3
6
|
export type DrillDownHeaderProps = PassThroughPropsWithRef<"header"> & {
|
|
4
7
|
/** Heading element for the title. Defaults to `h1`. */
|
|
5
8
|
el?: TextProps["el"];
|
|
9
|
+
/**
|
|
10
|
+
* Commands placed in an overflow menu before the close control. Belong to
|
|
11
|
+
* this screen only; the host Drawer's actions are not inherited.
|
|
12
|
+
*/
|
|
13
|
+
actions?: DrillDownHeaderAction[];
|
|
6
14
|
};
|
|
7
15
|
/**
|
|
8
|
-
* Title row with a back control.
|
|
9
|
-
*
|
|
16
|
+
* Title row with a back control. An overflow menu appears when `actions` is
|
|
17
|
+
* non-empty, and Close appears when this screen registered `onClose`.
|
|
18
|
+
* Children are the heading text.
|
|
10
19
|
*/
|
|
11
20
|
export declare const DrillDownHeader: import('react').ForwardRefExoticComponent<Omit<DrillDownHeaderProps, "ref"> & import('react').RefAttributes<HTMLDivElement>>;
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
export { DrillDown as default, DrillDown, type DrillDownProps, } from './DrillDown';
|
|
2
|
-
export { DrillDownHeader, type DrillDownHeaderProps } from './DrillDownHeader';
|
|
2
|
+
export { DrillDownHeader, type DrillDownHeaderAction, type DrillDownHeaderProps, } from './DrillDownHeader';
|
|
3
3
|
export { DrillDownContent, type DrillDownContentProps, } from './DrillDownContent';
|
|
4
4
|
export { DrillDownFooter, type DrillDownFooterProps } from './DrillDownFooter';
|
|
5
5
|
export { DrillDownNextButton, type DrillDownNextButtonProps, } from './DrillDownNextButton';
|
|
@@ -1,5 +1,9 @@
|
|
|
1
1
|
import { Dispatch, SetStateAction } from 'react';
|
|
2
|
+
/** Component that owns the DrillDown stack. */
|
|
3
|
+
export type DrillDownHost = "dialog" | "drawer" | "panel";
|
|
2
4
|
export type DrillDownContextProps = {
|
|
5
|
+
/** Owning host. `DrillDown.Header` drops `actions` inside a `"dialog"`. */
|
|
6
|
+
host?: DrillDownHost;
|
|
3
7
|
/** Active screen, or `undefined` when the stack is closed. */
|
|
4
8
|
index?: number;
|
|
5
9
|
setIndex?: (index: number | undefined) => void;
|
|
@@ -8,8 +12,9 @@ export type DrillDownContextProps = {
|
|
|
8
12
|
/** Occupancy counts by index; a missing slot means `next()` should close. */
|
|
9
13
|
registeredIndices?: number[];
|
|
10
14
|
setRegisteredIndices?: Dispatch<SetStateAction<number[] | undefined>>;
|
|
11
|
-
onClose?: (() => void)[];
|
|
12
|
-
|
|
15
|
+
onClose?: ((() => void) | undefined)[];
|
|
16
|
+
/** Registers a screen's Close handler; `undefined` clears that index. */
|
|
17
|
+
setOnClose?: (fn: (() => void) | undefined, index: number) => void;
|
|
13
18
|
/** When `false`, no screen mounts (host is closing or unopened). */
|
|
14
19
|
hostIsInteractive?: boolean;
|
|
15
20
|
setHostTrigger?: (element: HTMLElement | null) => void;
|
|
@@ -1,19 +1,22 @@
|
|
|
1
|
+
import { DrillDownHost } from './DrillDownContext';
|
|
1
2
|
type useDrillDownContextStateParams = {
|
|
2
3
|
/**
|
|
3
4
|
* Screen opened by the first `next()` from a closed stack, and restored when
|
|
4
5
|
* the host closes after a drilldown session. Defaults to `0`.
|
|
5
6
|
*/
|
|
6
7
|
defaultDrillDownIndex?: number;
|
|
8
|
+
host: DrillDownHost;
|
|
7
9
|
};
|
|
8
|
-
export declare function useDrillDownContextState({ defaultDrillDownIndex, }: useDrillDownContextStateParams): {
|
|
10
|
+
export declare function useDrillDownContextState({ defaultDrillDownIndex, host, }: useDrillDownContextStateParams): {
|
|
11
|
+
host: DrillDownHost;
|
|
9
12
|
index: number | undefined;
|
|
10
13
|
setIndex: (index: number | undefined) => void;
|
|
11
14
|
back: () => void;
|
|
12
15
|
next: () => void;
|
|
13
16
|
registeredIndices: number[] | undefined;
|
|
14
17
|
setRegisteredIndices: import('react').Dispatch<import('react').SetStateAction<number[] | undefined>>;
|
|
15
|
-
onClose: (() => void)[];
|
|
16
|
-
setOnClose: (fn: () => void, index: number) => void;
|
|
18
|
+
onClose: ((() => void) | undefined)[];
|
|
19
|
+
setOnClose: (fn: (() => void) | undefined, index: number) => void;
|
|
17
20
|
hostIsInteractive: boolean;
|
|
18
21
|
setHostTrigger: (element: HTMLElement | null) => void;
|
|
19
22
|
onHostClose: () => void;
|
|
@@ -0,0 +1,6 @@
|
|
|
1
|
+
export declare const PREFERS_REDUCED_MOTION_QUERY = "(prefers-reduced-motion: reduce)";
|
|
2
|
+
/**
|
|
3
|
+
* One-shot read of the OS reduced-motion setting for non-React code.
|
|
4
|
+
* Returns `false` when `matchMedia` is unavailable.
|
|
5
|
+
*/
|
|
6
|
+
export declare const prefersReducedMotion: () => boolean;
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { I as INLINE_MARKDOWN_REGEX } from './FieldLabel-
|
|
1
|
+
import { I as INLINE_MARKDOWN_REGEX } from './FieldLabel-DYcUS3A4.js';
|
|
2
2
|
|
|
3
3
|
const stripInlineMarkdown = (str) => {
|
|
4
4
|
const parts = [];
|
|
@@ -22,4 +22,4 @@ const stripInlineMarkdown = (str) => {
|
|
|
22
22
|
};
|
|
23
23
|
|
|
24
24
|
export { stripInlineMarkdown as s };
|
|
25
|
-
//# sourceMappingURL=stripInlineMarkdown-
|
|
25
|
+
//# sourceMappingURL=stripInlineMarkdown-B6lAJb4-.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"stripInlineMarkdown-
|
|
1
|
+
{"version":3,"file":"stripInlineMarkdown-B6lAJb4-.js","sources":["../src/internal/functions/stripInlineMarkdown.ts"],"sourcesContent":["import { INLINE_MARKDOWN_REGEX } from \"../utils/inlineMarkdownRegex\";\n\n/**\n * Drops inline markdown markers and returns the inner text (for `aria-label`).\n * Shared global regex: reset `lastIndex` per call and save it around nested\n * strips. Code spans are not reparsed.\n */\nexport const stripInlineMarkdown = (str: string): string => {\n const parts: string[] = [];\n let lastIndex = 0;\n\n INLINE_MARKDOWN_REGEX.lastIndex = 0;\n let match: RegExpExecArray | null;\n\n while ((match = INLINE_MARKDOWN_REGEX.exec(str)) !== null) {\n if (match.index > lastIndex) {\n parts.push(str.substring(lastIndex, match.index));\n }\n\n const savedIndex = INLINE_MARKDOWN_REGEX.lastIndex;\n const inner =\n match[1] ?? match[2] ?? match[3] ?? match[4] ?? match[5] ?? \"\";\n\n parts.push(match[5] ? inner : stripInlineMarkdown(inner));\n\n INLINE_MARKDOWN_REGEX.lastIndex = savedIndex;\n lastIndex = savedIndex;\n }\n\n if (lastIndex < str.length) {\n parts.push(str.substring(lastIndex));\n }\n\n return parts.join(\"\");\n};\n"],"names":[],"mappings":";;AAOO,MAAM,mBAAA,GAAsB,CAAC,GAAA,KAAwB;AAC1D,EAAA,MAAM,QAAkB,EAAC;AACzB,EAAA,IAAI,SAAA,GAAY,CAAA;AAEhB,EAAA,qBAAA,CAAsB,SAAA,GAAY,CAAA;AAClC,EAAA,IAAI,KAAA;AAEJ,EAAA,OAAA,CAAQ,KAAA,GAAQ,qBAAA,CAAsB,IAAA,CAAK,GAAG,OAAO,IAAA,EAAM;AACzD,IAAA,IAAI,KAAA,CAAM,QAAQ,SAAA,EAAW;AAC3B,MAAA,KAAA,CAAM,KAAK,GAAA,CAAI,SAAA,CAAU,SAAA,EAAW,KAAA,CAAM,KAAK,CAAC,CAAA;AAAA,IAClD;AAEA,IAAA,MAAM,aAAa,qBAAA,CAAsB,SAAA;AACzC,IAAA,MAAM,KAAA,GACJ,KAAA,CAAM,CAAC,CAAA,IAAK,MAAM,CAAC,CAAA,IAAK,KAAA,CAAM,CAAC,KAAK,KAAA,CAAM,CAAC,CAAA,IAAK,KAAA,CAAM,CAAC,CAAA,IAAK,EAAA;AAE9D,IAAA,KAAA,CAAM,KAAK,KAAA,CAAM,CAAC,IAAI,KAAA,GAAQ,mBAAA,CAAoB,KAAK,CAAC,CAAA;AAExD,IAAA,qBAAA,CAAsB,SAAA,GAAY,UAAA;AAClC,IAAA,SAAA,GAAY,UAAA;AAAA,EACd;AAEA,EAAA,IAAI,SAAA,GAAY,IAAI,MAAA,EAAQ;AAC1B,IAAA,KAAA,CAAM,IAAA,CAAK,GAAA,CAAI,SAAA,CAAU,SAAS,CAAC,CAAA;AAAA,EACrC;AAEA,EAAA,OAAO,KAAA,CAAM,KAAK,EAAE,CAAA;AACtB;;;;"}
|