@revolist/revogrid 4.9.41 → 4.9.42
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/dist/cjs/app-globals-c0b20747.js.map +1 -1
- package/dist/cjs/{column.drag.plugin-fcd892ec.js → column.drag.plugin-a6ef25bf.js} +1034 -149
- package/dist/cjs/column.drag.plugin-a6ef25bf.js.map +1 -0
- package/dist/cjs/column.service-831e1c92.js +1321 -0
- package/dist/cjs/column.service-831e1c92.js.map +1 -0
- package/dist/cjs/{column.service-26c61ed6.js → dimension.helpers-1927ad24.js} +490 -1273
- package/dist/cjs/dimension.helpers-1927ad24.js.map +1 -0
- package/dist/cjs/{edit.utils-179c0800.js → edit.utils-e51411f6.js} +3 -3
- package/dist/cjs/{edit.utils-179c0800.js.map → edit.utils-e51411f6.js.map} +1 -1
- package/dist/cjs/{header-cell-renderer-d879d95e.js → header-cell-renderer-53ecdcdb.js} +2 -2
- package/dist/cjs/{header-cell-renderer-d879d95e.js.map → header-cell-renderer-53ecdcdb.js.map} +1 -1
- package/dist/cjs/index.cjs.js +127 -69
- package/dist/cjs/index.cjs.js.map +1 -1
- package/dist/cjs/key.utils-96d0bc42.js +101 -0
- package/dist/cjs/key.utils-96d0bc42.js.map +1 -0
- package/dist/cjs/loader.cjs.js +1 -1
- package/dist/cjs/revo-grid.cjs.entry.js +310 -941
- package/dist/cjs/revo-grid.cjs.entry.js.map +1 -1
- package/dist/cjs/revo-grid.cjs.js +1 -1
- package/dist/cjs/revogr-attribution_7.cjs.entry.js +100 -70
- package/dist/cjs/revogr-attribution_7.cjs.entry.js.map +1 -1
- package/dist/cjs/revogr-clipboard_3.cjs.entry.js +11 -10
- package/dist/cjs/revogr-clipboard_3.cjs.entry.js.map +1 -1
- package/dist/cjs/revogr-data_4.cjs.entry.js +88 -78
- package/dist/cjs/revogr-data_4.cjs.entry.js.map +1 -1
- package/dist/cjs/revogr-filter-panel.cjs.entry.js +33 -13
- package/dist/cjs/revogr-filter-panel.cjs.entry.js.map +1 -1
- package/dist/cjs/{text-editor-b756d6b3.js → text-editor-1afffaf1.js} +6 -6
- package/dist/cjs/text-editor-1afffaf1.js.map +1 -0
- package/dist/cjs/{throttle-a57f51f9.js → throttle-bb713c73.js} +4 -4
- package/dist/cjs/{throttle-a57f51f9.js.map → throttle-bb713c73.js.map} +1 -1
- package/dist/cjs/{row-header-utils-c37f76e4.js → viewport.store-69b45f22.js} +15 -14
- package/dist/cjs/viewport.store-69b45f22.js.map +1 -0
- package/dist/collection/components/attribution/revogr-attribution.js +1 -1
- package/dist/collection/components/attribution/revogr-attribution.js.map +1 -1
- package/dist/collection/components/data/cell-renderer.js +11 -9
- package/dist/collection/components/data/cell-renderer.js.map +1 -1
- package/dist/collection/components/data/column.service.js +7 -19
- package/dist/collection/components/data/column.service.js.map +1 -1
- package/dist/collection/components/data/revogr-data-style.css +10 -5
- package/dist/collection/components/data/revogr-data.js +50 -28
- package/dist/collection/components/data/revogr-data.js.map +1 -1
- package/dist/collection/components/data/row-highlight.plugin.js.map +1 -1
- package/dist/collection/components/data/row-renderer.js.map +1 -1
- package/dist/collection/components/editors/revogr-edit-style.css +8 -5
- package/dist/collection/components/editors/revogr-edit.js +2 -2
- package/dist/collection/components/editors/revogr-edit.js.map +1 -1
- package/dist/collection/components/editors/text-editor.js +2 -2
- package/dist/collection/components/editors/text-editor.js.map +1 -1
- package/dist/collection/components/extra/revogr-extra.js +44 -6
- package/dist/collection/components/extra/revogr-extra.js.map +1 -1
- package/dist/collection/components/header/header-cell-renderer.js.map +1 -1
- package/dist/collection/components/header/header-renderer.js.map +1 -1
- package/dist/collection/components/header/resizable.element.js.map +1 -1
- package/dist/collection/components/header/revogr-header-style.css +8 -5
- package/dist/collection/components/header/revogr-header.js +9 -9
- package/dist/collection/components/header/revogr-header.js.map +1 -1
- package/dist/collection/components/order/order-renderer.js.map +1 -1
- package/dist/collection/components/order/revogr-order-editor.js +12 -24
- package/dist/collection/components/order/revogr-order-editor.js.map +1 -1
- package/dist/collection/components/overlay/autofill.service.js +7 -5
- package/dist/collection/components/overlay/autofill.service.js.map +1 -1
- package/dist/collection/components/overlay/keyboard.service.js +1 -4
- package/dist/collection/components/overlay/keyboard.service.js.map +1 -1
- package/dist/collection/components/overlay/revogr-overlay-selection.js +88 -72
- package/dist/collection/components/overlay/revogr-overlay-selection.js.map +1 -1
- package/dist/collection/components/overlay/revogr-overlay-style.css +8 -5
- package/dist/collection/components/overlay/selection.utils.js.map +1 -1
- package/dist/collection/components/revoGrid/plugin.service.js +81 -0
- package/dist/collection/components/revoGrid/plugin.service.js.map +1 -0
- package/dist/collection/components/revoGrid/revo-grid-style.css +18 -11
- package/dist/collection/components/revoGrid/revo-grid.js +289 -140
- package/dist/collection/components/revoGrid/revo-grid.js.map +1 -1
- package/dist/collection/components/revoGrid/viewport.service.js +9 -9
- package/dist/collection/components/revoGrid/viewport.service.js.map +1 -1
- package/dist/collection/components/rowHeaders/revogr-row-headers.js +1 -1
- package/dist/collection/components/rowHeaders/revogr-row-headers.js.map +1 -1
- package/dist/collection/components/rowHeaders/row-header-render.js.map +1 -1
- package/dist/collection/components/scroll/revogr-viewport-scroll-style.css +8 -5
- package/dist/collection/components/scroll/revogr-viewport-scroll.js +26 -20
- package/dist/collection/components/scroll/revogr-viewport-scroll.js.map +1 -1
- package/dist/collection/components/scrollable/revogr-scroll-style.css +10 -7
- package/dist/collection/components/scrollable/revogr-scroll-virtual.js +10 -8
- package/dist/collection/components/scrollable/revogr-scroll-virtual.js.map +1 -1
- package/dist/collection/components/selectionFocus/revogr-focus-style.css +8 -5
- package/dist/collection/components/selectionFocus/revogr-focus.js +10 -10
- package/dist/collection/components/selectionFocus/revogr-focus.js.map +1 -1
- package/dist/collection/components/selectionTempRange/revogr-temp-range-style.css +8 -5
- package/dist/collection/components/selectionTempRange/revogr-temp-range.js +6 -6
- package/dist/collection/components/selectionTempRange/revogr-temp-range.js.map +1 -1
- package/dist/collection/components/vnode/vnode-converter.js +1 -1
- package/dist/collection/components/vnode/vnode-converter.js.map +1 -1
- package/dist/collection/components/vnode/vnode.utils.js.map +1 -1
- package/dist/collection/index.js.map +1 -1
- package/dist/collection/plugins/add-rows-on-paste.plugin.js +40 -0
- package/dist/collection/plugins/add-rows-on-paste.plugin.js.map +1 -0
- package/dist/collection/plugins/base.plugin.js.map +1 -1
- package/dist/collection/plugins/column.auto-size.plugin.js +1 -1
- package/dist/collection/plugins/column.auto-size.plugin.js.map +1 -1
- package/dist/collection/plugins/column.stretch.plugin.js +1 -1
- package/dist/collection/plugins/column.stretch.plugin.js.map +1 -1
- package/dist/collection/plugins/export/csv.js +1 -1
- package/dist/collection/plugins/export/csv.js.map +1 -1
- package/dist/collection/plugins/export/export.plugin.js +4 -2
- package/dist/collection/plugins/export/export.plugin.js.map +1 -1
- package/dist/collection/plugins/filter/filter.indexed.js +1 -0
- package/dist/collection/plugins/filter/filter.indexed.js.map +1 -1
- package/dist/collection/plugins/filter/filter.panel.js +35 -35
- package/dist/collection/plugins/filter/filter.panel.js.map +1 -1
- package/dist/collection/plugins/filter/filter.plugin.js +117 -77
- package/dist/collection/plugins/filter/filter.plugin.js.map +1 -1
- package/dist/collection/plugins/filter/filter.style.css +19 -5
- package/dist/collection/plugins/filter/filter.types.js.map +1 -1
- package/dist/collection/plugins/groupingColumn/columnGroupsRenderer.js.map +1 -1
- package/dist/collection/plugins/groupingColumn/headerGroupRenderer.js.map +1 -1
- package/dist/collection/plugins/groupingRow/grouping.const.js +1 -0
- package/dist/collection/plugins/groupingRow/grouping.const.js.map +1 -1
- package/dist/collection/plugins/groupingRow/grouping.row.plugin.js +64 -79
- package/dist/collection/plugins/groupingRow/grouping.row.plugin.js.map +1 -1
- package/dist/collection/plugins/groupingRow/grouping.row.renderer.js +3 -3
- package/dist/collection/plugins/groupingRow/grouping.row.renderer.js.map +1 -1
- package/dist/collection/plugins/groupingRow/grouping.row.types.js.map +1 -1
- package/dist/collection/plugins/groupingRow/grouping.service.js +40 -6
- package/dist/collection/plugins/groupingRow/grouping.service.js.map +1 -1
- package/dist/collection/plugins/index.js +2 -0
- package/dist/collection/plugins/index.js.map +1 -1
- package/dist/collection/plugins/moveColumn/column.drag.plugin.js +12 -6
- package/dist/collection/plugins/moveColumn/column.drag.plugin.js.map +1 -1
- package/dist/collection/plugins/sorting/sorting.func.js +42 -0
- package/dist/collection/plugins/sorting/sorting.func.js.map +1 -0
- package/dist/collection/plugins/sorting/sorting.plugin.js +71 -69
- package/dist/collection/plugins/sorting/sorting.plugin.js.map +1 -1
- package/dist/collection/plugins/sorting/sorting.types.js +2 -0
- package/dist/collection/plugins/sorting/sorting.types.js.map +1 -0
- package/dist/collection/serve/controller.js +32 -15
- package/dist/collection/serve/data.js +18 -11
- package/dist/collection/services/column.data.provider.js +5 -2
- package/dist/collection/services/column.data.provider.js.map +1 -1
- package/dist/collection/services/data.provider.js +18 -7
- package/dist/collection/services/data.provider.js.map +1 -1
- package/dist/collection/services/dimension.provider.js +32 -33
- package/dist/collection/services/dimension.provider.js.map +1 -1
- package/dist/collection/services/selection.store.connector.js +1 -1
- package/dist/collection/services/selection.store.connector.js.map +1 -1
- package/dist/collection/store/dataSource/data.proxy.js +9 -15
- package/dist/collection/store/dataSource/data.proxy.js.map +1 -1
- package/dist/collection/store/dataSource/data.store.js +1 -1
- package/dist/collection/store/dataSource/data.store.js.map +1 -1
- package/dist/collection/store/dataSource/trimmed.plugin.js +5 -8
- package/dist/collection/store/dataSource/trimmed.plugin.js.map +1 -1
- package/dist/collection/store/dimension/dimension.helpers.js +7 -9
- package/dist/collection/store/dimension/dimension.helpers.js.map +1 -1
- package/dist/collection/store/dimension/dimension.recalculate.plugin.js +35 -0
- package/dist/collection/store/dimension/dimension.recalculate.plugin.js.map +1 -0
- package/dist/collection/store/dimension/dimension.store.js +47 -67
- package/dist/collection/store/dimension/dimension.store.js.map +1 -1
- package/dist/collection/store/dimension/dimension.trim.plugin.js +61 -0
- package/dist/collection/store/dimension/dimension.trim.plugin.js.map +1 -0
- package/dist/collection/store/selection/selection.store.js +1 -1
- package/dist/collection/store/selection/selection.store.js.map +1 -1
- package/dist/collection/store/vp/viewport.store.js +4 -2
- package/dist/collection/store/vp/viewport.store.js.map +1 -1
- package/dist/collection/types/events.js +6 -2
- package/dist/collection/types/events.js.map +1 -1
- package/dist/collection/types/interfaces.js +4 -0
- package/dist/collection/types/interfaces.js.map +1 -1
- package/dist/collection/types/plugin.types.js.map +1 -1
- package/dist/collection/types/selection.js.map +1 -1
- package/dist/collection/types/viewport.interfaces.js.map +1 -1
- package/dist/collection/utils/column.utils.js +13 -3
- package/dist/collection/utils/column.utils.js.map +1 -1
- package/dist/esm/app-globals-3a760941.js.map +1 -1
- package/dist/esm/{column.drag.plugin-3cc77986.js → column.drag.plugin-50f49fa9.js} +1012 -130
- package/dist/esm/column.drag.plugin-50f49fa9.js.map +1 -0
- package/dist/esm/column.service-a6a7c415.js +1281 -0
- package/dist/esm/column.service-a6a7c415.js.map +1 -0
- package/dist/esm/{debounce-72878ced.js → debounce-b3166f78.js} +2 -2
- package/dist/esm/{debounce-72878ced.js.map → debounce-b3166f78.js.map} +1 -1
- package/dist/esm/{column.service-751345b2.js → dimension.helpers-d0d709c4.js} +450 -1234
- package/dist/esm/dimension.helpers-d0d709c4.js.map +1 -0
- package/dist/esm/{edit.utils-6fc686b9.js → edit.utils-0ae0db50.js} +2 -2
- package/dist/esm/{edit.utils-6fc686b9.js.map → edit.utils-0ae0db50.js.map} +1 -1
- package/dist/esm/{header-cell-renderer-32d2ed96.js → header-cell-renderer-36ecbdef.js} +2 -2
- package/dist/esm/{header-cell-renderer-32d2ed96.js.map → header-cell-renderer-36ecbdef.js.map} +1 -1
- package/dist/esm/index.js +52 -11
- package/dist/esm/index.js.map +1 -1
- package/dist/esm/{key.utils-17273f42.js → key.utils-7c3218d4.js} +2 -2
- package/dist/esm/{key.utils-17273f42.js.map → key.utils-7c3218d4.js.map} +1 -1
- package/dist/esm/loader.js +1 -1
- package/dist/esm/revo-grid.entry.js +246 -877
- package/dist/esm/revo-grid.entry.js.map +1 -1
- package/dist/esm/revo-grid.js +1 -1
- package/dist/esm/revogr-attribution_7.entry.js +63 -33
- package/dist/esm/revogr-attribution_7.entry.js.map +1 -1
- package/dist/esm/revogr-clipboard_3.entry.js +7 -6
- package/dist/esm/revogr-clipboard_3.entry.js.map +1 -1
- package/dist/esm/revogr-data_4.entry.js +60 -50
- package/dist/esm/revogr-data_4.entry.js.map +1 -1
- package/dist/esm/revogr-filter-panel.entry.js +34 -14
- package/dist/esm/revogr-filter-panel.entry.js.map +1 -1
- package/dist/esm/{text-editor-901c3eb8.js → text-editor-148a17c1.js} +5 -5
- package/dist/esm/text-editor-148a17c1.js.map +1 -0
- package/dist/esm/{throttle-138d69c3.js → throttle-394e489c.js} +3 -3
- package/dist/esm/{throttle-138d69c3.js.map → throttle-394e489c.js.map} +1 -1
- package/dist/esm/{row-header-utils-3dfbb81f.js → viewport.store-afa8c4fe.js} +11 -10
- package/dist/esm/viewport.store-afa8c4fe.js.map +1 -0
- package/dist/revo-grid/app-globals-3a760941.js +8 -1
- package/dist/revo-grid/app-globals-3a760941.js.map +1 -1
- package/dist/revo-grid/column.drag.plugin-50f49fa9.js +2541 -0
- package/dist/revo-grid/column.drag.plugin-50f49fa9.js.map +1 -0
- package/dist/revo-grid/column.service-a6a7c415.js +1281 -0
- package/dist/revo-grid/column.service-a6a7c415.js.map +1 -0
- package/dist/revo-grid/debounce-b3166f78.js +495 -0
- package/dist/revo-grid/debounce-b3166f78.js.map +1 -0
- package/dist/revo-grid/dimension.helpers-d0d709c4.js +3611 -0
- package/dist/revo-grid/dimension.helpers-d0d709c4.js.map +1 -0
- package/dist/revo-grid/edit.utils-0ae0db50.js +17 -0
- package/dist/revo-grid/edit.utils-0ae0db50.js.map +1 -0
- package/dist/revo-grid/events-cf0893a3.js +38 -1
- package/dist/revo-grid/events-cf0893a3.js.map +1 -1
- package/dist/revo-grid/filter.button-d40ab17b.js +34 -1
- package/dist/revo-grid/filter.button-d40ab17b.js.map +1 -1
- package/dist/revo-grid/header-cell-renderer-36ecbdef.js +339 -0
- package/dist/revo-grid/header-cell-renderer-36ecbdef.js.map +1 -0
- package/dist/revo-grid/index-a61f225b.js +1845 -2
- package/dist/revo-grid/index-a61f225b.js.map +1 -1
- package/dist/revo-grid/index.esm.js +160 -1
- package/dist/revo-grid/index.esm.js.map +1 -1
- package/dist/revo-grid/key.utils-7c3218d4.js +89 -0
- package/dist/revo-grid/key.utils-7c3218d4.js.map +1 -0
- package/dist/revo-grid/resize-observer-83c9e167.js +501 -1
- package/dist/revo-grid/resize-observer-83c9e167.js.map +1 -1
- package/dist/revo-grid/revo-grid.entry.js +1934 -1
- package/dist/revo-grid/revo-grid.entry.js.map +1 -1
- package/dist/revo-grid/revo-grid.esm.js +21 -1
- package/dist/revo-grid/revo-grid.esm.js.map +1 -1
- package/dist/revo-grid/revogr-attribution_7.entry.js +1431 -1
- package/dist/revo-grid/revogr-attribution_7.entry.js.map +1 -1
- package/dist/revo-grid/revogr-clipboard_3.entry.js +455 -1
- package/dist/revo-grid/revogr-clipboard_3.entry.js.map +1 -1
- package/dist/revo-grid/revogr-data_4.entry.js +974 -1
- package/dist/revo-grid/revogr-data_4.entry.js.map +1 -1
- package/dist/revo-grid/revogr-filter-panel.entry.js +340 -1
- package/dist/revo-grid/revogr-filter-panel.entry.js.map +1 -1
- package/dist/revo-grid/sorting.sign-1a675bf7.js +9 -1
- package/dist/revo-grid/sorting.sign-1a675bf7.js.map +1 -1
- package/dist/revo-grid/text-editor-148a17c1.js +80 -0
- package/dist/revo-grid/text-editor-148a17c1.js.map +1 -0
- package/dist/revo-grid/throttle-394e489c.js +230 -0
- package/dist/revo-grid/throttle-394e489c.js.map +1 -0
- package/dist/revo-grid/viewport.helpers-7e7f9dad.js +48 -1
- package/dist/revo-grid/viewport.helpers-7e7f9dad.js.map +1 -1
- package/dist/revo-grid/viewport.store-afa8c4fe.js +406 -0
- package/dist/revo-grid/viewport.store-afa8c4fe.js.map +1 -0
- package/dist/types/components/data/cell-renderer.d.ts +3 -5
- package/dist/types/components/data/column.service.d.ts +2 -3
- package/dist/types/components/data/revogr-data.d.ts +10 -6
- package/dist/types/components/data/row-highlight.plugin.d.ts +1 -1
- package/dist/types/components/data/row-renderer.d.ts +1 -1
- package/dist/types/components/editors/revogr-edit.d.ts +2 -2
- package/dist/types/components/editors/text-editor.d.ts +5 -6
- package/dist/types/components/extra/revogr-extra.d.ts +17 -3
- package/dist/types/components/header/header-cell-renderer.d.ts +1 -1
- package/dist/types/components/header/header-renderer.d.ts +2 -2
- package/dist/types/components/header/resizable.element.d.ts +1 -1
- package/dist/types/components/header/revogr-header.d.ts +2 -3
- package/dist/types/components/order/order-renderer.d.ts +1 -1
- package/dist/types/components/order/revogr-order-editor.d.ts +4 -10
- package/dist/types/components/overlay/autofill.service.d.ts +2 -2
- package/dist/types/components/overlay/keyboard.service.d.ts +1 -1
- package/dist/types/components/overlay/revogr-overlay-selection.d.ts +16 -13
- package/dist/types/components/overlay/selection.utils.d.ts +1 -1
- package/dist/types/components/revoGrid/plugin.service.d.ts +37 -0
- package/dist/types/components/revoGrid/revo-grid.d.ts +105 -61
- package/dist/types/components/revoGrid/viewport.service.d.ts +2 -2
- package/dist/types/components/rowHeaders/row-header-render.d.ts +2 -2
- package/dist/types/components/scroll/revogr-viewport-scroll.d.ts +2 -5
- package/dist/types/components/scrollable/revogr-scroll-virtual.d.ts +2 -3
- package/dist/types/components/selectionFocus/revogr-focus.d.ts +2 -2
- package/dist/types/components/selectionTempRange/revogr-temp-range.d.ts +2 -3
- package/dist/types/components/vnode/vnode-converter.d.ts +1 -1
- package/dist/types/components/vnode/vnode.utils.d.ts +2 -2
- package/dist/types/components.d.ts +191 -108
- package/dist/types/index.d.ts +1 -1
- package/dist/types/plugins/add-rows-on-paste.plugin.d.ts +14 -0
- package/dist/types/plugins/base.plugin.d.ts +3 -4
- package/dist/types/plugins/column.auto-size.plugin.d.ts +1 -1
- package/dist/types/plugins/column.stretch.plugin.d.ts +1 -1
- package/dist/types/plugins/export/csv.d.ts +1 -1
- package/dist/types/plugins/export/export.plugin.d.ts +4 -3
- package/dist/types/plugins/filter/filter.panel.d.ts +2 -2
- package/dist/types/plugins/filter/filter.plugin.d.ts +25 -7
- package/dist/types/plugins/filter/filter.types.d.ts +32 -10
- package/dist/types/plugins/groupingColumn/columnGroupsRenderer.d.ts +2 -2
- package/dist/types/plugins/groupingColumn/headerGroupRenderer.d.ts +3 -4
- package/dist/types/plugins/groupingRow/grouping.const.d.ts +3 -1
- package/dist/types/plugins/groupingRow/grouping.row.plugin.d.ts +15 -10
- package/dist/types/plugins/groupingRow/grouping.row.types.d.ts +38 -4
- package/dist/types/plugins/groupingRow/grouping.service.d.ts +9 -12
- package/dist/types/plugins/index.d.ts +2 -0
- package/dist/types/plugins/moveColumn/column.drag.plugin.d.ts +2 -2
- package/dist/types/plugins/sorting/sorting.func.d.ts +3 -0
- package/dist/types/plugins/sorting/sorting.plugin.d.ts +14 -13
- package/dist/types/plugins/sorting/sorting.types.d.ts +13 -0
- package/dist/types/services/column.data.provider.d.ts +5 -2
- package/dist/types/services/data.provider.d.ts +3 -1
- package/dist/types/services/dimension.provider.d.ts +9 -4
- package/dist/types/services/selection.store.connector.d.ts +4 -4
- package/dist/types/store/dataSource/data.proxy.d.ts +7 -9
- package/dist/types/store/dataSource/data.store.d.ts +2 -3
- package/dist/types/store/dataSource/trimmed.plugin.d.ts +1 -1
- package/dist/types/store/dimension/dimension.helpers.d.ts +1 -4
- package/dist/types/store/dimension/dimension.recalculate.plugin.d.ts +9 -0
- package/dist/types/store/dimension/dimension.store.d.ts +3 -2
- package/dist/types/store/dimension/dimension.trim.plugin.d.ts +13 -0
- package/dist/types/store/selection/selection.store.d.ts +1 -1
- package/dist/types/store/vp/viewport.store.d.ts +1 -1
- package/dist/types/types/events.d.ts +1 -1
- package/dist/types/types/interfaces.d.ts +36 -12
- package/dist/types/types/plugin.types.d.ts +17 -1
- package/dist/types/types/selection.d.ts +23 -17
- package/dist/types/types/viewport.interfaces.d.ts +1 -3
- package/dist/types/utils/column.utils.d.ts +1 -0
- package/hydrate/index.js +2490 -2135
- package/hydrate/index.mjs +2490 -2135
- package/package.json +20 -19
- package/readme.md +15 -17
- package/standalone/column.service.js +192 -160
- package/standalone/column.service.js.map +1 -1
- package/standalone/data.store.js +36 -25
- package/standalone/data.store.js.map +1 -1
- package/standalone/dimension.helpers.js +8 -10
- package/standalone/dimension.helpers.js.map +1 -1
- package/standalone/index.js +46 -6
- package/standalone/index.js.map +1 -1
- package/standalone/revo-grid.js +1275 -1022
- package/standalone/revo-grid.js.map +1 -1
- package/standalone/revogr-attribution2.js +1 -1
- package/standalone/revogr-attribution2.js.map +1 -1
- package/standalone/revogr-data2.js +26 -22
- package/standalone/revogr-data2.js.map +1 -1
- package/standalone/revogr-edit2.js +3 -3
- package/standalone/revogr-edit2.js.map +1 -1
- package/standalone/revogr-extra2.js +25 -4
- package/standalone/revogr-extra2.js.map +1 -1
- package/standalone/revogr-filter-panel.js +34 -14
- package/standalone/revogr-filter-panel.js.map +1 -1
- package/standalone/revogr-focus2.js +2 -1
- package/standalone/revogr-focus2.js.map +1 -1
- package/standalone/revogr-header2.js +6 -5
- package/standalone/revogr-header2.js.map +1 -1
- package/standalone/revogr-order-editor2.js +3 -0
- package/standalone/revogr-order-editor2.js.map +1 -1
- package/standalone/revogr-overlay-selection2.js +29 -17
- package/standalone/revogr-overlay-selection2.js.map +1 -1
- package/standalone/revogr-row-headers2.js +12 -9
- package/standalone/revogr-row-headers2.js.map +1 -1
- package/standalone/revogr-scroll-virtual2.js +6 -4
- package/standalone/revogr-scroll-virtual2.js.map +1 -1
- package/standalone/revogr-temp-range2.js +1 -1
- package/standalone/revogr-temp-range2.js.map +1 -1
- package/standalone/revogr-viewport-scroll2.js +27 -21
- package/standalone/revogr-viewport-scroll2.js.map +1 -1
- package/standalone/selection.utils.js +1 -0
- package/standalone/selection.utils.js.map +1 -1
- package/standalone/vnode-converter.js +1 -1
- package/standalone/vnode-converter.js.map +1 -1
- package/dist/cjs/column.drag.plugin-fcd892ec.js.map +0 -1
- package/dist/cjs/column.service-26c61ed6.js.map +0 -1
- package/dist/cjs/index-3ab26ab9.js +0 -513
- package/dist/cjs/index-3ab26ab9.js.map +0 -1
- package/dist/cjs/key.utils-f49d7bee.js +0 -101
- package/dist/cjs/key.utils-f49d7bee.js.map +0 -1
- package/dist/cjs/row-header-utils-c37f76e4.js.map +0 -1
- package/dist/cjs/text-editor-b756d6b3.js.map +0 -1
- package/dist/esm/column.drag.plugin-3cc77986.js.map +0 -1
- package/dist/esm/column.service-751345b2.js.map +0 -1
- package/dist/esm/index-1dcad6ef.js +0 -476
- package/dist/esm/index-1dcad6ef.js.map +0 -1
- package/dist/esm/row-header-utils-3dfbb81f.js.map +0 -1
- package/dist/esm/text-editor-901c3eb8.js.map +0 -1
- package/dist/revo-grid/column.drag.plugin-3cc77986.js +0 -5
- package/dist/revo-grid/column.drag.plugin-3cc77986.js.map +0 -1
- package/dist/revo-grid/column.service-751345b2.js +0 -5
- package/dist/revo-grid/column.service-751345b2.js.map +0 -1
- package/dist/revo-grid/debounce-72878ced.js +0 -5
- package/dist/revo-grid/debounce-72878ced.js.map +0 -1
- package/dist/revo-grid/edit.utils-6fc686b9.js +0 -5
- package/dist/revo-grid/edit.utils-6fc686b9.js.map +0 -1
- package/dist/revo-grid/header-cell-renderer-32d2ed96.js +0 -5
- package/dist/revo-grid/header-cell-renderer-32d2ed96.js.map +0 -1
- package/dist/revo-grid/index-1dcad6ef.js +0 -5
- package/dist/revo-grid/index-1dcad6ef.js.map +0 -1
- package/dist/revo-grid/key.utils-17273f42.js +0 -5
- package/dist/revo-grid/key.utils-17273f42.js.map +0 -1
- package/dist/revo-grid/row-header-utils-3dfbb81f.js +0 -5
- package/dist/revo-grid/row-header-utils-3dfbb81f.js.map +0 -1
- package/dist/revo-grid/text-editor-901c3eb8.js +0 -5
- package/dist/revo-grid/text-editor-901c3eb8.js.map +0 -1
- package/dist/revo-grid/throttle-138d69c3.js +0 -5
- package/dist/revo-grid/throttle-138d69c3.js.map +0 -1
- package/standalone/identity.js +0 -26
- package/standalone/identity.js.map +0 -1
package/dist/types/index.d.ts
CHANGED
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
import type { PluginProviders } from '../types/plugin.types';
|
|
2
|
+
import { BasePlugin } from './base.plugin';
|
|
3
|
+
/**
|
|
4
|
+
* Automatically adds new rows when pasted data is larger than current rows
|
|
5
|
+
* @event newRows - is triggered when new rows are added. Data of new rows can be filled with default values. If the event is prevented, no rows will be added. Event data: { newRows: RowData[] }
|
|
6
|
+
*/
|
|
7
|
+
export declare class AutoAddRowsPlugin extends BasePlugin {
|
|
8
|
+
constructor(revogrid: HTMLRevoGridElement, providers: PluginProviders);
|
|
9
|
+
handleBeforePasteApply(event: CustomEvent<{
|
|
10
|
+
raw: string;
|
|
11
|
+
parsed: string[][];
|
|
12
|
+
event: ClipboardEvent;
|
|
13
|
+
}>): void;
|
|
14
|
+
}
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { h } from '../stencil-public-runtime';
|
|
2
|
-
import { PluginProviders, PluginBaseComponent } from '..';
|
|
3
|
-
type WatchConfig = {
|
|
2
|
+
import type { PluginProviders, PluginBaseComponent, RevoGridCustomEvent } from '..';
|
|
3
|
+
export type WatchConfig = {
|
|
4
4
|
immediate: boolean;
|
|
5
5
|
};
|
|
6
6
|
/**
|
|
@@ -19,7 +19,7 @@ export declare class BasePlugin implements PluginBaseComponent {
|
|
|
19
19
|
* @param eventName - event name to subscribe to in revo-grid component (e.g. 'beforeheaderclick')
|
|
20
20
|
* @param callback - callback function for event
|
|
21
21
|
*/
|
|
22
|
-
addEventListener<
|
|
22
|
+
addEventListener<K extends keyof HTMLRevoGridElementEventMap>(eventName: K, callback: (this: BasePlugin, e: RevoGridCustomEvent<HTMLRevoGridElementEventMap[K]>) => void): void;
|
|
23
23
|
/**
|
|
24
24
|
* Subscribe to property change in revo-grid component
|
|
25
25
|
* You can return false in callback to prevent default value set
|
|
@@ -49,4 +49,3 @@ export declare class BasePlugin implements PluginBaseComponent {
|
|
|
49
49
|
destroy(): void;
|
|
50
50
|
}
|
|
51
51
|
export type GridPlugin = (typeof BasePlugin);
|
|
52
|
-
export {};
|
|
@@ -30,7 +30,7 @@ declare enum ColumnAutoSizeMode {
|
|
|
30
30
|
autoSizeOnTextOverlap = "autoSizeOnTextOverlap",
|
|
31
31
|
autoSizeAll = "autoSizeAll"
|
|
32
32
|
}
|
|
33
|
-
export
|
|
33
|
+
export declare class AutoSizeColumnPlugin extends BasePlugin {
|
|
34
34
|
providers: PluginProviders;
|
|
35
35
|
config?: AutoSizeColumnConfig | undefined;
|
|
36
36
|
autoSizeColumns: Partial<AutoSizeColumns> | null;
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { BasePlugin } from './base.plugin';
|
|
2
2
|
import { DimensionCols, PluginBaseComponent, PluginProviders, ColumnRegular } from "../types/index";
|
|
3
|
-
export
|
|
3
|
+
export declare class StretchColumn extends BasePlugin {
|
|
4
4
|
providers: PluginProviders;
|
|
5
5
|
private stretchedColumn;
|
|
6
6
|
private readonly scrollSize;
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { CSVFormat, DataInput, Formatter } from './types';
|
|
2
2
|
export type CSVFormatter = (options: Partial<CSVFormat>, data: DataInput) => string;
|
|
3
|
-
export
|
|
3
|
+
export declare class ExportCsv implements Formatter {
|
|
4
4
|
readonly options: Readonly<CSVFormat>;
|
|
5
5
|
constructor(options?: Partial<CSVFormat>);
|
|
6
6
|
doExport({ data, headers, props }: DataInput): string;
|
|
@@ -1,10 +1,12 @@
|
|
|
1
1
|
import { BasePlugin } from '../base.plugin';
|
|
2
|
-
import { CSVFormat, Formatter } from './types';
|
|
2
|
+
import type { CSVFormat, Formatter } from './types';
|
|
3
|
+
export * from './csv';
|
|
4
|
+
export * from './types';
|
|
3
5
|
declare enum ExportTypes {
|
|
4
6
|
csv = "csv"
|
|
5
7
|
}
|
|
6
8
|
export type ExportFormat = Partial<CSVFormat>;
|
|
7
|
-
export
|
|
9
|
+
export declare class ExportFilePlugin extends BasePlugin {
|
|
8
10
|
/** Exports string */
|
|
9
11
|
exportString(options?: ExportFormat, t?: ExportTypes): Promise<string | null>;
|
|
10
12
|
/** Exports Blob */
|
|
@@ -21,4 +23,3 @@ export default class ExportFilePlugin extends BasePlugin {
|
|
|
21
23
|
private getSource;
|
|
22
24
|
private formatter;
|
|
23
25
|
}
|
|
24
|
-
export {};
|
|
@@ -1,7 +1,7 @@
|
|
|
1
|
-
import { EventEmitter, VNode } from '../../stencil-public-runtime';
|
|
1
|
+
import { EventEmitter, type VNode } from '../../stencil-public-runtime';
|
|
2
2
|
import '../../utils/closest.polifill';
|
|
3
3
|
import { FilterCaptions, LogicFunction, MultiFilterItem, ShowData } from './filter.types';
|
|
4
|
-
import { ColumnProp } from "../../types/index";
|
|
4
|
+
import type { ColumnProp } from "../../types/index";
|
|
5
5
|
import { FilterType } from './filter.indexed';
|
|
6
6
|
/**
|
|
7
7
|
* Filter panel for editing filters
|
|
@@ -1,6 +1,7 @@
|
|
|
1
|
+
import { type VNode } from '../../stencil-public-runtime';
|
|
1
2
|
import type { ColumnProp, ColumnRegular, DataType, PluginProviders } from "../../types/index";
|
|
2
3
|
import { BasePlugin } from '../base.plugin';
|
|
3
|
-
import type { ColumnFilterConfig,
|
|
4
|
+
import type { ColumnFilterConfig, FilterCollectionItem, LogicFunction, MultiFilterItem, ShowData } from './filter.types';
|
|
4
5
|
export * from './filter.types';
|
|
5
6
|
export * from './filter.indexed';
|
|
6
7
|
export * from './filter.button';
|
|
@@ -10,27 +11,43 @@ export declare const FILTE_PANEL = "revogr-filter-panel";
|
|
|
10
11
|
/**
|
|
11
12
|
* @typedef ColumnFilterConfig
|
|
12
13
|
* @type {object}
|
|
13
|
-
*
|
|
14
|
+
*
|
|
15
|
+
* @property {MultiFilterItem|undefined} multiFilterItems - data for multi filtering with relation
|
|
16
|
+
*
|
|
17
|
+
* @property {Record<ColumnProp, FilterCollectionItem>|undefined} collection - preserved filter data, relation for filters will be applied as 'and'
|
|
18
|
+
*
|
|
14
19
|
* @property {string[]|undefined} include - filters to be included, if defined everything else out of scope will be ignored
|
|
20
|
+
*
|
|
15
21
|
* @property {Record<string, CustomFilter>|undefined} customFilters - hash map of {FilterType:CustomFilter}.
|
|
22
|
+
*
|
|
16
23
|
* @property {FilterLocalization|undefined} localization - translation for filter popup captions.
|
|
17
|
-
*
|
|
24
|
+
*
|
|
18
25
|
* @property {boolean|undefined} disableDynamicFiltering - disables dynamic filtering. A way to apply filters on Save only.
|
|
19
|
-
* A way to define your own filter types per column
|
|
20
26
|
*/
|
|
21
27
|
/**
|
|
22
28
|
* @internal
|
|
23
29
|
*/
|
|
24
30
|
export declare class FilterPlugin extends BasePlugin {
|
|
25
31
|
revogrid: HTMLRevoGridElement;
|
|
32
|
+
config?: ColumnFilterConfig | undefined;
|
|
26
33
|
pop?: HTMLRevogrFilterPanelElement;
|
|
27
|
-
filterCollection:
|
|
34
|
+
filterCollection: Record<ColumnProp, FilterCollectionItem>;
|
|
28
35
|
multiFilterItems: MultiFilterItem;
|
|
36
|
+
/**
|
|
37
|
+
* Filter types
|
|
38
|
+
* @example
|
|
39
|
+
* {
|
|
40
|
+
* string: ['contains', 'beginswith'],
|
|
41
|
+
* number: ['eqN', 'neqN', 'gt']
|
|
42
|
+
* }
|
|
43
|
+
*/
|
|
29
44
|
filterByType: Record<string, string[]>;
|
|
30
45
|
filterNameIndexByType: Record<string, string>;
|
|
31
46
|
filterFunctionsIndexedByType: Record<string, LogicFunction>;
|
|
32
47
|
filterProp: string;
|
|
33
|
-
|
|
48
|
+
extraHyperContent?: (data: ShowData) => VNode | VNode[];
|
|
49
|
+
constructor(revogrid: HTMLRevoGridElement, providers: PluginProviders, config?: ColumnFilterConfig | undefined);
|
|
50
|
+
beforeshow(_: ShowData): void;
|
|
34
51
|
extraContent(): any;
|
|
35
52
|
initConfig(config: ColumnFilterConfig): void;
|
|
36
53
|
headerclick(e: CustomEvent<ColumnRegular>): Promise<void>;
|
|
@@ -44,11 +61,12 @@ export declare class FilterPlugin extends BasePlugin {
|
|
|
44
61
|
/**
|
|
45
62
|
* Triggers grid filtering
|
|
46
63
|
*/
|
|
47
|
-
doFiltering(collection:
|
|
64
|
+
doFiltering(collection: Record<ColumnProp, FilterCollectionItem>, source: DataType[], columns: ColumnRegular[], filterItems: MultiFilterItem): Promise<void>;
|
|
48
65
|
clearFiltering(): Promise<void>;
|
|
49
66
|
runFiltering(multiFilterItems: MultiFilterItem): Promise<void>;
|
|
50
67
|
/**
|
|
51
68
|
* Get trimmed rows based on filter
|
|
52
69
|
*/
|
|
53
70
|
getRowFilter(rows: DataType[], filterItems: MultiFilterItem, columnByProp: Record<string, ColumnRegular>): Record<number, boolean>;
|
|
71
|
+
private shouldTrimRow;
|
|
54
72
|
}
|
|
@@ -1,5 +1,5 @@
|
|
|
1
|
-
import { ColumnProp } from "../../types/index";
|
|
2
|
-
import { FilterType } from './filter.indexed';
|
|
1
|
+
import type { ColumnProp, ColumnRegular } from "../../types/index";
|
|
2
|
+
import type { FilterType } from './filter.indexed';
|
|
3
3
|
export type DateEnum = 'today' | 'yesterday' | 'tomorrow' | 'thisweek' | 'lastweek' | 'nextweek' | 'thismonth' | 'lastmonth' | 'nextmonth' | 'thisyear' | 'lastyear' | 'nextyear';
|
|
4
4
|
export type ExtraField = 'input' | 'select' | 'multi' | 'datepicker';
|
|
5
5
|
export type LogicFunctionParam = any;
|
|
@@ -8,9 +8,18 @@ export type LogicFunction<T1 = LogicFunctionParam, T2 = LogicFunctionExtraParam>
|
|
|
8
8
|
(value: T1, extra?: T2): boolean;
|
|
9
9
|
extra?: ExtraField;
|
|
10
10
|
};
|
|
11
|
-
type CustomFilter<T1 = LogicFunctionParam, T2 = LogicFunctionExtraParam> = {
|
|
11
|
+
export type CustomFilter<T1 = LogicFunctionParam, T2 = LogicFunctionExtraParam> = {
|
|
12
|
+
/**
|
|
13
|
+
* Property defined in column { filter: string/number/abstract/enum...etc }
|
|
14
|
+
*/
|
|
12
15
|
columnFilterType: string;
|
|
16
|
+
/**
|
|
17
|
+
* Filter name
|
|
18
|
+
*/
|
|
13
19
|
name: string;
|
|
20
|
+
/**
|
|
21
|
+
* Function to apply the filter
|
|
22
|
+
*/
|
|
14
23
|
func: LogicFunction<T1, T2>;
|
|
15
24
|
};
|
|
16
25
|
export type FilterCaptions = {
|
|
@@ -35,7 +44,7 @@ export type ColumnFilterConfig = {
|
|
|
35
44
|
/**
|
|
36
45
|
* The collection of filters to be applied to the column.
|
|
37
46
|
*/
|
|
38
|
-
collection?:
|
|
47
|
+
collection?: Record<ColumnProp, FilterCollectionItem>;
|
|
39
48
|
/**
|
|
40
49
|
* The names of the filters to be included in the filter dropdown.
|
|
41
50
|
*/
|
|
@@ -62,12 +71,10 @@ export type ColumnFilterConfig = {
|
|
|
62
71
|
*/
|
|
63
72
|
disableDynamicFiltering?: boolean;
|
|
64
73
|
};
|
|
65
|
-
type FilterCollectionItem = {
|
|
66
|
-
filter: LogicFunction;
|
|
74
|
+
export type FilterCollectionItem = {
|
|
67
75
|
type: FilterType;
|
|
68
76
|
value?: any;
|
|
69
77
|
};
|
|
70
|
-
export type FilterCollection = Record<ColumnProp, FilterCollectionItem>;
|
|
71
78
|
export type FilterItem = {
|
|
72
79
|
prop?: ColumnProp;
|
|
73
80
|
type?: FilterType;
|
|
@@ -75,9 +82,22 @@ export type FilterItem = {
|
|
|
75
82
|
};
|
|
76
83
|
export type FilterData = {
|
|
77
84
|
id: number;
|
|
85
|
+
/**
|
|
86
|
+
* Filter type
|
|
87
|
+
*/
|
|
78
88
|
type: FilterType;
|
|
89
|
+
/**
|
|
90
|
+
* Filter value
|
|
91
|
+
*/
|
|
79
92
|
value?: any;
|
|
80
|
-
|
|
93
|
+
/**
|
|
94
|
+
* Filter invisible in filter panel
|
|
95
|
+
*/
|
|
96
|
+
hidden?: boolean;
|
|
97
|
+
/**
|
|
98
|
+
* Filter relation
|
|
99
|
+
*/
|
|
100
|
+
relation?: 'and' | 'or';
|
|
81
101
|
};
|
|
82
102
|
export type MultiFilterItem = {
|
|
83
103
|
[prop: string]: FilterData[];
|
|
@@ -90,5 +110,7 @@ export type ShowData = {
|
|
|
90
110
|
*/
|
|
91
111
|
autoCorrect?: boolean;
|
|
92
112
|
filterTypes?: Record<string, string[]>;
|
|
93
|
-
|
|
94
|
-
|
|
113
|
+
filterItems?: MultiFilterItem;
|
|
114
|
+
hideDefaultFilters?: boolean;
|
|
115
|
+
extraContent?: (data: ShowData) => any;
|
|
116
|
+
} & FilterItem & Omit<ColumnRegular, 'filter'>;
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import {
|
|
1
|
+
import { h } from '../../stencil-public-runtime';
|
|
2
2
|
import { Group } from "../../store/index";
|
|
3
3
|
import { DimensionSettingsState, Providers, DimensionCols } from "../../types/index";
|
|
4
4
|
import { ResizeProps } from '../../components/header/resizable.directive';
|
|
@@ -14,5 +14,5 @@ type Props<T> = {
|
|
|
14
14
|
additionalData: any;
|
|
15
15
|
onResize(changedX: number, startIndex: number, endIndex: number): void;
|
|
16
16
|
} & Partial<Pick<ResizeProps, 'active'>>;
|
|
17
|
-
declare const ColumnGroupsRenderer: ({ additionalData, providers, depth, groups, visibleProps, dimensionCol, canResize, active, onResize }: Props<DimensionCols | "rowHeaders">) =>
|
|
17
|
+
declare const ColumnGroupsRenderer: ({ additionalData, providers, depth, groups, visibleProps, dimensionCol, canResize, active, onResize }: Props<DimensionCols | "rowHeaders">) => ReturnType<typeof h>[];
|
|
18
18
|
export default ColumnGroupsRenderer;
|
|
@@ -1,8 +1,7 @@
|
|
|
1
|
-
import {
|
|
1
|
+
import { h } from '../../stencil-public-runtime';
|
|
2
2
|
import { Group } from "../../store/index";
|
|
3
|
-
import { Providers } from "../../types/index";
|
|
3
|
+
import type { Providers, DimensionCols } from "../../types/index";
|
|
4
4
|
import { ResizeEvent, ResizeProps } from '../../components/header/resizable.directive';
|
|
5
|
-
import { DimensionCols } from '../../components';
|
|
6
5
|
type Props = {
|
|
7
6
|
start: number;
|
|
8
7
|
end: number;
|
|
@@ -12,5 +11,5 @@ type Props = {
|
|
|
12
11
|
canResize?: boolean;
|
|
13
12
|
onResize?(e: ResizeEvent): void;
|
|
14
13
|
} & Partial<Pick<ResizeProps, 'active'>>;
|
|
15
|
-
declare const GroupHeaderRenderer: (p: Props) =>
|
|
14
|
+
declare const GroupHeaderRenderer: (p: Props) => ReturnType<typeof h>;
|
|
16
15
|
export default GroupHeaderRenderer;
|
|
@@ -1,10 +1,12 @@
|
|
|
1
|
+
import { DimensionRows } from "../../types/index";
|
|
1
2
|
export declare const GROUP_DEPTH = "__rvgr-depth";
|
|
2
3
|
export declare const PSEUDO_GROUP_ITEM = "__rvgr-name";
|
|
3
4
|
export declare const PSEUDO_GROUP_ITEM_ID = "__rvgr-id";
|
|
4
5
|
export declare const PSEUDO_GROUP_ITEM_VALUE = "__rvgr-value";
|
|
5
6
|
export declare const PSEUDO_GROUP_COLUMN = "__rvgr-column";
|
|
6
7
|
export declare const GROUP_EXPANDED = "__rvgr-expanded";
|
|
8
|
+
export declare const GROUP_COLUMN_PROP = "__rvgr-prop";
|
|
7
9
|
export declare const GROUP_ORIGINAL_INDEX = "__rvgr-original-index";
|
|
8
10
|
export declare const GROUP_EXPAND_BTN = "group-expand";
|
|
9
11
|
export declare const GROUP_EXPAND_EVENT = "groupexpandclick";
|
|
10
|
-
export declare const GROUPING_ROW_TYPE
|
|
12
|
+
export declare const GROUPING_ROW_TYPE: DimensionRows;
|
|
@@ -1,24 +1,26 @@
|
|
|
1
|
-
import { DSourceState } from "../../store/index";
|
|
1
|
+
import { type DSourceState } from "../../store/index";
|
|
2
2
|
import { BasePlugin } from '../base.plugin';
|
|
3
|
-
import { GroupingOptions } from './grouping.row.types';
|
|
4
|
-
import { DataType, DimensionRows, PluginProviders } from "../../types/index";
|
|
5
|
-
import { Observable } from '../../utils
|
|
6
|
-
|
|
3
|
+
import type { GroupingOptions, OnExpandEvent } from './grouping.row.types';
|
|
4
|
+
import type { DataType, DimensionRows, PluginProviders } from "../../types/index";
|
|
5
|
+
import type { Observable } from '../../utils';
|
|
6
|
+
declare global {
|
|
7
|
+
interface HTMLRevoGridElementEventMap {
|
|
8
|
+
groupexpandclick: OnExpandEvent;
|
|
9
|
+
}
|
|
10
|
+
}
|
|
11
|
+
export declare class GroupingRowPlugin extends BasePlugin {
|
|
7
12
|
revogrid: HTMLRevoGridElement;
|
|
8
13
|
providers: PluginProviders;
|
|
9
14
|
private options;
|
|
10
|
-
|
|
11
|
-
get store(): Observable<DSourceState<DataType, DimensionRows>>;
|
|
12
|
-
get rowItems(): number[];
|
|
13
|
-
get trimmed(): Record<any, any>;
|
|
15
|
+
getStore(type?: DimensionRows): Observable<DSourceState<DataType, DimensionRows>>;
|
|
14
16
|
constructor(revogrid: HTMLRevoGridElement, providers: PluginProviders);
|
|
15
17
|
private onFocus;
|
|
16
18
|
private onExpand;
|
|
17
|
-
private getSource;
|
|
18
19
|
private setColumnGrouping;
|
|
19
20
|
private setColumns;
|
|
20
21
|
private onDrag;
|
|
21
22
|
private beforeTrimmedApply;
|
|
23
|
+
private isSortingRunning;
|
|
22
24
|
private subscribe;
|
|
23
25
|
/**
|
|
24
26
|
* Starts global source update with group clearing and applying new one
|
|
@@ -31,6 +33,9 @@ export default class GroupingRowPlugin extends BasePlugin {
|
|
|
31
33
|
* If source came from other plugin
|
|
32
34
|
*/
|
|
33
35
|
private onDataSet;
|
|
36
|
+
/**
|
|
37
|
+
* Externam call to apply grouping. Called by revogrid when prop changed.
|
|
38
|
+
*/
|
|
34
39
|
setGrouping(options: GroupingOptions): void;
|
|
35
40
|
clearGrouping(): void;
|
|
36
41
|
private updateTrimmed;
|
|
@@ -1,17 +1,36 @@
|
|
|
1
|
-
import { VNode } from '../../stencil-public-runtime';
|
|
2
|
-
import { HyperFunc, ColumnProp, DimensionRows, DataType } from "../../types/index";
|
|
1
|
+
import type { VNode } from '../../stencil-public-runtime';
|
|
2
|
+
import type { HyperFunc, ColumnProp, DimensionRows, DataType } from "../../types/index";
|
|
3
3
|
export type GroupLabelTemplateFunc = (createElement: HyperFunc<VNode>, props: {
|
|
4
4
|
name: string;
|
|
5
5
|
itemIndex: number;
|
|
6
6
|
expanded: boolean;
|
|
7
7
|
depth: number;
|
|
8
|
+
model?: DataType;
|
|
8
9
|
}) => any;
|
|
9
10
|
export type GroupingOptions = {
|
|
11
|
+
/**
|
|
12
|
+
* Column props to which grouping will be applied
|
|
13
|
+
*/
|
|
10
14
|
props?: ColumnProp[];
|
|
11
|
-
/**
|
|
15
|
+
/**
|
|
16
|
+
* Currently expanded items.
|
|
17
|
+
* Corresponds to prop values as: source = [{ me: 'a' }, { me: 'b' }, { me: 'c' }], to set expanded: { a: true }
|
|
18
|
+
*/
|
|
19
|
+
prevExpanded?: Record<string, boolean>;
|
|
20
|
+
/**
|
|
21
|
+
* Is expanded by default
|
|
22
|
+
*/
|
|
12
23
|
expandedAll?: boolean;
|
|
24
|
+
/**
|
|
25
|
+
* Should grouping be preserved on source update.
|
|
26
|
+
* default: true
|
|
27
|
+
*/
|
|
28
|
+
preserveGroupingOnUpdate?: boolean;
|
|
29
|
+
/**
|
|
30
|
+
* Custom group label template
|
|
31
|
+
*/
|
|
13
32
|
groupLabelTemplate?: GroupLabelTemplateFunc;
|
|
14
|
-
};
|
|
33
|
+
} & ExpandedOptions;
|
|
15
34
|
export type BeforeSourceSetEvent = {
|
|
16
35
|
type: DimensionRows;
|
|
17
36
|
source: DataType[];
|
|
@@ -25,3 +44,18 @@ export type SourceGather = {
|
|
|
25
44
|
prevExpanded: Record<string, boolean>;
|
|
26
45
|
oldNewIndexes?: Record<number, number>;
|
|
27
46
|
};
|
|
47
|
+
export type ExpandedOptions = {
|
|
48
|
+
prevExpanded?: Record<string, boolean>;
|
|
49
|
+
/**
|
|
50
|
+
* Is expanded by default
|
|
51
|
+
*/
|
|
52
|
+
expandedAll?: boolean;
|
|
53
|
+
/**
|
|
54
|
+
* Custom group label value parser
|
|
55
|
+
*/
|
|
56
|
+
getGroupValue?(item: DataType, prop: string | number): any;
|
|
57
|
+
/**
|
|
58
|
+
* Custom group label template
|
|
59
|
+
*/
|
|
60
|
+
groupLabelTemplate?: GroupLabelTemplateFunc;
|
|
61
|
+
};
|
|
@@ -1,19 +1,15 @@
|
|
|
1
|
-
import { DataType, ColumnProp, ColumnRegular } from "../../types/index";
|
|
2
|
-
import { GROUP_DEPTH, GROUP_EXPANDED, PSEUDO_GROUP_ITEM, PSEUDO_GROUP_ITEM_VALUE } from './grouping.const';
|
|
3
|
-
import {
|
|
4
|
-
export
|
|
5
|
-
|
|
6
|
-
expandedAll?: boolean;
|
|
7
|
-
getGroupValue?(item: DataType, prop: string | number): any;
|
|
8
|
-
groupLabelTemplate?: GroupLabelTemplateFunc;
|
|
9
|
-
};
|
|
1
|
+
import type { DataType, ColumnProp, ColumnRegular } from "../../types/index";
|
|
2
|
+
import { GROUP_DEPTH, GROUP_EXPANDED, PSEUDO_GROUP_ITEM, PSEUDO_GROUP_ITEM_VALUE, GROUP_COLUMN_PROP } from './grouping.const';
|
|
3
|
+
import type { ExpandedOptions, SourceGather } from './grouping.row.types';
|
|
4
|
+
export declare function getSource(source: DataType[], items: number[], withoutGrouping?: boolean): Required<SourceGather>;
|
|
5
|
+
export declare function getExpanded(model?: DataType): any;
|
|
10
6
|
/**
|
|
11
7
|
* Gather data for grouping
|
|
12
8
|
* @param array - flat data array
|
|
13
|
-
* @param
|
|
9
|
+
* @param columnProps - ids of groups
|
|
14
10
|
* @param expanded - potentially expanded items if present
|
|
15
11
|
*/
|
|
16
|
-
export declare function gatherGrouping(array: DataType[],
|
|
12
|
+
export declare function gatherGrouping(array: DataType[], columnProps: ColumnProp[], { prevExpanded, expandedAll, getGroupValue, }: ExpandedOptions): {
|
|
17
13
|
sourceWithGroups: DataType[];
|
|
18
14
|
depth: number;
|
|
19
15
|
trimmed: Record<number, boolean>;
|
|
@@ -26,9 +22,10 @@ type GroupingItem = {
|
|
|
26
22
|
[GROUP_EXPANDED]: boolean;
|
|
27
23
|
[PSEUDO_GROUP_ITEM_VALUE]: string;
|
|
28
24
|
[GROUP_DEPTH]: number;
|
|
25
|
+
[GROUP_COLUMN_PROP]: ColumnProp;
|
|
29
26
|
};
|
|
30
27
|
export declare function isGrouping(rgRow?: DataType): rgRow is GroupingItem;
|
|
31
|
-
export declare function isGroupingColumn(column?: ColumnRegular): boolean
|
|
28
|
+
export declare function isGroupingColumn(column?: ColumnRegular): boolean;
|
|
32
29
|
export declare function measureEqualDepth<T>(groupA: T[], groupB: T[]): number;
|
|
33
30
|
export declare function getParsedGroup(id: string): any[] | null;
|
|
34
31
|
export declare function isSameGroup(currentGroup: any[], currentModel: DataType, nextModel: DataType): boolean;
|
|
@@ -7,6 +7,8 @@ export * from './filter/filter.plugin';
|
|
|
7
7
|
export * from './groupingColumn/columnGroupsRenderer';
|
|
8
8
|
export * from './groupingColumn/headerGroupRenderer';
|
|
9
9
|
export * from './groupingRow/grouping.row.plugin';
|
|
10
|
+
export * from './groupingRow/grouping.service';
|
|
10
11
|
export * from './moveColumn/column.drag.plugin';
|
|
11
12
|
export * from './sorting/sorting.plugin';
|
|
12
13
|
export * from './sorting/sorting.sign';
|
|
14
|
+
export * from './add-rows-on-paste.plugin';
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { BasePlugin } from '../base.plugin';
|
|
2
|
-
import { ColumnPropProp, DimensionCols, PluginProviders } from "../../types/index";
|
|
2
|
+
import type { ColumnPropProp, DimensionCols, PluginProviders } from "../../types/index";
|
|
3
3
|
export type DragStartEventDetails = {
|
|
4
4
|
event: MouseEvent;
|
|
5
5
|
data: ColumnPropProp;
|
|
@@ -15,7 +15,7 @@ export type ColumnDragEventData = {
|
|
|
15
15
|
scrollOffset: number;
|
|
16
16
|
type: DimensionCols;
|
|
17
17
|
};
|
|
18
|
-
export
|
|
18
|
+
export declare class ColumnMovePlugin extends BasePlugin {
|
|
19
19
|
revogrid: HTMLRevoGridElement;
|
|
20
20
|
providers: PluginProviders;
|
|
21
21
|
private moveFunc;
|
|
@@ -1,26 +1,27 @@
|
|
|
1
1
|
import { BasePlugin } from '../base.plugin';
|
|
2
|
-
import { ColumnProp, Order, CellCompareFunc, ColumnRegular, DataType, DimensionRows, PluginProviders } from "../../types/index";
|
|
3
|
-
|
|
4
|
-
|
|
2
|
+
import type { ColumnProp, Order, CellCompareFunc, ColumnRegular, DataType, DimensionRows, PluginProviders } from "../../types/index";
|
|
3
|
+
import type { SortingConfig, SortingOrder, SortingOrderFunction } from './sorting.types';
|
|
4
|
+
export * from './sorting.types';
|
|
5
5
|
/**
|
|
6
6
|
* Lifecycle
|
|
7
7
|
* 1. @event `beforesorting` - Triggered when sorting just starts. Nothing has happened yet. This can be triggered from a column or from the source. If the type is from rows, the column will be undefined.
|
|
8
|
+
* 1.1. @event `beforesourcesortingapply` - Triggered before the sorting data is applied to the data source. You can prevent this event, and the data will not be sorted.
|
|
8
9
|
* 2. @method `updateColumnSorting` - Updates the column sorting icon on the grid and the column itself, but the data remains untouched.
|
|
9
10
|
* 3. @event `beforesortingapply` - Triggered before the sorting data is applied to the data source. You can prevent this event, and the data will not be sorted. This event is only called from a column sorting click.
|
|
10
11
|
* 4. @event `aftersortingapply` - Triggered after sorting has been applied and completed. This event occurs for both row and column sorting.
|
|
11
12
|
*
|
|
12
13
|
* Note: If you prevent an event, it will not proceed to the subsequent steps.
|
|
13
14
|
*/
|
|
14
|
-
export
|
|
15
|
+
export declare class SortingPlugin extends BasePlugin {
|
|
15
16
|
revogrid: HTMLRevoGridElement;
|
|
16
17
|
sorting?: SortingOrder;
|
|
17
18
|
sortingFunc?: SortingOrderFunction;
|
|
18
19
|
sortingPromise: (() => void) | null;
|
|
19
|
-
postponeSort: import("lodash").DebouncedFunc<(order?: SortingOrder, comparison?: SortingOrderFunction) => void>;
|
|
20
|
-
runSorting(order?: SortingOrder, comparison?: SortingOrderFunction): void;
|
|
21
|
-
constructor(revogrid: HTMLRevoGridElement, providers: PluginProviders);
|
|
22
|
-
startSorting(order?: SortingOrder, sortingFunc?: SortingOrderFunction): void;
|
|
23
|
-
getComparer(column: ColumnRegular | undefined, order: Order): CellCompareFunc | undefined;
|
|
20
|
+
postponeSort: import("lodash").DebouncedFunc<(order?: SortingOrder, comparison?: SortingOrderFunction, ignoreViewportUpdate?: boolean) => void>;
|
|
21
|
+
runSorting(order?: SortingOrder, comparison?: SortingOrderFunction, ignoreViewportUpdate?: boolean): void;
|
|
22
|
+
constructor(revogrid: HTMLRevoGridElement, providers: PluginProviders, config?: SortingConfig);
|
|
23
|
+
startSorting(order?: SortingOrder, sortingFunc?: SortingOrderFunction, ignoreViewportUpdate?: boolean): void;
|
|
24
|
+
getComparer(column: Partial<ColumnRegular> | undefined, order: Order): CellCompareFunc | undefined;
|
|
24
25
|
/**
|
|
25
26
|
* Apply sorting to data on header click
|
|
26
27
|
* If additive - add to existing sorting, multiple columns can be sorted
|
|
@@ -34,10 +35,10 @@ export default class SortingPlugin extends BasePlugin {
|
|
|
34
35
|
* @param sorting - per column sorting
|
|
35
36
|
* @param data - this.stores['rgRow'].store.get('source')
|
|
36
37
|
*/
|
|
37
|
-
sort(sorting?: SortingOrder, sortingFunc?: SortingOrderFunction, types?: DimensionRows[]): void;
|
|
38
|
-
defaultCellCompare(
|
|
38
|
+
sort(sorting?: SortingOrder, sortingFunc?: SortingOrderFunction, types?: DimensionRows[], ignoreViewportUpdate?: boolean): void;
|
|
39
|
+
defaultCellCompare(this: {
|
|
40
|
+
column?: ColumnRegular;
|
|
41
|
+
}, prop: ColumnProp, a: DataType, b: DataType): 0 | 1 | -1;
|
|
39
42
|
descCellCompare(cmp: CellCompareFunc): (prop: ColumnProp, a: DataType, b: DataType) => number;
|
|
40
|
-
sortIndexByItems(indexes: number[], source: DataType[], sortingFunc?: SortingOrderFunction): number[];
|
|
41
43
|
getNextOrder(currentOrder: Order): Order;
|
|
42
44
|
}
|
|
43
|
-
export {};
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
import type { CellCompareFunc, ColumnProp, Order } from "../../types/index";
|
|
2
|
+
export type SortingOrder = Record<ColumnProp, Order>;
|
|
3
|
+
export type SortingOrderFunction = Record<ColumnProp, CellCompareFunc | undefined>;
|
|
4
|
+
export type ColumnSetEvent = {
|
|
5
|
+
order: SortingOrder;
|
|
6
|
+
};
|
|
7
|
+
export type SortingConfig = {
|
|
8
|
+
columns?: {
|
|
9
|
+
prop: ColumnProp;
|
|
10
|
+
order: Order;
|
|
11
|
+
cellCompare?: CellCompareFunc;
|
|
12
|
+
}[];
|
|
13
|
+
};
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { DataStore } from "../store/index";
|
|
2
|
-
import type { ColumnProp, ColumnRegular, DimensionCols
|
|
2
|
+
import type { ColumnProp, ColumnRegular, DimensionCols } from "../types/index";
|
|
3
3
|
import { ColumnCollection } from '../utils/column.utils';
|
|
4
4
|
export type ColumnDataSources = Record<DimensionCols, DataStore<ColumnRegular, DimensionCols>>;
|
|
5
5
|
type Sorting = Record<ColumnProp, ColumnRegular>;
|
|
@@ -11,13 +11,16 @@ export default class ColumnDataProvider {
|
|
|
11
11
|
get order(): SortingOrder;
|
|
12
12
|
get stores(): ColumnDataSources;
|
|
13
13
|
constructor();
|
|
14
|
-
column(c: number,
|
|
14
|
+
column(c: number, type?: DimensionCols): ColumnRegular | undefined;
|
|
15
15
|
getColumn(virtualIndex: number, type: DimensionCols): ColumnRegular | undefined;
|
|
16
16
|
getRawColumns(): Record<DimensionCols, ColumnRegular[]>;
|
|
17
17
|
getColumns(type?: DimensionCols | 'all'): ColumnRegular[];
|
|
18
18
|
getColumnIndexByProp(prop: ColumnProp, type: DimensionCols): number;
|
|
19
19
|
getColumnByProp(prop: ColumnProp): ColumnRegular[] | undefined;
|
|
20
20
|
refreshByType(type: DimensionCols): void;
|
|
21
|
+
/**
|
|
22
|
+
* Main method to set columns
|
|
23
|
+
*/
|
|
21
24
|
setColumns(data: ColumnCollection): ColumnCollection;
|
|
22
25
|
/**
|
|
23
26
|
* Used in plugins
|
|
@@ -7,6 +7,8 @@ export type RowDataSources = {
|
|
|
7
7
|
};
|
|
8
8
|
/**
|
|
9
9
|
* Data source provider
|
|
10
|
+
*
|
|
11
|
+
* @dependsOn DimensionProvider
|
|
10
12
|
*/
|
|
11
13
|
export declare class DataProvider {
|
|
12
14
|
private dimensionProvider;
|
|
@@ -23,7 +25,7 @@ export declare class DataProvider {
|
|
|
23
25
|
from: number;
|
|
24
26
|
to: number;
|
|
25
27
|
}): void;
|
|
26
|
-
setCellData({ type, rowIndex, prop, val }: BeforeSaveDataDetails, mutate?: boolean): void;
|
|
28
|
+
setCellData({ type, rowIndex, prop, val }: Pick<BeforeSaveDataDetails, 'type' | 'rowIndex' | 'prop' | 'val'>, mutate?: boolean): void;
|
|
27
29
|
setRangeData(data: DataLookup, type: DimensionRows): void;
|
|
28
30
|
refresh(type?: DimensionRows | 'all'): void;
|
|
29
31
|
refreshItems(type?: DimensionRows): void;
|
|
@@ -1,12 +1,14 @@
|
|
|
1
1
|
import ViewportProvider from './viewport.provider';
|
|
2
2
|
import { DimensionStoreCollection, Trimmed } from "../store/index";
|
|
3
|
-
import { DimensionCols, DimensionType, MultiDimensionType, ColumnRegular, DimensionSettingsState, ViewPortScrollEvent, ViewSettingSizeProp } from "../types/index";
|
|
3
|
+
import type { DimensionCols, DimensionType, MultiDimensionType, ColumnRegular, DimensionSettingsState, ViewPortScrollEvent, ViewSettingSizeProp } from "../types/index";
|
|
4
4
|
export type DimensionConfig = {
|
|
5
5
|
realSizeChanged(k: MultiDimensionType): void;
|
|
6
6
|
};
|
|
7
7
|
/**
|
|
8
8
|
* Dimension provider
|
|
9
9
|
* Stores dimension information and custom sizes
|
|
10
|
+
*
|
|
11
|
+
* @dependsOn ViewportProvider
|
|
10
12
|
*/
|
|
11
13
|
export default class DimensionProvider {
|
|
12
14
|
private viewports;
|
|
@@ -33,7 +35,7 @@ export default class DimensionProvider {
|
|
|
33
35
|
*/
|
|
34
36
|
setTrimmed(trimmed: Trimmed, type: MultiDimensionType): void;
|
|
35
37
|
/**
|
|
36
|
-
* Sets dimension data and
|
|
38
|
+
* Sets dimension data and viewport coordinate
|
|
37
39
|
* @param itemCount
|
|
38
40
|
* @param type - dimension type
|
|
39
41
|
* @param noVirtual - disable virtual data
|
|
@@ -44,12 +46,15 @@ export default class DimensionProvider {
|
|
|
44
46
|
* @param columns - new columns data
|
|
45
47
|
* @param disableVirtualX - disable virtual data for X axis
|
|
46
48
|
*/
|
|
47
|
-
applyNewColumns(columns: Record<DimensionCols, ColumnRegular[]>, disableVirtualX: boolean): void;
|
|
49
|
+
applyNewColumns(columns: Record<DimensionCols, ColumnRegular[]>, disableVirtualX: boolean, keepOld?: boolean): void;
|
|
50
|
+
/**
|
|
51
|
+
* Gets the full size of the grid by summing up the sizes of all dimensions
|
|
52
|
+
* Goes through all dimensions columnTypes (x) and rowTypes (y) and sums up their sizes
|
|
53
|
+
*/
|
|
48
54
|
getFullSize(): {
|
|
49
55
|
x: number;
|
|
50
56
|
y: number;
|
|
51
57
|
};
|
|
52
|
-
updateViewport(type: MultiDimensionType, force?: boolean): void;
|
|
53
58
|
setViewPortCoordinate({ coordinate, type, force, }: {
|
|
54
59
|
coordinate: number;
|
|
55
60
|
type: MultiDimensionType;
|