ezux 1.1.13 → 1.1.18
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/README.md +58 -15
- package/dist/DeleteConfirmationModal-CukNDgtX.cjs +1 -0
- package/dist/DeleteConfirmationModal-p8XGDGIw.js +38 -0
- package/dist/EzContextMenu-BCUoEQp5.cjs +1 -0
- package/dist/EzContextMenu-srLxujt8.js +287 -0
- package/dist/EzErrorBoundary-C7a6VisX.js +74 -0
- package/dist/EzErrorBoundary-d_2g-_EK.cjs +1 -0
- package/dist/EzEventModal-C079wLjP.js +725 -0
- package/dist/EzEventModal-CAA9cAM0.cjs +1 -0
- package/dist/EzFlow-C74NbZA9.js +2545 -0
- package/dist/EzFlow-CQFeY7DL.cjs +5 -0
- package/dist/EzGroupingPanel-BVaAJaVU.js +107 -0
- package/dist/EzGroupingPanel-BwWDWEuW.cjs +1 -0
- package/dist/EzKanban-BlJWybKe.js +1575 -0
- package/dist/EzKanban-DdKODRRv.cjs +2 -0
- package/dist/EzLayout-BGnqFtvO.cjs +1 -0
- package/dist/EzLayout-CiaPLniV.js +7005 -0
- package/dist/EzProvider-AlmsYIDk.js +982 -0
- package/dist/EzProvider-L2qQMq-v.cjs +1 -0
- package/dist/EzScheduler-C1Jtvvju.js +2700 -0
- package/dist/EzScheduler-CkqTngI6.cjs +1 -0
- package/dist/EzSchedulerQuickAdd-BIC8xbSn.js +124 -0
- package/dist/EzSchedulerQuickAdd-BeNfGdWs.cjs +1 -0
- package/dist/EzSchedulerToolbar-BJwTpgas.cjs +1 -0
- package/dist/EzSchedulerToolbar-Ba4gbvUg.js +305 -0
- package/dist/EzSignature-7UHO5lSP.js +386 -0
- package/dist/EzSignature-Df7UZ-IS.cjs +1 -0
- package/dist/EzTable-CEXvJR1t.cjs +3 -0
- package/dist/EzTable-D2p1IWHc.js +4290 -0
- package/dist/EzTableEditDialog-BXnnYSSy.cjs +1 -0
- package/dist/EzTableEditDialog-Ccd5XoHm.js +84 -0
- package/dist/EzTableFooter-CtexeDAC.cjs +1 -0
- package/dist/EzTableFooter-DrLoWelo.js +35 -0
- package/dist/EzTableToolbar-BH5z9fSJ.js +160 -0
- package/dist/EzTableToolbar-DwuumvWP.cjs +1 -0
- package/dist/EzTreeView-D1G0Aomc.js +818 -0
- package/dist/EzTreeView-KMGlU4ax.cjs +1 -0
- package/dist/HighlightText-BViuwe03.cjs +1 -0
- package/dist/HighlightText-DNA2R2uf.js +56 -0
- package/dist/KanbanBoard-B7_Z5sh1.js +1697 -0
- package/dist/KanbanBoard-CyitudI1.cjs +1 -0
- package/dist/Modal-BmX1C448.cjs +1 -0
- package/dist/Modal-CrzpKyjK.js +74 -0
- package/dist/NotificationPanel-BzpDc10Q.js +54 -0
- package/dist/NotificationPanel-CFME00wq.cjs +1 -0
- package/dist/TooltipWrapper-BSAmUx9H.js +44 -0
- package/dist/TooltipWrapper-DfbFAZ1U.cjs +1 -0
- package/dist/advanced.cjs +10 -0
- package/dist/advanced.d.ts +44 -0
- package/dist/advanced.es.js +400 -0
- package/dist/avatar-BSdRHETK.cjs +1 -0
- package/dist/avatar-BvCUJ-_r.js +27 -0
- package/dist/button-BBMwzUtG.cjs +1 -0
- package/dist/button-CYyNwV8S.js +44 -0
- package/dist/calendar-DEHX32Cp.cjs +1 -0
- package/dist/calendar-DOIPGsyI.js +112 -0
- package/dist/card-CPlRZxbq.cjs +1 -0
- package/dist/card-ZUNxcdIM.js +60 -0
- package/dist/checkbox-BrCh_Iid.cjs +1 -0
- package/dist/checkbox-DRkQuB4W.js +21 -0
- package/dist/components/EzFlow/EzConnectionLine.d.ts +5 -0
- package/dist/components/EzFlow/EzFlow.examples.d.ts +5 -0
- package/dist/components/EzFlow/EzFlow.types.d.ts +260 -0
- package/dist/components/EzFlow/EzFlowBackground.d.ts +5 -0
- package/dist/components/EzFlow/EzFlowCanvas.d.ts +3 -0
- package/dist/components/EzFlow/EzFlowControls.d.ts +5 -0
- package/dist/components/EzFlow/EzFlowEdge.d.ts +5 -0
- package/dist/components/EzFlow/EzFlowHeader.d.ts +6 -0
- package/dist/components/EzFlow/EzFlowToolbox.d.ts +6 -0
- package/dist/components/EzFlow/EzWorkflow.d.ts +5 -0
- package/dist/components/EzFlow/EzWorkflowPerformance.d.ts +3 -0
- package/dist/components/EzFlow/EzWorkflowServiceAdapters.d.ts +24 -0
- package/dist/components/EzFlow/EzWorkflowValidation.d.ts +95 -0
- package/dist/components/EzFlow/index.d.ts +13 -0
- package/dist/components/EzFlow/nodes/ActionNode.d.ts +3 -0
- package/dist/components/EzFlow/nodes/ApprovalNode.d.ts +3 -0
- package/dist/components/EzFlow/nodes/DecisionNode.d.ts +3 -0
- package/dist/components/EzFlow/nodes/DelayNode.d.ts +3 -0
- package/dist/components/EzFlow/nodes/EndNode.d.ts +3 -0
- package/dist/components/EzFlow/nodes/GroupNode.d.ts +3 -0
- package/dist/components/EzFlow/nodes/LoopNode.d.ts +3 -0
- package/dist/components/EzFlow/nodes/RequestNode.d.ts +3 -0
- package/dist/components/EzFlow/nodes/StartNode.d.ts +3 -0
- package/dist/components/EzFlow/nodes/index.d.ts +9 -0
- package/dist/components/EzKanban/EzKanban.types.d.ts +808 -0
- package/dist/components/EzKanban/components/CardEditorModal.d.ts +23 -0
- package/dist/components/EzKanban/components/EzKanbanErrorFallback.d.ts +1 -0
- package/dist/components/EzKanban/components/FilterPopover.d.ts +10 -0
- package/dist/components/EzKanban/components/KanbanBoard.d.ts +59 -0
- package/dist/components/EzKanban/components/KanbanCard.d.ts +46 -0
- package/dist/components/EzKanban/components/KanbanColumn.d.ts +55 -0
- package/dist/components/EzKanban/components/KanbanSwimlane.d.ts +45 -0
- package/dist/components/EzKanban/components/KanbanToolbar.d.ts +41 -0
- package/dist/components/EzKanban/exports.d.ts +4 -0
- package/dist/components/EzKanban/hooks/useKanbanCards.d.ts +36 -0
- package/dist/components/EzKanban/hooks/useKanbanColumns.d.ts +27 -0
- package/dist/components/EzKanban/hooks/useKanbanDragDrop.d.ts +31 -0
- package/dist/components/EzKanban/hooks/useKanbanFilters.d.ts +23 -0
- package/dist/components/EzKanban/hooks/useKanbanState.d.ts +79 -0
- package/dist/components/EzKanban/hooks/useKanbanSwimlanes.d.ts +27 -0
- package/dist/components/EzKanban/hooks/useKanbanVirtualization.d.ts +16 -0
- package/dist/components/EzKanban/index.d.ts +51 -0
- package/dist/components/EzKanban/services/KanbanService.d.ts +31 -0
- package/dist/components/EzKanban/state/kanban.store.d.ts +33 -0
- package/dist/components/EzKanban/useEzKanban.d.ts +87 -0
- package/dist/components/EzKanban/views/KanbanTimelineView.d.ts +15 -0
- package/dist/components/EzLayout/Authentication/AuthSlider.d.ts +13 -0
- package/dist/components/EzLayout/Authentication/InputPassword.d.ts +7 -0
- package/dist/components/EzLayout/Authentication/SignInForm.d.ts +21 -0
- package/dist/components/EzLayout/Authentication/SignUpForm.d.ts +20 -0
- package/dist/components/EzLayout/EzHeader.d.ts +48 -0
- package/dist/components/EzLayout/EzLanguageSwitcher.d.ts +4 -0
- package/dist/components/EzLayout/EzLayout.types.d.ts +261 -0
- package/dist/components/EzLayout/EzOrganizationSwitcher.d.ts +14 -0
- package/dist/components/EzLayout/EzSidebar.d.ts +24 -0
- package/dist/components/EzLayout/EzThemeColorChanger.d.ts +9 -0
- package/dist/components/EzLayout/EzThemeSwitcher.d.ts +8 -0
- package/dist/components/EzLayout/EzUserProfile.d.ts +27 -0
- package/dist/components/EzLayout/components/EzSidebarFooter.d.ts +8 -0
- package/dist/components/EzLayout/components/EzSidebarNav.d.ts +10 -0
- package/dist/components/EzLayout/components/EzSidebarNavItem.d.ts +11 -0
- package/dist/components/EzLayout/components/MainContent.d.ts +13 -0
- package/dist/components/EzLayout/hooks/useLayoutImperative.d.ts +17 -0
- package/dist/components/EzLayout/hooks/useLayoutState.d.ts +25 -0
- package/dist/components/EzLayout/index.d.ts +23 -0
- package/dist/components/EzLayout/useEzLayout.d.ts +34 -0
- package/dist/components/EzScheduler/EzScheduler.types.d.ts +1252 -0
- package/dist/components/EzScheduler/EzSchedulerToolbar.d.ts +117 -0
- package/dist/components/EzScheduler/components/EzEventModal.d.ts +23 -0
- package/dist/components/EzScheduler/components/EzOverlapAlert.d.ts +12 -0
- package/dist/components/EzScheduler/components/EzQuickInfoPopup.d.ts +22 -0
- package/dist/components/EzScheduler/components/EzResourceSidebar.d.ts +33 -0
- package/dist/components/EzScheduler/components/EzSchedulerContent.d.ts +111 -0
- package/dist/components/EzScheduler/components/EzSchedulerQuickAdd.d.ts +17 -0
- package/dist/components/EzScheduler/components/RecurrenceEditor.d.ts +7 -0
- package/dist/components/EzScheduler/components/SchedulerLoadingSpinner.d.ts +2 -0
- package/dist/components/EzScheduler/components/dnd/DraggableEvent.d.ts +24 -0
- package/dist/components/EzScheduler/components/dnd/DroppableSlot.d.ts +19 -0
- package/dist/components/EzScheduler/hooks/useRecurrence.d.ts +2 -0
- package/dist/components/EzScheduler/hooks/useSchedulerEventHandlers.d.ts +15 -0
- package/dist/components/EzScheduler/hooks/useSchedulerEvents.d.ts +27 -0
- package/dist/components/EzScheduler/hooks/useSchedulerImperative.d.ts +19 -0
- package/dist/components/EzScheduler/hooks/useSchedulerNavigation.d.ts +9 -0
- package/dist/components/EzScheduler/hooks/useSchedulerResources.d.ts +10 -0
- package/dist/components/EzScheduler/hooks/useSchedulerState.d.ts +14 -0
- package/dist/components/EzScheduler/hooks/useSchedulerVirtualization.d.ts +9 -0
- package/dist/components/EzScheduler/index.d.ts +43 -0
- package/dist/components/EzScheduler/models/EventSettings.d.ts +11 -0
- package/dist/components/EzScheduler/models/View.d.ts +49 -0
- package/dist/components/EzScheduler/models/index.d.ts +2 -0
- package/dist/components/EzScheduler/services/AttendeeService.d.ts +15 -0
- package/dist/components/EzScheduler/services/AuditService.d.ts +15 -0
- package/dist/components/EzScheduler/services/CollisionDetectionService.d.ts +19 -0
- package/dist/components/EzScheduler/services/DragAndDropService.d.ts +16 -0
- package/dist/components/EzScheduler/services/HistoryService.d.ts +31 -0
- package/dist/components/EzScheduler/services/ICalendarImportService.d.ts +16 -0
- package/dist/components/EzScheduler/services/PrintService.d.ts +7 -0
- package/dist/components/EzScheduler/services/RecurrenceEngine.d.ts +7 -0
- package/dist/components/EzScheduler/services/ReminderService.d.ts +17 -0
- package/dist/components/EzScheduler/services/SchedulerService.d.ts +71 -0
- package/dist/components/EzScheduler/services/SearchService.d.ts +11 -0
- package/dist/components/EzScheduler/services/SecurityService.d.ts +25 -0
- package/dist/components/EzScheduler/services/TimezoneService.d.ts +20 -0
- package/dist/components/EzScheduler/services/VirtualScrollingService.d.ts +34 -0
- package/dist/components/EzScheduler/state/scheduler.store.d.ts +27 -0
- package/dist/components/EzScheduler/templates/CellTemplate.d.ts +42 -0
- package/dist/components/EzScheduler/templates/EditorTemplate.d.ts +32 -0
- package/dist/components/EzScheduler/templates/HeaderTemplate.d.ts +36 -0
- package/dist/components/EzScheduler/useEzScheduler.d.ts +104 -0
- package/dist/components/EzScheduler/utils/createDragConstraint.d.ts +7 -0
- package/dist/components/EzScheduler/utils/getWeekNumber.d.ts +8 -0
- package/dist/components/EzScheduler/utils/sanitizeHtml.d.ts +18 -0
- package/dist/components/EzScheduler/views/AgendaView.d.ts +28 -0
- package/dist/components/EzScheduler/views/DayWeekView.d.ts +177 -0
- package/dist/components/EzScheduler/views/MonthView.d.ts +60 -0
- package/dist/components/EzScheduler/views/TimelineView.d.ts +116 -0
- package/dist/components/EzSignature/EzSignature.d.ts +42 -0
- package/dist/components/EzSignature/EzSignature.types.d.ts +132 -0
- package/dist/components/EzSignature/index.d.ts +2 -0
- package/dist/components/EzTable/EzColumnMenu.d.ts +7 -0
- package/dist/components/EzTable/EzDateFilterTree.d.ts +7 -0
- package/dist/components/EzTable/EzExcelFilter.d.ts +8 -0
- package/dist/components/EzTable/EzFilterBuilder.d.ts +12 -0
- package/dist/components/EzTable/EzGroupingPanel.d.ts +9 -0
- package/dist/components/EzTable/EzHeaderContextMenu.d.ts +8 -0
- package/dist/components/EzTable/EzPagination.d.ts +19 -0
- package/dist/components/EzTable/EzTable.types.d.ts +1 -0
- package/dist/components/EzTable/EzTableEditDialog.d.ts +15 -0
- package/dist/components/EzTable/EzTableFooter.d.ts +10 -0
- package/dist/components/EzTable/EzTableOverlays.d.ts +11 -0
- package/dist/components/EzTable/EzTableStatusBar.d.ts +10 -0
- package/dist/components/EzTable/EzTableToolbar.d.ts +60 -0
- package/dist/components/EzTable/SmartCell.d.ts +7 -0
- package/dist/components/EzTable/components/AdvancedColumnFilter.d.ts +16 -0
- package/dist/components/EzTable/components/BooleanFilterSection.d.ts +7 -0
- package/dist/components/EzTable/components/EzDraggableHeader.d.ts +10 -0
- package/dist/components/EzTable/components/EzHeaderDragPreview.d.ts +7 -0
- package/dist/components/EzTable/components/EzTableBodySection.d.ts +72 -0
- package/dist/components/EzTable/components/EzTableCell.d.ts +46 -0
- package/dist/components/EzTable/components/EzTableHeaderSection.d.ts +23 -0
- package/dist/components/EzTable/components/EzTablePaginationSection.d.ts +31 -0
- package/dist/components/EzTable/components/EzTableRow.d.ts +58 -0
- package/dist/components/EzTable/components/FilterActionButtons.d.ts +16 -0
- package/dist/components/EzTable/components/FilterRuleSelect.d.ts +26 -0
- package/dist/components/EzTable/components/SelectAllCheckbox.d.ts +21 -0
- package/dist/components/EzTable/components/SelectFilterSection.d.ts +18 -0
- package/dist/components/EzTable/components/VirtualizedFilterList.d.ts +21 -0
- package/dist/components/EzTable/constants/filterOptions.d.ts +47 -0
- package/dist/components/EzTable/context/EzTableContext.d.ts +10 -0
- package/dist/components/EzTable/context/TableConfigContext.d.ts +13 -0
- package/dist/components/EzTable/context/TableStore.d.ts +17 -0
- package/dist/components/EzTable/filterUtils.d.ts +5 -0
- package/dist/components/EzTable/hooks/useAutoFit.d.ts +4 -0
- package/dist/components/EzTable/hooks/useCellEventHandlers.d.ts +16 -0
- package/dist/components/EzTable/hooks/useColumnSizeVars.d.ts +6 -0
- package/dist/components/EzTable/hooks/useContainerResize.d.ts +11 -0
- package/dist/components/EzTable/hooks/useDialogStateInitialization.d.ts +8 -0
- package/dist/components/EzTable/hooks/useFilterSelection.d.ts +12 -0
- package/dist/components/EzTable/hooks/useTableFiltering.d.ts +23 -0
- package/dist/components/EzTable/hooks/useTableHistory.d.ts +87 -0
- package/dist/components/EzTable/hooks/useTableImperative.d.ts +42 -0
- package/dist/components/EzTable/hooks/useTableSelection.d.ts +32 -0
- package/dist/components/EzTable/hooks/useTableState.d.ts +33 -0
- package/dist/components/EzTable/hooks/useTableVirtualization.d.ts +35 -0
- package/dist/components/EzTable/index.d.ts +54 -0
- package/dist/components/EzTable/renderers/index.d.ts +6 -0
- package/dist/components/EzTable/services/TableService.d.ts +29 -0
- package/dist/components/EzTable/types/EzTableColumn.types.d.ts +146 -0
- package/dist/components/EzTable/types/EzTableEdit.types.d.ts +58 -0
- package/dist/components/EzTable/types/EzTableFilter.types.d.ts +50 -0
- package/dist/components/EzTable/types/EzTableProps.d.ts +750 -0
- package/dist/components/EzTable/types/index.d.ts +4 -0
- package/dist/components/EzTable/useEzTable.d.ts +17 -0
- package/dist/components/EzTable/utils/SizingUtils.d.ts +11 -0
- package/dist/components/EzTable/utils/TextMeasurer.d.ts +1 -0
- package/dist/components/EzTable/utils/TruncatedTooltip.d.ts +7 -0
- package/dist/components/EzTable/utils/columnTypeDetector.d.ts +5 -0
- package/dist/components/EzTable/utils/filterTypeGuards.d.ts +3 -0
- package/dist/components/EzTable/utils/index.d.ts +1 -0
- package/dist/components/EzTreeView/EzTreeView.types.d.ts +364 -0
- package/dist/components/EzTreeView/EzTreeViewItem.d.ts +89 -0
- package/dist/components/EzTreeView/EzVirtualTree.d.ts +84 -0
- package/dist/components/EzTreeView/components/EzTreeViewLoadingSpinner.d.ts +2 -0
- package/dist/components/EzTreeView/hooks/useTreeDragDrop.d.ts +31 -0
- package/dist/components/EzTreeView/hooks/useTreeExpansion.d.ts +21 -0
- package/dist/components/EzTreeView/hooks/useTreeImperative.d.ts +28 -0
- package/dist/components/EzTreeView/hooks/useTreeSelection.d.ts +31 -0
- package/dist/components/EzTreeView/hooks/useTreeState.d.ts +21 -0
- package/dist/components/EzTreeView/hooks/useTreeVirtualization.d.ts +18 -0
- package/dist/components/EzTreeView/index.d.ts +40 -0
- package/dist/components/EzTreeView/services/TreeService.d.ts +11 -0
- package/dist/components/EzTreeView/useEzTreeView.d.ts +50 -0
- package/dist/components/EzTreeView/utils/treeUtils.d.ts +17 -0
- package/dist/components/shared/components/EzErrorBoundary.d.ts +18 -0
- package/dist/components/shared/components/EzLayoutErrorFallback.d.ts +2 -0
- package/dist/components/shared/components/EzLoadingSpinner.d.ts +8 -0
- package/dist/components/shared/components/EzSchedulerErrorFallback.d.ts +2 -0
- package/dist/components/shared/components/EzSortableList.d.ts +12 -0
- package/dist/components/shared/components/EzTableErrorFallback.d.ts +2 -0
- package/dist/components/shared/components/EzTreeViewErrorFallback.d.ts +2 -0
- package/dist/components/ui/avatar.d.ts +10 -0
- package/dist/components/ui/badge.d.ts +9 -0
- package/dist/components/ui/breadcrumb.d.ts +19 -0
- package/dist/components/ui/button.d.ts +13 -0
- package/dist/components/ui/calendar.d.ts +15 -0
- package/dist/components/ui/card.d.ts +10 -0
- package/dist/components/ui/checkbox.d.ts +7 -0
- package/dist/components/ui/combobox.d.ts +19 -0
- package/dist/components/ui/command.d.ts +78 -0
- package/dist/components/ui/context-menu.d.ts +27 -0
- package/dist/components/ui/date-time-picker.d.ts +14 -0
- package/dist/components/ui/dropdown-menu.d.ts +31 -0
- package/dist/components/ui/index.d.ts +27 -0
- package/dist/components/ui/input.d.ts +5 -0
- package/dist/components/ui/label.d.ts +9 -0
- package/dist/components/ui/modal.d.ts +9 -0
- package/dist/components/ui/password-input.d.ts +5 -0
- package/dist/components/ui/popover.d.ts +10 -0
- package/dist/components/ui/progress.d.ts +7 -0
- package/dist/components/ui/radio-group.d.ts +5 -0
- package/dist/components/ui/resizable.d.ts +8 -0
- package/dist/components/ui/scroll-area.d.ts +5 -0
- package/dist/components/ui/select.d.ts +26 -0
- package/dist/components/ui/skeleton.d.ts +2 -0
- package/dist/components/ui/switch.d.ts +6 -0
- package/dist/components/ui/table.d.ts +10 -0
- package/dist/components/ui/tabs.d.ts +22 -0
- package/dist/components/ui/textarea.d.ts +5 -0
- package/dist/components/ui/tooltip.d.ts +10 -0
- package/dist/date-time-picker-Bs-7XzHD.cjs +1 -0
- package/dist/date-time-picker-fUzf4TnU.js +127 -0
- package/dist/dropdown-menu-BRP0tyR_.cjs +1 -0
- package/dist/dropdown-menu-B_7_K13o.js +78 -0
- package/dist/ezux.css +2 -1
- package/dist/flow.cjs +1 -0
- package/dist/flow.d.ts +2 -0
- package/dist/flow.es.js +2 -0
- package/dist/index.cjs +3 -12
- package/dist/index.d.ts +66 -6404
- package/dist/index.es.js +229 -1041
- package/dist/input-CYlvlbF7.cjs +1 -0
- package/dist/input-Cj3sQK3M.js +14 -0
- package/dist/kanban.cjs +1 -1
- package/dist/kanban.d.ts +2 -1343
- package/dist/kanban.es.js +4 -17
- package/dist/label-BGgvoZWD.cjs +1 -0
- package/dist/label-DWEV--5W.js +16 -0
- package/dist/layout.cjs +1 -1
- package/dist/layout.d.ts +2 -690
- package/dist/layout.es.js +2 -20
- package/dist/lib/perfect-freehand.d.ts +221 -0
- package/dist/lib/utils.d.ts +2 -0
- package/dist/mock-services.cjs +1 -0
- package/dist/mock-services.d.ts +8 -0
- package/dist/mock-services.es.js +161 -0
- package/dist/popover-D1akYj0W.js +17 -0
- package/dist/popover-wZKNvYM5.cjs +1 -0
- package/dist/scheduler.cjs +1 -1
- package/dist/scheduler.d.ts +2 -1430
- package/dist/scheduler.es.js +2 -11
- package/dist/scroll-area-BJs87d45.js +35 -0
- package/dist/scroll-area-DSkE2KB_.cjs +1 -0
- package/dist/select-D4tFaSai.js +43 -0
- package/dist/select-sVieKbLu.cjs +1 -0
- package/dist/shared/components/AnimatedText.d.ts +44 -0
- package/dist/shared/components/BaseCell.d.ts +14 -0
- package/dist/shared/components/BooleanRenderer.d.ts +34 -0
- package/dist/shared/components/ChartRenderer.d.ts +19 -0
- package/dist/shared/components/DeleteConfirmationModal.d.ts +11 -0
- package/dist/shared/components/EzContextMenu.d.ts +12 -0
- package/dist/shared/components/EzNotificationDropdown.d.ts +2 -0
- package/dist/shared/components/HighlightText.d.ts +4 -0
- package/dist/shared/components/Modal.d.ts +13 -0
- package/dist/shared/components/NotificationPanel.d.ts +2 -0
- package/dist/shared/components/PrimitiveRenderer.d.ts +39 -0
- package/dist/shared/components/SearchableSelect.d.ts +13 -0
- package/dist/shared/components/SelectRenderer.d.ts +33 -0
- package/dist/shared/components/StatusBadge.d.ts +21 -0
- package/dist/shared/components/TooltipWrapper.d.ts +12 -0
- package/dist/shared/components/index.d.ts +9 -0
- package/dist/shared/contexts/EzProvider.d.ts +56 -0
- package/dist/shared/hooks/index.d.ts +56 -0
- package/dist/shared/hooks/useBaseComponent.d.ts +59 -0
- package/dist/shared/hooks/useComponentImperativeAPI.d.ts +11 -0
- package/dist/shared/hooks/useComponentState.d.ts +39 -0
- package/dist/shared/hooks/useCurrentTime.d.ts +6 -0
- package/dist/shared/hooks/useDataChangeEvents.d.ts +53 -0
- package/dist/shared/hooks/useDebounce.d.ts +10 -0
- package/dist/shared/hooks/useDeleteConfirmation.d.ts +9 -0
- package/dist/shared/hooks/useDialogState.d.ts +21 -0
- package/dist/shared/hooks/useDndHandlers.d.ts +19 -0
- package/dist/shared/hooks/useEditing.d.ts +107 -0
- package/dist/shared/hooks/useEventHandlers.d.ts +61 -0
- package/dist/shared/hooks/useEzTheme.d.ts +22 -0
- package/dist/shared/hooks/useFieldValidation.d.ts +24 -0
- package/dist/shared/hooks/useHistory.d.ts +13 -0
- package/dist/shared/hooks/useI18n.d.ts +8 -0
- package/dist/shared/hooks/useImperativeAPI.d.ts +8 -0
- package/dist/shared/hooks/useInitCoreServices.d.ts +5 -0
- package/dist/shared/hooks/useKeyboardNavigation.d.ts +36 -0
- package/dist/shared/hooks/useKeyboardShortcuts.d.ts +14 -0
- package/dist/shared/hooks/useLifecycleEvents.d.ts +22 -0
- package/dist/shared/hooks/useLoadingState.d.ts +17 -0
- package/dist/shared/hooks/useMediaQuery.d.ts +6 -0
- package/dist/shared/hooks/useNotificationService.d.ts +8 -0
- package/dist/shared/hooks/usePerformanceMonitor.d.ts +22 -0
- package/dist/shared/hooks/useRowSelectionEvents.d.ts +44 -0
- package/dist/shared/hooks/useSelection.d.ts +73 -0
- package/dist/shared/hooks/useService.d.ts +12 -0
- package/dist/shared/hooks/useServiceState.d.ts +1 -0
- package/dist/shared/hooks/useStateChangeEvents.d.ts +61 -0
- package/dist/shared/hooks/useTheme.d.ts +13 -0
- package/dist/shared/hooks/useVirtualization.d.ts +85 -0
- package/dist/shared/services/BaseService.d.ts +57 -0
- package/dist/shared/services/ContextMenuService.d.ts +58 -0
- package/dist/shared/services/ExportService.d.ts +35 -0
- package/dist/shared/services/FocusManagerService.d.ts +33 -0
- package/dist/shared/services/HierarchyService.d.ts +43 -0
- package/dist/shared/services/I18nService.d.ts +84 -0
- package/dist/shared/services/LayoutService.d.ts +80 -0
- package/dist/shared/services/NotificationService.d.ts +44 -0
- package/dist/shared/services/PersistenceService.d.ts +69 -0
- package/dist/shared/services/ServiceRegistry.d.ts +52 -0
- package/dist/shared/services/ThemeService.d.ts +49 -0
- package/dist/shared/services/VirtualizationService.d.ts +51 -0
- package/dist/shared/state/store.d.ts +10 -0
- package/dist/shared/themes.d.ts +25 -0
- package/dist/shared/types/BaseProps.d.ts +17 -0
- package/dist/shared/types/common.d.ts +373 -0
- package/dist/shared/types/index.d.ts +2 -0
- package/dist/shared/utils/canvasUtils.d.ts +16 -0
- package/dist/shared/utils/commonUtils.d.ts +28 -0
- package/dist/shared/utils/csvUtils.d.ts +7 -0
- package/dist/shared/utils/dateUtils.d.ts +5 -0
- package/dist/shared/utils/dndUtils.d.ts +16 -0
- package/dist/shared/utils/formatUtils.d.ts +20 -0
- package/dist/shared/utils/imperativeApiUtils.d.ts +36 -0
- package/dist/shared/utils/index.d.ts +11 -0
- package/dist/shared/utils/renderUtils.d.ts +6 -0
- package/dist/shared/utils/serviceUtils.d.ts +10 -0
- package/dist/shared/utils/styleUtils.d.ts +121 -0
- package/dist/shared/utils/validationUtils.d.ts +16 -0
- package/dist/signature.cjs +1 -1
- package/dist/signature.d.ts +2 -410
- package/dist/signature.es.js +2 -4
- package/dist/table.cjs +1 -1
- package/dist/table.d.ts +2 -1059
- package/dist/table.es.js +2 -17
- package/dist/theme-vars.css +143 -135
- package/dist/tooltip-B1wC9m05.js +16 -0
- package/dist/tooltip-Qmzrg5u5.cjs +1 -0
- package/dist/treeview.cjs +1 -1
- package/dist/treeview.d.ts +2 -656
- package/dist/treeview.es.js +2 -954
- package/dist/useComponentState-DiSFLYju.js +57 -0
- package/dist/useComponentState-Wcz6pjd6.cjs +1 -0
- package/dist/useImperativeAPI-Dbx2hMTb.js +7 -0
- package/dist/useImperativeAPI-VrgLwXEO.cjs +1 -0
- package/dist/useInitCoreServices-CuBrviDM.js +40 -0
- package/dist/useInitCoreServices-DlALVDNx.cjs +1 -0
- package/dist/useService-CnCBGG3G.js +10 -0
- package/dist/useService-CyF782jv.cjs +1 -0
- package/dist/useServiceState-CkrJZm1D.js +21 -0
- package/dist/useServiceState-PyYQWxHi.cjs +1 -0
- package/package.json +76 -56
- package/dist/EzContextMenu-B6HBUjWv.cjs +0 -5
- package/dist/EzContextMenu-BSA_B6Pr.js +0 -3500
- package/dist/EzErrorBoundary-CEdz_hDo.cjs +0 -41
- package/dist/EzErrorBoundary-D4NBadES.js +0 -3727
- package/dist/EzEventModal-BUMp_BFi.js +0 -689
- package/dist/EzEventModal-xzHfzi0O.cjs +0 -1
- package/dist/EzGroupingPanel-BUsIYDRi.js +0 -143
- package/dist/EzGroupingPanel-D0HdSomF.cjs +0 -1
- package/dist/EzSchedulerQuickAdd-C653LTGh.js +0 -118
- package/dist/EzSchedulerQuickAdd-UnOWCpJd.cjs +0 -1
- package/dist/EzSchedulerToolbar-C-5OdRY6.cjs +0 -1
- package/dist/EzSchedulerToolbar-CO5jjDQg.js +0 -240
- package/dist/EzSignature-BaNesxwC.cjs +0 -1
- package/dist/EzSignature-D4EYwo9W.js +0 -419
- package/dist/EzTableEditDialog-Cd948V1C.js +0 -63
- package/dist/EzTableEditDialog-NiOubaMT.cjs +0 -1
- package/dist/EzTableFooter-CWjfGCjL.cjs +0 -1
- package/dist/EzTableFooter-DveD12RC.js +0 -54
- package/dist/EzTableToolbar-Bz8UWv6j.js +0 -246
- package/dist/EzTableToolbar-DHE7Bb1R.cjs +0 -1
- package/dist/HighlightText-8D6KEyBw.js +0 -68
- package/dist/HighlightText-LtZmzCle.cjs +0 -1
- package/dist/NotificationPanel-D2Y-_ahk.js +0 -68
- package/dist/NotificationPanel-zLxrtTGf.cjs +0 -1
- package/dist/TooltipWrapper-BrRTi5EJ.js +0 -2021
- package/dist/TooltipWrapper-DWts4bAI.cjs +0 -1
- package/dist/avatar-BeK0E4mn.js +0 -41
- package/dist/avatar-DZAaTK2f.cjs +0 -1
- package/dist/bell-DAz8P0BR.js +0 -14
- package/dist/bell-DOX2y38e.cjs +0 -1
- package/dist/calendar-BMZ8ddOf.cjs +0 -1
- package/dist/calendar-Dy3rVMW2.js +0 -90
- package/dist/checkbox-B0lGHUyy.cjs +0 -1
- package/dist/checkbox-boJRxICT.js +0 -46
- package/dist/chevron-down-C3s8jU6B.js +0 -5
- package/dist/chevron-down-DZVL7VHW.cjs +0 -1
- package/dist/chevron-left-BFr8XZyF.js +0 -5
- package/dist/chevron-left-HWhRo6IH.cjs +0 -1
- package/dist/circle-alert-77QqFR-z.cjs +0 -1
- package/dist/circle-alert-B2AMDd8N.js +0 -9
- package/dist/circle-x-Cv7bfIC_.js +0 -9
- package/dist/circle-x-DwVXxhXr.cjs +0 -1
- package/dist/date-time-picker-DTxHdPgQ.cjs +0 -1
- package/dist/date-time-picker-Dj2eftJI.js +0 -1636
- package/dist/download-0ZhO2XaW.cjs +0 -1
- package/dist/download-panVHmk6.js +0 -9
- package/dist/ellipsis-CuqNthAj.js +0 -9
- package/dist/ellipsis-CzlqJf-i.cjs +0 -1
- package/dist/grip-vertical-CSyDKBul.js +0 -12
- package/dist/grip-vertical-DZNBW1Dn.cjs +0 -1
- package/dist/index-B3ipEEhH.cjs +0 -2
- package/dist/index-BPPb7bcs.js +0 -3220
- package/dist/index-BQKw_Vho.js +0 -9604
- package/dist/index-C5STgBSy.js +0 -5203
- package/dist/index-C6NfgycP.js +0 -4644
- package/dist/index-D4f2ZdrG.cjs +0 -2
- package/dist/index-DUY1SqMo.cjs +0 -1
- package/dist/index-c1Zg--dt.cjs +0 -7
- package/dist/input-BgM_la4k.cjs +0 -1
- package/dist/input-jYQ5VKNR.js +0 -21
- package/dist/isBefore-C3Y_wbk3.js +0 -15
- package/dist/isBefore-Cp1ttk6q.cjs +0 -1
- package/dist/label-ClOW9UCt.js +0 -55
- package/dist/label-Dx6oDB-X.cjs +0 -1
- package/dist/layers-BA4i1fYX.js +0 -27
- package/dist/layers-xSPd-hz3.cjs +0 -1
- package/dist/popover-BJq1CKmi.cjs +0 -1
- package/dist/popover-Cmlb7w3R.js +0 -341
- package/dist/scroll-area-9fwpVNxT.js +0 -573
- package/dist/scroll-area-CwwZSSA4.cjs +0 -1
- package/dist/select-GxA46anr.cjs +0 -1
- package/dist/select-mDCun_IR.js +0 -35
- package/dist/settings-CvyjK75A.js +0 -31
- package/dist/settings-DKPknrt8.cjs +0 -1
- package/dist/sortable.esm-CsRPuXyD.cjs +0 -1
- package/dist/sortable.esm-CzMCDPet.js +0 -477
- package/dist/tooltip-B41iztKT.cjs +0 -1
- package/dist/tooltip-BCtrEe0z.js +0 -490
- package/dist/useComponentState-C87xXa5d.js +0 -64
- package/dist/useComponentState-DDgGbBXv.cjs +0 -1
- package/dist/useImperativeAPI-DXmCQvPL.js +0 -7
- package/dist/useImperativeAPI-DbZ3owSV.cjs +0 -1
- package/dist/useInitCoreServices-CwXv2p4S.cjs +0 -1
- package/dist/useInitCoreServices-D1WaWlaI.js +0 -3929
- package/dist/useService-8OoezWr8.cjs +0 -1
- package/dist/useService-BUi3uAqE.js +0 -10
- package/dist/useServiceState-BjpCjUn2.cjs +0 -1
- package/dist/useServiceState-VE-viK8b.js +0 -24
|
@@ -0,0 +1,750 @@
|
|
|
1
|
+
import { default as React } from 'react';
|
|
2
|
+
import { Row, TableState, Updater, ColumnDef, Table } from '@tanstack/react-table';
|
|
3
|
+
import { SharedBaseProps } from '../../../shared/types/BaseProps';
|
|
4
|
+
import { ToolbarItemType, ToolbarItem, SelectionSettings, EditSettings } from './EzTableEdit.types';
|
|
5
|
+
import { FilterSettings, SearchSettings, SortSettings, TextWrapSettings } from './EzTableFilter.types';
|
|
6
|
+
import { FilterGroup } from '../../../shared/types/common';
|
|
7
|
+
export interface EzTableChanges<TData> {
|
|
8
|
+
addedRecords: TData[];
|
|
9
|
+
changedRecords: TData[];
|
|
10
|
+
deletedRecords: TData[];
|
|
11
|
+
}
|
|
12
|
+
export interface EzTableValidateFieldParams<TData extends object> {
|
|
13
|
+
field: keyof TData | string;
|
|
14
|
+
value: unknown;
|
|
15
|
+
row?: TData;
|
|
16
|
+
rowIndex?: number;
|
|
17
|
+
column?: ColumnDef<TData>;
|
|
18
|
+
table?: Table<TData>;
|
|
19
|
+
}
|
|
20
|
+
export interface EzTableDataRequestParams {
|
|
21
|
+
pageIndex?: number;
|
|
22
|
+
pageSize?: number;
|
|
23
|
+
sorting?: import('@tanstack/react-table').SortingState;
|
|
24
|
+
filters?: import('@tanstack/react-table').ColumnFiltersState;
|
|
25
|
+
globalFilter?: EzGlobalFilterState;
|
|
26
|
+
query?: Record<string, unknown>;
|
|
27
|
+
}
|
|
28
|
+
export interface EzTableFilterEvent<TData extends object> {
|
|
29
|
+
columns: import('@tanstack/react-table').ColumnFiltersState;
|
|
30
|
+
table?: Table<TData>;
|
|
31
|
+
}
|
|
32
|
+
export interface EzTableContextMenuItemClickArgs<TData extends object> {
|
|
33
|
+
action: string;
|
|
34
|
+
row?: Row<TData>;
|
|
35
|
+
data?: TData;
|
|
36
|
+
originalEvent?: React.MouseEvent;
|
|
37
|
+
}
|
|
38
|
+
/**
|
|
39
|
+
* Custom CSS class names for internal table elements.
|
|
40
|
+
* @group Models
|
|
41
|
+
*/
|
|
42
|
+
export interface EzTableClassNames<TData = unknown> {
|
|
43
|
+
/** Root container class. @group Properties */
|
|
44
|
+
root?: string;
|
|
45
|
+
/** Header class. @group Properties */
|
|
46
|
+
header?: string;
|
|
47
|
+
/** Body class. @group Properties */
|
|
48
|
+
body?: string;
|
|
49
|
+
/** Row class or function. @group Properties */
|
|
50
|
+
row?: string | ((row: Row<TData>) => string);
|
|
51
|
+
/** Cell class or function. @group Properties */
|
|
52
|
+
cell?: string | ((cell: unknown) => string);
|
|
53
|
+
/** Footer class. @group Properties */
|
|
54
|
+
footer?: string;
|
|
55
|
+
}
|
|
56
|
+
/**
|
|
57
|
+
* Custom icons for table elements.
|
|
58
|
+
* @group Models
|
|
59
|
+
*/
|
|
60
|
+
export interface EzTableIcons {
|
|
61
|
+
/** Sorting ascending icon. @group Properties */
|
|
62
|
+
sortAsc?: React.ReactNode;
|
|
63
|
+
/** Sorting descending icon. @group Properties */
|
|
64
|
+
sortDesc?: React.ReactNode;
|
|
65
|
+
/** Filter icon. @group Properties */
|
|
66
|
+
filter?: React.ReactNode;
|
|
67
|
+
/** Context menu trigger icon. @group Properties */
|
|
68
|
+
contextMenu?: React.ReactNode;
|
|
69
|
+
/** Expanded row/group icon. @group Properties */
|
|
70
|
+
expanded?: React.ReactNode;
|
|
71
|
+
/** Collapsed row/group icon. @group Properties */
|
|
72
|
+
collapsed?: React.ReactNode;
|
|
73
|
+
/** First page icon. @group Properties */
|
|
74
|
+
firstPage?: React.ReactNode;
|
|
75
|
+
/** Last page icon. @group Properties */
|
|
76
|
+
lastPage?: React.ReactNode;
|
|
77
|
+
/** Next page icon. @group Properties */
|
|
78
|
+
nextPage?: React.ReactNode;
|
|
79
|
+
/** Previous page icon. @group Properties */
|
|
80
|
+
previousPage?: React.ReactNode;
|
|
81
|
+
}
|
|
82
|
+
/**
|
|
83
|
+
* Localization strings for the table component.
|
|
84
|
+
* @group Models
|
|
85
|
+
*/
|
|
86
|
+
export interface EzTableLocalization {
|
|
87
|
+
/** "No records to display" label. @group Properties */
|
|
88
|
+
noRowsLabel?: string;
|
|
89
|
+
/** "Loading..." label. @group Properties */
|
|
90
|
+
loadingLabel?: string;
|
|
91
|
+
/** Column menu label. @group Properties */
|
|
92
|
+
columnMenuLabel?: string;
|
|
93
|
+
/** "Contains" filter operator label. @group Properties */
|
|
94
|
+
filterOperatorContains?: string;
|
|
95
|
+
/** Next page label. @group Properties */
|
|
96
|
+
nextPage?: string;
|
|
97
|
+
/** Previous page label. @group Properties */
|
|
98
|
+
previousPage?: string;
|
|
99
|
+
/** First page label. @group Properties */
|
|
100
|
+
firstPage?: string;
|
|
101
|
+
/** Last page label. @group Properties */
|
|
102
|
+
lastPage?: string;
|
|
103
|
+
/** Search input placeholder. @group Properties */
|
|
104
|
+
searchPlaceholder?: string;
|
|
105
|
+
/** Rows per page label. @group Properties */
|
|
106
|
+
rowsPerPageLabel?: string;
|
|
107
|
+
/** Rows label. @group Properties */
|
|
108
|
+
rowsLabel?: string;
|
|
109
|
+
/** Total label. @group Properties */
|
|
110
|
+
totalLabel?: string;
|
|
111
|
+
/** Records label. @group Properties */
|
|
112
|
+
recordsLabel?: string;
|
|
113
|
+
/** Page label. @group Properties */
|
|
114
|
+
pageLabel?: string;
|
|
115
|
+
/** "of" label. @group Properties */
|
|
116
|
+
ofLabel?: string;
|
|
117
|
+
/** "Go to" label. @group Properties */
|
|
118
|
+
goToLabel?: string;
|
|
119
|
+
/** Pager status message. @group Properties */
|
|
120
|
+
pagerMessage?: string;
|
|
121
|
+
}
|
|
122
|
+
/**
|
|
123
|
+
* Custom component slots for override.
|
|
124
|
+
* @group Models
|
|
125
|
+
*/
|
|
126
|
+
export interface EzTableSlots<TData = unknown> {
|
|
127
|
+
/** Custom toolbar component. @group Properties */
|
|
128
|
+
toolbar?: React.ComponentType<unknown>;
|
|
129
|
+
/** Custom footer component. @group Properties */
|
|
130
|
+
footer?: React.ComponentType<unknown>;
|
|
131
|
+
/** Custom overlay for empty state. @group Properties */
|
|
132
|
+
noRowsOverlay?: React.ComponentType<unknown>;
|
|
133
|
+
/** Custom loading overlay. @group Properties */
|
|
134
|
+
loadingOverlay?: React.ComponentType<unknown>;
|
|
135
|
+
/** Custom header component. @group Properties */
|
|
136
|
+
header?: React.ComponentType<unknown>;
|
|
137
|
+
/** Custom row component. @group Properties */
|
|
138
|
+
row?: React.ComponentType<{
|
|
139
|
+
row: Row<TData>;
|
|
140
|
+
}>;
|
|
141
|
+
/** Custom empty record component. @group Properties */
|
|
142
|
+
emptyRecord?: React.ComponentType<unknown>;
|
|
143
|
+
/** Custom loading component. @group Properties */
|
|
144
|
+
loading?: React.ComponentType<unknown>;
|
|
145
|
+
}
|
|
146
|
+
/**
|
|
147
|
+
* Props for the EzTable component.
|
|
148
|
+
*
|
|
149
|
+
* @example
|
|
150
|
+
* ```tsx
|
|
151
|
+
* import { EzTable, useEzTable } from 'ezux';
|
|
152
|
+
*
|
|
153
|
+
* const table = useEzTable({
|
|
154
|
+
* data: [{ id: 1, name: 'John' }],
|
|
155
|
+
* columns: [{ accessorKey: 'name', header: 'Name' }]
|
|
156
|
+
* });
|
|
157
|
+
*
|
|
158
|
+
* return <EzTable table={table} />;
|
|
159
|
+
* ```
|
|
160
|
+
*/
|
|
161
|
+
export interface EzTableProps<TData extends object> extends SharedBaseProps<TData> {
|
|
162
|
+
/**
|
|
163
|
+
* The data to display in the table.
|
|
164
|
+
* Can be an array of objects or an empty array.
|
|
165
|
+
* @group Properties
|
|
166
|
+
*/
|
|
167
|
+
data: TData[];
|
|
168
|
+
/**
|
|
169
|
+
* Configuration for the table columns.
|
|
170
|
+
* Defines headers, accessors, cell rendering, and other per-column options.
|
|
171
|
+
* @group Properties
|
|
172
|
+
*/
|
|
173
|
+
columns: ColumnDef<TData>[];
|
|
174
|
+
/**
|
|
175
|
+
* Controlled state object for the table.
|
|
176
|
+
* Use this to control pagination, sorting, filtering, etc. from outside.
|
|
177
|
+
* @group Properties
|
|
178
|
+
*/
|
|
179
|
+
state?: Partial<TableState>;
|
|
180
|
+
/**
|
|
181
|
+
* Initial state object for the table.
|
|
182
|
+
* Use this to set the initial pagination, sorting, filtering, etc.
|
|
183
|
+
* @group Properties
|
|
184
|
+
*/
|
|
185
|
+
initialState?: Partial<TableState>;
|
|
186
|
+
/**
|
|
187
|
+
* Callback fired when the table state changes.
|
|
188
|
+
* @group Events
|
|
189
|
+
*/
|
|
190
|
+
onStateChange?: (updater: Updater<TableState>) => void;
|
|
191
|
+
/**
|
|
192
|
+
* Custom slots to override default internal components.
|
|
193
|
+
* @group Properties
|
|
194
|
+
*/
|
|
195
|
+
slots?: EzTableSlots<TData>;
|
|
196
|
+
/**
|
|
197
|
+
* Props to pass to the custom slots.
|
|
198
|
+
* @group Properties
|
|
199
|
+
*/
|
|
200
|
+
slotProps?: Record<string, unknown>;
|
|
201
|
+
/**
|
|
202
|
+
* Custom class names for internal table elements.
|
|
203
|
+
* Use strict mode class names or functions for dynamic styling.
|
|
204
|
+
* @group Properties
|
|
205
|
+
*/
|
|
206
|
+
classNames?: EzTableClassNames<TData>;
|
|
207
|
+
/**
|
|
208
|
+
* Custom icons for table elements (sort, filter, pagination, etc.).
|
|
209
|
+
* @group Properties
|
|
210
|
+
*/
|
|
211
|
+
icons?: EzTableIcons;
|
|
212
|
+
/**
|
|
213
|
+
* Function to derive a unique ID for a row.
|
|
214
|
+
* Defaults to looking for `id` property.
|
|
215
|
+
* @group Properties
|
|
216
|
+
*/
|
|
217
|
+
getRowId?: (row: TData) => string;
|
|
218
|
+
/**
|
|
219
|
+
* Callback to process a row update before it is committed.
|
|
220
|
+
* Useful for validation or transformation.
|
|
221
|
+
* @group Events
|
|
222
|
+
*/
|
|
223
|
+
onProcessRowUpdate?: (newRow: TData, oldRow: TData) => Promise<TData>;
|
|
224
|
+
/**
|
|
225
|
+
* Alias for onDataRequest. Triggered when data needs to be fetched (e.g. pagination/sorting in server-side mode).
|
|
226
|
+
* @group Events
|
|
227
|
+
*/
|
|
228
|
+
onFetchData?: (params: EzTableDataRequestParams) => void;
|
|
229
|
+
/**
|
|
230
|
+
* Localization strings for the table (e.g. pagination labels, no rows message).
|
|
231
|
+
* @group Properties
|
|
232
|
+
*/
|
|
233
|
+
localization?: EzTableLocalization;
|
|
234
|
+
/**
|
|
235
|
+
* Estimated row height for virtualization.
|
|
236
|
+
* Increase this if your rows are taller than 48px to improve scroll performance.
|
|
237
|
+
* Default: 48
|
|
238
|
+
* @group Properties
|
|
239
|
+
*/
|
|
240
|
+
estimatedRowHeight?: number;
|
|
241
|
+
/**
|
|
242
|
+
* Progressive rendering for large datasets.
|
|
243
|
+
* Renders rows in chunks to keep the UI responsive.
|
|
244
|
+
* @group Properties
|
|
245
|
+
*/
|
|
246
|
+
progressiveRendering?: boolean;
|
|
247
|
+
/**
|
|
248
|
+
* Distance in items to prefetch during scrolling.
|
|
249
|
+
* @group Properties
|
|
250
|
+
*/
|
|
251
|
+
prefetchDistance?: number;
|
|
252
|
+
/**
|
|
253
|
+
* Number of items to render outside the visible area.
|
|
254
|
+
* Higher values reduce blank space during fast scrolling but increase memory usage.
|
|
255
|
+
* @group Properties
|
|
256
|
+
*/
|
|
257
|
+
overscanCount?: number;
|
|
258
|
+
/**
|
|
259
|
+
* Enable debug logging for virtualization.
|
|
260
|
+
* @group Properties
|
|
261
|
+
*/
|
|
262
|
+
debugVirtualization?: boolean;
|
|
263
|
+
/**
|
|
264
|
+
* Enable adaptive sizing for dynamic item heights.
|
|
265
|
+
* @group Properties
|
|
266
|
+
*/
|
|
267
|
+
adaptiveSizing?: boolean;
|
|
268
|
+
/**
|
|
269
|
+
* Scroll padding start (pixels) to offset sticky elements or top padding.
|
|
270
|
+
* @group Properties
|
|
271
|
+
*/
|
|
272
|
+
scrollPaddingStart?: number;
|
|
273
|
+
/**
|
|
274
|
+
* Scroll padding end (pixels) to offset sticky elements.
|
|
275
|
+
* @group Properties
|
|
276
|
+
*/
|
|
277
|
+
scrollPaddingEnd?: number;
|
|
278
|
+
/**
|
|
279
|
+
* Scroll margin (pixels) to apply to scroll container.
|
|
280
|
+
* @group Properties
|
|
281
|
+
*/
|
|
282
|
+
scrollMargin?: number;
|
|
283
|
+
/**
|
|
284
|
+
* Enable horizontal column virtualization.
|
|
285
|
+
* Recommended for tables with many columns (e.g. 50+).
|
|
286
|
+
* @group Properties
|
|
287
|
+
*/
|
|
288
|
+
enableColumnVirtualization?: boolean;
|
|
289
|
+
/**
|
|
290
|
+
* Number of columns after which virtualization kicks in.
|
|
291
|
+
* @group Properties
|
|
292
|
+
*/
|
|
293
|
+
columnVirtualizationThreshold?: number;
|
|
294
|
+
/**
|
|
295
|
+
* Enable Infinite Scrolling.
|
|
296
|
+
* If true, `onEndReached` will be called when the user scrolls to the bottom.
|
|
297
|
+
* @group Properties
|
|
298
|
+
*/
|
|
299
|
+
enableInfiniteScroll?: boolean;
|
|
300
|
+
/**
|
|
301
|
+
* Callback when the table is scrolled to the bottom.
|
|
302
|
+
* Used for Infinite Scroll to load more data.
|
|
303
|
+
* @group Events
|
|
304
|
+
*/
|
|
305
|
+
onEndReached?: () => void;
|
|
306
|
+
/**
|
|
307
|
+
* @deprecated Use `data` instead.
|
|
308
|
+
* @remarks Providing `dataSource` without `data` will trigger a runtime warning.
|
|
309
|
+
* @group Properties
|
|
310
|
+
*/
|
|
311
|
+
dataSource?: TData[];
|
|
312
|
+
/**
|
|
313
|
+
* Configuration for pagination.
|
|
314
|
+
* Defines page size, available page sizes, and initial page.
|
|
315
|
+
* @group Properties
|
|
316
|
+
*/
|
|
317
|
+
pageSettings?: {
|
|
318
|
+
pageSize?: number;
|
|
319
|
+
pageCount?: number;
|
|
320
|
+
currentPage?: number;
|
|
321
|
+
pageSizes?: number[];
|
|
322
|
+
};
|
|
323
|
+
/**
|
|
324
|
+
* Configuration for column aggregates (e.g. Sum, Average).
|
|
325
|
+
* Displayed in the table footer.
|
|
326
|
+
* @group Properties
|
|
327
|
+
*/
|
|
328
|
+
aggregates?: {
|
|
329
|
+
field: string;
|
|
330
|
+
type: 'Sum' | 'Average' | 'Min' | 'Max' | 'Count' | 'Custom';
|
|
331
|
+
footerTemplate?: string;
|
|
332
|
+
}[];
|
|
333
|
+
/**
|
|
334
|
+
* Text clipping mode for all columns.
|
|
335
|
+
* - `clip`: Text is clipped.
|
|
336
|
+
* - `ellipsis`: Text is truncated with an ellipsis.
|
|
337
|
+
* - `ellipsis-tooltip`: Text is truncated and a tooltip is shown on hover.
|
|
338
|
+
* @group Properties
|
|
339
|
+
*/
|
|
340
|
+
clipMode?: 'clip' | 'ellipsis' | 'ellipsis-tooltip';
|
|
341
|
+
/**
|
|
342
|
+
* Total expected rows if knowing beforehand.
|
|
343
|
+
* Crucial for server-side pagination to calculate total pages.
|
|
344
|
+
* @group Properties
|
|
345
|
+
*/
|
|
346
|
+
rowCount?: number;
|
|
347
|
+
/**
|
|
348
|
+
* Enable pagination.
|
|
349
|
+
* @group Properties
|
|
350
|
+
*/
|
|
351
|
+
pagination?: boolean;
|
|
352
|
+
/**
|
|
353
|
+
* Number of rows per page.
|
|
354
|
+
* @group Properties
|
|
355
|
+
*/
|
|
356
|
+
pageSize?: number;
|
|
357
|
+
/**
|
|
358
|
+
* Grid line configuration.
|
|
359
|
+
* @group Properties
|
|
360
|
+
*/
|
|
361
|
+
gridLines?: 'Both' | 'Horizontal' | 'Vertical' | 'None';
|
|
362
|
+
/**
|
|
363
|
+
* Enable keyboard navigation features.
|
|
364
|
+
* @group Properties
|
|
365
|
+
*/
|
|
366
|
+
allowKeyboard?: boolean;
|
|
367
|
+
/**
|
|
368
|
+
* Enable alternating row background colors (zebra striping).
|
|
369
|
+
* @group Properties
|
|
370
|
+
*/
|
|
371
|
+
enableAltRow?: boolean;
|
|
372
|
+
/**
|
|
373
|
+
* Enable row hover effect.
|
|
374
|
+
* @group Properties
|
|
375
|
+
*/
|
|
376
|
+
enableHover?: boolean;
|
|
377
|
+
/**
|
|
378
|
+
* Enable HTML sanitizer for cell content.
|
|
379
|
+
* @group Properties
|
|
380
|
+
*/
|
|
381
|
+
enableHtmlSanitizer?: boolean;
|
|
382
|
+
/**
|
|
383
|
+
* Width of the table.
|
|
384
|
+
* Accepts pixel number or CSS string (e.g. '100%').
|
|
385
|
+
* @group Properties
|
|
386
|
+
*/
|
|
387
|
+
width?: string | number;
|
|
388
|
+
/**
|
|
389
|
+
* Height of the table.
|
|
390
|
+
* Accepts pixel number or CSS string (e.g. '500px').
|
|
391
|
+
* @group Properties
|
|
392
|
+
*/
|
|
393
|
+
height?: string | number;
|
|
394
|
+
/**
|
|
395
|
+
* Fixed row height for all rows.
|
|
396
|
+
* Use this when every row has the same height for the most efficient virtualization.
|
|
397
|
+
* @group Properties
|
|
398
|
+
*/
|
|
399
|
+
rowHeight?: number;
|
|
400
|
+
/**
|
|
401
|
+
* Controls how virtualized row heights are calculated.
|
|
402
|
+
* - `fixed`: use `rowHeight` or the density-based estimate for every row.
|
|
403
|
+
* - `dynamic`: measure rendered rows so wrapped content, editors, and detail panels scroll correctly.
|
|
404
|
+
* - `auto`: use dynamic sizing when variable-height features are detected.
|
|
405
|
+
* @default "auto"
|
|
406
|
+
* @group Properties
|
|
407
|
+
*/
|
|
408
|
+
rowSizingMode?: 'auto' | 'fixed' | 'dynamic';
|
|
409
|
+
/**
|
|
410
|
+
* Configuration for row/cell selection behavior.
|
|
411
|
+
* @group Properties
|
|
412
|
+
*/
|
|
413
|
+
selectionSettings?: SelectionSettings;
|
|
414
|
+
/**
|
|
415
|
+
* Configuration for filtering behavior (UI type, mode, etc).
|
|
416
|
+
* @group Properties
|
|
417
|
+
*/
|
|
418
|
+
filterSettings?: FilterSettings;
|
|
419
|
+
/**
|
|
420
|
+
* Configuration for global search behavior.
|
|
421
|
+
* @group Properties
|
|
422
|
+
*/
|
|
423
|
+
searchSettings?: SearchSettings;
|
|
424
|
+
/**
|
|
425
|
+
* Configuration for sorting behavior.
|
|
426
|
+
* @group Properties
|
|
427
|
+
*/
|
|
428
|
+
sortSettings?: SortSettings;
|
|
429
|
+
/**
|
|
430
|
+
* Configuration for editing behavior (mode, new row position).
|
|
431
|
+
* @group Properties
|
|
432
|
+
*/
|
|
433
|
+
editSettings?: EditSettings;
|
|
434
|
+
/**
|
|
435
|
+
* Configuration for text wrapping in cells and headers.
|
|
436
|
+
* @group Properties
|
|
437
|
+
*/
|
|
438
|
+
textWrapSettings?: TextWrapSettings;
|
|
439
|
+
/**
|
|
440
|
+
* Toolbar items configuration.
|
|
441
|
+
* Accepts an array of item names (strings) or detailed item objects.
|
|
442
|
+
* @group Properties
|
|
443
|
+
*/
|
|
444
|
+
toolbar?: (ToolbarItemType | ToolbarItem)[];
|
|
445
|
+
/**
|
|
446
|
+
* Generic query parameters for server-side operations.
|
|
447
|
+
* Passed to `onDataRequest`.
|
|
448
|
+
* @group Properties
|
|
449
|
+
*/
|
|
450
|
+
query?: unknown;
|
|
451
|
+
/**
|
|
452
|
+
* Callback when grid renders starts.
|
|
453
|
+
* @group Events
|
|
454
|
+
*/
|
|
455
|
+
onGridRenderStart?: () => void;
|
|
456
|
+
/**
|
|
457
|
+
* Callback when grid renders completes.
|
|
458
|
+
* @group Events
|
|
459
|
+
*/
|
|
460
|
+
onGridRenderComplete?: () => void;
|
|
461
|
+
/**
|
|
462
|
+
* Callback when a cell is focused.
|
|
463
|
+
* @group Events
|
|
464
|
+
*/
|
|
465
|
+
onCellFocus?: (args: {
|
|
466
|
+
cell: unknown;
|
|
467
|
+
row: Row<TData>;
|
|
468
|
+
}) => void;
|
|
469
|
+
/**
|
|
470
|
+
* Callback when a toolbar item is clicked.
|
|
471
|
+
* @group Events
|
|
472
|
+
*/
|
|
473
|
+
onToolbarItemClick?: (args: {
|
|
474
|
+
item: ToolbarItem;
|
|
475
|
+
originalEvent: React.MouseEvent;
|
|
476
|
+
}) => void;
|
|
477
|
+
/**
|
|
478
|
+
* Callback when a row is deselected.
|
|
479
|
+
* @group Events
|
|
480
|
+
*/
|
|
481
|
+
onRowDeselect?: (args: {
|
|
482
|
+
row?: Row<TData>;
|
|
483
|
+
data: TData;
|
|
484
|
+
rowIndex: number;
|
|
485
|
+
}) => void;
|
|
486
|
+
/**
|
|
487
|
+
* Callback when a row is clicked.
|
|
488
|
+
* @group Events
|
|
489
|
+
*/
|
|
490
|
+
onRowClick?: (args: {
|
|
491
|
+
row: Row<TData>;
|
|
492
|
+
data: TData;
|
|
493
|
+
rowIndex: number;
|
|
494
|
+
originalEvent: React.MouseEvent;
|
|
495
|
+
}) => void;
|
|
496
|
+
/**
|
|
497
|
+
* Callback when a row is selected.
|
|
498
|
+
* @group Events
|
|
499
|
+
*/
|
|
500
|
+
onRowSelect?: (args: {
|
|
501
|
+
row?: Row<TData>;
|
|
502
|
+
data: TData;
|
|
503
|
+
rowIndex: number;
|
|
504
|
+
originalEvent?: React.SyntheticEvent;
|
|
505
|
+
}) => void;
|
|
506
|
+
/**
|
|
507
|
+
* Callback when a row is double-clicked.
|
|
508
|
+
* @group Events
|
|
509
|
+
*/
|
|
510
|
+
onRowDoubleClick?: (args: {
|
|
511
|
+
row: Row<TData>;
|
|
512
|
+
data: TData;
|
|
513
|
+
rowIndex: number;
|
|
514
|
+
originalEvent: React.MouseEvent;
|
|
515
|
+
}) => void;
|
|
516
|
+
/**
|
|
517
|
+
* Callback before a new row is added. Return false to cancel.
|
|
518
|
+
* @group Events
|
|
519
|
+
*/
|
|
520
|
+
onRowAddStart?: (args: {
|
|
521
|
+
data: Partial<TData>;
|
|
522
|
+
}) => void;
|
|
523
|
+
/**
|
|
524
|
+
* Callback before a row is edited. Return false to cancel.
|
|
525
|
+
* @group Events
|
|
526
|
+
*/
|
|
527
|
+
onRowEditStart?: (args: {
|
|
528
|
+
row: Row<TData>;
|
|
529
|
+
data: TData;
|
|
530
|
+
}) => void;
|
|
531
|
+
/**
|
|
532
|
+
* Callback when batch changes are saved.
|
|
533
|
+
* @group Events
|
|
534
|
+
*/
|
|
535
|
+
onBatchSave?: (changes: EzTableChanges<TData>) => void;
|
|
536
|
+
/**
|
|
537
|
+
* Callback when a record fails validation before saving.
|
|
538
|
+
* @group Events
|
|
539
|
+
*/
|
|
540
|
+
onActionFailure?: (args: {
|
|
541
|
+
error: unknown;
|
|
542
|
+
}) => void;
|
|
543
|
+
/**
|
|
544
|
+
* Callback when a record is successfully saved.
|
|
545
|
+
* @group Events
|
|
546
|
+
*/
|
|
547
|
+
onActionComplete?: (args: {
|
|
548
|
+
action: 'add' | 'edit' | 'delete';
|
|
549
|
+
data: TData;
|
|
550
|
+
}) => void;
|
|
551
|
+
/**
|
|
552
|
+
* Formats cell data on the fly.
|
|
553
|
+
* @group Events
|
|
554
|
+
*/
|
|
555
|
+
queryCellInfo?: (args: {
|
|
556
|
+
row: Row<TData>;
|
|
557
|
+
data: TData;
|
|
558
|
+
column: ColumnDef<TData>;
|
|
559
|
+
cell: unknown;
|
|
560
|
+
}) => void;
|
|
561
|
+
/**
|
|
562
|
+
* Sets class names for specific rows.
|
|
563
|
+
* @group Events
|
|
564
|
+
*/
|
|
565
|
+
setRowClass?: (row: Row<TData>) => string;
|
|
566
|
+
/**
|
|
567
|
+
* Component validation hook for custom validation.
|
|
568
|
+
*/
|
|
569
|
+
validateField?: (params: EzTableValidateFieldParams<TData>) => string | boolean;
|
|
570
|
+
enableSearchHighlighting?: boolean;
|
|
571
|
+
enableEditing?: boolean;
|
|
572
|
+
isRowEditable?: (row: TData) => boolean;
|
|
573
|
+
isCellEditable?: (row: TData, columnId: string) => boolean;
|
|
574
|
+
enableAdvancedFiltering?: boolean;
|
|
575
|
+
enableExport?: boolean;
|
|
576
|
+
onExportExcel?: (table: Table<TData>) => void;
|
|
577
|
+
onExportCSV?: (table: Table<TData>) => void;
|
|
578
|
+
onExportPDF?: (table: Table<TData>) => void;
|
|
579
|
+
enableStickyHeader?: boolean;
|
|
580
|
+
enableStickyPagination?: boolean;
|
|
581
|
+
enableChangeTracking?: boolean;
|
|
582
|
+
enableColumnPinning?: boolean;
|
|
583
|
+
enableTreeData?: boolean;
|
|
584
|
+
getSubRows?: (originalRow: TData, index: number) => TData[] | undefined;
|
|
585
|
+
manualPagination?: boolean;
|
|
586
|
+
manualSorting?: boolean;
|
|
587
|
+
manualFiltering?: boolean;
|
|
588
|
+
enablePersistence?: boolean;
|
|
589
|
+
persistenceKey?: string;
|
|
590
|
+
defaultGrouping?: string[];
|
|
591
|
+
onSortingChange?: (updaterOrValue: Updater<import('@tanstack/react-table').SortingState>) => void;
|
|
592
|
+
onSort?: (args: {
|
|
593
|
+
columns: {
|
|
594
|
+
direction: 'Ascending' | 'Descending' | 'None';
|
|
595
|
+
name: string;
|
|
596
|
+
}[];
|
|
597
|
+
}) => void;
|
|
598
|
+
onPaginationChange?: (updaterOrValue: Updater<import('@tanstack/react-table').PaginationState>) => void;
|
|
599
|
+
onPageChange?: (args: {
|
|
600
|
+
action: string;
|
|
601
|
+
currentPage: number;
|
|
602
|
+
}) => void;
|
|
603
|
+
onRowSelectionChange?: (updaterOrValue: Updater<import('@tanstack/react-table').RowSelectionState>) => void;
|
|
604
|
+
onColumnOrderChange?: (updaterOrValue: Updater<string[]>) => void;
|
|
605
|
+
onColumnFiltersChange?: (updaterOrValue: Updater<import('@tanstack/react-table').ColumnFiltersState>) => void;
|
|
606
|
+
onGlobalFilterChange?: (updaterOrValue: Updater<EzGlobalFilterState>) => void;
|
|
607
|
+
onFilter?: (args: EzTableFilterEvent<TData>) => void;
|
|
608
|
+
onSearch?: (query: string) => void;
|
|
609
|
+
onActionBegin?: (args: {
|
|
610
|
+
action: 'add' | 'edit' | 'delete' | 'save' | 'fetch';
|
|
611
|
+
data?: Partial<TData> | TData;
|
|
612
|
+
cancel?: boolean;
|
|
613
|
+
}) => void;
|
|
614
|
+
enableRangeSelection?: boolean;
|
|
615
|
+
pageCount?: number;
|
|
616
|
+
enableRowSelection?: boolean;
|
|
617
|
+
enableRowPinning?: boolean;
|
|
618
|
+
density?: 'standard' | 'comfortable' | 'compact';
|
|
619
|
+
service?: ITableService<TData>;
|
|
620
|
+
serviceName?: string;
|
|
621
|
+
isLoading?: boolean;
|
|
622
|
+
onBatchDiscard?: () => void;
|
|
623
|
+
enableContextMenu?: boolean;
|
|
624
|
+
onContextMenuItemClick?: (item: EzTableContextMenuItemClickArgs<TData>) => void;
|
|
625
|
+
renderDetailPanel?: (row: Row<TData>) => React.ReactNode;
|
|
626
|
+
enableGrouping?: boolean;
|
|
627
|
+
enableColumnReorder?: boolean;
|
|
628
|
+
onFormRender?: (props: unknown) => React.ReactNode;
|
|
629
|
+
scrollBehavior?: ScrollBehavior;
|
|
630
|
+
renderNoRowsOverlay?: () => React.ReactNode;
|
|
631
|
+
/**
|
|
632
|
+
* Whether to show the status bar at the bottom of the table.
|
|
633
|
+
* Defaults to true.
|
|
634
|
+
* @group Properties
|
|
635
|
+
*/
|
|
636
|
+
enableStatusBar?: boolean;
|
|
637
|
+
/**
|
|
638
|
+
* Enable column visibility toggling.
|
|
639
|
+
* @group Properties
|
|
640
|
+
*/
|
|
641
|
+
enableHiding?: boolean;
|
|
642
|
+
}
|
|
643
|
+
/**
|
|
644
|
+
* Shared state parameters passed between internal hooks.
|
|
645
|
+
* @internal
|
|
646
|
+
*/
|
|
647
|
+
export interface TableParams<TData extends object> {
|
|
648
|
+
data: TData[];
|
|
649
|
+
columns: ColumnDef<TData>[];
|
|
650
|
+
state?: Partial<TableState>;
|
|
651
|
+
initialState?: Partial<TableState>;
|
|
652
|
+
onStateChange?: (updater: Updater<TableState>) => void;
|
|
653
|
+
filterSettings?: FilterSettings;
|
|
654
|
+
searchSettings?: SearchSettings;
|
|
655
|
+
sortSettings?: SortSettings;
|
|
656
|
+
pagination?: boolean;
|
|
657
|
+
enableColumnVirtualization?: boolean;
|
|
658
|
+
columnVirtualizationThreshold?: number;
|
|
659
|
+
rowCount?: number;
|
|
660
|
+
progressiveRendering?: boolean;
|
|
661
|
+
prefetchDistance?: number;
|
|
662
|
+
overscanCount?: number;
|
|
663
|
+
debugVirtualization?: boolean;
|
|
664
|
+
adaptiveSizing?: boolean;
|
|
665
|
+
scrollPaddingStart?: number;
|
|
666
|
+
scrollPaddingEnd?: number;
|
|
667
|
+
scrollMargin?: number;
|
|
668
|
+
pageSettings?: {
|
|
669
|
+
pageSize?: number;
|
|
670
|
+
pageCount?: number;
|
|
671
|
+
currentPage?: number;
|
|
672
|
+
pageSizes?: number[];
|
|
673
|
+
};
|
|
674
|
+
pageSize?: number;
|
|
675
|
+
enableInfiniteScroll?: boolean;
|
|
676
|
+
onEndReached?: () => void;
|
|
677
|
+
selectionSettings?: SelectionSettings;
|
|
678
|
+
getRowId?: (row: TData) => string;
|
|
679
|
+
onRowSelect?: (args: {
|
|
680
|
+
row?: Row<TData>;
|
|
681
|
+
data: TData;
|
|
682
|
+
rowIndex: number;
|
|
683
|
+
originalEvent?: React.SyntheticEvent;
|
|
684
|
+
}) => void;
|
|
685
|
+
onRowDeselect?: (args: {
|
|
686
|
+
row?: Row<TData>;
|
|
687
|
+
data: TData;
|
|
688
|
+
rowIndex: number;
|
|
689
|
+
}) => void;
|
|
690
|
+
enableChangeTracking?: boolean;
|
|
691
|
+
editSettings?: EditSettings;
|
|
692
|
+
onDataChange?: (changes: EzTableChanges<TData>) => void;
|
|
693
|
+
onFetchData?: (params: EzTableDataRequestParams) => void;
|
|
694
|
+
}
|
|
695
|
+
export type EzGlobalFilterState = string | {
|
|
696
|
+
quickSearch?: string;
|
|
697
|
+
advanced?: FilterGroup;
|
|
698
|
+
};
|
|
699
|
+
export interface EzTableColumnProps<TData extends object> {
|
|
700
|
+
field?: keyof TData | string;
|
|
701
|
+
headerText?: string;
|
|
702
|
+
width?: string | number;
|
|
703
|
+
minWidth?: string | number;
|
|
704
|
+
maxWidth?: string | number;
|
|
705
|
+
textAlign?: 'Left' | 'Center' | 'Right' | 'Justify';
|
|
706
|
+
format?: string;
|
|
707
|
+
visible?: boolean;
|
|
708
|
+
allowSorting?: boolean;
|
|
709
|
+
allowFiltering?: boolean;
|
|
710
|
+
allowEditing?: boolean;
|
|
711
|
+
allowSearching?: boolean;
|
|
712
|
+
allowReordering?: boolean;
|
|
713
|
+
allowResizing?: boolean;
|
|
714
|
+
isPrimaryKey?: boolean;
|
|
715
|
+
editType?: 'textedit' | 'numericedit' | 'datepickeredit' | 'dropdownedit' | 'booleanedit';
|
|
716
|
+
showColumnMenu?: boolean;
|
|
717
|
+
template?: React.ReactNode | ((props: unknown) => React.ReactNode);
|
|
718
|
+
editTemplate?: React.ReactNode | ((props: unknown) => React.ReactNode);
|
|
719
|
+
filterTemplate?: React.ReactNode | ((props: unknown) => React.ReactNode);
|
|
720
|
+
[key: string]: unknown;
|
|
721
|
+
}
|
|
722
|
+
export interface EzTableColumnDef {
|
|
723
|
+
children?: React.ReactNode;
|
|
724
|
+
}
|
|
725
|
+
export interface EzTableBaseRef<TData extends object> {
|
|
726
|
+
getState: () => TableState;
|
|
727
|
+
getSelectedRows: () => TData[];
|
|
728
|
+
saveChanges: () => Promise<void>;
|
|
729
|
+
cancelChanges: () => void;
|
|
730
|
+
getChanges: () => EzTableChanges<TData>;
|
|
731
|
+
validateField: (field: string) => boolean;
|
|
732
|
+
validateEditForm: () => boolean;
|
|
733
|
+
}
|
|
734
|
+
export type EzTableRef<TData extends object, TExtraApi extends object = Record<string, never>> = EzTableBaseRef<TData> & TExtraApi;
|
|
735
|
+
export interface ITableService<TData extends object> {
|
|
736
|
+
fetchData: (query: unknown) => Promise<{
|
|
737
|
+
data: TData[];
|
|
738
|
+
rowCount?: number;
|
|
739
|
+
}>;
|
|
740
|
+
getData: (params: TableParams<TData>) => Promise<{
|
|
741
|
+
data: TData[];
|
|
742
|
+
rowCount?: number;
|
|
743
|
+
} | {
|
|
744
|
+
data: TData[];
|
|
745
|
+
totalCount: number;
|
|
746
|
+
}>;
|
|
747
|
+
createRow: (row: Partial<TData>) => Promise<TData>;
|
|
748
|
+
updateRow: (id: string | number, updates: Partial<TData>) => Promise<TData>;
|
|
749
|
+
deleteRow: (id: string | number) => Promise<void>;
|
|
750
|
+
}
|