@economic/taco 2.47.0-server.9 → 2.48.0
Sign up to get free protection for your applications and to get access to all the features.
- package/dist/components/Alert/Alert.d.ts +1 -1
- package/dist/components/Calendar/Calendar.d.ts +0 -1
- package/dist/components/Icon/components/Experiment.d.ts +3 -0
- package/dist/components/Icon/components/index.d.ts +1 -1
- package/dist/components/Input/Input.d.ts +1 -1
- package/dist/components/Menu/components/Item.d.ts +1 -1
- package/dist/components/Menu/components/Link.d.ts +1 -1
- package/dist/components/Navigation2/components/Link.d.ts +1 -1
- package/dist/components/Report/Report.d.ts +1 -1
- package/dist/components/SearchInput2/SearchInput2.d.ts +0 -2
- package/dist/components/Select2/components/Option.d.ts +2 -2
- package/dist/components/Select2/components/Search.d.ts +1 -1
- package/dist/components/Table3/features/useEditingState.d.ts +11 -11
- package/dist/components/Table3/features/useTableEditing.d.ts +13 -13
- package/dist/components/Tag/Tag.d.ts +1 -1
- package/dist/esm/node_modules/babel-plugin-transform-async-to-promises/helpers.mjs.js +17 -17
- package/dist/esm/node_modules/babel-plugin-transform-async-to-promises/helpers.mjs.js.map +1 -1
- package/dist/esm/packages/taco/src/charts/components/Area/AreaChart.js +24 -32
- package/dist/esm/packages/taco/src/charts/components/Area/AreaChart.js.map +1 -1
- package/dist/esm/packages/taco/src/charts/components/Bar/BarChart.js +61 -84
- package/dist/esm/packages/taco/src/charts/components/Bar/BarChart.js.map +1 -1
- package/dist/esm/packages/taco/src/charts/components/Donut/ActiveShape.js +15 -16
- package/dist/esm/packages/taco/src/charts/components/Donut/ActiveShape.js.map +1 -1
- package/dist/esm/packages/taco/src/charts/components/Donut/CenteredLabel.js +13 -12
- package/dist/esm/packages/taco/src/charts/components/Donut/CenteredLabel.js.map +1 -1
- package/dist/esm/packages/taco/src/charts/components/Donut/DonutChart.js +68 -104
- package/dist/esm/packages/taco/src/charts/components/Donut/DonutChart.js.map +1 -1
- package/dist/esm/packages/taco/src/charts/components/Donut/Legend.js +29 -39
- package/dist/esm/packages/taco/src/charts/components/Donut/Legend.js.map +1 -1
- package/dist/esm/packages/taco/src/charts/components/Donut/util.js +2 -2
- package/dist/esm/packages/taco/src/charts/components/Donut/util.js.map +1 -1
- package/dist/esm/packages/taco/src/charts/components/Legend.js +37 -46
- package/dist/esm/packages/taco/src/charts/components/Legend.js.map +1 -1
- package/dist/esm/packages/taco/src/charts/components/Line/LineChart.js +24 -32
- package/dist/esm/packages/taco/src/charts/components/Line/LineChart.js.map +1 -1
- package/dist/esm/packages/taco/src/charts/components/ResponsiveContainer.js +3 -5
- package/dist/esm/packages/taco/src/charts/components/ResponsiveContainer.js.map +1 -1
- package/dist/esm/packages/taco/src/charts/components/Tooltip.js +25 -26
- package/dist/esm/packages/taco/src/charts/components/Tooltip.js.map +1 -1
- package/dist/esm/packages/taco/src/charts/utils/color.js +12 -13
- package/dist/esm/packages/taco/src/charts/utils/color.js.map +1 -1
- package/dist/esm/packages/taco/src/charts/utils/common.js +26 -39
- package/dist/esm/packages/taco/src/charts/utils/common.js.map +1 -1
- package/dist/esm/packages/taco/src/components/Accordion/Accordion.js +31 -30
- package/dist/esm/packages/taco/src/components/Accordion/Accordion.js.map +1 -1
- package/dist/esm/packages/taco/src/components/Alert/Alert.js +11 -7
- package/dist/esm/packages/taco/src/components/Alert/Alert.js.map +1 -1
- package/dist/esm/packages/taco/src/components/AlertDialog/AlertDialog.js +13 -14
- package/dist/esm/packages/taco/src/components/AlertDialog/AlertDialog.js.map +1 -1
- package/dist/esm/packages/taco/src/components/AlertDialog/Context.js +2 -2
- package/dist/esm/packages/taco/src/components/AlertDialog/Context.js.map +1 -1
- package/dist/esm/packages/taco/src/components/AlertDialog/components/Content.js +9 -10
- package/dist/esm/packages/taco/src/components/AlertDialog/components/Content.js.map +1 -1
- package/dist/esm/packages/taco/src/components/AlertDialog/components/Footer.js +4 -4
- package/dist/esm/packages/taco/src/components/AlertDialog/components/Footer.js.map +1 -1
- package/dist/esm/packages/taco/src/components/AlertDialog/components/Trigger.js +6 -5
- package/dist/esm/packages/taco/src/components/AlertDialog/components/Trigger.js.map +1 -1
- package/dist/esm/packages/taco/src/components/Backdrop/Backdrop.js +2 -2
- package/dist/esm/packages/taco/src/components/Backdrop/Backdrop.js.map +1 -1
- package/dist/esm/packages/taco/src/components/Badge/Badge.js +25 -21
- package/dist/esm/packages/taco/src/components/Badge/Badge.js.map +1 -1
- package/dist/esm/packages/taco/src/components/BadgeIcon/BadgeIcon.js +14 -12
- package/dist/esm/packages/taco/src/components/BadgeIcon/BadgeIcon.js.map +1 -1
- package/dist/esm/packages/taco/src/components/Banner/Banner.js +10 -7
- package/dist/esm/packages/taco/src/components/Banner/Banner.js.map +1 -1
- package/dist/esm/packages/taco/src/components/Banner/util.js +8 -3
- package/dist/esm/packages/taco/src/components/Banner/util.js.map +1 -1
- package/dist/esm/packages/taco/src/components/Button/Button.js +28 -26
- package/dist/esm/packages/taco/src/components/Button/Button.js.map +1 -1
- package/dist/esm/packages/taco/src/components/Button/util.js +24 -25
- package/dist/esm/packages/taco/src/components/Button/util.js.map +1 -1
- package/dist/esm/packages/taco/src/components/Calendar/Calendar.js +76 -81
- package/dist/esm/packages/taco/src/components/Calendar/Calendar.js.map +1 -1
- package/dist/esm/packages/taco/src/components/Card/Card.js +15 -14
- package/dist/esm/packages/taco/src/components/Card/Card.js.map +1 -1
- package/dist/esm/packages/taco/src/components/Checkbox/Checkbox.js +22 -24
- package/dist/esm/packages/taco/src/components/Checkbox/Checkbox.js.map +1 -1
- package/dist/esm/packages/taco/src/components/Combobox/Combobox.js +23 -21
- package/dist/esm/packages/taco/src/components/Combobox/Combobox.js.map +1 -1
- package/dist/esm/packages/taco/src/components/Combobox/useCombobox.js +64 -76
- package/dist/esm/packages/taco/src/components/Combobox/useCombobox.js.map +1 -1
- package/dist/esm/packages/taco/src/components/Datepicker/Datepicker.js +57 -60
- package/dist/esm/packages/taco/src/components/Datepicker/Datepicker.js.map +1 -1
- package/dist/esm/packages/taco/src/components/Datepicker/useDatepicker.js +33 -41
- package/dist/esm/packages/taco/src/components/Datepicker/useDatepicker.js.map +1 -1
- package/dist/esm/packages/taco/src/components/Dialog/Context.js +4 -4
- package/dist/esm/packages/taco/src/components/Dialog/Context.js.map +1 -1
- package/dist/esm/packages/taco/src/components/Dialog/Dialog.js +39 -54
- package/dist/esm/packages/taco/src/components/Dialog/Dialog.js.map +1 -1
- package/dist/esm/packages/taco/src/components/Dialog/components/Content.js +38 -36
- package/dist/esm/packages/taco/src/components/Dialog/components/Content.js.map +1 -1
- package/dist/esm/packages/taco/src/components/Dialog/components/DialogDrawer.js +3 -3
- package/dist/esm/packages/taco/src/components/Dialog/components/DialogDrawer.js.map +1 -1
- package/dist/esm/packages/taco/src/components/Dialog/components/Extra.js +2 -2
- package/dist/esm/packages/taco/src/components/Dialog/components/Extra.js.map +1 -1
- package/dist/esm/packages/taco/src/components/Dialog/components/Trigger.js +6 -5
- package/dist/esm/packages/taco/src/components/Dialog/components/Trigger.js.map +1 -1
- package/dist/esm/packages/taco/src/components/Dialog/util.js +3 -7
- package/dist/esm/packages/taco/src/components/Dialog/util.js.map +1 -1
- package/dist/esm/packages/taco/src/components/Drawer/Context.js +5 -5
- package/dist/esm/packages/taco/src/components/Drawer/Context.js.map +1 -1
- package/dist/esm/packages/taco/src/components/Drawer/Drawer.js +51 -61
- package/dist/esm/packages/taco/src/components/Drawer/Drawer.js.map +1 -1
- package/dist/esm/packages/taco/src/components/Drawer/components/Content.js +145 -134
- package/dist/esm/packages/taco/src/components/Drawer/components/Content.js.map +1 -1
- package/dist/esm/packages/taco/src/components/Drawer/components/Trigger.js +1 -1
- package/dist/esm/packages/taco/src/components/Drawer/components/Trigger.js.map +1 -1
- package/dist/esm/packages/taco/src/components/Drawer/util.js +5 -5
- package/dist/esm/packages/taco/src/components/Drawer/util.js.map +1 -1
- package/dist/esm/packages/taco/src/components/Field/Field.js +12 -14
- package/dist/esm/packages/taco/src/components/Field/Field.js.map +1 -1
- package/dist/esm/packages/taco/src/components/Form/Form.js +6 -7
- package/dist/esm/packages/taco/src/components/Form/Form.js.map +1 -1
- package/dist/esm/packages/taco/src/components/Group/Group.js +7 -9
- package/dist/esm/packages/taco/src/components/Group/Group.js.map +1 -1
- package/dist/esm/packages/taco/src/components/Hanger/Hanger.js +36 -37
- package/dist/esm/packages/taco/src/components/Hanger/Hanger.js.map +1 -1
- package/dist/esm/packages/taco/src/components/Header/Header.js +2 -2
- package/dist/esm/packages/taco/src/components/Header/Header.js.map +1 -1
- package/dist/esm/packages/taco/src/components/Header/components/Agreement/Avatar.js +10 -14
- package/dist/esm/packages/taco/src/components/Header/components/Agreement/Avatar.js.map +1 -1
- package/dist/esm/packages/taco/src/components/Header/components/Agreement/Badge.js +4 -5
- package/dist/esm/packages/taco/src/components/Header/components/Agreement/Badge.js.map +1 -1
- package/dist/esm/packages/taco/src/components/Header/components/Agreement/Display.js +9 -7
- package/dist/esm/packages/taco/src/components/Header/components/Agreement/Display.js.map +1 -1
- package/dist/esm/packages/taco/src/components/Header/components/Agreement/Item.js +9 -9
- package/dist/esm/packages/taco/src/components/Header/components/Agreement/Item.js.map +1 -1
- package/dist/esm/packages/taco/src/components/Header/components/AgreementSelector.js +46 -66
- package/dist/esm/packages/taco/src/components/Header/components/AgreementSelector.js.map +1 -1
- package/dist/esm/packages/taco/src/components/Header/components/Button.js +8 -12
- package/dist/esm/packages/taco/src/components/Header/components/Button.js.map +1 -1
- package/dist/esm/packages/taco/src/components/Header/components/Link.js +18 -22
- package/dist/esm/packages/taco/src/components/Header/components/Link.js.map +1 -1
- package/dist/esm/packages/taco/src/components/Header/components/Logo.js +4 -4
- package/dist/esm/packages/taco/src/components/Header/components/Logo.js.map +1 -1
- package/dist/esm/packages/taco/src/components/Header/components/MenuButton.js +2 -2
- package/dist/esm/packages/taco/src/components/Header/components/MenuButton.js.map +1 -1
- package/dist/esm/packages/taco/src/components/Header/components/PrimaryNavigation.js +9 -10
- package/dist/esm/packages/taco/src/components/Header/components/PrimaryNavigation.js.map +1 -1
- package/dist/esm/packages/taco/src/components/Header/components/SecondaryNavigation.js +2 -2
- package/dist/esm/packages/taco/src/components/Header/components/SecondaryNavigation.js.map +1 -1
- package/dist/esm/packages/taco/src/components/HoverCard/HoverCard.js +7 -5
- package/dist/esm/packages/taco/src/components/HoverCard/HoverCard.js.map +1 -1
- package/dist/esm/packages/taco/src/components/HoverCard/Primitives.js +1 -1
- package/dist/esm/packages/taco/src/components/HoverCard/Primitives.js.map +1 -1
- package/dist/esm/packages/taco/src/components/Icon/Icon.js +7 -7
- package/dist/esm/packages/taco/src/components/Icon/Icon.js.map +1 -1
- package/dist/esm/packages/taco/src/components/Icon/components/Experiment.js +20 -0
- package/dist/esm/packages/taco/src/components/Icon/components/Experiment.js.map +1 -0
- package/dist/esm/packages/taco/src/components/Icon/components/index.js +6 -4
- package/dist/esm/packages/taco/src/components/Icon/components/index.js.map +1 -1
- package/dist/esm/packages/taco/src/components/IconButton/IconButton.js +23 -22
- package/dist/esm/packages/taco/src/components/IconButton/IconButton.js.map +1 -1
- package/dist/esm/packages/taco/src/components/Input/Input.js +44 -45
- package/dist/esm/packages/taco/src/components/Input/Input.js.map +1 -1
- package/dist/esm/packages/taco/src/components/Input/util.js +5 -8
- package/dist/esm/packages/taco/src/components/Input/util.js.map +1 -1
- package/dist/esm/packages/taco/src/components/Layout/Layout.js +5 -7
- package/dist/esm/packages/taco/src/components/Layout/Layout.js.map +1 -1
- package/dist/esm/packages/taco/src/components/Layout/components/Content.js +2 -2
- package/dist/esm/packages/taco/src/components/Layout/components/Content.js.map +1 -1
- package/dist/esm/packages/taco/src/components/Layout/components/Context.js +2 -4
- package/dist/esm/packages/taco/src/components/Layout/components/Context.js.map +1 -1
- package/dist/esm/packages/taco/src/components/Layout/components/Page.js +2 -2
- package/dist/esm/packages/taco/src/components/Layout/components/Page.js.map +1 -1
- package/dist/esm/packages/taco/src/components/Layout/components/Sidebar.js +27 -34
- package/dist/esm/packages/taco/src/components/Layout/components/Sidebar.js.map +1 -1
- package/dist/esm/packages/taco/src/components/Layout/components/Top.js +6 -9
- package/dist/esm/packages/taco/src/components/Layout/components/Top.js.map +1 -1
- package/dist/esm/packages/taco/src/components/List/components/Button.js +1 -1
- package/dist/esm/packages/taco/src/components/List/components/Button.js.map +1 -1
- package/dist/esm/packages/taco/src/components/List/components/Collapsible.js +7 -10
- package/dist/esm/packages/taco/src/components/List/components/Collapsible.js.map +1 -1
- package/dist/esm/packages/taco/src/components/List/components/Group.js +1 -1
- package/dist/esm/packages/taco/src/components/List/components/Group.js.map +1 -1
- package/dist/esm/packages/taco/src/components/List/components/Item.js +13 -15
- package/dist/esm/packages/taco/src/components/List/components/Item.js.map +1 -1
- package/dist/esm/packages/taco/src/components/List/components/Link.js +3 -3
- package/dist/esm/packages/taco/src/components/List/components/Link.js.map +1 -1
- package/dist/esm/packages/taco/src/components/List/components/Toggle.js +27 -29
- package/dist/esm/packages/taco/src/components/List/components/Toggle.js.map +1 -1
- package/dist/esm/packages/taco/src/components/Listbox/Listbox.js +26 -21
- package/dist/esm/packages/taco/src/components/Listbox/Listbox.js.map +1 -1
- package/dist/esm/packages/taco/src/components/Listbox/ScrollableList.js +70 -82
- package/dist/esm/packages/taco/src/components/Listbox/ScrollableList.js.map +1 -1
- package/dist/esm/packages/taco/src/components/Listbox/useListbox.js +51 -56
- package/dist/esm/packages/taco/src/components/Listbox/useListbox.js.map +1 -1
- package/dist/esm/packages/taco/src/components/Listbox/useMultiListbox.js +65 -83
- package/dist/esm/packages/taco/src/components/Listbox/useMultiListbox.js.map +1 -1
- package/dist/esm/packages/taco/src/components/Listbox/useTypeahead.js +10 -9
- package/dist/esm/packages/taco/src/components/Listbox/useTypeahead.js.map +1 -1
- package/dist/esm/packages/taco/src/components/Listbox/util.js +48 -78
- package/dist/esm/packages/taco/src/components/Listbox/util.js.map +1 -1
- package/dist/esm/packages/taco/src/components/Menu/Context.js +2 -2
- package/dist/esm/packages/taco/src/components/Menu/Context.js.map +1 -1
- package/dist/esm/packages/taco/src/components/Menu/Menu.js +26 -42
- package/dist/esm/packages/taco/src/components/Menu/Menu.js.map +1 -1
- package/dist/esm/packages/taco/src/components/Menu/components/Checkbox.js +8 -8
- package/dist/esm/packages/taco/src/components/Menu/components/Checkbox.js.map +1 -1
- package/dist/esm/packages/taco/src/components/Menu/components/Content.js +21 -27
- package/dist/esm/packages/taco/src/components/Menu/components/Content.js.map +1 -1
- package/dist/esm/packages/taco/src/components/Menu/components/Header.js +3 -3
- package/dist/esm/packages/taco/src/components/Menu/components/Header.js.map +1 -1
- package/dist/esm/packages/taco/src/components/Menu/components/Item.js +32 -32
- package/dist/esm/packages/taco/src/components/Menu/components/Item.js.map +1 -1
- package/dist/esm/packages/taco/src/components/Menu/components/Link.js +10 -10
- package/dist/esm/packages/taco/src/components/Menu/components/Link.js.map +1 -1
- package/dist/esm/packages/taco/src/components/Menu/components/RadioGroup.js +16 -15
- package/dist/esm/packages/taco/src/components/Menu/components/RadioGroup.js.map +1 -1
- package/dist/esm/packages/taco/src/components/Menu/components/Separator.js +1 -1
- package/dist/esm/packages/taco/src/components/Menu/components/Separator.js.map +1 -1
- package/dist/esm/packages/taco/src/components/Menu/components/SubMenu.js +7 -7
- package/dist/esm/packages/taco/src/components/Menu/components/SubMenu.js.map +1 -1
- package/dist/esm/packages/taco/src/components/Menu/components/Trigger.js +5 -5
- package/dist/esm/packages/taco/src/components/Menu/components/Trigger.js.map +1 -1
- package/dist/esm/packages/taco/src/components/ModeSwitch/ModeSwitch.js +6 -6
- package/dist/esm/packages/taco/src/components/ModeSwitch/ModeSwitch.js.map +1 -1
- package/dist/esm/packages/taco/src/components/Navigation/Navigation.js +36 -41
- package/dist/esm/packages/taco/src/components/Navigation/Navigation.js.map +1 -1
- package/dist/esm/packages/taco/src/components/Navigation2/Navigation2.js +6 -6
- package/dist/esm/packages/taco/src/components/Navigation2/Navigation2.js.map +1 -1
- package/dist/esm/packages/taco/src/components/Navigation2/components/Content.js +6 -6
- package/dist/esm/packages/taco/src/components/Navigation2/components/Content.js.map +1 -1
- package/dist/esm/packages/taco/src/components/Navigation2/components/Group.js +11 -14
- package/dist/esm/packages/taco/src/components/Navigation2/components/Group.js.map +1 -1
- package/dist/esm/packages/taco/src/components/Navigation2/components/Link.js +24 -31
- package/dist/esm/packages/taco/src/components/Navigation2/components/Link.js.map +1 -1
- package/dist/esm/packages/taco/src/components/Navigation2/components/Section.js +7 -7
- package/dist/esm/packages/taco/src/components/Navigation2/components/Section.js.map +1 -1
- package/dist/esm/packages/taco/src/components/Navigation2/components/util.js +7 -9
- package/dist/esm/packages/taco/src/components/Navigation2/components/util.js.map +1 -1
- package/dist/esm/packages/taco/src/components/OverflowGroup/OverflowGroup.js +51 -48
- package/dist/esm/packages/taco/src/components/OverflowGroup/OverflowGroup.js.map +1 -1
- package/dist/esm/packages/taco/src/components/Pagination/PageNumbers.js +23 -26
- package/dist/esm/packages/taco/src/components/Pagination/PageNumbers.js.map +1 -1
- package/dist/esm/packages/taco/src/components/Pagination/Pagination.js +39 -53
- package/dist/esm/packages/taco/src/components/Pagination/Pagination.js.map +1 -1
- package/dist/esm/packages/taco/src/components/Pagination/usePagination.js +7 -17
- package/dist/esm/packages/taco/src/components/Pagination/usePagination.js.map +1 -1
- package/dist/esm/packages/taco/src/components/Pagination/usePaginationShortcuts.js +9 -8
- package/dist/esm/packages/taco/src/components/Pagination/usePaginationShortcuts.js.map +1 -1
- package/dist/esm/packages/taco/src/components/Popover/Popover.js +43 -45
- package/dist/esm/packages/taco/src/components/Popover/Popover.js.map +1 -1
- package/dist/esm/packages/taco/src/components/Popover/Primitives.js +1 -1
- package/dist/esm/packages/taco/src/components/Popover/Primitives.js.map +1 -1
- package/dist/esm/packages/taco/src/components/Popover/util.js +1 -3
- package/dist/esm/packages/taco/src/components/Popover/util.js.map +1 -1
- package/dist/esm/packages/taco/src/components/Progress/Progress.js +11 -13
- package/dist/esm/packages/taco/src/components/Progress/Progress.js.map +1 -1
- package/dist/esm/packages/taco/src/components/Provider/Localization.js +12 -13
- package/dist/esm/packages/taco/src/components/Provider/Localization.js.map +1 -1
- package/dist/esm/packages/taco/src/components/Provider/Provider.js +8 -8
- package/dist/esm/packages/taco/src/components/Provider/Provider.js.map +1 -1
- package/dist/esm/packages/taco/src/components/RadioGroup/RadioGroup.js +47 -54
- package/dist/esm/packages/taco/src/components/RadioGroup/RadioGroup.js.map +1 -1
- package/dist/esm/packages/taco/src/components/RadioGroup/util.js +1 -7
- package/dist/esm/packages/taco/src/components/RadioGroup/util.js.map +1 -1
- package/dist/esm/packages/taco/src/components/Report/Report.js +5 -7
- package/dist/esm/packages/taco/src/components/Report/Report.js.map +1 -1
- package/dist/esm/packages/taco/src/components/Report/useReport.js +1 -1
- package/dist/esm/packages/taco/src/components/Report/useReport.js.map +1 -1
- package/dist/esm/packages/taco/src/components/ScrollArea/ScrollArea.js +13 -17
- package/dist/esm/packages/taco/src/components/ScrollArea/ScrollArea.js.map +1 -1
- package/dist/esm/packages/taco/src/components/SearchInput/SearchInput.js +11 -11
- package/dist/esm/packages/taco/src/components/SearchInput/SearchInput.js.map +1 -1
- package/dist/esm/packages/taco/src/components/SearchInput2/SearchInput2.js +40 -48
- package/dist/esm/packages/taco/src/components/SearchInput2/SearchInput2.js.map +1 -1
- package/dist/esm/packages/taco/src/components/Select/Select.js +31 -28
- package/dist/esm/packages/taco/src/components/Select/Select.js.map +1 -1
- package/dist/esm/packages/taco/src/components/Select/useSelect.js +70 -79
- package/dist/esm/packages/taco/src/components/Select/useSelect.js.map +1 -1
- package/dist/esm/packages/taco/src/components/Select2/Select2.js +121 -154
- package/dist/esm/packages/taco/src/components/Select2/Select2.js.map +1 -1
- package/dist/esm/packages/taco/src/components/Select2/components/Collection.js +4 -2
- package/dist/esm/packages/taco/src/components/Select2/components/Collection.js.map +1 -1
- package/dist/esm/packages/taco/src/components/Select2/components/Context.js +2 -4
- package/dist/esm/packages/taco/src/components/Select2/components/Context.js.map +1 -1
- package/dist/esm/packages/taco/src/components/Select2/components/Create.js +41 -45
- package/dist/esm/packages/taco/src/components/Select2/components/Create.js.map +1 -1
- package/dist/esm/packages/taco/src/components/Select2/components/Edit.js +129 -145
- package/dist/esm/packages/taco/src/components/Select2/components/Edit.js.map +1 -1
- package/dist/esm/packages/taco/src/components/Select2/components/Group.js +8 -8
- package/dist/esm/packages/taco/src/components/Select2/components/Group.js.map +1 -1
- package/dist/esm/packages/taco/src/components/Select2/components/Option.js +30 -29
- package/dist/esm/packages/taco/src/components/Select2/components/Option.js.map +1 -1
- package/dist/esm/packages/taco/src/components/Select2/components/Search.js +10 -9
- package/dist/esm/packages/taco/src/components/Select2/components/Search.js.map +1 -1
- package/dist/esm/packages/taco/src/components/Select2/components/Title.js +2 -2
- package/dist/esm/packages/taco/src/components/Select2/components/Title.js.map +1 -1
- package/dist/esm/packages/taco/src/components/Select2/components/Trigger.js +128 -136
- package/dist/esm/packages/taco/src/components/Select2/components/Trigger.js.map +1 -1
- package/dist/esm/packages/taco/src/components/Select2/hooks/useChildren.js +23 -32
- package/dist/esm/packages/taco/src/components/Select2/hooks/useChildren.js.map +1 -1
- package/dist/esm/packages/taco/src/components/Select2/utilities.js +6 -13
- package/dist/esm/packages/taco/src/components/Select2/utilities.js.map +1 -1
- package/dist/esm/packages/taco/src/components/Shortcut/Shortcut.js +13 -16
- package/dist/esm/packages/taco/src/components/Shortcut/Shortcut.js.map +1 -1
- package/dist/esm/packages/taco/src/components/Spinner/Spinner.js +12 -17
- package/dist/esm/packages/taco/src/components/Spinner/Spinner.js.map +1 -1
- package/dist/esm/packages/taco/src/components/Switch/Switch.js +14 -14
- package/dist/esm/packages/taco/src/components/Switch/Switch.js.map +1 -1
- package/dist/esm/packages/taco/src/components/Table/components/BaseTable.js +23 -28
- package/dist/esm/packages/taco/src/components/Table/components/BaseTable.js.map +1 -1
- package/dist/esm/packages/taco/src/components/Table/components/PaginatedTable.js +3 -7
- package/dist/esm/packages/taco/src/components/Table/components/PaginatedTable.js.map +1 -1
- package/dist/esm/packages/taco/src/components/Table/components/Table.js +18 -22
- package/dist/esm/packages/taco/src/components/Table/components/Table.js.map +1 -1
- package/dist/esm/packages/taco/src/components/Table/components/WindowedTable.js +92 -100
- package/dist/esm/packages/taco/src/components/Table/components/WindowedTable.js.map +1 -1
- package/dist/esm/packages/taco/src/components/Table/hooks/plugins/useRowActions.js +119 -137
- package/dist/esm/packages/taco/src/components/Table/hooks/plugins/useRowActions.js.map +1 -1
- package/dist/esm/packages/taco/src/components/Table/hooks/plugins/useRowDraggable.js +55 -55
- package/dist/esm/packages/taco/src/components/Table/hooks/plugins/useRowDraggable.js.map +1 -1
- package/dist/esm/packages/taco/src/components/Table/hooks/plugins/useRowEditing.js +41 -35
- package/dist/esm/packages/taco/src/components/Table/hooks/plugins/useRowEditing.js.map +1 -1
- package/dist/esm/packages/taco/src/components/Table/hooks/plugins/useRowSelect.js +71 -77
- package/dist/esm/packages/taco/src/components/Table/hooks/plugins/useRowSelect.js.map +1 -1
- package/dist/esm/packages/taco/src/components/Table/hooks/useRowCreation.js +30 -56
- package/dist/esm/packages/taco/src/components/Table/hooks/useRowCreation.js.map +1 -1
- package/dist/esm/packages/taco/src/components/Table/hooks/useTable.js +142 -151
- package/dist/esm/packages/taco/src/components/Table/hooks/useTable.js.map +1 -1
- package/dist/esm/packages/taco/src/components/Table/hooks/useTableKeyboardNavigation.js +20 -22
- package/dist/esm/packages/taco/src/components/Table/hooks/useTableKeyboardNavigation.js.map +1 -1
- package/dist/esm/packages/taco/src/components/Table/util/renderColumn.js +12 -9
- package/dist/esm/packages/taco/src/components/Table/util/renderColumn.js.map +1 -1
- package/dist/esm/packages/taco/src/components/Table/util/renderRow.js +41 -41
- package/dist/esm/packages/taco/src/components/Table/util/renderRow.js.map +1 -1
- package/dist/esm/packages/taco/src/components/Table/util/rowIndexPath.js +14 -16
- package/dist/esm/packages/taco/src/components/Table/util/rowIndexPath.js.map +1 -1
- package/dist/esm/packages/taco/src/components/Table/util/sortTypes.js +26 -32
- package/dist/esm/packages/taco/src/components/Table/util/sortTypes.js.map +1 -1
- package/dist/esm/packages/taco/src/components/Table/util.js +30 -37
- package/dist/esm/packages/taco/src/components/Table/util.js.map +1 -1
- package/dist/esm/packages/taco/src/components/Table3/Table3.js +10 -12
- package/dist/esm/packages/taco/src/components/Table3/Table3.js.map +1 -1
- package/dist/esm/packages/taco/src/components/Table3/components/Columns/Cell/Cell.js +14 -13
- package/dist/esm/packages/taco/src/components/Table3/components/Columns/Cell/Cell.js.map +1 -1
- package/dist/esm/packages/taco/src/components/Table3/components/Columns/Cell/Editing/RowMoveIndicator.js +23 -21
- package/dist/esm/packages/taco/src/components/Table3/components/Columns/Cell/Editing/RowMoveIndicator.js.map +1 -1
- package/dist/esm/packages/taco/src/components/Table3/components/Columns/Cell/Editing/TextareaWithAutosizing.js +17 -20
- package/dist/esm/packages/taco/src/components/Table3/components/Columns/Cell/Editing/TextareaWithAutosizing.js.map +1 -1
- package/dist/esm/packages/taco/src/components/Table3/components/Columns/Cell/EditingControlCell.js +82 -70
- package/dist/esm/packages/taco/src/components/Table3/components/Columns/Cell/EditingControlCell.js.map +1 -1
- package/dist/esm/packages/taco/src/components/Table3/components/Columns/Cell/EditingDisplayCell.js +2 -2
- package/dist/esm/packages/taco/src/components/Table3/components/Columns/Cell/EditingDisplayCell.js.map +1 -1
- package/dist/esm/packages/taco/src/components/Table3/components/Columns/Cell/util.js +20 -19
- package/dist/esm/packages/taco/src/components/Table3/components/Columns/Cell/util.js.map +1 -1
- package/dist/esm/packages/taco/src/components/Table3/components/Columns/Internal/EditingActionsMenu.js +25 -26
- package/dist/esm/packages/taco/src/components/Table3/components/Columns/Internal/EditingActionsMenu.js.map +1 -1
- package/dist/esm/packages/taco/src/components/Table3/components/Editing/Alert.js +48 -60
- package/dist/esm/packages/taco/src/components/Table3/components/Editing/Alert.js.map +1 -1
- package/dist/esm/packages/taco/src/components/Table3/components/Editing/DiscardChangesConfirmationDialog.js +8 -7
- package/dist/esm/packages/taco/src/components/Table3/components/Editing/DiscardChangesConfirmationDialog.js.map +1 -1
- package/dist/esm/packages/taco/src/components/Table3/components/Row/Editing/CreateNewRow.js +19 -18
- package/dist/esm/packages/taco/src/components/Table3/components/Row/Editing/CreateNewRow.js.map +1 -1
- package/dist/esm/packages/taco/src/components/Table3/components/Row/Editing/SaveStatus.js +10 -7
- package/dist/esm/packages/taco/src/components/Table3/components/Row/Editing/SaveStatus.js.map +1 -1
- package/dist/esm/packages/taco/src/components/Table3/components/Row/Editing/TemporaryRow.js +35 -38
- package/dist/esm/packages/taco/src/components/Table3/components/Row/Editing/TemporaryRow.js.map +1 -1
- package/dist/esm/packages/taco/src/components/Table3/components/Row/Row.js +15 -15
- package/dist/esm/packages/taco/src/components/Table3/components/Row/Row.js.map +1 -1
- package/dist/esm/packages/taco/src/components/Table3/components/Toolbar/Editing/Editing.js +11 -8
- package/dist/esm/packages/taco/src/components/Table3/components/Toolbar/Editing/Editing.js.map +1 -1
- package/dist/esm/packages/taco/src/components/Table3/features/useEditingState.js +244 -183
- package/dist/esm/packages/taco/src/components/Table3/features/useEditingState.js.map +1 -1
- package/dist/esm/packages/taco/src/components/Table3/features/useTableEditing.js +32 -48
- package/dist/esm/packages/taco/src/components/Table3/features/useTableEditing.js.map +1 -1
- package/dist/esm/packages/taco/src/components/Table3/listeners/useTableEditingListener.js +28 -33
- package/dist/esm/packages/taco/src/components/Table3/listeners/useTableEditingListener.js.map +1 -1
- package/dist/esm/packages/taco/src/components/Table3/useTable3.js +21 -28
- package/dist/esm/packages/taco/src/components/Table3/useTable3.js.map +1 -1
- package/dist/esm/packages/taco/src/components/Table3/util/editing.js +35 -29
- package/dist/esm/packages/taco/src/components/Table3/util/editing.js.map +1 -1
- package/dist/esm/packages/taco/src/components/Tabs/Tabs.js +35 -34
- package/dist/esm/packages/taco/src/components/Tabs/Tabs.js.map +1 -1
- package/dist/esm/packages/taco/src/components/Tag/Tag.js +12 -12
- package/dist/esm/packages/taco/src/components/Tag/Tag.js.map +1 -1
- package/dist/esm/packages/taco/src/components/Textarea/Textarea.js +11 -8
- package/dist/esm/packages/taco/src/components/Textarea/Textarea.js.map +1 -1
- package/dist/esm/packages/taco/src/components/Toast/Toast.js +20 -19
- package/dist/esm/packages/taco/src/components/Toast/Toast.js.map +1 -1
- package/dist/esm/packages/taco/src/components/Toast/Toaster.js +96 -117
- package/dist/esm/packages/taco/src/components/Toast/Toaster.js.map +1 -1
- package/dist/esm/packages/taco/src/components/Toast/util.js +4 -6
- package/dist/esm/packages/taco/src/components/Toast/util.js.map +1 -1
- package/dist/esm/packages/taco/src/components/Tooltip/Tooltip.js +9 -10
- package/dist/esm/packages/taco/src/components/Tooltip/Tooltip.js.map +1 -1
- package/dist/esm/packages/taco/src/components/Tour/Tour.js +46 -49
- package/dist/esm/packages/taco/src/components/Tour/Tour.js.map +1 -1
- package/dist/esm/packages/taco/src/components/Treeview/Treeview.js +27 -33
- package/dist/esm/packages/taco/src/components/Treeview/Treeview.js.map +1 -1
- package/dist/esm/packages/taco/src/components/Truncate/Truncate.js +13 -15
- package/dist/esm/packages/taco/src/components/Truncate/Truncate.js.map +1 -1
- package/dist/esm/packages/taco/src/components/VisuallyHidden/VisuallyHidden.js +1 -1
- package/dist/esm/packages/taco/src/components/VisuallyHidden/VisuallyHidden.js.map +1 -1
- package/dist/esm/packages/taco/src/hooks/useBoundaryOverflowDetection.js +6 -11
- package/dist/esm/packages/taco/src/hooks/useBoundaryOverflowDetection.js.map +1 -1
- package/dist/esm/packages/taco/src/hooks/useBoundingClientRectListener.js +13 -19
- package/dist/esm/packages/taco/src/hooks/useBoundingClientRectListener.js.map +1 -1
- package/dist/esm/packages/taco/src/hooks/useGlobalKeyDown.js +4 -4
- package/dist/esm/packages/taco/src/hooks/useGlobalKeyDown.js.map +1 -1
- package/dist/esm/packages/taco/src/hooks/useId.js +2 -4
- package/dist/esm/packages/taco/src/hooks/useId.js.map +1 -1
- package/dist/esm/packages/taco/src/hooks/useIntersectionObserver.js +18 -20
- package/dist/esm/packages/taco/src/hooks/useIntersectionObserver.js.map +1 -1
- package/dist/esm/packages/taco/src/hooks/useIsFormControl.js +5 -7
- package/dist/esm/packages/taco/src/hooks/useIsFormControl.js.map +1 -1
- package/dist/esm/packages/taco/src/hooks/useIsHoverStatePaused.js +5 -9
- package/dist/esm/packages/taco/src/hooks/useIsHoverStatePaused.js.map +1 -1
- package/dist/esm/packages/taco/src/hooks/useIsLargeScreen.js +1 -3
- package/dist/esm/packages/taco/src/hooks/useIsLargeScreen.js.map +1 -1
- package/dist/esm/packages/taco/src/hooks/useLazyEffect.js +2 -2
- package/dist/esm/packages/taco/src/hooks/useLazyEffect.js.map +1 -1
- package/dist/esm/packages/taco/src/hooks/useLocalStorage.js +22 -24
- package/dist/esm/packages/taco/src/hooks/useLocalStorage.js.map +1 -1
- package/dist/esm/packages/taco/src/hooks/useMatchMedia.js +6 -13
- package/dist/esm/packages/taco/src/hooks/useMatchMedia.js.map +1 -1
- package/dist/esm/packages/taco/src/hooks/useMergedRef.js +3 -3
- package/dist/esm/packages/taco/src/hooks/useMergedRef.js.map +1 -1
- package/dist/esm/packages/taco/src/hooks/usePrevious.js +2 -2
- package/dist/esm/packages/taco/src/hooks/usePrevious.js.map +1 -1
- package/dist/esm/packages/taco/src/index.js +0 -1
- package/dist/esm/packages/taco/src/index.js.map +1 -1
- package/dist/esm/packages/taco/src/primitives/BubbleSelect.js +14 -14
- package/dist/esm/packages/taco/src/primitives/BubbleSelect.js.map +1 -1
- package/dist/esm/packages/taco/src/primitives/Button.js +12 -15
- package/dist/esm/packages/taco/src/primitives/Button.js.map +1 -1
- package/dist/esm/packages/taco/src/primitives/Collection/components/Root.js +44 -50
- package/dist/esm/packages/taco/src/primitives/Collection/components/Root.js.map +1 -1
- package/dist/esm/packages/taco/src/primitives/Listbox2/components/Context.js +2 -4
- package/dist/esm/packages/taco/src/primitives/Listbox2/components/Context.js.map +1 -1
- package/dist/esm/packages/taco/src/primitives/Listbox2/components/Group.js +5 -9
- package/dist/esm/packages/taco/src/primitives/Listbox2/components/Group.js.map +1 -1
- package/dist/esm/packages/taco/src/primitives/Listbox2/components/Option.js +18 -16
- package/dist/esm/packages/taco/src/primitives/Listbox2/components/Option.js.map +1 -1
- package/dist/esm/packages/taco/src/primitives/Listbox2/components/Root.js +40 -47
- package/dist/esm/packages/taco/src/primitives/Listbox2/components/Root.js.map +1 -1
- package/dist/esm/packages/taco/src/primitives/Listbox2/components/Title.js +10 -9
- package/dist/esm/packages/taco/src/primitives/Listbox2/components/Title.js.map +1 -1
- package/dist/esm/packages/taco/src/primitives/Sortable/components/Container.js +20 -22
- package/dist/esm/packages/taco/src/primitives/Sortable/components/Container.js.map +1 -1
- package/dist/esm/packages/taco/src/primitives/Sortable/components/Item.js +27 -24
- package/dist/esm/packages/taco/src/primitives/Sortable/components/Item.js.map +1 -1
- package/dist/esm/packages/taco/src/primitives/Sortable/components/List.js +10 -11
- package/dist/esm/packages/taco/src/primitives/Sortable/components/List.js.map +1 -1
- package/dist/esm/packages/taco/src/primitives/Table/Core/Table.js +19 -22
- package/dist/esm/packages/taco/src/primitives/Table/Core/Table.js.map +1 -1
- package/dist/esm/packages/taco/src/primitives/Table/Core/components/Body/Body.js +22 -25
- package/dist/esm/packages/taco/src/primitives/Table/Core/components/Body/Body.js.map +1 -1
- package/dist/esm/packages/taco/src/primitives/Table/Core/components/Body/EmptyStateBody.js +7 -7
- package/dist/esm/packages/taco/src/primitives/Table/Core/components/Body/EmptyStateBody.js.map +1 -1
- package/dist/esm/packages/taco/src/primitives/Table/Core/components/Body/util.js +14 -30
- package/dist/esm/packages/taco/src/primitives/Table/Core/components/Body/util.js.map +1 -1
- package/dist/esm/packages/taco/src/primitives/Table/Core/components/Columns/Cell/BuiltIns/DisplayCell.js +19 -18
- package/dist/esm/packages/taco/src/primitives/Table/Core/components/Columns/Cell/BuiltIns/DisplayCell.js.map +1 -1
- package/dist/esm/packages/taco/src/primitives/Table/Core/components/Columns/Cell/BuiltIns/GroupedCell.js +34 -34
- package/dist/esm/packages/taco/src/primitives/Table/Core/components/Columns/Cell/BuiltIns/GroupedCell.js.map +1 -1
- package/dist/esm/packages/taco/src/primitives/Table/Core/components/Columns/Cell/Cell.js +12 -10
- package/dist/esm/packages/taco/src/primitives/Table/Core/components/Columns/Cell/Cell.js.map +1 -1
- package/dist/esm/packages/taco/src/primitives/Table/Core/components/Columns/Cell/util.js +18 -19
- package/dist/esm/packages/taco/src/primitives/Table/Core/components/Columns/Cell/util.js.map +1 -1
- package/dist/esm/packages/taco/src/primitives/Table/Core/components/Columns/Internal/Actions.js +40 -42
- package/dist/esm/packages/taco/src/primitives/Table/Core/components/Columns/Internal/Actions.js.map +1 -1
- package/dist/esm/packages/taco/src/primitives/Table/Core/components/Columns/Internal/Drag.js +7 -5
- package/dist/esm/packages/taco/src/primitives/Table/Core/components/Columns/Internal/Drag.js.map +1 -1
- package/dist/esm/packages/taco/src/primitives/Table/Core/components/Columns/Internal/Expansion.js +24 -19
- package/dist/esm/packages/taco/src/primitives/Table/Core/components/Columns/Internal/Expansion.js.map +1 -1
- package/dist/esm/packages/taco/src/primitives/Table/Core/components/Columns/Internal/Selection.js +56 -60
- package/dist/esm/packages/taco/src/primitives/Table/Core/components/Columns/Internal/Selection.js.map +1 -1
- package/dist/esm/packages/taco/src/primitives/Table/Core/components/Footer/Footer.js +23 -27
- package/dist/esm/packages/taco/src/primitives/Table/Core/components/Footer/Footer.js.map +1 -1
- package/dist/esm/packages/taco/src/primitives/Table/Core/components/Footer/Summary.js +17 -16
- package/dist/esm/packages/taco/src/primitives/Table/Core/components/Footer/Summary.js.map +1 -1
- package/dist/esm/packages/taco/src/primitives/Table/Core/components/Header/Header.js +87 -86
- package/dist/esm/packages/taco/src/primitives/Table/Core/components/Header/Header.js.map +1 -1
- package/dist/esm/packages/taco/src/primitives/Table/Core/components/Header/components/Goto.js +11 -14
- package/dist/esm/packages/taco/src/primitives/Table/Core/components/Header/components/Goto.js.map +1 -1
- package/dist/esm/packages/taco/src/primitives/Table/Core/components/Header/components/Menu.js +58 -85
- package/dist/esm/packages/taco/src/primitives/Table/Core/components/Header/components/Menu.js.map +1 -1
- package/dist/esm/packages/taco/src/primitives/Table/Core/components/Header/components/Resizer.js +20 -18
- package/dist/esm/packages/taco/src/primitives/Table/Core/components/Header/components/Resizer.js.map +1 -1
- package/dist/esm/packages/taco/src/primitives/Table/Core/components/Header/components/SortIndicator.js +3 -3
- package/dist/esm/packages/taco/src/primitives/Table/Core/components/Header/components/SortIndicator.js.map +1 -1
- package/dist/esm/packages/taco/src/primitives/Table/Core/components/Header/util.js +6 -11
- package/dist/esm/packages/taco/src/primitives/Table/Core/components/Header/util.js.map +1 -1
- package/dist/esm/packages/taco/src/primitives/Table/Core/components/Row/BuiltIns/DisplayRow.js +49 -58
- package/dist/esm/packages/taco/src/primitives/Table/Core/components/Row/BuiltIns/DisplayRow.js.map +1 -1
- package/dist/esm/packages/taco/src/primitives/Table/Core/components/Row/BuiltIns/SkeletonRow.js +43 -41
- package/dist/esm/packages/taco/src/primitives/Table/Core/components/Row/BuiltIns/SkeletonRow.js.map +1 -1
- package/dist/esm/packages/taco/src/primitives/Table/Core/components/Row/Row.js +19 -61
- package/dist/esm/packages/taco/src/primitives/Table/Core/components/Row/Row.js.map +1 -1
- package/dist/esm/packages/taco/src/primitives/Table/Core/components/Row/RowContext.js +1 -1
- package/dist/esm/packages/taco/src/primitives/Table/Core/components/Row/RowContext.js.map +1 -1
- package/dist/esm/packages/taco/src/primitives/Table/Core/components/Toolbar/Toolbar.js +11 -11
- package/dist/esm/packages/taco/src/primitives/Table/Core/components/Toolbar/Toolbar.js.map +1 -1
- package/dist/esm/packages/taco/src/primitives/Table/Core/components/Toolbar/components/Filters/FilterContext.js +1 -1
- package/dist/esm/packages/taco/src/primitives/Table/Core/components/Toolbar/components/Filters/FilterContext.js.map +1 -1
- package/dist/esm/packages/taco/src/primitives/Table/Core/components/Toolbar/components/Filters/Filters.js +22 -23
- package/dist/esm/packages/taco/src/primitives/Table/Core/components/Toolbar/components/Filters/Filters.js.map +1 -1
- package/dist/esm/packages/taco/src/primitives/Table/Core/components/Toolbar/components/Filters/ManageFiltersPopover.js +39 -54
- package/dist/esm/packages/taco/src/primitives/Table/Core/components/Toolbar/components/Filters/ManageFiltersPopover.js.map +1 -1
- package/dist/esm/packages/taco/src/primitives/Table/Core/components/Toolbar/components/Filters/components/Filter.js +37 -39
- package/dist/esm/packages/taco/src/primitives/Table/Core/components/Toolbar/components/Filters/components/Filter.js.map +1 -1
- package/dist/esm/packages/taco/src/primitives/Table/Core/components/Toolbar/components/Filters/components/FilterColumn.js +16 -20
- package/dist/esm/packages/taco/src/primitives/Table/Core/components/Toolbar/components/Filters/components/FilterColumn.js.map +1 -1
- package/dist/esm/packages/taco/src/primitives/Table/Core/components/Toolbar/components/Filters/components/FilterComparator.js +15 -16
- package/dist/esm/packages/taco/src/primitives/Table/Core/components/Toolbar/components/Filters/components/FilterComparator.js.map +1 -1
- package/dist/esm/packages/taco/src/primitives/Table/Core/components/Toolbar/components/Filters/components/FilterValue.js +41 -50
- package/dist/esm/packages/taco/src/primitives/Table/Core/components/Toolbar/components/Filters/components/FilterValue.js.map +1 -1
- package/dist/esm/packages/taco/src/primitives/Table/Core/components/Toolbar/components/Filters/util.js +9 -13
- package/dist/esm/packages/taco/src/primitives/Table/Core/components/Toolbar/components/Filters/util.js.map +1 -1
- package/dist/esm/packages/taco/src/primitives/Table/Core/components/Toolbar/components/Print/Print.js +51 -59
- package/dist/esm/packages/taco/src/primitives/Table/Core/components/Toolbar/components/Print/Print.js.map +1 -1
- package/dist/esm/packages/taco/src/primitives/Table/Core/components/Toolbar/components/Print/PrintDialog.js +67 -71
- package/dist/esm/packages/taco/src/primitives/Table/Core/components/Toolbar/components/Print/PrintDialog.js.map +1 -1
- package/dist/esm/packages/taco/src/primitives/Table/Core/components/Toolbar/components/Search/Search.js +34 -60
- package/dist/esm/packages/taco/src/primitives/Table/Core/components/Toolbar/components/Search/Search.js.map +1 -1
- package/dist/esm/packages/taco/src/primitives/Table/Core/components/Toolbar/components/Settings/HideOrOrderPopover.js +44 -64
- package/dist/esm/packages/taco/src/primitives/Table/Core/components/Toolbar/components/Settings/HideOrOrderPopover.js.map +1 -1
- package/dist/esm/packages/taco/src/primitives/Table/Core/components/Toolbar/components/Settings/Settings.js +51 -62
- package/dist/esm/packages/taco/src/primitives/Table/Core/components/Toolbar/components/Settings/Settings.js.map +1 -1
- package/dist/esm/packages/taco/src/primitives/Table/Core/features/useTableGlobalShortcuts.js +7 -7
- package/dist/esm/packages/taco/src/primitives/Table/Core/features/useTableGlobalShortcuts.js.map +1 -1
- package/dist/esm/packages/taco/src/primitives/Table/Core/features/useTableRef.js +5 -13
- package/dist/esm/packages/taco/src/primitives/Table/Core/features/useTableRef.js.map +1 -1
- package/dist/esm/packages/taco/src/primitives/Table/Core/features/useTableRenderer.js +79 -122
- package/dist/esm/packages/taco/src/primitives/Table/Core/features/useTableRenderer.js.map +1 -1
- package/dist/esm/packages/taco/src/primitives/Table/Core/features/useTableStyle.js +15 -15
- package/dist/esm/packages/taco/src/primitives/Table/Core/features/useTableStyle.js.map +1 -1
- package/dist/esm/packages/taco/src/primitives/Table/Core/features/useTableStyleColumnFreezing.js +41 -31
- package/dist/esm/packages/taco/src/primitives/Table/Core/features/useTableStyleColumnFreezing.js.map +1 -1
- package/dist/esm/packages/taco/src/primitives/Table/Core/features/useTableStyleGrid.js +30 -31
- package/dist/esm/packages/taco/src/primitives/Table/Core/features/useTableStyleGrid.js.map +1 -1
- package/dist/esm/packages/taco/src/primitives/Table/Core/listeners/useTableRowActiveListener.js +3 -3
- package/dist/esm/packages/taco/src/primitives/Table/Core/listeners/useTableRowActiveListener.js.map +1 -1
- package/dist/esm/packages/taco/src/primitives/Table/Core/useTable.js +15 -14
- package/dist/esm/packages/taco/src/primitives/Table/Core/useTable.js.map +1 -1
- package/dist/esm/packages/taco/src/primitives/Table/Core/util/rows.js +2 -2
- package/dist/esm/packages/taco/src/primitives/Table/Core/util/rows.js.map +1 -1
- package/dist/esm/packages/taco/src/primitives/Table/types.js.map +1 -1
- package/dist/esm/packages/taco/src/primitives/Table/useTableDataLoader.js +43 -47
- package/dist/esm/packages/taco/src/primitives/Table/useTableDataLoader.js.map +1 -1
- package/dist/esm/packages/taco/src/primitives/Table/useTableManager/features/useTableColumnFreezing.js +6 -11
- package/dist/esm/packages/taco/src/primitives/Table/useTableManager/features/useTableColumnFreezing.js.map +1 -1
- package/dist/esm/packages/taco/src/primitives/Table/useTableManager/features/useTableColumnOrdering.js +2 -5
- package/dist/esm/packages/taco/src/primitives/Table/useTableManager/features/useTableColumnOrdering.js.map +1 -1
- package/dist/esm/packages/taco/src/primitives/Table/useTableManager/features/useTableFontSize.js +5 -15
- package/dist/esm/packages/taco/src/primitives/Table/useTableManager/features/useTableFontSize.js.map +1 -1
- package/dist/esm/packages/taco/src/primitives/Table/useTableManager/features/useTableFooter.js +2 -5
- package/dist/esm/packages/taco/src/primitives/Table/useTableManager/features/useTableFooter.js.map +1 -1
- package/dist/esm/packages/taco/src/primitives/Table/useTableManager/features/useTablePrinting.js +16 -26
- package/dist/esm/packages/taco/src/primitives/Table/useTableManager/features/useTablePrinting.js.map +1 -1
- package/dist/esm/packages/taco/src/primitives/Table/useTableManager/features/useTableRowActions.js +3 -9
- package/dist/esm/packages/taco/src/primitives/Table/useTableManager/features/useTableRowActions.js.map +1 -1
- package/dist/esm/packages/taco/src/primitives/Table/useTableManager/features/useTableRowActive.js +24 -43
- package/dist/esm/packages/taco/src/primitives/Table/useTableManager/features/useTableRowActive.js.map +1 -1
- package/dist/esm/packages/taco/src/primitives/Table/useTableManager/features/useTableRowClick.js +6 -9
- package/dist/esm/packages/taco/src/primitives/Table/useTableManager/features/useTableRowClick.js.map +1 -1
- package/dist/esm/packages/taco/src/primitives/Table/useTableManager/features/useTableRowDrag.js +4 -9
- package/dist/esm/packages/taco/src/primitives/Table/useTableManager/features/useTableRowDrag.js.map +1 -1
- package/dist/esm/packages/taco/src/primitives/Table/useTableManager/features/useTableRowDrop.js +2 -5
- package/dist/esm/packages/taco/src/primitives/Table/useTableManager/features/useTableRowDrop.js.map +1 -1
- package/dist/esm/packages/taco/src/primitives/Table/useTableManager/features/useTableRowExpansion.js +3 -9
- package/dist/esm/packages/taco/src/primitives/Table/useTableManager/features/useTableRowExpansion.js.map +1 -1
- package/dist/esm/packages/taco/src/primitives/Table/useTableManager/features/useTableRowGoto.js +2 -5
- package/dist/esm/packages/taco/src/primitives/Table/useTableManager/features/useTableRowGoto.js.map +1 -1
- package/dist/esm/packages/taco/src/primitives/Table/useTableManager/features/useTableRowGroups.js +1 -1
- package/dist/esm/packages/taco/src/primitives/Table/useTableManager/features/useTableRowGroups.js.map +1 -1
- package/dist/esm/packages/taco/src/primitives/Table/useTableManager/features/useTableRowHeight.js +5 -15
- package/dist/esm/packages/taco/src/primitives/Table/useTableManager/features/useTableRowHeight.js.map +1 -1
- package/dist/esm/packages/taco/src/primitives/Table/useTableManager/features/useTableRowSelection.js +9 -14
- package/dist/esm/packages/taco/src/primitives/Table/useTableManager/features/useTableRowSelection.js.map +1 -1
- package/dist/esm/packages/taco/src/primitives/Table/useTableManager/features/useTableSearch.js +13 -26
- package/dist/esm/packages/taco/src/primitives/Table/useTableManager/features/useTableSearch.js.map +1 -1
- package/dist/esm/packages/taco/src/primitives/Table/useTableManager/features/useTableServerLoading.js +21 -43
- package/dist/esm/packages/taco/src/primitives/Table/useTableManager/features/useTableServerLoading.js.map +1 -1
- package/dist/esm/packages/taco/src/primitives/Table/useTableManager/features/useTableSettings.js +24 -34
- package/dist/esm/packages/taco/src/primitives/Table/useTableManager/features/useTableSettings.js.map +1 -1
- package/dist/esm/packages/taco/src/primitives/Table/useTableManager/listeners/useTableDataListener.js +4 -4
- package/dist/esm/packages/taco/src/primitives/Table/useTableManager/listeners/useTableDataListener.js.map +1 -1
- package/dist/esm/packages/taco/src/primitives/Table/useTableManager/listeners/useTableFilterListener.js +3 -5
- package/dist/esm/packages/taco/src/primitives/Table/useTableManager/listeners/useTableFilterListener.js.map +1 -1
- package/dist/esm/packages/taco/src/primitives/Table/useTableManager/listeners/useTableFontSizeListener.js +16 -20
- package/dist/esm/packages/taco/src/primitives/Table/useTableManager/listeners/useTableFontSizeListener.js.map +1 -1
- package/dist/esm/packages/taco/src/primitives/Table/useTableManager/listeners/useTableRowHeightListener.js +2 -2
- package/dist/esm/packages/taco/src/primitives/Table/useTableManager/listeners/useTableRowHeightListener.js.map +1 -1
- package/dist/esm/packages/taco/src/primitives/Table/useTableManager/listeners/useTableRowSelectionListener.js +6 -8
- package/dist/esm/packages/taco/src/primitives/Table/useTableManager/listeners/useTableRowSelectionListener.js.map +1 -1
- package/dist/esm/packages/taco/src/primitives/Table/useTableManager/listeners/useTableSearchListener.js +16 -17
- package/dist/esm/packages/taco/src/primitives/Table/useTableManager/listeners/useTableSearchListener.js.map +1 -1
- package/dist/esm/packages/taco/src/primitives/Table/useTableManager/listeners/useTableServerLoadingListener.js +4 -8
- package/dist/esm/packages/taco/src/primitives/Table/useTableManager/listeners/useTableServerLoadingListener.js.map +1 -1
- package/dist/esm/packages/taco/src/primitives/Table/useTableManager/listeners/useTableSettingsListener.js +6 -8
- package/dist/esm/packages/taco/src/primitives/Table/useTableManager/listeners/useTableSettingsListener.js.map +1 -1
- package/dist/esm/packages/taco/src/primitives/Table/useTableManager/listeners/useTableShortcutsListener.js +17 -17
- package/dist/esm/packages/taco/src/primitives/Table/useTableManager/listeners/useTableShortcutsListener.js.map +1 -1
- package/dist/esm/packages/taco/src/primitives/Table/useTableManager/listeners/useTableSortingListener.js +2 -2
- package/dist/esm/packages/taco/src/primitives/Table/useTableManager/listeners/useTableSortingListener.js.map +1 -1
- package/dist/esm/packages/taco/src/primitives/Table/useTableManager/useTableManager.js +56 -56
- package/dist/esm/packages/taco/src/primitives/Table/useTableManager/useTableManager.js.map +1 -1
- package/dist/esm/packages/taco/src/primitives/Table/useTableManager/util/columns.js +29 -61
- package/dist/esm/packages/taco/src/primitives/Table/useTableManager/util/columns.js.map +1 -1
- package/dist/esm/packages/taco/src/primitives/Table/useTableManager/util/dataTypes.js +8 -8
- package/dist/esm/packages/taco/src/primitives/Table/useTableManager/util/dataTypes.js.map +1 -1
- package/dist/esm/packages/taco/src/primitives/Table/useTableManager/util/filtering.js +19 -33
- package/dist/esm/packages/taco/src/primitives/Table/useTableManager/util/filtering.js.map +1 -1
- package/dist/esm/packages/taco/src/primitives/Table/useTableManager/util/presets.js +11 -11
- package/dist/esm/packages/taco/src/primitives/Table/useTableManager/util/presets.js.map +1 -1
- package/dist/esm/packages/taco/src/primitives/Table/useTableManager/util/search.js +20 -24
- package/dist/esm/packages/taco/src/primitives/Table/useTableManager/util/search.js.map +1 -1
- package/dist/esm/packages/taco/src/primitives/Table/useTableManager/util/settings.js +7 -6
- package/dist/esm/packages/taco/src/primitives/Table/useTableManager/util/settings.js.map +1 -1
- package/dist/esm/packages/taco/src/primitives/Table/useTableManager/util/setup.js +107 -145
- package/dist/esm/packages/taco/src/primitives/Table/useTableManager/util/setup.js.map +1 -1
- package/dist/esm/packages/taco/src/primitives/Table/useTableManager/util/sorting.js +1 -3
- package/dist/esm/packages/taco/src/primitives/Table/useTableManager/util/sorting.js.map +1 -1
- package/dist/esm/packages/taco/src/types.js +1 -1
- package/dist/esm/packages/taco/src/types.js.map +1 -1
- package/dist/esm/packages/taco/src/utils/aria.js +2 -2
- package/dist/esm/packages/taco/src/utils/aria.js.map +1 -1
- package/dist/esm/packages/taco/src/utils/date.js +23 -47
- package/dist/esm/packages/taco/src/utils/date.js.map +1 -1
- package/dist/esm/packages/taco/src/utils/debounce.js +4 -10
- package/dist/esm/packages/taco/src/utils/debounce.js.map +1 -1
- package/dist/esm/packages/taco/src/utils/device.js +2 -4
- package/dist/esm/packages/taco/src/utils/device.js.map +1 -1
- package/dist/esm/packages/taco/src/utils/dom.js +26 -29
- package/dist/esm/packages/taco/src/utils/dom.js.map +1 -1
- package/dist/esm/packages/taco/src/utils/hooks/useDraggable.js +38 -40
- package/dist/esm/packages/taco/src/utils/hooks/useDraggable.js.map +1 -1
- package/dist/esm/packages/taco/src/utils/hooks/useDropTarget.js +7 -9
- package/dist/esm/packages/taco/src/utils/hooks/useDropTarget.js.map +1 -1
- package/dist/esm/packages/taco/src/utils/hooks/useListKeyboardNavigation.js +9 -20
- package/dist/esm/packages/taco/src/utils/hooks/useListKeyboardNavigation.js.map +1 -1
- package/dist/esm/packages/taco/src/utils/hooks/useListScrollTo.js +9 -9
- package/dist/esm/packages/taco/src/utils/hooks/useListScrollTo.js.map +1 -1
- package/dist/esm/packages/taco/src/utils/hooks/useOnClickOutside.js +6 -8
- package/dist/esm/packages/taco/src/utils/hooks/useOnClickOutside.js.map +1 -1
- package/dist/esm/packages/taco/src/utils/hooks/useTimer.js +11 -16
- package/dist/esm/packages/taco/src/utils/hooks/useTimer.js.map +1 -1
- package/dist/esm/packages/taco/src/utils/hooks/useTruncated.js +6 -11
- package/dist/esm/packages/taco/src/utils/hooks/useTruncated.js.map +1 -1
- package/dist/esm/packages/taco/src/utils/input.js +7 -10
- package/dist/esm/packages/taco/src/utils/input.js.map +1 -1
- package/dist/esm/packages/taco/src/utils/keyboard.js +7 -10
- package/dist/esm/packages/taco/src/utils/keyboard.js.map +1 -1
- package/dist/esm/packages/taco/src/utils/mergeRefs.js +2 -2
- package/dist/esm/packages/taco/src/utils/mergeRefs.js.map +1 -1
- package/dist/esm/packages/taco/src/utils/tailwind.js +7 -5
- package/dist/esm/packages/taco/src/utils/tailwind.js.map +1 -1
- package/dist/esm/packages/taco/tailwind.colors.js +1 -1
- package/dist/esm/packages/taco/tailwind.colors.js.map +1 -1
- package/dist/index.d.ts +0 -1
- package/dist/primitives/Table/Core/components/Row/BuiltIns/SkeletonRow.d.ts +2 -2
- package/dist/primitives/Table/Core/components/Row/Row.d.ts +0 -2
- package/dist/primitives/Table/Core/features/useTableRenderer.d.ts +1 -1
- package/dist/primitives/Table/types.d.ts +6 -10
- package/dist/primitives/Table/useTableManager/features/useTableSearch.d.ts +2 -4
- package/dist/primitives/Table/useTableManager/features/useTableServerLoading.d.ts +1 -4
- package/dist/primitives/Table/useTableManager/listeners/useTableSearchListener.d.ts +2 -1
- package/dist/primitives/Table/useTableManager/util/columns.d.ts +1 -2
- package/dist/taco.cjs.development.js +6978 -8219
- package/dist/taco.cjs.development.js.map +1 -1
- package/dist/taco.cjs.production.min.js +1 -1
- package/dist/taco.cjs.production.min.js.map +1 -1
- package/dist/types.d.ts +1 -1
- package/package.json +3 -2
- package/dist/esm/_virtual/_rollupPluginBabelHelpers.js +0 -63
- package/dist/esm/_virtual/_rollupPluginBabelHelpers.js.map +0 -1
- package/dist/esm/packages/taco/src/primitives/Table/useTableDataLoader2.js +0 -231
- package/dist/esm/packages/taco/src/primitives/Table/useTableDataLoader2.js.map +0 -1
- package/dist/hooks/useLazyDebouncedEffect.d.ts +0 -2
- package/dist/primitives/Table/useTableDataLoader2.d.ts +0 -23
package/dist/esm/packages/taco/src/components/Table3/components/Columns/Cell/EditingControlCell.js
CHANGED
@@ -1,5 +1,4 @@
|
|
1
1
|
import React__default from 'react';
|
2
|
-
import { extends as _extends } from '../../../../../../../../_virtual/_rollupPluginBabelHelpers.js';
|
3
2
|
import { isElementInsideOrTriggeredFromContainer } from '../../../../../utils/dom.js';
|
4
3
|
import { isPressingMetaKey } from '../../../../../utils/keyboard.js';
|
5
4
|
import { Checkbox } from '../../../../Checkbox/Checkbox.js';
|
@@ -17,48 +16,58 @@ import { useEditingCellAutofocus } from './util.js';
|
|
17
16
|
|
18
17
|
function EditingControlCell(props) {
|
19
18
|
var _columnMeta$control;
|
20
|
-
|
21
|
-
|
22
|
-
|
23
|
-
|
24
|
-
|
25
|
-
|
26
|
-
|
27
|
-
|
28
|
-
|
29
|
-
|
30
|
-
|
31
|
-
|
32
|
-
|
33
|
-
|
19
|
+
const {
|
20
|
+
cell,
|
21
|
+
cellRef,
|
22
|
+
isHighlighted,
|
23
|
+
index
|
24
|
+
} = props;
|
25
|
+
const {
|
26
|
+
rowIndex
|
27
|
+
} = React__default.useContext(RowContext);
|
28
|
+
const {
|
29
|
+
table
|
30
|
+
} = cell.getContext();
|
31
|
+
const tableMeta = table.options.meta;
|
32
|
+
const columnMeta = cell.column.columnDef.meta;
|
33
|
+
const isActiveRow = tableMeta.rowActive.rowActiveIndex === rowIndex;
|
34
|
+
const type = (_columnMeta$control = columnMeta.control) !== null && _columnMeta$control !== void 0 ? _columnMeta$control : 'input';
|
35
|
+
const handleFocus = useEditingCellAutofocus(props);
|
36
|
+
const value = cell.getValue();
|
34
37
|
// some controls, like select2, should trigger cell changed (validation, updates) as the value changes
|
35
|
-
|
38
|
+
const hasNonTextControl = React__default.useMemo(() => {
|
36
39
|
var _cellRef$current;
|
37
40
|
return typeof type === 'function' && !!((_cellRef$current = cellRef.current) !== null && _cellRef$current !== void 0 && _cellRef$current.querySelector('[data-taco="Select2"],[data-taco="switch"],[data-taco="checkbox"]'));
|
38
41
|
}, [cellRef.current]);
|
39
|
-
|
42
|
+
const handleChange = nextValue => {
|
40
43
|
if (nextValue !== value) {
|
41
|
-
tableMeta.editing.setCellValue(cell,
|
44
|
+
tableMeta.editing.setCellValue(cell, nextValue);
|
42
45
|
if (hasNonTextControl) {
|
43
|
-
tableMeta.editing.onCellChanged(cell, rowIndex, nextValue);
|
46
|
+
requestAnimationFrame(() => tableMeta.editing.onCellChanged(cell, rowIndex, nextValue));
|
44
47
|
}
|
45
48
|
}
|
46
49
|
};
|
47
|
-
|
50
|
+
function blur() {
|
48
51
|
tableMeta.editing.toggleDetailedMode(false);
|
49
52
|
tableMeta.editing.onCellChanged(cell, rowIndex, undefined, !hasNonTextControl);
|
53
|
+
}
|
54
|
+
const handleBlur = event => {
|
55
|
+
if (isElementInsideOrTriggeredFromContainer(event.relatedTarget, event.currentTarget)) {
|
56
|
+
return;
|
57
|
+
}
|
58
|
+
blur();
|
50
59
|
};
|
51
60
|
// ensure that blur runs when the cell gets unmounted (when vertically arrow key navigating)
|
52
|
-
React__default.useEffect(
|
53
|
-
|
54
|
-
return
|
61
|
+
React__default.useEffect(() => {
|
62
|
+
const ref = cellRef.current;
|
63
|
+
return () => {
|
55
64
|
if (document.activeElement === ref || isElementInsideOrTriggeredFromContainer(document.activeElement, ref)) {
|
56
|
-
|
65
|
+
blur();
|
57
66
|
}
|
58
67
|
};
|
59
68
|
}, []);
|
60
|
-
|
61
|
-
|
69
|
+
const error = tableMeta.editing.getCellError(cell);
|
70
|
+
const controlProps = {
|
62
71
|
dataType: columnMeta.dataType,
|
63
72
|
fontSize: tableMeta.fontSize.size,
|
64
73
|
id: cell.column.id,
|
@@ -71,16 +80,17 @@ function EditingControlCell(props) {
|
|
71
80
|
rowPendingChanges: tableMeta.editing.getRowValue(cell.row.id),
|
72
81
|
tabIndex: isActiveRow ? 0 : -1,
|
73
82
|
toggleDetailedMode: tableMeta.editing.toggleDetailedMode,
|
74
|
-
type
|
75
|
-
value
|
83
|
+
type,
|
84
|
+
value
|
76
85
|
};
|
77
|
-
|
86
|
+
const cellAttributes = {
|
87
|
+
...getCellAttributes(cell, index, isHighlighted),
|
78
88
|
'data-cell-editing-invalid': error ? true : undefined,
|
79
89
|
'data-taco': 'cell-control',
|
80
90
|
onFocus: handleFocus,
|
81
91
|
ref: cellRef,
|
82
92
|
tabIndex: -1
|
83
|
-
}
|
93
|
+
};
|
84
94
|
return /*#__PURE__*/React__default.createElement("td", Object.assign({}, cellAttributes), /*#__PURE__*/React__default.createElement(Field, {
|
85
95
|
invalid: !!error,
|
86
96
|
message: error
|
@@ -90,37 +100,41 @@ function EditingControlCell(props) {
|
|
90
100
|
isActiveRow: isActiveRow
|
91
101
|
}));
|
92
102
|
}
|
93
|
-
|
94
|
-
|
95
|
-
|
96
|
-
|
97
|
-
|
98
|
-
|
99
|
-
|
100
|
-
|
101
|
-
|
102
|
-
|
103
|
-
|
104
|
-
|
105
|
-
tabIndex =
|
106
|
-
toggleDetailedMode
|
107
|
-
|
108
|
-
|
109
|
-
|
110
|
-
|
111
|
-
|
112
|
-
|
113
|
-
onBlur
|
103
|
+
const MemoedEditingCell = /*#__PURE__*/React__default.memo(function MemoedEditingCell(props) {
|
104
|
+
const {
|
105
|
+
dataType,
|
106
|
+
fontSize,
|
107
|
+
id,
|
108
|
+
invalid,
|
109
|
+
isDetailedMode,
|
110
|
+
isTruncated,
|
111
|
+
onBlur,
|
112
|
+
onChange,
|
113
|
+
row,
|
114
|
+
rowPendingChanges,
|
115
|
+
tabIndex = -1,
|
116
|
+
toggleDetailedMode,
|
117
|
+
type = 'input',
|
118
|
+
value
|
119
|
+
} = props;
|
120
|
+
const controlRef = React__default.useRef(null);
|
121
|
+
const currentValue = row[id];
|
122
|
+
const commonProps = {
|
123
|
+
onBlur,
|
114
124
|
ref: controlRef,
|
115
|
-
tabIndex
|
125
|
+
tabIndex
|
116
126
|
};
|
117
127
|
if (typeof type === 'function') {
|
118
|
-
|
119
|
-
|
128
|
+
const controlFnProps = {
|
129
|
+
...commonProps,
|
130
|
+
invalid,
|
120
131
|
setValue: onChange,
|
121
|
-
value
|
132
|
+
value
|
133
|
+
};
|
134
|
+
return type(controlFnProps, {
|
135
|
+
...row,
|
136
|
+
...rowPendingChanges
|
122
137
|
});
|
123
|
-
return type(controlFnProps, _extends({}, row, rowPendingChanges));
|
124
138
|
}
|
125
139
|
if (type === 'switch') {
|
126
140
|
return /*#__PURE__*/React__default.createElement(Switch, Object.assign({}, commonProps, {
|
@@ -136,8 +150,8 @@ var MemoedEditingCell = /*#__PURE__*/React__default.memo(function MemoedEditingC
|
|
136
150
|
ref: controlRef
|
137
151
|
}));
|
138
152
|
}
|
139
|
-
|
140
|
-
|
153
|
+
const handleInputKeyDown = event => {
|
154
|
+
const target = event.target;
|
141
155
|
if (target.readOnly) {
|
142
156
|
return;
|
143
157
|
}
|
@@ -159,9 +173,7 @@ var MemoedEditingCell = /*#__PURE__*/React__default.memo(function MemoedEditingC
|
|
159
173
|
var _target$setSelectionR, _target$value, _target$value2;
|
160
174
|
(_target$setSelectionR = target.setSelectionRange) === null || _target$setSelectionR === void 0 ? void 0 : _target$setSelectionR.call(target, (_target$value = target.value) === null || _target$value === void 0 ? void 0 : _target$value.length, (_target$value2 = target.value) === null || _target$value2 === void 0 ? void 0 : _target$value2.length);
|
161
175
|
}
|
162
|
-
toggleDetailedMode(
|
163
|
-
return !editing;
|
164
|
-
});
|
176
|
+
toggleDetailedMode(editing => !editing);
|
165
177
|
return;
|
166
178
|
}
|
167
179
|
// reset the value, or exit edit mode when pressing escape
|
@@ -173,7 +185,7 @@ var MemoedEditingCell = /*#__PURE__*/React__default.memo(function MemoedEditingC
|
|
173
185
|
props.onChange(currentValue);
|
174
186
|
}
|
175
187
|
// have to let onChange run before selecting, otherwise the value changes
|
176
|
-
requestAnimationFrame(
|
188
|
+
requestAnimationFrame(() => {
|
177
189
|
var _target$select2;
|
178
190
|
return (_target$select2 = target.select) === null || _target$select2 === void 0 ? void 0 : _target$select2.call(target);
|
179
191
|
});
|
@@ -185,22 +197,22 @@ var MemoedEditingCell = /*#__PURE__*/React__default.memo(function MemoedEditingC
|
|
185
197
|
toggleDetailedMode(true);
|
186
198
|
}
|
187
199
|
};
|
188
|
-
|
200
|
+
const handleFocus = event => {
|
189
201
|
if (!isDetailedMode) {
|
190
202
|
event.target.select();
|
191
203
|
}
|
192
204
|
};
|
193
205
|
if (type === 'datepicker') {
|
194
|
-
|
195
|
-
|
196
|
-
|
206
|
+
const valueAsDate = parse(value);
|
207
|
+
const handleChange = event => {
|
208
|
+
const newDate = event.detail;
|
197
209
|
if (!valueAsDate || !newDate || isDate(valueAsDate) && isDate(newDate) && !isWeakEqual(valueAsDate, newDate)) {
|
198
210
|
props.onChange(newDate);
|
199
211
|
}
|
200
212
|
};
|
201
213
|
return /*#__PURE__*/React__default.createElement(Datepicker, Object.assign({}, commonProps, {
|
202
214
|
invalid: invalid,
|
203
|
-
onChange:
|
215
|
+
onChange: handleChange,
|
204
216
|
onFocus: handleFocus,
|
205
217
|
onKeyDown: handleInputKeyDown,
|
206
218
|
ref: controlRef,
|
@@ -208,21 +220,21 @@ var MemoedEditingCell = /*#__PURE__*/React__default.memo(function MemoedEditingC
|
|
208
220
|
}));
|
209
221
|
}
|
210
222
|
if (type === 'textarea') {
|
211
|
-
|
223
|
+
const handleChange = event => {
|
212
224
|
onChange(event.target.value);
|
213
225
|
};
|
214
226
|
return /*#__PURE__*/React__default.createElement(TextareaWithAutosizing, Object.assign({}, commonProps, {
|
215
227
|
fontSize: fontSize,
|
216
228
|
invalid: invalid,
|
217
229
|
isTruncated: isTruncated,
|
218
|
-
onChange:
|
230
|
+
onChange: handleChange,
|
219
231
|
onFocus: handleFocus,
|
220
232
|
onKeyDown: handleInputKeyDown,
|
221
233
|
ref: controlRef,
|
222
234
|
value: String(value !== null && value !== void 0 ? value : '')
|
223
235
|
}));
|
224
236
|
}
|
225
|
-
|
237
|
+
const handleChange = event => {
|
226
238
|
onChange(dataType === 'number' && event.target.value ? Number.parseInt(event.target.value) : event.target.value);
|
227
239
|
};
|
228
240
|
return /*#__PURE__*/React__default.createElement(Input, Object.assign({}, commonProps, {
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"EditingControlCell.js","sources":["../../../../../../../../../../src/components/Table3/components/Columns/Cell/EditingControlCell.tsx"],"sourcesContent":["import React from 'react';\nimport { TableMeta as ReactTableMeta, ColumnMeta as ReactTableColumnMeta } from '@tanstack/react-table';\nimport { isDate } from 'date-fns';\nimport { Datepicker } from '../../../../Datepicker/Datepicker';\nimport { Switch } from '../../../../Switch/Switch';\nimport { Input } from '../../../../Input/Input';\nimport { TableColumnDataType, TableColumnRendererControl, TableFontSize } from '../../../../../primitives/Table/types';\nimport * as date from '../../../../../utils/date';\nimport { RowMoveIndicator } from './Editing/RowMoveIndicator';\nimport { TextareaWithAutosizing } from './Editing/TextareaWithAutosizing';\nimport { Field } from '../../../../Field/Field';\nimport { isElementInsideOrTriggeredFromContainer } from '../../../../../utils/dom';\nimport { TableCellRendererProps } from '../../../../../primitives/Table/Core/types';\nimport { RowContext } from '../../../../../primitives/Table/Core/components/Row/RowContext';\nimport { getCellAttributes } from '../../../../../primitives/Table/Core/components/Columns/Cell/util';\nimport { useEditingCellAutofocus } from './util';\nimport { isPressingMetaKey } from '../../../../../utils/keyboard';\nimport { Checkbox } from '../../../../Checkbox/Checkbox';\n\nexport function EditingControlCell<TType = unknown>(props: TableCellRendererProps<TType>) {\n const { cell, cellRef, isHighlighted, index } = props;\n const { rowIndex } = React.useContext(RowContext);\n const { table } = cell.getContext();\n const tableMeta = table.options.meta as ReactTableMeta<TType>;\n const columnMeta = cell.column.columnDef.meta as ReactTableColumnMeta<TType, unknown>;\n const isActiveRow = tableMeta.rowActive.rowActiveIndex === rowIndex;\n const type = columnMeta.control ?? 'input';\n const handleFocus = useEditingCellAutofocus<TType>(props);\n const value = cell.getValue();\n\n // some controls, like select2, should trigger cell changed (validation, updates) as the value changes\n const hasNonTextControl = React.useMemo(() => {\n return (\n typeof type === 'function' &&\n !!cellRef.current?.querySelector('[data-taco=\"Select2\"],[data-taco=\"switch\"],[data-taco=\"checkbox\"]')\n );\n }, [cellRef.current]);\n\n const handleChange = (nextValue: unknown) => {\n if (nextValue !== value) {\n tableMeta.editing.setCellValue(cell, rowIndex, nextValue);\n\n if (hasNonTextControl) {\n tableMeta.editing.onCellChanged(cell, rowIndex, nextValue);\n }\n }\n };\n\n const handleBlur = () => {\n tableMeta.editing.toggleDetailedMode(false);\n tableMeta.editing.onCellChanged(cell, rowIndex, undefined, !hasNonTextControl);\n };\n\n // ensure that blur runs when the cell gets unmounted (when vertically arrow key navigating)\n React.useEffect(() => {\n const ref = cellRef.current;\n\n return () => {\n if (document.activeElement === ref || isElementInsideOrTriggeredFromContainer(document.activeElement, ref)) {\n handleBlur();\n }\n };\n }, []);\n\n const error = tableMeta.editing.getCellError<TType>(cell);\n\n const controlProps = {\n dataType: columnMeta.dataType,\n fontSize: tableMeta.fontSize.size,\n id: cell.column.id,\n invalid: !!error,\n isDetailedMode: tableMeta.editing.isDetailedMode,\n isTruncated: !!columnMeta.enableTruncate,\n onBlur: handleBlur,\n onChange: handleChange,\n row: cell.row.original,\n rowPendingChanges: tableMeta.editing.getRowValue(cell.row.id),\n tabIndex: isActiveRow ? 0 : -1,\n toggleDetailedMode: tableMeta.editing.toggleDetailedMode,\n type,\n value,\n };\n\n const cellAttributes = {\n ...getCellAttributes(cell, index, isHighlighted),\n 'data-cell-editing-invalid': error ? true : undefined,\n 'data-taco': 'cell-control',\n onFocus: handleFocus,\n ref: cellRef,\n tabIndex: -1,\n };\n\n return (\n <td {...cellAttributes}>\n <Field invalid={!!error} message={error}>\n <MemoedEditingCell<TType> {...controlProps} />\n </Field>\n {\n // we show row move indicator here within the cell rather than the row because it is\n // an editing only feature, and we don't want to leak editing into the shared row component\n }\n <RowMoveIndicator cell={cell} cellRef={cellRef} isActiveRow={isActiveRow} />\n </td>\n );\n}\n\ntype MemoedEditingCellProps<TType = unknown, TValue = unknown> = {\n dataType?: TableColumnDataType;\n fontSize: TableFontSize;\n id: string;\n invalid: boolean;\n isDetailedMode: boolean;\n isTruncated: boolean;\n onBlur: () => void;\n onChange: (value: TValue) => void;\n row: TType;\n rowPendingChanges: Partial<TType> | undefined;\n tabIndex?: number;\n toggleDetailedMode: (detailed: React.SetStateAction<boolean>) => void;\n type: TableColumnRendererControl<TType>;\n value: TValue;\n};\n\nconst MemoedEditingCell = React.memo(function MemoedEditingCell<TType = unknown>(props: MemoedEditingCellProps<TType>) {\n const {\n dataType,\n fontSize,\n id,\n invalid,\n isDetailedMode,\n isTruncated,\n onBlur,\n onChange,\n row,\n rowPendingChanges,\n tabIndex = -1,\n toggleDetailedMode,\n type = 'input',\n value,\n } = props;\n const controlRef = React.useRef<HTMLElement>(null);\n const currentValue = row[id];\n const commonProps = {\n onBlur,\n ref: controlRef,\n tabIndex,\n };\n\n if (typeof type === 'function') {\n const controlFnProps = {\n ...commonProps,\n invalid,\n setValue: onChange,\n value,\n };\n\n return type(controlFnProps, { ...row, ...rowPendingChanges });\n }\n\n if (type === 'switch') {\n return (\n <Switch\n {...commonProps}\n checked={Boolean(value)}\n onChange={onChange}\n ref={controlRef as React.RefObject<HTMLButtonElement>}\n />\n );\n }\n\n if (type === 'checkbox') {\n return (\n <Checkbox\n {...commonProps}\n checked={Boolean(value)}\n onChange={onChange}\n ref={controlRef as React.RefObject<HTMLButtonElement>}\n />\n );\n }\n\n const handleInputKeyDown = (event: React.KeyboardEvent<HTMLInputElement | HTMLTextAreaElement>) => {\n const target = event.target as HTMLInputElement | HTMLTextAreaElement;\n\n if (target.readOnly) {\n return;\n }\n\n // prevent active row navigation while in detailed mode\n if (\n isDetailedMode &&\n (event.key === 'ArrowUp' || event.key === 'ArrowDown' || event.key === 'ArrowLeft' || event.key === 'ArrowRight')\n ) {\n event.stopPropagation();\n }\n\n // enter or exit detail mode when pressing enter\n if (event.key === 'Enter') {\n // textareas support shift and enter, don't prevent default in that case\n if (event.shiftKey && isDetailedMode) {\n return;\n }\n\n event.preventDefault();\n\n if (isDetailedMode) {\n target.select?.();\n } else {\n target.setSelectionRange?.(target.value?.length, target.value?.length);\n }\n\n toggleDetailedMode(editing => !editing);\n return;\n }\n\n // reset the value, or exit edit mode when pressing escape\n if (event.key === 'Escape') {\n if (isDetailedMode) {\n event.preventDefault();\n toggleDetailedMode(false);\n\n if (value !== currentValue) {\n props.onChange(currentValue);\n }\n\n // have to let onChange run before selecting, otherwise the value changes\n requestAnimationFrame(() => target.select?.());\n }\n\n return;\n }\n\n // toggle into detailed mode when actually inputting something\n if (!isPressingMetaKey(event) && (/^[a-z0-9]$/i.test(event.key) || event.key === 'Backspace')) {\n toggleDetailedMode(true);\n }\n };\n\n const handleFocus = (event: React.FocusEvent<HTMLInputElement | HTMLTextAreaElement>) => {\n if (!isDetailedMode) {\n event.target.select();\n }\n };\n\n if (type === 'datepicker') {\n const valueAsDate = date.parse(value as Date | string | undefined);\n\n const handleChange = (event: React.ChangeEvent<HTMLInputElement>) => {\n const newDate = (event as any).detail as Date;\n\n if (!valueAsDate || !newDate || (isDate(valueAsDate) && isDate(newDate) && !date.isWeakEqual(valueAsDate, newDate))) {\n props.onChange(newDate);\n }\n };\n\n return (\n <Datepicker\n {...commonProps}\n invalid={invalid}\n onChange={handleChange}\n onFocus={handleFocus}\n onKeyDown={handleInputKeyDown}\n ref={controlRef as React.RefObject<HTMLInputElement>}\n value={valueAsDate}\n />\n );\n }\n\n if (type === 'textarea') {\n const handleChange = (event: React.ChangeEvent<HTMLTextAreaElement>) => {\n onChange(event.target.value);\n };\n\n return (\n <TextareaWithAutosizing\n {...commonProps}\n fontSize={fontSize}\n invalid={invalid}\n isTruncated={isTruncated}\n onChange={handleChange}\n onFocus={handleFocus}\n onKeyDown={handleInputKeyDown}\n ref={controlRef as React.RefObject<HTMLTextAreaElement>}\n value={String(value ?? '')}\n />\n );\n }\n\n const handleChange = (event: React.ChangeEvent<HTMLInputElement>) => {\n onChange(dataType === 'number' && event.target.value ? Number.parseInt(event.target.value) : event.target.value);\n };\n\n return (\n <Input\n {...commonProps}\n invalid={invalid}\n onChange={handleChange}\n onFocus={handleFocus}\n onKeyDown={handleInputKeyDown}\n ref={controlRef as React.RefObject<HTMLInputElement>}\n type={dataType === 'number' ? 'number' : undefined}\n value={dataType === 'number' ? (value as number) : String(value ?? '')}\n />\n );\n}) as <TType = unknown>(props: MemoedEditingCellProps<TType>) => JSX.Element;\n"],"names":["EditingControlCell","props","cell","cellRef","isHighlighted","index","_React$useContext","React","useContext","RowContext","rowIndex","_cell$getContext","getContext","table","tableMeta","options","meta","columnMeta","column","columnDef","isActiveRow","rowActive","rowActiveIndex","type","_columnMeta$control","control","handleFocus","useEditingCellAutofocus","value","getValue","hasNonTextControl","useMemo","_cellRef$current","current","querySelector","handleChange","nextValue","editing","setCellValue","onCellChanged","handleBlur","toggleDetailedMode","undefined","useEffect","ref","document","activeElement","isElementInsideOrTriggeredFromContainer","error","getCellError","controlProps","dataType","fontSize","size","id","invalid","isDetailedMode","isTruncated","enableTruncate","onBlur","onChange","row","original","rowPendingChanges","getRowValue","tabIndex","cellAttributes","_extends","getCellAttributes","onFocus","Field","message","MemoedEditingCell","RowMoveIndicator","memo","_props$tabIndex","_props$type","controlRef","useRef","currentValue","commonProps","controlFnProps","setValue","Switch","checked","Boolean","Checkbox","handleInputKeyDown","event","target","readOnly","key","stopPropagation","shiftKey","preventDefault","_target$select","select","call","_target$setSelectionR","_target$value","_target$value2","setSelectionRange","length","requestAnimationFrame","_target$select2","isPressingMetaKey","test","valueAsDate","date","newDate","detail","isDate","Datepicker","onKeyDown","TextareaWithAutosizing","String","Number","parseInt","Input"],"mappings":"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"}
|
1
|
+
{"version":3,"file":"EditingControlCell.js","sources":["../../../../../../../../../../src/components/Table3/components/Columns/Cell/EditingControlCell.tsx"],"sourcesContent":["import React from 'react';\nimport { TableMeta as ReactTableMeta, ColumnMeta as ReactTableColumnMeta } from '@tanstack/react-table';\nimport { isDate } from 'date-fns';\nimport { Datepicker } from '../../../../Datepicker/Datepicker';\nimport { Switch } from '../../../../Switch/Switch';\nimport { Input } from '../../../../Input/Input';\nimport { TableColumnDataType, TableColumnRendererControl, TableFontSize } from '../../../../../primitives/Table/types';\nimport * as date from '../../../../../utils/date';\nimport { RowMoveIndicator } from './Editing/RowMoveIndicator';\nimport { TextareaWithAutosizing } from './Editing/TextareaWithAutosizing';\nimport { Field } from '../../../../Field/Field';\nimport { isElementInsideOrTriggeredFromContainer } from '../../../../../utils/dom';\nimport { TableCellRendererProps } from '../../../../../primitives/Table/Core/types';\nimport { RowContext } from '../../../../../primitives/Table/Core/components/Row/RowContext';\nimport { getCellAttributes } from '../../../../../primitives/Table/Core/components/Columns/Cell/util';\nimport { useEditingCellAutofocus } from './util';\nimport { isPressingMetaKey } from '../../../../../utils/keyboard';\nimport { Checkbox } from '../../../../Checkbox/Checkbox';\n\nexport function EditingControlCell<TType = unknown>(props: TableCellRendererProps<TType>) {\n const { cell, cellRef, isHighlighted, index } = props;\n const { rowIndex } = React.useContext(RowContext);\n const { table } = cell.getContext();\n const tableMeta = table.options.meta as ReactTableMeta<TType>;\n const columnMeta = cell.column.columnDef.meta as ReactTableColumnMeta<TType, unknown>;\n const isActiveRow = tableMeta.rowActive.rowActiveIndex === rowIndex;\n const type = columnMeta.control ?? 'input';\n const handleFocus = useEditingCellAutofocus<TType>(props);\n const value = cell.getValue();\n\n // some controls, like select2, should trigger cell changed (validation, updates) as the value changes\n const hasNonTextControl = React.useMemo(() => {\n return (\n typeof type === 'function' &&\n !!cellRef.current?.querySelector('[data-taco=\"Select2\"],[data-taco=\"switch\"],[data-taco=\"checkbox\"]')\n );\n }, [cellRef.current]);\n\n const handleChange = (nextValue: unknown) => {\n if (nextValue !== value) {\n tableMeta.editing.setCellValue(cell, nextValue);\n\n if (hasNonTextControl) {\n requestAnimationFrame(() => tableMeta.editing.onCellChanged(cell, rowIndex, nextValue));\n }\n }\n };\n\n function blur() {\n tableMeta.editing.toggleDetailedMode(false);\n tableMeta.editing.onCellChanged(cell, rowIndex, undefined, !hasNonTextControl);\n }\n\n const handleBlur = (event: React.FocusEvent) => {\n if (isElementInsideOrTriggeredFromContainer(event.relatedTarget, event.currentTarget)) {\n return;\n }\n blur();\n };\n\n // ensure that blur runs when the cell gets unmounted (when vertically arrow key navigating)\n React.useEffect(() => {\n const ref = cellRef.current;\n\n return () => {\n if (document.activeElement === ref || isElementInsideOrTriggeredFromContainer(document.activeElement, ref)) {\n blur();\n }\n };\n }, []);\n\n const error = tableMeta.editing.getCellError<TType>(cell);\n\n const controlProps = {\n dataType: columnMeta.dataType,\n fontSize: tableMeta.fontSize.size,\n id: cell.column.id,\n invalid: !!error,\n isDetailedMode: tableMeta.editing.isDetailedMode,\n isTruncated: !!columnMeta.enableTruncate,\n onBlur: handleBlur,\n onChange: handleChange,\n row: cell.row.original,\n rowPendingChanges: tableMeta.editing.getRowValue(cell.row.id),\n tabIndex: isActiveRow ? 0 : -1,\n toggleDetailedMode: tableMeta.editing.toggleDetailedMode,\n type,\n value,\n };\n\n const cellAttributes = {\n ...getCellAttributes(cell, index, isHighlighted),\n 'data-cell-editing-invalid': error ? true : undefined,\n 'data-taco': 'cell-control',\n onFocus: handleFocus,\n ref: cellRef,\n tabIndex: -1,\n };\n\n return (\n <td {...cellAttributes}>\n <Field invalid={!!error} message={error}>\n <MemoedEditingCell<TType> {...controlProps} />\n </Field>\n {\n // we show row move indicator here within the cell rather than the row because it is\n // an editing only feature, and we don't want to leak editing into the shared row component\n }\n <RowMoveIndicator cell={cell} cellRef={cellRef} isActiveRow={isActiveRow} />\n </td>\n );\n}\n\ntype MemoedEditingCellProps<TType = unknown, TValue = unknown> = {\n dataType?: TableColumnDataType;\n fontSize: TableFontSize;\n id: string;\n invalid: boolean;\n isDetailedMode: boolean;\n isTruncated: boolean;\n onBlur: (event: React.FocusEvent) => void;\n onChange: (value: TValue) => void;\n row: TType;\n rowPendingChanges: Partial<TType> | undefined;\n tabIndex?: number;\n toggleDetailedMode: (detailed: React.SetStateAction<boolean>) => void;\n type: TableColumnRendererControl<TType>;\n value: TValue;\n};\n\nconst MemoedEditingCell = React.memo(function MemoedEditingCell<TType = unknown>(props: MemoedEditingCellProps<TType>) {\n const {\n dataType,\n fontSize,\n id,\n invalid,\n isDetailedMode,\n isTruncated,\n onBlur,\n onChange,\n row,\n rowPendingChanges,\n tabIndex = -1,\n toggleDetailedMode,\n type = 'input',\n value,\n } = props;\n const controlRef = React.useRef<HTMLElement>(null);\n const currentValue = row[id];\n const commonProps = {\n onBlur,\n ref: controlRef,\n tabIndex,\n };\n\n if (typeof type === 'function') {\n const controlFnProps = {\n ...commonProps,\n invalid,\n setValue: onChange,\n value,\n };\n\n return type(controlFnProps, { ...row, ...rowPendingChanges });\n }\n\n if (type === 'switch') {\n return (\n <Switch\n {...commonProps}\n checked={Boolean(value)}\n onChange={onChange}\n ref={controlRef as React.RefObject<HTMLButtonElement>}\n />\n );\n }\n\n if (type === 'checkbox') {\n return (\n <Checkbox\n {...commonProps}\n checked={Boolean(value)}\n onChange={onChange}\n ref={controlRef as React.RefObject<HTMLButtonElement>}\n />\n );\n }\n\n const handleInputKeyDown = (event: React.KeyboardEvent<HTMLInputElement | HTMLTextAreaElement>) => {\n const target = event.target as HTMLInputElement | HTMLTextAreaElement;\n\n if (target.readOnly) {\n return;\n }\n\n // prevent active row navigation while in detailed mode\n if (\n isDetailedMode &&\n (event.key === 'ArrowUp' || event.key === 'ArrowDown' || event.key === 'ArrowLeft' || event.key === 'ArrowRight')\n ) {\n event.stopPropagation();\n }\n\n // enter or exit detail mode when pressing enter\n if (event.key === 'Enter') {\n // textareas support shift and enter, don't prevent default in that case\n if (event.shiftKey && isDetailedMode) {\n return;\n }\n\n event.preventDefault();\n\n if (isDetailedMode) {\n target.select?.();\n } else {\n target.setSelectionRange?.(target.value?.length, target.value?.length);\n }\n\n toggleDetailedMode(editing => !editing);\n return;\n }\n\n // reset the value, or exit edit mode when pressing escape\n if (event.key === 'Escape') {\n if (isDetailedMode) {\n event.preventDefault();\n toggleDetailedMode(false);\n\n if (value !== currentValue) {\n props.onChange(currentValue);\n }\n\n // have to let onChange run before selecting, otherwise the value changes\n requestAnimationFrame(() => target.select?.());\n }\n\n return;\n }\n\n // toggle into detailed mode when actually inputting something\n if (!isPressingMetaKey(event) && (/^[a-z0-9]$/i.test(event.key) || event.key === 'Backspace')) {\n toggleDetailedMode(true);\n }\n };\n\n const handleFocus = (event: React.FocusEvent<HTMLInputElement | HTMLTextAreaElement>) => {\n if (!isDetailedMode) {\n event.target.select();\n }\n };\n\n if (type === 'datepicker') {\n const valueAsDate = date.parse(value as Date | string | undefined);\n\n const handleChange = (event: React.ChangeEvent<HTMLInputElement>) => {\n const newDate = (event as any).detail as Date;\n\n if (!valueAsDate || !newDate || (isDate(valueAsDate) && isDate(newDate) && !date.isWeakEqual(valueAsDate, newDate))) {\n props.onChange(newDate);\n }\n };\n\n return (\n <Datepicker\n {...commonProps}\n invalid={invalid}\n onChange={handleChange}\n onFocus={handleFocus}\n onKeyDown={handleInputKeyDown}\n ref={controlRef as React.RefObject<HTMLInputElement>}\n value={valueAsDate}\n />\n );\n }\n\n if (type === 'textarea') {\n const handleChange = (event: React.ChangeEvent<HTMLTextAreaElement>) => {\n onChange(event.target.value);\n };\n\n return (\n <TextareaWithAutosizing\n {...commonProps}\n fontSize={fontSize}\n invalid={invalid}\n isTruncated={isTruncated}\n onChange={handleChange}\n onFocus={handleFocus}\n onKeyDown={handleInputKeyDown}\n ref={controlRef as React.RefObject<HTMLTextAreaElement>}\n value={String(value ?? '')}\n />\n );\n }\n\n const handleChange = (event: React.ChangeEvent<HTMLInputElement>) => {\n onChange(dataType === 'number' && event.target.value ? Number.parseInt(event.target.value) : event.target.value);\n };\n\n return (\n <Input\n {...commonProps}\n invalid={invalid}\n onChange={handleChange}\n onFocus={handleFocus}\n onKeyDown={handleInputKeyDown}\n ref={controlRef as React.RefObject<HTMLInputElement>}\n type={dataType === 'number' ? 'number' : undefined}\n value={dataType === 'number' ? (value as number) : String(value ?? '')}\n />\n );\n}) as <TType = unknown>(props: MemoedEditingCellProps<TType>) => JSX.Element;\n"],"names":["EditingControlCell","props","cell","cellRef","isHighlighted","index","rowIndex","React","useContext","RowContext","table","getContext","tableMeta","options","meta","columnMeta","column","columnDef","isActiveRow","rowActive","rowActiveIndex","type","_columnMeta$control","control","handleFocus","useEditingCellAutofocus","value","getValue","hasNonTextControl","useMemo","_cellRef$current","current","querySelector","handleChange","nextValue","editing","setCellValue","requestAnimationFrame","onCellChanged","blur","toggleDetailedMode","undefined","handleBlur","event","isElementInsideOrTriggeredFromContainer","relatedTarget","currentTarget","useEffect","ref","document","activeElement","error","getCellError","controlProps","dataType","fontSize","size","id","invalid","isDetailedMode","isTruncated","enableTruncate","onBlur","onChange","row","original","rowPendingChanges","getRowValue","tabIndex","cellAttributes","getCellAttributes","onFocus","Field","message","MemoedEditingCell","RowMoveIndicator","memo","controlRef","useRef","currentValue","commonProps","controlFnProps","setValue","Switch","checked","Boolean","Checkbox","handleInputKeyDown","target","readOnly","key","stopPropagation","shiftKey","preventDefault","_target$select","select","call","_target$setSelectionR","_target$value","_target$value2","setSelectionRange","length","_target$select2","isPressingMetaKey","test","valueAsDate","date","newDate","detail","isDate","Datepicker","onKeyDown","TextareaWithAutosizing","String","Number","parseInt","Input"],"mappings":"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"}
|
package/dist/esm/packages/taco/src/components/Table3/components/Columns/Cell/EditingDisplayCell.js
CHANGED
@@ -2,8 +2,8 @@ import React__default from 'react';
|
|
2
2
|
import { DisplayCell } from '../../../../../primitives/Table/Core/components/Columns/Cell/BuiltIns/DisplayCell.js';
|
3
3
|
import { useEditingCellAutofocus } from './util.js';
|
4
4
|
|
5
|
-
|
6
|
-
|
5
|
+
const EditingDisplayCell = /*#__PURE__*/React__default.memo(function EditingDisplayCell(props) {
|
6
|
+
const handleFocus = useEditingCellAutofocus(props);
|
7
7
|
return /*#__PURE__*/React__default.createElement(DisplayCell, Object.assign({}, props, {
|
8
8
|
onFocus: handleFocus,
|
9
9
|
tabIndex: -1
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"EditingDisplayCell.js","sources":["../../../../../../../../../../src/components/Table3/components/Columns/Cell/EditingDisplayCell.tsx"],"sourcesContent":["import React from 'react';\nimport { DisplayCell } from '../../../../../primitives/Table/Core/components/Columns/Cell/BuiltIns/DisplayCell';\nimport { TableCellRendererProps } from '../../../../../primitives/Table/Core/types';\nimport { useEditingCellAutofocus } from './util';\n\nexport const EditingDisplayCell = React.memo(function EditingDisplayCell<TType = unknown>(props: TableCellRendererProps<TType>) {\n const handleFocus = useEditingCellAutofocus<TType>(props);\n return <DisplayCell<TType> {...props} onFocus={handleFocus} tabIndex={-1} />;\n}) as <TType = unknown>(props: TableCellRendererProps<TType>) => JSX.Element;\n"],"names":["EditingDisplayCell","React","memo","props","handleFocus","useEditingCellAutofocus","DisplayCell","onFocus","tabIndex"],"mappings":";;;;
|
1
|
+
{"version":3,"file":"EditingDisplayCell.js","sources":["../../../../../../../../../../src/components/Table3/components/Columns/Cell/EditingDisplayCell.tsx"],"sourcesContent":["import React from 'react';\nimport { DisplayCell } from '../../../../../primitives/Table/Core/components/Columns/Cell/BuiltIns/DisplayCell';\nimport { TableCellRendererProps } from '../../../../../primitives/Table/Core/types';\nimport { useEditingCellAutofocus } from './util';\n\nexport const EditingDisplayCell = React.memo(function EditingDisplayCell<TType = unknown>(props: TableCellRendererProps<TType>) {\n const handleFocus = useEditingCellAutofocus<TType>(props);\n return <DisplayCell<TType> {...props} onFocus={handleFocus} tabIndex={-1} />;\n}) as <TType = unknown>(props: TableCellRendererProps<TType>) => JSX.Element;\n"],"names":["EditingDisplayCell","React","memo","props","handleFocus","useEditingCellAutofocus","DisplayCell","onFocus","tabIndex"],"mappings":";;;;MAKaA,kBAAkB,gBAAGC,cAAK,CAACC,IAAI,CAAC,SAASF,kBAAkBA,CAAkBG,KAAoC;EAC1H,MAAMC,WAAW,GAAGC,uBAAuB,CAAQF,KAAK,CAAC;EACzD,oBAAOF,6BAACK,WAAW,oBAAYH,KAAK;IAAEI,OAAO,EAAEH,WAAW;IAAEI,QAAQ,EAAE,CAAC;KAAK;AAChF,CAAC;;;;"}
|
@@ -4,20 +4,21 @@ import { RowContext } from '../../../../../primitives/Table/Core/components/Row/
|
|
4
4
|
import { useAugmentedFocusManager } from '../../../../../primitives/Table/Core/components/Body/util.js';
|
5
5
|
|
6
6
|
function useEditingCellAutofocus(props) {
|
7
|
-
|
8
|
-
|
9
|
-
rowIndex
|
10
|
-
|
11
|
-
|
12
|
-
|
13
|
-
|
7
|
+
const focusManager = useAugmentedFocusManager();
|
8
|
+
const {
|
9
|
+
rowIndex
|
10
|
+
} = React__default.useContext(RowContext);
|
11
|
+
const table = props.cell.getContext().table;
|
12
|
+
const tableMeta = table.options.meta;
|
13
|
+
const isActiveRow = tableMeta.rowActive.rowActiveIndex === rowIndex;
|
14
|
+
const autoFocus = props.index === tableMeta.editing.lastFocusedCellIndex && isActiveRow;
|
14
15
|
// focus the cell so that we trigger it's handle focus
|
15
|
-
React__default.useEffect(
|
16
|
+
React__default.useEffect(() => {
|
16
17
|
if (props.cellRef.current) {
|
17
18
|
var _props$cellRef$curren, _document$activeEleme, _document$activeEleme2;
|
18
|
-
|
19
|
-
|
20
|
-
|
19
|
+
const isFocusedElementInCurrentRow = (_props$cellRef$curren = props.cellRef.current.closest('tr')) === null || _props$cellRef$curren === void 0 ? void 0 : _props$cellRef$curren.contains(document.activeElement);
|
20
|
+
const isFocusedElementSearch = ((_document$activeEleme = document.activeElement) === null || _document$activeEleme === void 0 ? void 0 : _document$activeEleme.getAttribute('name')) === 'table-search';
|
21
|
+
const isFocusedElementMenu = ((_document$activeEleme2 = document.activeElement) === null || _document$activeEleme2 === void 0 ? void 0 : _document$activeEleme2.getAttribute('role')) === 'menu';
|
21
22
|
if (autoFocus && !isFocusedElementInCurrentRow && !isFocusedElementSearch && !isFocusedElementMenu) {
|
22
23
|
var _props$cellRef$curren2;
|
23
24
|
(_props$cellRef$curren2 = props.cellRef.current) === null || _props$cellRef$curren2 === void 0 ? void 0 : _props$cellRef$curren2.focus();
|
@@ -25,16 +26,16 @@ function useEditingCellAutofocus(props) {
|
|
25
26
|
}
|
26
27
|
}, [tableMeta.rowActive.rowActiveIndex]);
|
27
28
|
// when the cell receives focus we actually want to focus the control inside it...
|
28
|
-
|
29
|
+
const handleFocus = event => {
|
29
30
|
var _props$cellRef$curren3;
|
30
|
-
|
31
|
+
const tableElement = (_props$cellRef$curren3 = props.cellRef.current) === null || _props$cellRef$curren3 === void 0 ? void 0 : _props$cellRef$curren3.closest('table');
|
31
32
|
if (tableElement && table.getIsSomeColumnsPinned() && !props.cell.column.getIsPinned()) {
|
32
|
-
|
33
|
-
|
34
|
-
|
35
|
-
|
36
|
-
|
37
|
-
|
33
|
+
const columnFreezingOffset = table.getLeftTotalSize();
|
34
|
+
const targetRect = event.currentTarget.getBoundingClientRect();
|
35
|
+
const tableRect = tableElement.getBoundingClientRect();
|
36
|
+
const leftOffsetFromScrollContainer = targetRect.left - tableRect.left;
|
37
|
+
const scrollbarWidth = tableElement.offsetWidth - tableElement.clientWidth; // the width of table vertical scrollbar
|
38
|
+
const isFocusedElementMenu = event.currentTarget.getAttribute('data-cell-id') === '__actions';
|
38
39
|
if (
|
39
40
|
// When pinned column overlaps the focused cell
|
40
41
|
(leftOffsetFromScrollContainer < columnFreezingOffset ||
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"util.js","sources":["../../../../../../../../../../src/components/Table3/components/Columns/Cell/util.ts"],"sourcesContent":["import React from 'react';\nimport { TableMeta as ReactTableMeta } from '@tanstack/react-table';\nimport { useAugmentedFocusManager } from '../../../../../primitives/Table/Core/components/Body/util';\nimport { TableCellRendererProps } from '../../../../../primitives/Table/Core/types';\nimport { RowContext } from '../../../../../primitives/Table/Core/components/Row/RowContext';\nimport { hasFocusableElement } from '../../../../../utils/dom';\n\nexport function useEditingCellAutofocus<TType = unknown>(props: TableCellRendererProps<TType>) {\n const focusManager = useAugmentedFocusManager();\n const { rowIndex } = React.useContext(RowContext);\n const table = props.cell.getContext().table;\n const tableMeta = table.options.meta as ReactTableMeta<TType>;\n const isActiveRow = tableMeta.rowActive.rowActiveIndex === rowIndex;\n const autoFocus = props.index === tableMeta.editing.lastFocusedCellIndex && isActiveRow;\n\n // focus the cell so that we trigger it's handle focus\n React.useEffect(() => {\n if (props.cellRef.current) {\n const isFocusedElementInCurrentRow = props.cellRef.current.closest('tr')?.contains(document.activeElement);\n const isFocusedElementSearch = document.activeElement?.getAttribute('name') === 'table-search';\n const isFocusedElementMenu = document.activeElement?.getAttribute('role') === 'menu';\n\n if (autoFocus && !isFocusedElementInCurrentRow && !isFocusedElementSearch && !isFocusedElementMenu) {\n props.cellRef.current?.focus();\n }\n }\n }, [tableMeta.rowActive.rowActiveIndex]);\n\n // when the cell receives focus we actually want to focus the control inside it...\n const handleFocus = (event: React.FocusEvent<HTMLTableCellElement>) => {\n const tableElement = props.cellRef.current?.closest('table');\n\n if (tableElement && table.getIsSomeColumnsPinned() && !props.cell.column.getIsPinned()) {\n const columnFreezingOffset = table.getLeftTotalSize();\n const targetRect = event.currentTarget.getBoundingClientRect();\n const tableRect = tableElement.getBoundingClientRect();\n const leftOffsetFromScrollContainer = targetRect.left - tableRect.left;\n const scrollbarWidth = tableElement.offsetWidth - tableElement.clientWidth; // the width of table vertical scrollbar\n const isFocusedElementMenu = event.currentTarget.getAttribute('data-cell-id') === '__actions';\n\n if (\n // When pinned column overlaps the focused cell\n (leftOffsetFromScrollContainer < columnFreezingOffset ||\n // When focused cell goes behidn the edge of the table\n leftOffsetFromScrollContainer + targetRect.width > tableRect.width - scrollbarWidth) &&\n !isFocusedElementMenu\n ) {\n tableElement.scrollTo(props.cell.column.getStart() - columnFreezingOffset, tableElement.scrollTop);\n }\n }\n\n if (event.target === event.currentTarget && hasFocusableElement(event.currentTarget)) {\n focusManager.focusNext();\n }\n };\n\n return handleFocus;\n}\n"],"names":["useEditingCellAutofocus","props","focusManager","useAugmentedFocusManager","
|
1
|
+
{"version":3,"file":"util.js","sources":["../../../../../../../../../../src/components/Table3/components/Columns/Cell/util.ts"],"sourcesContent":["import React from 'react';\nimport { TableMeta as ReactTableMeta } from '@tanstack/react-table';\nimport { useAugmentedFocusManager } from '../../../../../primitives/Table/Core/components/Body/util';\nimport { TableCellRendererProps } from '../../../../../primitives/Table/Core/types';\nimport { RowContext } from '../../../../../primitives/Table/Core/components/Row/RowContext';\nimport { hasFocusableElement } from '../../../../../utils/dom';\n\nexport function useEditingCellAutofocus<TType = unknown>(props: TableCellRendererProps<TType>) {\n const focusManager = useAugmentedFocusManager();\n const { rowIndex } = React.useContext(RowContext);\n const table = props.cell.getContext().table;\n const tableMeta = table.options.meta as ReactTableMeta<TType>;\n const isActiveRow = tableMeta.rowActive.rowActiveIndex === rowIndex;\n const autoFocus = props.index === tableMeta.editing.lastFocusedCellIndex && isActiveRow;\n\n // focus the cell so that we trigger it's handle focus\n React.useEffect(() => {\n if (props.cellRef.current) {\n const isFocusedElementInCurrentRow = props.cellRef.current.closest('tr')?.contains(document.activeElement);\n const isFocusedElementSearch = document.activeElement?.getAttribute('name') === 'table-search';\n const isFocusedElementMenu = document.activeElement?.getAttribute('role') === 'menu';\n\n if (autoFocus && !isFocusedElementInCurrentRow && !isFocusedElementSearch && !isFocusedElementMenu) {\n props.cellRef.current?.focus();\n }\n }\n }, [tableMeta.rowActive.rowActiveIndex]);\n\n // when the cell receives focus we actually want to focus the control inside it...\n const handleFocus = (event: React.FocusEvent<HTMLTableCellElement>) => {\n const tableElement = props.cellRef.current?.closest('table');\n\n if (tableElement && table.getIsSomeColumnsPinned() && !props.cell.column.getIsPinned()) {\n const columnFreezingOffset = table.getLeftTotalSize();\n const targetRect = event.currentTarget.getBoundingClientRect();\n const tableRect = tableElement.getBoundingClientRect();\n const leftOffsetFromScrollContainer = targetRect.left - tableRect.left;\n const scrollbarWidth = tableElement.offsetWidth - tableElement.clientWidth; // the width of table vertical scrollbar\n const isFocusedElementMenu = event.currentTarget.getAttribute('data-cell-id') === '__actions';\n\n if (\n // When pinned column overlaps the focused cell\n (leftOffsetFromScrollContainer < columnFreezingOffset ||\n // When focused cell goes behidn the edge of the table\n leftOffsetFromScrollContainer + targetRect.width > tableRect.width - scrollbarWidth) &&\n !isFocusedElementMenu\n ) {\n tableElement.scrollTo(props.cell.column.getStart() - columnFreezingOffset, tableElement.scrollTop);\n }\n }\n\n if (event.target === event.currentTarget && hasFocusableElement(event.currentTarget)) {\n focusManager.focusNext();\n }\n };\n\n return handleFocus;\n}\n"],"names":["useEditingCellAutofocus","props","focusManager","useAugmentedFocusManager","rowIndex","React","useContext","RowContext","table","cell","getContext","tableMeta","options","meta","isActiveRow","rowActive","rowActiveIndex","autoFocus","index","editing","lastFocusedCellIndex","useEffect","cellRef","current","_props$cellRef$curren","_document$activeEleme","_document$activeEleme2","isFocusedElementInCurrentRow","closest","contains","document","activeElement","isFocusedElementSearch","getAttribute","isFocusedElementMenu","_props$cellRef$curren2","focus","handleFocus","event","tableElement","_props$cellRef$curren3","getIsSomeColumnsPinned","column","getIsPinned","columnFreezingOffset","getLeftTotalSize","targetRect","currentTarget","getBoundingClientRect","tableRect","leftOffsetFromScrollContainer","left","scrollbarWidth","offsetWidth","clientWidth","width","scrollTo","getStart","scrollTop","target","hasFocusableElement","focusNext"],"mappings":"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"}
|
@@ -5,20 +5,23 @@ import { Menu } from '../../../../Menu/Menu.js';
|
|
5
5
|
import { DiscardChangesConfirmationDialog } from '../../Editing/DiscardChangesConfirmationDialog.js';
|
6
6
|
|
7
7
|
function EditingActionsMenu(props) {
|
8
|
-
|
9
|
-
|
10
|
-
|
11
|
-
|
12
|
-
|
13
|
-
|
14
|
-
|
15
|
-
|
8
|
+
const {
|
9
|
+
hasChanges,
|
10
|
+
hasErrors,
|
11
|
+
onDiscard: handleDiscard,
|
12
|
+
onEditingSave: handleSave,
|
13
|
+
isLastRow
|
14
|
+
} = props;
|
15
|
+
const {
|
16
|
+
texts
|
17
|
+
} = useLocalization();
|
18
|
+
const handleKeyDown = event => {
|
16
19
|
// normally we handle this on change of active row, but when tabbing out of the last row the active row state stays on the last one.
|
17
20
|
if (isLastRow && hasChanges && event.key === 'Tab') {
|
18
21
|
handleSave();
|
19
22
|
}
|
20
23
|
};
|
21
|
-
|
24
|
+
const handleMenuContentKeyDown = event => {
|
22
25
|
// Stops the keyboard event from propagating to the Table when EditActionsMenu is open
|
23
26
|
if (event.key === 'ArrowLeft' || event.key === 'ArrowRight') {
|
24
27
|
event.stopPropagation();
|
@@ -29,23 +32,19 @@ function EditingActionsMenu(props) {
|
|
29
32
|
"aria-label": texts.table3.editing.actions.tooltip,
|
30
33
|
icon: "more",
|
31
34
|
onKeyDown: handleKeyDown,
|
32
|
-
menu:
|
33
|
-
|
34
|
-
|
35
|
-
|
36
|
-
|
37
|
-
|
38
|
-
|
39
|
-
|
40
|
-
|
41
|
-
|
42
|
-
|
43
|
-
|
44
|
-
|
45
|
-
}));
|
46
|
-
}
|
47
|
-
}, texts.table3.editing.actions.clear)));
|
48
|
-
}
|
35
|
+
menu: menuProps => (/*#__PURE__*/React__default.createElement(Menu, Object.assign({}, menuProps), /*#__PURE__*/React__default.createElement(Menu.Content, {
|
36
|
+
onKeyDown: handleMenuContentKeyDown
|
37
|
+
}, /*#__PURE__*/React__default.createElement(Menu.Item, {
|
38
|
+
icon: "tick",
|
39
|
+
disabled: !hasChanges || hasErrors,
|
40
|
+
onClick: handleSave
|
41
|
+
}, texts.table3.editing.actions.save), /*#__PURE__*/React__default.createElement(Menu.Item, {
|
42
|
+
icon: "close",
|
43
|
+
disabled: !hasChanges,
|
44
|
+
dialog: props => /*#__PURE__*/React__default.createElement(DiscardChangesConfirmationDialog, Object.assign({}, props, {
|
45
|
+
onDiscard: handleDiscard
|
46
|
+
}))
|
47
|
+
}, texts.table3.editing.actions.clear))))
|
49
48
|
});
|
50
49
|
}
|
51
50
|
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"EditingActionsMenu.js","sources":["../../../../../../../../../../src/components/Table3/components/Columns/Internal/EditingActionsMenu.tsx"],"sourcesContent":["import React from 'react';\nimport { IconButton } from '../../../../IconButton/IconButton';\nimport { Menu } from '../../../../Menu/Menu';\nimport { useLocalization } from '../../../../Provider/Localization';\nimport { DiscardChangesConfirmationDialog } from '../../Editing/DiscardChangesConfirmationDialog';\n\ntype EditingActionsMenuProps = {\n hasChanges: boolean;\n hasErrors: boolean;\n onDiscard: () => void;\n onEditingSave: () => Promise<void>;\n isLastRow: boolean;\n};\n\nexport function EditingActionsMenu(props: EditingActionsMenuProps) {\n const { hasChanges, hasErrors, onDiscard: handleDiscard, onEditingSave: handleSave, isLastRow } = props;\n const { texts } = useLocalization();\n\n const handleKeyDown = event => {\n // normally we handle this on change of active row, but when tabbing out of the last row the active row state stays on the last one.\n if (isLastRow && hasChanges && event.key === 'Tab') {\n handleSave();\n }\n };\n\n const handleMenuContentKeyDown = (event: React.KeyboardEvent<HTMLDivElement>) => {\n // Stops the keyboard event from propagating to the Table when EditActionsMenu is open\n if (event.key === 'ArrowLeft' || event.key === 'ArrowRight') {\n event.stopPropagation();\n }\n };\n\n return (\n <IconButton\n appearance=\"transparent\"\n aria-label={texts.table3.editing.actions.tooltip}\n icon=\"more\"\n onKeyDown={handleKeyDown}\n menu={menuProps => (\n <Menu {...menuProps}>\n <Menu.Content onKeyDown={handleMenuContentKeyDown}>\n <Menu.Item icon=\"tick\" disabled={!hasChanges || hasErrors} onClick={handleSave}>\n {texts.table3.editing.actions.save}\n </Menu.Item>\n <Menu.Item\n icon=\"close\"\n disabled={!hasChanges}\n dialog={props => <DiscardChangesConfirmationDialog {...props} onDiscard={handleDiscard} />}>\n {texts.table3.editing.actions.clear}\n </Menu.Item>\n </Menu.Content>\n </Menu>\n )}\n />\n );\n}\n"],"names":["EditingActionsMenu","props","hasChanges","hasErrors","
|
1
|
+
{"version":3,"file":"EditingActionsMenu.js","sources":["../../../../../../../../../../src/components/Table3/components/Columns/Internal/EditingActionsMenu.tsx"],"sourcesContent":["import React from 'react';\nimport { IconButton } from '../../../../IconButton/IconButton';\nimport { Menu } from '../../../../Menu/Menu';\nimport { useLocalization } from '../../../../Provider/Localization';\nimport { DiscardChangesConfirmationDialog } from '../../Editing/DiscardChangesConfirmationDialog';\n\ntype EditingActionsMenuProps = {\n hasChanges: boolean;\n hasErrors: boolean;\n onDiscard: () => void;\n onEditingSave: () => Promise<void>;\n isLastRow: boolean;\n};\n\nexport function EditingActionsMenu(props: EditingActionsMenuProps) {\n const { hasChanges, hasErrors, onDiscard: handleDiscard, onEditingSave: handleSave, isLastRow } = props;\n const { texts } = useLocalization();\n\n const handleKeyDown = event => {\n // normally we handle this on change of active row, but when tabbing out of the last row the active row state stays on the last one.\n if (isLastRow && hasChanges && event.key === 'Tab') {\n handleSave();\n }\n };\n\n const handleMenuContentKeyDown = (event: React.KeyboardEvent<HTMLDivElement>) => {\n // Stops the keyboard event from propagating to the Table when EditActionsMenu is open\n if (event.key === 'ArrowLeft' || event.key === 'ArrowRight') {\n event.stopPropagation();\n }\n };\n\n return (\n <IconButton\n appearance=\"transparent\"\n aria-label={texts.table3.editing.actions.tooltip}\n icon=\"more\"\n onKeyDown={handleKeyDown}\n menu={menuProps => (\n <Menu {...menuProps}>\n <Menu.Content onKeyDown={handleMenuContentKeyDown}>\n <Menu.Item icon=\"tick\" disabled={!hasChanges || hasErrors} onClick={handleSave}>\n {texts.table3.editing.actions.save}\n </Menu.Item>\n <Menu.Item\n icon=\"close\"\n disabled={!hasChanges}\n dialog={props => <DiscardChangesConfirmationDialog {...props} onDiscard={handleDiscard} />}>\n {texts.table3.editing.actions.clear}\n </Menu.Item>\n </Menu.Content>\n </Menu>\n )}\n />\n );\n}\n"],"names":["EditingActionsMenu","props","hasChanges","hasErrors","onDiscard","handleDiscard","onEditingSave","handleSave","isLastRow","texts","useLocalization","handleKeyDown","event","key","handleMenuContentKeyDown","stopPropagation","React","IconButton","appearance","table3","editing","actions","tooltip","icon","onKeyDown","menu","menuProps","Menu","Content","Item","disabled","onClick","save","dialog","DiscardChangesConfirmationDialog","clear"],"mappings":";;;;;;SAcgBA,kBAAkBA,CAACC,KAA8B;EAC7D,MAAM;IAAEC,UAAU;IAAEC,SAAS;IAAEC,SAAS,EAAEC,aAAa;IAAEC,aAAa,EAAEC,UAAU;IAAEC;GAAW,GAAGP,KAAK;EACvG,MAAM;IAAEQ;GAAO,GAAGC,eAAe,EAAE;EAEnC,MAAMC,aAAa,GAAGC,KAAK;;IAEvB,IAAIJ,SAAS,IAAIN,UAAU,IAAIU,KAAK,CAACC,GAAG,KAAK,KAAK,EAAE;MAChDN,UAAU,EAAE;;GAEnB;EAED,MAAMO,wBAAwB,GAAIF,KAA0C;;IAExE,IAAIA,KAAK,CAACC,GAAG,KAAK,WAAW,IAAID,KAAK,CAACC,GAAG,KAAK,YAAY,EAAE;MACzDD,KAAK,CAACG,eAAe,EAAE;;GAE9B;EAED,oBACIC,6BAACC,UAAU;IACPC,UAAU,EAAC,aAAa;kBACZT,KAAK,CAACU,MAAM,CAACC,OAAO,CAACC,OAAO,CAACC,OAAO;IAChDC,IAAI,EAAC,MAAM;IACXC,SAAS,EAAEb,aAAa;IACxBc,IAAI,EAAEC,SAAS,kBACXV,6BAACW,IAAI,oBAAKD,SAAS,gBACfV,6BAACW,IAAI,CAACC,OAAO;MAACJ,SAAS,EAAEV;oBACrBE,6BAACW,IAAI,CAACE,IAAI;MAACN,IAAI,EAAC,MAAM;MAACO,QAAQ,EAAE,CAAC5B,UAAU,IAAIC,SAAS;MAAE4B,OAAO,EAAExB;OAC/DE,KAAK,CAACU,MAAM,CAACC,OAAO,CAACC,OAAO,CAACW,IAAI,CAC1B,eACZhB,6BAACW,IAAI,CAACE,IAAI;MACNN,IAAI,EAAC,OAAO;MACZO,QAAQ,EAAE,CAAC5B,UAAU;MACrB+B,MAAM,EAAEhC,KAAK,iBAAIe,6BAACkB,gCAAgC,oBAAKjC,KAAK;QAAEG,SAAS,EAAEC;;OACxEI,KAAK,CAACU,MAAM,CAACC,OAAO,CAACC,OAAO,CAACc,KAAK,CAC3B,CACD,CACZ;IAEb;AAEV;;;;"}
|