@nu-grid/nuxt 0.1.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/LICENSE.md +21 -0
- package/README.md +261 -0
- package/dist/module.d.mts +13 -0
- package/dist/module.json +9 -0
- package/dist/module.mjs +52 -0
- package/dist/runtime/cell-types/action-menu/ActionMenuRenderer.d.vue.ts +12 -0
- package/dist/runtime/cell-types/action-menu/ActionMenuRenderer.vue +123 -0
- package/dist/runtime/cell-types/action-menu/ActionMenuRenderer.vue.d.ts +12 -0
- package/dist/runtime/cell-types/action-menu/index.d.ts +8 -0
- package/dist/runtime/cell-types/action-menu/index.js +28 -0
- package/dist/runtime/cell-types/boolean/BooleanEditor.d.vue.ts +15 -0
- package/dist/runtime/cell-types/boolean/BooleanEditor.vue +32 -0
- package/dist/runtime/cell-types/boolean/BooleanEditor.vue.d.ts +15 -0
- package/dist/runtime/cell-types/boolean/BooleanFilter.d.vue.ts +7 -0
- package/dist/runtime/cell-types/boolean/BooleanFilter.vue +42 -0
- package/dist/runtime/cell-types/boolean/BooleanFilter.vue.d.ts +7 -0
- package/dist/runtime/cell-types/boolean/BooleanRenderer.d.vue.ts +13 -0
- package/dist/runtime/cell-types/boolean/BooleanRenderer.vue +23 -0
- package/dist/runtime/cell-types/boolean/BooleanRenderer.vue.d.ts +13 -0
- package/dist/runtime/cell-types/boolean/index.d.ts +8 -0
- package/dist/runtime/cell-types/boolean/index.js +31 -0
- package/dist/runtime/cell-types/currency/CurrencyEditor.d.vue.ts +15 -0
- package/dist/runtime/cell-types/currency/CurrencyEditor.vue +40 -0
- package/dist/runtime/cell-types/currency/CurrencyEditor.vue.d.ts +15 -0
- package/dist/runtime/cell-types/currency/CurrencyFilter.d.vue.ts +7 -0
- package/dist/runtime/cell-types/currency/CurrencyFilter.vue +76 -0
- package/dist/runtime/cell-types/currency/CurrencyFilter.vue.d.ts +7 -0
- package/dist/runtime/cell-types/currency/index.d.ts +6 -0
- package/dist/runtime/cell-types/currency/index.js +42 -0
- package/dist/runtime/cell-types/date/DateEditor.d.vue.ts +15 -0
- package/dist/runtime/cell-types/date/DateEditor.vue +42 -0
- package/dist/runtime/cell-types/date/DateEditor.vue.d.ts +15 -0
- package/dist/runtime/cell-types/date/DateFilter.d.vue.ts +7 -0
- package/dist/runtime/cell-types/date/DateFilter.vue +58 -0
- package/dist/runtime/cell-types/date/DateFilter.vue.d.ts +7 -0
- package/dist/runtime/cell-types/date/index.d.ts +6 -0
- package/dist/runtime/cell-types/date/index.js +13 -0
- package/dist/runtime/cell-types/index.d.ts +17 -0
- package/dist/runtime/cell-types/index.js +34 -0
- package/dist/runtime/cell-types/lookup/LookupEditor.d.vue.ts +15 -0
- package/dist/runtime/cell-types/lookup/LookupEditor.vue +291 -0
- package/dist/runtime/cell-types/lookup/LookupEditor.vue.d.ts +15 -0
- package/dist/runtime/cell-types/lookup/LookupRenderer.d.vue.ts +8 -0
- package/dist/runtime/cell-types/lookup/LookupRenderer.vue +43 -0
- package/dist/runtime/cell-types/lookup/LookupRenderer.vue.d.ts +8 -0
- package/dist/runtime/cell-types/lookup/index.d.ts +36 -0
- package/dist/runtime/cell-types/lookup/index.js +50 -0
- package/dist/runtime/cell-types/number/NumberEditor.d.vue.ts +15 -0
- package/dist/runtime/cell-types/number/NumberEditor.vue +34 -0
- package/dist/runtime/cell-types/number/NumberEditor.vue.d.ts +15 -0
- package/dist/runtime/cell-types/number/NumberFilter.d.vue.ts +7 -0
- package/dist/runtime/cell-types/number/NumberFilter.vue +66 -0
- package/dist/runtime/cell-types/number/NumberFilter.vue.d.ts +7 -0
- package/dist/runtime/cell-types/number/index.d.ts +6 -0
- package/dist/runtime/cell-types/number/index.js +13 -0
- package/dist/runtime/cell-types/rating/RatingEditor.d.vue.ts +15 -0
- package/dist/runtime/cell-types/rating/RatingEditor.vue +219 -0
- package/dist/runtime/cell-types/rating/RatingEditor.vue.d.ts +15 -0
- package/dist/runtime/cell-types/rating/RatingFilter.d.vue.ts +7 -0
- package/dist/runtime/cell-types/rating/RatingFilter.vue +74 -0
- package/dist/runtime/cell-types/rating/RatingFilter.vue.d.ts +7 -0
- package/dist/runtime/cell-types/rating/RatingRenderer.d.vue.ts +10 -0
- package/dist/runtime/cell-types/rating/RatingRenderer.vue +75 -0
- package/dist/runtime/cell-types/rating/RatingRenderer.vue.d.ts +10 -0
- package/dist/runtime/cell-types/rating/index.d.ts +6 -0
- package/dist/runtime/cell-types/rating/index.js +67 -0
- package/dist/runtime/cell-types/selection/SelectionEditor.d.vue.ts +15 -0
- package/dist/runtime/cell-types/selection/SelectionEditor.vue +42 -0
- package/dist/runtime/cell-types/selection/SelectionEditor.vue.d.ts +15 -0
- package/dist/runtime/cell-types/selection/SelectionRenderer.d.vue.ts +14 -0
- package/dist/runtime/cell-types/selection/SelectionRenderer.vue +25 -0
- package/dist/runtime/cell-types/selection/SelectionRenderer.vue.d.ts +14 -0
- package/dist/runtime/cell-types/selection/index.d.ts +8 -0
- package/dist/runtime/cell-types/selection/index.js +36 -0
- package/dist/runtime/cell-types/text/TextEditor.d.vue.ts +15 -0
- package/dist/runtime/cell-types/text/TextEditor.vue +70 -0
- package/dist/runtime/cell-types/text/TextEditor.vue.d.ts +15 -0
- package/dist/runtime/cell-types/text/TextFilter.d.vue.ts +7 -0
- package/dist/runtime/cell-types/text/TextFilter.vue +50 -0
- package/dist/runtime/cell-types/text/TextFilter.vue.d.ts +7 -0
- package/dist/runtime/cell-types/text/TextareaEditor.d.vue.ts +15 -0
- package/dist/runtime/cell-types/text/TextareaEditor.vue +100 -0
- package/dist/runtime/cell-types/text/TextareaEditor.vue.d.ts +15 -0
- package/dist/runtime/cell-types/text/index.d.ts +10 -0
- package/dist/runtime/cell-types/text/index.js +16 -0
- package/dist/runtime/cell-types/text/textarea.d.ts +13 -0
- package/dist/runtime/cell-types/text/textarea.js +13 -0
- package/dist/runtime/components/NuGrid.d.vue.ts +96 -0
- package/dist/runtime/components/NuGrid.vue +651 -0
- package/dist/runtime/components/NuGrid.vue.d.ts +96 -0
- package/dist/runtime/components/NuGridCellCheckbox.d.vue.ts +24 -0
- package/dist/runtime/components/NuGridCellCheckbox.vue +105 -0
- package/dist/runtime/components/NuGridCellCheckbox.vue.d.ts +24 -0
- package/dist/runtime/components/NuGridGroup.d.vue.ts +20 -0
- package/dist/runtime/components/NuGridGroup.vue +650 -0
- package/dist/runtime/components/NuGridGroup.vue.d.ts +20 -0
- package/dist/runtime/components/NuGridLazyCell.d.vue.ts +62 -0
- package/dist/runtime/components/NuGridLazyCell.vue +133 -0
- package/dist/runtime/components/NuGridLazyCell.vue.d.ts +62 -0
- package/dist/runtime/components/_internal/NuGridAddRow.d.vue.ts +36 -0
- package/dist/runtime/components/_internal/NuGridAddRow.vue +144 -0
- package/dist/runtime/components/_internal/NuGridAddRow.vue.d.ts +36 -0
- package/dist/runtime/components/_internal/NuGridBase.d.vue.ts +20 -0
- package/dist/runtime/components/_internal/NuGridBase.vue +1172 -0
- package/dist/runtime/components/_internal/NuGridBase.vue.d.ts +20 -0
- package/dist/runtime/components/_internal/NuGridCellContent.d.vue.ts +9 -0
- package/dist/runtime/components/_internal/NuGridCellContent.vue +202 -0
- package/dist/runtime/components/_internal/NuGridCellContent.vue.d.ts +9 -0
- package/dist/runtime/components/_internal/NuGridColumnMenu.d.vue.ts +25 -0
- package/dist/runtime/components/_internal/NuGridColumnMenu.vue +391 -0
- package/dist/runtime/components/_internal/NuGridColumnMenu.vue.d.ts +25 -0
- package/dist/runtime/components/_internal/NuGridGroup.d.vue.ts +20 -0
- package/dist/runtime/components/_internal/NuGridGroup.vue +650 -0
- package/dist/runtime/components/_internal/NuGridGroup.vue.d.ts +20 -0
- package/dist/runtime/components/_internal/NuGridGroupCheckbox.d.vue.ts +22 -0
- package/dist/runtime/components/_internal/NuGridGroupCheckbox.vue +132 -0
- package/dist/runtime/components/_internal/NuGridGroupCheckbox.vue.d.ts +22 -0
- package/dist/runtime/components/_internal/NuGridHeaderSortButton.d.vue.ts +31 -0
- package/dist/runtime/components/_internal/NuGridHeaderSortButton.vue +61 -0
- package/dist/runtime/components/_internal/NuGridHeaderSortButton.vue.d.ts +31 -0
- package/dist/runtime/components/_internal/NuGridPaging.d.vue.ts +3 -0
- package/dist/runtime/components/_internal/NuGridPaging.vue +65 -0
- package/dist/runtime/components/_internal/NuGridPaging.vue.d.ts +3 -0
- package/dist/runtime/components/_internal/NuGridRow.d.vue.ts +40 -0
- package/dist/runtime/components/_internal/NuGridRow.vue +645 -0
- package/dist/runtime/components/_internal/NuGridRow.vue.d.ts +40 -0
- package/dist/runtime/components/_internal/NuGridSplitGroup.d.vue.ts +20 -0
- package/dist/runtime/components/_internal/NuGridSplitGroup.vue +735 -0
- package/dist/runtime/components/_internal/NuGridSplitGroup.vue.d.ts +20 -0
- package/dist/runtime/components/_internal/NuGridTooltip.d.vue.ts +3 -0
- package/dist/runtime/components/_internal/NuGridTooltip.vue +36 -0
- package/dist/runtime/components/_internal/NuGridTooltip.vue.d.ts +3 -0
- package/dist/runtime/composables/_internal/index.d.ts +31 -0
- package/dist/runtime/composables/_internal/index.js +28 -0
- package/dist/runtime/composables/_internal/keyboard-handlers/index.d.ts +5 -0
- package/dist/runtime/composables/_internal/keyboard-handlers/index.js +9 -0
- package/dist/runtime/composables/_internal/keyboard-handlers/useKeyboardCellTypeDispatch.d.ts +18 -0
- package/dist/runtime/composables/_internal/keyboard-handlers/useKeyboardCellTypeDispatch.js +53 -0
- package/dist/runtime/composables/_internal/keyboard-handlers/useKeyboardEditingTriggers.d.ts +12 -0
- package/dist/runtime/composables/_internal/keyboard-handlers/useKeyboardEditingTriggers.js +53 -0
- package/dist/runtime/composables/_internal/keyboard-handlers/useKeyboardNavigation.d.ts +9 -0
- package/dist/runtime/composables/_internal/keyboard-handlers/useKeyboardNavigation.js +35 -0
- package/dist/runtime/composables/_internal/keyboard-handlers/useKeyboardSetup.d.ts +33 -0
- package/dist/runtime/composables/_internal/keyboard-handlers/useKeyboardSetup.js +111 -0
- package/dist/runtime/composables/_internal/keyboard-handlers/usePagingKeyboard.d.ts +11 -0
- package/dist/runtime/composables/_internal/keyboard-handlers/usePagingKeyboard.js +67 -0
- package/dist/runtime/composables/_internal/useNuGridActionMenu.d.ts +15 -0
- package/dist/runtime/composables/_internal/useNuGridActionMenu.js +137 -0
- package/dist/runtime/composables/_internal/useNuGridAddRow.d.ts +39 -0
- package/dist/runtime/composables/_internal/useNuGridAddRow.js +735 -0
- package/dist/runtime/composables/_internal/useNuGridAnimation.d.ts +33 -0
- package/dist/runtime/composables/_internal/useNuGridAnimation.js +178 -0
- package/dist/runtime/composables/_internal/useNuGridAutosize.d.ts +14 -0
- package/dist/runtime/composables/_internal/useNuGridAutosize.js +161 -0
- package/dist/runtime/composables/_internal/useNuGridCellEditing.d.ts +15 -0
- package/dist/runtime/composables/_internal/useNuGridCellEditing.js +1243 -0
- package/dist/runtime/composables/_internal/useNuGridColumnDragDrop.d.ts +8 -0
- package/dist/runtime/composables/_internal/useNuGridColumnDragDrop.js +148 -0
- package/dist/runtime/composables/_internal/useNuGridColumnPinning.d.ts +15 -0
- package/dist/runtime/composables/_internal/useNuGridColumnPinning.js +44 -0
- package/dist/runtime/composables/_internal/useNuGridColumnResize.d.ts +22 -0
- package/dist/runtime/composables/_internal/useNuGridColumnResize.js +427 -0
- package/dist/runtime/composables/_internal/useNuGridCore.d.ts +62 -0
- package/dist/runtime/composables/_internal/useNuGridCore.js +359 -0
- package/dist/runtime/composables/_internal/useNuGridExcel.d.ts +60 -0
- package/dist/runtime/composables/_internal/useNuGridExcel.js +35 -0
- package/dist/runtime/composables/_internal/useNuGridFocus.d.ts +15 -0
- package/dist/runtime/composables/_internal/useNuGridFocus.js +1378 -0
- package/dist/runtime/composables/_internal/useNuGridGroupSelection.d.ts +13 -0
- package/dist/runtime/composables/_internal/useNuGridGroupSelection.js +38 -0
- package/dist/runtime/composables/_internal/useNuGridGrouping.d.ts +28 -0
- package/dist/runtime/composables/_internal/useNuGridGrouping.js +211 -0
- package/dist/runtime/composables/_internal/useNuGridInteractionRouter.d.ts +9 -0
- package/dist/runtime/composables/_internal/useNuGridInteractionRouter.js +441 -0
- package/dist/runtime/composables/_internal/useNuGridInteractions.d.ts +10 -0
- package/dist/runtime/composables/_internal/useNuGridInteractions.js +36 -0
- package/dist/runtime/composables/_internal/useNuGridKeyboardNavigation.d.ts +54 -0
- package/dist/runtime/composables/_internal/useNuGridKeyboardNavigation.js +407 -0
- package/dist/runtime/composables/_internal/useNuGridPaging.d.ts +76 -0
- package/dist/runtime/composables/_internal/useNuGridPaging.js +147 -0
- package/dist/runtime/composables/_internal/useNuGridRowDragDrop.d.ts +68 -0
- package/dist/runtime/composables/_internal/useNuGridRowDragDrop.js +295 -0
- package/dist/runtime/composables/_internal/useNuGridRowSelection.d.ts +14 -0
- package/dist/runtime/composables/_internal/useNuGridRowSelection.js +214 -0
- package/dist/runtime/composables/_internal/useNuGridScroll.d.ts +110 -0
- package/dist/runtime/composables/_internal/useNuGridScroll.js +463 -0
- package/dist/runtime/composables/_internal/useNuGridScrollState.d.ts +32 -0
- package/dist/runtime/composables/_internal/useNuGridScrollState.js +60 -0
- package/dist/runtime/composables/_internal/useNuGridScrollbars.d.ts +24 -0
- package/dist/runtime/composables/_internal/useNuGridScrollbars.js +69 -0
- package/dist/runtime/composables/_internal/useNuGridStatePersistence.d.ts +27 -0
- package/dist/runtime/composables/_internal/useNuGridStatePersistence.js +243 -0
- package/dist/runtime/composables/_internal/useNuGridTooltip.d.ts +41 -0
- package/dist/runtime/composables/_internal/useNuGridTooltip.js +304 -0
- package/dist/runtime/composables/_internal/useNuGridUI.d.ts +3283 -0
- package/dist/runtime/composables/_internal/useNuGridUI.js +58 -0
- package/dist/runtime/composables/_internal/useNuGridVirtualization.d.ts +75 -0
- package/dist/runtime/composables/_internal/useNuGridVirtualization.js +534 -0
- package/dist/runtime/composables/_internal/useNuGridWheelSmoothing.d.ts +25 -0
- package/dist/runtime/composables/_internal/useNuGridWheelSmoothing.js +157 -0
- package/dist/runtime/composables/index.d.ts +3 -0
- package/dist/runtime/composables/index.js +2 -0
- package/dist/runtime/composables/useNuGridCellEditor.d.ts +91 -0
- package/dist/runtime/composables/useNuGridCellEditor.js +82 -0
- package/dist/runtime/composables/useNuGridCellTypeRegistry.d.ts +85 -0
- package/dist/runtime/composables/useNuGridCellTypeRegistry.js +202 -0
- package/dist/runtime/config/_internal/index.d.ts +5 -0
- package/dist/runtime/config/_internal/index.js +2 -0
- package/dist/runtime/config/_internal/options-defaults.d.ts +121 -0
- package/dist/runtime/config/_internal/options-defaults.js +121 -0
- package/dist/runtime/config/_internal/prop-utils.d.ts +54 -0
- package/dist/runtime/config/_internal/prop-utils.js +21 -0
- package/dist/runtime/config/config.d.ts +44 -0
- package/dist/runtime/config/config.js +18 -0
- package/dist/runtime/config/index.d.ts +2 -0
- package/dist/runtime/config/index.js +2 -0
- package/dist/runtime/config/presets.d.ts +15 -0
- package/dist/runtime/config/presets.js +58 -0
- package/dist/runtime/index.css +1 -0
- package/dist/runtime/index.d.ts +1 -0
- package/dist/runtime/index.js +1 -0
- package/dist/runtime/plugin.d.ts +5 -0
- package/dist/runtime/plugin.js +10 -0
- package/dist/runtime/themes/index.d.ts +56 -0
- package/dist/runtime/themes/index.js +68 -0
- package/dist/runtime/themes/nuGridTheme.d.ts +329 -0
- package/dist/runtime/themes/nuGridTheme.js +236 -0
- package/dist/runtime/themes/nuGridThemeCompact.d.ts +331 -0
- package/dist/runtime/themes/nuGridThemeCompact.js +236 -0
- package/dist/runtime/types/_internal/action-menu.d.ts +55 -0
- package/dist/runtime/types/_internal/action-menu.js +0 -0
- package/dist/runtime/types/_internal/cell-editing.d.ts +75 -0
- package/dist/runtime/types/_internal/cell-editing.js +0 -0
- package/dist/runtime/types/_internal/composable-returns.d.ts +52 -0
- package/dist/runtime/types/_internal/composable-returns.js +0 -0
- package/dist/runtime/types/_internal/config.d.ts +16 -0
- package/dist/runtime/types/_internal/config.js +0 -0
- package/dist/runtime/types/_internal/contexts/add-row.d.ts +25 -0
- package/dist/runtime/types/_internal/contexts/add-row.js +0 -0
- package/dist/runtime/types/_internal/contexts/animation.d.ts +24 -0
- package/dist/runtime/types/_internal/contexts/animation.js +0 -0
- package/dist/runtime/types/_internal/contexts/core.d.ts +24 -0
- package/dist/runtime/types/_internal/contexts/core.js +0 -0
- package/dist/runtime/types/_internal/contexts/drag.d.ts +13 -0
- package/dist/runtime/types/_internal/contexts/drag.js +0 -0
- package/dist/runtime/types/_internal/contexts/focus.d.ts +11 -0
- package/dist/runtime/types/_internal/contexts/focus.js +0 -0
- package/dist/runtime/types/_internal/contexts/grouping.d.ts +9 -0
- package/dist/runtime/types/_internal/contexts/grouping.js +0 -0
- package/dist/runtime/types/_internal/contexts/index.d.ts +15 -0
- package/dist/runtime/types/_internal/contexts/index.js +0 -0
- package/dist/runtime/types/_internal/contexts/interaction-router.d.ts +5 -0
- package/dist/runtime/types/_internal/contexts/interaction-router.js +0 -0
- package/dist/runtime/types/_internal/contexts/multi-row.d.ts +40 -0
- package/dist/runtime/types/_internal/contexts/multi-row.js +0 -0
- package/dist/runtime/types/_internal/contexts/paging.d.ts +39 -0
- package/dist/runtime/types/_internal/contexts/paging.js +0 -0
- package/dist/runtime/types/_internal/contexts/performance.d.ts +15 -0
- package/dist/runtime/types/_internal/contexts/performance.js +0 -0
- package/dist/runtime/types/_internal/contexts/resize.d.ts +12 -0
- package/dist/runtime/types/_internal/contexts/resize.js +0 -0
- package/dist/runtime/types/_internal/contexts/row-interactions.d.ts +12 -0
- package/dist/runtime/types/_internal/contexts/row-interactions.js +0 -0
- package/dist/runtime/types/_internal/contexts/scroll-state.d.ts +21 -0
- package/dist/runtime/types/_internal/contexts/scroll-state.js +0 -0
- package/dist/runtime/types/_internal/contexts/ui-config.d.ts +21 -0
- package/dist/runtime/types/_internal/contexts/ui-config.js +0 -0
- package/dist/runtime/types/_internal/contexts/virtualization.d.ts +16 -0
- package/dist/runtime/types/_internal/contexts/virtualization.js +0 -0
- package/dist/runtime/types/_internal/drag-drop.d.ts +48 -0
- package/dist/runtime/types/_internal/drag-drop.js +0 -0
- package/dist/runtime/types/_internal/focus.d.ts +68 -0
- package/dist/runtime/types/_internal/focus.js +0 -0
- package/dist/runtime/types/_internal/grouping.d.ts +48 -0
- package/dist/runtime/types/_internal/grouping.js +0 -0
- package/dist/runtime/types/_internal/index.d.ts +37 -0
- package/dist/runtime/types/_internal/index.js +2 -0
- package/dist/runtime/types/_internal/interaction-router.d.ts +176 -0
- package/dist/runtime/types/_internal/interaction-router.js +39 -0
- package/dist/runtime/types/_internal/props.d.ts +28 -0
- package/dist/runtime/types/_internal/props.js +0 -0
- package/dist/runtime/types/_internal/resize.d.ts +37 -0
- package/dist/runtime/types/_internal/resize.js +0 -0
- package/dist/runtime/types/_internal/row-interactions.d.ts +15 -0
- package/dist/runtime/types/_internal/row-interactions.js +0 -0
- package/dist/runtime/types/_internal/row-selection.d.ts +27 -0
- package/dist/runtime/types/_internal/row-selection.js +0 -0
- package/dist/runtime/types/_internal/states.d.ts +24 -0
- package/dist/runtime/types/_internal/states.js +0 -0
- package/dist/runtime/types/_internal/sticky-headers.d.ts +10 -0
- package/dist/runtime/types/_internal/sticky-headers.js +0 -0
- package/dist/runtime/types/_internal/validation.d.ts +54 -0
- package/dist/runtime/types/_internal/validation.js +0 -0
- package/dist/runtime/types/_internal/virtualization.d.ts +114 -0
- package/dist/runtime/types/_internal/virtualization.js +0 -0
- package/dist/runtime/types/action-menu.d.ts +62 -0
- package/dist/runtime/types/action-menu.js +0 -0
- package/dist/runtime/types/autosize.d.ts +8 -0
- package/dist/runtime/types/autosize.js +0 -0
- package/dist/runtime/types/cells.d.ts +292 -0
- package/dist/runtime/types/cells.js +5 -0
- package/dist/runtime/types/column.d.ts +248 -0
- package/dist/runtime/types/column.js +0 -0
- package/dist/runtime/types/config.d.ts +35 -0
- package/dist/runtime/types/config.js +0 -0
- package/dist/runtime/types/drag-drop.d.ts +92 -0
- package/dist/runtime/types/drag-drop.js +0 -0
- package/dist/runtime/types/events.d.ts +164 -0
- package/dist/runtime/types/events.js +1 -0
- package/dist/runtime/types/focus.d.ts +50 -0
- package/dist/runtime/types/focus.js +0 -0
- package/dist/runtime/types/grouping.d.ts +7 -0
- package/dist/runtime/types/grouping.js +0 -0
- package/dist/runtime/types/index.d.ts +15 -0
- package/dist/runtime/types/index.js +0 -0
- package/dist/runtime/types/option-groups.d.ts +624 -0
- package/dist/runtime/types/option-groups.js +0 -0
- package/dist/runtime/types/props.d.ts +418 -0
- package/dist/runtime/types/props.js +0 -0
- package/dist/runtime/types/resize.d.ts +14 -0
- package/dist/runtime/types/resize.js +0 -0
- package/dist/runtime/types/row-interactions.d.ts +11 -0
- package/dist/runtime/types/row-interactions.js +0 -0
- package/dist/runtime/types/row-selection.d.ts +48 -0
- package/dist/runtime/types/row-selection.js +0 -0
- package/dist/runtime/types/row.d.ts +7 -0
- package/dist/runtime/types/row.js +0 -0
- package/dist/runtime/types/sort-icon.d.ts +35 -0
- package/dist/runtime/types/sort-icon.js +0 -0
- package/dist/runtime/types/states.d.ts +17 -0
- package/dist/runtime/types/states.js +0 -0
- package/dist/runtime/types/sticky-headers.d.ts +6 -0
- package/dist/runtime/types/sticky-headers.js +0 -0
- package/dist/runtime/types/tanstack-table.d.ts +126 -0
- package/dist/runtime/types/theme.d.ts +22 -0
- package/dist/runtime/types/theme.js +0 -0
- package/dist/runtime/types/validation.d.ts +94 -0
- package/dist/runtime/types/validation.js +0 -0
- package/dist/runtime/utils/columnHelper.d.ts +208 -0
- package/dist/runtime/utils/columnHelper.js +23 -0
- package/dist/runtime/utils/excelExport.d.ts +63 -0
- package/dist/runtime/utils/excelExport.js +297 -0
- package/dist/runtime/utils/index.d.ts +2 -0
- package/dist/runtime/utils/index.js +2 -0
- package/dist/runtime/utils/standardSchema.d.ts +77 -0
- package/dist/runtime/utils/standardSchema.js +141 -0
- package/dist/types.d.mts +3 -0
- package/package.json +117 -0
|
@@ -0,0 +1,52 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Return type interfaces for internal composables.
|
|
3
|
+
* These explicit types solve TS4058 errors where TypeScript cannot name
|
|
4
|
+
* 'GroupColumnDefBase' from @tanstack/table-core in generated declarations.
|
|
5
|
+
*
|
|
6
|
+
* By using these explicit return types, TypeScript emits our type names
|
|
7
|
+
* instead of expanding TableColumn and encountering the unexported type.
|
|
8
|
+
* @internal
|
|
9
|
+
*/
|
|
10
|
+
import type { TableData } from '@nuxt/ui';
|
|
11
|
+
import type { Row } from '@tanstack/vue-table';
|
|
12
|
+
import type { ComputedRef } from 'vue';
|
|
13
|
+
import type { NuGridActionMenuOptions, NuGridColumn, NuGridRowSelectOptions } from '../index.js';
|
|
14
|
+
/**
|
|
15
|
+
* Return type for useNuGridActionMenu composable
|
|
16
|
+
* @internal
|
|
17
|
+
*/
|
|
18
|
+
export interface UseNuGridActionMenuReturn<T extends TableData> {
|
|
19
|
+
isEnabled: ComputedRef<boolean>;
|
|
20
|
+
hasActionMenuColumn: ComputedRef<boolean>;
|
|
21
|
+
actionMenuColumn: NuGridColumn<T> | null;
|
|
22
|
+
appendActionMenuColumn: (columns: NuGridColumn<T>[]) => NuGridColumn<T>[];
|
|
23
|
+
isHidden: ComputedRef<boolean>;
|
|
24
|
+
isInteractive: ComputedRef<boolean>;
|
|
25
|
+
parsedOptions: ComputedRef<NuGridActionMenuOptions<T> | null>;
|
|
26
|
+
}
|
|
27
|
+
/**
|
|
28
|
+
* Return type for useNuGridRowSelection composable
|
|
29
|
+
* @internal
|
|
30
|
+
*/
|
|
31
|
+
export interface UseNuGridRowSelectionReturn<T extends TableData> {
|
|
32
|
+
isEnabled: ComputedRef<boolean>;
|
|
33
|
+
hasSelectionColumn: ComputedRef<boolean>;
|
|
34
|
+
normalizedMode: ComputedRef<'single' | 'multi' | null>;
|
|
35
|
+
enableMultiRowSelection: ComputedRef<boolean>;
|
|
36
|
+
enableRowSelection: ComputedRef<boolean | ((row: Row<T>) => boolean)>;
|
|
37
|
+
selectionColumn: NuGridColumn<T> | null;
|
|
38
|
+
prependSelectionColumn: (columns: NuGridColumn<T>[]) => NuGridColumn<T>[];
|
|
39
|
+
isHidden: ComputedRef<boolean>;
|
|
40
|
+
isInteractive: ComputedRef<boolean>;
|
|
41
|
+
rowSelectionEnabled: ComputedRef<((row: Row<T>) => boolean) | undefined>;
|
|
42
|
+
parsedOptions: ComputedRef<NuGridRowSelectOptions<T> | null>;
|
|
43
|
+
}
|
|
44
|
+
/**
|
|
45
|
+
* Return type for useNuGridColumns composable
|
|
46
|
+
* @internal
|
|
47
|
+
*/
|
|
48
|
+
export interface UseNuGridColumnsReturn<T extends TableData> {
|
|
49
|
+
columns: ComputedRef<NuGridColumn<T>[]>;
|
|
50
|
+
rowSelection: UseNuGridRowSelectionReturn<T> | null;
|
|
51
|
+
actionMenu: UseNuGridActionMenuReturn<T> | null;
|
|
52
|
+
}
|
|
File without changes
|
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* @internal
|
|
3
|
+
*/
|
|
4
|
+
import type { ComponentConfig } from '@nuxt/ui';
|
|
5
|
+
import type { AppConfig } from 'nuxt/schema';
|
|
6
|
+
import type { nuGridTheme } from '../../themes/index.js';
|
|
7
|
+
/**
|
|
8
|
+
* NuGrid component configuration type
|
|
9
|
+
* @internal
|
|
10
|
+
*/
|
|
11
|
+
export type NuGridConfig = ComponentConfig<typeof nuGridTheme, AppConfig, 'table'>;
|
|
12
|
+
/**
|
|
13
|
+
* UI slots type - re-exported from useNuGridUI for convenience
|
|
14
|
+
* @internal
|
|
15
|
+
*/
|
|
16
|
+
export type { NuGridUISlots } from '../../composables/_internal/useNuGridUI.js';
|
|
File without changes
|
|
@@ -0,0 +1,25 @@
|
|
|
1
|
+
import type { TableData } from '@nuxt/ui';
|
|
2
|
+
import type { Row } from '@tanstack/vue-table';
|
|
3
|
+
import type { ComputedRef, Ref, VNode } from 'vue';
|
|
4
|
+
export type NuGridAddRowPosition = 'none' | 'top' | 'bottom';
|
|
5
|
+
export type NuGridAddRowState = 'idle' | 'focused' | 'editing';
|
|
6
|
+
export interface NuGridAddRowFinalizeResult {
|
|
7
|
+
success: boolean;
|
|
8
|
+
messages?: string[];
|
|
9
|
+
}
|
|
10
|
+
export type NuGridAddRowIndicatorSlot<T extends TableData = TableData> = (props: {
|
|
11
|
+
row: Row<T>;
|
|
12
|
+
text: string;
|
|
13
|
+
}) => VNode[];
|
|
14
|
+
export interface NuGridAddRowContext<T extends TableData = TableData> {
|
|
15
|
+
showAddNewRow: ComputedRef<boolean>;
|
|
16
|
+
addRowPosition: ComputedRef<NuGridAddRowPosition>;
|
|
17
|
+
addRowState: ComputedRef<NuGridAddRowState>;
|
|
18
|
+
addNewText: ComputedRef<string>;
|
|
19
|
+
indicatorSlot?: NuGridAddRowIndicatorSlot<T>;
|
|
20
|
+
isAddRowRow: (row: Row<T>) => boolean;
|
|
21
|
+
finalizeAddRow: (row: Row<T>) => NuGridAddRowFinalizeResult;
|
|
22
|
+
resetAddRow: (row: Row<T>) => void;
|
|
23
|
+
isFinalizing?: Ref<boolean>;
|
|
24
|
+
finalizingRowId?: Ref<string | null>;
|
|
25
|
+
}
|
|
File without changes
|
|
@@ -0,0 +1,24 @@
|
|
|
1
|
+
import type { ComputedRef } from 'vue';
|
|
2
|
+
/**
|
|
3
|
+
* Animation context
|
|
4
|
+
* Provides animation configuration to child components
|
|
5
|
+
*/
|
|
6
|
+
export interface NuGridAnimationContext {
|
|
7
|
+
/**
|
|
8
|
+
* Whether row animations are enabled
|
|
9
|
+
*/
|
|
10
|
+
enabled: ComputedRef<boolean>;
|
|
11
|
+
/**
|
|
12
|
+
* Animation duration in milliseconds
|
|
13
|
+
*/
|
|
14
|
+
duration: ComputedRef<number>;
|
|
15
|
+
/**
|
|
16
|
+
* CSS easing function
|
|
17
|
+
*/
|
|
18
|
+
easing: ComputedRef<string>;
|
|
19
|
+
/**
|
|
20
|
+
* Trigger a row reorder animation
|
|
21
|
+
* Called automatically when row order changes, but can be called manually
|
|
22
|
+
*/
|
|
23
|
+
animateReorder: () => Promise<void>;
|
|
24
|
+
}
|
|
File without changes
|
|
@@ -0,0 +1,24 @@
|
|
|
1
|
+
import type { TableData } from '@nuxt/ui';
|
|
2
|
+
import type { Cell, Row, Table } from '@tanstack/vue-table';
|
|
3
|
+
import type { Primitive } from 'reka-ui';
|
|
4
|
+
import type { ComputedRef, Ref } from 'vue';
|
|
5
|
+
import type { NuGridUISlots } from '../../../composables/_internal/useNuGridUI.js';
|
|
6
|
+
import type { NuGridConfig } from '../../config.js';
|
|
7
|
+
/**
|
|
8
|
+
* Core context - essential table API and UI
|
|
9
|
+
* Always needed by all components
|
|
10
|
+
*/
|
|
11
|
+
export interface NuGridCoreContext<T extends TableData = TableData> {
|
|
12
|
+
tableRef: Ref<HTMLDivElement | null>;
|
|
13
|
+
rootRef: Ref<InstanceType<typeof Primitive> | null | undefined>;
|
|
14
|
+
tableApi: Table<T>;
|
|
15
|
+
ui: ComputedRef<NuGridUISlots>;
|
|
16
|
+
propsUi: ComputedRef<NuGridConfig['slots'] | undefined>;
|
|
17
|
+
hasFooter: ComputedRef<boolean>;
|
|
18
|
+
rows: ComputedRef<Row<T>[]>;
|
|
19
|
+
/** Custom row slot for replacing default cell rendering */
|
|
20
|
+
rowSlot?: (props: {
|
|
21
|
+
row: Row<T>;
|
|
22
|
+
cells: Cell<T, unknown>[];
|
|
23
|
+
}) => any;
|
|
24
|
+
}
|
|
File without changes
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
import type { TableData } from '@nuxt/ui';
|
|
2
|
+
import type { ComputedRef } from 'vue';
|
|
3
|
+
import type { RowDragOptions } from '../../../composables/_internal/useNuGridRowDragDrop.js';
|
|
4
|
+
import type { NuGridColumnDragDrop, NuGridRowDragDrop } from '../../drag-drop.js';
|
|
5
|
+
/**
|
|
6
|
+
* Drag & Drop context
|
|
7
|
+
* Column and row drag operations
|
|
8
|
+
*/
|
|
9
|
+
export interface NuGridDragContext<T extends TableData = TableData> {
|
|
10
|
+
dragFns: NuGridColumnDragDrop<T>;
|
|
11
|
+
rowDragFns: NuGridRowDragDrop<T>;
|
|
12
|
+
rowDragOptions: ComputedRef<RowDragOptions>;
|
|
13
|
+
}
|
|
File without changes
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
import type { TableData } from '@nuxt/ui';
|
|
2
|
+
import type { NuGridCellEditing } from '../cell-editing.js';
|
|
3
|
+
import type { NuGridFocus } from '../focus.js';
|
|
4
|
+
/**
|
|
5
|
+
* Focus & Editing context
|
|
6
|
+
* Cell focus navigation and editing
|
|
7
|
+
*/
|
|
8
|
+
export interface NuGridFocusContext<T extends TableData = TableData> {
|
|
9
|
+
focusFns: NuGridFocus<T>;
|
|
10
|
+
cellEditingFns: NuGridCellEditing<T>;
|
|
11
|
+
}
|
|
File without changes
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
import type { TableData } from '@nuxt/ui';
|
|
2
|
+
import type { NuGridGroupingFns } from '../grouping.js';
|
|
3
|
+
/**
|
|
4
|
+
* Grouping context
|
|
5
|
+
* Row grouping functionality (optional)
|
|
6
|
+
*/
|
|
7
|
+
export interface NuGridGroupingContext<T extends TableData = TableData> {
|
|
8
|
+
groupingFns: NuGridGroupingFns<T> | null;
|
|
9
|
+
}
|
|
File without changes
|
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
export type { NuGridAddRowContext, NuGridAddRowPosition, NuGridAddRowState } from './add-row.js';
|
|
2
|
+
export type { NuGridAnimationContext } from './animation.js';
|
|
3
|
+
export type { NuGridCoreContext } from './core.js';
|
|
4
|
+
export type { NuGridDragContext } from './drag.js';
|
|
5
|
+
export type { NuGridFocusContext } from './focus.js';
|
|
6
|
+
export type { NuGridGroupingContext } from './grouping.js';
|
|
7
|
+
export type { NuGridInteractionRouterContext } from './interaction-router.js';
|
|
8
|
+
export type { NuGridMultiRowContext } from './multi-row.js';
|
|
9
|
+
export type { NuGridPagingContext } from './paging.js';
|
|
10
|
+
export type { NuGridPerformanceContext } from './performance.js';
|
|
11
|
+
export type { NuGridResizeContext } from './resize.js';
|
|
12
|
+
export type { NuGridRowInteractionsContext } from './row-interactions.js';
|
|
13
|
+
export type { NuGridScrollStateContext } from './scroll-state.js';
|
|
14
|
+
export type { NuGridUIConfigContext } from './ui-config.js';
|
|
15
|
+
export type { NuGridVirtualizationContext } from './virtualization.js';
|
|
File without changes
|
|
File without changes
|
|
@@ -0,0 +1,40 @@
|
|
|
1
|
+
import type { Column } from '@tanstack/vue-table';
|
|
2
|
+
import type { ComputedRef } from 'vue';
|
|
3
|
+
/**
|
|
4
|
+
* Information about a row 0 column slot for aligned mode
|
|
5
|
+
*/
|
|
6
|
+
export interface Row0ColumnSlot {
|
|
7
|
+
/** Column ID */
|
|
8
|
+
id: string;
|
|
9
|
+
/** Column width */
|
|
10
|
+
width: number;
|
|
11
|
+
/** Column minimum width */
|
|
12
|
+
minWidth: number;
|
|
13
|
+
/** Whether this column is pinned */
|
|
14
|
+
pinned: 'left' | 'right' | false;
|
|
15
|
+
/** The column reference for pinning calculations */
|
|
16
|
+
column: Column<any, unknown>;
|
|
17
|
+
}
|
|
18
|
+
/**
|
|
19
|
+
* Multi-row context
|
|
20
|
+
* Provides multi-row configuration to child components
|
|
21
|
+
*/
|
|
22
|
+
export interface NuGridMultiRowContext {
|
|
23
|
+
/**
|
|
24
|
+
* Whether multi-row mode is enabled
|
|
25
|
+
*/
|
|
26
|
+
enabled: ComputedRef<boolean>;
|
|
27
|
+
/**
|
|
28
|
+
* Number of visual rows per data item
|
|
29
|
+
*/
|
|
30
|
+
rowCount: ComputedRef<number>;
|
|
31
|
+
/**
|
|
32
|
+
* Whether columns should align with row 0 columns
|
|
33
|
+
*/
|
|
34
|
+
alignColumns: ComputedRef<boolean>;
|
|
35
|
+
/**
|
|
36
|
+
* Row 0 column slots for aligned mode
|
|
37
|
+
* Contains width and pinning info for each column in row 0
|
|
38
|
+
*/
|
|
39
|
+
row0Columns: ComputedRef<Row0ColumnSlot[]>;
|
|
40
|
+
}
|
|
File without changes
|
|
@@ -0,0 +1,39 @@
|
|
|
1
|
+
import type { ComputedRef } from 'vue';
|
|
2
|
+
/**
|
|
3
|
+
* Paging context
|
|
4
|
+
* Provides paging state and controls to child components
|
|
5
|
+
*/
|
|
6
|
+
export interface NuGridPagingContext {
|
|
7
|
+
/** Whether paging is enabled */
|
|
8
|
+
enabled: ComputedRef<boolean>;
|
|
9
|
+
/** Current page size (rows per page) */
|
|
10
|
+
pageSize: ComputedRef<number>;
|
|
11
|
+
/** Current page index (0-based) */
|
|
12
|
+
pageIndex: ComputedRef<number>;
|
|
13
|
+
/** Total number of rows (after filtering) */
|
|
14
|
+
totalRows: ComputedRef<number>;
|
|
15
|
+
/** Total number of pages */
|
|
16
|
+
totalPages: ComputedRef<number>;
|
|
17
|
+
/** Page size selector options */
|
|
18
|
+
pageSizeOptions: ComputedRef<number[]>;
|
|
19
|
+
/** Whether to show the built-in paging panel */
|
|
20
|
+
showPanel: ComputedRef<boolean>;
|
|
21
|
+
/** Whether auto page size is enabled */
|
|
22
|
+
autoPageSize: ComputedRef<boolean>;
|
|
23
|
+
/** Navigate to a specific page (0-based index) */
|
|
24
|
+
setPageIndex: (index: number) => void;
|
|
25
|
+
/** Set the page size */
|
|
26
|
+
setPageSize: (size: number) => void;
|
|
27
|
+
/** Navigate to the first page */
|
|
28
|
+
firstPage: () => void;
|
|
29
|
+
/** Navigate to the last page */
|
|
30
|
+
lastPage: () => void;
|
|
31
|
+
/** Navigate to the next page */
|
|
32
|
+
nextPage: () => void;
|
|
33
|
+
/** Navigate to the previous page */
|
|
34
|
+
previousPage: () => void;
|
|
35
|
+
/** Check if can go to next page */
|
|
36
|
+
canNextPage: ComputedRef<boolean>;
|
|
37
|
+
/** Check if can go to previous page */
|
|
38
|
+
canPreviousPage: ComputedRef<boolean>;
|
|
39
|
+
}
|
|
File without changes
|
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
import type { TableData } from '@nuxt/ui';
|
|
2
|
+
import type { Cell, Column, HeaderGroup, Row } from '@tanstack/vue-table';
|
|
3
|
+
import type { ComputedRef } from 'vue';
|
|
4
|
+
/**
|
|
5
|
+
* Performance context
|
|
6
|
+
* Cached TanStack Table API results and helper functions
|
|
7
|
+
*/
|
|
8
|
+
export interface NuGridPerformanceContext<T extends TableData = TableData> {
|
|
9
|
+
headerGroups: ComputedRef<HeaderGroup<T>[]>;
|
|
10
|
+
headerGroupsLength: ComputedRef<number>;
|
|
11
|
+
footerGroups: ComputedRef<HeaderGroup<T>[]>;
|
|
12
|
+
allLeafColumns: ComputedRef<Column<T, unknown>[]>;
|
|
13
|
+
getVisibleCells: (row: Row<T>) => Cell<T, unknown>[];
|
|
14
|
+
shouldHaveBorder: (row: Row<T>, cellIndex: number, side: 'left' | 'right') => boolean;
|
|
15
|
+
}
|
|
File without changes
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
import type { TableData } from '@nuxt/ui';
|
|
2
|
+
import type { NuGridColumnResize } from '../../resize.js';
|
|
3
|
+
/**
|
|
4
|
+
* Column Resize context
|
|
5
|
+
* Column and column group resizing
|
|
6
|
+
*/
|
|
7
|
+
export interface NuGridResizeContext<T extends TableData = TableData> {
|
|
8
|
+
handleResizeStart: NuGridColumnResize<T>['handleResizeStart'];
|
|
9
|
+
handleGroupResizeStart: NuGridColumnResize<T>['handleGroupResizeStart'];
|
|
10
|
+
resizingGroupId: NuGridColumnResize<T>['resizingGroupId'];
|
|
11
|
+
resizingColumnId: NuGridColumnResize<T>['resizingColumnId'];
|
|
12
|
+
}
|
|
File without changes
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
import type { TableData } from '@nuxt/ui';
|
|
2
|
+
import type { ComputedRef } from 'vue';
|
|
3
|
+
import type { NuGridRowInteractions } from '../../row-interactions.js';
|
|
4
|
+
import type { NuGridRowSelectOptions } from '../../row-selection.js';
|
|
5
|
+
/**
|
|
6
|
+
* Row Interactions context
|
|
7
|
+
* Row selection and interaction handlers
|
|
8
|
+
*/
|
|
9
|
+
export interface NuGridRowInteractionsContext<T extends TableData = TableData> {
|
|
10
|
+
rowInteractions: NuGridRowInteractions<T>;
|
|
11
|
+
rowSelectionMode: ComputedRef<boolean | 'single' | 'multi' | NuGridRowSelectOptions | undefined>;
|
|
12
|
+
}
|
|
File without changes
|
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
import type { ComputedRef, Ref } from 'vue';
|
|
2
|
+
/**
|
|
3
|
+
* Scroll state context - provides scroll position and settling information
|
|
4
|
+
* Used by LazyCell to defer rendering until scroll settles
|
|
5
|
+
*/
|
|
6
|
+
export interface NuGridScrollStateContext {
|
|
7
|
+
/** Whether the user is currently scrolling */
|
|
8
|
+
isScrolling: Ref<boolean>;
|
|
9
|
+
/** Whether scrolling has settled (stopped for a brief delay) */
|
|
10
|
+
isSettled: Ref<boolean>;
|
|
11
|
+
/** Current vertical scroll position */
|
|
12
|
+
scrollTop: Ref<number>;
|
|
13
|
+
/** Current horizontal scroll position */
|
|
14
|
+
scrollLeft: Ref<number>;
|
|
15
|
+
/** Viewport height of the container */
|
|
16
|
+
viewportHeight: ComputedRef<number>;
|
|
17
|
+
/** Total scrollable height */
|
|
18
|
+
scrollHeight: ComputedRef<number>;
|
|
19
|
+
/** Reference to the scroll container element */
|
|
20
|
+
containerRef: Ref<HTMLElement | null>;
|
|
21
|
+
}
|
|
File without changes
|
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
import type { TableData } from '@nuxt/ui';
|
|
2
|
+
import type { ComputedRef } from 'vue';
|
|
3
|
+
import type { NuGridUIReturn } from '../../../composables/_internal/useNuGridUI.js';
|
|
4
|
+
import type { NuGridColumnMenuItemsCallback } from '../../column.js';
|
|
5
|
+
import type { NuGridColumnMenuButton } from '../../option-groups.js';
|
|
6
|
+
import type { NuGridScrollbars } from '../../props.js';
|
|
7
|
+
import type { NuGridSortIcon } from '../../sort-icon.js';
|
|
8
|
+
/**
|
|
9
|
+
* UI Configuration context
|
|
10
|
+
* Styling, scrollbars, column menu, and sort icons
|
|
11
|
+
*/
|
|
12
|
+
export interface NuGridUIConfigContext<T extends TableData = TableData> {
|
|
13
|
+
sortIcons: ComputedRef<NuGridSortIcon | undefined>;
|
|
14
|
+
scrollbarClass: ComputedRef<string>;
|
|
15
|
+
scrollbarThemeClass: ComputedRef<string>;
|
|
16
|
+
scrollbarAttr: ComputedRef<NuGridScrollbars>;
|
|
17
|
+
getColumnMenuItems?: ComputedRef<NuGridColumnMenuItemsCallback<T> | undefined>;
|
|
18
|
+
showColumnVisibility: ComputedRef<boolean>;
|
|
19
|
+
columnMenuButton: ComputedRef<NuGridColumnMenuButton | undefined>;
|
|
20
|
+
checkboxTheme: NuGridUIReturn['checkboxTheme'];
|
|
21
|
+
}
|
|
File without changes
|
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
import type { TableData } from '@nuxt/ui';
|
|
2
|
+
import type { ComputedRef, Ref } from 'vue';
|
|
3
|
+
import type { GroupVirtualRowItem, NuGridVirtualizer } from '../virtualization.js';
|
|
4
|
+
/**
|
|
5
|
+
* Virtualization context
|
|
6
|
+
* Virtual scrolling and sticky positioning
|
|
7
|
+
*/
|
|
8
|
+
export interface NuGridVirtualizationContext<T extends TableData = TableData> {
|
|
9
|
+
virtualizer: Ref<NuGridVirtualizer> | null;
|
|
10
|
+
virtualizationEnabled: ComputedRef<boolean>;
|
|
11
|
+
virtualRowItems: ComputedRef<GroupVirtualRowItem<T>[]>;
|
|
12
|
+
measuredVirtualSizes: ComputedRef<Map<number, number> | null>;
|
|
13
|
+
getVirtualItemHeight: (index: number) => number;
|
|
14
|
+
stickyOffsets: ComputedRef<Map<number, number>>;
|
|
15
|
+
stickyEnabled: ComputedRef<boolean>;
|
|
16
|
+
}
|
|
File without changes
|
|
@@ -0,0 +1,48 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* @internal
|
|
3
|
+
*/
|
|
4
|
+
import type { TableData } from '@nuxt/ui';
|
|
5
|
+
import type { Header, Row } from '@tanstack/vue-table';
|
|
6
|
+
import type { MaybeRef, Ref } from 'vue';
|
|
7
|
+
/**
|
|
8
|
+
* Type for nugrid-dragfns injection
|
|
9
|
+
* Provides column drag and drop functionality
|
|
10
|
+
* @internal
|
|
11
|
+
*/
|
|
12
|
+
export interface NuGridColumnDragDrop<T extends TableData = TableData> {
|
|
13
|
+
draggedColumnId: MaybeRef<string | null>;
|
|
14
|
+
dropTargetColumnId: MaybeRef<string | null>;
|
|
15
|
+
dropPosition: MaybeRef<'left' | 'right'>;
|
|
16
|
+
isDraggingOutside: Ref<boolean>;
|
|
17
|
+
handleColumnDragStart: (e: DragEvent, columnId: string) => void;
|
|
18
|
+
handleColumnDragOver: (e: DragEvent, columnId: string) => void;
|
|
19
|
+
handleColumnDrop: (e: DragEvent, columnId: string) => void;
|
|
20
|
+
handleColumnDragEnd: () => void;
|
|
21
|
+
handleColumnDragLeave: (e: DragEvent) => void;
|
|
22
|
+
handleColumnDragEnter: () => void;
|
|
23
|
+
isHeaderDraggable: (header: Header<T, any>) => boolean;
|
|
24
|
+
headerDragHandleProps: (header: Header<T, any>) => Record<string, unknown>;
|
|
25
|
+
headerDragProps: (header: Header<T, any>) => Record<string, unknown>;
|
|
26
|
+
}
|
|
27
|
+
/**
|
|
28
|
+
* Type for nugrid-rowdragfns injection
|
|
29
|
+
* Provides row drag and drop functionality
|
|
30
|
+
* @internal
|
|
31
|
+
*/
|
|
32
|
+
export interface NuGridRowDragDrop<T extends TableData = TableData> {
|
|
33
|
+
draggedRowId: Ref<string | null>;
|
|
34
|
+
draggedRowData: Ref<T | null>;
|
|
35
|
+
dropTargetRowId: Ref<string | null>;
|
|
36
|
+
dropPosition: Ref<'before' | 'after'>;
|
|
37
|
+
dragSourceGridId: Ref<string | null>;
|
|
38
|
+
isDraggingOutside: Ref<boolean>;
|
|
39
|
+
handleRowDragStart: (e: DragEvent, row: Row<T>) => void;
|
|
40
|
+
handleRowDragOver: (e: DragEvent, row: Row<T>) => void;
|
|
41
|
+
handleRowDrop: (e: DragEvent, row: Row<T>) => void;
|
|
42
|
+
handleRowDragEnd: () => void;
|
|
43
|
+
handleRowDragLeave: (e: DragEvent) => void;
|
|
44
|
+
handleRowDragEnter: () => void;
|
|
45
|
+
isRowDraggable: (row: Row<T>) => boolean;
|
|
46
|
+
rowDragHandleProps: (row: Row<T>) => Record<string, unknown>;
|
|
47
|
+
rowDragProps: (row: Row<T>) => Record<string, unknown>;
|
|
48
|
+
}
|
|
File without changes
|
|
@@ -0,0 +1,68 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* @internal
|
|
3
|
+
*/
|
|
4
|
+
import type { TableData } from '@nuxt/ui';
|
|
5
|
+
import type { Row } from '@tanstack/vue-table';
|
|
6
|
+
import type { Ref } from 'vue';
|
|
7
|
+
/**
|
|
8
|
+
* Focused cell position
|
|
9
|
+
* @internal
|
|
10
|
+
*/
|
|
11
|
+
export interface NuGridFocusedCell {
|
|
12
|
+
rowIndex: number;
|
|
13
|
+
columnIndex: number;
|
|
14
|
+
groupId?: string;
|
|
15
|
+
suppressOutline?: boolean;
|
|
16
|
+
}
|
|
17
|
+
/**
|
|
18
|
+
* Type for nugrid-focusfns injection
|
|
19
|
+
* Provides cell and row focus management
|
|
20
|
+
* @internal
|
|
21
|
+
*/
|
|
22
|
+
export interface NuGridFocus<T extends TableData = TableData> {
|
|
23
|
+
focusedCell: Ref<NuGridFocusedCell | null>;
|
|
24
|
+
gridHasFocus: Ref<boolean>;
|
|
25
|
+
onCellClick: (e: Event, row: Row<T>, columnIndex: number) => void;
|
|
26
|
+
onCellKeyDown: (e: KeyboardEvent) => void;
|
|
27
|
+
onCellKeyUp: (e: KeyboardEvent) => void;
|
|
28
|
+
getRowTabIndex: (row: Row<T>) => number;
|
|
29
|
+
shouldRowHandleKeydown: (row: Row<T>) => boolean;
|
|
30
|
+
getCellTabIndex: (row: Row<T>, cellIndex: number) => number;
|
|
31
|
+
shouldCellHandleKeydown: (row: Row<T>, cellIndex: number) => boolean;
|
|
32
|
+
isActiveRow: (row: Row<T>) => boolean;
|
|
33
|
+
isFocusedRow: (row: Row<T>) => boolean;
|
|
34
|
+
isFocusedCell: (row: Row<T>, cellIndex: number) => boolean;
|
|
35
|
+
rowFocusProps: (row: Row<T>) => Record<string, unknown>;
|
|
36
|
+
cellFocusProps: (row: Row<T>, cellIndex: number) => Record<string, unknown>;
|
|
37
|
+
focusCell: (targetRow: Row<T>, newRowIndex: number, newColumnIndex: number) => void;
|
|
38
|
+
findFirstFocusableColumn: (row: Row<T>) => number;
|
|
39
|
+
/** Get a cell element by row ID and column index (uses internal cache for performance) */
|
|
40
|
+
getCellElement: (rowId: string, columnIndex: number) => HTMLElement | null;
|
|
41
|
+
/** Ensure footer rows are visible when scrolling to bottom of grid */
|
|
42
|
+
ensureFootersVisible: (scrollContainer: HTMLElement) => void;
|
|
43
|
+
/** Scroll to a cell and focus it, with proper scroll management */
|
|
44
|
+
scrollToCellAndFocus: (options: {
|
|
45
|
+
cellElement: HTMLElement;
|
|
46
|
+
rowId: string;
|
|
47
|
+
rowIndex: number;
|
|
48
|
+
columnIndex: number;
|
|
49
|
+
behavior?: 'instant' | 'smooth';
|
|
50
|
+
skipHorizontalScroll?: boolean;
|
|
51
|
+
onComplete?: () => void;
|
|
52
|
+
}) => void;
|
|
53
|
+
/** Update focused cell and emit focus events */
|
|
54
|
+
setFocusedCell: (newValue: NuGridFocusedCell | null, options?: {
|
|
55
|
+
suppressEvents?: boolean;
|
|
56
|
+
}) => void;
|
|
57
|
+
/**
|
|
58
|
+
* Focus a row by its ID, scrolling to make it visible
|
|
59
|
+
* @param rowId - The ID of the row to focus, or null to clear focus
|
|
60
|
+
* @param options - Optional settings for focus behavior
|
|
61
|
+
* @returns true if row was found and focused, false if row ID not found
|
|
62
|
+
*/
|
|
63
|
+
focusRowById: (rowId: string | null, options?: {
|
|
64
|
+
columnIndex?: number;
|
|
65
|
+
/** Scroll alignment: 'nearest' just makes visible, 'top' scrolls row to top, 'center' centers the row */
|
|
66
|
+
align?: 'nearest' | 'top' | 'center';
|
|
67
|
+
}) => boolean;
|
|
68
|
+
}
|
|
File without changes
|
|
@@ -0,0 +1,48 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* @internal
|
|
3
|
+
*/
|
|
4
|
+
import type { TableData } from '@nuxt/ui';
|
|
5
|
+
import type { Row } from '@tanstack/vue-table';
|
|
6
|
+
import type { ComputedRef, Ref } from 'vue';
|
|
7
|
+
import type { GroupingVirtualRowHeights, GroupVirtualRowItem, NuGridVirtualizer } from './virtualization.js';
|
|
8
|
+
/**
|
|
9
|
+
* Type for grouping functions returned by useNuGridGrouping
|
|
10
|
+
* Provides group management and virtualization for grouped tables
|
|
11
|
+
* @internal
|
|
12
|
+
*/
|
|
13
|
+
export interface NuGridGroupingFns<T extends TableData = TableData> {
|
|
14
|
+
/** All rows from the table (grouped or ungrouped) */
|
|
15
|
+
rows: ComputedRef<Row<T>[]>;
|
|
16
|
+
/** Group header rows only */
|
|
17
|
+
groupRows: ComputedRef<Row<T>[]>;
|
|
18
|
+
/** Rows organized by group ID */
|
|
19
|
+
groupedRows: ComputedRef<Record<string, Row<T>[]>>;
|
|
20
|
+
/** Group expansion state */
|
|
21
|
+
groupExpanded: Ref<Record<string, boolean>>;
|
|
22
|
+
/** Toggle a group's expanded state */
|
|
23
|
+
toggleGroup: (groupId: string) => void;
|
|
24
|
+
/** Check if a group is expanded */
|
|
25
|
+
isGroupExpanded: (groupId: string) => boolean;
|
|
26
|
+
/** Virtual row items for virtualization */
|
|
27
|
+
virtualRowItems: ComputedRef<GroupVirtualRowItem<T>[]>;
|
|
28
|
+
/** Virtualizer instance */
|
|
29
|
+
virtualizer: Ref<NuGridVirtualizer> | null;
|
|
30
|
+
/** Whether virtualization is enabled */
|
|
31
|
+
virtualizationEnabled: ComputedRef<boolean>;
|
|
32
|
+
/** Flattened list of navigable rows for keyboard navigation */
|
|
33
|
+
navigableRows: ComputedRef<Row<T>[]>;
|
|
34
|
+
/** Row heights configuration for grouping */
|
|
35
|
+
groupingRowHeights: ComputedRef<Required<GroupingVirtualRowHeights>>;
|
|
36
|
+
/** Number of header groups */
|
|
37
|
+
headerGroupCount: ComputedRef<number>;
|
|
38
|
+
/** Active sticky row indexes */
|
|
39
|
+
activeStickyIndexes: Ref<number[]>;
|
|
40
|
+
/** Total height of active sticky elements */
|
|
41
|
+
activeStickyHeight: ComputedRef<number>;
|
|
42
|
+
/** Measured virtual item sizes for dynamic heights */
|
|
43
|
+
measuredVirtualSizes: ComputedRef<Map<number, number> | null>;
|
|
44
|
+
/** Get height for a virtual item (measured or fallback) */
|
|
45
|
+
getVirtualItemHeight: (index: number) => number;
|
|
46
|
+
/** Cumulative top offsets for sticky headers */
|
|
47
|
+
stickyOffsets: ComputedRef<Map<number, number>>;
|
|
48
|
+
}
|
|
File without changes
|