@affino/datagrid-vue 0.1.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/LICENSE +21 -0
- package/README.md +338 -0
- package/dist/adapters/a11yAttributesAdapter.d.ts +20 -0
- package/dist/adapters/a11yAttributesAdapter.d.ts.map +1 -0
- package/dist/adapters/a11yAttributesAdapter.js +23 -0
- package/dist/adapters/adapterLifecycle.d.ts +12 -0
- package/dist/adapters/adapterLifecycle.d.ts.map +1 -0
- package/dist/adapters/adapterLifecycle.js +1 -0
- package/dist/adapters/clipboardAdapter.d.ts +3 -0
- package/dist/adapters/clipboardAdapter.d.ts.map +1 -0
- package/dist/adapters/clipboardAdapter.js +38 -0
- package/dist/adapters/columnPinNormalization.d.ts +14 -0
- package/dist/adapters/columnPinNormalization.d.ts.map +1 -0
- package/dist/adapters/columnPinNormalization.js +55 -0
- package/dist/adapters/hoverEnvironment.d.ts +3 -0
- package/dist/adapters/hoverEnvironment.d.ts.map +1 -0
- package/dist/adapters/hoverEnvironment.js +24 -0
- package/dist/adapters/selectionControllerAdapter.d.ts +30 -0
- package/dist/adapters/selectionControllerAdapter.d.ts.map +1 -0
- package/dist/adapters/selectionControllerAdapter.js +77 -0
- package/dist/adapters/selectionEnvironment.d.ts +41 -0
- package/dist/adapters/selectionEnvironment.d.ts.map +1 -0
- package/dist/adapters/selectionEnvironment.js +188 -0
- package/dist/adapters/selectionHeadlessAdapter.d.ts +48 -0
- package/dist/adapters/selectionHeadlessAdapter.d.ts.map +1 -0
- package/dist/adapters/selectionHeadlessAdapter.js +160 -0
- package/dist/adapters/sharedState.d.ts +4 -0
- package/dist/adapters/sharedState.d.ts.map +1 -0
- package/dist/adapters/sharedState.js +27 -0
- package/dist/adapters/viewportHostEnvironment.d.ts +3 -0
- package/dist/adapters/viewportHostEnvironment.d.ts.map +1 -0
- package/dist/adapters/viewportHostEnvironment.js +46 -0
- package/dist/advanced.d.ts +127 -0
- package/dist/advanced.d.ts.map +1 -0
- package/dist/advanced.js +197 -0
- package/dist/cells/cellUtils.d.ts +95 -0
- package/dist/cells/cellUtils.d.ts.map +1 -0
- package/dist/cells/cellUtils.js +20 -0
- package/dist/cells/index.d.ts +5 -0
- package/dist/cells/index.d.ts.map +1 -0
- package/dist/cells/index.js +4 -0
- package/dist/cells/useCellEditing.d.ts +42 -0
- package/dist/cells/useCellEditing.d.ts.map +1 -0
- package/dist/cells/useCellEditing.js +194 -0
- package/dist/cells/useCellSelection.d.ts +7 -0
- package/dist/cells/useCellSelection.d.ts.map +1 -0
- package/dist/cells/useCellSelection.js +48 -0
- package/dist/cells/useCellStyle.d.ts +22 -0
- package/dist/cells/useCellStyle.d.ts.map +1 -0
- package/dist/cells/useCellStyle.js +128 -0
- package/dist/components/AffinoDataGridSimple.d.ts +107 -0
- package/dist/components/AffinoDataGridSimple.d.ts.map +1 -0
- package/dist/components/AffinoDataGridSimple.js +349 -0
- package/dist/components/DataGrid.d.ts +57 -0
- package/dist/components/DataGrid.d.ts.map +1 -0
- package/dist/components/DataGrid.js +68 -0
- package/dist/components/index.d.ts +3 -0
- package/dist/components/index.d.ts.map +1 -0
- package/dist/components/index.js +2 -0
- package/dist/components/overlayRenderer.d.ts +36 -0
- package/dist/components/overlayRenderer.d.ts.map +1 -0
- package/dist/components/overlayRenderer.js +169 -0
- package/dist/components/ui/VirtualList.types.d.ts +5 -0
- package/dist/components/ui/VirtualList.types.d.ts.map +1 -0
- package/dist/components/ui/VirtualList.types.js +1 -0
- package/dist/composables/internal/useAffinoDataGrid/index.d.ts +16 -0
- package/dist/composables/internal/useAffinoDataGrid/index.d.ts.map +1 -0
- package/dist/composables/internal/useAffinoDataGrid/index.js +15 -0
- package/dist/composables/internal/useAffinoDataGrid/useAffinoDataGridActionRunner.d.ts +34 -0
- package/dist/composables/internal/useAffinoDataGrid/useAffinoDataGridActionRunner.d.ts.map +1 -0
- package/dist/composables/internal/useAffinoDataGrid/useAffinoDataGridActionRunner.js +181 -0
- package/dist/composables/internal/useAffinoDataGrid/useAffinoDataGridBaseBindings.d.ts +99 -0
- package/dist/composables/internal/useAffinoDataGrid/useAffinoDataGridBaseBindings.d.ts.map +1 -0
- package/dist/composables/internal/useAffinoDataGrid/useAffinoDataGridBaseBindings.js +316 -0
- package/dist/composables/internal/useAffinoDataGrid/useAffinoDataGridBindingSuite.d.ts +40 -0
- package/dist/composables/internal/useAffinoDataGrid/useAffinoDataGridBindingSuite.d.ts.map +1 -0
- package/dist/composables/internal/useAffinoDataGrid/useAffinoDataGridBindingSuite.js +68 -0
- package/dist/composables/internal/useAffinoDataGrid/useAffinoDataGridClipboardFeature.d.ts +37 -0
- package/dist/composables/internal/useAffinoDataGrid/useAffinoDataGridClipboardFeature.d.ts.map +1 -0
- package/dist/composables/internal/useAffinoDataGrid/useAffinoDataGridClipboardFeature.js +148 -0
- package/dist/composables/internal/useAffinoDataGrid/useAffinoDataGridContextMenuFeature.d.ts +92 -0
- package/dist/composables/internal/useAffinoDataGrid/useAffinoDataGridContextMenuFeature.d.ts.map +1 -0
- package/dist/composables/internal/useAffinoDataGrid/useAffinoDataGridContextMenuFeature.js +91 -0
- package/dist/composables/internal/useAffinoDataGrid/useAffinoDataGridEditingFeature.d.ts +81 -0
- package/dist/composables/internal/useAffinoDataGrid/useAffinoDataGridEditingFeature.d.ts.map +1 -0
- package/dist/composables/internal/useAffinoDataGrid/useAffinoDataGridEditingFeature.js +144 -0
- package/dist/composables/internal/useAffinoDataGrid/useAffinoDataGridEventHub.d.ts +16 -0
- package/dist/composables/internal/useAffinoDataGrid/useAffinoDataGridEventHub.d.ts.map +1 -0
- package/dist/composables/internal/useAffinoDataGrid/useAffinoDataGridEventHub.js +105 -0
- package/dist/composables/internal/useAffinoDataGrid/useAffinoDataGridFeatureNormalization.d.ts +74 -0
- package/dist/composables/internal/useAffinoDataGrid/useAffinoDataGridFeatureNormalization.d.ts.map +1 -0
- package/dist/composables/internal/useAffinoDataGrid/useAffinoDataGridFeatureNormalization.js +123 -0
- package/dist/composables/internal/useAffinoDataGrid/useAffinoDataGridFeatureSuite.d.ts +32 -0
- package/dist/composables/internal/useAffinoDataGrid/useAffinoDataGridFeatureSuite.d.ts.map +1 -0
- package/dist/composables/internal/useAffinoDataGrid/useAffinoDataGridFeatureSuite.js +196 -0
- package/dist/composables/internal/useAffinoDataGrid/useAffinoDataGridFilteringFeature.d.ts +25 -0
- package/dist/composables/internal/useAffinoDataGrid/useAffinoDataGridFilteringFeature.d.ts.map +1 -0
- package/dist/composables/internal/useAffinoDataGrid/useAffinoDataGridFilteringFeature.js +51 -0
- package/dist/composables/internal/useAffinoDataGrid/useAffinoDataGridHeaderFilters.d.ts +65 -0
- package/dist/composables/internal/useAffinoDataGrid/useAffinoDataGridHeaderFilters.d.ts.map +1 -0
- package/dist/composables/internal/useAffinoDataGrid/useAffinoDataGridHeaderFilters.js +251 -0
- package/dist/composables/internal/useAffinoDataGrid/useAffinoDataGridIdentity.d.ts +5 -0
- package/dist/composables/internal/useAffinoDataGrid/useAffinoDataGridIdentity.d.ts.map +1 -0
- package/dist/composables/internal/useAffinoDataGrid/useAffinoDataGridIdentity.js +30 -0
- package/dist/composables/internal/useAffinoDataGrid/useAffinoDataGridKeyboardDispatcher.d.ts +22 -0
- package/dist/composables/internal/useAffinoDataGrid/useAffinoDataGridKeyboardDispatcher.d.ts.map +1 -0
- package/dist/composables/internal/useAffinoDataGrid/useAffinoDataGridKeyboardDispatcher.js +74 -0
- package/dist/composables/internal/useAffinoDataGrid/useAffinoDataGridLayoutProfiles.d.ts +31 -0
- package/dist/composables/internal/useAffinoDataGrid/useAffinoDataGridLayoutProfiles.d.ts.map +1 -0
- package/dist/composables/internal/useAffinoDataGrid/useAffinoDataGridLayoutProfiles.js +64 -0
- package/dist/composables/internal/useAffinoDataGrid/useAffinoDataGridPointerLifecycle.d.ts +9 -0
- package/dist/composables/internal/useAffinoDataGrid/useAffinoDataGridPointerLifecycle.d.ts.map +1 -0
- package/dist/composables/internal/useAffinoDataGrid/useAffinoDataGridPointerLifecycle.js +15 -0
- package/dist/composables/internal/useAffinoDataGrid/useAffinoDataGridRangeClipboard.d.ts +61 -0
- package/dist/composables/internal/useAffinoDataGrid/useAffinoDataGridRangeClipboard.d.ts.map +1 -0
- package/dist/composables/internal/useAffinoDataGrid/useAffinoDataGridRangeClipboard.js +470 -0
- package/dist/composables/internal/useAffinoDataGrid/useAffinoDataGridResultAssembly.d.ts +23 -0
- package/dist/composables/internal/useAffinoDataGrid/useAffinoDataGridResultAssembly.d.ts.map +1 -0
- package/dist/composables/internal/useAffinoDataGrid/useAffinoDataGridResultAssembly.js +131 -0
- package/dist/composables/internal/useAffinoDataGrid/useAffinoDataGridRowHeightFeature.d.ts +30 -0
- package/dist/composables/internal/useAffinoDataGrid/useAffinoDataGridRowHeightFeature.d.ts.map +1 -0
- package/dist/composables/internal/useAffinoDataGrid/useAffinoDataGridRowHeightFeature.js +82 -0
- package/dist/composables/internal/useAffinoDataGrid/useAffinoDataGridRuntimeBootstrap.d.ts +20 -0
- package/dist/composables/internal/useAffinoDataGrid/useAffinoDataGridRuntimeBootstrap.d.ts.map +1 -0
- package/dist/composables/internal/useAffinoDataGrid/useAffinoDataGridRuntimeBootstrap.js +66 -0
- package/dist/composables/internal/useAffinoDataGrid/useAffinoDataGridSelectionEngine.d.ts +56 -0
- package/dist/composables/internal/useAffinoDataGrid/useAffinoDataGridSelectionEngine.d.ts.map +1 -0
- package/dist/composables/internal/useAffinoDataGrid/useAffinoDataGridSelectionEngine.js +365 -0
- package/dist/composables/internal/useAffinoDataGrid/useAffinoDataGridSelectionFeature.d.ts +38 -0
- package/dist/composables/internal/useAffinoDataGrid/useAffinoDataGridSelectionFeature.d.ts.map +1 -0
- package/dist/composables/internal/useAffinoDataGrid/useAffinoDataGridSelectionFeature.js +170 -0
- package/dist/composables/internal/useAffinoDataGrid/useAffinoDataGridSortActionSuite.d.ts +30 -0
- package/dist/composables/internal/useAffinoDataGrid/useAffinoDataGridSortActionSuite.d.ts.map +1 -0
- package/dist/composables/internal/useAffinoDataGrid/useAffinoDataGridSortActionSuite.js +36 -0
- package/dist/composables/internal/useAffinoDataGrid/useAffinoDataGridSortingFeature.d.ts +15 -0
- package/dist/composables/internal/useAffinoDataGrid/useAffinoDataGridSortingFeature.d.ts.map +1 -0
- package/dist/composables/internal/useAffinoDataGrid/useAffinoDataGridSortingFeature.js +42 -0
- package/dist/composables/internal/useAffinoDataGrid/useAffinoDataGridStatusBar.d.ts +32 -0
- package/dist/composables/internal/useAffinoDataGrid/useAffinoDataGridStatusBar.d.ts.map +1 -0
- package/dist/composables/internal/useAffinoDataGrid/useAffinoDataGridStatusBar.js +73 -0
- package/dist/composables/internal/useAffinoDataGrid/useAffinoDataGridSummaryFeature.d.ts +27 -0
- package/dist/composables/internal/useAffinoDataGrid/useAffinoDataGridSummaryFeature.d.ts.map +1 -0
- package/dist/composables/internal/useAffinoDataGrid/useAffinoDataGridSummaryFeature.js +39 -0
- package/dist/composables/internal/useAffinoDataGrid/useAffinoDataGridTreeFeature.d.ts +35 -0
- package/dist/composables/internal/useAffinoDataGrid/useAffinoDataGridTreeFeature.d.ts.map +1 -0
- package/dist/composables/internal/useAffinoDataGrid/useAffinoDataGridTreeFeature.js +220 -0
- package/dist/composables/internal/useAffinoDataGrid/useAffinoDataGridVisibilityFeature.d.ts +28 -0
- package/dist/composables/internal/useAffinoDataGrid/useAffinoDataGridVisibilityFeature.d.ts.map +1 -0
- package/dist/composables/internal/useAffinoDataGrid/useAffinoDataGridVisibilityFeature.js +59 -0
- package/dist/composables/selection/selectionControllerStateScheduler.d.ts +13 -0
- package/dist/composables/selection/selectionControllerStateScheduler.d.ts.map +1 -0
- package/dist/composables/selection/selectionControllerStateScheduler.js +48 -0
- package/dist/composables/selection/selectionGeometry.d.ts +47 -0
- package/dist/composables/selection/selectionGeometry.d.ts.map +1 -0
- package/dist/composables/selection/selectionGeometry.js +84 -0
- package/dist/composables/selection/selectionInput.d.ts +6 -0
- package/dist/composables/selection/selectionInput.d.ts.map +1 -0
- package/dist/composables/selection/selectionInput.js +6 -0
- package/dist/composables/selection/selectionOverlayUpdateScheduler.d.ts +21 -0
- package/dist/composables/selection/selectionOverlayUpdateScheduler.d.ts.map +1 -0
- package/dist/composables/selection/selectionOverlayUpdateScheduler.js +65 -0
- package/dist/composables/selection/selectionStateSync.d.ts +55 -0
- package/dist/composables/selection/selectionStateSync.d.ts.map +1 -0
- package/dist/composables/selection/selectionStateSync.js +30 -0
- package/dist/composables/selectionOverlayTransform.d.ts +2 -0
- package/dist/composables/selectionOverlayTransform.d.ts.map +1 -0
- package/dist/composables/selectionOverlayTransform.js +1 -0
- package/dist/composables/useAffinoDataGrid.d.ts +4 -0
- package/dist/composables/useAffinoDataGrid.d.ts.map +1 -0
- package/dist/composables/useAffinoDataGrid.js +1489 -0
- package/dist/composables/useAffinoDataGrid.types.d.ts +706 -0
- package/dist/composables/useAffinoDataGrid.types.d.ts.map +1 -0
- package/dist/composables/useAffinoDataGrid.types.js +1 -0
- package/dist/composables/useAffinoDataGridClipboardFeature.d.ts +37 -0
- package/dist/composables/useAffinoDataGridClipboardFeature.d.ts.map +1 -0
- package/dist/composables/useAffinoDataGridClipboardFeature.js +135 -0
- package/dist/composables/useAffinoDataGridEditingFeature.d.ts +50 -0
- package/dist/composables/useAffinoDataGridEditingFeature.d.ts.map +1 -0
- package/dist/composables/useAffinoDataGridEditingFeature.js +94 -0
- package/dist/composables/useAffinoDataGridFilteringFeature.d.ts +25 -0
- package/dist/composables/useAffinoDataGridFilteringFeature.d.ts.map +1 -0
- package/dist/composables/useAffinoDataGridFilteringFeature.js +51 -0
- package/dist/composables/useAffinoDataGridMinimal.d.ts +3 -0
- package/dist/composables/useAffinoDataGridMinimal.d.ts.map +1 -0
- package/dist/composables/useAffinoDataGridMinimal.js +6 -0
- package/dist/composables/useAffinoDataGridSelectionFeature.d.ts +38 -0
- package/dist/composables/useAffinoDataGridSelectionFeature.d.ts.map +1 -0
- package/dist/composables/useAffinoDataGridSelectionFeature.js +160 -0
- package/dist/composables/useAffinoDataGridSummaryFeature.d.ts +27 -0
- package/dist/composables/useAffinoDataGridSummaryFeature.d.ts.map +1 -0
- package/dist/composables/useAffinoDataGridSummaryFeature.js +39 -0
- package/dist/composables/useAffinoDataGridTreeFeature.d.ts +31 -0
- package/dist/composables/useAffinoDataGridTreeFeature.d.ts.map +1 -0
- package/dist/composables/useAffinoDataGridTreeFeature.js +183 -0
- package/dist/composables/useAffinoDataGridUi.d.ts +36 -0
- package/dist/composables/useAffinoDataGridUi.d.ts.map +1 -0
- package/dist/composables/useAffinoDataGridUi.js +81 -0
- package/dist/composables/useAffinoDataGridVisibilityFeature.d.ts +28 -0
- package/dist/composables/useAffinoDataGridVisibilityFeature.d.ts.map +1 -0
- package/dist/composables/useAffinoDataGridVisibilityFeature.js +59 -0
- package/dist/composables/useAutoResizeColumn.d.ts +14 -0
- package/dist/composables/useAutoResizeColumn.d.ts.map +1 -0
- package/dist/composables/useAutoResizeColumn.js +64 -0
- package/dist/composables/useAxisVirtualizer.d.ts +25 -0
- package/dist/composables/useAxisVirtualizer.d.ts.map +1 -0
- package/dist/composables/useAxisVirtualizer.js +41 -0
- package/dist/composables/useColumnGroups.d.ts +15 -0
- package/dist/composables/useColumnGroups.d.ts.map +1 -0
- package/dist/composables/useColumnGroups.js +35 -0
- package/dist/composables/useColumnHeaderInteractions.d.ts +38 -0
- package/dist/composables/useColumnHeaderInteractions.d.ts.map +1 -0
- package/dist/composables/useColumnHeaderInteractions.js +471 -0
- package/dist/composables/useColumnVisibility.d.ts +31 -0
- package/dist/composables/useColumnVisibility.d.ts.map +1 -0
- package/dist/composables/useColumnVisibility.js +124 -0
- package/dist/composables/useDataGridA11yCellIds.d.ts +2 -0
- package/dist/composables/useDataGridA11yCellIds.d.ts.map +1 -0
- package/dist/composables/useDataGridA11yCellIds.js +1 -0
- package/dist/composables/useDataGridAxisAutoScrollDelta.d.ts +2 -0
- package/dist/composables/useDataGridAxisAutoScrollDelta.d.ts.map +1 -0
- package/dist/composables/useDataGridAxisAutoScrollDelta.js +1 -0
- package/dist/composables/useDataGridCellCoordNormalizer.d.ts +2 -0
- package/dist/composables/useDataGridCellCoordNormalizer.d.ts.map +1 -0
- package/dist/composables/useDataGridCellCoordNormalizer.js +1 -0
- package/dist/composables/useDataGridCellDatasetResolver.d.ts +2 -0
- package/dist/composables/useDataGridCellDatasetResolver.d.ts.map +1 -0
- package/dist/composables/useDataGridCellDatasetResolver.js +1 -0
- package/dist/composables/useDataGridCellNavigation.d.ts +2 -0
- package/dist/composables/useDataGridCellNavigation.d.ts.map +1 -0
- package/dist/composables/useDataGridCellNavigation.js +1 -0
- package/dist/composables/useDataGridCellPointerDownRouter.d.ts +2 -0
- package/dist/composables/useDataGridCellPointerDownRouter.d.ts.map +1 -0
- package/dist/composables/useDataGridCellPointerDownRouter.js +1 -0
- package/dist/composables/useDataGridCellPointerHoverRouter.d.ts +2 -0
- package/dist/composables/useDataGridCellPointerHoverRouter.d.ts.map +1 -0
- package/dist/composables/useDataGridCellPointerHoverRouter.js +1 -0
- package/dist/composables/useDataGridCellRangeHelpers.d.ts +2 -0
- package/dist/composables/useDataGridCellRangeHelpers.d.ts.map +1 -0
- package/dist/composables/useDataGridCellRangeHelpers.js +1 -0
- package/dist/composables/useDataGridCellVisibilityScroller.d.ts +2 -0
- package/dist/composables/useDataGridCellVisibilityScroller.d.ts.map +1 -0
- package/dist/composables/useDataGridCellVisibilityScroller.js +1 -0
- package/dist/composables/useDataGridCellVisualStatePredicates.d.ts +2 -0
- package/dist/composables/useDataGridCellVisualStatePredicates.d.ts.map +1 -0
- package/dist/composables/useDataGridCellVisualStatePredicates.js +1 -0
- package/dist/composables/useDataGridClearSelectionLifecycle.d.ts +2 -0
- package/dist/composables/useDataGridClearSelectionLifecycle.d.ts.map +1 -0
- package/dist/composables/useDataGridClearSelectionLifecycle.js +1 -0
- package/dist/composables/useDataGridClipboardBridge.d.ts +11 -0
- package/dist/composables/useDataGridClipboardBridge.d.ts.map +1 -0
- package/dist/composables/useDataGridClipboardBridge.js +12 -0
- package/dist/composables/useDataGridClipboardMutations.d.ts +2 -0
- package/dist/composables/useDataGridClipboardMutations.d.ts.map +1 -0
- package/dist/composables/useDataGridClipboardMutations.js +1 -0
- package/dist/composables/useDataGridClipboardValuePolicy.d.ts +2 -0
- package/dist/composables/useDataGridClipboardValuePolicy.d.ts.map +1 -0
- package/dist/composables/useDataGridClipboardValuePolicy.js +1 -0
- package/dist/composables/useDataGridColumnFilterOrchestration.d.ts +35 -0
- package/dist/composables/useDataGridColumnFilterOrchestration.d.ts.map +1 -0
- package/dist/composables/useDataGridColumnFilterOrchestration.js +47 -0
- package/dist/composables/useDataGridColumnLayoutOrchestration.d.ts +22 -0
- package/dist/composables/useDataGridColumnLayoutOrchestration.d.ts.map +1 -0
- package/dist/composables/useDataGridColumnLayoutOrchestration.js +45 -0
- package/dist/composables/useDataGridColumnUiPolicy.d.ts +2 -0
- package/dist/composables/useDataGridColumnUiPolicy.d.ts.map +1 -0
- package/dist/composables/useDataGridColumnUiPolicy.js +1 -0
- package/dist/composables/useDataGridContextMenu.d.ts +19 -0
- package/dist/composables/useDataGridContextMenu.d.ts.map +1 -0
- package/dist/composables/useDataGridContextMenu.js +90 -0
- package/dist/composables/useDataGridContextMenuActionRouter.d.ts +2 -0
- package/dist/composables/useDataGridContextMenuActionRouter.d.ts.map +1 -0
- package/dist/composables/useDataGridContextMenuActionRouter.js +1 -0
- package/dist/composables/useDataGridContextMenuAnchor.d.ts +2 -0
- package/dist/composables/useDataGridContextMenuAnchor.d.ts.map +1 -0
- package/dist/composables/useDataGridContextMenuAnchor.js +1 -0
- package/dist/composables/useDataGridCopyRangeHelpers.d.ts +2 -0
- package/dist/composables/useDataGridCopyRangeHelpers.d.ts.map +1 -0
- package/dist/composables/useDataGridCopyRangeHelpers.js +1 -0
- package/dist/composables/useDataGridDragPointerSelection.d.ts +2 -0
- package/dist/composables/useDataGridDragPointerSelection.d.ts.map +1 -0
- package/dist/composables/useDataGridDragPointerSelection.js +1 -0
- package/dist/composables/useDataGridDragSelectionLifecycle.d.ts +2 -0
- package/dist/composables/useDataGridDragSelectionLifecycle.d.ts.map +1 -0
- package/dist/composables/useDataGridDragSelectionLifecycle.js +1 -0
- package/dist/composables/useDataGridEditableValuePolicy.d.ts +2 -0
- package/dist/composables/useDataGridEditableValuePolicy.d.ts.map +1 -0
- package/dist/composables/useDataGridEditableValuePolicy.js +1 -0
- package/dist/composables/useDataGridEnumTrigger.d.ts +2 -0
- package/dist/composables/useDataGridEnumTrigger.d.ts.map +1 -0
- package/dist/composables/useDataGridEnumTrigger.js +1 -0
- package/dist/composables/useDataGridFillHandleStart.d.ts +2 -0
- package/dist/composables/useDataGridFillHandleStart.d.ts.map +1 -0
- package/dist/composables/useDataGridFillHandleStart.js +1 -0
- package/dist/composables/useDataGridFillSelectionLifecycle.d.ts +2 -0
- package/dist/composables/useDataGridFillSelectionLifecycle.d.ts.map +1 -0
- package/dist/composables/useDataGridFillSelectionLifecycle.js +1 -0
- package/dist/composables/useDataGridGlobalMouseDownContextMenuCloser.d.ts +2 -0
- package/dist/composables/useDataGridGlobalMouseDownContextMenuCloser.d.ts.map +1 -0
- package/dist/composables/useDataGridGlobalMouseDownContextMenuCloser.js +1 -0
- package/dist/composables/useDataGridGlobalPointerLifecycle.d.ts +2 -0
- package/dist/composables/useDataGridGlobalPointerLifecycle.d.ts.map +1 -0
- package/dist/composables/useDataGridGlobalPointerLifecycle.js +1 -0
- package/dist/composables/useDataGridGroupBadge.d.ts +2 -0
- package/dist/composables/useDataGridGroupBadge.d.ts.map +1 -0
- package/dist/composables/useDataGridGroupBadge.js +1 -0
- package/dist/composables/useDataGridGroupMetaOrchestration.d.ts +18 -0
- package/dist/composables/useDataGridGroupMetaOrchestration.d.ts.map +1 -0
- package/dist/composables/useDataGridGroupMetaOrchestration.js +25 -0
- package/dist/composables/useDataGridGroupValueLabelResolver.d.ts +2 -0
- package/dist/composables/useDataGridGroupValueLabelResolver.d.ts.map +1 -0
- package/dist/composables/useDataGridGroupValueLabelResolver.js +1 -0
- package/dist/composables/useDataGridGroupingSortOrchestration.d.ts +13 -0
- package/dist/composables/useDataGridGroupingSortOrchestration.d.ts.map +1 -0
- package/dist/composables/useDataGridGroupingSortOrchestration.js +11 -0
- package/dist/composables/useDataGridHeaderContextActions.d.ts +2 -0
- package/dist/composables/useDataGridHeaderContextActions.d.ts.map +1 -0
- package/dist/composables/useDataGridHeaderContextActions.js +1 -0
- package/dist/composables/useDataGridHeaderInteractionRouter.d.ts +2 -0
- package/dist/composables/useDataGridHeaderInteractionRouter.d.ts.map +1 -0
- package/dist/composables/useDataGridHeaderInteractionRouter.js +1 -0
- package/dist/composables/useDataGridHeaderLayerOrchestration.d.ts +2 -0
- package/dist/composables/useDataGridHeaderLayerOrchestration.d.ts.map +1 -0
- package/dist/composables/useDataGridHeaderLayerOrchestration.js +1 -0
- package/dist/composables/useDataGridHeaderResizeOrchestration.d.ts +18 -0
- package/dist/composables/useDataGridHeaderResizeOrchestration.d.ts.map +1 -0
- package/dist/composables/useDataGridHeaderResizeOrchestration.js +26 -0
- package/dist/composables/useDataGridHeaderSortOrchestration.d.ts +2 -0
- package/dist/composables/useDataGridHeaderSortOrchestration.d.ts.map +1 -0
- package/dist/composables/useDataGridHeaderSortOrchestration.js +1 -0
- package/dist/composables/useDataGridHistoryActionRunner.d.ts +2 -0
- package/dist/composables/useDataGridHistoryActionRunner.d.ts.map +1 -0
- package/dist/composables/useDataGridHistoryActionRunner.js +1 -0
- package/dist/composables/useDataGridInlineEditOrchestration.d.ts +37 -0
- package/dist/composables/useDataGridInlineEditOrchestration.d.ts.map +1 -0
- package/dist/composables/useDataGridInlineEditOrchestration.js +41 -0
- package/dist/composables/useDataGridInlineEditorFocus.d.ts +2 -0
- package/dist/composables/useDataGridInlineEditorFocus.d.ts.map +1 -0
- package/dist/composables/useDataGridInlineEditorFocus.js +1 -0
- package/dist/composables/useDataGridInlineEditorKeyRouter.d.ts +2 -0
- package/dist/composables/useDataGridInlineEditorKeyRouter.d.ts.map +1 -0
- package/dist/composables/useDataGridInlineEditorKeyRouter.js +1 -0
- package/dist/composables/useDataGridInlineEditorSchema.d.ts +2 -0
- package/dist/composables/useDataGridInlineEditorSchema.d.ts.map +1 -0
- package/dist/composables/useDataGridInlineEditorSchema.js +1 -0
- package/dist/composables/useDataGridInlineEditorTargetNavigation.d.ts +2 -0
- package/dist/composables/useDataGridInlineEditorTargetNavigation.d.ts.map +1 -0
- package/dist/composables/useDataGridInlineEditorTargetNavigation.js +1 -0
- package/dist/composables/useDataGridIntentHistory.d.ts +16 -0
- package/dist/composables/useDataGridIntentHistory.d.ts.map +1 -0
- package/dist/composables/useDataGridIntentHistory.js +27 -0
- package/dist/composables/useDataGridKeyboardCommandRouter.d.ts +2 -0
- package/dist/composables/useDataGridKeyboardCommandRouter.d.ts.map +1 -0
- package/dist/composables/useDataGridKeyboardCommandRouter.js +1 -0
- package/dist/composables/useDataGridMoveMutationPolicy.d.ts +2 -0
- package/dist/composables/useDataGridMoveMutationPolicy.d.ts.map +1 -0
- package/dist/composables/useDataGridMoveMutationPolicy.js +1 -0
- package/dist/composables/useDataGridMutationSnapshot.d.ts +2 -0
- package/dist/composables/useDataGridMutationSnapshot.d.ts.map +1 -0
- package/dist/composables/useDataGridMutationSnapshot.js +1 -0
- package/dist/composables/useDataGridNavigationPrimitives.d.ts +2 -0
- package/dist/composables/useDataGridNavigationPrimitives.d.ts.map +1 -0
- package/dist/composables/useDataGridNavigationPrimitives.js +1 -0
- package/dist/composables/useDataGridOverlayScrollState.d.ts +17 -0
- package/dist/composables/useDataGridOverlayScrollState.d.ts.map +1 -0
- package/dist/composables/useDataGridOverlayScrollState.js +26 -0
- package/dist/composables/useDataGridPointerAutoScroll.d.ts +2 -0
- package/dist/composables/useDataGridPointerAutoScroll.d.ts.map +1 -0
- package/dist/composables/useDataGridPointerAutoScroll.js +1 -0
- package/dist/composables/useDataGridPointerCellCoordResolver.d.ts +2 -0
- package/dist/composables/useDataGridPointerCellCoordResolver.d.ts.map +1 -0
- package/dist/composables/useDataGridPointerCellCoordResolver.js +1 -0
- package/dist/composables/useDataGridPointerModifierPolicy.d.ts +2 -0
- package/dist/composables/useDataGridPointerModifierPolicy.d.ts.map +1 -0
- package/dist/composables/useDataGridPointerModifierPolicy.js +1 -0
- package/dist/composables/useDataGridPointerPreviewRouter.d.ts +2 -0
- package/dist/composables/useDataGridPointerPreviewRouter.d.ts.map +1 -0
- package/dist/composables/useDataGridPointerPreviewRouter.js +1 -0
- package/dist/composables/useDataGridQuickFilterActions.d.ts +2 -0
- package/dist/composables/useDataGridQuickFilterActions.d.ts.map +1 -0
- package/dist/composables/useDataGridQuickFilterActions.js +1 -0
- package/dist/composables/useDataGridRangeMoveLifecycle.d.ts +2 -0
- package/dist/composables/useDataGridRangeMoveLifecycle.d.ts.map +1 -0
- package/dist/composables/useDataGridRangeMoveLifecycle.js +1 -0
- package/dist/composables/useDataGridRangeMoveStart.d.ts +2 -0
- package/dist/composables/useDataGridRangeMoveStart.d.ts.map +1 -0
- package/dist/composables/useDataGridRangeMoveStart.js +1 -0
- package/dist/composables/useDataGridRangeMutationEngine.d.ts +2 -0
- package/dist/composables/useDataGridRangeMutationEngine.d.ts.map +1 -0
- package/dist/composables/useDataGridRangeMutationEngine.js +1 -0
- package/dist/composables/useDataGridRowSelectionInputHandlers.d.ts +2 -0
- package/dist/composables/useDataGridRowSelectionInputHandlers.d.ts.map +1 -0
- package/dist/composables/useDataGridRowSelectionInputHandlers.js +1 -0
- package/dist/composables/useDataGridRowSelectionOrchestration.d.ts +20 -0
- package/dist/composables/useDataGridRowSelectionOrchestration.d.ts.map +1 -0
- package/dist/composables/useDataGridRowSelectionOrchestration.js +43 -0
- package/dist/composables/useDataGridRowsProjection.d.ts +19 -0
- package/dist/composables/useDataGridRowsProjection.d.ts.map +1 -0
- package/dist/composables/useDataGridRowsProjection.js +21 -0
- package/dist/composables/useDataGridRuntime.d.ts +24 -0
- package/dist/composables/useDataGridRuntime.d.ts.map +1 -0
- package/dist/composables/useDataGridRuntime.js +81 -0
- package/dist/composables/useDataGridSelectionComparators.d.ts +2 -0
- package/dist/composables/useDataGridSelectionComparators.d.ts.map +1 -0
- package/dist/composables/useDataGridSelectionComparators.js +1 -0
- package/dist/composables/useDataGridSelectionMoveHandle.d.ts +2 -0
- package/dist/composables/useDataGridSelectionMoveHandle.d.ts.map +1 -0
- package/dist/composables/useDataGridSelectionMoveHandle.js +1 -0
- package/dist/composables/useDataGridSelectionOverlayOrchestration.d.ts +26 -0
- package/dist/composables/useDataGridSelectionOverlayOrchestration.d.ts.map +1 -0
- package/dist/composables/useDataGridSelectionOverlayOrchestration.js +25 -0
- package/dist/composables/useDataGridTabTargetResolver.d.ts +2 -0
- package/dist/composables/useDataGridTabTargetResolver.d.ts.map +1 -0
- package/dist/composables/useDataGridTabTargetResolver.js +1 -0
- package/dist/composables/useDataGridViewportBlurHandler.d.ts +2 -0
- package/dist/composables/useDataGridViewportBlurHandler.d.ts.map +1 -0
- package/dist/composables/useDataGridViewportBlurHandler.js +1 -0
- package/dist/composables/useDataGridViewportContextMenuRouter.d.ts +2 -0
- package/dist/composables/useDataGridViewportContextMenuRouter.d.ts.map +1 -0
- package/dist/composables/useDataGridViewportContextMenuRouter.js +1 -0
- package/dist/composables/useDataGridViewportMeasureScheduler.d.ts +2 -0
- package/dist/composables/useDataGridViewportMeasureScheduler.d.ts.map +1 -0
- package/dist/composables/useDataGridViewportMeasureScheduler.js +1 -0
- package/dist/composables/useDataGridViewportScrollLifecycle.d.ts +2 -0
- package/dist/composables/useDataGridViewportScrollLifecycle.d.ts.map +1 -0
- package/dist/composables/useDataGridViewportScrollLifecycle.js +1 -0
- package/dist/composables/useDataGridVirtualRangeMetrics.d.ts +15 -0
- package/dist/composables/useDataGridVirtualRangeMetrics.d.ts.map +1 -0
- package/dist/composables/useDataGridVirtualRangeMetrics.js +30 -0
- package/dist/composables/useDataGridVisibleRowsSyncScheduler.d.ts +2 -0
- package/dist/composables/useDataGridVisibleRowsSyncScheduler.d.ts.map +1 -0
- package/dist/composables/useDataGridVisibleRowsSyncScheduler.js +1 -0
- package/dist/composables/useDomSampling.d.ts +17 -0
- package/dist/composables/useDomSampling.d.ts.map +1 -0
- package/dist/composables/useDomSampling.js +66 -0
- package/dist/composables/useHorizontalViewport.d.ts +35 -0
- package/dist/composables/useHorizontalViewport.d.ts.map +1 -0
- package/dist/composables/useHorizontalViewport.js +167 -0
- package/dist/composables/useSelectableRows.d.ts +24 -0
- package/dist/composables/useSelectableRows.d.ts.map +1 -0
- package/dist/composables/useSelectableRows.js +108 -0
- package/dist/composables/useSelectionOverlayAdapter.d.ts +34 -0
- package/dist/composables/useSelectionOverlayAdapter.d.ts.map +1 -0
- package/dist/composables/useSelectionOverlayAdapter.js +159 -0
- package/dist/composables/useServerRowModel.d.ts +30 -0
- package/dist/composables/useServerRowModel.d.ts.map +1 -0
- package/dist/composables/useServerRowModel.js +44 -0
- package/dist/composables/useTableAdvancedFilterModal.d.ts +30 -0
- package/dist/composables/useTableAdvancedFilterModal.d.ts.map +1 -0
- package/dist/composables/useTableAdvancedFilterModal.js +78 -0
- package/dist/composables/useTableAutoColumnScheduler.d.ts +26 -0
- package/dist/composables/useTableAutoColumnScheduler.d.ts.map +1 -0
- package/dist/composables/useTableAutoColumnScheduler.js +59 -0
- package/dist/composables/useTableAutoScroll.d.ts +18 -0
- package/dist/composables/useTableAutoScroll.d.ts.map +1 -0
- package/dist/composables/useTableAutoScroll.js +167 -0
- package/dist/composables/useTableClipboardBridge.d.ts +45 -0
- package/dist/composables/useTableClipboardBridge.d.ts.map +1 -0
- package/dist/composables/useTableClipboardBridge.js +185 -0
- package/dist/composables/useTableColumnBindings.d.ts +25 -0
- package/dist/composables/useTableColumnBindings.d.ts.map +1 -0
- package/dist/composables/useTableColumnBindings.js +72 -0
- package/dist/composables/useTableColumnPinning.d.ts +17 -0
- package/dist/composables/useTableColumnPinning.d.ts.map +1 -0
- package/dist/composables/useTableColumnPinning.js +49 -0
- package/dist/composables/useTableDataModel.d.ts +46 -0
- package/dist/composables/useTableDataModel.d.ts.map +1 -0
- package/dist/composables/useTableDataModel.js +411 -0
- package/dist/composables/useTableEditing.d.ts +67 -0
- package/dist/composables/useTableEditing.d.ts.map +1 -0
- package/dist/composables/useTableEditing.js +321 -0
- package/dist/composables/useTableFilters.d.ts +55 -0
- package/dist/composables/useTableFilters.d.ts.map +1 -0
- package/dist/composables/useTableFilters.js +723 -0
- package/dist/composables/useTableFindReplaceBridge.d.ts +27 -0
- package/dist/composables/useTableFindReplaceBridge.d.ts.map +1 -0
- package/dist/composables/useTableFindReplaceBridge.js +84 -0
- package/dist/composables/useTableFocusManagement.d.ts +35 -0
- package/dist/composables/useTableFocusManagement.d.ts.map +1 -0
- package/dist/composables/useTableFocusManagement.js +106 -0
- package/dist/composables/useTableGridLayout.d.ts +17 -0
- package/dist/composables/useTableGridLayout.d.ts.map +1 -0
- package/dist/composables/useTableGridLayout.js +47 -0
- package/dist/composables/useTableGrouping.d.ts +54 -0
- package/dist/composables/useTableGrouping.d.ts.map +1 -0
- package/dist/composables/useTableGrouping.js +255 -0
- package/dist/composables/useTableHeaderLayout.d.ts +33 -0
- package/dist/composables/useTableHeaderLayout.d.ts.map +1 -0
- package/dist/composables/useTableHeaderLayout.js +84 -0
- package/dist/composables/useTableHistory.d.ts +16 -0
- package/dist/composables/useTableHistory.d.ts.map +1 -0
- package/dist/composables/useTableHistory.js +37 -0
- package/dist/composables/useTableHoverOverlay.d.ts +36 -0
- package/dist/composables/useTableHoverOverlay.d.ts.map +1 -0
- package/dist/composables/useTableHoverOverlay.js +323 -0
- package/dist/composables/useTableImperativeRendering.d.ts +44 -0
- package/dist/composables/useTableImperativeRendering.d.ts.map +1 -0
- package/dist/composables/useTableImperativeRendering.js +82 -0
- package/dist/composables/useTableLocalColumns.d.ts +23 -0
- package/dist/composables/useTableLocalColumns.d.ts.map +1 -0
- package/dist/composables/useTableLocalColumns.js +40 -0
- package/dist/composables/useTableOverlayController.d.ts +14 -0
- package/dist/composables/useTableOverlayController.d.ts.map +1 -0
- package/dist/composables/useTableOverlayController.js +97 -0
- package/dist/composables/useTableOverlayScrollState.d.ts +17 -0
- package/dist/composables/useTableOverlayScrollState.d.ts.map +1 -0
- package/dist/composables/useTableOverlayScrollState.js +26 -0
- package/dist/composables/useTablePanels.d.ts +17 -0
- package/dist/composables/useTablePanels.d.ts.map +1 -0
- package/dist/composables/useTablePanels.js +60 -0
- package/dist/composables/useTableRecalcWatcher.d.ts +24 -0
- package/dist/composables/useTableRecalcWatcher.d.ts.map +1 -0
- package/dist/composables/useTableRecalcWatcher.js +30 -0
- package/dist/composables/useTableRuntime.d.ts +18 -0
- package/dist/composables/useTableRuntime.d.ts.map +1 -0
- package/dist/composables/useTableRuntime.js +43 -0
- package/dist/composables/useTableSearchHighlights.d.ts +18 -0
- package/dist/composables/useTableSearchHighlights.d.ts.map +1 -0
- package/dist/composables/useTableSearchHighlights.js +45 -0
- package/dist/composables/useTableSelection.d.ts +204 -0
- package/dist/composables/useTableSelection.d.ts.map +1 -0
- package/dist/composables/useTableSelection.js +3080 -0
- package/dist/composables/useTableServerSync.d.ts +35 -0
- package/dist/composables/useTableServerSync.d.ts.map +1 -0
- package/dist/composables/useTableServerSync.js +130 -0
- package/dist/composables/useTableSorting.d.ts +29 -0
- package/dist/composables/useTableSorting.d.ts.map +1 -0
- package/dist/composables/useTableSorting.js +84 -0
- package/dist/composables/useTableStatusMetrics.d.ts +22 -0
- package/dist/composables/useTableStatusMetrics.d.ts.map +1 -0
- package/dist/composables/useTableStatusMetrics.js +25 -0
- package/dist/composables/useTableStickyColumns.d.ts +39 -0
- package/dist/composables/useTableStickyColumns.d.ts.map +1 -0
- package/dist/composables/useTableStickyColumns.js +244 -0
- package/dist/composables/useTableTheme.d.ts +30 -0
- package/dist/composables/useTableTheme.d.ts.map +1 -0
- package/dist/composables/useTableTheme.js +207 -0
- package/dist/composables/useTableViewport.d.ts +103 -0
- package/dist/composables/useTableViewport.d.ts.map +1 -0
- package/dist/composables/useTableViewport.js +298 -0
- package/dist/composables/useTableViewportMetrics.d.ts +12 -0
- package/dist/composables/useTableViewportMetrics.d.ts.map +1 -0
- package/dist/composables/useTableViewportMetrics.js +179 -0
- package/dist/composables/useTableZoom.d.ts +16 -0
- package/dist/composables/useTableZoom.d.ts.map +1 -0
- package/dist/composables/useTableZoom.js +68 -0
- package/dist/composables/useVerticalViewport.d.ts +34 -0
- package/dist/composables/useVerticalViewport.d.ts.map +1 -0
- package/dist/composables/useVerticalViewport.js +210 -0
- package/dist/composables/useVirtualDebug.d.ts +169 -0
- package/dist/composables/useVirtualDebug.d.ts.map +1 -0
- package/dist/composables/useVirtualDebug.js +206 -0
- package/dist/composables/useVirtualList.d.ts +25 -0
- package/dist/composables/useVirtualList.d.ts.map +1 -0
- package/dist/composables/useVirtualList.js +54 -0
- package/dist/context.d.ts +463 -0
- package/dist/context.d.ts.map +1 -0
- package/dist/context.js +5 -0
- package/dist/contracts/dataGridSelectors.d.ts +74 -0
- package/dist/contracts/dataGridSelectors.d.ts.map +1 -0
- package/dist/contracts/dataGridSelectors.js +75 -0
- package/dist/core/api/useUiTableApi.d.ts +51 -0
- package/dist/core/api/useUiTableApi.d.ts.map +1 -0
- package/dist/core/api/useUiTableApi.js +103 -0
- package/dist/core/columns/columnGroup.d.ts +2 -0
- package/dist/core/columns/columnGroup.d.ts.map +1 -0
- package/dist/core/columns/columnGroup.js +1 -0
- package/dist/core/columns/measurement.d.ts +3 -0
- package/dist/core/columns/measurement.d.ts.map +1 -0
- package/dist/core/columns/measurement.js +132 -0
- package/dist/core/virtualization/types.d.ts +8 -0
- package/dist/core/virtualization/types.d.ts.map +1 -0
- package/dist/core/virtualization/types.js +4 -0
- package/dist/core/virtualization/viewportConfig.d.ts +6 -0
- package/dist/core/virtualization/viewportConfig.d.ts.map +1 -0
- package/dist/core/virtualization/viewportConfig.js +20 -0
- package/dist/dataGridSettingsAdapter.d.ts +4 -0
- package/dist/dataGridSettingsAdapter.d.ts.map +1 -0
- package/dist/dataGridSettingsAdapter.js +43 -0
- package/dist/dataGridSettingsStore.d.ts +29 -0
- package/dist/dataGridSettingsStore.d.ts.map +1 -0
- package/dist/dataGridSettingsStore.js +162 -0
- package/dist/imperative/createDomControllerSuite.d.ts +3 -0
- package/dist/imperative/createDomControllerSuite.d.ts.map +1 -0
- package/dist/imperative/createDomControllerSuite.js +24 -0
- package/dist/imperative/selectionDomAdapter.d.ts +54 -0
- package/dist/imperative/selectionDomAdapter.d.ts.map +1 -0
- package/dist/imperative/selectionDomAdapter.js +466 -0
- package/dist/imperative/useImperativeTableAdapter.d.ts +12 -0
- package/dist/imperative/useImperativeTableAdapter.d.ts.map +1 -0
- package/dist/imperative/useImperativeTableAdapter.js +80 -0
- package/dist/index.d.ts +2 -0
- package/dist/index.d.ts.map +1 -0
- package/dist/index.js +1 -0
- package/dist/piniaTableSettingsAdapter.d.ts +5 -0
- package/dist/piniaTableSettingsAdapter.d.ts.map +1 -0
- package/dist/piniaTableSettingsAdapter.js +45 -0
- package/dist/public.d.ts +18 -0
- package/dist/public.d.ts.map +1 -0
- package/dist/public.js +16 -0
- package/dist/runtime/createDataGridVueRuntime.d.ts +7 -0
- package/dist/runtime/createDataGridVueRuntime.d.ts.map +1 -0
- package/dist/runtime/createDataGridVueRuntime.js +4 -0
- package/dist/src/index.d.ts +2 -0
- package/dist/src/index.d.ts.map +1 -0
- package/dist/src/index.js +1 -0
- package/dist/src/piniaTableSettingsAdapter.d.ts +4 -0
- package/dist/src/piniaTableSettingsAdapter.d.ts.map +1 -0
- package/dist/src/piniaTableSettingsAdapter.js +37 -0
- package/dist/src/public.d.ts +7 -0
- package/dist/src/public.d.ts.map +1 -0
- package/dist/src/public.js +6 -0
- package/dist/src/tableSettingsStore.d.ts +13 -0
- package/dist/src/tableSettingsStore.d.ts.map +1 -0
- package/dist/src/tableSettingsStore.js +134 -0
- package/dist/stable.d.ts +2 -0
- package/dist/stable.d.ts.map +1 -0
- package/dist/stable.js +1 -0
- package/dist/stores/useFindReplaceStore.d.ts +52 -0
- package/dist/stores/useFindReplaceStore.d.ts.map +1 -0
- package/dist/stores/useFindReplaceStore.js +237 -0
- package/dist/tableSettingsStore.d.ts +27 -0
- package/dist/tableSettingsStore.d.ts.map +1 -0
- package/dist/tableSettingsStore.js +154 -0
- package/dist/tsconfig.public.tsbuildinfo +1 -0
- package/dist/types/index.d.ts +20 -0
- package/dist/types/index.d.ts.map +1 -0
- package/dist/types/index.js +1 -0
- package/dist/types/overlay.d.ts +26 -0
- package/dist/types/overlay.d.ts.map +1 -0
- package/dist/types/overlay.js +1 -0
- package/dist/types/piniaPersist.d.ts +11 -0
- package/dist/types/piniaPersist.d.ts.map +1 -0
- package/dist/types/piniaPersist.js +2 -0
- package/dist/utils/columnStorage.d.ts +9 -0
- package/dist/utils/columnStorage.d.ts.map +1 -0
- package/dist/utils/columnStorage.js +136 -0
- package/dist/utils/createWheelAccumulator.d.ts +22 -0
- package/dist/utils/createWheelAccumulator.d.ts.map +1 -0
- package/dist/utils/createWheelAccumulator.js +70 -0
- package/dist/utils/sortStateAdapter.d.ts +5 -0
- package/dist/utils/sortStateAdapter.d.ts.map +1 -0
- package/dist/utils/sortStateAdapter.js +24 -0
- package/package.json +75 -0
|
@@ -0,0 +1,72 @@
|
|
|
1
|
+
import { computed } from "vue";
|
|
2
|
+
export function useTableColumnBindings({ headerRenderableEntries, visibleColumnEntries, columnTrackStartMap, localColumns, columnWidthDomMap, bodyCellClass, isColumnSticky, getStickySide, getStickyLeftOffset, getStickyRightOffset, getAriaColIndex, }) {
|
|
3
|
+
const visibleColumnIndexMap = computed(() => {
|
|
4
|
+
const map = new Map();
|
|
5
|
+
visibleColumnEntries.value.forEach(entry => {
|
|
6
|
+
const columnKey = entry.metric.column.key;
|
|
7
|
+
const columnIndex = entry.metric.index;
|
|
8
|
+
if (Number.isInteger(columnIndex)) {
|
|
9
|
+
map.set(columnKey, columnIndex);
|
|
10
|
+
}
|
|
11
|
+
});
|
|
12
|
+
return map;
|
|
13
|
+
});
|
|
14
|
+
const getColumnIndex = (columnKey) => {
|
|
15
|
+
const visibleIndex = visibleColumnIndexMap.value.get(columnKey);
|
|
16
|
+
if (visibleIndex != null) {
|
|
17
|
+
return visibleIndex;
|
|
18
|
+
}
|
|
19
|
+
const fallbackIndex = localColumns.value.findIndex(column => column.key === columnKey);
|
|
20
|
+
if (fallbackIndex !== -1) {
|
|
21
|
+
return fallbackIndex;
|
|
22
|
+
}
|
|
23
|
+
const trackEntry = columnTrackStartMap.value.get(columnKey);
|
|
24
|
+
if (trackEntry != null) {
|
|
25
|
+
return trackEntry - 1;
|
|
26
|
+
}
|
|
27
|
+
return 0;
|
|
28
|
+
};
|
|
29
|
+
const columnIndexToKey = computed(() => {
|
|
30
|
+
const map = new Map();
|
|
31
|
+
headerRenderableEntries.value.forEach(entry => {
|
|
32
|
+
const columnKey = entry.metric.column.key;
|
|
33
|
+
const columnIndex = getColumnIndex(columnKey);
|
|
34
|
+
if (Number.isInteger(columnIndex)) {
|
|
35
|
+
map.set(columnIndex, columnKey);
|
|
36
|
+
}
|
|
37
|
+
});
|
|
38
|
+
return map;
|
|
39
|
+
});
|
|
40
|
+
const bodyColumnBindings = computed(() => {
|
|
41
|
+
const bindings = new Map();
|
|
42
|
+
for (const entry of headerRenderableEntries.value) {
|
|
43
|
+
const column = entry.metric.column;
|
|
44
|
+
const columnIndex = getColumnIndex(column.key);
|
|
45
|
+
bindings.set(column.key, {
|
|
46
|
+
column,
|
|
47
|
+
columnIndex,
|
|
48
|
+
visualWidth: columnWidthDomMap.value.get(column.key) ?? 0,
|
|
49
|
+
cellClass: bodyCellClass(column),
|
|
50
|
+
sticky: isColumnSticky(column),
|
|
51
|
+
stickySide: getStickySide(column),
|
|
52
|
+
stickyLeftOffset: getStickyLeftOffset(column),
|
|
53
|
+
stickyRightOffset: getStickyRightOffset(column),
|
|
54
|
+
ariaColIndex: getAriaColIndex(columnIndex),
|
|
55
|
+
});
|
|
56
|
+
}
|
|
57
|
+
return bindings;
|
|
58
|
+
});
|
|
59
|
+
const getBodyColumnBinding = (columnKey) => {
|
|
60
|
+
const binding = bodyColumnBindings.value.get(columnKey);
|
|
61
|
+
if (!binding) {
|
|
62
|
+
throw new Error(`Missing body column binding for key: ${columnKey}`);
|
|
63
|
+
}
|
|
64
|
+
return binding;
|
|
65
|
+
};
|
|
66
|
+
return {
|
|
67
|
+
getColumnIndex,
|
|
68
|
+
columnIndexToKey,
|
|
69
|
+
bodyColumnBindings,
|
|
70
|
+
getBodyColumnBinding,
|
|
71
|
+
};
|
|
72
|
+
}
|
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
import type { Ref } from "vue";
|
|
2
|
+
import type { UiTableColumn } from "../../core/types";
|
|
3
|
+
import type { ColumnPinPosition } from "../context";
|
|
4
|
+
interface UseTableColumnPinningOptions {
|
|
5
|
+
localColumns: Ref<UiTableColumn[]>;
|
|
6
|
+
reorderColumns: (columns: UiTableColumn[]) => void;
|
|
7
|
+
getStoredPinState: () => Record<string, ColumnPinPosition> | null | undefined;
|
|
8
|
+
}
|
|
9
|
+
export interface UseTableColumnPinningResult {
|
|
10
|
+
resolveColumnPinState: (column: UiTableColumn) => ColumnPinPosition;
|
|
11
|
+
applyStoredPinState: () => void;
|
|
12
|
+
reorderPinnedColumns: () => void;
|
|
13
|
+
setColumnPin: (columnKey: string, position: ColumnPinPosition) => void;
|
|
14
|
+
}
|
|
15
|
+
export declare function useTableColumnPinning(options: UseTableColumnPinningOptions): UseTableColumnPinningResult;
|
|
16
|
+
export {};
|
|
17
|
+
//# sourceMappingURL=useTableColumnPinning.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"useTableColumnPinning.d.ts","sourceRoot":"","sources":["../../src/composables/useTableColumnPinning.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,GAAG,EAAE,MAAM,KAAK,CAAA;AAE9B,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,kBAAkB,CAAA;AACrD,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,YAAY,CAAA;AAGnD,UAAU,4BAA4B;IACpC,YAAY,EAAE,GAAG,CAAC,aAAa,EAAE,CAAC,CAAA;IAClC,cAAc,EAAE,CAAC,OAAO,EAAE,aAAa,EAAE,KAAK,IAAI,CAAA;IAClD,iBAAiB,EAAE,MAAM,MAAM,CAAC,MAAM,EAAE,iBAAiB,CAAC,GAAG,IAAI,GAAG,SAAS,CAAA;CAC9E;AAED,MAAM,WAAW,2BAA2B;IAC1C,qBAAqB,EAAE,CAAC,MAAM,EAAE,aAAa,KAAK,iBAAiB,CAAA;IACnE,mBAAmB,EAAE,MAAM,IAAI,CAAA;IAC/B,oBAAoB,EAAE,MAAM,IAAI,CAAA;IAChC,YAAY,EAAE,CAAC,SAAS,EAAE,MAAM,EAAE,QAAQ,EAAE,iBAAiB,KAAK,IAAI,CAAA;CACvE;AAUD,wBAAgB,qBAAqB,CAAC,OAAO,EAAE,4BAA4B,GAAG,2BAA2B,CA2CxG"}
|
|
@@ -0,0 +1,49 @@
|
|
|
1
|
+
import { normalizeColumnPinInput, resolveColumnPinPosition } from "../adapters/columnPinNormalization";
|
|
2
|
+
function applyPinProps(column, position) {
|
|
3
|
+
const normalized = normalizeColumnPinInput(column);
|
|
4
|
+
if (normalized.isSystem) {
|
|
5
|
+
return { ...normalized, pin: "left" };
|
|
6
|
+
}
|
|
7
|
+
return { ...normalized, pin: position };
|
|
8
|
+
}
|
|
9
|
+
export function useTableColumnPinning(options) {
|
|
10
|
+
const resolveColumnPinState = (column) => {
|
|
11
|
+
return resolveColumnPinPosition(column);
|
|
12
|
+
};
|
|
13
|
+
const applyStoredPinState = () => {
|
|
14
|
+
const stored = options.getStoredPinState();
|
|
15
|
+
if (!stored)
|
|
16
|
+
return;
|
|
17
|
+
options.localColumns.value = options.localColumns.value.map(column => {
|
|
18
|
+
if (column.isSystem)
|
|
19
|
+
return column;
|
|
20
|
+
const position = stored[column.key] ?? "none";
|
|
21
|
+
return applyPinProps(column, position);
|
|
22
|
+
});
|
|
23
|
+
};
|
|
24
|
+
const reorderPinnedColumns = () => {
|
|
25
|
+
const columns = options.localColumns.value;
|
|
26
|
+
const left = columns.filter(column => !column.isSystem && resolveColumnPinState(column) === "left");
|
|
27
|
+
const right = columns.filter(column => !column.isSystem && resolveColumnPinState(column) === "right");
|
|
28
|
+
if (!left.length && !right.length)
|
|
29
|
+
return;
|
|
30
|
+
const systemColumns = columns.filter(column => column.isSystem);
|
|
31
|
+
const middle = columns.filter(column => !column.isSystem && resolveColumnPinState(column) === "none");
|
|
32
|
+
const desiredOrder = [...systemColumns, ...left, ...middle, ...right];
|
|
33
|
+
const currentOrderKey = columns.map(column => column.key).join("|");
|
|
34
|
+
const desiredOrderKey = desiredOrder.map(column => column.key).join("|");
|
|
35
|
+
if (currentOrderKey === desiredOrderKey)
|
|
36
|
+
return;
|
|
37
|
+
options.reorderColumns(desiredOrder);
|
|
38
|
+
};
|
|
39
|
+
const setColumnPin = (columnKey, position) => {
|
|
40
|
+
options.localColumns.value = options.localColumns.value.map(column => column.key === columnKey ? applyPinProps(column, position) : column);
|
|
41
|
+
reorderPinnedColumns();
|
|
42
|
+
};
|
|
43
|
+
return {
|
|
44
|
+
resolveColumnPinState,
|
|
45
|
+
applyStoredPinState,
|
|
46
|
+
reorderPinnedColumns,
|
|
47
|
+
setColumnPin,
|
|
48
|
+
};
|
|
49
|
+
}
|
|
@@ -0,0 +1,46 @@
|
|
|
1
|
+
import { type ComputedRef } from "vue";
|
|
2
|
+
import type { NormalizedTableProps } from "../../core/config/tableConfig";
|
|
3
|
+
import type { UiTableLazyLoadReason, UiTableSortState, UiTableFilterSnapshot } from "../../core/types";
|
|
4
|
+
import type { EventArgs, HostEventName } from "../../core/runtime/tableRuntime";
|
|
5
|
+
type EmitHostEvent = <K extends HostEventName>(name: K, ...args: EventArgs<K>) => void;
|
|
6
|
+
type ServerSortResolver = () => UiTableSortState[];
|
|
7
|
+
type ServerFilterResolver = () => UiTableFilterSnapshot | null;
|
|
8
|
+
interface UseTableDataModelOptions {
|
|
9
|
+
normalizedProps: ComputedRef<NormalizedTableProps>;
|
|
10
|
+
emit: (event: string, ...args: any[]) => void;
|
|
11
|
+
fireEvent: EmitHostEvent;
|
|
12
|
+
getServerSorts: ServerSortResolver;
|
|
13
|
+
getServerFilters: ServerFilterResolver;
|
|
14
|
+
}
|
|
15
|
+
export declare function useTableDataModel(options: UseTableDataModelOptions): {
|
|
16
|
+
internalLazyLoading: import("vue").Ref<boolean, boolean>;
|
|
17
|
+
isLazyMode: ComputedRef<boolean>;
|
|
18
|
+
serverSideModel: ComputedRef<any>;
|
|
19
|
+
serverSideFiltering: ComputedRef<any>;
|
|
20
|
+
serverSideSorting: ComputedRef<any>;
|
|
21
|
+
autoLazyOnScroll: ComputedRef<any>;
|
|
22
|
+
autoLazyOnMount: ComputedRef<any>;
|
|
23
|
+
resolvedRows: ComputedRef<any>;
|
|
24
|
+
loadingState: ComputedRef<any>;
|
|
25
|
+
computedHasMore: ComputedRef<any>;
|
|
26
|
+
requestPage: (page: number, reason?: UiTableLazyLoadReason) => Promise<void>;
|
|
27
|
+
requestNextPage: (reason?: UiTableLazyLoadReason) => Promise<void>;
|
|
28
|
+
resetLazyPaging: (options?: {
|
|
29
|
+
clearRows?: boolean;
|
|
30
|
+
}) => void;
|
|
31
|
+
triggerServerReload: (reason: UiTableLazyLoadReason) => Promise<void>;
|
|
32
|
+
scheduleServerReload: (reason: UiTableLazyLoadReason) => void;
|
|
33
|
+
serverRowModel: import("./useServerRowModel").ServerRowModel<any>;
|
|
34
|
+
serverRowBlocks: ComputedRef<Map<number, any[]>>;
|
|
35
|
+
serverRowTotal: ComputedRef<number>;
|
|
36
|
+
serverRows: ComputedRef<any[]>;
|
|
37
|
+
clearPlaceholderRows: () => void;
|
|
38
|
+
isServerPlaceholderRow: (row: unknown) => row is Record<string, unknown>;
|
|
39
|
+
lazyPendingPage: import("vue").Ref<number | null, number | null>;
|
|
40
|
+
lazyErrorState: import("vue").Ref<unknown, unknown>;
|
|
41
|
+
lastServerFilterFingerprint: import("vue").Ref<string | null, string | null>;
|
|
42
|
+
lastServerSortFingerprint: import("vue").Ref<string | null, string | null>;
|
|
43
|
+
setScrollToTopForServer: (fn: (() => void) | null) => void;
|
|
44
|
+
};
|
|
45
|
+
export {};
|
|
46
|
+
//# sourceMappingURL=useTableDataModel.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"useTableDataModel.d.ts","sourceRoot":"","sources":["../../src/composables/useTableDataModel.ts"],"names":[],"mappings":"AAAA,OAAO,EAAgE,KAAK,WAAW,EAAE,MAAM,KAAK,CAAA;AACpG,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,+BAA+B,CAAA;AACzE,OAAO,KAAK,EAEV,qBAAqB,EAErB,gBAAgB,EAChB,qBAAqB,EACtB,MAAM,kBAAkB,CAAA;AAEzB,OAAO,KAAK,EAAE,SAAS,EAAE,aAAa,EAAE,MAAM,iCAAiC,CAAA;AAI/E,KAAK,aAAa,GAAG,CAAC,CAAC,SAAS,aAAa,EAAE,IAAI,EAAE,CAAC,EAAE,GAAG,IAAI,EAAE,SAAS,CAAC,CAAC,CAAC,KAAK,IAAI,CAAA;AAEtF,KAAK,kBAAkB,GAAG,MAAM,gBAAgB,EAAE,CAAA;AAClD,KAAK,oBAAoB,GAAG,MAAM,qBAAqB,GAAG,IAAI,CAAA;AAE9D,UAAU,wBAAwB;IAChC,eAAe,EAAE,WAAW,CAAC,oBAAoB,CAAC,CAAA;IAClD,IAAI,EAAE,CAAC,KAAK,EAAE,MAAM,EAAE,GAAG,IAAI,EAAE,GAAG,EAAE,KAAK,IAAI,CAAA;IAC7C,SAAS,EAAE,aAAa,CAAA;IACxB,cAAc,EAAE,kBAAkB,CAAA;IAClC,gBAAgB,EAAE,oBAAoB,CAAA;CACvC;AAED,wBAAgB,iBAAiB,CAAC,OAAO,EAAE,wBAAwB;;;;;;;;;;;wBAyRhC,MAAM,WAAU,qBAAqB;+BA2D/B,qBAAqB;gCAKzB;QAAE,SAAS,CAAC,EAAE,OAAO,CAAA;KAAE;kCAyDf,qBAAqB;mCAf1B,qBAAqB;;;;;;kCAkCtB,OAAO,KAAG,GAAG,IAAI,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC;;;;;kCAIxC,CAAC,MAAM,IAAI,CAAC,GAAG,IAAI;EAgCzD"}
|
|
@@ -0,0 +1,411 @@
|
|
|
1
|
+
import { computed, onBeforeUnmount, onMounted, ref, shallowRef, watch } from "vue";
|
|
2
|
+
import { useServerRowModel } from "./useServerRowModel";
|
|
3
|
+
const SERVER_PLACEHOLDER_FLAG = "__uiTableServerPlaceholder__";
|
|
4
|
+
export function useTableDataModel(options) {
|
|
5
|
+
const internalLazyLoading = ref(false);
|
|
6
|
+
const propRows = computed(() => options.normalizedProps.value.rows);
|
|
7
|
+
const resolvedPageSize = computed(() => options.normalizedProps.value.pageSize);
|
|
8
|
+
const isLazyMode = computed(() => typeof options.normalizedProps.value.lazyLoader === "function");
|
|
9
|
+
const serverSideModel = computed(() => isLazyMode.value && options.normalizedProps.value.serverSideModel);
|
|
10
|
+
const serverSideFiltering = computed(() => serverSideModel.value);
|
|
11
|
+
const serverSideSorting = computed(() => serverSideModel.value);
|
|
12
|
+
const autoLazyOnScroll = computed(() => isLazyMode.value && options.normalizedProps.value.autoLoadOnScroll);
|
|
13
|
+
const autoLazyOnMount = computed(() => isLazyMode.value && options.normalizedProps.value.loadOnMount);
|
|
14
|
+
const lazyPendingPage = ref(null);
|
|
15
|
+
const lastCompletedPage = ref(-1);
|
|
16
|
+
const lastKnownRowLength = ref(0);
|
|
17
|
+
const lazyErrorState = ref(null);
|
|
18
|
+
const serverRowLoadReason = ref("manual");
|
|
19
|
+
const scrollToTopForServer = shallowRef(null);
|
|
20
|
+
const serverRowModel = useServerRowModel({
|
|
21
|
+
blockSize: resolvedPageSize.value,
|
|
22
|
+
loadBlock: async ({ start, limit, signal, background }) => {
|
|
23
|
+
const loader = options.normalizedProps.value.lazyLoader;
|
|
24
|
+
if (!loader) {
|
|
25
|
+
return { rows: [] };
|
|
26
|
+
}
|
|
27
|
+
const blockSize = limit || resolvedPageSize.value;
|
|
28
|
+
const page = Math.floor(start / Math.max(1, blockSize));
|
|
29
|
+
const reason = background ? "scroll" : serverRowLoadReason.value;
|
|
30
|
+
const sorts = serverSideSorting.value ? options.getServerSorts() : undefined;
|
|
31
|
+
const filtersSnapshot = serverSideFiltering.value ? options.getServerFilters() : null;
|
|
32
|
+
const eventContext = {
|
|
33
|
+
page,
|
|
34
|
+
pageSize: blockSize,
|
|
35
|
+
offset: start,
|
|
36
|
+
totalLoaded: serverRowLoadedCount.value,
|
|
37
|
+
reason,
|
|
38
|
+
sorts,
|
|
39
|
+
filters: filtersSnapshot,
|
|
40
|
+
mode: "block",
|
|
41
|
+
};
|
|
42
|
+
if (!background) {
|
|
43
|
+
lazyPendingPage.value = page;
|
|
44
|
+
internalLazyLoading.value = true;
|
|
45
|
+
lazyErrorState.value = null;
|
|
46
|
+
options.emit("lazy-load", eventContext);
|
|
47
|
+
options.fireEvent("lazyLoad", eventContext);
|
|
48
|
+
}
|
|
49
|
+
try {
|
|
50
|
+
const response = await loader({
|
|
51
|
+
...eventContext,
|
|
52
|
+
signal,
|
|
53
|
+
background,
|
|
54
|
+
blockSize,
|
|
55
|
+
});
|
|
56
|
+
if (signal.aborted) {
|
|
57
|
+
return { rows: [] };
|
|
58
|
+
}
|
|
59
|
+
let rows = [];
|
|
60
|
+
let total;
|
|
61
|
+
if (Array.isArray(response)) {
|
|
62
|
+
rows = response;
|
|
63
|
+
}
|
|
64
|
+
else if (response && typeof response === "object") {
|
|
65
|
+
const payload = response;
|
|
66
|
+
if (Array.isArray(payload.rows)) {
|
|
67
|
+
rows = payload.rows;
|
|
68
|
+
}
|
|
69
|
+
if (typeof payload.total === "number") {
|
|
70
|
+
total = payload.total;
|
|
71
|
+
}
|
|
72
|
+
}
|
|
73
|
+
if (!background) {
|
|
74
|
+
const completion = { ...eventContext };
|
|
75
|
+
options.emit("lazy-load-complete", completion);
|
|
76
|
+
options.fireEvent("lazyLoadComplete", completion);
|
|
77
|
+
}
|
|
78
|
+
return total != null ? { rows, total } : rows;
|
|
79
|
+
}
|
|
80
|
+
catch (error) {
|
|
81
|
+
if (!background) {
|
|
82
|
+
lazyErrorState.value = error;
|
|
83
|
+
const payload = { ...eventContext, error };
|
|
84
|
+
options.emit("lazy-load-error", payload);
|
|
85
|
+
options.fireEvent("lazyLoadError", payload);
|
|
86
|
+
}
|
|
87
|
+
throw error;
|
|
88
|
+
}
|
|
89
|
+
finally {
|
|
90
|
+
if (!background) {
|
|
91
|
+
if (lazyPendingPage.value === page) {
|
|
92
|
+
lazyPendingPage.value = null;
|
|
93
|
+
}
|
|
94
|
+
internalLazyLoading.value = false;
|
|
95
|
+
serverRowLoadReason.value = "scroll";
|
|
96
|
+
}
|
|
97
|
+
}
|
|
98
|
+
},
|
|
99
|
+
});
|
|
100
|
+
const serverRowBlocks = computed(() => serverRowModel.blocks.value);
|
|
101
|
+
const serverRowLoadedCount = computed(() => {
|
|
102
|
+
let total = 0;
|
|
103
|
+
serverRowBlocks.value.forEach(block => {
|
|
104
|
+
total += block.length;
|
|
105
|
+
});
|
|
106
|
+
return total;
|
|
107
|
+
});
|
|
108
|
+
const placeholderRowCache = new Map();
|
|
109
|
+
function getPlaceholderRow(index) {
|
|
110
|
+
const cached = placeholderRowCache.get(index);
|
|
111
|
+
if (cached) {
|
|
112
|
+
return cached;
|
|
113
|
+
}
|
|
114
|
+
const placeholder = {
|
|
115
|
+
[SERVER_PLACEHOLDER_FLAG]: true,
|
|
116
|
+
__rowIndex: index,
|
|
117
|
+
};
|
|
118
|
+
placeholderRowCache.set(index, placeholder);
|
|
119
|
+
return placeholder;
|
|
120
|
+
}
|
|
121
|
+
function clearPlaceholderRows() {
|
|
122
|
+
placeholderRowCache.clear();
|
|
123
|
+
}
|
|
124
|
+
const serverRowTotal = computed(() => {
|
|
125
|
+
const explicit = options.normalizedProps.value.totalRows;
|
|
126
|
+
if (typeof explicit === "number" && Number.isFinite(explicit)) {
|
|
127
|
+
return Math.max(0, Math.floor(explicit));
|
|
128
|
+
}
|
|
129
|
+
const modelTotal = serverRowModel.total.value;
|
|
130
|
+
if (typeof modelTotal === "number" && Number.isFinite(modelTotal)) {
|
|
131
|
+
return Math.max(0, Math.floor(modelTotal));
|
|
132
|
+
}
|
|
133
|
+
let max = 0;
|
|
134
|
+
serverRowBlocks.value.forEach((rows, start) => {
|
|
135
|
+
if (rows.length) {
|
|
136
|
+
max = Math.max(max, start + rows.length);
|
|
137
|
+
}
|
|
138
|
+
});
|
|
139
|
+
return max;
|
|
140
|
+
});
|
|
141
|
+
const serverRows = computed(() => {
|
|
142
|
+
if (!serverSideModel.value) {
|
|
143
|
+
return [];
|
|
144
|
+
}
|
|
145
|
+
const total = serverRowTotal.value;
|
|
146
|
+
if (!Number.isFinite(total) || total <= 0) {
|
|
147
|
+
const partial = [];
|
|
148
|
+
serverRowBlocks.value.forEach(blockRows => {
|
|
149
|
+
if (blockRows.length) {
|
|
150
|
+
for (let index = 0; index < blockRows.length; index += 1) {
|
|
151
|
+
const row = blockRows[index];
|
|
152
|
+
if (row != null) {
|
|
153
|
+
partial.push(row);
|
|
154
|
+
}
|
|
155
|
+
}
|
|
156
|
+
}
|
|
157
|
+
});
|
|
158
|
+
return partial;
|
|
159
|
+
}
|
|
160
|
+
const buffer = new Array(total);
|
|
161
|
+
serverRowBlocks.value.forEach((blockRows, start) => {
|
|
162
|
+
for (let index = 0; index < blockRows.length; index += 1) {
|
|
163
|
+
const row = blockRows[index];
|
|
164
|
+
if (row != null) {
|
|
165
|
+
const absolute = start + index;
|
|
166
|
+
buffer[absolute] = row;
|
|
167
|
+
placeholderRowCache.delete(absolute);
|
|
168
|
+
}
|
|
169
|
+
}
|
|
170
|
+
});
|
|
171
|
+
for (let index = 0; index < total; index += 1) {
|
|
172
|
+
if (buffer[index] === undefined) {
|
|
173
|
+
buffer[index] = getPlaceholderRow(index);
|
|
174
|
+
}
|
|
175
|
+
}
|
|
176
|
+
return buffer;
|
|
177
|
+
});
|
|
178
|
+
const resolvedRows = computed(() => (serverSideModel.value ? serverRows.value : propRows.value));
|
|
179
|
+
const loadingState = computed(() => options.normalizedProps.value.loading || internalLazyLoading.value);
|
|
180
|
+
const computedHasMore = computed(() => {
|
|
181
|
+
if (serverSideModel.value) {
|
|
182
|
+
return false;
|
|
183
|
+
}
|
|
184
|
+
const explicit = options.normalizedProps.value.hasMore;
|
|
185
|
+
if (explicit != null) {
|
|
186
|
+
return explicit;
|
|
187
|
+
}
|
|
188
|
+
const totalRows = options.normalizedProps.value.totalRows;
|
|
189
|
+
if (totalRows != null) {
|
|
190
|
+
return resolvedRows.value.length < totalRows;
|
|
191
|
+
}
|
|
192
|
+
return true;
|
|
193
|
+
});
|
|
194
|
+
watch(() => resolvedRows.value.length, (length, previousLength) => {
|
|
195
|
+
lastKnownRowLength.value = length;
|
|
196
|
+
const derivedPage = Math.max(-1, Math.ceil(length / Math.max(1, resolvedPageSize.value)) - 1);
|
|
197
|
+
lastCompletedPage.value = derivedPage;
|
|
198
|
+
if (lazyPendingPage.value != null && derivedPage >= lazyPendingPage.value) {
|
|
199
|
+
lazyPendingPage.value = null;
|
|
200
|
+
internalLazyLoading.value = false;
|
|
201
|
+
}
|
|
202
|
+
if (previousLength !== undefined && length < (previousLength ?? 0)) {
|
|
203
|
+
lazyErrorState.value = null;
|
|
204
|
+
}
|
|
205
|
+
}, { immediate: true });
|
|
206
|
+
watch(() => options.normalizedProps.value.loading, value => {
|
|
207
|
+
if (!value && lazyPendingPage.value == null) {
|
|
208
|
+
internalLazyLoading.value = false;
|
|
209
|
+
}
|
|
210
|
+
});
|
|
211
|
+
watch(() => serverSideModel.value, value => {
|
|
212
|
+
if (value) {
|
|
213
|
+
clearPlaceholderRows();
|
|
214
|
+
serverRowModel.reset();
|
|
215
|
+
serverRowLoadReason.value = autoLazyOnMount.value ? "mount" : "manual";
|
|
216
|
+
void serverRowModel.fetchBlock(0);
|
|
217
|
+
return;
|
|
218
|
+
}
|
|
219
|
+
clearPlaceholderRows();
|
|
220
|
+
serverRowModel.reset();
|
|
221
|
+
}, { immediate: true });
|
|
222
|
+
onMounted(() => {
|
|
223
|
+
if (serverSideModel.value) {
|
|
224
|
+
return;
|
|
225
|
+
}
|
|
226
|
+
if (autoLazyOnMount.value && computedHasMore.value && resolvedRows.value.length === 0) {
|
|
227
|
+
void requestNextPage("mount");
|
|
228
|
+
}
|
|
229
|
+
});
|
|
230
|
+
onBeforeUnmount(() => {
|
|
231
|
+
if (serverSideModel.value) {
|
|
232
|
+
serverRowModel.abortAll();
|
|
233
|
+
}
|
|
234
|
+
clearPlaceholderRows();
|
|
235
|
+
});
|
|
236
|
+
function buildLazyLoadContext(page, reason) {
|
|
237
|
+
const context = {
|
|
238
|
+
page,
|
|
239
|
+
pageSize: resolvedPageSize.value,
|
|
240
|
+
offset: page * resolvedPageSize.value,
|
|
241
|
+
totalLoaded: resolvedRows.value.length,
|
|
242
|
+
reason,
|
|
243
|
+
};
|
|
244
|
+
if (serverSideSorting.value) {
|
|
245
|
+
context.sorts = options.getServerSorts();
|
|
246
|
+
}
|
|
247
|
+
if (serverSideFiltering.value) {
|
|
248
|
+
context.filters = options.getServerFilters();
|
|
249
|
+
}
|
|
250
|
+
return context;
|
|
251
|
+
}
|
|
252
|
+
async function requestPage(page, reason = "manual") {
|
|
253
|
+
if (!isLazyMode.value) {
|
|
254
|
+
if (!loadingState.value && page > lastCompletedPage.value) {
|
|
255
|
+
options.emit("reach-bottom");
|
|
256
|
+
options.fireEvent("reachBottom");
|
|
257
|
+
}
|
|
258
|
+
return;
|
|
259
|
+
}
|
|
260
|
+
if (page < 0) {
|
|
261
|
+
return;
|
|
262
|
+
}
|
|
263
|
+
if (page !== 0 && !computedHasMore.value) {
|
|
264
|
+
return;
|
|
265
|
+
}
|
|
266
|
+
if (internalLazyLoading.value || lazyPendingPage.value != null) {
|
|
267
|
+
return;
|
|
268
|
+
}
|
|
269
|
+
const context = buildLazyLoadContext(page, reason);
|
|
270
|
+
options.emit("lazy-load", context);
|
|
271
|
+
options.fireEvent("lazyLoad", context);
|
|
272
|
+
const loader = options.normalizedProps.value.lazyLoader;
|
|
273
|
+
if (!loader) {
|
|
274
|
+
return;
|
|
275
|
+
}
|
|
276
|
+
lazyPendingPage.value = page;
|
|
277
|
+
internalLazyLoading.value = true;
|
|
278
|
+
lazyErrorState.value = null;
|
|
279
|
+
try {
|
|
280
|
+
await loader(context);
|
|
281
|
+
lastCompletedPage.value = Math.max(lastCompletedPage.value, page);
|
|
282
|
+
const completionPayload = { ...context };
|
|
283
|
+
options.emit("lazy-load-complete", completionPayload);
|
|
284
|
+
options.fireEvent("lazyLoadComplete", completionPayload);
|
|
285
|
+
}
|
|
286
|
+
catch (error) {
|
|
287
|
+
lazyErrorState.value = error;
|
|
288
|
+
const errorPayload = { ...context, error };
|
|
289
|
+
options.emit("lazy-load-error", errorPayload);
|
|
290
|
+
options.fireEvent("lazyLoadError", errorPayload);
|
|
291
|
+
lazyPendingPage.value = null;
|
|
292
|
+
internalLazyLoading.value = false;
|
|
293
|
+
throw error;
|
|
294
|
+
}
|
|
295
|
+
finally {
|
|
296
|
+
if (lazyPendingPage.value != null && lazyPendingPage.value <= lastCompletedPage.value) {
|
|
297
|
+
lazyPendingPage.value = null;
|
|
298
|
+
}
|
|
299
|
+
if (lazyPendingPage.value == null) {
|
|
300
|
+
internalLazyLoading.value = false;
|
|
301
|
+
}
|
|
302
|
+
}
|
|
303
|
+
}
|
|
304
|
+
async function requestNextPage(reason = "manual") {
|
|
305
|
+
const nextPage = Math.max(-1, lastCompletedPage.value) + 1;
|
|
306
|
+
await requestPage(nextPage, reason);
|
|
307
|
+
}
|
|
308
|
+
function resetLazyPaging(options) {
|
|
309
|
+
lazyPendingPage.value = null;
|
|
310
|
+
internalLazyLoading.value = false;
|
|
311
|
+
lazyErrorState.value = null;
|
|
312
|
+
if (options?.clearRows) {
|
|
313
|
+
lastCompletedPage.value = -1;
|
|
314
|
+
lastKnownRowLength.value = 0;
|
|
315
|
+
return;
|
|
316
|
+
}
|
|
317
|
+
const length = resolvedRows.value.length;
|
|
318
|
+
lastKnownRowLength.value = length;
|
|
319
|
+
lastCompletedPage.value = Math.max(-1, Math.ceil(length / Math.max(1, resolvedPageSize.value)) - 1);
|
|
320
|
+
}
|
|
321
|
+
const lastServerFilterFingerprint = ref(null);
|
|
322
|
+
const lastServerSortFingerprint = ref(null);
|
|
323
|
+
let scheduledServerReason = null;
|
|
324
|
+
let flushServerReloadTask = null;
|
|
325
|
+
async function reloadServerRowModel(reason) {
|
|
326
|
+
clearPlaceholderRows();
|
|
327
|
+
serverRowModel.reset();
|
|
328
|
+
serverRowLoadReason.value = reason;
|
|
329
|
+
scrollToTopForServer.value?.();
|
|
330
|
+
await serverRowModel.fetchBlock(0);
|
|
331
|
+
}
|
|
332
|
+
function flushServerReload() {
|
|
333
|
+
if (!scheduledServerReason)
|
|
334
|
+
return;
|
|
335
|
+
if (internalLazyLoading.value || lazyPendingPage.value != null) {
|
|
336
|
+
return;
|
|
337
|
+
}
|
|
338
|
+
const reason = scheduledServerReason;
|
|
339
|
+
scheduledServerReason = null;
|
|
340
|
+
flushServerReloadTask = null;
|
|
341
|
+
if (serverSideModel.value) {
|
|
342
|
+
void reloadServerRowModel(reason);
|
|
343
|
+
return;
|
|
344
|
+
}
|
|
345
|
+
void triggerServerReload(reason);
|
|
346
|
+
}
|
|
347
|
+
function scheduleServerReload(reason) {
|
|
348
|
+
if (!serverSideModel.value)
|
|
349
|
+
return;
|
|
350
|
+
const prioritized = reason === "filter-change";
|
|
351
|
+
if (!scheduledServerReason || prioritized) {
|
|
352
|
+
scheduledServerReason = reason;
|
|
353
|
+
}
|
|
354
|
+
if (internalLazyLoading.value || lazyPendingPage.value != null) {
|
|
355
|
+
return;
|
|
356
|
+
}
|
|
357
|
+
if (flushServerReloadTask) {
|
|
358
|
+
return;
|
|
359
|
+
}
|
|
360
|
+
flushServerReloadTask = Promise.resolve().then(() => flushServerReload());
|
|
361
|
+
}
|
|
362
|
+
async function triggerServerReload(reason) {
|
|
363
|
+
if (serverSideModel.value) {
|
|
364
|
+
await reloadServerRowModel(reason);
|
|
365
|
+
return;
|
|
366
|
+
}
|
|
367
|
+
if (!isLazyMode.value)
|
|
368
|
+
return;
|
|
369
|
+
resetLazyPaging({ clearRows: true });
|
|
370
|
+
await requestPage(0, reason);
|
|
371
|
+
}
|
|
372
|
+
watch(() => [internalLazyLoading.value, lazyPendingPage.value], () => {
|
|
373
|
+
if (!internalLazyLoading.value && lazyPendingPage.value == null) {
|
|
374
|
+
flushServerReload();
|
|
375
|
+
}
|
|
376
|
+
});
|
|
377
|
+
function isServerPlaceholderRow(row) {
|
|
378
|
+
return Boolean(row && typeof row === "object" && SERVER_PLACEHOLDER_FLAG in row);
|
|
379
|
+
}
|
|
380
|
+
function setScrollToTopForServer(fn) {
|
|
381
|
+
scrollToTopForServer.value = fn;
|
|
382
|
+
}
|
|
383
|
+
return {
|
|
384
|
+
internalLazyLoading,
|
|
385
|
+
isLazyMode,
|
|
386
|
+
serverSideModel,
|
|
387
|
+
serverSideFiltering,
|
|
388
|
+
serverSideSorting,
|
|
389
|
+
autoLazyOnScroll,
|
|
390
|
+
autoLazyOnMount,
|
|
391
|
+
resolvedRows,
|
|
392
|
+
loadingState,
|
|
393
|
+
computedHasMore,
|
|
394
|
+
requestPage,
|
|
395
|
+
requestNextPage,
|
|
396
|
+
resetLazyPaging,
|
|
397
|
+
triggerServerReload,
|
|
398
|
+
scheduleServerReload,
|
|
399
|
+
serverRowModel,
|
|
400
|
+
serverRowBlocks,
|
|
401
|
+
serverRowTotal,
|
|
402
|
+
serverRows,
|
|
403
|
+
clearPlaceholderRows,
|
|
404
|
+
isServerPlaceholderRow,
|
|
405
|
+
lazyPendingPage,
|
|
406
|
+
lazyErrorState,
|
|
407
|
+
lastServerFilterFingerprint,
|
|
408
|
+
lastServerSortFingerprint,
|
|
409
|
+
setScrollToTopForServer,
|
|
410
|
+
};
|
|
411
|
+
}
|
|
@@ -0,0 +1,67 @@
|
|
|
1
|
+
import type { ComputedRef, Ref } from "vue";
|
|
2
|
+
import type { CellEditEvent, UiTableColumn, VisibleRow } from "../../core/types";
|
|
3
|
+
import type { RowKey } from "@/composables/useSelectableRows";
|
|
4
|
+
import type { HistoryEntry } from "./useTableHistory";
|
|
5
|
+
interface SetCellOptions {
|
|
6
|
+
collector?: CellEditEvent[];
|
|
7
|
+
historyCollector?: HistoryEntry[];
|
|
8
|
+
suppressHistory?: boolean;
|
|
9
|
+
force?: boolean;
|
|
10
|
+
}
|
|
11
|
+
interface UseTableEditingOptions {
|
|
12
|
+
processedRows: ComputedRef<VisibleRow[]>;
|
|
13
|
+
localColumns: Ref<UiTableColumn[]>;
|
|
14
|
+
emitCellEdit: (event: CellEditEvent) => void;
|
|
15
|
+
emitBatchEdit: (events: CellEditEvent[]) => void;
|
|
16
|
+
recordHistory: (entries: HistoryEntry[]) => void;
|
|
17
|
+
isApplyingHistory: Ref<boolean>;
|
|
18
|
+
findRowIndexById: (rowId: RowKey) => number | null;
|
|
19
|
+
getRowIdByIndex: (rowIndex: number) => RowKey | null;
|
|
20
|
+
}
|
|
21
|
+
type RowRef = RowKey | number;
|
|
22
|
+
/**
|
|
23
|
+
* Determines whether a column can be edited based on its editor configuration.
|
|
24
|
+
*/
|
|
25
|
+
export declare function isColumnEditable(column: UiTableColumn | undefined): boolean;
|
|
26
|
+
/**
|
|
27
|
+
* Checks if clipboard pastes are allowed for the provided column definition.
|
|
28
|
+
*/
|
|
29
|
+
export declare function canPasteIntoColumn(column: UiTableColumn | undefined): boolean;
|
|
30
|
+
/**
|
|
31
|
+
* Coordinates edit state, validation, history, and event emission for UiTable cells.
|
|
32
|
+
*/
|
|
33
|
+
export declare function useTableEditing({ processedRows, localColumns, emitCellEdit, emitBatchEdit, recordHistory, isApplyingHistory, findRowIndexById, getRowIdByIndex, }: UseTableEditingOptions): {
|
|
34
|
+
validationErrors: Record<string, string | null>;
|
|
35
|
+
getValidationError: (rowIndex: number, colIndex: number) => string | null;
|
|
36
|
+
setCellValueDirect: (rowRef: RowRef, colIndex: number, value: unknown, options?: SetCellOptions) => boolean;
|
|
37
|
+
setCellValue: (rowRef: RowRef, column: number | string, value: unknown, options?: {
|
|
38
|
+
force?: boolean;
|
|
39
|
+
}) => boolean;
|
|
40
|
+
setCellValueFromPaste: (rowRef: RowRef, colIndex: number, rawValue: string, options?: SetCellOptions) => boolean;
|
|
41
|
+
getCellValue: (rowRef: RowRef, column: number | string) => any;
|
|
42
|
+
getCellRawValue: (rowRef: RowRef, colIndex: number) => any;
|
|
43
|
+
dispatchEvents: (events: CellEditEvent[]) => void;
|
|
44
|
+
onCellEdit: (event: CellEditEvent) => void;
|
|
45
|
+
onCellEditingChange: (editing: boolean) => void;
|
|
46
|
+
normalizePastedValue: (column: UiTableColumn, row: any, rawValue: string) => any;
|
|
47
|
+
requestEdit: (rowIndex: number, columnKey: string) => void;
|
|
48
|
+
isEditingCell: Ref<boolean, boolean>;
|
|
49
|
+
editCommand: Ref<{
|
|
50
|
+
rowIndex: number;
|
|
51
|
+
key: string;
|
|
52
|
+
token: number;
|
|
53
|
+
} | null, {
|
|
54
|
+
rowIndex: number;
|
|
55
|
+
key: string;
|
|
56
|
+
token: number;
|
|
57
|
+
} | {
|
|
58
|
+
rowIndex: number;
|
|
59
|
+
key: string;
|
|
60
|
+
token: number;
|
|
61
|
+
} | null>;
|
|
62
|
+
canPasteIntoColumn: typeof canPasteIntoColumn;
|
|
63
|
+
runValidator: (column: UiTableColumn | undefined, value: unknown, row: any) => string | null;
|
|
64
|
+
updateValidationState: (rowId: RowKey | null, rowIndex: number, column: UiTableColumn | undefined, value: unknown, row: any) => void;
|
|
65
|
+
};
|
|
66
|
+
export {};
|
|
67
|
+
//# sourceMappingURL=useTableEditing.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"useTableEditing.d.ts","sourceRoot":"","sources":["../../src/composables/useTableEditing.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,WAAW,EAAE,GAAG,EAAE,MAAM,KAAK,CAAA;AAC3C,OAAO,KAAK,EAAE,aAAa,EAAE,aAAa,EAAgB,UAAU,EAAE,MAAM,kBAAkB,CAAA;AAC9F,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,iCAAiC,CAAA;AAC7D,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,mBAAmB,CAAA;AAIrD,UAAU,cAAc;IACtB,SAAS,CAAC,EAAE,aAAa,EAAE,CAAA;IAC3B,gBAAgB,CAAC,EAAE,YAAY,EAAE,CAAA;IACjC,eAAe,CAAC,EAAE,OAAO,CAAA;IACzB,KAAK,CAAC,EAAE,OAAO,CAAA;CAChB;AAED,UAAU,sBAAsB;IAC9B,aAAa,EAAE,WAAW,CAAC,UAAU,EAAE,CAAC,CAAA;IACxC,YAAY,EAAE,GAAG,CAAC,aAAa,EAAE,CAAC,CAAA;IAClC,YAAY,EAAE,CAAC,KAAK,EAAE,aAAa,KAAK,IAAI,CAAA;IAC5C,aAAa,EAAE,CAAC,MAAM,EAAE,aAAa,EAAE,KAAK,IAAI,CAAA;IAChD,aAAa,EAAE,CAAC,OAAO,EAAE,YAAY,EAAE,KAAK,IAAI,CAAA;IAChD,iBAAiB,EAAE,GAAG,CAAC,OAAO,CAAC,CAAA;IAC/B,gBAAgB,EAAE,CAAC,KAAK,EAAE,MAAM,KAAK,MAAM,GAAG,IAAI,CAAA;IAClD,eAAe,EAAE,CAAC,QAAQ,EAAE,MAAM,KAAK,MAAM,GAAG,IAAI,CAAA;CACrD;AAED,KAAK,MAAM,GAAG,MAAM,GAAG,MAAM,CAAA;AAE7B;;GAEG;AACH,wBAAgB,gBAAgB,CAAC,MAAM,EAAE,aAAa,GAAG,SAAS,WAKjE;AAED;;GAEG;AACH,wBAAgB,kBAAkB,CAAC,MAAM,EAAE,aAAa,GAAG,SAAS,WAMnE;AAUD;;GAEG;AACH,wBAAgB,eAAe,CAAC,EAC9B,aAAa,EACb,YAAY,EACZ,YAAY,EACZ,aAAa,EACb,aAAa,EACb,iBAAiB,EACjB,gBAAgB,EAChB,eAAe,GAChB,EAAE,sBAAsB;;mCAiDe,MAAM,YAAY,MAAM;iCAsB1B,MAAM,YAAY,MAAM,SAAS,OAAO,YAAW,cAAc;2BAgIvE,MAAM,UAAU,MAAM,GAAG,MAAM,SAAS,OAAO,YAAY;QAAE,KAAK,CAAC,EAAE,OAAO,CAAA;KAAE;oCA3BrE,MAAM,YAAY,MAAM,YAAY,MAAM,YAAY,cAAc;2BAa7E,MAAM,UAAU,MAAM,GAAG,MAAM;8BA9H5B,MAAM,YAAY,MAAM;6BAkEzB,aAAa,EAAE;wBAmFpB,aAAa;mCA4BF,OAAO;mCAtFP,aAAa,OAAO,GAAG,YAAY,MAAM;4BA6FhD,MAAM,aAAa,MAAM;;;kBArOpB,MAAM;aAAO,MAAM;eAAS,MAAM;;kBAAlC,MAAM;aAAO,MAAM;eAAS,MAAM;;kBAAlC,MAAM;aAAO,MAAM;eAAS,MAAM;;;2BAKxC,aAAa,GAAG,SAAS,SAAS,OAAO,OAAO,GAAG;mCAgB3C,MAAM,GAAG,IAAI,YAAY,MAAM,UAAU,aAAa,GAAG,SAAS,SAAS,OAAO,OAAO,GAAG;EA2OnI"}
|