@primereact/headless 11.0.0-alpha.9 → 11.0.0-rc.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/LICENSE.md +45 -0
- package/README.md +35 -0
- package/accordion/index.d.ts +3 -0
- package/accordion/index.mjs +1 -1
- package/accordion/index.mjs.map +1 -1
- package/accordion/useAccordion.d.ts +7 -6
- package/accordion/useAccordion.props.d.ts +2 -2
- package/accordion/useAccordionPanel.d.ts +46 -0
- package/accordion/useAccordionPanel.props.d.ts +2 -0
- package/animateonscroll/index.d.ts +1 -0
- package/animateonscroll/index.mjs +1 -1
- package/animateonscroll/index.mjs.map +1 -1
- package/animateonscroll/useAnimateOnScroll.d.ts +6 -1
- package/animateonscroll/useAnimateOnScroll.props.d.ts +2 -2
- package/autocomplete/index.d.ts +3 -0
- package/autocomplete/index.mjs +2 -0
- package/autocomplete/index.mjs.map +1 -0
- package/autocomplete/useAutoComplete.d.ts +198 -0
- package/autocomplete/useAutoComplete.props.d.ts +2 -0
- package/avatar/index.d.ts +1 -0
- package/avatar/index.mjs +1 -1
- package/avatar/index.mjs.map +1 -1
- package/avatar/useAvatar.d.ts +5 -1
- package/avatar/useAvatar.props.d.ts +2 -2
- package/avatargroup/index.d.ts +3 -0
- package/avatargroup/index.mjs +2 -0
- package/avatargroup/index.mjs.map +1 -0
- package/avatargroup/useAvatarGroup.d.ts +6 -0
- package/avatargroup/useAvatarGroup.props.d.ts +2 -0
- package/badge/index.d.ts +1 -0
- package/badge/index.mjs +1 -1
- package/badge/index.mjs.map +1 -1
- package/badge/useBadge.d.ts +7 -1
- package/badge/useBadge.props.d.ts +2 -2
- package/breadcrumb/index.d.ts +1 -0
- package/breadcrumb/index.mjs +1 -1
- package/breadcrumb/index.mjs.map +1 -1
- package/breadcrumb/useBreadcrumb.d.ts +18 -2
- package/breadcrumb/useBreadcrumb.props.d.ts +2 -2
- package/button/index.d.ts +1 -0
- package/button/index.mjs +1 -1
- package/button/index.mjs.map +1 -1
- package/button/useButton.d.ts +6 -1
- package/button/useButton.props.d.ts +2 -2
- package/card/index.d.ts +1 -0
- package/card/index.mjs +1 -1
- package/card/index.mjs.map +1 -1
- package/card/useCard.d.ts +6 -1
- package/card/useCard.props.d.ts +2 -2
- package/carousel/index.d.ts +1 -0
- package/carousel/index.mjs +1 -1
- package/carousel/index.mjs.map +1 -1
- package/carousel/useCarousel.d.ts +101 -5
- package/carousel/useCarousel.props.d.ts +2 -2
- package/checkbox/index.d.ts +1 -0
- package/checkbox/index.mjs +1 -1
- package/checkbox/index.mjs.map +1 -1
- package/checkbox/useCheckbox.d.ts +44 -3
- package/checkbox/useCheckbox.props.d.ts +2 -2
- package/checkboxgroup/index.d.ts +3 -0
- package/checkboxgroup/index.mjs +2 -0
- package/checkboxgroup/index.mjs.map +1 -0
- package/checkboxgroup/useCheckboxGroup.d.ts +11 -0
- package/checkboxgroup/useCheckboxGroup.props.d.ts +2 -0
- package/chip/index.d.ts +1 -0
- package/chip/index.mjs +1 -1
- package/chip/index.mjs.map +1 -1
- package/chip/useChip.d.ts +9 -3
- package/chip/useChip.props.d.ts +2 -2
- package/collapsible/index.d.ts +3 -0
- package/collapsible/index.mjs +2 -0
- package/collapsible/index.mjs.map +1 -0
- package/collapsible/useCollapsible.d.ts +33 -0
- package/collapsible/useCollapsible.props.d.ts +2 -0
- package/compare/index.d.ts +3 -0
- package/compare/index.mjs +2 -0
- package/compare/index.mjs.map +1 -0
- package/compare/useCompare.d.ts +2 -0
- package/compare/useCompare.props.d.ts +2 -0
- package/contextmenu/index.d.ts +1 -0
- package/contextmenu/index.mjs +1 -1
- package/contextmenu/index.mjs.map +1 -1
- package/contextmenu/submenu/index.d.ts +2 -0
- package/contextmenu/submenu/index.mjs +2 -0
- package/contextmenu/submenu/index.mjs.map +1 -0
- package/contextmenu/submenu/useContextMenuSubmenu.d.ts +121 -0
- package/contextmenu/submenu/useContextMenuSubmenu.props.d.ts +2 -0
- package/contextmenu/useContextMenu.d.ts +413 -1
- package/contextmenu/useContextMenu.props.d.ts +2 -2
- package/datatable/features/index.d.ts +28 -0
- package/datatable/features/index.mjs +11 -0
- package/datatable/features/index.mjs.map +1 -0
- package/datatable/features/useDataTableColumnReorder.d.ts +52 -0
- package/datatable/features/useDataTableColumnResize.d.ts +20 -0
- package/datatable/features/useDataTableEditing.d.ts +69 -0
- package/datatable/features/useDataTableExpansion.d.ts +32 -0
- package/datatable/features/useDataTableExport.d.ts +43 -0
- package/datatable/features/useDataTableFilter.d.ts +95 -0
- package/datatable/features/useDataTableGrouping.d.ts +11 -0
- package/datatable/features/useDataTableKeyboard.d.ts +23 -0
- package/datatable/features/useDataTablePagination.d.ts +32 -0
- package/datatable/features/useDataTableRowReorder.d.ts +42 -0
- package/datatable/features/useDataTableSelection.d.ts +28 -0
- package/datatable/features/useDataTableSort.d.ts +51 -0
- package/datatable/features/useDataTableTree.d.ts +31 -0
- package/datatable/index.d.ts +7 -0
- package/datatable/index.mjs +11 -0
- package/datatable/index.mjs.map +1 -0
- package/datatable/useDataTable.d.ts +237 -0
- package/datatable/useDataTable.props.d.ts +2 -0
- package/datatable/useDataTableRow.d.ts +30 -0
- package/datatable/useDataTableRow.props.d.ts +2 -0
- package/datatable/utils/compareValues.d.ts +20 -0
- package/datatable/utils/index.d.ts +1 -0
- package/datatable/utils/index.mjs +2 -0
- package/datatable/utils/index.mjs.map +1 -0
- package/dataview/index.d.ts +1 -0
- package/dataview/index.mjs +1 -1
- package/dataview/index.mjs.map +1 -1
- package/dataview/useDataView.d.ts +25 -1
- package/dataview/useDataView.props.d.ts +2 -2
- package/datepicker/index.d.ts +1 -0
- package/datepicker/index.mjs +1 -1
- package/datepicker/index.mjs.map +1 -1
- package/datepicker/useDatePicker.d.ts +2 -114
- package/datepicker/useDatePicker.props.d.ts +2 -2
- package/dialog/index.d.ts +1 -0
- package/dialog/index.mjs +1 -1
- package/dialog/index.mjs.map +1 -1
- package/dialog/useDialog.d.ts +274 -24
- package/dialog/useDialog.props.d.ts +2 -2
- package/divider/index.d.ts +1 -0
- package/divider/index.mjs +1 -1
- package/divider/index.mjs.map +1 -1
- package/divider/useDivider.d.ts +14 -1
- package/divider/useDivider.props.d.ts +2 -2
- package/dnd/index.d.ts +11 -0
- package/dnd/index.mjs +2 -0
- package/dnd/index.mjs.map +1 -0
- package/dnd/useDnd.d.ts +45 -0
- package/dnd/useDnd.props.d.ts +2 -0
- package/dnd/useDraggable.d.ts +14 -0
- package/dnd/useDraggable.props.d.ts +2 -0
- package/dnd/useDroppable.d.ts +11 -0
- package/dnd/useDroppable.props.d.ts +2 -0
- package/dnd/useSortable.d.ts +11 -0
- package/dnd/useSortable.props.d.ts +2 -0
- package/dnd/useSortableContainer.d.ts +24 -0
- package/dnd/useSortableContainer.props.d.ts +2 -0
- package/drawer/index.d.ts +1 -0
- package/drawer/index.mjs +1 -1
- package/drawer/index.mjs.map +1 -1
- package/drawer/useDrawer.d.ts +78 -16
- package/drawer/useDrawer.props.d.ts +2 -2
- package/fieldset/index.d.ts +1 -0
- package/fieldset/index.mjs +1 -1
- package/fieldset/index.mjs.map +1 -1
- package/fieldset/useFieldset.d.ts +80 -1
- package/fieldset/useFieldset.props.d.ts +2 -2
- package/fileupload/index.d.ts +1 -0
- package/fileupload/index.mjs +1 -1
- package/fileupload/index.mjs.map +1 -1
- package/fileupload/useFileUpload.d.ts +73 -4
- package/fileupload/useFileUpload.props.d.ts +2 -2
- package/floatlabel/index.d.ts +3 -0
- package/floatlabel/index.mjs +2 -0
- package/floatlabel/index.mjs.map +1 -0
- package/floatlabel/useFloatLabel.d.ts +6 -0
- package/floatlabel/useFloatLabel.props.d.ts +2 -0
- package/fluid/index.d.ts +1 -0
- package/fluid/index.mjs +1 -1
- package/fluid/index.mjs.map +1 -1
- package/fluid/useFluid.d.ts +6 -1
- package/fluid/useFluid.props.d.ts +2 -2
- package/focustrap/index.d.ts +1 -0
- package/focustrap/index.mjs +1 -1
- package/focustrap/index.mjs.map +1 -1
- package/focustrap/useFocusTrap.d.ts +16 -3
- package/focustrap/useFocusTrap.props.d.ts +2 -2
- package/gallery/index.d.ts +1 -0
- package/gallery/index.mjs +1 -1
- package/gallery/index.mjs.map +1 -1
- package/gallery/item/index.mjs +1 -1
- package/gallery/item/index.mjs.map +1 -1
- package/gallery/item/useGalleryItem.d.ts +17 -7
- package/gallery/item/useGalleryItem.props.d.ts +2 -2
- package/gallery/useGallery.d.ts +147 -6
- package/gallery/useGallery.props.d.ts +2 -2
- package/iconfield/index.d.ts +1 -0
- package/iconfield/index.mjs +1 -1
- package/iconfield/index.mjs.map +1 -1
- package/iconfield/useIconField.d.ts +6 -1
- package/iconfield/useIconField.props.d.ts +2 -2
- package/iftalabel/index.d.ts +3 -0
- package/iftalabel/index.mjs +2 -0
- package/iftalabel/index.mjs.map +1 -0
- package/iftalabel/useIftaLabel.d.ts +6 -0
- package/iftalabel/useIftaLabel.props.d.ts +2 -0
- package/inplace/index.d.ts +1 -0
- package/inplace/index.mjs +1 -1
- package/inplace/index.mjs.map +1 -1
- package/inplace/useInplace.d.ts +21 -2
- package/inplace/useInplace.props.d.ts +2 -2
- package/{colorpicker → inputcolor}/colorManager.d.ts +3 -2
- package/inputcolor/index.d.ts +4 -0
- package/inputcolor/index.mjs +2 -0
- package/inputcolor/index.mjs.map +1 -0
- package/inputcolor/useInputColor.d.ts +119 -0
- package/inputcolor/useInputColor.props.d.ts +2 -0
- package/inputgroup/index.d.ts +1 -0
- package/inputgroup/index.mjs +1 -1
- package/inputgroup/index.mjs.map +1 -1
- package/inputgroup/useInputGroup.d.ts +6 -1
- package/inputgroup/useInputGroup.props.d.ts +2 -2
- package/inputnumber/index.d.ts +1 -0
- package/inputnumber/index.mjs +1 -1
- package/inputnumber/index.mjs.map +1 -1
- package/inputnumber/useInputNumber.d.ts +55 -17
- package/inputnumber/useInputNumber.props.d.ts +2 -2
- package/inputotp/index.d.ts +1 -0
- package/inputotp/index.mjs +1 -1
- package/inputotp/index.mjs.map +1 -1
- package/inputotp/useInputOtp.d.ts +25 -6
- package/inputotp/useInputOtp.props.d.ts +2 -2
- package/inputpassword/index.d.ts +3 -0
- package/inputpassword/index.mjs +2 -0
- package/inputpassword/index.mjs.map +1 -0
- package/inputpassword/useInputPassword.d.ts +15 -0
- package/inputpassword/useInputPassword.props.d.ts +2 -0
- package/inputtags/index.d.ts +1 -0
- package/inputtags/index.mjs +1 -1
- package/inputtags/index.mjs.map +1 -1
- package/inputtags/useInputTags.d.ts +42 -12
- package/inputtags/useInputTags.props.d.ts +2 -2
- package/inputtext/index.d.ts +1 -0
- package/inputtext/index.mjs +1 -1
- package/inputtext/index.mjs.map +1 -1
- package/inputtext/useInputText.d.ts +8 -1
- package/inputtext/useInputText.props.d.ts +2 -2
- package/knob/index.d.ts +1 -0
- package/knob/index.mjs +1 -1
- package/knob/index.mjs.map +1 -1
- package/knob/useKnob.d.ts +51 -10
- package/knob/useKnob.props.d.ts +2 -2
- package/label/index.d.ts +1 -0
- package/label/index.mjs +1 -1
- package/label/index.mjs.map +1 -1
- package/label/useLabel.d.ts +6 -1
- package/label/useLabel.props.d.ts +2 -2
- package/listbox/index.d.ts +3 -0
- package/listbox/index.mjs +1 -1
- package/listbox/index.mjs.map +1 -1
- package/listbox/useListbox.d.ts +56 -18
- package/listbox/useListbox.props.d.ts +2 -2
- package/listbox/useListboxOption.d.ts +21 -0
- package/listbox/useListboxOption.props.d.ts +2 -0
- package/menu/checkboxitem/index.d.ts +2 -0
- package/menu/checkboxitem/index.mjs +2 -0
- package/menu/checkboxitem/index.mjs.map +1 -0
- package/menu/checkboxitem/useMenuCheckboxItem.d.ts +112 -0
- package/menu/checkboxitem/useMenuCheckboxItem.props.d.ts +2 -0
- package/menu/index.d.ts +1 -0
- package/menu/index.mjs +1 -1
- package/menu/index.mjs.map +1 -1
- package/menu/radioitem/index.d.ts +2 -0
- package/menu/radioitem/index.mjs +2 -0
- package/menu/radioitem/index.mjs.map +1 -0
- package/menu/radioitem/useMenuRadioItem.d.ts +106 -0
- package/menu/radioitem/useMenuRadioItem.props.d.ts +2 -0
- package/menu/submenu/index.d.ts +2 -0
- package/menu/submenu/index.mjs +2 -0
- package/menu/submenu/index.mjs.map +1 -0
- package/menu/submenu/useMenuSubmenu.d.ts +97 -0
- package/menu/submenu/useMenuSubmenu.props.d.ts +2 -0
- package/menu/useMenu.d.ts +215 -22
- package/menu/useMenu.props.d.ts +2 -2
- package/message/index.d.ts +1 -0
- package/message/index.mjs +1 -1
- package/message/index.mjs.map +1 -1
- package/message/useMessage.d.ts +13 -1
- package/message/useMessage.props.d.ts +2 -2
- package/metergroup/index.d.ts +1 -0
- package/metergroup/index.mjs +1 -1
- package/metergroup/index.mjs.map +1 -1
- package/metergroup/useMeterGroup.d.ts +36 -5
- package/metergroup/useMeterGroup.props.d.ts +2 -2
- package/navigationmenu/index.d.ts +3 -0
- package/navigationmenu/index.mjs +2 -0
- package/navigationmenu/index.mjs.map +1 -0
- package/navigationmenu/useNavigationMenu.d.ts +30 -0
- package/navigationmenu/useNavigationMenu.props.d.ts +2 -0
- package/orderlist/index.d.ts +3 -0
- package/orderlist/index.mjs +2 -0
- package/orderlist/index.mjs.map +1 -0
- package/orderlist/useOrderList.d.ts +73 -0
- package/orderlist/useOrderList.props.d.ts +2 -0
- package/organizationchart/index.d.ts +3 -0
- package/organizationchart/index.mjs +2 -0
- package/organizationchart/index.mjs.map +1 -0
- package/organizationchart/useOrganizationChart.d.ts +69 -0
- package/organizationchart/useOrganizationChart.props.d.ts +2 -0
- package/overlaybadge/index.d.ts +3 -0
- package/overlaybadge/index.mjs +2 -0
- package/overlaybadge/index.mjs.map +1 -0
- package/overlaybadge/useOverlayBadge.d.ts +1 -0
- package/overlaybadge/useOverlayBadge.props.d.ts +2 -0
- package/package.json +12 -15
- package/paginator/index.d.ts +1 -0
- package/paginator/index.mjs +1 -1
- package/paginator/index.mjs.map +1 -1
- package/paginator/usePaginator.d.ts +47 -1
- package/paginator/usePaginator.props.d.ts +2 -2
- package/panel/index.d.ts +1 -0
- package/panel/index.mjs +1 -1
- package/panel/index.mjs.map +1 -1
- package/panel/usePanel.d.ts +76 -8
- package/panel/usePanel.props.d.ts +2 -2
- package/picklist/index.d.ts +3 -0
- package/picklist/index.mjs +2 -0
- package/picklist/index.mjs.map +1 -0
- package/picklist/usePickList.d.ts +153 -0
- package/picklist/usePickList.props.d.ts +2 -0
- package/popover/index.d.ts +1 -0
- package/popover/index.mjs +1 -7
- package/popover/index.mjs.map +1 -1
- package/popover/usePopover.d.ts +65 -12
- package/popover/usePopover.props.d.ts +2 -2
- package/portal/index.d.ts +1 -0
- package/portal/index.mjs +1 -1
- package/portal/index.mjs.map +1 -1
- package/portal/usePortal.d.ts +4 -2
- package/portal/usePortal.props.d.ts +2 -2
- package/positioner/index.d.ts +3 -0
- package/positioner/index.mjs +2 -0
- package/positioner/index.mjs.map +1 -0
- package/positioner/usePositioner.anchor.d.ts +7 -0
- package/positioner/usePositioner.d.ts +11 -0
- package/positioner/usePositioner.fallback.d.ts +13 -0
- package/positioner/usePositioner.props.d.ts +2 -0
- package/positioner/usePositioner.utils.d.ts +21 -0
- package/progressbar/index.d.ts +1 -0
- package/progressbar/index.mjs +1 -1
- package/progressbar/index.mjs.map +1 -1
- package/progressbar/useProgressBar.d.ts +13 -1
- package/progressbar/useProgressBar.props.d.ts +2 -2
- package/progressspinner/index.d.ts +1 -0
- package/progressspinner/index.mjs +1 -1
- package/progressspinner/index.mjs.map +1 -1
- package/progressspinner/useProgressSpinner.d.ts +50 -1
- package/progressspinner/useProgressSpinner.props.d.ts +2 -2
- package/radiobutton/index.d.ts +1 -0
- package/radiobutton/index.mjs +1 -1
- package/radiobutton/index.mjs.map +1 -1
- package/radiobutton/useRadioButton.d.ts +41 -3
- package/radiobutton/useRadioButton.props.d.ts +2 -2
- package/radiobuttongroup/index.d.ts +3 -0
- package/radiobuttongroup/index.mjs +2 -0
- package/radiobuttongroup/index.mjs.map +1 -0
- package/radiobuttongroup/useRadioButtonGroup.d.ts +11 -0
- package/radiobuttongroup/useRadioButtonGroup.props.d.ts +2 -0
- package/rating/index.d.ts +3 -0
- package/rating/index.mjs +1 -1
- package/rating/index.mjs.map +1 -1
- package/rating/useRating.d.ts +46 -12
- package/rating/useRating.props.d.ts +2 -2
- package/rating/useRatingOption.d.ts +69 -0
- package/rating/useRatingOption.props.d.ts +2 -0
- package/scrollarea/index.d.ts +1 -0
- package/scrollarea/index.mjs +1 -1
- package/scrollarea/index.mjs.map +1 -1
- package/scrollarea/useScrollArea.d.ts +120 -15
- package/scrollarea/useScrollArea.props.d.ts +2 -2
- package/select/index.d.ts +3 -0
- package/select/index.mjs +2 -0
- package/select/index.mjs.map +1 -0
- package/select/useSelect.d.ts +190 -0
- package/select/useSelect.props.d.ts +2 -0
- package/select/useSelect.test.d.ts +1 -0
- package/sidebar/index.d.ts +7 -0
- package/sidebar/index.mjs +2 -0
- package/sidebar/index.mjs.map +1 -0
- package/sidebar/useSidebar.d.ts +117 -0
- package/sidebar/useSidebar.props.d.ts +2 -0
- package/sidebar/useSidebarLayout.d.ts +24 -0
- package/sidebar/useSidebarLayout.props.d.ts +2 -0
- package/sidebar/useSidebarMenuItem.d.ts +11 -0
- package/sidebar/useSidebarMenuItem.props.d.ts +2 -0
- package/skeleton/index.d.ts +1 -0
- package/skeleton/index.mjs +1 -1
- package/skeleton/index.mjs.map +1 -1
- package/skeleton/useSkeleton.d.ts +7 -1
- package/skeleton/useSkeleton.props.d.ts +2 -2
- package/slider/index.d.ts +1 -0
- package/slider/index.mjs +1 -1
- package/slider/index.mjs.map +1 -1
- package/slider/useSlider.d.ts +81 -48
- package/slider/useSlider.props.d.ts +2 -2
- package/speeddial/index.d.ts +1 -0
- package/speeddial/index.mjs +1 -1
- package/speeddial/index.mjs.map +1 -1
- package/speeddial/useSpeedDial.d.ts +89 -32
- package/speeddial/useSpeedDial.props.d.ts +2 -2
- package/splitter/index.d.ts +1 -0
- package/splitter/index.mjs +1 -1
- package/splitter/index.mjs.map +1 -1
- package/splitter/useSplitter.d.ts +57 -14
- package/splitter/useSplitter.props.d.ts +2 -2
- package/stepper/index.d.ts +1 -0
- package/stepper/index.mjs +1 -1
- package/stepper/index.mjs.map +1 -1
- package/stepper/useStepper.d.ts +47 -2
- package/stepper/useStepper.props.d.ts +2 -2
- package/styleclass/index.d.ts +1 -0
- package/styleclass/index.mjs +1 -1
- package/styleclass/index.mjs.map +1 -1
- package/styleclass/useStyleClass.d.ts +5 -1
- package/styleclass/useStyleClass.props.d.ts +2 -2
- package/tabs/index.d.ts +1 -0
- package/tabs/index.mjs +1 -1
- package/tabs/index.mjs.map +1 -1
- package/tabs/useTabs.d.ts +42 -3
- package/tabs/useTabs.props.d.ts +2 -2
- package/tag/index.d.ts +1 -0
- package/tag/index.mjs +1 -1
- package/tag/index.mjs.map +1 -1
- package/tag/useTag.d.ts +6 -1
- package/tag/useTag.props.d.ts +2 -2
- package/terminal/index.d.ts +1 -0
- package/terminal/index.mjs +1 -1
- package/terminal/index.mjs.map +1 -1
- package/terminal/useTerminal.d.ts +23 -2
- package/terminal/useTerminal.props.d.ts +2 -2
- package/textarea/index.d.ts +1 -0
- package/textarea/index.mjs +1 -1
- package/textarea/index.mjs.map +1 -1
- package/textarea/useTextarea.d.ts +9 -2
- package/textarea/useTextarea.props.d.ts +2 -2
- package/timeline/index.d.ts +1 -0
- package/timeline/index.mjs +1 -1
- package/timeline/index.mjs.map +1 -1
- package/timeline/useTimeline.d.ts +41 -1
- package/timeline/useTimeline.props.d.ts +2 -2
- package/toast/index.d.ts +1 -1
- package/toast/index.mjs +1 -1
- package/toast/index.mjs.map +1 -1
- package/toast/useToast.d.ts +85 -23
- package/toast/useToast.props.d.ts +2 -2
- package/toaster/ToastManager.d.ts +14 -0
- package/toaster/index.d.ts +4 -0
- package/toaster/index.mjs +2 -0
- package/toaster/index.mjs.map +1 -0
- package/toaster/useToaster.d.ts +50 -0
- package/toaster/useToaster.props.d.ts +2 -0
- package/togglebutton/index.d.ts +1 -0
- package/togglebutton/index.mjs +1 -1
- package/togglebutton/index.mjs.map +1 -1
- package/togglebutton/useToggleButton.d.ts +5 -3
- package/togglebutton/useToggleButton.props.d.ts +2 -2
- package/togglebuttongroup/index.d.ts +3 -0
- package/togglebuttongroup/index.mjs +2 -0
- package/togglebuttongroup/index.mjs.map +1 -0
- package/togglebuttongroup/useToggleButtonGroup.d.ts +17 -0
- package/togglebuttongroup/useToggleButtonGroup.props.d.ts +2 -0
- package/toggleswitch/index.d.ts +3 -0
- package/toggleswitch/index.mjs +2 -0
- package/toggleswitch/index.mjs.map +1 -0
- package/toggleswitch/useToggleSwitch.d.ts +48 -0
- package/toggleswitch/useToggleSwitch.props.d.ts +2 -0
- package/toolbar/index.d.ts +1 -0
- package/toolbar/index.mjs +1 -1
- package/toolbar/index.mjs.map +1 -1
- package/toolbar/useToolbar.d.ts +7 -1
- package/toolbar/useToolbar.props.d.ts +2 -2
- package/tooltip/index.d.ts +1 -0
- package/tooltip/index.mjs +1 -1
- package/tooltip/index.mjs.map +1 -1
- package/tooltip/useTooltip.d.ts +43 -24
- package/tooltip/useTooltip.props.d.ts +2 -2
- package/tooltipmanager/index.d.ts +2 -0
- package/tooltipmanager/index.mjs +2 -0
- package/tooltipmanager/index.mjs.map +1 -0
- package/tooltipmanager/useTooltipManager.d.ts +12 -0
- package/tooltipmanager/useTooltipManager.props.d.ts +2 -0
- package/tooltipmanager/useTooltipManager.test.d.ts +0 -0
- package/tree/TreeDragDropService.d.ts +13 -5
- package/tree/index.d.ts +7 -0
- package/tree/index.mjs +1 -1
- package/tree/index.mjs.map +1 -1
- package/tree/useTree.d.ts +96 -16
- package/tree/useTree.props.d.ts +2 -2
- package/tree/useTreeDragDrop.d.ts +24 -0
- package/tree/useTreeFlatten.d.ts +13 -0
- package/tree/useTreeKeyboard.d.ts +18 -0
- package/tree/useTreeNode.d.ts +45 -0
- package/tree/useTreeNode.props.d.ts +2 -0
- package/tree/useTreeSelection.d.ts +31 -0
- package/utils/itemKey.d.ts +10 -0
- package/LICENSE +0 -21
- package/colorpicker/index.d.ts +0 -3
- package/colorpicker/index.mjs +0 -2
- package/colorpicker/index.mjs.map +0 -1
- package/colorpicker/input/index.d.ts +0 -2
- package/colorpicker/input/index.mjs +0 -2
- package/colorpicker/input/index.mjs.map +0 -1
- package/colorpicker/input/useColorPickerInput.d.ts +0 -11
- package/colorpicker/input/useColorPickerInput.props.d.ts +0 -2
- package/colorpicker/slider/index.d.ts +0 -2
- package/colorpicker/slider/index.mjs +0 -2
- package/colorpicker/slider/index.mjs.map +0 -1
- package/colorpicker/slider/useColorPickerSlider.d.ts +0 -13
- package/colorpicker/slider/useColorPickerSlider.props.d.ts +0 -2
- package/colorpicker/useColorPicker.d.ts +0 -26
- package/colorpicker/useColorPicker.props.d.ts +0 -2
- package/commandmenu/index.d.ts +0 -2
- package/commandmenu/index.mjs +0 -2
- package/commandmenu/index.mjs.map +0 -1
- package/commandmenu/useCommandMenu.d.ts +0 -11
- package/commandmenu/useCommandMenu.props.d.ts +0 -2
- package/confirmdialog/index.d.ts +0 -2
- package/confirmdialog/index.mjs +0 -2
- package/confirmdialog/index.mjs.map +0 -1
- package/confirmdialog/useConfirmDialog.d.ts +0 -1
- package/confirmdialog/useConfirmDialog.props.d.ts +0 -2
- package/confirmpopup/index.d.ts +0 -2
- package/confirmpopup/index.mjs +0 -2
- package/confirmpopup/index.mjs.map +0 -1
- package/confirmpopup/useConfirmPopup.d.ts +0 -25
- package/confirmpopup/useConfirmPopup.props.d.ts +0 -2
- package/imagecompare/index.d.ts +0 -2
- package/imagecompare/index.mjs +0 -2
- package/imagecompare/index.mjs.map +0 -1
- package/imagecompare/useImageCompare.d.ts +0 -8
- package/imagecompare/useImageCompare.props.d.ts +0 -2
- package/menu/sub/index.d.ts +0 -2
- package/menu/sub/index.mjs +0 -2
- package/menu/sub/index.mjs.map +0 -1
- package/menu/sub/useMenuSub.d.ts +0 -19
- package/menu/sub/useMenuSub.props.d.ts +0 -2
- package/orgchart/index.d.ts +0 -2
- package/orgchart/index.mjs +0 -2
- package/orgchart/index.mjs.map +0 -1
- package/orgchart/useOrgChart.d.ts +0 -20
- package/orgchart/useOrgChart.props.d.ts +0 -2
- package/overlay/index.d.ts +0 -2
- package/overlay/index.mjs +0 -2
- package/overlay/index.mjs.map +0 -1
- package/overlay/useOverlay.d.ts +0 -16
- package/overlay/useOverlay.props.d.ts +0 -2
- package/password/index.d.ts +0 -2
- package/password/index.mjs +0 -2
- package/password/index.mjs.map +0 -1
- package/password/usePassword.d.ts +0 -35
- package/password/usePassword.props.d.ts +0 -2
- package/placer/index.d.ts +0 -2
- package/placer/index.mjs +0 -2
- package/placer/index.mjs.map +0 -1
- package/placer/usePlacer.d.ts +0 -12
- package/placer/usePlacer.props.d.ts +0 -2
- package/switch/index.d.ts +0 -2
- package/switch/index.mjs +0 -2
- package/switch/index.mjs.map +0 -1
- package/switch/useSwitch.d.ts +0 -7
- package/switch/useSwitch.props.d.ts +0 -2
- package/toast/item/index.css +0 -2
- package/toast/item/index.css.map +0 -1
- package/toast/item/index.d.ts +0 -2
- package/toast/item/index.mjs +0 -2
- package/toast/item/index.mjs.map +0 -1
- package/toast/item/useToastItem.d.ts +0 -25
- package/toast/item/useToastItem.props.d.ts +0 -2
- package/toast/toastStore.d.ts +0 -40
- package/tooltip/group/index.d.ts +0 -2
- package/tooltip/group/index.mjs +0 -2
- package/tooltip/group/index.mjs.map +0 -1
- package/tooltip/group/useTooltipGroup.d.ts +0 -9
- package/tooltip/group/useTooltipGroup.props.d.ts +0 -2
- /package/{colorpicker/input/useColorPickerInput.test.d.ts → autocomplete/useAutoComplete.test.d.ts} +0 -0
- /package/{colorpicker/slider/useColorPickerSlider.test.d.ts → checkboxgroup/useCheckboxGroup.test.d.ts} +0 -0
- /package/{colorpicker/useColorPicker.test.d.ts → collapsible/useCollapsible.test.d.ts} +0 -0
- /package/{commandmenu/useCommandMenu.test.d.ts → compare/useCompare.test.d.ts} +0 -0
- /package/{confirmdialog/useConfirmDialog.test.d.ts → floatlabel/useFloatLabel.test.d.ts} +0 -0
- /package/{confirmpopup/useConfirmPopup.test.d.ts → iftalabel/useIftaLabel.test.d.ts} +0 -0
- /package/{imagecompare/useImageCompare.test.d.ts → inputcolor/useInputColor.test.d.ts} +0 -0
- /package/{orgchart/useOrgChart.test.d.ts → inputpassword/useInputPassword.test.d.ts} +0 -0
- /package/{overlay/useOverlay.test.d.ts → navigationmenu/useNavigationMenu.test.d.ts} +0 -0
- /package/{password/usePassword.test.d.ts → organizationchart/useOrganizationChart.test.d.ts} +0 -0
- /package/{placer/usePlacer.test.d.ts → overlaybadge/useOverlayBadge.test.d.ts} +0 -0
- /package/{progressspinner/useProgressSpinner.test.d.ts → positioner/usePositioner.test.d.ts} +0 -0
- /package/{rating/useRating.test.d.ts → radiobuttongroup/useRadioButtonGroup.test.d.ts} +0 -0
- /package/{switch/useSwitch.test.d.ts → toaster/useToaster.test.d.ts} +0 -0
- /package/{toast/item/useToastItem.test.d.ts → togglebuttongroup/useToggleButtonGroup.test.d.ts} +0 -0
- /package/{tooltip/group/useTooltipGroup.test.d.ts → toggleswitch/useToggleSwitch.test.d.ts} +0 -0
|
@@ -0,0 +1,69 @@
|
|
|
1
|
+
import type { UseDataTableCellEditEvent, DataTableEditMode, UseDataTableEditingEvent, UseDataTableRowEditEvent, EditingKeys } from '@primereact/types/headless/datatable';
|
|
2
|
+
import * as React from 'react';
|
|
3
|
+
export interface UseDataTableEditingOptions {
|
|
4
|
+
editMode?: DataTableEditMode;
|
|
5
|
+
editingKeys?: EditingKeys;
|
|
6
|
+
defaultEditingKeys?: EditingKeys;
|
|
7
|
+
onEditingKeysChange?: (event: UseDataTableEditingEvent) => void;
|
|
8
|
+
onRowEditInit?: (event: UseDataTableRowEditEvent) => void;
|
|
9
|
+
onRowEditSave?: (event: UseDataTableRowEditEvent) => void;
|
|
10
|
+
onRowEditCancel?: (event: UseDataTableRowEditEvent) => void;
|
|
11
|
+
onCellEditInit?: (event: {
|
|
12
|
+
originalEvent: React.SyntheticEvent;
|
|
13
|
+
field: string;
|
|
14
|
+
rowIndex: number;
|
|
15
|
+
}) => void;
|
|
16
|
+
onCellEditComplete?: (event: UseDataTableCellEditEvent) => void;
|
|
17
|
+
onCellEditCancel?: (event: UseDataTableCellEditEvent) => void;
|
|
18
|
+
}
|
|
19
|
+
export declare function useDataTableEditing(options: UseDataTableEditingOptions): {
|
|
20
|
+
state: {
|
|
21
|
+
editingKeys: EditingKeys;
|
|
22
|
+
editingCell: {
|
|
23
|
+
rowIndex: number;
|
|
24
|
+
field: string;
|
|
25
|
+
rowKey?: string | number;
|
|
26
|
+
} | null;
|
|
27
|
+
};
|
|
28
|
+
exposes: {
|
|
29
|
+
isEditing: (key: string | number) => boolean;
|
|
30
|
+
startRowEdit: (event: React.SyntheticEvent, key: string | number, rowData?: Record<string, unknown>, rowIndex?: number) => void;
|
|
31
|
+
saveRowEdit: (event: React.SyntheticEvent, key: string | number, rowData?: Record<string, unknown>, newData?: Record<string, unknown>, rowIndex?: number) => void;
|
|
32
|
+
cancelRowEdit: (event: React.SyntheticEvent, key: string | number, rowData?: Record<string, unknown>, rowIndex?: number) => void;
|
|
33
|
+
startCellEdit: (event: React.SyntheticEvent, rowIndex: number, field: string, rowKey?: string | number) => void;
|
|
34
|
+
completeCellEdit: (event: UseDataTableCellEditEvent) => boolean;
|
|
35
|
+
cancelCellEdit: (event: React.SyntheticEvent, rowIndex: number, field: string) => void;
|
|
36
|
+
isCellEditing: (rowIndex: number, field: string, rowKey?: string | number) => boolean;
|
|
37
|
+
getCellEditorRootProps: (params: {
|
|
38
|
+
rowIndex: number;
|
|
39
|
+
field: string;
|
|
40
|
+
rowKey?: string | number;
|
|
41
|
+
isEditing: boolean;
|
|
42
|
+
}) => {
|
|
43
|
+
'data-editing'?: string | undefined;
|
|
44
|
+
'data-row-key'?: string | undefined;
|
|
45
|
+
'data-scope': string;
|
|
46
|
+
'data-part': string;
|
|
47
|
+
'data-row-index': string;
|
|
48
|
+
'data-field': string;
|
|
49
|
+
};
|
|
50
|
+
getRowEditorInitProps: () => {
|
|
51
|
+
'data-scope': string;
|
|
52
|
+
'data-part': string;
|
|
53
|
+
type: "button";
|
|
54
|
+
'aria-label': string;
|
|
55
|
+
};
|
|
56
|
+
getRowEditorSaveProps: () => {
|
|
57
|
+
'data-scope': string;
|
|
58
|
+
'data-part': string;
|
|
59
|
+
type: "button";
|
|
60
|
+
'aria-label': string;
|
|
61
|
+
};
|
|
62
|
+
getRowEditorCancelProps: () => {
|
|
63
|
+
'data-scope': string;
|
|
64
|
+
'data-part': string;
|
|
65
|
+
type: "button";
|
|
66
|
+
'aria-label': string;
|
|
67
|
+
};
|
|
68
|
+
};
|
|
69
|
+
};
|
|
@@ -0,0 +1,32 @@
|
|
|
1
|
+
import type { UseDataTableExpansionEvent, ExpandedKeys } from '@primereact/types/headless/datatable';
|
|
2
|
+
import * as React from 'react';
|
|
3
|
+
export interface UseDataTableExpansionOptions {
|
|
4
|
+
expandedKeys?: ExpandedKeys;
|
|
5
|
+
defaultExpandedKeys?: ExpandedKeys;
|
|
6
|
+
onExpandedChange?: (event: UseDataTableExpansionEvent) => void;
|
|
7
|
+
}
|
|
8
|
+
export declare function useDataTableExpansion(options: UseDataTableExpansionOptions): {
|
|
9
|
+
state: {
|
|
10
|
+
expandedKeys: ExpandedKeys;
|
|
11
|
+
};
|
|
12
|
+
exposes: {
|
|
13
|
+
isExpanded: (key: string | number) => boolean;
|
|
14
|
+
toggleExpansion: (event: React.SyntheticEvent, key: string | number) => void;
|
|
15
|
+
getRowToggleProps: (rowKey: string | number | undefined, item?: Record<string, unknown> | null) => {
|
|
16
|
+
isSpacer: true;
|
|
17
|
+
spacerProps: {
|
|
18
|
+
'data-scope': string;
|
|
19
|
+
'data-part': string;
|
|
20
|
+
'data-tree-level': number;
|
|
21
|
+
style: React.CSSProperties;
|
|
22
|
+
};
|
|
23
|
+
rootProps?: undefined;
|
|
24
|
+
isExpanded?: undefined;
|
|
25
|
+
} | {
|
|
26
|
+
isSpacer: false;
|
|
27
|
+
rootProps: Record<string, unknown>;
|
|
28
|
+
isExpanded: boolean;
|
|
29
|
+
spacerProps?: undefined;
|
|
30
|
+
};
|
|
31
|
+
};
|
|
32
|
+
};
|
|
@@ -0,0 +1,43 @@
|
|
|
1
|
+
export interface DataTableExportOptions {
|
|
2
|
+
/**
|
|
3
|
+
* Only export selected rows.
|
|
4
|
+
*/
|
|
5
|
+
selectionOnly?: boolean;
|
|
6
|
+
/**
|
|
7
|
+
* Fields to export. If not provided, all fields from first row are used.
|
|
8
|
+
*/
|
|
9
|
+
fields?: string[];
|
|
10
|
+
/**
|
|
11
|
+
* Column headers for export (maps field → header label).
|
|
12
|
+
*/
|
|
13
|
+
headers?: Record<string, string>;
|
|
14
|
+
/**
|
|
15
|
+
* CSV separator character.
|
|
16
|
+
* @default ','
|
|
17
|
+
*/
|
|
18
|
+
separator?: string;
|
|
19
|
+
/**
|
|
20
|
+
* File name for download (without extension).
|
|
21
|
+
* @default 'download'
|
|
22
|
+
*/
|
|
23
|
+
fileName?: string;
|
|
24
|
+
/**
|
|
25
|
+
* Custom export function. When provided, it is called instead of the default CSV download.
|
|
26
|
+
* Receives the resolved data array and fields list.
|
|
27
|
+
*/
|
|
28
|
+
exportFunction?: (options: {
|
|
29
|
+
data: Record<string, unknown>[];
|
|
30
|
+
fields: string[];
|
|
31
|
+
}) => void;
|
|
32
|
+
}
|
|
33
|
+
export interface UseDataTableExportOptions {
|
|
34
|
+
data?: Record<string, unknown>[];
|
|
35
|
+
dataKey?: string | null;
|
|
36
|
+
selectedKeys?: Record<string, boolean>;
|
|
37
|
+
}
|
|
38
|
+
export declare function useDataTableExport(options: UseDataTableExportOptions): {
|
|
39
|
+
state: Readonly<{}>;
|
|
40
|
+
exposes: {
|
|
41
|
+
exportCSV: (exportOptions?: DataTableExportOptions) => void;
|
|
42
|
+
};
|
|
43
|
+
};
|
|
@@ -0,0 +1,95 @@
|
|
|
1
|
+
import * as React from 'react';
|
|
2
|
+
/**
|
|
3
|
+
* Filter match mode types supported by DataTable.
|
|
4
|
+
*/
|
|
5
|
+
export declare const FilterMatchMode: {
|
|
6
|
+
readonly Contains: "contains";
|
|
7
|
+
readonly NotContains: "notContains";
|
|
8
|
+
readonly StartsWith: "startsWith";
|
|
9
|
+
readonly EndsWith: "endsWith";
|
|
10
|
+
readonly Equals: "equals";
|
|
11
|
+
readonly NotEquals: "notEquals";
|
|
12
|
+
readonly In: "in";
|
|
13
|
+
readonly Between: "between";
|
|
14
|
+
readonly Lt: "lt";
|
|
15
|
+
readonly Lte: "lte";
|
|
16
|
+
readonly Gt: "gt";
|
|
17
|
+
readonly Gte: "gte";
|
|
18
|
+
readonly DateIs: "dateIs";
|
|
19
|
+
readonly DateIsNot: "dateIsNot";
|
|
20
|
+
readonly DateBefore: "dateBefore";
|
|
21
|
+
readonly DateAfter: "dateAfter";
|
|
22
|
+
readonly Custom: "custom";
|
|
23
|
+
};
|
|
24
|
+
export type FilterMatchMode = (typeof FilterMatchMode)[keyof typeof FilterMatchMode];
|
|
25
|
+
/**
|
|
26
|
+
* Filter operator types.
|
|
27
|
+
*/
|
|
28
|
+
export declare const FilterOperator: {
|
|
29
|
+
readonly And: "and";
|
|
30
|
+
readonly Or: "or";
|
|
31
|
+
};
|
|
32
|
+
export type FilterOperator = (typeof FilterOperator)[keyof typeof FilterOperator];
|
|
33
|
+
/**
|
|
34
|
+
* Defines filter metadata for a single column constraint.
|
|
35
|
+
*/
|
|
36
|
+
export interface FilterConstraint {
|
|
37
|
+
value: unknown;
|
|
38
|
+
matchMode: FilterMatchMode;
|
|
39
|
+
}
|
|
40
|
+
/**
|
|
41
|
+
* Defines filter metadata for a column (single or multiple constraints).
|
|
42
|
+
*/
|
|
43
|
+
export interface ColumnFilterMeta {
|
|
44
|
+
value?: unknown;
|
|
45
|
+
matchMode?: FilterMatchMode;
|
|
46
|
+
constraints?: FilterConstraint[];
|
|
47
|
+
operator?: 'and' | 'or';
|
|
48
|
+
}
|
|
49
|
+
/**
|
|
50
|
+
* Defines the complete filter metadata map.
|
|
51
|
+
*/
|
|
52
|
+
export type DataTableFilterMeta = Record<string, ColumnFilterMeta | unknown>;
|
|
53
|
+
/**
|
|
54
|
+
* Event fired when filters change.
|
|
55
|
+
*/
|
|
56
|
+
export interface UseDataTableFilterEvent {
|
|
57
|
+
originalEvent: React.SyntheticEvent;
|
|
58
|
+
filters: DataTableFilterMeta;
|
|
59
|
+
}
|
|
60
|
+
export interface UseDataTableFilterOptions {
|
|
61
|
+
data?: Record<string, unknown>[];
|
|
62
|
+
lazy?: boolean;
|
|
63
|
+
filters?: DataTableFilterMeta;
|
|
64
|
+
defaultFilters?: DataTableFilterMeta;
|
|
65
|
+
globalFilter?: string | null;
|
|
66
|
+
globalFilterFields?: string[];
|
|
67
|
+
filterDelay?: number;
|
|
68
|
+
onFilter?: (event: UseDataTableFilterEvent) => void;
|
|
69
|
+
}
|
|
70
|
+
export declare function useDataTableFilter(options: UseDataTableFilterOptions): {
|
|
71
|
+
filteredData: Record<string, unknown>[];
|
|
72
|
+
state: {
|
|
73
|
+
filters: DataTableFilterMeta;
|
|
74
|
+
globalFilter: string | null;
|
|
75
|
+
};
|
|
76
|
+
exposes: {
|
|
77
|
+
setFieldFilter: (event: React.SyntheticEvent, field: string, meta: ColumnFilterMeta) => void;
|
|
78
|
+
clearFieldFilter: (event: React.SyntheticEvent, field: string) => void;
|
|
79
|
+
clearAllFilters: (event: React.SyntheticEvent) => void;
|
|
80
|
+
addConstraint: (event: React.SyntheticEvent, field: string, defaultMatchMode?: FilterMatchMode) => void;
|
|
81
|
+
removeConstraint: (event: React.SyntheticEvent, field: string, index: number) => void;
|
|
82
|
+
setOperator: (event: React.SyntheticEvent, field: string, operator: "and" | "or") => void;
|
|
83
|
+
setConstraintValue: (event: React.SyntheticEvent, field: string, index: number, value: unknown, matchMode?: FilterMatchMode) => void;
|
|
84
|
+
setConstraintMatchMode: (event: React.SyntheticEvent, field: string, index: number, matchMode: FilterMatchMode) => void;
|
|
85
|
+
hasFilterValue: (field: string) => boolean;
|
|
86
|
+
isFiltered: () => boolean;
|
|
87
|
+
getFieldFilterMeta: (field: string) => ColumnFilterMeta;
|
|
88
|
+
getFilterRootProps: (field: string, display?: "row" | "menu") => {
|
|
89
|
+
'data-active'?: string | undefined;
|
|
90
|
+
'data-scope': string;
|
|
91
|
+
'data-part': string;
|
|
92
|
+
'data-display': "menu" | "row";
|
|
93
|
+
};
|
|
94
|
+
};
|
|
95
|
+
};
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
import type { RowGroupMeta } from '@primereact/types/headless/datatable';
|
|
2
|
+
export interface UseDataTableGroupingOptions {
|
|
3
|
+
data: Record<string, unknown>[];
|
|
4
|
+
groupField?: string;
|
|
5
|
+
}
|
|
6
|
+
export declare function useDataTableGrouping(options: UseDataTableGroupingOptions): {
|
|
7
|
+
state: {
|
|
8
|
+
groupMetaMap: Map<number, RowGroupMeta> | undefined;
|
|
9
|
+
};
|
|
10
|
+
exposes: {};
|
|
11
|
+
};
|
|
@@ -0,0 +1,23 @@
|
|
|
1
|
+
import type { ExpandedKeys, SelectionKeys } from '@primereact/types/headless/datatable';
|
|
2
|
+
import * as React from 'react';
|
|
3
|
+
export interface UseDataTableKeyboardOptions {
|
|
4
|
+
data: Record<string, unknown>[];
|
|
5
|
+
dataKey?: string | null;
|
|
6
|
+
treeMode?: boolean;
|
|
7
|
+
selectionMode?: 'single' | 'multiple' | null;
|
|
8
|
+
selectedKeys?: SelectionKeys;
|
|
9
|
+
expandedKeys?: ExpandedKeys;
|
|
10
|
+
onToggleExpansion?: (event: React.SyntheticEvent, key: string | number) => void;
|
|
11
|
+
onToggleSelection?: (event: React.SyntheticEvent, key: string | number, mode: 'checkbox' | 'radio' | 'single') => void;
|
|
12
|
+
getRowKey?: (item: Record<string, unknown>, index: number) => string | number;
|
|
13
|
+
}
|
|
14
|
+
export declare function useDataTableKeyboard(options: UseDataTableKeyboardOptions): {
|
|
15
|
+
state: {
|
|
16
|
+
focusedRowIndex: number;
|
|
17
|
+
};
|
|
18
|
+
exposes: {
|
|
19
|
+
getRowTabIndex: (index: number) => number;
|
|
20
|
+
onRowKeyDown: (event: React.KeyboardEvent<HTMLTableRowElement>, index: number) => void;
|
|
21
|
+
focusRow: (tbody: HTMLElement | null, index: number) => void;
|
|
22
|
+
};
|
|
23
|
+
};
|
|
@@ -0,0 +1,32 @@
|
|
|
1
|
+
import type { UseDataTablePageEvent } from '@primereact/types/headless/datatable';
|
|
2
|
+
import * as React from 'react';
|
|
3
|
+
export interface UseDataTablePaginationOptions {
|
|
4
|
+
data: Record<string, unknown>[];
|
|
5
|
+
lazy?: boolean;
|
|
6
|
+
totalRecords?: number;
|
|
7
|
+
paginator?: boolean;
|
|
8
|
+
page?: number;
|
|
9
|
+
defaultPage?: number;
|
|
10
|
+
rows?: number;
|
|
11
|
+
defaultRows?: number;
|
|
12
|
+
onPageChange?: (event: UseDataTablePageEvent) => void;
|
|
13
|
+
}
|
|
14
|
+
export declare function useDataTablePagination(options: UseDataTablePaginationOptions): {
|
|
15
|
+
paginatedData: Record<string, unknown>[];
|
|
16
|
+
state: {
|
|
17
|
+
page: number;
|
|
18
|
+
rows: number;
|
|
19
|
+
first: number;
|
|
20
|
+
pageCount: number;
|
|
21
|
+
totalRecords: number;
|
|
22
|
+
};
|
|
23
|
+
exposes: {
|
|
24
|
+
page: number;
|
|
25
|
+
rows: number;
|
|
26
|
+
first: number;
|
|
27
|
+
pageCount: number;
|
|
28
|
+
totalRecords: number;
|
|
29
|
+
onPageChange: (event: React.SyntheticEvent, newPage: number) => void;
|
|
30
|
+
onRowsChange: (event: React.SyntheticEvent, newRows: number) => void;
|
|
31
|
+
};
|
|
32
|
+
};
|
|
@@ -0,0 +1,42 @@
|
|
|
1
|
+
import * as React from 'react';
|
|
2
|
+
export interface UseDataTableRowReorderEvent {
|
|
3
|
+
/**
|
|
4
|
+
* The original browser event.
|
|
5
|
+
*/
|
|
6
|
+
originalEvent: DragEvent;
|
|
7
|
+
/**
|
|
8
|
+
* Index of the row being dragged (within the current page / processed slice).
|
|
9
|
+
*/
|
|
10
|
+
dragIndex: number;
|
|
11
|
+
/**
|
|
12
|
+
* Adjusted index where the row is dropped.
|
|
13
|
+
*/
|
|
14
|
+
dropIndex: number;
|
|
15
|
+
/**
|
|
16
|
+
* The reordered data array.
|
|
17
|
+
*/
|
|
18
|
+
value: Record<string, unknown>[];
|
|
19
|
+
}
|
|
20
|
+
export interface UseDataTableRowReorderOptions {
|
|
21
|
+
data?: Record<string, unknown>[];
|
|
22
|
+
reorderableRows?: boolean;
|
|
23
|
+
onRowReorder?: (event: UseDataTableRowReorderEvent) => void;
|
|
24
|
+
}
|
|
25
|
+
export declare function useDataTableRowReorder(options: UseDataTableRowReorderOptions): {
|
|
26
|
+
state: Readonly<{}>;
|
|
27
|
+
exposes: {
|
|
28
|
+
onDragStart: (event: React.DragEvent, rowIndex: number) => void;
|
|
29
|
+
onDragOver: (event: React.DragEvent, rowIndex: number) => void;
|
|
30
|
+
onDragEnter: (event: React.DragEvent, rowIndex: number) => void;
|
|
31
|
+
onDragLeave: (event: React.DragEvent) => void;
|
|
32
|
+
onDrop: (event: React.DragEvent) => void;
|
|
33
|
+
onDragEnd: () => void;
|
|
34
|
+
getRowReorderHandleProps: () => {
|
|
35
|
+
'data-scope': string;
|
|
36
|
+
'data-part': string;
|
|
37
|
+
style: React.CSSProperties;
|
|
38
|
+
onPointerDown: (event: React.PointerEvent) => void;
|
|
39
|
+
onPointerUp: (event: React.PointerEvent) => void;
|
|
40
|
+
};
|
|
41
|
+
};
|
|
42
|
+
};
|
|
@@ -0,0 +1,28 @@
|
|
|
1
|
+
import type { UseDataTableSelectionEvent, SelectionKeys } from '@primereact/types/headless/datatable';
|
|
2
|
+
import * as React from 'react';
|
|
3
|
+
export interface UseDataTableSelectionOptions {
|
|
4
|
+
data: Record<string, unknown>[];
|
|
5
|
+
rawTreeData?: Record<string, unknown>[];
|
|
6
|
+
treeMode?: boolean;
|
|
7
|
+
dataKey?: string | null;
|
|
8
|
+
selectionMode?: 'single' | 'multiple' | null;
|
|
9
|
+
metaKeySelection?: boolean;
|
|
10
|
+
selectedKeys?: SelectionKeys;
|
|
11
|
+
defaultSelectedKeys?: SelectionKeys;
|
|
12
|
+
onSelectionChange?: (event: UseDataTableSelectionEvent) => void;
|
|
13
|
+
}
|
|
14
|
+
export declare function useDataTableSelection(options: UseDataTableSelectionOptions): {
|
|
15
|
+
getRowKey: (item: Record<string, unknown>, index: number) => string | number;
|
|
16
|
+
state: {
|
|
17
|
+
selectedKeys: SelectionKeys;
|
|
18
|
+
};
|
|
19
|
+
exposes: {
|
|
20
|
+
isSelected: (key: string | number) => boolean;
|
|
21
|
+
isPartiallySelected: (key: string | number) => boolean;
|
|
22
|
+
toggleSelection: (event: React.SyntheticEvent, key: string | number, mode: "checkbox" | "radio" | "single") => void;
|
|
23
|
+
toggleAll: (event: React.SyntheticEvent) => void;
|
|
24
|
+
isAllSelected: () => boolean;
|
|
25
|
+
isSomeSelected: () => boolean;
|
|
26
|
+
onRowClick: (event: React.MouseEvent, key: string | number) => void;
|
|
27
|
+
};
|
|
28
|
+
};
|
|
@@ -0,0 +1,51 @@
|
|
|
1
|
+
import type { UseDataTableSortEvent, SortMeta, SortOrder } from '@primereact/types/headless/datatable';
|
|
2
|
+
import * as React from 'react';
|
|
3
|
+
export interface UseDataTableSortOptions {
|
|
4
|
+
data: Record<string, unknown>[];
|
|
5
|
+
lazy?: boolean;
|
|
6
|
+
sortField?: string;
|
|
7
|
+
sortOrder?: SortOrder;
|
|
8
|
+
defaultSortField?: string;
|
|
9
|
+
defaultSortOrder?: SortOrder;
|
|
10
|
+
multiSortMeta?: SortMeta[];
|
|
11
|
+
defaultMultiSortMeta?: SortMeta[];
|
|
12
|
+
removableSort?: boolean;
|
|
13
|
+
nullSortOrder?: number;
|
|
14
|
+
onSortChange?: (event: UseDataTableSortEvent) => void;
|
|
15
|
+
}
|
|
16
|
+
export declare function useDataTableSort(options: UseDataTableSortOptions): {
|
|
17
|
+
sortedData: Record<string, unknown>[];
|
|
18
|
+
state: {
|
|
19
|
+
sortField: string | undefined;
|
|
20
|
+
sortOrder: SortOrder | undefined;
|
|
21
|
+
multiSortMeta: SortMeta[] | undefined;
|
|
22
|
+
};
|
|
23
|
+
exposes: {
|
|
24
|
+
onSort: (event: React.SyntheticEvent, field: string, multiSort?: boolean) => void;
|
|
25
|
+
isSorted: (field: string) => boolean;
|
|
26
|
+
getSortOrder: (field: string) => SortOrder;
|
|
27
|
+
getSortIndex: (field: string) => number;
|
|
28
|
+
getSortProps: (field: string) => {
|
|
29
|
+
role: "button";
|
|
30
|
+
tabIndex: number;
|
|
31
|
+
'aria-label': string;
|
|
32
|
+
'aria-sort': "none" | "ascending" | "descending";
|
|
33
|
+
onClick: (event: React.MouseEvent | React.KeyboardEvent) => void;
|
|
34
|
+
onKeyDown: (event: React.KeyboardEvent) => void;
|
|
35
|
+
'data-sorted': string;
|
|
36
|
+
'data-sort-order': string;
|
|
37
|
+
'data-scope': string;
|
|
38
|
+
'data-part': string;
|
|
39
|
+
} | {
|
|
40
|
+
role: "button";
|
|
41
|
+
tabIndex: number;
|
|
42
|
+
'aria-label': string;
|
|
43
|
+
'aria-sort': "none" | "ascending" | "descending";
|
|
44
|
+
onClick: (event: React.MouseEvent | React.KeyboardEvent) => void;
|
|
45
|
+
onKeyDown: (event: React.KeyboardEvent) => void;
|
|
46
|
+
'data-unsorted': string;
|
|
47
|
+
'data-scope': string;
|
|
48
|
+
'data-part': string;
|
|
49
|
+
};
|
|
50
|
+
};
|
|
51
|
+
};
|
|
@@ -0,0 +1,31 @@
|
|
|
1
|
+
import type { ExpandedKeys, SortMeta, SortOrder, TreeNode } from '@primereact/types/headless/datatable';
|
|
2
|
+
import type { DataTableFilterMeta } from './useDataTableFilter';
|
|
3
|
+
export type { TreeNode };
|
|
4
|
+
export interface UseDataTableTreeOptions {
|
|
5
|
+
data: Record<string, unknown>[];
|
|
6
|
+
treeMode?: boolean;
|
|
7
|
+
expandedKeys: ExpandedKeys;
|
|
8
|
+
sortField?: string;
|
|
9
|
+
sortOrder?: SortOrder;
|
|
10
|
+
multiSortMeta?: SortMeta[];
|
|
11
|
+
filters?: DataTableFilterMeta;
|
|
12
|
+
globalFilter?: string | null;
|
|
13
|
+
globalFilterFields?: string[];
|
|
14
|
+
paginator?: boolean;
|
|
15
|
+
page?: number;
|
|
16
|
+
rows?: number;
|
|
17
|
+
}
|
|
18
|
+
/**
|
|
19
|
+
* Recursively filters tree nodes.
|
|
20
|
+
* - If a node matches, include it with ALL its children (lenient mode).
|
|
21
|
+
* - If a node doesn't match but a descendant does, include the node with filtered children.
|
|
22
|
+
* - If neither node nor any descendant matches, exclude.
|
|
23
|
+
*/
|
|
24
|
+
export declare function filterTreeNodes(nodes: TreeNode[], filters: DataTableFilterMeta, globalFilter: string | null, globalFilterFields: string[], depth?: number): TreeNode[];
|
|
25
|
+
export declare function hasActiveFilters(filters: DataTableFilterMeta, globalFilter: string | null): boolean;
|
|
26
|
+
export declare function useDataTableTree(options: UseDataTableTreeOptions): {
|
|
27
|
+
flattenedData: Record<string, unknown>[];
|
|
28
|
+
totalRootNodes: number;
|
|
29
|
+
state: {};
|
|
30
|
+
exposes: {};
|
|
31
|
+
};
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
export * from './useDataTable';
|
|
2
|
+
export * from './useDataTable.props';
|
|
3
|
+
export * from './useDataTableRow';
|
|
4
|
+
export * from './useDataTableRow.props';
|
|
5
|
+
export { FilterMatchMode, FilterOperator } from './features/useDataTableFilter';
|
|
6
|
+
export type { FilterMatchMode as FilterMatchModeType, FilterOperator as FilterOperatorType, DataTableFilterMeta, ColumnFilterMeta, FilterConstraint, UseDataTableFilterEvent } from './features/useDataTableFilter';
|
|
7
|
+
export type * from '@primereact/types/headless/datatable';
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
var nt=Object.defineProperty,rt=Object.defineProperties;var at=Object.getOwnPropertyDescriptors;var xe=Object.getOwnPropertySymbols;var ot=Object.prototype.hasOwnProperty,lt=Object.prototype.propertyIsEnumerable;var Fe=(e,t,n)=>t in e?nt(e,t,{enumerable:!0,configurable:!0,writable:!0,value:n}):e[t]=n,k=(e,t)=>{for(var n in t||(t={}))ot.call(t,n)&&Fe(e,n,t[n]);if(xe)for(var n of xe(t))lt.call(t,n)&&Fe(e,n,t[n]);return e},V=(e,t)=>rt(e,at(t));import{withHeadless as St}from"@primereact/core/headless";import*as ae from"react";import*as j from"react";var st=Object.freeze({});function Ke(e){let{reorderableColumns:t=!1}=e,n=j.useRef(-1),r=j.useRef(null),s=j.useRef(-1),o=j.useRef(0),l=j.useRef(null),a=j.useRef(null),d=j.useRef(null),T=j.useRef(new Map),b=j.useRef(-1),g=j.useRef(null),m=j.useCallback((h,v)=>(T.current.set(h,v),()=>{T.current.delete(h),b.current===h&&(b.current=-1,g.current=null)}),[]),S=j.useCallback((h,v)=>{var K,O;let D=b.current,x=g.current;D===h&&x===v||(D!==-1&&D!==h&&((K=T.current.get(D))==null||K(null)),(O=T.current.get(h))==null||O({side:v}),b.current=h,g.current=v)},[]),p=j.useCallback(()=>{var v;let h=b.current;h!==-1&&((v=T.current.get(h))==null||v(null),b.current=-1,g.current=null)},[]),i=j.useCallback((h,v)=>{t&&(n.current=v,r.current=h.currentTarget,h.dataTransfer.effectAllowed="move",h.dataTransfer.setData("text/plain",String(v)))},[t]),u=j.useCallback((h,v)=>{if(!t||n.current===-1||n.current===v)return;h.preventDefault(),h.dataTransfer.dropEffect="move";let x=h.currentTarget.getBoundingClientRect(),K=h.clientX>x.left+x.width/2?"end":"start";o.current=K==="end"?1:-1,s.current=v,S(v,K);let O=l.current,N=a.current,_=d.current;if(O&&N&&_){let W=_.getBoundingClientRect(),Q=O.offsetHeight,X=O.offsetWidth,z=x.left-W.left,E=K==="end"?z+x.width-Math.ceil(X/2):z-Math.ceil(X/2);O.style.top=x.top-W.top-Q+1+"px",O.style.left=E+"px",N.style.top=x.top-W.top+x.height+"px",N.style.left=E+"px",O.style.display="block",N.style.display="block"}},[t,S]),R=j.useCallback((h,v)=>{!t||n.current===-1||(h.preventDefault(),s.current=v)},[t]),F=j.useCallback(()=>{l.current&&(l.current.style.display="none"),a.current&&(a.current.style.display="none")},[]),P=j.useCallback(h=>{},[t]),I=j.useCallback((h,v)=>{var N;if(!t||n.current===-1)return;h.preventDefault();let D=n.current,x=v,K=o.current,O=D!==x;O&&(x-D===1&&K===-1||x-D===-1&&K===1)&&(O=!1),O&&(x<D&&K===1&&x++,x>D&&K===-1&&x--,(N=e.onColumnReorder)==null||N.call(e,{originalEvent:h.nativeEvent,dragIndex:D,dropIndex:x})),F(),p(),n.current=-1,s.current=-1,o.current=0,r.current=null},[t,e.onColumnReorder,p,F]),y=j.useCallback(h=>{t&&(F(),p(),n.current=-1,s.current=-1,o.current=0,r.current=null)},[t,p,F]),M=j.useCallback(()=>({"data-scope":"datatable","data-part":"column-reorder",style:{cursor:"grab",userSelect:"none"}}),[]),w=j.useCallback(()=>({"data-scope":"datatable","data-part":"column-reorder-indicator-up",ref:h=>{l.current=h}}),[]),c=j.useCallback(()=>({"data-scope":"datatable","data-part":"column-reorder-indicator-down",ref:h=>{a.current=h}}),[]),C=j.useCallback(h=>{d.current=h},[]),f=j.useMemo(()=>({onDragStart:i,onDragOver:u,onDragEnter:R,onDragLeave:P,onDrop:I,onDragEnd:y,registerDropTarget:m,getColumnReorderHandleProps:M,getColumnReorderIndicatorUpProps:w,getColumnReorderIndicatorDownProps:c}),[i,u,R,P,I,y,m,M,w,c]);return{state:st,exposes:f,registerRoot:C}}import*as J from"react";var it=Object.freeze({}),ue=15;function Le(e){let{resizableColumns:t=!1,columnResizeMode:n="fit"}=e,r=J.useRef(null),s=J.useRef(null),o=J.useCallback(i=>{s.current=i},[]),l=J.useRef(null),a=J.useCallback((i,u)=>{if(typeof document=="undefined")return;if(!l.current){let P=document.createElement("style");P.setAttribute("data-primereact-datatable-resize",""),document.head.appendChild(P),l.current=P}let R=i.getAttribute("data-resize-id");R||(R=`dt-resize-${Math.random().toString(36).slice(2,9)}`,i.setAttribute("data-resize-id",R));let F=u.map((P,I)=>{let y=I+1,M=`table[data-resize-id="${R}"]`;return`
|
|
2
|
+
${M} > thead > tr > th:nth-child(${y}),
|
|
3
|
+
${M} > tbody > tr > td:nth-child(${y}),
|
|
4
|
+
${M} > tfoot > tr > td:nth-child(${y}) {
|
|
5
|
+
width: ${P}px !important;
|
|
6
|
+
max-width: ${P}px !important;
|
|
7
|
+
}
|
|
8
|
+
`}).join(`
|
|
9
|
+
`);l.current.innerHTML=F},[]);J.useEffect(()=>()=>{var i;(i=l.current)==null||i.remove(),l.current=null},[]);let d=J.useRef(n);d.current=n;let T=J.useRef(e.onColumnResizeEnd);T.current=e.onColumnResizeEnd;let b=J.useCallback(()=>{let i=r.current;i&&(i.resizer.removeEventListener("pointermove",i.onMove),i.resizer.removeEventListener("pointerup",i.onEnd),i.resizer.removeEventListener("pointercancel",i.onEnd),i.resizer.hasPointerCapture(i.pointerId)&&i.resizer.releasePointerCapture(i.pointerId),s.current&&(s.current.style.display="none",s.current.style.willChange=""),document.body.style.removeProperty("cursor"),document.body.style.removeProperty("user-select"),r.current=null)},[]),g=J.useCallback((i,u,R)=>{let F=i.headerCells.map((P,I)=>{var y;return(y=u[I])!=null?y:P.offsetWidth});if(R!==void 0)i.table.style.width=`${R}px`,i.table.style.minWidth=`${R}px`;else{let P=i.initialTableWidth,I=F.reduce((M,w)=>M+w,0),y=P-I;if(Math.abs(y)>.01){let M=F.findIndex((w,c)=>u[c]===void 0);M>=0&&(F[M]+=y)}}a(i.table,F)},[a]),m=J.useCallback((i,u,R)=>{var h,v,D;if(!t||i.pointerType==="mouse"&&i.button!==0)return;let F=R.closest("table");if(!F)return;let P=(h=F.closest('[data-part="table-container"]'))!=null?h:F.parentElement;if(!P)return;let I=i.currentTarget,y=Array.from(F.querySelectorAll("thead th")),M=(v=y[u+1])!=null?v:null,w=P.getBoundingClientRect(),c=s.current;if(c){let x=i.clientX-w.left+P.scrollLeft;c.style.top="0px",c.style.left="0px",c.style.height=`${P.clientHeight}px`,c.style.transform=`translateX(${x}px)`,c.style.willChange="transform",c.style.display="block"}let C=x=>{let K=r.current;if(!K||x.pointerId!==K.pointerId)return;let O=s.current;if(!O)return;let N=x.clientX-K.containerLeft+K.tableContainer.scrollLeft;O.style.transform=`translateX(${N}px)`},f=x=>{var W,Q;let K=r.current;if(!K||x.pointerId!==K.pointerId)return;let O=x.clientX-K.startClientX,N=d.current,_=K.initialWidth+O;if(_>=ue){if(N==="fit"&&K.nextHeaderCell){let X=K.initialNextWidth-ue,z=Math.min(O,X),E=K.initialWidth+z,H=K.initialNextWidth-z;E>=ue&&H>=ue&&(g(K,{[K.columnIndex]:E,[K.columnIndex+1]:H}),(W=T.current)==null||W.call(T,{originalEvent:x,columnIndex:K.columnIndex,delta:z}))}else if(N==="expand"){let X=K.initialTableWidth+O;g(K,{[K.columnIndex]:_},X),(Q=T.current)==null||Q.call(T,{originalEvent:x,columnIndex:K.columnIndex,delta:O})}}b()};r.current={columnIndex:u,pointerId:i.pointerId,startClientX:i.clientX,containerLeft:w.left,initialScrollLeft:P.scrollLeft,resizer:I,headerCell:R,nextHeaderCell:M,headerCells:y,table:F,tableContainer:P,initialWidth:R.offsetWidth,initialNextWidth:(D=M==null?void 0:M.offsetWidth)!=null?D:0,initialTableWidth:d.current==="fit"?P.clientWidth:F.offsetWidth,onMove:C,onEnd:f},I.setPointerCapture(i.pointerId),I.addEventListener("pointermove",C),I.addEventListener("pointerup",f),I.addEventListener("pointercancel",f),document.body.style.cursor="col-resize",document.body.style.userSelect="none"},[t,g,b]);J.useEffect(()=>()=>b(),[b]);let S=J.useCallback(i=>({"data-scope":"datatable","data-part":"column-resizer",style:{touchAction:"none"},onPointerDown:R=>{let F=R.target.closest("th");if(F){let P=i!=null?i:F.cellIndex;m(R,P,F)}}}),[m]),p=J.useMemo(()=>({onResizeStart:m,registerIndicator:o,getColumnResizerProps:S}),[m,o,S]);return{state:it,exposes:p}}import*as Y from"react";var Ce=Object.freeze({});function Pe(e){var w;let{editMode:t}=e,n=e.editingKeys!==void 0,[r,s]=Y.useState(()=>{var c,C;return(C=(c=e.editingKeys)!=null?c:e.defaultEditingKeys)!=null?C:Ce}),o=n?(w=e.editingKeys)!=null?w:Ce:r;Y.useEffect(()=>{var c;n&&s((c=e.editingKeys)!=null?c:Ce)},[n,e.editingKeys]);let[l,a]=Y.useState(null),d=Y.useRef({}),T=Y.useCallback(c=>o[String(c)]===!0,[o]),b=Y.useCallback((c,C,f,h)=>{var x,K;if(t!=="row")return;let v=String(C),D=V(k({},o),{[v]:!0});f&&(d.current[v]=k({},f)),n||s(D),(x=e.onEditingKeysChange)==null||x.call(e,{originalEvent:c,value:D}),(K=e.onRowEditInit)==null||K.call(e,{originalEvent:c,data:f!=null?f:{},index:h!=null?h:-1})},[t,o,n,e.onEditingKeysChange,e.onRowEditInit]),g=Y.useCallback((c,C,f,h,v)=>{var K,O;if(t!=="row")return;let D=String(C),x=k({},o);delete x[D],delete d.current[D],n||s(x),(K=e.onEditingKeysChange)==null||K.call(e,{originalEvent:c,value:x}),(O=e.onRowEditSave)==null||O.call(e,{originalEvent:c,data:f!=null?f:{},newData:h,index:v!=null?v:-1})},[t,o,n,e.onEditingKeysChange,e.onRowEditSave]),m=Y.useCallback((c,C,f,h)=>{var K,O,N;if(t!=="row")return;let v=String(C),D=k({},o);delete D[v];let x=d.current[v];delete d.current[v],n||s(D),(K=e.onEditingKeysChange)==null||K.call(e,{originalEvent:c,value:D}),(N=e.onRowEditCancel)==null||N.call(e,{originalEvent:c,data:(O=x!=null?x:f)!=null?O:{},index:h!=null?h:-1})},[t,o,n,e.onEditingKeysChange,e.onRowEditCancel]),S=Y.useCallback((c,C,f)=>t!=="cell"||!l||l.field!==C?!1:f!==void 0&&l.rowKey!==void 0?String(l.rowKey)===String(f):l.rowIndex===c,[t,l]),p=Y.useCallback((c,C,f,h)=>{var v;t==="cell"&&(a({rowIndex:C,field:f,rowKey:h}),(v=e.onCellEditInit)==null||v.call(e,{originalEvent:c,field:f,rowIndex:C}))},[t,e.onCellEditInit]),i=Y.useCallback(c=>{var h;if(t!=="cell")return!1;let C=!1,f=V(k({},c),{preventDefault:()=>{C=!0}});return(h=e.onCellEditComplete)==null||h.call(e,f),C||a(null),!C},[t,e.onCellEditComplete]),u=Y.useCallback((c,C,f)=>{var h;t==="cell"&&((h=e.onCellEditCancel)==null||h.call(e,{originalEvent:c,rowData:{},newRowData:{},field:f,value:void 0,newValue:void 0,rowIndex:C,type:"escape",preventDefault:()=>{}}),a(null))},[t,e.onCellEditCancel]),R=Y.useCallback(c=>k(k({"data-scope":"datatable","data-part":"cell-editor","data-row-index":String(c.rowIndex),"data-field":c.field},c.rowKey!==void 0?{"data-row-key":String(c.rowKey)}:void 0),c.isEditing?{"data-editing":""}:void 0),[]),F=Y.useCallback(()=>({"data-scope":"datatable","data-part":"row-editor-init",type:"button","aria-label":"Edit row"}),[]),P=Y.useCallback(()=>({"data-scope":"datatable","data-part":"row-editor-save",type:"button","aria-label":"Save row"}),[]),I=Y.useCallback(()=>({"data-scope":"datatable","data-part":"row-editor-cancel",type:"button","aria-label":"Cancel edit"}),[]),y=Y.useMemo(()=>({isEditing:T,startRowEdit:b,saveRowEdit:g,cancelRowEdit:m,startCellEdit:p,completeCellEdit:i,cancelCellEdit:u,isCellEditing:S,getCellEditorRootProps:R,getRowEditorInitProps:F,getRowEditorSaveProps:P,getRowEditorCancelProps:I}),[T,b,g,m,p,i,u,S,R,F,P,I]);return{state:Y.useMemo(()=>({editingKeys:o,editingCell:l}),[o,l]),exposes:y}}import*as re from"react";var Ie=Object.freeze({});function He(e){var b;let t=e.expandedKeys!==void 0,[n,r]=re.useState(()=>{var g,m;return(m=(g=e.expandedKeys)!=null?g:e.defaultExpandedKeys)!=null?m:{}}),s=t?(b=e.expandedKeys)!=null?b:Ie:n;re.useEffect(()=>{var g;t&&r((g=e.expandedKeys)!=null?g:Ie)},[t,e.expandedKeys]);let o=re.useCallback(g=>s[String(g)]===!0,[s]),l=re.useCallback((g,m)=>{var i;let S=String(m),p=k({},s);p[S]?delete p[S]:p[S]=!0,t||r(p),(i=e.onExpandedChange)==null||i.call(e,{originalEvent:g,value:p})},[s,t,e.onExpandedChange]),a=re.useCallback((g,m)=>{var P,I;let S=g!==void 0?o(g):!1,p=(m==null?void 0:m._treeLevel)!==void 0,i=(P=m==null?void 0:m._treeLevel)!=null?P:0,u=(I=m==null?void 0:m._treeHasChildren)!=null?I:!1,R=y=>{g!==void 0&&l(y,g)};if(p&&!u)return{isSpacer:!0,spacerProps:{"data-scope":"datatable","data-part":"row-toggle-spacer","data-tree-level":i,style:{display:"inline-block",marginInlineStart:`calc(var(--p-datatable-indent, 1rem) * ${i})`,width:"var(--p-datatable-toggle-size, 2rem)",flexShrink:0}}};let F={"data-scope":"datatable","data-part":"row-toggle",type:"button","aria-expanded":S,"aria-label":S?"Collapse row":"Expand row",onClick:R};return p&&(F["data-tree-level"]=i,F.style={marginInlineStart:`calc(var(--p-datatable-indent, 1rem) * ${i})`,display:"inline-flex",alignItems:"center",justifyContent:"center",flexShrink:0}),{isSpacer:!1,rootProps:F,isExpanded:S}},[o,l]),d=re.useMemo(()=>({isExpanded:o,toggleExpansion:l,getRowToggleProps:a}),[o,l,a]);return{state:re.useMemo(()=>({expandedKeys:s}),[s]),exposes:d}}import{resolveFieldData as ct}from"@primeuix/utils";import*as fe from"react";var dt=Object.freeze({});function Oe(e){let t=fe.useCallback(r=>{var u,R,F,P;if(typeof document=="undefined")return;let s=(u=e.data)!=null?u:[],o=(R=r==null?void 0:r.separator)!=null?R:",",l=(F=r==null?void 0:r.fileName)!=null?F:"download",a=s;if(r!=null&&r.selectionOnly&&e.selectedKeys&&e.dataKey&&(a=s.filter(I=>{let y=String(I[e.dataKey]);return e.selectedKeys[y]})),a.length===0)return;let d=(P=r==null?void 0:r.fields)!=null?P:Object.keys(a[0]);if(r!=null&&r.exportFunction){r.exportFunction({data:a,fields:d});return}let T=r==null?void 0:r.headers,b=[],g=d.map(I=>{var M;let y=(M=T==null?void 0:T[I])!=null?M:I;return`"${String(y).replace(/"/g,'""')}"`});b.push(g.join(o));for(let I of a){let y=d.map(M=>{let w=ct(I,M),c=w!=null?String(w):"";return c.length>0&&/^[=+\-@\t\r]/.test(c)&&(c=` ${c}`),`"${c.replace(/"/g,'""')}"`});b.push(y.join(o))}let m=b.join(`
|
|
10
|
+
`);if(typeof document=="undefined"||typeof URL=="undefined"||typeof Blob=="undefined")return;let S=new Blob([m],{type:"text/csv;charset=utf-8;"}),p=URL.createObjectURL(S),i=document.createElement("a");i.setAttribute("href",p),i.setAttribute("download",`${l}.csv`),i.style.display="none",document.body.appendChild(i);try{i.click()}finally{i.parentNode===document.body&&document.body.removeChild(i),URL.revokeObjectURL(p)}},[e.data,e.dataKey,e.selectedKeys]),n=fe.useMemo(()=>({exportCSV:t}),[t]);return{state:dt,exposes:n}}import{useFilter as ut}from"@primereact/hooks/use-filter";import*as G from"react";var ft={Contains:"contains",NotContains:"notContains",StartsWith:"startsWith",EndsWith:"endsWith",Equals:"equals",NotEquals:"notEquals",In:"in",Between:"between",Lt:"lt",Lte:"lte",Gt:"gt",Gte:"gte",DateIs:"dateIs",DateIsNot:"dateIsNot",DateBefore:"dateBefore",DateAfter:"dateAfter",Custom:"custom"},gt={And:"and",Or:"or"},ze=Object.freeze({});function Ne(e){var _,W,Q,X;let{data:t=[],lazy:n=!1,globalFilterFields:r=[]}=e,s=e.filters!==void 0,[o,l]=G.useState((_=e.defaultFilters)!=null?_:ze),a=s?(W=e.filters)!=null?W:ze:o;G.useEffect(()=>{s&&e.filters&&l(e.filters)},[s,e.filters]);let d=(Q=e.globalFilter)!=null?Q:null,T=(X=e.filterDelay)!=null?X:0,[b,g]=G.useState(a),[m,S]=G.useState(d);G.useEffect(()=>{if(T<=0){g(a),S(d);return}let z=setTimeout(()=>{g(a),S(d)},T);return()=>clearTimeout(z)},[a,d,T]);let p=T>0?b:a,i=T>0?m:d,u=G.useCallback((z,E)=>{var H;s||l(E),(H=e.onFilter)==null||H.call(e,{originalEvent:z,filters:E})},[s,e.onFilter]),R=G.useCallback((z,E,H)=>{let L=V(k({},a),{[E]:H});u(z,L)},[a,u]),F=G.useCallback((z,E)=>{var U,A,B,$;let H=a[E],L=k({},a);if(H&&typeof H=="object"&&H!==null&&"constraints"in H){let te=H;L[E]={operator:(U=te.operator)!=null?U:"and",constraints:[{value:null,matchMode:($=(B=(A=te.constraints)==null?void 0:A[0])==null?void 0:B.matchMode)!=null?$:"contains"}]}}else H&&typeof H=="object"&&H!==null&&"matchMode"in H?L[E]={value:null,matchMode:H.matchMode}:delete L[E];u(z,L)},[a,u]),P=G.useCallback(z=>{u(z,{})},[u]),I=G.useCallback((z,E,H="contains")=>{var A,B;let L=a[E],U=k({},a);if(L&&typeof L=="object"&&L!==null&&"constraints"in L){let $=L,te=[...(A=$.constraints)!=null?A:[],{value:null,matchMode:H}];U[E]=V(k({},$),{constraints:te})}else{let $=L&&typeof L=="object"&&"value"in L?L.value:null,te=L&&typeof L=="object"&&"matchMode"in L&&(B=L.matchMode)!=null?B:"contains";U[E]={operator:"and",constraints:[{value:$,matchMode:te},{value:null,matchMode:H}]}}u(z,U)},[a,u]),y=G.useCallback((z,E,H)=>{var $;let L=a[E];if(!L||typeof L!="object"||!("constraints"in L))return;let U=L,A=(($=U.constraints)!=null?$:[]).filter((te,de)=>de!==H);if(A.length===0)return;let B=V(k({},a),{[E]:V(k({},U),{constraints:A})});u(z,B)},[a,u]),M=G.useCallback((z,E,H)=>{var A;let L=a[E],U=k({},a);if(L&&typeof L=="object"&&L!==null&&"constraints"in L)U[E]=V(k({},L),{operator:H});else{let B=L&&typeof L=="object"&&"value"in L?L.value:null,$=L&&typeof L=="object"&&"matchMode"in L&&(A=L.matchMode)!=null?A:"contains";U[E]={operator:H,constraints:[{value:B,matchMode:$}]}}u(z,U)},[a,u]),w=G.useCallback((z,E,H,L,U)=>{var de;let A=a[E];if(!A||typeof A!="object"||!("constraints"in A))return;let B=A,$=[...(de=B.constraints)!=null?de:[]];H>=0&&H<$.length&&($[H]={value:L,matchMode:U!=null?U:$[H].matchMode});let te=V(k({},a),{[E]:V(k({},B),{constraints:$})});u(z,te)},[a,u]),c=G.useCallback((z,E,H,L)=>{var te;let U=a[E];if(!U||typeof U!="object"||!("constraints"in U))return;let A=U,B=[...(te=A.constraints)!=null?te:[]];H>=0&&H<B.length&&(B[H]=V(k({},B[H]),{matchMode:L}));let $=V(k({},a),{[E]:V(k({},A),{constraints:B})});u(z,$)},[a,u]),C=G.useCallback(z=>{var H;let E=a[z];return E?typeof E=="object"&&E!==null&&"constraints"in E?((H=E.constraints)!=null?H:[]).some(U=>U.value!==null&&U.value!==void 0&&U.value!==""):typeof E=="object"&&E!==null&&"value"in E?E.value!==null&&E.value!==void 0&&E.value!=="":E!=null&&E!=="":!1},[a]),f=G.useCallback(()=>d?!0:Object.keys(a).some(z=>C(z)),[a,d,C]),h=G.useCallback(z=>{let E=a[z];return E?typeof E=="object"&&E!==null?E:{value:E,matchMode:"contains"}:{value:null,matchMode:"contains"}},[a]),v=G.useMemo(()=>{var E,H;let z=[];for(let L of Object.keys(p)){if(L==="global")continue;let U=p[L];if(U){if(typeof U=="object"&&U!==null){let A=U;if(A.constraints&&A.constraints.length>0){z.push({field:L,operator:(E=A.operator)!=null?E:"and",constraints:A.constraints.map(B=>{var $;return{value:B.value,matchMode:($=B.matchMode)!=null?$:"contains"}})});continue}if("value"in A||"matchMode"in A){z.push({field:L,value:A.value,matchMode:(H=A.matchMode)!=null?H:"contains"});continue}}z.push({field:L,value:U,matchMode:"contains"})}}return i&&r.length>0&&z.push({field:r,value:i,matchMode:"contains"}),z},[p,i,r]),x=ut({data:t,rules:v,lazy:n}).filteredData,K=G.useMemo(()=>({filters:a,globalFilter:d}),[a,d]),O=G.useCallback((z,E="row")=>k({"data-scope":"datatable","data-part":"filter","data-display":E},C(z)?{"data-active":""}:void 0),[C]),N=G.useMemo(()=>({setFieldFilter:R,clearFieldFilter:F,clearAllFilters:P,addConstraint:I,removeConstraint:y,setOperator:M,setConstraintValue:w,setConstraintMatchMode:c,hasFilterValue:C,isFiltered:f,getFieldFilterMeta:h,getFilterRootProps:O}),[R,F,P,I,y,M,w,c,C,f,h,O]);return{filteredData:x,state:K,exposes:N}}import{resolveFieldData as mt}from"@primeuix/utils";import*as ge from"react";function Ue(e){let{data:t,groupField:n}=e,r=ge.useMemo(()=>{if(!n)return;let l=new Map;if(t.length===0)return l;let a=[],d,T=0;for(let b=0;b<t.length;b++){let g=mt(t[b],n);b===0?(d=g,T=0):g!==d&&(a.push({start:T,end:b-1,value:d}),d=g,T=b)}a.push({start:T,end:t.length-1,value:d});for(let b=0;b<a.length;b++){let g=a[b],m=g.end-g.start+1;for(let S=g.start;S<=g.end;S++)l.set(S,{isGroupStart:S===g.start,isGroupEnd:S===g.end,groupValue:g.value,groupCount:m,groupIndex:b})}return l},[t,n]),s=ge.useMemo(()=>({}),[]);return{state:ge.useMemo(()=>({groupMetaMap:r}),[r]),exposes:s}}import*as ne from"react";function Ae(e){var I,y,M,w,c;let{data:t,lazy:n,paginator:r}=e,s=e.page!==void 0,o=e.rows!==void 0,[l,a]=ne.useState((I=e.defaultPage)!=null?I:0),[d,T]=ne.useState((y=e.defaultRows)!=null?y:10),b=s?(M=e.page)!=null?M:0:l,g=o?(w=e.rows)!=null?w:10:d,m=n?(c=e.totalRecords)!=null?c:0:t.length,S=Math.max(1,Math.ceil(m/g)),p=b*g;ne.useEffect(()=>{!s&&b>=S&&S>0&&a(S-1)},[S,b,s]);let i=ne.useMemo(()=>!r||n?t:t.slice(p,p+g),[t,r,n,p,g]),u=ne.useCallback((C,f)=>{var v;if(f<0||f>=S)return;s||a(f);let h=f*g;(v=e.onPageChange)==null||v.call(e,{originalEvent:C,page:f,rows:g,first:h,pageCount:S})},[S,g,s,e.onPageChange]),R=ne.useCallback((C,f)=>{var v;if(f<=0)return;o||T(f),s||a(0);let h=Math.max(1,Math.ceil(m/f));(v=e.onPageChange)==null||v.call(e,{originalEvent:C,page:0,rows:f,first:0,pageCount:h})},[m,o,s,e.onPageChange]),F=ne.useMemo(()=>({page:b,rows:g,first:p,pageCount:S,totalRecords:m,onPageChange:u,onRowsChange:R}),[b,g,p,S,m,u,R]),P=ne.useMemo(()=>({page:b,rows:g,first:p,pageCount:S,totalRecords:m}),[b,g,p,S,m]);return{paginatedData:i,state:P,exposes:F}}import*as Z from"react";var bt=Object.freeze({}),Se="data-dragpoint-top",Te="data-dragpoint-bottom";function me(e){e&&(e.removeAttribute(Se),e.removeAttribute(Te))}function je(e){let{reorderableRows:t=!1}=e,n=Z.useRef(-1),r=Z.useRef(-1),s=Z.useRef(null),o=Z.useCallback((p,i)=>{t&&(n.current=i,p.dataTransfer.effectAllowed="move",p.dataTransfer.setData("text/plain",String(i)))},[t]),l=Z.useCallback((p,i)=>{if(!t||n.current===-1||n.current===i)return;p.preventDefault(),p.dataTransfer.dropEffect="move";let u=p.currentTarget,R=u.getBoundingClientRect(),F=R.top+R.height/2;s.current&&s.current!==u&&me(s.current),p.clientY<F?(u.setAttribute(Se,""),u.removeAttribute(Te),r.current=i):(u.setAttribute(Te,""),u.removeAttribute(Se),r.current=i+1),s.current=u},[t]),a=Z.useCallback(p=>{if(!t)return;let i=p.currentTarget;me(i),s.current===i&&(s.current=null)},[t]),d=Z.useCallback(p=>{var F,P;if(!t||n.current===-1)return;p.preventDefault();let i=(F=e.data)!=null?F:[],u=n.current,R=r.current;if(R>u&&(R-=1),R!==u&&R>=0&&R<=i.length){let I=[...i],[y]=I.splice(u,1);I.splice(R,0,y),(P=e.onRowReorder)==null||P.call(e,{originalEvent:p.nativeEvent,dragIndex:u,dropIndex:R,value:I})}me(s.current),s.current=null,n.current=-1,r.current=-1},[t,e.data,e.onRowReorder]),T=Z.useCallback(()=>{t&&(me(s.current),s.current=null,n.current=-1,r.current=-1)},[t]),b=Z.useCallback(p=>{let i=p.currentTarget.closest("tr");i&&i.setAttribute("data-drag-source","true")},[]),g=Z.useCallback(p=>{let i=p.currentTarget.closest("tr");i&&i.removeAttribute("data-drag-source")},[]),m=Z.useCallback(()=>({"data-scope":"datatable","data-part":"row-reorder",style:{cursor:"grab",userSelect:"none",touchAction:"none"},onPointerDown:b,onPointerUp:g}),[b,g]),S=Z.useMemo(()=>({onDragStart:o,onDragOver:l,onDragEnter:l,onDragLeave:a,onDrop:d,onDragEnd:T,getRowReorderHandleProps:m}),[o,l,a,d,T,m]);return{state:bt,exposes:S}}import*as q from"react";var ve=Object.freeze({});function _e(e){let t=[];if(e.children)for(let n of e.children)t.push(n.key),t.push(..._e(n));return t}function be(e,t){for(let n of e){if(n.key===t)return n;if(n.children){let r=be(n.children,t);if(r)return r}}return null}function Rt(e,t){let n=[];function r(s,o){for(let l of s){if(l.key===t)return n.push(...o),!0;if(l.children&&r(l.children,[...o,l.key]))return!0}return!1}return r(e,[]),n}function We(e,t){return!e.children||e.children.length===0?!0:e.children.every(n=>t[n.key]===!0&&We(n,t))}function $e(e,t){return e.children?e.children.some(n=>t[n.key]===!0||$e(n,t)):!1}function yt(e,t,n){let r=Rt(e,t);for(let s=r.length-1;s>=0;s--){let o=r[s],l=be(e,o);l&&We(l,n)?n[o]=!0:delete n[o]}}function Ge(e){var y;let{data:t}=e,n=q.useRef(null),r=e.selectedKeys!==void 0,[s,o]=q.useState(()=>{var M,w;return(w=(M=e.selectedKeys)!=null?M:e.defaultSelectedKeys)!=null?w:ve}),l=r?(y=e.selectedKeys)!=null?y:ve:s;q.useEffect(()=>{var M;r&&o((M=e.selectedKeys)!=null?M:ve)},[r,e.selectedKeys]);let a=q.useCallback((M,w)=>e.dataKey&&M?String(M[e.dataKey]):w,[e.dataKey]),d=q.useCallback(M=>l[String(M)]===!0,[l]),T=e.treeMode?e.rawTreeData:void 0,b=q.useMemo(()=>{let M=new Map;for(let w=0;w<t.length;w++)M.set(String(a(t[w],w)),w);return M},[t,a]),g=q.useCallback((M,w,c)=>{var v,D,x;let C=String(w),f,h=!0;if(c==="radio")f={[C]:!0};else if(c==="single")f=l[C]?{}:{[C]:!0};else if(M.shiftKey===!0&&!T&&n.current!==null&&n.current!==C){let O=n.current,N=(v=b.get(O))!=null?v:-1,_=(D=b.get(C))!=null?D:-1;if(N>=0&&_>=0){let W=Math.min(N,_),Q=Math.max(N,_);f=k({},l);for(let X=W;X<=Q;X++){let z=String(a(t[X],X));f[z]=!0}}else f=V(k({},l),{[C]:!0});h=!1}else{f=k({},l);let O=!f[C];if(O?f[C]=!0:delete f[C],T){let N=be(T,C);if(N){let _=_e(N);for(let W of _)O?f[W]=!0:delete f[W]}yt(T,C,f)}}h&&c!=="radio"&&(n.current=C),r||o(f),(x=e.onSelectionChange)==null||x.call(e,{originalEvent:M,value:f,type:c==="radio"?"radio":c==="single"?"row":"checkbox"})},[t,a,l,r,e.onSelectionChange,T,b]),m=q.useCallback(M=>{let w=[];for(let c of M)w.push(c.key),c.children&&w.push(...m(c.children));return w},[]),S=q.useMemo(()=>{if(T){let w=m(T);if(w.length===0)return{all:!1,some:!1};let c=w.reduce((C,f)=>l[f]===!0?C+1:C,0);return{all:c===w.length,some:c>0&&c<w.length}}if(t.length===0)return{all:!1,some:!1};let M=0;for(let w=0;w<t.length;w++){let c=String(a(t[w],w));l[c]===!0&&M++}return{all:M===t.length,some:M>0&&M<t.length}},[t,T,l,a,m]),p=q.useCallback(()=>S.all,[S]),i=q.useCallback(()=>S.some,[S]),u=q.useCallback(M=>{var c;let w;if(p())w={};else if(w={},T){let C=m(T);for(let f of C)w[f]=!0}else t.forEach((C,f)=>{let h=String(a(C,f));w[h]=!0});r||o(w),(c=e.onSelectionChange)==null||c.call(e,{originalEvent:M,value:w,type:"all"})},[t,T,p,r,a,m,e.onSelectionChange]),R=q.useCallback((M,w)=>{var K;let{selectionMode:c,metaKeySelection:C}=e;if(!c)return;let f=String(w),h=M.metaKey||M.ctrlKey,v=M.shiftKey,D,x=!0;if(c==="single")D=l[f]?{}:{[f]:!0};else if(C)if(v&&n.current!==null&&n.current!==f){let O=n.current,N=-1,_=-1;for(let W=0;W<t.length;W++){let Q=String(a(t[W],W));if(Q===O&&(N=W),Q===f&&(_=W),N>=0&&_>=0)break}if(N>=0&&_>=0){let W=Math.min(N,_),Q=Math.max(N,_);D=h?k({},l):{};for(let X=W;X<=Q;X++){let z=String(a(t[X],X));D[z]=!0}}else D=V(k({},l),{[f]:!0});x=!1}else h?(D=k({},l),D[f]?delete D[f]:D[f]=!0):D={[f]:!0};else D=k({},l),D[f]?delete D[f]:D[f]=!0;x&&(n.current=f),r||o(D),(K=e.onSelectionChange)==null||K.call(e,{originalEvent:M,value:D,type:"row"})},[t,a,l,r,e.selectionMode,e.metaKeySelection,e.onSelectionChange]),F=q.useCallback(M=>{if(!T)return!1;let w=be(T,String(M));return!w||!w.children||w.children.length===0?!1:!l[String(M)]&&$e(w,l)},[T,l]),P=q.useMemo(()=>({isSelected:d,isPartiallySelected:F,toggleSelection:g,toggleAll:u,isAllSelected:p,isSomeSelected:i,onRowClick:R}),[d,F,g,u,p,i,R]),I=q.useMemo(()=>({selectedKeys:l}),[l]);return{getRowKey:a,state:I,exposes:P}}import*as ee from"react";import{localeComparator as ht,resolveFieldData as Re,sort as we}from"@primeuix/utils";var pe=ht(),ye=(e,t,n,r=1)=>we(e,t,n,pe,r),ke=(e,t,n,r=1)=>!t||n===0?e:[...e].sort((s,o)=>we(Re(s,t),Re(o,t),n,pe,r)),De=(e,t,n=1)=>!t||t.length===0?e:[...e].sort((r,s)=>{for(let o of t){let l=we(Re(r,o.field),Re(s,o.field),o.order,pe,n);if(l!==0)return l}return 0});function Ve(e){var w;let{data:t,lazy:n}=e,r=e.sortField!==void 0,s=e.multiSortMeta!==void 0,[o,l]=ee.useState(e.defaultSortField),[a,d]=ee.useState(e.defaultSortOrder),[T,b]=ee.useState(e.defaultMultiSortMeta),g=r?e.sortField:o,m=r?e.sortOrder:a,S=s?e.multiSortMeta:T,p=ee.useCallback(c=>S&&S.length>0?S.some(C=>C.field===c):g===c&&m!==0,[g,m,S]),i=ee.useCallback(c=>{var C;if(S&&S.length>0){let f=S.find(h=>h.field===c);return(C=f==null?void 0:f.order)!=null?C:0}return g===c&&m!=null?m:0},[g,m,S]),u=ee.useCallback(c=>S&&S.length>0?S.findIndex(C=>C.field===c):-1,[S]),R=ee.useCallback((c,C,f)=>{var D,x;let h=i(C),v;if(h===0?v=1:h===1?v=-1:v=e.removableSort?0:1,f){let K=[...S!=null?S:[]],O=K.findIndex(N=>N.field===C);v===0?O!==-1&&K.splice(O,1):O!==-1?K[O]={field:C,order:v}:K.push({field:C,order:v}),s||b(K),(D=e.onSortChange)==null||D.call(e,{originalEvent:c,field:C,order:v,multiSortMeta:K})}else r||(l(v===0?void 0:C),d(v)),s||b(void 0),(x=e.onSortChange)==null||x.call(e,{originalEvent:c,field:C,order:v,multiSortMeta:void 0})},[i,e.removableSort,e.onSortChange,r,s,S]),F=(w=e.nullSortOrder)!=null?w:1,P=ee.useMemo(()=>n?t:S&&S.length>0?De(t,S,F):g&&m!=null&&m!==0?ke(t,g,m,F):t,[t,n,g,m,S,F]),I=ee.useCallback(c=>{let C=p(c),f=i(c),h=C?f===1?"ascending":"descending":"",v=x=>{if(!c)return;let K=x.metaKey||x.ctrlKey;R(x,c,K)},D=x=>{(x.key==="Enter"||x.key===" ")&&(x.preventDefault(),v(x))};return V(k({"data-scope":"datatable","data-part":"sort"},C?{"data-sorted":"","data-sort-order":f===1?"asc":"desc"}:{"data-unsorted":""}),{role:"button",tabIndex:0,"aria-label":`Sort by ${c}${h?` ${h}`:""}`,"aria-sort":C?f===1?"ascending":"descending":"none",onClick:v,onKeyDown:D})},[p,i,R]),y=ee.useMemo(()=>({onSort:R,isSorted:p,getSortOrder:i,getSortIndex:u,getSortProps:I}),[R,p,i,u,I]),M=ee.useMemo(()=>({sortField:g,sortOrder:m,multiSortMeta:S}),[g,m,S]);return{sortedData:P,state:M,exposes:y}}import{BUILT_IN_MATCHERS as Et,getGlobalMatchers as Mt}from"@primereact/hooks/use-filter";import{resolveFieldData as le}from"@primeuix/utils";import*as ie from"react";function Be(e,t,n,r){var o;let s=(o=Et[e])!=null?o:Mt()[e];return s?s(t,n,r):!0}var Me=100;function Ye(e,t,n,r=0){return r>=Me?e:[...e].sort((o,l)=>{let a=o.data?le(o.data,t):void 0,d=l.data?le(l.data,t):void 0;return ye(a,d,n)}).map(o=>{var l;return(l=o.children)!=null&&l.length?V(k({},o),{children:Ye(o.children,t,n,r+1)}):o})}function Xe(e,t,n=0){return n>=Me?e:[...e].sort((s,o)=>{for(let l of t){let a=s.data?le(s.data,l.field):void 0,d=o.data?le(o.data,l.field):void 0,T=ye(a,d,l.order);if(T!==0)return T}return 0}).map(s=>{var o;return(o=s.children)!=null&&o.length?V(k({},s),{children:Xe(s.children,t,n+1)}):s})}function he(e,t,n="contains"){return Be(n,e,t)}function Ct(e,t,n,r){var o,l;if(n&&r.length>0&&!r.some(d=>Be("contains",le(e,d),n)))return!1;let s=Object.keys(t).filter(a=>a!=="global");for(let a of s){let d=t[a];if(!d)continue;if(typeof d=="object"&&d!==null&&"constraints"in d){let b=d,g=(o=b.operator)!=null?o:"and",m=(l=b.constraints)!=null?l:[];if(m.length>0){let S=le(e,a);if(g==="and"){if(!m.every(i=>he(S,i.value,i.matchMode)))return!1}else if(!m.some(i=>he(S,i.value,i.matchMode)))return!1}continue}if(typeof d=="object"&&d!==null&&"value"in d){let b=d,g=le(e,a);if(!he(g,b.value,b.matchMode))return!1;continue}let T=le(e,a);if(!he(T,d))return!1}return!0}function ce(e,t,n,r,s=0){var l,a;if(s>=Me)return[];let o=[];for(let d of e){let T=(l=d.data)!=null?l:{};if(Ct(T,t,n,r))o.push(d);else if((a=d.children)!=null&&a.length){let g=ce(d.children,t,n,r,s+1);g.length>0&&o.push(V(k({},d),{children:g}))}}return o}function Ee(e,t){var r;if(t)return!0;let n=Object.keys(e).filter(s=>s!=="global");for(let s of n){let o=e[s];if(o){if(typeof o=="object"&&o!==null&&"constraints"in o){if(((r=o.constraints)!=null?r:[]).some(d=>d.value!==null&&d.value!==void 0&&d.value!==""))return!0;continue}if(typeof o=="object"&&o!==null&&"value"in o){let l=o.value;if(l!=null&&l!=="")return!0;continue}if(o!=null&&o!=="")return!0}}return!1}function qe(e,t,n,r){var l,a,d;if(n>=Me)return[];let s=[],o=e.length;for(let T=0;T<e.length;T++){let b=e[T],g=!!((l=b.children)!=null&&l.length),m=g||b.leaf===!1,S=b.leaf===!0||!g&&b.leaf!==!1;s.push(V(k({},(a=b.data)!=null?a:{}),{key:b.key,data:(d=b.data)!=null?d:{},children:b.children,_treeLevel:n,_treeHasChildren:m,_treeLeaf:S,_treeParentKey:r,_treePosInSet:T+1,_treeSetSize:o})),g&&t[b.key]&&s.push(...qe(b.children,t,n+1,b.key))}return s}function Je(e){let{data:t,treeMode:n,expandedKeys:r,sortField:s,sortOrder:o,multiSortMeta:l,filters:a={},globalFilter:d=null,globalFilterFields:T=[],paginator:b=!1,page:g=0,rows:m=10}=e,S=ie.useMemo(()=>{if(!n)return t;let R=t;if(Ee(a,d)&&(R=ce(R,a,d,T)),l&&l.length>0?R=Xe(R,l):s&&o!=null&&o!==0&&(R=Ye(R,s,o)),b){let F=g*m;R=R.slice(F,F+m)}return qe(R,r,0,null)},[t,n,r,s,o,l,a,d,T,b,g,m]),p=ie.useMemo(()=>{if(!n)return t.length;let R=t;return Ee(a,d)&&(R=ce(R,a,d,T)),R.length},[t,n,a,d,T]),i=ie.useMemo(()=>({}),[]),u=ie.useMemo(()=>({}),[]);return{flattenedData:S,totalRootNodes:p,state:i,exposes:u}}import*as oe from"react";function Qe(e){let{data:t,treeMode:n,selectionMode:r,expandedKeys:s={},onToggleExpansion:o,onToggleSelection:l,getRowKey:a}=e,d=r==="single"?"single":"checkbox",[T,b]=oe.useState(-1),g=oe.useCallback(u=>T===-1?u===0?0:-1:u===T?0:-1,[T]),m=oe.useCallback((u,R)=>{if(!u)return;let F=u.querySelector(`tr[data-scope="datatable"][data-part="row"][data-index="${R}"]`);if(F){b(R),F.focus();return}b(R)},[]),S=oe.useCallback((u,R)=>{let F=u.target;if(F!==u.currentTarget){let y=F.tagName;if(y==="INPUT"||y==="SELECT"||y==="TEXTAREA"||F.isContentEditable||F.closest("[data-editing]"))return}let P=t.length,I=!0;switch(u.key){case"ArrowDown":{let y=Math.min(R+1,P-1);if(y!==R){let M=u.currentTarget.closest("tbody");if(m(M,y),u.shiftKey&&l){let w=t[y],c=a==null?void 0:a(w,y);c!==void 0&&l(u,c,d)}}break}case"ArrowUp":{let y=Math.max(R-1,0);if(y!==R){let M=u.currentTarget.closest("tbody");if(m(M,y),u.shiftKey&&l){let w=t[y],c=a==null?void 0:a(w,y);c!==void 0&&l(u,c,d)}}break}case"ArrowRight":{if(!n){I=!1;break}let y=t[R],M=a==null?void 0:a(y,R),w=y==null?void 0:y._treeHasChildren,c=M!==void 0&&s[String(M)];if(w&&!c&&M!==void 0)o==null||o(u,M);else if(c){let C=u.currentTarget.closest("tbody");m(C,Math.min(R+1,P-1))}break}case"ArrowLeft":{if(!n){I=!1;break}let y=t[R],M=a==null?void 0:a(y,R),w=y==null?void 0:y._treeHasChildren,c=M!==void 0&&s[String(M)];if(w&&c&&M!==void 0)o==null||o(u,M);else{let C=y==null?void 0:y._treeParentKey;if(C!==null){let f=t.findIndex((h,v)=>String(a==null?void 0:a(h,v))===String(C));if(f>=0){let h=u.currentTarget.closest("tbody");m(h,f)}}}break}case"Home":{let y=u.currentTarget.closest("tbody");m(y,0);break}case"End":{let y=u.currentTarget.closest("tbody");m(y,P-1);break}case"Enter":case" ":{let y=u.target;if(y.tagName==="INPUT"||y.tagName==="SELECT"||y.tagName==="TEXTAREA"||y.tagName==="BUTTON"||y.tagName==="A"||y.isContentEditable){I=!1;break}if(l){let M=t[R],w=a==null?void 0:a(M,R);w!==void 0&&l(u,w,d)}break}default:I=!1}I&&u.preventDefault()},[t,n,s,m,o,l,a,d]),p=oe.useMemo(()=>({focusedRowIndex:T}),[T]),i=oe.useMemo(()=>({getRowTabIndex:g,onRowKeyDown:S,focusRow:m}),[g,S,m]);return{state:p,exposes:i}}var Ze={data:[],dataKey:void 0,loading:!1,lazy:!1,totalRecords:void 0,scrollable:!1,scrollHeight:void 0,sortField:void 0,sortOrder:void 0,defaultSortField:void 0,defaultSortOrder:void 0,multiSortMeta:void 0,defaultMultiSortMeta:void 0,onSortChange:void 0,removableSort:!1,nullSortOrder:1,selectionMode:null,metaKeySelection:!1,selectedKeys:void 0,defaultSelectedKeys:void 0,onSelectionChange:void 0,page:void 0,defaultPage:0,rows:void 0,defaultRows:10,rowsPerPageOptions:void 0,paginator:!1,onPageChange:void 0,expandedKeys:void 0,defaultExpandedKeys:void 0,onExpandedChange:void 0,groupField:void 0,reorderableColumns:!1,onColumnReorder:void 0,resizableColumns:!1,columnResizeMode:"fit",onColumnResizeEnd:void 0,editMode:void 0,editingKeys:void 0,defaultEditingKeys:void 0,onEditingKeysChange:void 0,onRowEditInit:void 0,onRowEditSave:void 0,onRowEditCancel:void 0,onCellEditInit:void 0,onCellEditComplete:void 0,onCellEditCancel:void 0,filters:void 0,defaultFilters:void 0,globalFilter:null,globalFilterFields:void 0,filterDelay:0,onFilter:void 0,reorderableRows:!1,onRowReorder:void 0,rowClassName:void 0,onLazyLoad:void 0,onRowClick:void 0,onRowDoubleClick:void 0,onRowContextMenu:void 0,rowHover:!1,highlightOnSelect:!0,treeMode:!1,size:void 0,stripedRows:!1,showGridlines:!1};var En=St({name:"useDataTable",defaultProps:Ze,setup({props:e}){var f,h;let t=(f=e.data)!=null?f:[],n=e.treeMode===!0,r=n||e.lazy,s=He({expandedKeys:e.expandedKeys,defaultExpandedKeys:e.defaultExpandedKeys,onExpandedChange:e.onExpandedChange}),o=Ne({data:t,lazy:r,filters:e.filters,defaultFilters:e.defaultFilters,globalFilter:e.globalFilter,globalFilterFields:e.globalFilterFields,filterDelay:e.filterDelay,onFilter:e.onFilter}),l=Ve({data:o.filteredData,lazy:r,sortField:e.sortField,sortOrder:e.sortOrder,defaultSortField:e.defaultSortField,defaultSortOrder:e.defaultSortOrder,multiSortMeta:e.multiSortMeta,defaultMultiSortMeta:e.defaultMultiSortMeta,removableSort:e.removableSort,nullSortOrder:e.nullSortOrder,onSortChange:e.onSortChange}),a=ae.useMemo(()=>{var O,N,_;if(!n)return 0;let v=t,D=(O=o.state.filters)!=null?O:{},x=(N=o.state.globalFilter)!=null?N:null,K=(_=e.globalFilterFields)!=null?_:[];return Ee(D,x)?ce(v,D,x,K).length:v.length},[n,t,o.state.filters,o.state.globalFilter,e.globalFilterFields]),d=Ae({data:l.sortedData,lazy:n?!0:e.lazy,totalRecords:n?a:e.totalRecords,paginator:e.paginator,page:e.page,defaultPage:e.defaultPage,rows:e.rows,defaultRows:e.defaultRows,onPageChange:e.onPageChange}),T=Je({data:t,treeMode:n,expandedKeys:s.state.expandedKeys,sortField:l.state.sortField,sortOrder:l.state.sortOrder,multiSortMeta:l.state.multiSortMeta,filters:o.state.filters,globalFilter:o.state.globalFilter,globalFilterFields:e.globalFilterFields,paginator:e.paginator,page:d.state.page,rows:d.state.rows}),b=n?T.flattenedData:l.sortedData,g=Ue({data:b,groupField:n?void 0:e.groupField}),m=Ge({data:b,rawTreeData:n?t:void 0,treeMode:n,dataKey:e.dataKey,selectionMode:e.selectionMode,metaKeySelection:e.metaKeySelection,selectedKeys:e.selectedKeys,defaultSelectedKeys:e.defaultSelectedKeys,onSelectionChange:e.onSelectionChange}),S=Qe({data:b,dataKey:e.dataKey,treeMode:n,selectionMode:e.selectionMode,selectedKeys:m.state.selectedKeys,expandedKeys:s.state.expandedKeys,onToggleExpansion:s.exposes.toggleExpansion,onToggleSelection:m.exposes.toggleSelection,getRowKey:m.getRowKey}),p=Ke({reorderableColumns:e.reorderableColumns,onColumnReorder:e.onColumnReorder}),i=Le({resizableColumns:e.resizableColumns,columnResizeMode:e.columnResizeMode,onColumnResizeEnd:e.onColumnResizeEnd}),u=Pe({editMode:e.editMode,editingKeys:e.editingKeys,defaultEditingKeys:e.defaultEditingKeys,onEditingKeysChange:e.onEditingKeysChange,onRowEditInit:e.onRowEditInit,onRowEditSave:e.onRowEditSave,onRowEditCancel:e.onRowEditCancel,onCellEditInit:e.onCellEditInit,onCellEditComplete:e.onCellEditComplete,onCellEditCancel:e.onCellEditCancel}),R=je({data:b,reorderableRows:e.reorderableRows,onRowReorder:e.onRowReorder}),F=Oe({data:b,dataKey:e.dataKey,selectedKeys:m.state.selectedKeys}),P=ae.useRef({first:-1,rows:-1,page:-1,sortField:void 0,sortOrder:void 0,multiSortMeta:void 0,filters:void 0,globalFilter:void 0});ae.useEffect(()=>{if(!e.lazy||!e.onLazyLoad)return;let v=P.current,D={first:d.state.first,rows:d.state.rows,page:d.state.page,sortField:l.state.sortField,sortOrder:l.state.sortOrder,multiSortMeta:l.state.multiSortMeta,filters:o.state.filters,globalFilter:o.state.globalFilter};v.first!==-1&&(v.first!==D.first||v.rows!==D.rows||v.page!==D.page||v.sortField!==D.sortField||v.sortOrder!==D.sortOrder||v.multiSortMeta!==D.multiSortMeta||v.filters!==D.filters||v.globalFilter!==D.globalFilter)&&e.onLazyLoad(D),P.current=D},[e.lazy,e.onLazyLoad,d.state.first,d.state.rows,d.state.page,l.state.sortField,l.state.sortOrder,l.state.multiSortMeta,o.state.filters,o.state.globalFilter]);let I=n?b:d.paginatedData,y=(h=e.loading)!=null?h:!1,M=ae.useMemo(()=>k(k(k(k(k(k(k({processedData:b,paginatedData:I,loading:y},l.state),m.state),d.state),s.state),g.state),u.state),o.state),[b,I,y,l.state,m.state,d.state,s.state,g.state,u.state,o.state]),w=ae.useMemo(()=>k(k(k(k(k(k(k(k(k({"data-scope":"datatable","data-part":"root",ref:p.registerRoot},y?{"data-loading":""}:void 0),e.rowHover?{"data-row-hover":""}:void 0),e.highlightOnSelect?{"data-highlight-on-select":""}:void 0),e.selectionMode?{"data-selection-mode":e.selectionMode}:void 0),e.size?{"data-size":e.size}:void 0),e.stripedRows?{"data-striped-rows":""}:void 0),e.showGridlines?{"data-show-gridlines":""}:void 0),e.scrollable?{"data-scrollable":""}:void 0),e.resizableColumns?{"data-resizable-columns":""}:void 0),[y,e.rowHover,e.highlightOnSelect,e.selectionMode,e.size,e.stripedRows,e.showGridlines,e.scrollable,e.resizableColumns,p.registerRoot]),c=ae.useMemo(()=>({"data-scope":"datatable","data-part":"table-container",style:e.scrollable&&e.scrollHeight?k({maxHeight:e.scrollHeight==="flex"?void 0:e.scrollHeight,overflow:"auto"},e.scrollHeight==="flex"?{flex:"1 1 auto"}:void 0):{overflow:"auto"}}),[e.scrollable,e.scrollHeight]),C=ae.useMemo(()=>({"data-scope":"datatable","data-part":"table",role:n?"treegrid":"table"}),[n]);return{state:M,rootProps:w,tableContainerProps:c,tableProps:C,getRowKey:m.getRowKey,sort:l.exposes,selection:m.exposes,pagination:d.exposes,expansion:s.exposes,columnReorder:p.exposes,columnResize:i.exposes,editing:u.exposes,filter:o.exposes,rowReorder:R.exposes,exportData:F.exposes,keyboard:S.exposes}}});import{withHeadless as Tt}from"@primereact/core/headless";import*as se from"react";var et={item:void 0,index:0,context:void 0};var tt='input, button, a, [data-scope="radiobutton"], [data-scope="checkbox"], [role="checkbox"], [role="radio"]',vt=Object.freeze({}),wn=Tt({name:"useDataTableRow",defaultProps:et,setup({props:e}){var c,C,f,h,v,D,x,K,O,N,_,W,Q,X,z;let t=(c=e.index)!=null?c:0,n=e.item,r=e.context,s=n?(C=r==null?void 0:r.getRowKey)==null?void 0:C.call(r,n,t):void 0,o=s!==void 0?(f=r==null?void 0:r.selection)==null?void 0:f.isSelected(s):void 0,l=s!==void 0?(h=r==null?void 0:r.expansion)==null?void 0:h.isExpanded(s):void 0,a=(v=n==null?void 0:n._treeLevel)!=null?v:void 0,d=(D=n==null?void 0:n._treeHasChildren)!=null?D:void 0,T=(x=n==null?void 0:n._treePosInSet)!=null?x:void 0,b=(K=n==null?void 0:n._treeSetSize)!=null?K:void 0,g=(N=(O=r==null?void 0:r.keyboard)==null?void 0:O.getRowTabIndex(t))!=null?N:-1,m=(_=r==null?void 0:r.inProps)==null?void 0:_.editMode,S=!!((W=r==null?void 0:r.inProps)!=null&&W.reorderableRows),p=se.useCallback(E=>{var H,L;if(E.key==="Enter"&&m==="cell"&&E.target===E.currentTarget){let U=E.currentTarget.querySelector("td[data-editable-cell]"),A=U==null?void 0:U.querySelector("[data-row-index][data-field]");if(A){let B=Number(A.dataset.rowIndex),$=A.dataset.field;if(!Number.isNaN(B)&&$){E.preventDefault(),(H=r==null?void 0:r.editing)==null||H.startCellEdit(E,B,$,s);return}}}(L=r==null?void 0:r.keyboard)==null||L.onRowKeyDown(E,t)},[r==null?void 0:r.keyboard,r==null?void 0:r.editing,m,s,t]),i=(Q=r==null?void 0:r.inProps)==null?void 0:Q.onRowClick,u=(X=r==null?void 0:r.inProps)==null?void 0:X.onRowDoubleClick,R=(z=r==null?void 0:r.inProps)==null?void 0:z.onRowContextMenu,F=se.useCallback(E=>{var L;let H=E.target;H.closest(tt)||H.closest("td[data-editable-cell]")||(n&&(i==null||i({originalEvent:E,data:n,index:t})),s!==void 0&&((L=r==null?void 0:r.selection)==null||L.onRowClick(E,s)))},[r==null?void 0:r.selection,s,i,n,t]),P=se.useCallback(E=>{!n||!u||E.target.closest(tt)||u({originalEvent:E,data:n,index:t})},[u,n,t]),I=se.useCallback(E=>{!n||!R||R({originalEvent:E,data:n,index:t})},[R,n,t]),y=r==null?void 0:r.rowReorder,M=se.useMemo(()=>!S||!y?null:{onDragStart:E=>{if(E.currentTarget.getAttribute("data-drag-source")!=="true"){E.preventDefault();return}y.onDragStart(E,t)},onDragOver:E=>y.onDragOver(E,t),onDragLeave:E=>y.onDragLeave(E),onDrop:E=>y.onDrop(E),onDragEnd:E=>{E.currentTarget.removeAttribute("data-drag-source"),y.onDragEnd()}},[S,y,t]),w=se.useMemo(()=>k(k(k(k(k(k(k(k(k({"data-scope":"datatable","data-part":"row","data-index":t,role:"row","aria-rowindex":t+1,tabIndex:g,onKeyDown:p,onClick:F},u?{onDoubleClick:P}:void 0),R?{onContextMenu:I}:void 0),o!==void 0?{"aria-selected":o}:void 0),o?{"data-selected":""}:void 0),a!==void 0?{"aria-level":a+1}:void 0),d?{"aria-expanded":l}:void 0),T!==void 0?{"aria-posinset":T}:void 0),b!==void 0?{"aria-setsize":b}:void 0),M?k({draggable:!0},M):void 0),[t,g,p,F,u,R,P,I,o,l,a,d,T,b,M]);return{state:vt,rowProps:w,isSelected:o,rowKey:s}}});export{ft as FilterMatchMode,gt as FilterOperator,Ze as defaultProps,et as defaultRowProps,En as useDataTable,wn as useDataTableRow};
|
|
11
|
+
//# sourceMappingURL=index.mjs.map
|