@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
|
@@ -9,49 +9,51 @@ import DimensionProvider from "../../services/dimension.provider";
|
|
|
9
9
|
import ViewportProvider from "../../services/viewport.provider";
|
|
10
10
|
import ThemeService from "../../themeManager/theme.service";
|
|
11
11
|
import { timeout } from "../../utils";
|
|
12
|
-
import
|
|
12
|
+
import { AutoSizeColumnPlugin, } from "../../plugins/column.auto-size.plugin";
|
|
13
13
|
import { FilterPlugin, } from "../../plugins/filter/filter.plugin";
|
|
14
|
-
import SortingPlugin from "../../plugins/sorting/sorting.plugin";
|
|
15
|
-
import ExportFilePlugin from "../../plugins/export/export.plugin";
|
|
16
|
-
import GroupingRowPlugin from "../../plugins/groupingRow/grouping.row.plugin";
|
|
14
|
+
import { SortingPlugin } from "../../plugins/sorting/sorting.plugin";
|
|
15
|
+
import { ExportFilePlugin } from "../../plugins/export/export.plugin";
|
|
16
|
+
import { GroupingRowPlugin } from "../../plugins/groupingRow/grouping.row.plugin";
|
|
17
17
|
import ViewportService from "./viewport.service";
|
|
18
18
|
import { DATA_SLOT, HEADER_SLOT } from "./viewport.helpers";
|
|
19
19
|
import GridScrollingService from "./viewport.scrolling.service";
|
|
20
|
-
import SelectionStoreConnector from "../../services/selection.store.connector";
|
|
20
|
+
import { SelectionStoreConnector } from "../../services/selection.store.connector";
|
|
21
21
|
import OrderRenderer from "../order/order-renderer";
|
|
22
|
-
import StretchColumn,
|
|
22
|
+
import { StretchColumn, isStretchPlugin, } from "../../plugins/column.stretch.plugin";
|
|
23
23
|
import { rowDefinitionByType, rowDefinitionRemoveByType } from "./grid.helpers";
|
|
24
|
-
import
|
|
24
|
+
import { ColumnMovePlugin } from "../../plugins/moveColumn/column.drag.plugin";
|
|
25
25
|
import { getPropertyFromEvent } from "../../utils/events";
|
|
26
26
|
import { isMobileDevice } from "../../utils/mobile";
|
|
27
27
|
import { getColumnByProp, getColumns } from "../../utils/column.utils";
|
|
28
28
|
import { WCAGPlugin } from "../../plugins/wcag";
|
|
29
|
+
import { PluginService } from "./plugin.service";
|
|
29
30
|
/**
|
|
30
31
|
* Revogrid - High-performance, customizable grid library for managing large datasets.
|
|
32
|
+
* ### Events guide
|
|
33
|
+
*
|
|
34
|
+
* For a comprehensive events guide, check the [Events API Page](./events.md).
|
|
35
|
+
* All events propagate to the root level of the grid. [Dependency tree](#Dependencies).
|
|
36
|
+
*
|
|
37
|
+
* ### Type definitions
|
|
31
38
|
*
|
|
32
|
-
* :::tip
|
|
33
39
|
* Read [type definition file](https://github.com/revolist/revogrid/blob/master/src/interfaces.d.ts) for the full interface information.
|
|
40
|
+
*
|
|
34
41
|
* All complex property types such as `ColumnRegular`, `ColumnProp`, `ColumnDataSchemaModel` can be found there.
|
|
35
|
-
* :::
|
|
36
42
|
*
|
|
37
|
-
*
|
|
38
|
-
* For a comprehensive events guide, check the [dependency tree](#Dependencies).
|
|
39
|
-
* All events propagate to the root level of the grid.
|
|
40
|
-
* :::
|
|
43
|
+
* ### HTMLRevoGridElement
|
|
41
44
|
*
|
|
42
45
|
* @slot data-{column-type}-{row-type}. @example data-rgCol-rgRow - main data slot. Applies extra elements in <revogr-data />.
|
|
43
46
|
* @slot focus-{column-type}-{row-type}. @example focus-rgCol-rgRow - focus layer for main data. Applies extra elements in <revogr-focus />.
|
|
44
|
-
|
|
47
|
+
* @slot viewport - Viewport slot.
|
|
48
|
+
* @slot header - Header slot.
|
|
49
|
+
* @slot footer - Footer slot.
|
|
50
|
+
*/
|
|
45
51
|
export class RevoGridComponent {
|
|
46
52
|
constructor() {
|
|
47
53
|
this.extraElements = [];
|
|
54
|
+
this.pluginService = new PluginService();
|
|
48
55
|
this.viewport = null;
|
|
49
56
|
this.isInited = false;
|
|
50
|
-
/**
|
|
51
|
-
* Plugins
|
|
52
|
-
* Define plugins collection
|
|
53
|
-
*/
|
|
54
|
-
this.internalPlugins = [];
|
|
55
57
|
this.rowHeaders = undefined;
|
|
56
58
|
this.frameSize = 1;
|
|
57
59
|
this.rowSize = 0;
|
|
@@ -74,6 +76,7 @@ export class RevoGridComponent {
|
|
|
74
76
|
this.rowClass = '';
|
|
75
77
|
this.autoSizeColumn = false;
|
|
76
78
|
this.filter = false;
|
|
79
|
+
this.sorting = undefined;
|
|
77
80
|
this.focusTemplate = undefined;
|
|
78
81
|
this.canMoveColumns = false;
|
|
79
82
|
this.trimmedRows = {};
|
|
@@ -101,15 +104,31 @@ export class RevoGridComponent {
|
|
|
101
104
|
this.dataProvider.refresh(type);
|
|
102
105
|
}
|
|
103
106
|
/**
|
|
104
|
-
*
|
|
107
|
+
* Refreshes data at specified cell.
|
|
105
108
|
* Useful for performance optimization.
|
|
106
109
|
* No viewport update will be triggered.
|
|
110
|
+
*
|
|
111
|
+
* @example
|
|
112
|
+
* const grid = document.querySelector('revo-grid');
|
|
113
|
+
* grid.setDataAt({ row: 0, col: 0, val: 'test' }); // refresh
|
|
107
114
|
*/
|
|
108
|
-
async setDataAt(
|
|
109
|
-
|
|
115
|
+
async setDataAt({ row, col, colType = 'rgCol', rowType = 'rgRow', val, skipDataUpdate = false }) {
|
|
116
|
+
var _a;
|
|
117
|
+
if (this.dataProvider && this.columnProvider && !skipDataUpdate) {
|
|
118
|
+
const columnProp = (_a = this.columnProvider.getColumn(col, colType)) === null || _a === void 0 ? void 0 : _a.prop;
|
|
119
|
+
if (typeof columnProp !== 'undefined') {
|
|
120
|
+
this.dataProvider.setCellData({
|
|
121
|
+
type: rowType,
|
|
122
|
+
rowIndex: row,
|
|
123
|
+
prop: columnProp,
|
|
124
|
+
val,
|
|
125
|
+
}, false);
|
|
126
|
+
}
|
|
127
|
+
}
|
|
128
|
+
const dataElement = this.element.querySelector(`revogr-data[type="${rowType}"][col-type="${colType}"]`);
|
|
110
129
|
return dataElement === null || dataElement === void 0 ? void 0 : dataElement.updateCell({
|
|
111
|
-
row
|
|
112
|
-
col
|
|
130
|
+
row,
|
|
131
|
+
col,
|
|
113
132
|
});
|
|
114
133
|
}
|
|
115
134
|
/**
|
|
@@ -277,19 +296,19 @@ export class RevoGridComponent {
|
|
|
277
296
|
* Clear current grid focus. Grid has no longer focus on it.
|
|
278
297
|
*/
|
|
279
298
|
async clearFocus() {
|
|
280
|
-
var _a;
|
|
299
|
+
var _a, _b;
|
|
281
300
|
const focused = (_a = this.viewport) === null || _a === void 0 ? void 0 : _a.getFocused();
|
|
282
301
|
const event = this.beforefocuslost.emit(focused);
|
|
283
302
|
if (event.defaultPrevented) {
|
|
284
303
|
return;
|
|
285
304
|
}
|
|
286
|
-
this.selectionStoreConnector.clearAll();
|
|
305
|
+
(_b = this.selectionStoreConnector) === null || _b === void 0 ? void 0 : _b.clearAll();
|
|
287
306
|
}
|
|
288
307
|
/**
|
|
289
308
|
* Get all active plugins instances
|
|
290
309
|
*/
|
|
291
310
|
async getPlugins() {
|
|
292
|
-
return
|
|
311
|
+
return this.pluginService.get();
|
|
293
312
|
}
|
|
294
313
|
/**
|
|
295
314
|
* Get the currently focused cell.
|
|
@@ -316,6 +335,15 @@ export class RevoGridComponent {
|
|
|
316
335
|
var _a, _b;
|
|
317
336
|
return (_b = (_a = this.viewport) === null || _a === void 0 ? void 0 : _a.getSelectedRange()) !== null && _b !== void 0 ? _b : null;
|
|
318
337
|
}
|
|
338
|
+
/**
|
|
339
|
+
* Refresh extra elements. Triggers re-rendering of extra elements and functions.
|
|
340
|
+
* Part of extraElements and registerVNode methods.
|
|
341
|
+
* Useful for plugins.
|
|
342
|
+
*/
|
|
343
|
+
async refreshExtraElements() {
|
|
344
|
+
var _a;
|
|
345
|
+
(_a = this.extraService) === null || _a === void 0 ? void 0 : _a.refresh();
|
|
346
|
+
}
|
|
319
347
|
mousedownHandle(event) {
|
|
320
348
|
const screenX = getPropertyFromEvent(event, 'screenX');
|
|
321
349
|
const screenY = getPropertyFromEvent(event, 'screenY');
|
|
@@ -444,7 +472,7 @@ export class RevoGridComponent {
|
|
|
444
472
|
// Column format change will trigger column structure update
|
|
445
473
|
this.columnChanged(this.columns);
|
|
446
474
|
}
|
|
447
|
-
columnChanged(newVal = []) {
|
|
475
|
+
columnChanged(newVal = [], _prevVal = undefined, __watchName = 'columns', init = false) {
|
|
448
476
|
if (!this.dimensionProvider || !this.columnProvider) {
|
|
449
477
|
return;
|
|
450
478
|
}
|
|
@@ -453,7 +481,7 @@ export class RevoGridComponent {
|
|
|
453
481
|
if (beforeSetEvent.defaultPrevented) {
|
|
454
482
|
return;
|
|
455
483
|
}
|
|
456
|
-
this.dimensionProvider.applyNewColumns(beforeSetEvent.detail.columns, this.disableVirtualX);
|
|
484
|
+
this.dimensionProvider.applyNewColumns(beforeSetEvent.detail.columns, this.disableVirtualX, init);
|
|
457
485
|
const beforeApplyEvent = this.beforecolumnapplied.emit(columnGather);
|
|
458
486
|
if (beforeApplyEvent.defaultPrevented) {
|
|
459
487
|
return;
|
|
@@ -509,7 +537,9 @@ export class RevoGridComponent {
|
|
|
509
537
|
break;
|
|
510
538
|
case 'source':
|
|
511
539
|
type = 'rgRow';
|
|
512
|
-
/**
|
|
540
|
+
/**
|
|
541
|
+
* Applied for source only for cross compatability between plugins
|
|
542
|
+
*/
|
|
513
543
|
const beforesourceset = this.beforesourceset.emit({
|
|
514
544
|
type,
|
|
515
545
|
source: newVal,
|
|
@@ -523,7 +553,9 @@ export class RevoGridComponent {
|
|
|
523
553
|
});
|
|
524
554
|
const newSource = [...beforesourceset.detail.source];
|
|
525
555
|
this.dataProvider.setData(newSource, type, this.disableVirtualY);
|
|
526
|
-
/**
|
|
556
|
+
/**
|
|
557
|
+
* Applied for source only for cross compatability between plugins
|
|
558
|
+
*/
|
|
527
559
|
if (watchName === 'source') {
|
|
528
560
|
this.aftersourceset.emit({
|
|
529
561
|
type,
|
|
@@ -582,15 +614,8 @@ export class RevoGridComponent {
|
|
|
582
614
|
* Grouping
|
|
583
615
|
*/
|
|
584
616
|
groupingChanged(newVal = {}) {
|
|
585
|
-
|
|
586
|
-
|
|
587
|
-
const isGrouping = p;
|
|
588
|
-
if (!!isGrouping.setGrouping) {
|
|
589
|
-
grPlugin = isGrouping;
|
|
590
|
-
break;
|
|
591
|
-
}
|
|
592
|
-
}
|
|
593
|
-
grPlugin === null || grPlugin === void 0 ? void 0 : grPlugin.setGrouping(newVal || {});
|
|
617
|
+
var _a;
|
|
618
|
+
(_a = this.pluginService.getByClass(GroupingRowPlugin)) === null || _a === void 0 ? void 0 : _a.setGrouping(newVal || {});
|
|
594
619
|
}
|
|
595
620
|
/**
|
|
596
621
|
* Stretch Plugin Apply
|
|
@@ -602,30 +627,29 @@ export class RevoGridComponent {
|
|
|
602
627
|
if (isStretch === 'false') {
|
|
603
628
|
isStretch = false;
|
|
604
629
|
}
|
|
605
|
-
|
|
630
|
+
const pluginData = this.getPluginData();
|
|
631
|
+
if (!pluginData) {
|
|
632
|
+
return;
|
|
633
|
+
}
|
|
634
|
+
const stretch = this.pluginService.getByClass(StretchColumn);
|
|
606
635
|
if ((typeof isStretch === 'boolean' && isStretch) || isStretch === 'true') {
|
|
607
636
|
if (!stretch) {
|
|
608
|
-
|
|
609
|
-
data: this.dataProvider,
|
|
610
|
-
column: this.columnProvider,
|
|
611
|
-
dimension: this.dimensionProvider,
|
|
612
|
-
viewport: this.viewportProvider,
|
|
613
|
-
selection: this.selectionStoreConnector,
|
|
614
|
-
};
|
|
615
|
-
this.internalPlugins.push(new StretchColumn(this.element, pluginData));
|
|
637
|
+
this.pluginService.add(new StretchColumn(this.element, pluginData));
|
|
616
638
|
}
|
|
617
639
|
else if (isStretchPlugin(stretch)) {
|
|
618
640
|
stretch.applyStretch(this.columnProvider.getRawColumns());
|
|
619
641
|
}
|
|
620
642
|
}
|
|
621
643
|
else if (stretch) {
|
|
622
|
-
|
|
623
|
-
this.internalPlugins.splice(index, 1);
|
|
644
|
+
this.pluginService.remove(stretch);
|
|
624
645
|
}
|
|
625
646
|
}
|
|
626
647
|
applyFilter(cfg) {
|
|
627
648
|
this.filterconfigchanged.emit(cfg);
|
|
628
649
|
}
|
|
650
|
+
applySorting(cfg) {
|
|
651
|
+
this.sortingconfigchanged.emit(cfg);
|
|
652
|
+
}
|
|
629
653
|
rowHeadersChange(rowHeaders) {
|
|
630
654
|
this.rowheaderschanged.emit(rowHeaders);
|
|
631
655
|
}
|
|
@@ -633,26 +657,16 @@ export class RevoGridComponent {
|
|
|
633
657
|
* Register external VNodes
|
|
634
658
|
*/
|
|
635
659
|
registerOutsideVNodes(elements = []) {
|
|
636
|
-
this.extraElements =
|
|
660
|
+
this.extraElements = elements;
|
|
637
661
|
}
|
|
638
662
|
additionalDataChanged(data) {
|
|
639
663
|
this.additionaldatachanged.emit(data);
|
|
640
664
|
}
|
|
641
|
-
|
|
642
|
-
|
|
643
|
-
|
|
644
|
-
|
|
645
|
-
|
|
646
|
-
}
|
|
647
|
-
// todo: remove old plugins if any was removed based on _prevPlugins
|
|
648
|
-
// register user plugins
|
|
649
|
-
plugins === null || plugins === void 0 ? void 0 : plugins.forEach(userPlugin => {
|
|
650
|
-
const existingPlugin = this.internalPlugins.find(createdPlugin => createdPlugin instanceof userPlugin);
|
|
651
|
-
if (existingPlugin) {
|
|
652
|
-
return;
|
|
653
|
-
}
|
|
654
|
-
this.internalPlugins.push(new userPlugin(this.element, pluginData));
|
|
655
|
-
});
|
|
665
|
+
/**
|
|
666
|
+
* User can add plugins via plugins property
|
|
667
|
+
*/
|
|
668
|
+
pluginsChanged(plugins = [], prevPlugins) {
|
|
669
|
+
this.pluginService.addUserPluginsAndCreate(this.element, plugins, prevPlugins, this.getPluginData());
|
|
656
670
|
}
|
|
657
671
|
// #endregion
|
|
658
672
|
// #region Plugins
|
|
@@ -664,35 +678,39 @@ export class RevoGridComponent {
|
|
|
664
678
|
if (!pluginData) {
|
|
665
679
|
return;
|
|
666
680
|
}
|
|
681
|
+
// register system plugins
|
|
682
|
+
this.setCorePlugins(pluginData);
|
|
683
|
+
// register user plugins
|
|
684
|
+
this.pluginsChanged(this.plugins);
|
|
685
|
+
}
|
|
686
|
+
setCorePlugins(pluginData) {
|
|
667
687
|
if (this.accessible) {
|
|
668
|
-
this.
|
|
688
|
+
this.pluginService.add(new WCAGPlugin(this.element, pluginData));
|
|
669
689
|
}
|
|
670
690
|
// register auto size plugin
|
|
671
691
|
if (this.autoSizeColumn) {
|
|
672
|
-
this.
|
|
692
|
+
this.pluginService.add(new AutoSizeColumnPlugin(this.element, pluginData, typeof this.autoSizeColumn === 'object'
|
|
673
693
|
? this.autoSizeColumn
|
|
674
694
|
: undefined));
|
|
675
695
|
}
|
|
676
696
|
// register filter plugin
|
|
677
697
|
if (this.filter) {
|
|
678
|
-
this.
|
|
698
|
+
this.pluginService.add(new FilterPlugin(this.element, pluginData, typeof this.filter === 'object' ? this.filter : undefined));
|
|
679
699
|
}
|
|
680
700
|
// register export plugin
|
|
681
701
|
if (this.exporting) {
|
|
682
|
-
this.
|
|
702
|
+
this.pluginService.add(new ExportFilePlugin(this.element, pluginData));
|
|
683
703
|
}
|
|
684
704
|
// register sorting plugin
|
|
685
|
-
this.
|
|
705
|
+
this.pluginService.add(new SortingPlugin(this.element, pluginData));
|
|
686
706
|
// register grouping plugin
|
|
687
|
-
this.
|
|
707
|
+
this.pluginService.add(new GroupingRowPlugin(this.element, pluginData));
|
|
688
708
|
if (this.canMoveColumns) {
|
|
689
|
-
this.
|
|
709
|
+
this.pluginService.add(new ColumnMovePlugin(this.element, pluginData));
|
|
690
710
|
}
|
|
691
|
-
// register user plugins
|
|
692
|
-
this.pluginsChanged(this.plugins);
|
|
693
711
|
}
|
|
694
712
|
getPluginData() {
|
|
695
|
-
if (!this.dimensionProvider || !this.dataProvider || !this.columnProvider || !this.viewportProvider) {
|
|
713
|
+
if (!this.dimensionProvider || !this.dataProvider || !this.columnProvider || !this.viewportProvider || !this.selectionStoreConnector) {
|
|
696
714
|
return;
|
|
697
715
|
}
|
|
698
716
|
// pass data provider to plugins
|
|
@@ -702,12 +720,12 @@ export class RevoGridComponent {
|
|
|
702
720
|
dimension: this.dimensionProvider,
|
|
703
721
|
viewport: this.viewportProvider,
|
|
704
722
|
selection: this.selectionStoreConnector,
|
|
723
|
+
plugins: this.pluginService,
|
|
705
724
|
};
|
|
706
725
|
return pluginData;
|
|
707
726
|
}
|
|
708
727
|
removePlugins() {
|
|
709
|
-
this.
|
|
710
|
-
this.internalPlugins = [];
|
|
728
|
+
this.pluginService.destroy();
|
|
711
729
|
}
|
|
712
730
|
// #endregion
|
|
713
731
|
// if reconnect to dom we need to set up plugins
|
|
@@ -715,6 +733,7 @@ export class RevoGridComponent {
|
|
|
715
733
|
if (this.isInited) {
|
|
716
734
|
this.setPlugins();
|
|
717
735
|
}
|
|
736
|
+
this.created.emit();
|
|
718
737
|
}
|
|
719
738
|
/**
|
|
720
739
|
* Called once just after the component is first connected to the DOM.
|
|
@@ -742,7 +761,7 @@ export class RevoGridComponent {
|
|
|
742
761
|
// set data
|
|
743
762
|
this.applyStretch(this.stretch);
|
|
744
763
|
this.themeChanged(this.theme, undefined, undefined, true);
|
|
745
|
-
this.columnChanged(this.columns);
|
|
764
|
+
this.columnChanged(this.columns, undefined, undefined, true);
|
|
746
765
|
this.dataSourceChanged(this.source, undefined, 'source');
|
|
747
766
|
this.dataSourceChanged(this.pinnedTopSource, undefined, 'pinnedTopSource');
|
|
748
767
|
this.dataSourceChanged(this.pinnedBottomSource, undefined, 'pinnedBottomSource');
|
|
@@ -750,7 +769,10 @@ export class RevoGridComponent {
|
|
|
750
769
|
this.trimmedRowsChanged(this.trimmedRows);
|
|
751
770
|
}
|
|
752
771
|
this.rowDefChanged(this.rowDefinitions);
|
|
753
|
-
|
|
772
|
+
// init grouping
|
|
773
|
+
if (this.grouping && Object.keys(this.grouping).length > 0) {
|
|
774
|
+
this.groupingChanged(this.grouping);
|
|
775
|
+
}
|
|
754
776
|
// init scrolling service
|
|
755
777
|
this.scrollingService = new GridScrollingService((e) => {
|
|
756
778
|
var _a;
|
|
@@ -775,7 +797,7 @@ export class RevoGridComponent {
|
|
|
775
797
|
this.aftergridrender.emit();
|
|
776
798
|
}
|
|
777
799
|
render() {
|
|
778
|
-
if (!this.dimensionProvider || !this.dataProvider || !this.columnProvider || !this.viewportProvider) {
|
|
800
|
+
if (!this.dimensionProvider || !this.dataProvider || !this.columnProvider || !this.viewportProvider || !this.selectionStoreConnector) {
|
|
779
801
|
return;
|
|
780
802
|
}
|
|
781
803
|
const contentHeight = this.dimensionProvider.stores['rgRow'].store.get('realSize');
|
|
@@ -818,12 +840,13 @@ export class RevoGridComponent {
|
|
|
818
840
|
// Render viewport data (vertical sections)
|
|
819
841
|
view.dataPorts.forEach(data => {
|
|
820
842
|
const key = `${data.type}_${view.type}`;
|
|
821
|
-
const dataView = (h("revogr-overlay-selection", Object.assign({}, data, { isMobileDevice: isMobile,
|
|
843
|
+
const dataView = (h("revogr-overlay-selection", Object.assign({}, data, { isMobileDevice: isMobile, onSelectall: () => { var _a; return (_a = this.selectionStoreConnector) === null || _a === void 0 ? void 0 : _a.selectAll(); }, editors: this.editors, readonly: this.readonly, range: this.range, useClipboard: this.useClipboard, applyChangesOnClose: this.applyOnClose, additionalData: this.additionalData, slot: data.slot, onBeforenextvpfocus: (e) => { var _a; return (_a = this.selectionStoreConnector) === null || _a === void 0 ? void 0 : _a.beforeNextFocusCell(e.detail); }, onCanceledit: () => { var _a; return (_a = this.selectionStoreConnector) === null || _a === void 0 ? void 0 : _a.setEdit(false); }, onSetedit: ({ detail }) => {
|
|
844
|
+
var _a;
|
|
822
845
|
const event = this.beforeeditstart.emit(detail);
|
|
823
846
|
if (!event.defaultPrevented) {
|
|
824
|
-
this.selectionStoreConnector.setEdit(detail.val);
|
|
847
|
+
(_a = this.selectionStoreConnector) === null || _a === void 0 ? void 0 : _a.setEdit(detail.val);
|
|
825
848
|
}
|
|
826
|
-
} }), h("revogr-data", Object.assign({}, data, { colType: view.type, key: key, readonly: this.readonly, range: this.range, rowClass: this.rowClass, rowSelectionStore: data.rowSelectionStore, additionalData: this.additionalData, jobsBeforeRender: this.jobsBeforeRender, slot: DATA_SLOT }), h("slot", { name: `data-${view.type}-${data.type}` })), h("revogr-temp-range", { selectionStore: data.
|
|
849
|
+
} }), h("revogr-data", Object.assign({}, data, { colType: view.type, key: key, readonly: this.readonly, range: this.range, rowClass: this.rowClass, rowSelectionStore: data.rowSelectionStore, additionalData: this.additionalData, jobsBeforeRender: this.jobsBeforeRender, slot: DATA_SLOT }), h("slot", { name: `data-${view.type}-${data.type}` })), h("revogr-temp-range", { selectionStore: data.selectionStore, dimensionRow: data.dimensionRow, dimensionCol: data.dimensionCol }), h("revogr-focus", { colData: data.colData, dataStore: data.dataStore, focusTemplate: this.focusTemplate, rowType: data.type, colType: view.type, selectionStore: data.selectionStore, dimensionRow: data.dimensionRow, dimensionCol: data.dimensionCol }, h("slot", { name: `focus-${view.type}-${data.type}` }))));
|
|
827
850
|
dataViews.push(dataView);
|
|
828
851
|
});
|
|
829
852
|
// Add viewport scroll in the end
|
|
@@ -835,15 +858,16 @@ export class RevoGridComponent {
|
|
|
835
858
|
const typeCol = 'rgCol';
|
|
836
859
|
const viewports = this.viewportProvider.stores;
|
|
837
860
|
const dimensions = this.dimensionProvider.stores;
|
|
838
|
-
return (h(Host, null, this.hideAttribution ? null : (h("revogr-attribution", { class: "attribution" })), h("div", { class: "main-viewport", onClick: (e) => {
|
|
861
|
+
return (h(Host, null, this.hideAttribution ? null : (h("revogr-attribution", { class: "attribution" })), h("slot", { name: "header" }), h("div", { class: "main-viewport", onClick: (e) => {
|
|
839
862
|
var _a;
|
|
840
863
|
if (e.currentTarget === e.target) {
|
|
841
864
|
(_a = this.viewport) === null || _a === void 0 ? void 0 : _a.clearEdit();
|
|
842
865
|
}
|
|
843
|
-
} }, h("div", { class: "viewports" }, h("slot", { name: "viewport" }), viewportSections, h("revogr-scroll-virtual", { class: "vertical", dimension: typeRow, viewportStore: viewports[typeRow].store, dimensionStore: dimensions[typeRow].store, ref: el => this.scrollingService.registerElement(el, 'rowScroll'), onScrollvirtual: e => this.scrollingService.proxyScroll(e.detail) }), h(OrderRenderer, { ref: e => (this.orderService = e) }))), h("revogr-scroll-virtual", { class: "horizontal", dimension: typeCol, viewportStore: viewports[typeCol].store, dimensionStore: dimensions[typeCol].store, ref: el => this.scrollingService.registerElement(el, 'colScroll'), onScrollvirtual: e => this.scrollingService.proxyScroll(e.detail) }), h("revogr-extra", { nodes: this.extraElements })));
|
|
866
|
+
} }, h("div", { class: "viewports" }, h("slot", { name: "viewport" }), viewportSections, h("revogr-scroll-virtual", { class: "vertical", dimension: typeRow, viewportStore: viewports[typeRow].store, dimensionStore: dimensions[typeRow].store, ref: el => this.scrollingService.registerElement(el, 'rowScroll'), onScrollvirtual: e => this.scrollingService.proxyScroll(e.detail) }), h(OrderRenderer, { ref: e => (this.orderService = e) }))), h("revogr-scroll-virtual", { class: "horizontal", dimension: typeCol, viewportStore: viewports[typeCol].store, dimensionStore: dimensions[typeCol].store, ref: el => this.scrollingService.registerElement(el, 'colScroll'), onScrollvirtual: e => this.scrollingService.proxyScroll(e.detail) }), h("revogr-extra", { ref: el => (this.extraService = el), nodes: this.extraElements }), h("slot", { name: "footer" })));
|
|
844
867
|
}
|
|
845
868
|
disconnectedCallback() {
|
|
846
|
-
// Remove all plugins, to avoid memory leaks
|
|
869
|
+
// Remove all plugins, to avoid memory leaks
|
|
870
|
+
// and unexpected behaviour when the component is removed
|
|
847
871
|
this.removePlugins();
|
|
848
872
|
}
|
|
849
873
|
static get is() { return "revo-grid"; }
|
|
@@ -1199,7 +1223,7 @@ export class RevoGridComponent {
|
|
|
1199
1223
|
"optional": false,
|
|
1200
1224
|
"docs": {
|
|
1201
1225
|
"tags": [],
|
|
1202
|
-
"text": "Custom grid plugins
|
|
1226
|
+
"text": "Custom grid plugins. Can be added or removed at runtime.\nEvery plugin should be inherited from BasePlugin class.\n\nFor more details check [Plugin guide](https://rv-grid.com/guide/plugin/)"
|
|
1203
1227
|
},
|
|
1204
1228
|
"defaultValue": "[]"
|
|
1205
1229
|
},
|
|
@@ -1296,7 +1320,7 @@ export class RevoGridComponent {
|
|
|
1296
1320
|
"mutable": false,
|
|
1297
1321
|
"complexType": {
|
|
1298
1322
|
"original": "boolean | ColumnFilterConfig",
|
|
1299
|
-
"resolved": "boolean | { collection?:
|
|
1323
|
+
"resolved": "boolean | { collection?: Record<ColumnProp, FilterCollectionItem> | undefined; include?: string[] | undefined; customFilters?: Record<string, CustomFilter<any, LogicFunctionExtraParam>> | undefined; filterProp?: string | undefined; localization?: FilterLocalization | undefined; multiFilterItems?: MultiFilterItem | undefined; disableDynamicFiltering?: boolean | undefined; }",
|
|
1300
1324
|
"references": {
|
|
1301
1325
|
"ColumnFilterConfig": {
|
|
1302
1326
|
"location": "import",
|
|
@@ -1315,6 +1339,27 @@ export class RevoGridComponent {
|
|
|
1315
1339
|
"reflect": false,
|
|
1316
1340
|
"defaultValue": "false"
|
|
1317
1341
|
},
|
|
1342
|
+
"sorting": {
|
|
1343
|
+
"type": "unknown",
|
|
1344
|
+
"mutable": false,
|
|
1345
|
+
"complexType": {
|
|
1346
|
+
"original": "SortingConfig",
|
|
1347
|
+
"resolved": "undefined | { columns?: { prop: ColumnProp; order: Order; cellCompare?: CellCompareFunc | undefined; }[] | undefined; }",
|
|
1348
|
+
"references": {
|
|
1349
|
+
"SortingConfig": {
|
|
1350
|
+
"location": "import",
|
|
1351
|
+
"path": "../../plugins",
|
|
1352
|
+
"id": "src/plugins/index.ts::SortingConfig"
|
|
1353
|
+
}
|
|
1354
|
+
}
|
|
1355
|
+
},
|
|
1356
|
+
"required": false,
|
|
1357
|
+
"optional": true,
|
|
1358
|
+
"docs": {
|
|
1359
|
+
"tags": [],
|
|
1360
|
+
"text": "Alternative way to set sorting.\n`{columns: [{prop: 'name', order: 'asc'}]}`"
|
|
1361
|
+
}
|
|
1362
|
+
},
|
|
1318
1363
|
"focusTemplate": {
|
|
1319
1364
|
"type": "unknown",
|
|
1320
1365
|
"mutable": false,
|
|
@@ -1398,7 +1443,7 @@ export class RevoGridComponent {
|
|
|
1398
1443
|
"mutable": false,
|
|
1399
1444
|
"complexType": {
|
|
1400
1445
|
"original": "GroupingOptions",
|
|
1401
|
-
"resolved": "{ props?: ColumnProp[] | undefined; expandedAll?: boolean | undefined; groupLabelTemplate?: GroupLabelTemplateFunc | undefined; }",
|
|
1446
|
+
"resolved": "{ props?: ColumnProp[] | undefined; prevExpanded?: Record<string, boolean> | undefined; expandedAll?: boolean | undefined; preserveGroupingOnUpdate?: boolean | undefined; groupLabelTemplate?: GroupLabelTemplateFunc | undefined; } & ExpandedOptions",
|
|
1402
1447
|
"references": {
|
|
1403
1448
|
"GroupingOptions": {
|
|
1404
1449
|
"location": "import",
|
|
@@ -1529,13 +1574,18 @@ export class RevoGridComponent {
|
|
|
1529
1574
|
"type": "unknown",
|
|
1530
1575
|
"mutable": false,
|
|
1531
1576
|
"complexType": {
|
|
1532
|
-
"original": "(VNode
|
|
1533
|
-
"resolved": "(VNode | (() => VNode))[]",
|
|
1577
|
+
"original": "(\n | VNode\n | ((c: ExtraNodeFuncConfig) => VNode)\n )[]",
|
|
1578
|
+
"resolved": "(VNode | ((c: ExtraNodeFuncConfig) => VNode))[]",
|
|
1534
1579
|
"references": {
|
|
1535
1580
|
"VNode": {
|
|
1536
1581
|
"location": "import",
|
|
1537
1582
|
"path": "@stencil/core",
|
|
1538
1583
|
"id": "node_modules::VNode"
|
|
1584
|
+
},
|
|
1585
|
+
"ExtraNodeFuncConfig": {
|
|
1586
|
+
"location": "import",
|
|
1587
|
+
"path": "@type",
|
|
1588
|
+
"id": "src/types/index.ts::ExtraNodeFuncConfig"
|
|
1539
1589
|
}
|
|
1540
1590
|
}
|
|
1541
1591
|
},
|
|
@@ -1543,7 +1593,7 @@ export class RevoGridComponent {
|
|
|
1543
1593
|
"optional": false,
|
|
1544
1594
|
"docs": {
|
|
1545
1595
|
"tags": [],
|
|
1546
|
-
"text": "Register new virtual node inside of grid.\nUsed for additional items creation such as plugin elements.\nShould be set before grid render inside of plugins."
|
|
1596
|
+
"text": "Register new virtual node inside of grid.\nUsed for additional items creation such as plugin elements.\nShould be set before grid render inside of plugins.\nCan return VNode result of h() function or a function that returns VNode.\nFunction can be used for performance improvement and additional renders."
|
|
1547
1597
|
},
|
|
1548
1598
|
"defaultValue": "[]"
|
|
1549
1599
|
},
|
|
@@ -1600,11 +1650,11 @@ export class RevoGridComponent {
|
|
|
1600
1650
|
"composed": true,
|
|
1601
1651
|
"docs": {
|
|
1602
1652
|
"tags": [],
|
|
1603
|
-
"text": "
|
|
1653
|
+
"text": "Before the data is edited.\nTo prevent the default behavior of editing data and use your own implementation, call `e.preventDefault()`.\nTo override the edit result with your own value, set the `e.val` property to your desired value."
|
|
1604
1654
|
},
|
|
1605
1655
|
"complexType": {
|
|
1606
1656
|
"original": "BeforeSaveDataDetails",
|
|
1607
|
-
"resolved": "
|
|
1657
|
+
"resolved": "BeforeSaveDataDetails",
|
|
1608
1658
|
"references": {
|
|
1609
1659
|
"BeforeSaveDataDetails": {
|
|
1610
1660
|
"location": "import",
|
|
@@ -1621,11 +1671,11 @@ export class RevoGridComponent {
|
|
|
1621
1671
|
"composed": true,
|
|
1622
1672
|
"docs": {
|
|
1623
1673
|
"tags": [],
|
|
1624
|
-
"text": "
|
|
1674
|
+
"text": "Before applying range data, specifically when a range selection occurs.\nTo customize the data and prevent the default edit data from being set, you can call `e.preventDefault()`."
|
|
1625
1675
|
},
|
|
1626
1676
|
"complexType": {
|
|
1627
1677
|
"original": "BeforeRangeSaveDataDetails",
|
|
1628
|
-
"resolved": "{ data: DataLookup; models: Partial<DataLookup>; type: DimensionRows; }",
|
|
1678
|
+
"resolved": "{ data: DataLookup; models: Partial<DataLookup>; type: DimensionRows; newRange: RangeArea | null; oldRange: RangeArea | null; }",
|
|
1629
1679
|
"references": {
|
|
1630
1680
|
"BeforeRangeSaveDataDetails": {
|
|
1631
1681
|
"location": "import",
|
|
@@ -1642,11 +1692,11 @@ export class RevoGridComponent {
|
|
|
1642
1692
|
"composed": true,
|
|
1643
1693
|
"docs": {
|
|
1644
1694
|
"tags": [],
|
|
1645
|
-
"text": "
|
|
1695
|
+
"text": "After data applied or range changed."
|
|
1646
1696
|
},
|
|
1647
1697
|
"complexType": {
|
|
1648
1698
|
"original": "AfterEditEvent",
|
|
1649
|
-
"resolved": "{ data: DataLookup; models: Partial<DataLookup>; type: DimensionRows;
|
|
1699
|
+
"resolved": "BeforeSaveDataDetails | { data: DataLookup; models: Partial<DataLookup>; type: DimensionRows; newRange: RangeArea | null; oldRange: RangeArea | null; }",
|
|
1650
1700
|
"references": {
|
|
1651
1701
|
"AfterEditEvent": {
|
|
1652
1702
|
"location": "import",
|
|
@@ -1663,11 +1713,11 @@ export class RevoGridComponent {
|
|
|
1663
1713
|
"composed": true,
|
|
1664
1714
|
"docs": {
|
|
1665
1715
|
"tags": [],
|
|
1666
|
-
"text": "
|
|
1716
|
+
"text": "Before autofill is applied.\nTo prevent the default behavior of applying the edit data, you can call `e.preventDefault()`."
|
|
1667
1717
|
},
|
|
1668
1718
|
"complexType": {
|
|
1669
1719
|
"original": "ChangedRange",
|
|
1670
|
-
"resolved": "{ type: DimensionRows; colType: DimensionCols; newRange: RangeArea; oldRange: RangeArea; mapping: OldNewRangeMapping; newData: { [
|
|
1720
|
+
"resolved": "{ type: DimensionRows; colType: DimensionCols; newRange: RangeArea; oldRange: RangeArea; mapping: OldNewRangeMapping; newData: { [newRowIndex: number]: DataType; }; }",
|
|
1671
1721
|
"references": {
|
|
1672
1722
|
"ChangedRange": {
|
|
1673
1723
|
"location": "import",
|
|
@@ -1684,11 +1734,11 @@ export class RevoGridComponent {
|
|
|
1684
1734
|
"composed": true,
|
|
1685
1735
|
"docs": {
|
|
1686
1736
|
"tags": [],
|
|
1687
|
-
"text": "
|
|
1737
|
+
"text": "Before autofill is applied. Runs before beforeautofill event.\nUse e.preventDefault() to prevent range."
|
|
1688
1738
|
},
|
|
1689
1739
|
"complexType": {
|
|
1690
1740
|
"original": "ChangedRange",
|
|
1691
|
-
"resolved": "{ type: DimensionRows; colType: DimensionCols; newRange: RangeArea; oldRange: RangeArea; mapping: OldNewRangeMapping; newData: { [
|
|
1741
|
+
"resolved": "{ type: DimensionRows; colType: DimensionCols; newRange: RangeArea; oldRange: RangeArea; mapping: OldNewRangeMapping; newData: { [newRowIndex: number]: DataType; }; }",
|
|
1692
1742
|
"references": {
|
|
1693
1743
|
"ChangedRange": {
|
|
1694
1744
|
"location": "import",
|
|
@@ -1705,7 +1755,7 @@ export class RevoGridComponent {
|
|
|
1705
1755
|
"composed": true,
|
|
1706
1756
|
"docs": {
|
|
1707
1757
|
"tags": [],
|
|
1708
|
-
"text": "
|
|
1758
|
+
"text": "After focus render finished.\nCan be used to access a focus element through `event.target`.\nThis is just a duplicate of `afterfocus` from `revogr-focus.tsx`."
|
|
1709
1759
|
},
|
|
1710
1760
|
"complexType": {
|
|
1711
1761
|
"original": "FocusAfterRenderEvent",
|
|
@@ -1726,7 +1776,7 @@ export class RevoGridComponent {
|
|
|
1726
1776
|
"composed": true,
|
|
1727
1777
|
"docs": {
|
|
1728
1778
|
"tags": [],
|
|
1729
|
-
"text": "
|
|
1779
|
+
"text": "Before the order of `rgRow` is applied.\nTo prevent the default behavior of changing the order of `rgRow`, you can call `e.preventDefault()`."
|
|
1730
1780
|
},
|
|
1731
1781
|
"complexType": {
|
|
1732
1782
|
"original": "{ from: number; to: number }",
|
|
@@ -1734,14 +1784,14 @@ export class RevoGridComponent {
|
|
|
1734
1784
|
"references": {}
|
|
1735
1785
|
}
|
|
1736
1786
|
}, {
|
|
1737
|
-
"method": "
|
|
1738
|
-
"name": "
|
|
1787
|
+
"method": "beforesorting",
|
|
1788
|
+
"name": "beforesorting",
|
|
1739
1789
|
"bubbles": true,
|
|
1740
1790
|
"cancelable": true,
|
|
1741
1791
|
"composed": true,
|
|
1742
1792
|
"docs": {
|
|
1743
1793
|
"tags": [],
|
|
1744
|
-
"text": "
|
|
1794
|
+
"text": "By `sorting.plugin.ts`\n<br>Triggered immediately after header click.\n<br>First in sorting event sequence. Ff this event stops no other event called.\n<br>Use `e.preventDefault()` to prevent sorting."
|
|
1745
1795
|
},
|
|
1746
1796
|
"complexType": {
|
|
1747
1797
|
"original": "{\n column: ColumnRegular;\n order: 'desc' | 'asc';\n additive: boolean;\n }",
|
|
@@ -1755,14 +1805,40 @@ export class RevoGridComponent {
|
|
|
1755
1805
|
}
|
|
1756
1806
|
}
|
|
1757
1807
|
}, {
|
|
1758
|
-
"method": "
|
|
1759
|
-
"name": "
|
|
1808
|
+
"method": "beforesourcesortingapply",
|
|
1809
|
+
"name": "beforesourcesortingapply",
|
|
1760
1810
|
"bubbles": true,
|
|
1761
1811
|
"cancelable": true,
|
|
1762
1812
|
"composed": true,
|
|
1763
1813
|
"docs": {
|
|
1764
1814
|
"tags": [],
|
|
1765
|
-
"text": "
|
|
1815
|
+
"text": "By `sorting.plugin.ts`\n<br>Same as `beforesorting` but triggered after `beforeanysource` (when source is changed).\n<br>Use `e.preventDefault()` to prevent sorting data change."
|
|
1816
|
+
},
|
|
1817
|
+
"complexType": {
|
|
1818
|
+
"original": "{\n type: DimensionRows;\n sorting?: SortingOrder;\n }",
|
|
1819
|
+
"resolved": "{ type: DimensionRows; sorting?: SortingOrder | undefined; }",
|
|
1820
|
+
"references": {
|
|
1821
|
+
"DimensionRows": {
|
|
1822
|
+
"location": "import",
|
|
1823
|
+
"path": "@type",
|
|
1824
|
+
"id": "src/types/index.ts::DimensionRows"
|
|
1825
|
+
},
|
|
1826
|
+
"SortingOrder": {
|
|
1827
|
+
"location": "import",
|
|
1828
|
+
"path": "../../plugins",
|
|
1829
|
+
"id": "src/plugins/index.ts::SortingOrder"
|
|
1830
|
+
}
|
|
1831
|
+
}
|
|
1832
|
+
}
|
|
1833
|
+
}, {
|
|
1834
|
+
"method": "beforesortingapply",
|
|
1835
|
+
"name": "beforesortingapply",
|
|
1836
|
+
"bubbles": true,
|
|
1837
|
+
"cancelable": true,
|
|
1838
|
+
"composed": true,
|
|
1839
|
+
"docs": {
|
|
1840
|
+
"tags": [],
|
|
1841
|
+
"text": "By `sorting.plugin.ts`\n<br> After `beforesorting`\n<br>Triggered after column data updated with new sorting order.\n<br>Use `e.preventDefault()` to prevent sorting data change."
|
|
1766
1842
|
},
|
|
1767
1843
|
"complexType": {
|
|
1768
1844
|
"original": "{\n column: ColumnRegular;\n order: 'desc' | 'asc';\n additive: boolean;\n }",
|
|
@@ -1786,13 +1862,13 @@ export class RevoGridComponent {
|
|
|
1786
1862
|
"text": "This event is triggered when the row order change is started.\nTo prevent the default behavior of changing the row order, you can call `e.preventDefault()`.\nTo change the item name at the start of the row order change, you can set `e.text` to the desired new name."
|
|
1787
1863
|
},
|
|
1788
1864
|
"complexType": {
|
|
1789
|
-
"original": "
|
|
1790
|
-
"resolved": "{
|
|
1865
|
+
"original": "RowDragStartDetails",
|
|
1866
|
+
"resolved": "{ cell: Cell; text: string; pos: PositionItem; event: MouseEvent; rowType: DimensionRows; model: any; }",
|
|
1791
1867
|
"references": {
|
|
1792
|
-
"
|
|
1868
|
+
"RowDragStartDetails": {
|
|
1793
1869
|
"location": "import",
|
|
1794
1870
|
"path": "@type",
|
|
1795
|
-
"id": "src/types/index.ts::
|
|
1871
|
+
"id": "src/types/index.ts::RowDragStartDetails"
|
|
1796
1872
|
}
|
|
1797
1873
|
}
|
|
1798
1874
|
}
|
|
@@ -1825,11 +1901,11 @@ export class RevoGridComponent {
|
|
|
1825
1901
|
"composed": true,
|
|
1826
1902
|
"docs": {
|
|
1827
1903
|
"tags": [],
|
|
1828
|
-
"text": "
|
|
1904
|
+
"text": "Before the cell focus is changed.\nTo prevent the default behavior of changing the cell focus, you can call `e.preventDefault()`."
|
|
1829
1905
|
},
|
|
1830
1906
|
"complexType": {
|
|
1831
1907
|
"original": "BeforeSaveDataDetails",
|
|
1832
|
-
"resolved": "
|
|
1908
|
+
"resolved": "BeforeSaveDataDetails",
|
|
1833
1909
|
"references": {
|
|
1834
1910
|
"BeforeSaveDataDetails": {
|
|
1835
1911
|
"location": "import",
|
|
@@ -1846,7 +1922,7 @@ export class RevoGridComponent {
|
|
|
1846
1922
|
"composed": true,
|
|
1847
1923
|
"docs": {
|
|
1848
1924
|
"tags": [],
|
|
1849
|
-
"text": "
|
|
1925
|
+
"text": "Before the grid focus is lost.\nTo prevent the default behavior of changing the cell focus, you can call `e.preventDefault()`."
|
|
1850
1926
|
},
|
|
1851
1927
|
"complexType": {
|
|
1852
1928
|
"original": "FocusedData | null",
|
|
@@ -2046,13 +2122,22 @@ export class RevoGridComponent {
|
|
|
2046
2122
|
"text": "Emitted before applying a filter to the data source.\nUse e.preventDefault() to prevent cell focus change.\nModify if you need to change filters."
|
|
2047
2123
|
},
|
|
2048
2124
|
"complexType": {
|
|
2049
|
-
"original": "{ collection:
|
|
2050
|
-
"resolved": "{ collection:
|
|
2125
|
+
"original": "{ collection: Record<ColumnProp, FilterCollectionItem> }",
|
|
2126
|
+
"resolved": "{ collection: Record<ColumnProp, FilterCollectionItem>; }",
|
|
2051
2127
|
"references": {
|
|
2052
|
-
"
|
|
2128
|
+
"Record": {
|
|
2129
|
+
"location": "global",
|
|
2130
|
+
"id": "global::Record"
|
|
2131
|
+
},
|
|
2132
|
+
"ColumnProp": {
|
|
2133
|
+
"location": "import",
|
|
2134
|
+
"path": "@type",
|
|
2135
|
+
"id": "src/types/index.ts::ColumnProp"
|
|
2136
|
+
},
|
|
2137
|
+
"FilterCollectionItem": {
|
|
2053
2138
|
"location": "import",
|
|
2054
2139
|
"path": "../../plugins/filter/filter.types",
|
|
2055
|
-
"id": "src/plugins/filter/filter.types.ts::
|
|
2140
|
+
"id": "src/plugins/filter/filter.types.ts::FilterCollectionItem"
|
|
2056
2141
|
}
|
|
2057
2142
|
}
|
|
2058
2143
|
}
|
|
@@ -2067,17 +2152,22 @@ export class RevoGridComponent {
|
|
|
2067
2152
|
"text": "Emitted before applying a filter to the data source.\nUse e.preventDefault() to prevent the default behavior of trimming values and applying the filter.\nModify the `collection` property if you want to change the filters.\nModify the `itemsToFilter` property if you want to filter the indexes for trimming."
|
|
2068
2153
|
},
|
|
2069
2154
|
"complexType": {
|
|
2070
|
-
"original": "{\n collection:
|
|
2071
|
-
"resolved": "{ collection:
|
|
2155
|
+
"original": "{\n collection: Record<ColumnProp, FilterCollectionItem>;\n itemsToFilter: Record<number, boolean>;\n }",
|
|
2156
|
+
"resolved": "{ collection: Record<ColumnProp, FilterCollectionItem>; itemsToFilter: Record<number, boolean>; }",
|
|
2072
2157
|
"references": {
|
|
2073
|
-
"FilterCollection": {
|
|
2074
|
-
"location": "import",
|
|
2075
|
-
"path": "../../plugins/filter/filter.types",
|
|
2076
|
-
"id": "src/plugins/filter/filter.types.ts::FilterCollection"
|
|
2077
|
-
},
|
|
2078
2158
|
"Record": {
|
|
2079
2159
|
"location": "global",
|
|
2080
2160
|
"id": "global::Record"
|
|
2161
|
+
},
|
|
2162
|
+
"ColumnProp": {
|
|
2163
|
+
"location": "import",
|
|
2164
|
+
"path": "@type",
|
|
2165
|
+
"id": "src/types/index.ts::ColumnProp"
|
|
2166
|
+
},
|
|
2167
|
+
"FilterCollectionItem": {
|
|
2168
|
+
"location": "import",
|
|
2169
|
+
"path": "../../plugins/filter/filter.types",
|
|
2170
|
+
"id": "src/plugins/filter/filter.types.ts::FilterCollectionItem"
|
|
2081
2171
|
}
|
|
2082
2172
|
}
|
|
2083
2173
|
}
|
|
@@ -2170,7 +2260,7 @@ export class RevoGridComponent {
|
|
|
2170
2260
|
},
|
|
2171
2261
|
"complexType": {
|
|
2172
2262
|
"original": "BeforeSaveDataDetails",
|
|
2173
|
-
"resolved": "
|
|
2263
|
+
"resolved": "BeforeSaveDataDetails",
|
|
2174
2264
|
"references": {
|
|
2175
2265
|
"BeforeSaveDataDetails": {
|
|
2176
2266
|
"location": "import",
|
|
@@ -2230,6 +2320,27 @@ export class RevoGridComponent {
|
|
|
2230
2320
|
"resolved": "any",
|
|
2231
2321
|
"references": {}
|
|
2232
2322
|
}
|
|
2323
|
+
}, {
|
|
2324
|
+
"method": "sortingconfigchanged",
|
|
2325
|
+
"name": "sortingconfigchanged",
|
|
2326
|
+
"bubbles": true,
|
|
2327
|
+
"cancelable": true,
|
|
2328
|
+
"composed": true,
|
|
2329
|
+
"docs": {
|
|
2330
|
+
"tags": [],
|
|
2331
|
+
"text": "Emitted when the sorting configuration is changed"
|
|
2332
|
+
},
|
|
2333
|
+
"complexType": {
|
|
2334
|
+
"original": "SortingConfig",
|
|
2335
|
+
"resolved": "{ columns?: { prop: ColumnProp; order: Order; cellCompare?: CellCompareFunc | undefined; }[] | undefined; }",
|
|
2336
|
+
"references": {
|
|
2337
|
+
"SortingConfig": {
|
|
2338
|
+
"location": "import",
|
|
2339
|
+
"path": "../../plugins",
|
|
2340
|
+
"id": "src/plugins/index.ts::SortingConfig"
|
|
2341
|
+
}
|
|
2342
|
+
}
|
|
2343
|
+
}
|
|
2233
2344
|
}, {
|
|
2234
2345
|
"method": "rowheaderschanged",
|
|
2235
2346
|
"name": "rowheaderschanged",
|
|
@@ -2326,6 +2437,21 @@ export class RevoGridComponent {
|
|
|
2326
2437
|
}
|
|
2327
2438
|
}
|
|
2328
2439
|
}
|
|
2440
|
+
}, {
|
|
2441
|
+
"method": "created",
|
|
2442
|
+
"name": "created",
|
|
2443
|
+
"bubbles": true,
|
|
2444
|
+
"cancelable": true,
|
|
2445
|
+
"composed": true,
|
|
2446
|
+
"docs": {
|
|
2447
|
+
"tags": [],
|
|
2448
|
+
"text": "Emmited after grid created"
|
|
2449
|
+
},
|
|
2450
|
+
"complexType": {
|
|
2451
|
+
"original": "any",
|
|
2452
|
+
"resolved": "any",
|
|
2453
|
+
"references": {}
|
|
2454
|
+
}
|
|
2329
2455
|
}];
|
|
2330
2456
|
}
|
|
2331
2457
|
static get methods() {
|
|
@@ -2358,10 +2484,10 @@ export class RevoGridComponent {
|
|
|
2358
2484
|
},
|
|
2359
2485
|
"setDataAt": {
|
|
2360
2486
|
"complexType": {
|
|
2361
|
-
"signature": "(
|
|
2487
|
+
"signature": "({ row, col, colType, rowType, val, skipDataUpdate }: { row: number; col: number; val?: any; skipDataUpdate?: boolean; } & AllDimensionType) => Promise<void | undefined>",
|
|
2362
2488
|
"parameters": [{
|
|
2363
|
-
"name": "
|
|
2364
|
-
"type": "{ row: number; col: number; } & AllDimensionType",
|
|
2489
|
+
"name": "__0",
|
|
2490
|
+
"type": "{ row: number; col: number; val?: any; skipDataUpdate?: boolean | undefined; } & AllDimensionType",
|
|
2365
2491
|
"docs": ""
|
|
2366
2492
|
}],
|
|
2367
2493
|
"references": {
|
|
@@ -2382,8 +2508,11 @@ export class RevoGridComponent {
|
|
|
2382
2508
|
"return": "Promise<void | undefined>"
|
|
2383
2509
|
},
|
|
2384
2510
|
"docs": {
|
|
2385
|
-
"text": "
|
|
2386
|
-
"tags": [
|
|
2511
|
+
"text": "Refreshes data at specified cell.\nUseful for performance optimization.\nNo viewport update will be triggered.",
|
|
2512
|
+
"tags": [{
|
|
2513
|
+
"name": "example",
|
|
2514
|
+
"text": "const grid = document.querySelector('revo-grid');\ngrid.setDataAt({ row: 0, col: 0, val: 'test' }); // refresh"
|
|
2515
|
+
}]
|
|
2387
2516
|
}
|
|
2388
2517
|
},
|
|
2389
2518
|
"scrollToRow": {
|
|
@@ -2713,8 +2842,8 @@ export class RevoGridComponent {
|
|
|
2713
2842
|
},
|
|
2714
2843
|
"Observable": {
|
|
2715
2844
|
"location": "import",
|
|
2716
|
-
"path": "../../utils
|
|
2717
|
-
"id": "src/utils/
|
|
2845
|
+
"path": "../../utils",
|
|
2846
|
+
"id": "src/utils/index.ts::Observable"
|
|
2718
2847
|
},
|
|
2719
2848
|
"DSourceState": {
|
|
2720
2849
|
"location": "import",
|
|
@@ -2757,8 +2886,8 @@ export class RevoGridComponent {
|
|
|
2757
2886
|
},
|
|
2758
2887
|
"Observable": {
|
|
2759
2888
|
"location": "import",
|
|
2760
|
-
"path": "../../utils
|
|
2761
|
-
"id": "src/utils/
|
|
2889
|
+
"path": "../../utils",
|
|
2890
|
+
"id": "src/utils/index.ts::Observable"
|
|
2762
2891
|
},
|
|
2763
2892
|
"DSourceState": {
|
|
2764
2893
|
"location": "import",
|
|
@@ -2979,6 +3108,23 @@ export class RevoGridComponent {
|
|
|
2979
3108
|
"text": "Get the currently selected Range.",
|
|
2980
3109
|
"tags": []
|
|
2981
3110
|
}
|
|
3111
|
+
},
|
|
3112
|
+
"refreshExtraElements": {
|
|
3113
|
+
"complexType": {
|
|
3114
|
+
"signature": "() => Promise<void>",
|
|
3115
|
+
"parameters": [],
|
|
3116
|
+
"references": {
|
|
3117
|
+
"Promise": {
|
|
3118
|
+
"location": "global",
|
|
3119
|
+
"id": "global::Promise"
|
|
3120
|
+
}
|
|
3121
|
+
},
|
|
3122
|
+
"return": "Promise<void>"
|
|
3123
|
+
},
|
|
3124
|
+
"docs": {
|
|
3125
|
+
"text": "Refresh extra elements. Triggers re-rendering of extra elements and functions.\nPart of extraElements and registerVNode methods.\nUseful for plugins.",
|
|
3126
|
+
"tags": []
|
|
3127
|
+
}
|
|
2982
3128
|
}
|
|
2983
3129
|
};
|
|
2984
3130
|
}
|
|
@@ -3026,6 +3172,9 @@ export class RevoGridComponent {
|
|
|
3026
3172
|
}, {
|
|
3027
3173
|
"propName": "filter",
|
|
3028
3174
|
"methodName": "applyFilter"
|
|
3175
|
+
}, {
|
|
3176
|
+
"propName": "sorting",
|
|
3177
|
+
"methodName": "applySorting"
|
|
3029
3178
|
}, {
|
|
3030
3179
|
"propName": "rowHeaders",
|
|
3031
3180
|
"methodName": "rowHeadersChange"
|