lsp-grid 1.0.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +34 -0
- package/dist/cjs/app-globals-Bfsg1bDt.js +16 -0
- package/dist/cjs/app-globals-Bfsg1bDt.js.map +1 -0
- package/dist/cjs/cell-renderer-DtuYp7tj.js +106 -0
- package/dist/cjs/cell-renderer-DtuYp7tj.js.map +1 -0
- package/dist/cjs/column.drag.plugin-BIptTmfz.js +2554 -0
- package/dist/cjs/column.drag.plugin-BIptTmfz.js.map +1 -0
- package/dist/cjs/column.service-BnVSAfcu.js +1391 -0
- package/dist/cjs/column.service-BnVSAfcu.js.map +1 -0
- package/dist/cjs/data.store-CrF4Nf9q.js +3615 -0
- package/dist/cjs/data.store-CrF4Nf9q.js.map +1 -0
- package/dist/cjs/debounce-DgeyTQM0.js +498 -0
- package/dist/cjs/debounce-DgeyTQM0.js.map +1 -0
- package/dist/cjs/edit.utils-Bw-E3Fj6.js +118 -0
- package/dist/cjs/edit.utils-Bw-E3Fj6.js.map +1 -0
- package/dist/cjs/events-D0Syn6ut.js +46 -0
- package/dist/cjs/events-D0Syn6ut.js.map +1 -0
- package/dist/cjs/filter.button-CaAAXq-6.js +49 -0
- package/dist/cjs/filter.button-CaAAXq-6.js.map +1 -0
- package/dist/cjs/header-cell-renderer-DhRJqZ-w.js +356 -0
- package/dist/cjs/header-cell-renderer-DhRJqZ-w.js.map +1 -0
- package/dist/cjs/index-VM40U6Gh.js +2549 -0
- package/dist/cjs/index-VM40U6Gh.js.map +1 -0
- package/dist/cjs/index.cjs.js +346 -0
- package/dist/cjs/index.cjs.js.map +1 -0
- package/dist/cjs/loader.cjs.js +19 -0
- package/dist/cjs/loader.cjs.js.map +1 -0
- package/dist/cjs/revo-grid.cjs.entry.js +2187 -0
- package/dist/cjs/revo-grid.cjs.entry.js.map +1 -0
- package/dist/cjs/revo-grid.cjs.js +31 -0
- package/dist/cjs/revo-grid.cjs.js.map +1 -0
- package/dist/cjs/revo-grid.entry.cjs.js.map +1 -0
- package/dist/cjs/revogr-attribution.revogr-extra.revogr-focus.revogr-overlay-selection.revogr-row-headers.revogr-scroll-virtual.revogr-temp-range.entry.cjs.js.map +1 -0
- package/dist/cjs/revogr-attribution_7.cjs.entry.js +1463 -0
- package/dist/cjs/revogr-attribution_7.cjs.entry.js.map +1 -0
- package/dist/cjs/revogr-clipboard.revogr-edit.revogr-order-editor.entry.cjs.js.map +1 -0
- package/dist/cjs/revogr-clipboard_3.cjs.entry.js +456 -0
- package/dist/cjs/revogr-clipboard_3.cjs.entry.js.map +1 -0
- package/dist/cjs/revogr-data.revogr-header.revogr-viewport-scroll.vnode-html.entry.cjs.js.map +1 -0
- package/dist/cjs/revogr-data_4.cjs.entry.js +948 -0
- package/dist/cjs/revogr-data_4.cjs.entry.js.map +1 -0
- package/dist/cjs/revogr-filter-panel.cjs.entry.js +382 -0
- package/dist/cjs/revogr-filter-panel.cjs.entry.js.map +1 -0
- package/dist/cjs/revogr-filter-panel.entry.cjs.js.map +1 -0
- package/dist/cjs/row-header-utils-DL640c7x.js +420 -0
- package/dist/cjs/row-header-utils-DL640c7x.js.map +1 -0
- package/dist/cjs/text-editor-DWChyeVV.js +81 -0
- package/dist/cjs/text-editor-DWChyeVV.js.map +1 -0
- package/dist/cjs/throttle-Bb1Bbfd1.js +278 -0
- package/dist/cjs/throttle-Bb1Bbfd1.js.map +1 -0
- package/dist/cjs/viewport.helpers-CI6uB8tu.js +59 -0
- package/dist/cjs/viewport.helpers-CI6uB8tu.js.map +1 -0
- package/dist/collection/collection-manifest.json +28 -0
- package/dist/collection/components/attribution/revogr-attribution.js +20 -0
- package/dist/collection/components/attribution/revogr-attribution.js.map +1 -0
- package/dist/collection/components/clipboard/revogr-clipboard.js +396 -0
- package/dist/collection/components/clipboard/revogr-clipboard.js.map +1 -0
- package/dist/collection/components/data/cell-renderer.js +44 -0
- package/dist/collection/components/data/cell-renderer.js.map +1 -0
- package/dist/collection/components/data/column.service.js +293 -0
- package/dist/collection/components/data/column.service.js.map +1 -0
- package/dist/collection/components/data/revogr-data-style.css +75 -0
- package/dist/collection/components/data/revogr-data.js +697 -0
- package/dist/collection/components/data/revogr-data.js.map +1 -0
- package/dist/collection/components/data/row-highlight.plugin.js +51 -0
- package/dist/collection/components/data/row-highlight.plugin.js.map +1 -0
- package/dist/collection/components/data/row-renderer.js +16 -0
- package/dist/collection/components/data/row-renderer.js.map +1 -0
- package/dist/collection/components/editors/edit.utils.js +13 -0
- package/dist/collection/components/editors/edit.utils.js.map +1 -0
- package/dist/collection/components/editors/revogr-edit-style.css +16 -0
- package/dist/collection/components/editors/revogr-edit.js +346 -0
- package/dist/collection/components/editors/revogr-edit.js.map +1 -0
- package/dist/collection/components/editors/text-editor.js +74 -0
- package/dist/collection/components/editors/text-editor.js.map +1 -0
- package/dist/collection/components/extra/revogr-extra.js +125 -0
- package/dist/collection/components/extra/revogr-extra.js.map +1 -0
- package/dist/collection/components/header/header-cell-renderer.js +34 -0
- package/dist/collection/components/header/header-cell-renderer.js.map +1 -0
- package/dist/collection/components/header/header-group-renderer.js +25 -0
- package/dist/collection/components/header/header-group-renderer.js.map +1 -0
- package/dist/collection/components/header/header-renderer.js +61 -0
- package/dist/collection/components/header/header-renderer.js.map +1 -0
- package/dist/collection/components/header/resizable.directive.js +237 -0
- package/dist/collection/components/header/resizable.directive.js.map +1 -0
- package/dist/collection/components/header/resizable.element.js +38 -0
- package/dist/collection/components/header/resizable.element.js.map +1 -0
- package/dist/collection/components/header/revogr-header-style.css +144 -0
- package/dist/collection/components/header/revogr-header.js +573 -0
- package/dist/collection/components/header/revogr-header.js.map +1 -0
- package/dist/collection/components/order/order-renderer.js +50 -0
- package/dist/collection/components/order/order-renderer.js.map +1 -0
- package/dist/collection/components/order/order-row.service.js +72 -0
- package/dist/collection/components/order/order-row.service.js.map +1 -0
- package/dist/collection/components/order/revogr-order-editor.js +461 -0
- package/dist/collection/components/order/revogr-order-editor.js.map +1 -0
- package/dist/collection/components/overlay/autofill.service.js +224 -0
- package/dist/collection/components/overlay/autofill.service.js.map +1 -0
- package/dist/collection/components/overlay/keyboard.service.js +158 -0
- package/dist/collection/components/overlay/keyboard.service.js.map +1 -0
- package/dist/collection/components/overlay/revogr-overlay-selection.js +1515 -0
- package/dist/collection/components/overlay/revogr-overlay-selection.js.map +1 -0
- package/dist/collection/components/overlay/revogr-overlay-style.css +95 -0
- package/dist/collection/components/overlay/selection.utils.js +136 -0
- package/dist/collection/components/overlay/selection.utils.js.map +1 -0
- package/dist/collection/components/revoGrid/grid.helpers.js +33 -0
- package/dist/collection/components/revoGrid/grid.helpers.js.map +1 -0
- 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 +567 -0
- package/dist/collection/components/revoGrid/revo-grid.js +3671 -0
- package/dist/collection/components/revoGrid/revo-grid.js.map +1 -0
- package/dist/collection/components/revoGrid/viewport.helpers.js +49 -0
- package/dist/collection/components/revoGrid/viewport.helpers.js.map +1 -0
- package/dist/collection/components/revoGrid/viewport.resize.service.js +55 -0
- package/dist/collection/components/revoGrid/viewport.resize.service.js.map +1 -0
- package/dist/collection/components/revoGrid/viewport.scrolling.service.js +90 -0
- package/dist/collection/components/revoGrid/viewport.scrolling.service.js.map +1 -0
- package/dist/collection/components/revoGrid/viewport.service.js +237 -0
- package/dist/collection/components/revoGrid/viewport.service.js.map +1 -0
- package/dist/collection/components/rowHeaders/revogr-row-headers.js +291 -0
- package/dist/collection/components/rowHeaders/revogr-row-headers.js.map +1 -0
- package/dist/collection/components/rowHeaders/row-header-render.js +5 -0
- package/dist/collection/components/rowHeaders/row-header-render.js.map +1 -0
- package/dist/collection/components/scroll/revogr-viewport-scroll-style.css +69 -0
- package/dist/collection/components/scroll/revogr-viewport-scroll.js +601 -0
- package/dist/collection/components/scroll/revogr-viewport-scroll.js.map +1 -0
- package/dist/collection/components/scrollable/autohide-scroll.plugin.js +44 -0
- package/dist/collection/components/scrollable/autohide-scroll.plugin.js.map +1 -0
- package/dist/collection/components/scrollable/revogr-scroll-style.css +34 -0
- package/dist/collection/components/scrollable/revogr-scroll-virtual.js +295 -0
- package/dist/collection/components/scrollable/revogr-scroll-virtual.js.map +1 -0
- package/dist/collection/components/selectionFocus/revogr-focus-style.css +7 -0
- package/dist/collection/components/selectionFocus/revogr-focus.js +400 -0
- package/dist/collection/components/selectionFocus/revogr-focus.js.map +1 -0
- package/dist/collection/components/selectionTempRange/revogr-temp-range-style.css +28 -0
- package/dist/collection/components/selectionTempRange/revogr-temp-range.js +171 -0
- package/dist/collection/components/selectionTempRange/revogr-temp-range.js.map +1 -0
- package/dist/collection/components/vnode/vnode-converter.js +84 -0
- package/dist/collection/components/vnode/vnode-converter.js.map +1 -0
- package/dist/collection/components/vnode/vnode.utils.js +18 -0
- package/dist/collection/components/vnode/vnode.utils.js.map +1 -0
- package/dist/collection/global/global.js +19 -0
- package/dist/collection/global/global.js.map +1 -0
- package/dist/collection/index.js +13 -0
- package/dist/collection/index.js.map +1 -0
- 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 +90 -0
- package/dist/collection/plugins/base.plugin.js.map +1 -0
- package/dist/collection/plugins/column.auto-size.plugin.js +225 -0
- package/dist/collection/plugins/column.auto-size.plugin.js.map +1 -0
- package/dist/collection/plugins/column.stretch.plugin.js +96 -0
- package/dist/collection/plugins/column.stretch.plugin.js.map +1 -0
- package/dist/collection/plugins/dispatcher.js +40 -0
- package/dist/collection/plugins/dispatcher.js.map +1 -0
- package/dist/collection/plugins/export/csv.js +72 -0
- package/dist/collection/plugins/export/csv.js.map +1 -0
- package/dist/collection/plugins/export/export.plugin.js +157 -0
- package/dist/collection/plugins/export/export.plugin.js.map +1 -0
- package/dist/collection/plugins/export/types.js +2 -0
- package/dist/collection/plugins/export/types.js.map +1 -0
- package/dist/collection/plugins/filter/conditions/equal.js +21 -0
- package/dist/collection/plugins/filter/conditions/equal.js.map +1 -0
- package/dist/collection/plugins/filter/conditions/number/greaterThan.js +14 -0
- package/dist/collection/plugins/filter/conditions/number/greaterThan.js.map +1 -0
- package/dist/collection/plugins/filter/conditions/number/greaterThanOrEqual.js +11 -0
- package/dist/collection/plugins/filter/conditions/number/greaterThanOrEqual.js.map +1 -0
- package/dist/collection/plugins/filter/conditions/number/lessThan.js +16 -0
- package/dist/collection/plugins/filter/conditions/number/lessThan.js.map +1 -0
- package/dist/collection/plugins/filter/conditions/number/lessThanOrEqual.js +11 -0
- package/dist/collection/plugins/filter/conditions/number/lessThanOrEqual.js.map +1 -0
- package/dist/collection/plugins/filter/conditions/set.js +7 -0
- package/dist/collection/plugins/filter/conditions/set.js.map +1 -0
- package/dist/collection/plugins/filter/conditions/string/beginswith.js +21 -0
- package/dist/collection/plugins/filter/conditions/string/beginswith.js.map +1 -0
- package/dist/collection/plugins/filter/conditions/string/contains.js +25 -0
- package/dist/collection/plugins/filter/conditions/string/contains.js.map +1 -0
- package/dist/collection/plugins/filter/filter.button.js +28 -0
- package/dist/collection/plugins/filter/filter.button.js.map +1 -0
- package/dist/collection/plugins/filter/filter.indexed.js +49 -0
- package/dist/collection/plugins/filter/filter.indexed.js.map +1 -0
- package/dist/collection/plugins/filter/filter.panel.js +610 -0
- package/dist/collection/plugins/filter/filter.panel.js.map +1 -0
- package/dist/collection/plugins/filter/filter.plugin.js +388 -0
- package/dist/collection/plugins/filter/filter.plugin.js.map +1 -0
- package/dist/collection/plugins/filter/filter.style.css +165 -0
- package/dist/collection/plugins/filter/filter.types.js +9 -0
- package/dist/collection/plugins/filter/filter.types.js.map +1 -0
- package/dist/collection/plugins/groupingRow/grouping.const.js +16 -0
- package/dist/collection/plugins/groupingRow/grouping.const.js.map +1 -0
- package/dist/collection/plugins/groupingRow/grouping.row.expand.service.js +79 -0
- package/dist/collection/plugins/groupingRow/grouping.row.expand.service.js.map +1 -0
- package/dist/collection/plugins/groupingRow/grouping.row.plugin.js +245 -0
- package/dist/collection/plugins/groupingRow/grouping.row.plugin.js.map +1 -0
- package/dist/collection/plugins/groupingRow/grouping.row.renderer.js +38 -0
- package/dist/collection/plugins/groupingRow/grouping.row.renderer.js.map +1 -0
- package/dist/collection/plugins/groupingRow/grouping.row.types.js +2 -0
- package/dist/collection/plugins/groupingRow/grouping.row.types.js.map +1 -0
- package/dist/collection/plugins/groupingRow/grouping.service.js +178 -0
- package/dist/collection/plugins/groupingRow/grouping.service.js.map +1 -0
- package/dist/collection/plugins/groupingRow/grouping.trimmed.service.js +61 -0
- package/dist/collection/plugins/groupingRow/grouping.trimmed.service.js.map +1 -0
- package/dist/collection/plugins/index.js +15 -0
- package/dist/collection/plugins/index.js.map +1 -0
- package/dist/collection/plugins/moveColumn/column.drag.plugin.js +175 -0
- package/dist/collection/plugins/moveColumn/column.drag.plugin.js.map +1 -0
- package/dist/collection/plugins/moveColumn/order-column.handler.js +71 -0
- package/dist/collection/plugins/moveColumn/order-column.handler.js.map +1 -0
- package/dist/collection/plugins/rtl/rtl.plugin.js +110 -0
- package/dist/collection/plugins/rtl/rtl.plugin.js.map +1 -0
- package/dist/collection/plugins/sorting/sorting.func.js +82 -0
- package/dist/collection/plugins/sorting/sorting.func.js.map +1 -0
- package/dist/collection/plugins/sorting/sorting.plugin.js +224 -0
- package/dist/collection/plugins/sorting/sorting.plugin.js.map +1 -0
- package/dist/collection/plugins/sorting/sorting.sign.js +9 -0
- package/dist/collection/plugins/sorting/sorting.sign.js.map +1 -0
- package/dist/collection/plugins/sorting/sorting.types.js +2 -0
- package/dist/collection/plugins/sorting/sorting.types.js.map +1 -0
- package/dist/collection/plugins/wcag/index.js +84 -0
- package/dist/collection/plugins/wcag/index.js.map +1 -0
- package/dist/collection/serve/controller.js +344 -0
- package/dist/collection/serve/data.js +201 -0
- package/dist/collection/services/cell.helpers.js +12 -0
- package/dist/collection/services/cell.helpers.js.map +1 -0
- package/dist/collection/services/column.data.provider.js +119 -0
- package/dist/collection/services/column.data.provider.js.map +1 -0
- package/dist/collection/services/data.provider.js +89 -0
- package/dist/collection/services/data.provider.js.map +1 -0
- package/dist/collection/services/dimension.provider.js +176 -0
- package/dist/collection/services/dimension.provider.js.map +1 -0
- package/dist/collection/services/local.scroll.service.js +124 -0
- package/dist/collection/services/local.scroll.service.js.map +1 -0
- package/dist/collection/services/local.scroll.timer.js +81 -0
- package/dist/collection/services/local.scroll.timer.js.map +1 -0
- package/dist/collection/services/selection.store.connector.js +307 -0
- package/dist/collection/services/selection.store.connector.js.map +1 -0
- package/dist/collection/services/viewport.provider.js +17 -0
- package/dist/collection/services/viewport.provider.js.map +1 -0
- package/dist/collection/store/dataSource/data.proxy.js +45 -0
- package/dist/collection/store/dataSource/data.proxy.js.map +1 -0
- package/dist/collection/store/dataSource/data.store.js +144 -0
- package/dist/collection/store/dataSource/data.store.js.map +1 -0
- package/dist/collection/store/dataSource/index.js +7 -0
- package/dist/collection/store/dataSource/index.js.map +1 -0
- package/dist/collection/store/dataSource/trimmed.plugin.js +34 -0
- package/dist/collection/store/dataSource/trimmed.plugin.js.map +1 -0
- package/dist/collection/store/dimension/dimension.helpers.js +101 -0
- package/dist/collection/store/dimension/dimension.helpers.js.map +1 -0
- 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 +109 -0
- package/dist/collection/store/dimension/dimension.store.js.map +1 -0
- 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/dimension/index.js +6 -0
- package/dist/collection/store/dimension/index.js.map +1 -0
- package/dist/collection/store/index.js +17 -0
- package/dist/collection/store/index.js.map +1 -0
- package/dist/collection/store/selection/index.js +6 -0
- package/dist/collection/store/selection/index.js.map +1 -0
- package/dist/collection/store/selection/selection.helpers.js +53 -0
- package/dist/collection/store/selection/selection.helpers.js.map +1 -0
- package/dist/collection/store/selection/selection.store.js +85 -0
- package/dist/collection/store/selection/selection.store.js.map +1 -0
- package/dist/collection/store/vp/index.js +6 -0
- package/dist/collection/store/vp/index.js.map +1 -0
- package/dist/collection/store/vp/viewport.helpers.js +251 -0
- package/dist/collection/store/vp/viewport.helpers.js.map +1 -0
- package/dist/collection/store/vp/viewport.store.js +151 -0
- package/dist/collection/store/vp/viewport.store.js.map +1 -0
- package/dist/collection/themeManager/theme.compact.js +9 -0
- package/dist/collection/themeManager/theme.compact.js.map +1 -0
- package/dist/collection/themeManager/theme.default.js +9 -0
- package/dist/collection/themeManager/theme.default.js.map +1 -0
- package/dist/collection/themeManager/theme.material.js +9 -0
- package/dist/collection/themeManager/theme.material.js.map +1 -0
- package/dist/collection/themeManager/theme.service.js +53 -0
- package/dist/collection/themeManager/theme.service.js.map +1 -0
- package/dist/collection/types/dimension.js +2 -0
- package/dist/collection/types/dimension.js.map +1 -0
- package/dist/collection/types/events.js +118 -0
- package/dist/collection/types/events.js.map +1 -0
- package/dist/collection/types/index.js +12 -0
- package/dist/collection/types/index.js.map +1 -0
- package/dist/collection/types/interfaces.js +2 -0
- package/dist/collection/types/interfaces.js.map +1 -0
- package/dist/collection/types/plugin.js +2 -0
- package/dist/collection/types/plugin.js.map +1 -0
- package/dist/collection/types/plugin.types.js +2 -0
- package/dist/collection/types/plugin.types.js.map +1 -0
- package/dist/collection/types/selection.js +2 -0
- package/dist/collection/types/selection.js.map +1 -0
- package/dist/collection/types/theme.js +2 -0
- package/dist/collection/types/theme.js.map +1 -0
- package/dist/collection/types/viewport.interfaces.js +2 -0
- package/dist/collection/types/viewport.interfaces.js.map +1 -0
- package/dist/collection/utils/browser.js +7 -0
- package/dist/collection/utils/browser.js.map +1 -0
- package/dist/collection/utils/closest.polifill.js +22 -0
- package/dist/collection/utils/closest.polifill.js.map +1 -0
- package/dist/collection/utils/column.utils.js +153 -0
- package/dist/collection/utils/column.utils.js.map +1 -0
- package/dist/collection/utils/consts.js +26 -0
- package/dist/collection/utils/consts.js.map +1 -0
- package/dist/collection/utils/events.js +39 -0
- package/dist/collection/utils/events.js.map +1 -0
- package/dist/collection/utils/header.utils.js +24 -0
- package/dist/collection/utils/header.utils.js.map +1 -0
- package/dist/collection/utils/index.js +140 -0
- package/dist/collection/utils/index.js.map +1 -0
- package/dist/collection/utils/key.codes.js +80 -0
- package/dist/collection/utils/key.codes.js.map +1 -0
- package/dist/collection/utils/key.utils.js +90 -0
- package/dist/collection/utils/key.utils.js.map +1 -0
- package/dist/collection/utils/mobile.js +7 -0
- package/dist/collection/utils/mobile.js.map +1 -0
- package/dist/collection/utils/platform.js +9 -0
- package/dist/collection/utils/platform.js.map +1 -0
- package/dist/collection/utils/row-header-utils.js +9 -0
- package/dist/collection/utils/row-header-utils.js.map +1 -0
- package/dist/collection/utils/store.types.js +2 -0
- package/dist/collection/utils/store.types.js.map +1 -0
- package/dist/collection/utils/store.utils.js +15 -0
- package/dist/collection/utils/store.utils.js.map +1 -0
- package/dist/esm/app-globals-FBz64o-g.js +14 -0
- package/dist/esm/app-globals-FBz64o-g.js.map +1 -0
- package/dist/esm/cell-renderer-Ca_PCGjJ.js +98 -0
- package/dist/esm/cell-renderer-Ca_PCGjJ.js.map +1 -0
- package/dist/esm/column.drag.plugin-BtuUyB-2.js +2528 -0
- package/dist/esm/column.drag.plugin-BtuUyB-2.js.map +1 -0
- package/dist/esm/column.service-CTqFIQUy.js +1343 -0
- package/dist/esm/column.service-CTqFIQUy.js.map +1 -0
- package/dist/esm/data.store-B-lvmoFH.js +3553 -0
- package/dist/esm/data.store-B-lvmoFH.js.map +1 -0
- package/dist/esm/debounce-DTUQ1fY7.js +488 -0
- package/dist/esm/debounce-DTUQ1fY7.js.map +1 -0
- package/dist/esm/edit.utils-CyCANCLB.js +103 -0
- package/dist/esm/edit.utils-CyCANCLB.js.map +1 -0
- package/dist/esm/events-CKtYJJSv.js +43 -0
- package/dist/esm/events-CKtYJJSv.js.map +1 -0
- package/dist/esm/filter.button-CjABZQgg.js +39 -0
- package/dist/esm/filter.button-CjABZQgg.js.map +1 -0
- package/dist/esm/header-cell-renderer-DnjpJuXq.js +351 -0
- package/dist/esm/header-cell-renderer-DnjpJuXq.js.map +1 -0
- package/dist/esm/index-BAoInZ4V.js +2519 -0
- package/dist/esm/index-BAoInZ4V.js.map +1 -0
- package/dist/esm/index.js +181 -0
- package/dist/esm/index.js.map +1 -0
- package/dist/esm/loader.js +17 -0
- package/dist/esm/loader.js.map +1 -0
- package/dist/esm/revo-grid.entry.js +2185 -0
- package/dist/esm/revo-grid.entry.js.map +1 -0
- package/dist/esm/revo-grid.js +27 -0
- package/dist/esm/revo-grid.js.map +1 -0
- package/dist/esm/revogr-attribution.revogr-extra.revogr-focus.revogr-overlay-selection.revogr-row-headers.revogr-scroll-virtual.revogr-temp-range.entry.js.map +1 -0
- package/dist/esm/revogr-attribution_7.entry.js +1455 -0
- package/dist/esm/revogr-attribution_7.entry.js.map +1 -0
- package/dist/esm/revogr-clipboard.revogr-edit.revogr-order-editor.entry.js.map +1 -0
- package/dist/esm/revogr-clipboard_3.entry.js +452 -0
- package/dist/esm/revogr-clipboard_3.entry.js.map +1 -0
- package/dist/esm/revogr-data.revogr-header.revogr-viewport-scroll.vnode-html.entry.js.map +1 -0
- package/dist/esm/revogr-data_4.entry.js +943 -0
- package/dist/esm/revogr-data_4.entry.js.map +1 -0
- package/dist/esm/revogr-filter-panel.entry.js +380 -0
- package/dist/esm/revogr-filter-panel.entry.js.map +1 -0
- package/dist/esm/row-header-utils-vnoLGj5A.js +407 -0
- package/dist/esm/row-header-utils-vnoLGj5A.js.map +1 -0
- package/dist/esm/text-editor-Cp7lwBZi.js +79 -0
- package/dist/esm/text-editor-Cp7lwBZi.js.map +1 -0
- package/dist/esm/throttle-DiUrHjcY.js +273 -0
- package/dist/esm/throttle-DiUrHjcY.js.map +1 -0
- package/dist/esm/viewport.helpers-Ch4AQMMg.js +53 -0
- package/dist/esm/viewport.helpers-Ch4AQMMg.js.map +1 -0
- package/dist/index.cjs.js +1 -0
- package/dist/index.d.ts +1 -0
- package/dist/index.js +1 -0
- package/dist/revo-grid/app-globals-FBz64o-g.js +14 -0
- package/dist/revo-grid/app-globals-FBz64o-g.js.map +1 -0
- package/dist/revo-grid/cell-renderer-Ca_PCGjJ.js +98 -0
- package/dist/revo-grid/cell-renderer-Ca_PCGjJ.js.map +1 -0
- package/dist/revo-grid/column.drag.plugin-BtuUyB-2.js +2528 -0
- package/dist/revo-grid/column.drag.plugin-BtuUyB-2.js.map +1 -0
- package/dist/revo-grid/column.service-CTqFIQUy.js +1343 -0
- package/dist/revo-grid/column.service-CTqFIQUy.js.map +1 -0
- package/dist/revo-grid/data.store-B-lvmoFH.js +3553 -0
- package/dist/revo-grid/data.store-B-lvmoFH.js.map +1 -0
- package/dist/revo-grid/debounce-DTUQ1fY7.js +488 -0
- package/dist/revo-grid/debounce-DTUQ1fY7.js.map +1 -0
- package/dist/revo-grid/edit.utils-CyCANCLB.js +103 -0
- package/dist/revo-grid/edit.utils-CyCANCLB.js.map +1 -0
- package/dist/revo-grid/events-CKtYJJSv.js +43 -0
- package/dist/revo-grid/events-CKtYJJSv.js.map +1 -0
- package/dist/revo-grid/filter.button-CjABZQgg.js +39 -0
- package/dist/revo-grid/filter.button-CjABZQgg.js.map +1 -0
- package/dist/revo-grid/header-cell-renderer-DnjpJuXq.js +351 -0
- package/dist/revo-grid/header-cell-renderer-DnjpJuXq.js.map +1 -0
- package/dist/revo-grid/index-BAoInZ4V.js +2490 -0
- package/dist/revo-grid/index-BAoInZ4V.js.map +1 -0
- package/dist/revo-grid/index.esm.js +181 -0
- package/dist/revo-grid/index.esm.js.map +1 -0
- package/dist/revo-grid/loader.esm.js.map +1 -0
- package/dist/revo-grid/revo-grid.entry.esm.js.map +1 -0
- package/dist/revo-grid/revo-grid.entry.js +2185 -0
- package/dist/revo-grid/revo-grid.entry.js.map +1 -0
- package/dist/revo-grid/revo-grid.esm.js +27 -0
- package/dist/revo-grid/revo-grid.esm.js.map +1 -0
- package/dist/revo-grid/revogr-attribution.revogr-extra.revogr-focus.revogr-overlay-selection.revogr-row-headers.revogr-scroll-virtual.revogr-temp-range.entry.esm.js.map +1 -0
- package/dist/revo-grid/revogr-attribution_7.entry.js +1455 -0
- package/dist/revo-grid/revogr-attribution_7.entry.js.map +1 -0
- package/dist/revo-grid/revogr-clipboard.revogr-edit.revogr-order-editor.entry.esm.js.map +1 -0
- package/dist/revo-grid/revogr-clipboard_3.entry.js +452 -0
- package/dist/revo-grid/revogr-clipboard_3.entry.js.map +1 -0
- package/dist/revo-grid/revogr-data.revogr-header.revogr-viewport-scroll.vnode-html.entry.esm.js.map +1 -0
- package/dist/revo-grid/revogr-data_4.entry.js +943 -0
- package/dist/revo-grid/revogr-data_4.entry.js.map +1 -0
- package/dist/revo-grid/revogr-filter-panel.entry.esm.js.map +1 -0
- package/dist/revo-grid/revogr-filter-panel.entry.js +380 -0
- package/dist/revo-grid/revogr-filter-panel.entry.js.map +1 -0
- package/dist/revo-grid/row-header-utils-vnoLGj5A.js +407 -0
- package/dist/revo-grid/row-header-utils-vnoLGj5A.js.map +1 -0
- package/dist/revo-grid/text-editor-Cp7lwBZi.js +79 -0
- package/dist/revo-grid/text-editor-Cp7lwBZi.js.map +1 -0
- package/dist/revo-grid/throttle-DiUrHjcY.js +273 -0
- package/dist/revo-grid/throttle-DiUrHjcY.js.map +1 -0
- package/dist/revo-grid/viewport.helpers-Ch4AQMMg.js +53 -0
- package/dist/revo-grid/viewport.helpers-Ch4AQMMg.js.map +1 -0
- package/dist/types/components/attribution/revogr-attribution.d.ts +12 -0
- package/dist/types/components/clipboard/revogr-clipboard.d.ts +89 -0
- package/dist/types/components/data/cell-renderer.d.ts +12 -0
- package/dist/types/components/data/column.service.d.ts +61 -0
- package/dist/types/components/data/revogr-data.d.ts +107 -0
- package/dist/types/components/data/row-highlight.plugin.d.ts +10 -0
- package/dist/types/components/data/row-renderer.d.ts +12 -0
- package/dist/types/components/editors/edit.utils.d.ts +3 -0
- package/dist/types/components/editors/revogr-edit.d.ts +63 -0
- package/dist/types/components/editors/text-editor.d.ts +43 -0
- package/dist/types/components/extra/revogr-extra.d.ts +38 -0
- package/dist/types/components/header/header-cell-renderer.d.ts +9 -0
- package/dist/types/components/header/header-group-renderer.d.ts +15 -0
- package/dist/types/components/header/header-renderer.d.ts +16 -0
- package/dist/types/components/header/resizable.directive.d.ts +55 -0
- package/dist/types/components/header/resizable.element.d.ts +5 -0
- package/dist/types/components/header/revogr-header.d.ts +90 -0
- package/dist/types/components/order/order-renderer.d.ts +29 -0
- package/dist/types/components/order/order-row.service.d.ts +27 -0
- package/dist/types/components/order/revogr-order-editor.d.ts +56 -0
- package/dist/types/components/overlay/autofill.service.d.ts +80 -0
- package/dist/types/components/overlay/keyboard.service.d.ts +28 -0
- package/dist/types/components/overlay/revogr-overlay-selection.d.ts +278 -0
- package/dist/types/components/overlay/selection.utils.d.ts +47 -0
- package/dist/types/components/revoGrid/grid.helpers.d.ts +17 -0
- package/dist/types/components/revoGrid/plugin.service.d.ts +37 -0
- package/dist/types/components/revoGrid/revo-grid.d.ts +686 -0
- package/dist/types/components/revoGrid/viewport.helpers.d.ts +39 -0
- package/dist/types/components/revoGrid/viewport.resize.service.d.ts +17 -0
- package/dist/types/components/revoGrid/viewport.scrolling.service.d.ts +20 -0
- package/dist/types/components/revoGrid/viewport.service.d.ts +59 -0
- package/dist/types/components/rowHeaders/revogr-row-headers.d.ts +51 -0
- package/dist/types/components/rowHeaders/row-header-render.d.ts +9 -0
- package/dist/types/components/scroll/revogr-viewport-scroll.d.ts +117 -0
- package/dist/types/components/scrollable/autohide-scroll.plugin.d.ts +22 -0
- package/dist/types/components/scrollable/revogr-scroll-virtual.d.ts +43 -0
- package/dist/types/components/selectionFocus/revogr-focus.d.ts +58 -0
- package/dist/types/components/selectionTempRange/revogr-temp-range.d.ts +28 -0
- package/dist/types/components/vnode/vnode-converter.d.ts +19 -0
- package/dist/types/components/vnode/vnode.utils.d.ts +9 -0
- package/dist/types/components.d.ts +2583 -0
- package/dist/types/global/global.d.ts +1 -0
- package/dist/types/index.d.ts +9 -0
- package/dist/types/plugins/add-rows-on-paste.plugin.d.ts +14 -0
- package/dist/types/plugins/base.plugin.d.ts +51 -0
- package/dist/types/plugins/column.auto-size.plugin.d.ts +55 -0
- package/dist/types/plugins/column.stretch.plugin.d.ts +20 -0
- package/dist/types/plugins/dispatcher.d.ts +20 -0
- package/dist/types/plugins/export/csv.d.ts +9 -0
- package/dist/types/plugins/export/export.plugin.d.ts +24 -0
- package/dist/types/plugins/export/types.d.ts +23 -0
- package/dist/types/plugins/filter/conditions/equal.d.ts +4 -0
- package/dist/types/plugins/filter/conditions/number/greaterThan.d.ts +3 -0
- package/dist/types/plugins/filter/conditions/number/greaterThanOrEqual.d.ts +3 -0
- package/dist/types/plugins/filter/conditions/number/lessThan.d.ts +3 -0
- package/dist/types/plugins/filter/conditions/number/lessThanOrEqual.d.ts +3 -0
- package/dist/types/plugins/filter/conditions/set.d.ts +4 -0
- package/dist/types/plugins/filter/conditions/string/beginswith.d.ts +3 -0
- package/dist/types/plugins/filter/conditions/string/contains.d.ts +4 -0
- package/dist/types/plugins/filter/filter.button.d.ts +14 -0
- package/dist/types/plugins/filter/filter.indexed.d.ts +20 -0
- package/dist/types/plugins/filter/filter.panel.d.ts +53 -0
- package/dist/types/plugins/filter/filter.plugin.d.ts +73 -0
- package/dist/types/plugins/filter/filter.types.d.ts +129 -0
- package/dist/types/plugins/groupingRow/grouping.const.d.ts +12 -0
- package/dist/types/plugins/groupingRow/grouping.row.expand.service.d.ts +15 -0
- package/dist/types/plugins/groupingRow/grouping.row.plugin.d.ts +39 -0
- package/dist/types/plugins/groupingRow/grouping.row.renderer.d.ts +6 -0
- package/dist/types/plugins/groupingRow/grouping.row.types.d.ts +103 -0
- package/dist/types/plugins/groupingRow/grouping.service.d.ts +36 -0
- package/dist/types/plugins/groupingRow/grouping.trimmed.service.d.ts +10 -0
- package/dist/types/plugins/index.d.ts +11 -0
- package/dist/types/plugins/moveColumn/column.drag.plugin.d.ts +42 -0
- package/dist/types/plugins/moveColumn/order-column.handler.d.ts +16 -0
- package/dist/types/plugins/rtl/rtl.plugin.d.ts +37 -0
- package/dist/types/plugins/sorting/sorting.func.d.ts +9 -0
- package/dist/types/plugins/sorting/sorting.plugin.d.ts +48 -0
- package/dist/types/plugins/sorting/sorting.sign.d.ts +6 -0
- package/dist/types/plugins/sorting/sorting.types.d.ts +14 -0
- package/dist/types/plugins/wcag/index.d.ts +26 -0
- package/dist/types/services/cell.helpers.d.ts +2 -0
- package/dist/types/services/column.data.provider.d.ts +27 -0
- package/dist/types/services/data.provider.d.ts +36 -0
- package/dist/types/services/dimension.provider.d.ts +66 -0
- package/dist/types/services/local.scroll.service.d.ts +36 -0
- package/dist/types/services/local.scroll.timer.d.ts +32 -0
- package/dist/types/services/selection.store.connector.d.ts +79 -0
- package/dist/types/services/viewport.provider.d.ts +7 -0
- package/dist/types/stencil-public-runtime.d.ts +1709 -0
- package/dist/types/store/dataSource/data.proxy.d.ts +14 -0
- package/dist/types/store/dataSource/data.store.d.ts +74 -0
- package/dist/types/store/dataSource/index.d.ts +3 -0
- package/dist/types/store/dataSource/trimmed.plugin.d.ts +12 -0
- package/dist/types/store/dimension/dimension.helpers.d.ts +24 -0
- package/dist/types/store/dimension/dimension.recalculate.plugin.d.ts +9 -0
- package/dist/types/store/dimension/dimension.store.d.ts +21 -0
- package/dist/types/store/dimension/dimension.trim.plugin.d.ts +13 -0
- package/dist/types/store/dimension/index.d.ts +2 -0
- package/dist/types/store/index.d.ts +8 -0
- package/dist/types/store/selection/index.d.ts +2 -0
- package/dist/types/store/selection/selection.helpers.d.ts +6 -0
- package/dist/types/store/selection/selection.store.d.ts +22 -0
- package/dist/types/store/vp/index.d.ts +7 -0
- package/dist/types/store/vp/viewport.helpers.d.ts +54 -0
- package/dist/types/store/vp/viewport.store.d.ts +26 -0
- package/dist/types/themeManager/theme.compact.d.ts +4 -0
- package/dist/types/themeManager/theme.default.d.ts +4 -0
- package/dist/types/themeManager/theme.material.d.ts +4 -0
- package/dist/types/themeManager/theme.service.d.ts +13 -0
- package/dist/types/types/dimension.d.ts +8 -0
- package/dist/types/types/events.d.ts +2 -0
- package/dist/types/types/index.d.ts +8 -0
- package/dist/types/types/interfaces.d.ts +768 -0
- package/dist/types/types/plugin.d.ts +9 -0
- package/dist/types/types/plugin.types.d.ts +48 -0
- package/dist/types/types/selection.d.ts +178 -0
- package/dist/types/types/theme.d.ts +7 -0
- package/dist/types/types/viewport.interfaces.d.ts +45 -0
- package/dist/types/utils/browser.d.ts +1 -0
- package/dist/types/utils/closest.polifill.d.ts +0 -0
- package/dist/types/utils/column.utils.d.ts +52 -0
- package/dist/types/utils/consts.d.ts +22 -0
- package/dist/types/utils/events.d.ts +5 -0
- package/dist/types/utils/header.utils.d.ts +2 -0
- package/dist/types/utils/index.d.ts +32 -0
- package/dist/types/utils/key.codes.d.ts +73 -0
- package/dist/types/utils/key.utils.d.ts +13 -0
- package/dist/types/utils/mobile.d.ts +1 -0
- package/dist/types/utils/platform.d.ts +4 -0
- package/dist/types/utils/row-header-utils.d.ts +2 -0
- package/dist/types/utils/store.types.d.ts +97 -0
- package/dist/types/utils/store.utils.d.ts +10 -0
- package/hydrate/index.d.ts +273 -0
- package/hydrate/index.js +33890 -0
- package/hydrate/index.mjs +33882 -0
- package/hydrate/package.json +12 -0
- package/loader/cdn.js +4 -0
- package/loader/index.cjs.js +4 -0
- package/loader/index.d.ts +24 -0
- package/loader/index.es2017.js +4 -0
- package/loader/index.js +5 -0
- package/package.json +101 -0
- package/react/dist/index.d.ts +6191 -0
- package/react/dist/react-datagrid.js +260 -0
- package/react/dist/react-datagrid.umd.cjs +272 -0
- package/standalone/column.service.js +1345 -0
- package/standalone/column.service.js.map +1 -0
- package/standalone/consts.js +30 -0
- package/standalone/consts.js.map +1 -0
- package/standalone/data.store.js +3099 -0
- package/standalone/data.store.js.map +1 -0
- package/standalone/debounce.js +215 -0
- package/standalone/debounce.js.map +1 -0
- package/standalone/dimension.helpers.js +229 -0
- package/standalone/dimension.helpers.js.map +1 -0
- package/standalone/filter.button.js +39 -0
- package/standalone/filter.button.js.map +1 -0
- package/standalone/index.d.ts +68 -0
- package/standalone/index.js +217 -0
- package/standalone/index.js.map +1 -0
- package/standalone/index2.js +140 -0
- package/standalone/index2.js.map +1 -0
- package/standalone/local.scroll.timer.js +207 -0
- package/standalone/local.scroll.timer.js.map +1 -0
- package/standalone/platform.js +90 -0
- package/standalone/platform.js.map +1 -0
- package/standalone/revo-grid.d.ts +11 -0
- package/standalone/revo-grid.js +4884 -0
- package/standalone/revo-grid.js.map +1 -0
- package/standalone/revogr-attribution.d.ts +11 -0
- package/standalone/revogr-attribution.js +12 -0
- package/standalone/revogr-attribution.js.map +1 -0
- package/standalone/revogr-attribution2.js +32 -0
- package/standalone/revogr-attribution2.js.map +1 -0
- package/standalone/revogr-clipboard.d.ts +11 -0
- package/standalone/revogr-clipboard.js +12 -0
- package/standalone/revogr-clipboard.js.map +1 -0
- package/standalone/revogr-clipboard2.js +164 -0
- package/standalone/revogr-clipboard2.js.map +1 -0
- package/standalone/revogr-data.d.ts +11 -0
- package/standalone/revogr-data.js +12 -0
- package/standalone/revogr-data.js.map +1 -0
- package/standalone/revogr-data2.js +378 -0
- package/standalone/revogr-data2.js.map +1 -0
- package/standalone/revogr-edit.d.ts +11 -0
- package/standalone/revogr-edit.js +12 -0
- package/standalone/revogr-edit.js.map +1 -0
- package/standalone/revogr-edit2.js +334 -0
- package/standalone/revogr-edit2.js.map +1 -0
- package/standalone/revogr-extra.d.ts +11 -0
- package/standalone/revogr-extra.js +12 -0
- package/standalone/revogr-extra.js.map +1 -0
- package/standalone/revogr-extra2.js +73 -0
- package/standalone/revogr-extra2.js.map +1 -0
- package/standalone/revogr-filter-panel.d.ts +11 -0
- package/standalone/revogr-filter-panel.js +411 -0
- package/standalone/revogr-filter-panel.js.map +1 -0
- package/standalone/revogr-focus.d.ts +11 -0
- package/standalone/revogr-focus.js +12 -0
- package/standalone/revogr-focus.js.map +1 -0
- package/standalone/revogr-focus2.js +112 -0
- package/standalone/revogr-focus2.js.map +1 -0
- package/standalone/revogr-header.d.ts +11 -0
- package/standalone/revogr-header.js +12 -0
- package/standalone/revogr-header.js.map +1 -0
- package/standalone/revogr-header2.js +707 -0
- package/standalone/revogr-header2.js.map +1 -0
- package/standalone/revogr-order-editor.d.ts +11 -0
- package/standalone/revogr-order-editor.js +12 -0
- package/standalone/revogr-order-editor.js.map +1 -0
- package/standalone/revogr-order-editor2.js +201 -0
- package/standalone/revogr-order-editor2.js.map +1 -0
- package/standalone/revogr-overlay-selection.d.ts +11 -0
- package/standalone/revogr-overlay-selection.js +12 -0
- package/standalone/revogr-overlay-selection.js.map +1 -0
- package/standalone/revogr-overlay-selection2.js +972 -0
- package/standalone/revogr-overlay-selection2.js.map +1 -0
- package/standalone/revogr-row-headers.d.ts +11 -0
- package/standalone/revogr-row-headers.js +12 -0
- package/standalone/revogr-row-headers.js.map +1 -0
- package/standalone/revogr-row-headers2.js +520 -0
- package/standalone/revogr-row-headers2.js.map +1 -0
- package/standalone/revogr-scroll-virtual.d.ts +11 -0
- package/standalone/revogr-scroll-virtual.js +12 -0
- package/standalone/revogr-scroll-virtual.js.map +1 -0
- package/standalone/revogr-scroll-virtual2.js +184 -0
- package/standalone/revogr-scroll-virtual2.js.map +1 -0
- package/standalone/revogr-temp-range.d.ts +11 -0
- package/standalone/revogr-temp-range.js +12 -0
- package/standalone/revogr-temp-range.js.map +1 -0
- package/standalone/revogr-temp-range2.js +93 -0
- package/standalone/revogr-temp-range2.js.map +1 -0
- package/standalone/revogr-viewport-scroll.d.ts +11 -0
- package/standalone/revogr-viewport-scroll.js +12 -0
- package/standalone/revogr-viewport-scroll.js.map +1 -0
- package/standalone/revogr-viewport-scroll2.js +421 -0
- package/standalone/revogr-viewport-scroll2.js.map +1 -0
- package/standalone/selection.utils.js +179 -0
- package/standalone/selection.utils.js.map +1 -0
- package/standalone/throttle.js +75 -0
- package/standalone/throttle.js.map +1 -0
- package/standalone/toNumber.js +282 -0
- package/standalone/toNumber.js.map +1 -0
- package/standalone/vnode-converter.js +46 -0
- package/standalone/vnode-converter.js.map +1 -0
- package/standalone/vnode-html.d.ts +11 -0
- package/standalone/vnode-html.js +12 -0
- package/standalone/vnode-html.js.map +1 -0
|
@@ -0,0 +1,273 @@
|
|
|
1
|
+
/*!
|
|
2
|
+
* Built by LevelSkill.Pro
|
|
3
|
+
*/
|
|
4
|
+
import { v as scaleValue } from './data.store-B-lvmoFH.js';
|
|
5
|
+
import { d as debounce, a as isObject } from './debounce-DTUQ1fY7.js';
|
|
6
|
+
|
|
7
|
+
const initialParams = {
|
|
8
|
+
contentSize: 0,
|
|
9
|
+
clientSize: 0,
|
|
10
|
+
virtualSize: 0,
|
|
11
|
+
maxSize: 0,
|
|
12
|
+
};
|
|
13
|
+
const NO_COORDINATE = -1;
|
|
14
|
+
/**
|
|
15
|
+
* Based on content size, client size and virtual size
|
|
16
|
+
* return full size
|
|
17
|
+
*/
|
|
18
|
+
function getContentSize(contentSize, clientSize, virtualSize = 0) {
|
|
19
|
+
if (virtualSize > contentSize) {
|
|
20
|
+
return 0;
|
|
21
|
+
}
|
|
22
|
+
return contentSize + (virtualSize ? clientSize - virtualSize : 0);
|
|
23
|
+
}
|
|
24
|
+
class LocalScrollService {
|
|
25
|
+
constructor(cfg) {
|
|
26
|
+
this.cfg = cfg;
|
|
27
|
+
this.preventArtificialScroll = {
|
|
28
|
+
rgRow: null,
|
|
29
|
+
rgCol: null,
|
|
30
|
+
};
|
|
31
|
+
// to check if scroll changed
|
|
32
|
+
this.previousScroll = {
|
|
33
|
+
rgRow: NO_COORDINATE,
|
|
34
|
+
rgCol: NO_COORDINATE,
|
|
35
|
+
};
|
|
36
|
+
this.params = {
|
|
37
|
+
rgRow: Object.assign({}, initialParams),
|
|
38
|
+
rgCol: Object.assign({}, initialParams),
|
|
39
|
+
};
|
|
40
|
+
}
|
|
41
|
+
setParams(params, dimension) {
|
|
42
|
+
const virtualContentSize = getContentSize(params.contentSize, params.clientSize, params.virtualSize);
|
|
43
|
+
this.params[dimension] = Object.assign(Object.assign({}, params), { maxSize: virtualContentSize - params.clientSize, virtualContentSize });
|
|
44
|
+
}
|
|
45
|
+
// apply scroll values after scroll done
|
|
46
|
+
async setScroll(e) {
|
|
47
|
+
this.cancelScroll(e.dimension);
|
|
48
|
+
// start frame animation
|
|
49
|
+
const frameAnimation = new Promise((resolve, reject) => {
|
|
50
|
+
// for example safari desktop has issues with animation frame
|
|
51
|
+
if (this.cfg.skipAnimationFrame) {
|
|
52
|
+
return resolve();
|
|
53
|
+
}
|
|
54
|
+
const animationId = window.requestAnimationFrame(() => {
|
|
55
|
+
resolve();
|
|
56
|
+
});
|
|
57
|
+
this.preventArtificialScroll[e.dimension] = reject.bind(null, animationId);
|
|
58
|
+
});
|
|
59
|
+
try {
|
|
60
|
+
await frameAnimation;
|
|
61
|
+
const params = this.getParams(e.dimension);
|
|
62
|
+
e.coordinate = Math.ceil(e.coordinate);
|
|
63
|
+
this.previousScroll[e.dimension] = this.wrapCoordinate(e.coordinate, params);
|
|
64
|
+
this.preventArtificialScroll[e.dimension] = null;
|
|
65
|
+
this.cfg.applyScroll(Object.assign(Object.assign({}, e), { coordinate: params.virtualSize
|
|
66
|
+
? this.convert(e.coordinate, params, false)
|
|
67
|
+
: e.coordinate }));
|
|
68
|
+
}
|
|
69
|
+
catch (id) {
|
|
70
|
+
window.cancelAnimationFrame(id);
|
|
71
|
+
}
|
|
72
|
+
}
|
|
73
|
+
/**
|
|
74
|
+
* On scroll event started
|
|
75
|
+
*/
|
|
76
|
+
scroll(coordinate, dimension, force = false, delta, outside = false) {
|
|
77
|
+
// cancel all previous scrolls for same dimension
|
|
78
|
+
this.cancelScroll(dimension);
|
|
79
|
+
// drop if no change
|
|
80
|
+
if (!force && this.previousScroll[dimension] === coordinate) {
|
|
81
|
+
this.previousScroll[dimension] = NO_COORDINATE;
|
|
82
|
+
return;
|
|
83
|
+
}
|
|
84
|
+
const param = this.getParams(dimension);
|
|
85
|
+
// let component know about scroll event started
|
|
86
|
+
this.cfg.runScroll({
|
|
87
|
+
dimension: dimension,
|
|
88
|
+
coordinate: param.virtualSize
|
|
89
|
+
? this.convert(coordinate, param)
|
|
90
|
+
: coordinate,
|
|
91
|
+
delta,
|
|
92
|
+
outside,
|
|
93
|
+
});
|
|
94
|
+
}
|
|
95
|
+
getParams(dimension) {
|
|
96
|
+
return this.params[dimension];
|
|
97
|
+
}
|
|
98
|
+
// check if scroll outside of region to avoid looping
|
|
99
|
+
wrapCoordinate(c, param) {
|
|
100
|
+
if (c < 0) {
|
|
101
|
+
return NO_COORDINATE;
|
|
102
|
+
}
|
|
103
|
+
if (typeof param.maxSize === 'number' && c > param.maxSize) {
|
|
104
|
+
return param.maxSize;
|
|
105
|
+
}
|
|
106
|
+
return c;
|
|
107
|
+
}
|
|
108
|
+
// prevent already started scroll, performance optimization
|
|
109
|
+
cancelScroll(dimension) {
|
|
110
|
+
var _a, _b;
|
|
111
|
+
(_b = (_a = this.preventArtificialScroll)[dimension]) === null || _b === void 0 ? void 0 : _b.call(_a);
|
|
112
|
+
this.preventArtificialScroll[dimension] = null;
|
|
113
|
+
}
|
|
114
|
+
/* convert virtual to real and back, scale range */
|
|
115
|
+
convert(pos, param, toReal = true) {
|
|
116
|
+
var _a;
|
|
117
|
+
const minRange = param.clientSize;
|
|
118
|
+
const from = [0, ((_a = param.virtualContentSize) !== null && _a !== void 0 ? _a : minRange) - minRange];
|
|
119
|
+
const to = [0, param.contentSize - param.virtualSize];
|
|
120
|
+
if (toReal) {
|
|
121
|
+
return scaleValue(pos, from, to);
|
|
122
|
+
}
|
|
123
|
+
return scaleValue(pos, to, from);
|
|
124
|
+
}
|
|
125
|
+
}
|
|
126
|
+
|
|
127
|
+
/**
|
|
128
|
+
* Apply changes only if mousewheel event happened some time ago (scrollThrottling)
|
|
129
|
+
*/
|
|
130
|
+
class LocalScrollTimer {
|
|
131
|
+
constructor(scrollThrottling = 10) {
|
|
132
|
+
this.scrollThrottling = scrollThrottling;
|
|
133
|
+
/**
|
|
134
|
+
* Last mw event time for trigger scroll function below
|
|
135
|
+
* If mousewheel function was ignored we still need to trigger render
|
|
136
|
+
*/
|
|
137
|
+
this.mouseWheelScrollTimestamp = {
|
|
138
|
+
rgCol: 0,
|
|
139
|
+
rgRow: 0,
|
|
140
|
+
};
|
|
141
|
+
this.lastKnownScrollCoordinate = {
|
|
142
|
+
rgCol: 0,
|
|
143
|
+
rgRow: 0,
|
|
144
|
+
};
|
|
145
|
+
/**
|
|
146
|
+
* Check if scroll is ready to accept new value
|
|
147
|
+
* this is an edge case for scroll events
|
|
148
|
+
* when we need to apply scroll after throttling
|
|
149
|
+
*/
|
|
150
|
+
this.lastScrollUpdateCallbacks = {};
|
|
151
|
+
}
|
|
152
|
+
setCoordinate(e) {
|
|
153
|
+
this.lastKnownScrollCoordinate[e.dimension] = e.coordinate;
|
|
154
|
+
}
|
|
155
|
+
/**
|
|
156
|
+
* Remember last mw event time
|
|
157
|
+
*/
|
|
158
|
+
latestScrollUpdate(dimension) {
|
|
159
|
+
this.mouseWheelScrollTimestamp[dimension] = new Date().getTime();
|
|
160
|
+
}
|
|
161
|
+
isReady(type, coordinate) {
|
|
162
|
+
// if there is a callback, clear it
|
|
163
|
+
if (this.lastScrollUpdateCallbacks[type]) {
|
|
164
|
+
this.clearLastScrollUpdate(type);
|
|
165
|
+
}
|
|
166
|
+
// apply after throttling
|
|
167
|
+
return this.verifyChange(type, coordinate);
|
|
168
|
+
}
|
|
169
|
+
verifyChange(type, coordinate) {
|
|
170
|
+
const now = new Date().getTime();
|
|
171
|
+
const change = now - this.mouseWheelScrollTimestamp[type];
|
|
172
|
+
return change > this.scrollThrottling &&
|
|
173
|
+
coordinate !== this.lastKnownScrollCoordinate[type];
|
|
174
|
+
}
|
|
175
|
+
clearLastScrollUpdate(type) {
|
|
176
|
+
var _a, _b;
|
|
177
|
+
clearTimeout((_b = (_a = this.lastScrollUpdateCallbacks[type]) === null || _a === void 0 ? void 0 : _a.timeout) !== null && _b !== void 0 ? _b : 0);
|
|
178
|
+
delete this.lastScrollUpdateCallbacks[type];
|
|
179
|
+
}
|
|
180
|
+
throttleLastScrollUpdate(type, coordinate, lastScrollUpdate) {
|
|
181
|
+
// if scrollThrottling is set
|
|
182
|
+
// we need to throttle the last scroll event
|
|
183
|
+
if (this.scrollThrottling) {
|
|
184
|
+
this.clearLastScrollUpdate(type);
|
|
185
|
+
// save lastScrollUpdate callback
|
|
186
|
+
const callback = this.lastScrollUpdateCallbacks[type] = {
|
|
187
|
+
callback: lastScrollUpdate,
|
|
188
|
+
timestamp: new Date().getTime(),
|
|
189
|
+
coordinate,
|
|
190
|
+
timeout: 0,
|
|
191
|
+
};
|
|
192
|
+
callback.timeout = setTimeout(() => {
|
|
193
|
+
// clear timeout
|
|
194
|
+
this.clearLastScrollUpdate(type);
|
|
195
|
+
// if scrollThrottling is set, and the last scroll event happened before the timeout started
|
|
196
|
+
// we need to throttle the last scroll event
|
|
197
|
+
if (this.mouseWheelScrollTimestamp[type] < callback.timestamp && this.verifyChange(type, callback.coordinate)) {
|
|
198
|
+
callback.callback();
|
|
199
|
+
}
|
|
200
|
+
}, this.scrollThrottling + 50);
|
|
201
|
+
}
|
|
202
|
+
}
|
|
203
|
+
}
|
|
204
|
+
|
|
205
|
+
/** Error message constants. */
|
|
206
|
+
var FUNC_ERROR_TEXT = 'Expected a function';
|
|
207
|
+
|
|
208
|
+
/**
|
|
209
|
+
* Creates a throttled function that only invokes `func` at most once per
|
|
210
|
+
* every `wait` milliseconds. The throttled function comes with a `cancel`
|
|
211
|
+
* method to cancel delayed `func` invocations and a `flush` method to
|
|
212
|
+
* immediately invoke them. Provide `options` to indicate whether `func`
|
|
213
|
+
* should be invoked on the leading and/or trailing edge of the `wait`
|
|
214
|
+
* timeout. The `func` is invoked with the last arguments provided to the
|
|
215
|
+
* throttled function. Subsequent calls to the throttled function return the
|
|
216
|
+
* result of the last `func` invocation.
|
|
217
|
+
*
|
|
218
|
+
* **Note:** If `leading` and `trailing` options are `true`, `func` is
|
|
219
|
+
* invoked on the trailing edge of the timeout only if the throttled function
|
|
220
|
+
* is invoked more than once during the `wait` timeout.
|
|
221
|
+
*
|
|
222
|
+
* If `wait` is `0` and `leading` is `false`, `func` invocation is deferred
|
|
223
|
+
* until to the next tick, similar to `setTimeout` with a timeout of `0`.
|
|
224
|
+
*
|
|
225
|
+
* See [David Corbacho's article](https://css-tricks.com/debouncing-throttling-explained-examples/)
|
|
226
|
+
* for details over the differences between `_.throttle` and `_.debounce`.
|
|
227
|
+
*
|
|
228
|
+
* @static
|
|
229
|
+
* @memberOf _
|
|
230
|
+
* @since 0.1.0
|
|
231
|
+
* @category Function
|
|
232
|
+
* @param {Function} func The function to throttle.
|
|
233
|
+
* @param {number} [wait=0] The number of milliseconds to throttle invocations to.
|
|
234
|
+
* @param {Object} [options={}] The options object.
|
|
235
|
+
* @param {boolean} [options.leading=true]
|
|
236
|
+
* Specify invoking on the leading edge of the timeout.
|
|
237
|
+
* @param {boolean} [options.trailing=true]
|
|
238
|
+
* Specify invoking on the trailing edge of the timeout.
|
|
239
|
+
* @returns {Function} Returns the new throttled function.
|
|
240
|
+
* @example
|
|
241
|
+
*
|
|
242
|
+
* // Avoid excessively updating the position while scrolling.
|
|
243
|
+
* jQuery(window).on('scroll', _.throttle(updatePosition, 100));
|
|
244
|
+
*
|
|
245
|
+
* // Invoke `renewToken` when the click event is fired, but not more than once every 5 minutes.
|
|
246
|
+
* var throttled = _.throttle(renewToken, 300000, { 'trailing': false });
|
|
247
|
+
* jQuery(element).on('click', throttled);
|
|
248
|
+
*
|
|
249
|
+
* // Cancel the trailing throttled invocation.
|
|
250
|
+
* jQuery(window).on('popstate', throttled.cancel);
|
|
251
|
+
*/
|
|
252
|
+
function throttle(func, wait, options) {
|
|
253
|
+
var leading = true,
|
|
254
|
+
trailing = true;
|
|
255
|
+
|
|
256
|
+
if (typeof func != 'function') {
|
|
257
|
+
throw new TypeError(FUNC_ERROR_TEXT);
|
|
258
|
+
}
|
|
259
|
+
if (isObject(options)) {
|
|
260
|
+
leading = 'leading' in options ? !!options.leading : leading;
|
|
261
|
+
trailing = 'trailing' in options ? !!options.trailing : trailing;
|
|
262
|
+
}
|
|
263
|
+
return debounce(func, wait, {
|
|
264
|
+
'leading': leading,
|
|
265
|
+
'maxWait': wait,
|
|
266
|
+
'trailing': trailing
|
|
267
|
+
});
|
|
268
|
+
}
|
|
269
|
+
|
|
270
|
+
export { LocalScrollTimer as L, LocalScrollService as a, getContentSize as g, throttle as t };
|
|
271
|
+
//# sourceMappingURL=throttle-DiUrHjcY.js.map
|
|
272
|
+
|
|
273
|
+
//# sourceMappingURL=throttle-DiUrHjcY.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"throttle-DiUrHjcY.js","sources":["src/services/local.scroll.service.ts","src/services/local.scroll.timer.ts","node_modules/lodash/throttle.js"],"sourcesContent":["import type { DimensionType, ViewPortScrollEvent } from '@type';\r\nimport { scaleValue } from '../utils';\r\n\r\ninterface Config {\r\n skipAnimationFrame?: boolean;\r\n // scroll event inited and direction cached\r\n // scrollingService.proxyScroll get tiggered\r\n // setScroll event called from scrollingService\r\n runScroll(e: ViewPortScrollEvent): void;\r\n // all operation finished, apply scroll values\r\n applyScroll(e: ViewPortScrollEvent): void;\r\n}\r\n\r\ntype Params = {\r\n contentSize: number;\r\n virtualContentSize?: number;\r\n clientSize: number;\r\n virtualSize: number;\r\n maxSize?: number;\r\n};\r\n\r\nconst initialParams: Params = {\r\n contentSize: 0,\r\n clientSize: 0,\r\n virtualSize: 0,\r\n maxSize: 0,\r\n};\r\nconst NO_COORDINATE = -1;\r\n\r\n/**\r\n * Based on content size, client size and virtual size\r\n * return full size\r\n */\r\nexport function getContentSize(\r\n contentSize: number,\r\n clientSize: number,\r\n virtualSize = 0,\r\n): number {\r\n if (virtualSize > contentSize) {\r\n return 0;\r\n }\r\n return contentSize + (virtualSize ? clientSize - virtualSize : 0);\r\n}\r\n\r\nexport default class LocalScrollService {\r\n private preventArtificialScroll: Record<DimensionType, (() => void) | null> = {\r\n rgRow: null,\r\n rgCol: null,\r\n };\r\n // to check if scroll changed\r\n private previousScroll: Record<DimensionType, number> = {\r\n rgRow: NO_COORDINATE,\r\n rgCol: NO_COORDINATE,\r\n };\r\n private params: Record<DimensionType, Params> = {\r\n rgRow: { ...initialParams },\r\n rgCol: { ...initialParams },\r\n };\r\n\r\n constructor(private cfg: Config) {}\r\n\r\n setParams(params: Params, dimension: DimensionType) {\r\n const virtualContentSize = getContentSize(\r\n params.contentSize,\r\n params.clientSize,\r\n params.virtualSize,\r\n );\r\n this.params[dimension] = {\r\n ...params,\r\n maxSize: virtualContentSize - params.clientSize,\r\n virtualContentSize,\r\n };\r\n }\r\n\r\n // apply scroll values after scroll done\r\n async setScroll(e: ViewPortScrollEvent) {\r\n this.cancelScroll(e.dimension);\r\n\r\n // start frame animation\r\n const frameAnimation = new Promise<void>((resolve, reject) => {\r\n // for example safari desktop has issues with animation frame\r\n if (this.cfg.skipAnimationFrame) {\r\n return resolve();\r\n }\r\n const animationId = window.requestAnimationFrame(() => {\r\n resolve();\r\n });\r\n this.preventArtificialScroll[e.dimension] = reject.bind(\r\n null,\r\n animationId,\r\n );\r\n });\r\n\r\n try {\r\n await frameAnimation;\r\n const params = this.getParams(e.dimension);\r\n e.coordinate = Math.ceil(e.coordinate);\r\n this.previousScroll[e.dimension] = this.wrapCoordinate(\r\n e.coordinate,\r\n params,\r\n );\r\n this.preventArtificialScroll[e.dimension] = null;\r\n this.cfg.applyScroll({\r\n ...e,\r\n coordinate: params.virtualSize\r\n ? this.convert(e.coordinate, params, false)\r\n : e.coordinate,\r\n });\r\n } catch (id) {\r\n window.cancelAnimationFrame(id);\r\n }\r\n }\r\n\r\n /**\r\n * On scroll event started\r\n */\r\n scroll(\r\n coordinate: number,\r\n dimension: DimensionType,\r\n force = false,\r\n delta?: number,\r\n outside = false,\r\n ) {\r\n // cancel all previous scrolls for same dimension\r\n this.cancelScroll(dimension);\r\n\r\n // drop if no change\r\n if (!force && this.previousScroll[dimension] === coordinate) {\r\n this.previousScroll[dimension] = NO_COORDINATE;\r\n return;\r\n }\r\n\r\n const param = this.getParams(dimension);\r\n // let component know about scroll event started\r\n this.cfg.runScroll({\r\n dimension: dimension,\r\n coordinate: param.virtualSize\r\n ? this.convert(coordinate, param)\r\n : coordinate,\r\n delta,\r\n outside,\r\n });\r\n }\r\n\r\n private getParams(dimension: DimensionType): Params {\r\n return this.params[dimension];\r\n }\r\n\r\n // check if scroll outside of region to avoid looping\r\n private wrapCoordinate(c: number, param: Params): number {\r\n if (c < 0) {\r\n return NO_COORDINATE;\r\n }\r\n\r\n if (typeof param.maxSize === 'number' && c > param.maxSize) {\r\n return param.maxSize;\r\n }\r\n return c;\r\n }\r\n\r\n // prevent already started scroll, performance optimization\r\n private cancelScroll(dimension: DimensionType) {\r\n this.preventArtificialScroll[dimension]?.();\r\n this.preventArtificialScroll[dimension] = null;\r\n }\r\n\r\n /* convert virtual to real and back, scale range */\r\n private convert(pos: number, param: Params, toReal = true): number {\r\n const minRange = param.clientSize;\r\n const from: [number, number] = [0, (param.virtualContentSize ?? minRange) - minRange];\r\n const to: [number, number] = [0, param.contentSize - param.virtualSize];\r\n if (toReal) {\r\n return scaleValue(pos, from, to);\r\n }\r\n return scaleValue(pos, to, from);\r\n }\r\n}\r\n","import type { DimensionType } from '@type';\r\n/**\r\n * Apply changes only if mousewheel event happened some time ago (scrollThrottling)\r\n */\r\nexport class LocalScrollTimer {\r\n /**\r\n * Last mw event time for trigger scroll function below\r\n * If mousewheel function was ignored we still need to trigger render\r\n */\r\n private mouseWheelScrollTimestamp: Record<DimensionType, number> = {\r\n rgCol: 0,\r\n rgRow: 0,\r\n };\r\n private lastKnownScrollCoordinate: Record<DimensionType, number> = {\r\n rgCol: 0,\r\n rgRow: 0,\r\n };\r\n\r\n constructor(private scrollThrottling = 10) {}\r\n\r\n setCoordinate(e: { dimension: DimensionType; coordinate: number }) {\r\n this.lastKnownScrollCoordinate[e.dimension] = e.coordinate;\r\n }\r\n\r\n /**\r\n * Remember last mw event time\r\n */\r\n latestScrollUpdate(dimension: DimensionType) {\r\n this.mouseWheelScrollTimestamp[dimension] = new Date().getTime();\r\n }\r\n\r\n isReady(type: DimensionType, coordinate: number) {\r\n // if there is a callback, clear it\r\n if (this.lastScrollUpdateCallbacks[type]) {\r\n this.clearLastScrollUpdate(type)\r\n }\r\n // apply after throttling\r\n return this.verifyChange(type, coordinate);\r\n }\r\n\r\n private verifyChange(type: DimensionType, coordinate: number) {\r\n const now = new Date().getTime();\r\n const change = now - this.mouseWheelScrollTimestamp[type];\r\n return change > this.scrollThrottling &&\r\n coordinate !== this.lastKnownScrollCoordinate[type];\r\n }\r\n\r\n /**\r\n * Check if scroll is ready to accept new value\r\n * this is an edge case for scroll events\r\n * when we need to apply scroll after throttling\r\n */\r\n private lastScrollUpdateCallbacks: Partial<Record<DimensionType, {\r\n callback: () => void;\r\n timestamp: number;\r\n coordinate: number;\r\n timeout: number;\r\n }>> = {};\r\n\r\n private clearLastScrollUpdate(type: DimensionType) {\r\n clearTimeout(this.lastScrollUpdateCallbacks[type]?.timeout ?? 0);\r\n delete this.lastScrollUpdateCallbacks[type];\r\n }\r\n\r\n throttleLastScrollUpdate(type: DimensionType, coordinate: number, lastScrollUpdate: () => void) {\r\n // if scrollThrottling is set\r\n // we need to throttle the last scroll event\r\n if (this.scrollThrottling) {\r\n this.clearLastScrollUpdate(type)\r\n // save lastScrollUpdate callback\r\n const callback = this.lastScrollUpdateCallbacks[type] = {\r\n callback: lastScrollUpdate,\r\n timestamp: new Date().getTime(),\r\n coordinate,\r\n timeout: 0 as any,\r\n };\r\n callback.timeout = setTimeout(() => {\r\n // clear timeout\r\n this.clearLastScrollUpdate(type)\r\n // if scrollThrottling is set, and the last scroll event happened before the timeout started\r\n // we need to throttle the last scroll event\r\n if (this.mouseWheelScrollTimestamp[type] < callback.timestamp && this.verifyChange(type, callback.coordinate)) {\r\n callback.callback();\r\n }\r\n }, this.scrollThrottling + 50);\r\n }\r\n }\r\n}\r\n","import debounce from './debounce.js';\nimport isObject from './isObject.js';\n\n/** Error message constants. */\nvar FUNC_ERROR_TEXT = 'Expected a function';\n\n/**\n * Creates a throttled function that only invokes `func` at most once per\n * every `wait` milliseconds. The throttled function comes with a `cancel`\n * method to cancel delayed `func` invocations and a `flush` method to\n * immediately invoke them. Provide `options` to indicate whether `func`\n * should be invoked on the leading and/or trailing edge of the `wait`\n * timeout. The `func` is invoked with the last arguments provided to the\n * throttled function. Subsequent calls to the throttled function return the\n * result of the last `func` invocation.\n *\n * **Note:** If `leading` and `trailing` options are `true`, `func` is\n * invoked on the trailing edge of the timeout only if the throttled function\n * is invoked more than once during the `wait` timeout.\n *\n * If `wait` is `0` and `leading` is `false`, `func` invocation is deferred\n * until to the next tick, similar to `setTimeout` with a timeout of `0`.\n *\n * See [David Corbacho's article](https://css-tricks.com/debouncing-throttling-explained-examples/)\n * for details over the differences between `_.throttle` and `_.debounce`.\n *\n * @static\n * @memberOf _\n * @since 0.1.0\n * @category Function\n * @param {Function} func The function to throttle.\n * @param {number} [wait=0] The number of milliseconds to throttle invocations to.\n * @param {Object} [options={}] The options object.\n * @param {boolean} [options.leading=true]\n * Specify invoking on the leading edge of the timeout.\n * @param {boolean} [options.trailing=true]\n * Specify invoking on the trailing edge of the timeout.\n * @returns {Function} Returns the new throttled function.\n * @example\n *\n * // Avoid excessively updating the position while scrolling.\n * jQuery(window).on('scroll', _.throttle(updatePosition, 100));\n *\n * // Invoke `renewToken` when the click event is fired, but not more than once every 5 minutes.\n * var throttled = _.throttle(renewToken, 300000, { 'trailing': false });\n * jQuery(element).on('click', throttled);\n *\n * // Cancel the trailing throttled invocation.\n * jQuery(window).on('popstate', throttled.cancel);\n */\nfunction throttle(func, wait, options) {\n var leading = true,\n trailing = true;\n\n if (typeof func != 'function') {\n throw new TypeError(FUNC_ERROR_TEXT);\n }\n if (isObject(options)) {\n leading = 'leading' in options ? !!options.leading : leading;\n trailing = 'trailing' in options ? !!options.trailing : trailing;\n }\n return debounce(func, wait, {\n 'leading': leading,\n 'maxWait': wait,\n 'trailing': trailing\n });\n}\n\nexport default throttle;\n"],"names":[],"mappings":"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","x_google_ignoreList":[2]}
|
|
@@ -0,0 +1,53 @@
|
|
|
1
|
+
/*!
|
|
2
|
+
* Built by LevelSkill.Pro
|
|
3
|
+
*/
|
|
4
|
+
/**
|
|
5
|
+
* Collects data for pinned columns in the required @ViewportProps format.
|
|
6
|
+
*/
|
|
7
|
+
/**
|
|
8
|
+
* Represents the slot names for the viewport slots.
|
|
9
|
+
*/
|
|
10
|
+
const HEADER_SLOT = 'header'; // Slot name for the header slot
|
|
11
|
+
const FOOTER_SLOT = 'footer'; // Slot name for the footer slot
|
|
12
|
+
const CONTENT_SLOT = 'content'; // Slot name for the content slot
|
|
13
|
+
const DATA_SLOT = 'data'; // Slot name for the data slot
|
|
14
|
+
/**
|
|
15
|
+
* Returns the last visible cell in the viewport for a given row type.
|
|
16
|
+
* Coordinates are not zero-based and are relative to the viewport.
|
|
17
|
+
* If needed to be zero-based they can be adjusted by subtracting 1.
|
|
18
|
+
*/
|
|
19
|
+
function getLastCell(data, rowType) {
|
|
20
|
+
// Get the last visible column count from the viewport column data.
|
|
21
|
+
const lastVisibleColumnCount = data.viewports[data.colType].store.get('realCount');
|
|
22
|
+
// Get the last visible row count for the given row type from the viewport column data.
|
|
23
|
+
const lastVisibleRowCount = data.viewports[rowType].store.get('realCount');
|
|
24
|
+
// Return the last visible cell with the last visible column count and row count.
|
|
25
|
+
return {
|
|
26
|
+
x: lastVisibleColumnCount,
|
|
27
|
+
y: lastVisibleRowCount,
|
|
28
|
+
};
|
|
29
|
+
}
|
|
30
|
+
function viewportDataPartition(data, type, slot, fixed) {
|
|
31
|
+
return {
|
|
32
|
+
colData: data.colStore,
|
|
33
|
+
viewportCol: data.viewports[data.colType].store,
|
|
34
|
+
viewportRow: data.viewports[type].store,
|
|
35
|
+
// lastCell is the last real coordinate + 1
|
|
36
|
+
lastCell: getLastCell(data, type),
|
|
37
|
+
slot,
|
|
38
|
+
type,
|
|
39
|
+
canDrag: !fixed,
|
|
40
|
+
position: data.position,
|
|
41
|
+
dataStore: data.rowStores[type].store,
|
|
42
|
+
dimensionCol: data.dimensions[data.colType].store,
|
|
43
|
+
dimensionRow: data.dimensions[type].store,
|
|
44
|
+
style: fixed
|
|
45
|
+
? { height: `${data.dimensions[type].store.get('realSize')}px` }
|
|
46
|
+
: undefined,
|
|
47
|
+
};
|
|
48
|
+
}
|
|
49
|
+
|
|
50
|
+
export { CONTENT_SLOT as C, DATA_SLOT as D, FOOTER_SLOT as F, HEADER_SLOT as H, viewportDataPartition as v };
|
|
51
|
+
//# sourceMappingURL=viewport.helpers-Ch4AQMMg.js.map
|
|
52
|
+
|
|
53
|
+
//# sourceMappingURL=viewport.helpers-Ch4AQMMg.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"viewport.helpers-Ch4AQMMg.js","sources":["src/components/revoGrid/viewport.helpers.ts"],"sourcesContent":["/**\r\n * Collects data for pinned columns in the required @ViewportProps format.\r\n */\r\n\r\nimport type {\r\n DimensionRows,\r\n MultiDimensionType,\r\n SlotType,\r\n Cell,\r\n ViewportColumn,\r\n ColumnRegular,\r\n DimensionCols,\r\n ViewportState,\r\n DimensionSettingsState,\r\n DataType,\r\n} from '@type';\r\nimport type { Observable } from '../../utils';\r\nimport type { DSourceState } from '../../store';\r\n/**\r\n * Represents the slot names for the viewport slots.\r\n */\r\nexport const HEADER_SLOT = 'header'; // Slot name for the header slot\r\nexport const FOOTER_SLOT = 'footer'; // Slot name for the footer slot\r\nexport const CONTENT_SLOT = 'content'; // Slot name for the content slot\r\nexport const DATA_SLOT = 'data'; // Slot name for the data slot\r\n\r\n/**\r\n * Returns the last visible cell in the viewport for a given row type.\r\n * Coordinates are not zero-based and are relative to the viewport.\r\n * If needed to be zero-based they can be adjusted by subtracting 1.\r\n */\r\nexport function getLastCell(\r\n data: ViewportColumn,\r\n rowType: MultiDimensionType,\r\n): Cell {\r\n // Get the last visible column count from the viewport column data.\r\n const lastVisibleColumnCount = data.viewports[data.colType].store.get('realCount');\r\n\r\n // Get the last visible row count for the given row type from the viewport column data.\r\n const lastVisibleRowCount = data.viewports[rowType].store.get('realCount');\r\n\r\n // Return the last visible cell with the last visible column count and row count.\r\n return {\r\n x: lastVisibleColumnCount,\r\n y: lastVisibleRowCount,\r\n };\r\n}\r\n\r\n/**\r\n * Represents the partition of viewport data.\r\n */\r\nexport type VPPartition = {\r\n colData: Observable<DSourceState<ColumnRegular, DimensionCols>>;\r\n viewportCol: Observable<ViewportState>;\r\n viewportRow: Observable<ViewportState>;\r\n lastCell: Cell;\r\n slot: SlotType;\r\n type: DimensionRows;\r\n canDrag: boolean;\r\n position: Cell;\r\n dataStore: Observable<DSourceState<DataType, DimensionRows>>;\r\n dimensionCol: Observable<DimensionSettingsState>;\r\n dimensionRow: Observable<DimensionSettingsState>;\r\n style?: { height: string };\r\n};\r\n\r\nexport function viewportDataPartition(\r\n data: ViewportColumn,\r\n type: DimensionRows,\r\n slot: SlotType,\r\n fixed?: boolean,\r\n): VPPartition {\r\n return {\r\n colData: data.colStore,\r\n viewportCol: data.viewports[data.colType].store,\r\n viewportRow: data.viewports[type].store,\r\n // lastCell is the last real coordinate + 1\r\n lastCell: getLastCell(data, type),\r\n slot,\r\n type,\r\n canDrag: !fixed,\r\n position: data.position,\r\n dataStore: data.rowStores[type].store,\r\n dimensionCol: data.dimensions[data.colType].store,\r\n dimensionRow: data.dimensions[type].store,\r\n style: fixed\r\n ? { height: `${data.dimensions[type].store.get('realSize')}px` }\r\n : undefined,\r\n };\r\n}\r\n"],"names":[],"mappings":";;;AAAA;;AAEG;AAgBH;;AAEG;AACU,MAAA,WAAW,GAAG,SAAS;AACvB,MAAA,WAAW,GAAG,SAAS;AACvB,MAAA,YAAY,GAAG,UAAU;AACzB,MAAA,SAAS,GAAG,OAAO;AAEhC;;;;AAIG;AACa,SAAA,WAAW,CACzB,IAAoB,EACpB,OAA2B,EAAA;;AAG3B,IAAA,MAAM,sBAAsB,GAAG,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,KAAK,CAAC,GAAG,CAAC,WAAW,CAAC;;AAGlF,IAAA,MAAM,mBAAmB,GAAG,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC,CAAC,KAAK,CAAC,GAAG,CAAC,WAAW,CAAC;;IAG1E,OAAO;AACL,QAAA,CAAC,EAAE,sBAAsB;AACzB,QAAA,CAAC,EAAE,mBAAmB;KACvB;AACH;AAoBM,SAAU,qBAAqB,CACnC,IAAoB,EACpB,IAAmB,EACnB,IAAc,EACd,KAAe,EAAA;IAEf,OAAO;QACL,OAAO,EAAE,IAAI,CAAC,QAAQ;QACtB,WAAW,EAAE,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,KAAK;QAC/C,WAAW,EAAE,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,CAAC,KAAK;;AAEvC,QAAA,QAAQ,EAAE,WAAW,CAAC,IAAI,EAAE,IAAI,CAAC;QACjC,IAAI;QACJ,IAAI;QACJ,OAAO,EAAE,CAAC,KAAK;QACf,QAAQ,EAAE,IAAI,CAAC,QAAQ;QACvB,SAAS,EAAE,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,CAAC,KAAK;QACrC,YAAY,EAAE,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,KAAK;QACjD,YAAY,EAAE,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,CAAC,KAAK;AACzC,QAAA,KAAK,EAAE;AACL,cAAE,EAAE,MAAM,EAAE,CAAG,EAAA,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,CAAC,KAAK,CAAC,GAAG,CAAC,UAAU,CAAC,IAAI;AAC9D,cAAE,SAAS;KACd;AACH;;;;"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
module.exports = require('./cjs/index.cjs.js');
|
package/dist/index.d.ts
ADDED
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export * from './types';
|
package/dist/index.js
ADDED
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export * from './esm/index.js';
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
/*!
|
|
2
|
+
* Built by LevelSkill.Pro
|
|
3
|
+
*/
|
|
4
|
+
import './index-BAoInZ4V.js';
|
|
5
|
+
|
|
6
|
+
function appGlobalScript () {
|
|
7
|
+
}
|
|
8
|
+
|
|
9
|
+
const globalScripts = appGlobalScript;
|
|
10
|
+
|
|
11
|
+
export { globalScripts as g };
|
|
12
|
+
//# sourceMappingURL=app-globals-FBz64o-g.js.map
|
|
13
|
+
|
|
14
|
+
//# sourceMappingURL=app-globals-FBz64o-g.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"app-globals-FBz64o-g.js","sources":["src/global/global.ts","@stencil/core/internal/app-globals"],"sourcesContent":["import { setMode } from '@stencil/core';\r\nimport { getTheme } from '../themeManager/theme.service';\r\n\r\nexport default function() {\r\n setMode(elm => {\r\n let theme = (elm as HTMLRevoGridElement).theme || elm.getAttribute('theme');\r\n if (typeof theme === 'string') {\r\n theme = theme.trim();\r\n }\r\n\r\n const parsedTheme = getTheme(theme);\r\n if (parsedTheme !== theme) {\r\n elm.setAttribute('theme', parsedTheme);\r\n }\r\n return parsedTheme;\r\n });\r\n}\r\n","import appGlobalScript from 'C:/work/dev/lsp-grid/src/global/global.ts';\nexport const globalScripts = appGlobalScript;\nexport const globalStyles = \"\";\n"],"names":[],"mappings":";;;;;AAGc,wBAAA,IAAA;AAad;;ACfY,MAAC,aAAa,GAAG;;;;"}
|
|
@@ -0,0 +1,98 @@
|
|
|
1
|
+
/*!
|
|
2
|
+
* Built by LevelSkill.Pro
|
|
3
|
+
*/
|
|
4
|
+
import { h, B as Build } from './index-BAoInZ4V.js';
|
|
5
|
+
import { A as DATA_ROW, J as DRAG_ICON_CLASS, K as DRAGGABLE_CLASS } from './data.store-B-lvmoFH.js';
|
|
6
|
+
import { k as GROUP_EXPAND_BTN, l as GROUP_EXPAND_EVENT, G as GROUP_DEPTH, f as GROUP_EXPANDED, P as PSEUDO_GROUP_ITEM, T as isRowDragService, z as getCellDataParsed } from './column.service-CTqFIQUy.js';
|
|
7
|
+
|
|
8
|
+
const SortingSign = ({ column }) => {
|
|
9
|
+
var _a;
|
|
10
|
+
return h("i", { class: (_a = column === null || column === void 0 ? void 0 : column.order) !== null && _a !== void 0 ? _a : 'sort-off' });
|
|
11
|
+
};
|
|
12
|
+
|
|
13
|
+
const PADDING_DEPTH = 10;
|
|
14
|
+
const RowRenderer = ({ rowClass, index, size, start, depth }, cells) => {
|
|
15
|
+
const props = Object.assign({ [DATA_ROW]: index });
|
|
16
|
+
return (h("div", Object.assign({}, props, { class: `rgRow ${rowClass || ''}`, style: {
|
|
17
|
+
height: `${size}px`,
|
|
18
|
+
transform: `translateY(${start}px)`,
|
|
19
|
+
paddingLeft: depth ? `${PADDING_DEPTH * depth}px` : undefined,
|
|
20
|
+
} }), cells));
|
|
21
|
+
};
|
|
22
|
+
|
|
23
|
+
function expandEvent(e, model, virtualIndex) {
|
|
24
|
+
var _a;
|
|
25
|
+
const event = new CustomEvent(GROUP_EXPAND_EVENT, {
|
|
26
|
+
detail: {
|
|
27
|
+
model,
|
|
28
|
+
virtualIndex,
|
|
29
|
+
},
|
|
30
|
+
cancelable: true,
|
|
31
|
+
bubbles: true,
|
|
32
|
+
});
|
|
33
|
+
(_a = e.target) === null || _a === void 0 ? void 0 : _a.dispatchEvent(event);
|
|
34
|
+
}
|
|
35
|
+
const GroupingRowRenderer = (props) => {
|
|
36
|
+
const { model, itemIndex, hasExpand, groupingCustomRenderer } = props;
|
|
37
|
+
const name = model[PSEUDO_GROUP_ITEM];
|
|
38
|
+
const expanded = model[GROUP_EXPANDED];
|
|
39
|
+
const depth = parseInt(model[GROUP_DEPTH], 10) || 0;
|
|
40
|
+
if (groupingCustomRenderer) {
|
|
41
|
+
return (h(RowRenderer, Object.assign({}, props, { rowClass: "groupingRow", depth: depth }),
|
|
42
|
+
h("div", { onClick: e => expandEvent(e, model, itemIndex) }, groupingCustomRenderer(h, Object.assign(Object.assign({}, props), { colType: props.providers.colType, name,
|
|
43
|
+
expanded,
|
|
44
|
+
depth })))));
|
|
45
|
+
}
|
|
46
|
+
return (h(RowRenderer, Object.assign({}, props, { rowClass: "groupingRow", depth: depth }), hasExpand && [
|
|
47
|
+
h("button", { class: { [GROUP_EXPAND_BTN]: true }, onClick: e => expandEvent(e, model, itemIndex) }, expandSvgIconVNode(expanded)),
|
|
48
|
+
name,
|
|
49
|
+
]));
|
|
50
|
+
};
|
|
51
|
+
const expandSvgIconVNode = (expanded = false) => {
|
|
52
|
+
return (h("svg", { "aria-hidden": "true", style: { transform: `rotate(${!expanded ? -90 : 0}deg)` }, focusable: "false", viewBox: "0 0 448 512" },
|
|
53
|
+
h("path", { fill: "currentColor", d: "M207.029 381.476L12.686 187.132c-9.373-9.373-9.373-24.569 0-33.941l22.667-22.667c9.357-9.357 24.522-9.375 33.901-.04L224 284.505l154.745-154.021c9.379-9.335 24.544-9.317 33.901.04l22.667 22.667c9.373 9.373 9.373 24.569 0 33.941L240.971 381.476c-9.373 9.372-24.569 9.372-33.942 0z" })));
|
|
54
|
+
};
|
|
55
|
+
|
|
56
|
+
function renderCell(v) {
|
|
57
|
+
var _a;
|
|
58
|
+
const els = [];
|
|
59
|
+
// #region Custom cell
|
|
60
|
+
const template = (_a = v.schemaModel.column) === null || _a === void 0 ? void 0 : _a.cellTemplate;
|
|
61
|
+
if (template) {
|
|
62
|
+
els.push(template(h, v.schemaModel, v.additionalData));
|
|
63
|
+
}
|
|
64
|
+
// #endregion
|
|
65
|
+
// #region Regular cell
|
|
66
|
+
else {
|
|
67
|
+
if (!v.schemaModel.column) {
|
|
68
|
+
// something is wrong with data
|
|
69
|
+
if (Build === null || Build === void 0 ? void 0 : Build.isDev) {
|
|
70
|
+
console.error('Investigate column problem.', v.schemaModel);
|
|
71
|
+
}
|
|
72
|
+
return '';
|
|
73
|
+
}
|
|
74
|
+
// Row drag
|
|
75
|
+
if (v.schemaModel.column.rowDrag &&
|
|
76
|
+
isRowDragService(v.schemaModel.column.rowDrag, v.schemaModel)) {
|
|
77
|
+
els.push(h("span", { class: DRAGGABLE_CLASS, onMouseDown: originalEvent => {
|
|
78
|
+
var _a;
|
|
79
|
+
return (_a = v.dragStartCell) === null || _a === void 0 ? void 0 : _a.emit({
|
|
80
|
+
originalEvent,
|
|
81
|
+
model: v.schemaModel,
|
|
82
|
+
});
|
|
83
|
+
} },
|
|
84
|
+
h("span", { class: DRAG_ICON_CLASS })));
|
|
85
|
+
}
|
|
86
|
+
els.push(`${getCellDataParsed(v.schemaModel.model, v.schemaModel.column)}`);
|
|
87
|
+
}
|
|
88
|
+
return els;
|
|
89
|
+
}
|
|
90
|
+
const CellRenderer = ({ renderProps, cellProps, }) => {
|
|
91
|
+
const render = renderCell.bind(null, renderProps);
|
|
92
|
+
return (h("div", Object.assign({}, cellProps, { redraw: render }), render()));
|
|
93
|
+
};
|
|
94
|
+
|
|
95
|
+
export { CellRenderer as C, GroupingRowRenderer as G, PADDING_DEPTH as P, RowRenderer as R, SortingSign as S, expandSvgIconVNode as a, expandEvent as e };
|
|
96
|
+
//# sourceMappingURL=cell-renderer-Ca_PCGjJ.js.map
|
|
97
|
+
|
|
98
|
+
//# sourceMappingURL=cell-renderer-Ca_PCGjJ.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"cell-renderer-Ca_PCGjJ.js","sources":["src/plugins/sorting/sorting.sign.tsx","src/components/data/row-renderer.tsx","src/plugins/groupingRow/grouping.row.renderer.tsx","src/components/data/cell-renderer.tsx"],"sourcesContent":["import { h } from '@stencil/core';\r\nimport { ColumnRegular } from '@type';\r\n\r\ntype Props = {\r\n column: ColumnRegular;\r\n};\r\nexport const SortingSign = ({ column }: Props) => {\r\n return <i class={column?.order ?? 'sort-off'} />;\r\n};\r\n","import { h, type VNode } from '@stencil/core';\r\nimport { JSXBase } from '@stencil/core/internal';\r\nimport { DATA_ROW } from '../../utils/consts';\r\n\r\nexport interface RowProps extends JSXBase.HTMLAttributes {\r\n size: number;\r\n start: number;\r\n index: number;\r\n rowClass?: string;\r\n depth?: number;\r\n}\r\n\r\nexport const PADDING_DEPTH = 10;\r\n\r\nconst RowRenderer = ({ rowClass, index, size, start, depth }: RowProps, cells: VNode[]) => {\r\n const props = {\r\n ...{ [DATA_ROW]: index },\r\n };\r\n return (\r\n <div\r\n {...props}\r\n class={`rgRow ${rowClass || ''}`}\r\n style={{\r\n height: `${size}px`,\r\n transform: `translateY(${start}px)`,\r\n paddingLeft: depth ? `${PADDING_DEPTH * depth}px` : undefined,\r\n }}\r\n >\r\n {cells}\r\n </div>\r\n );\r\n};\r\n\r\nexport default RowRenderer;\r\n","import { h } from '@stencil/core';\r\nimport RowRenderer from '../../components/data/row-renderer';\r\nimport {\r\n GROUP_DEPTH,\r\n GROUP_EXPANDED,\r\n GROUP_EXPAND_BTN,\r\n PSEUDO_GROUP_ITEM,\r\n GROUP_EXPAND_EVENT,\r\n} from './grouping.const';\r\nimport type { RowGroupingProps } from './grouping.row.types';\r\nimport type { DataType } from '@type';\r\n\r\nexport function expandEvent(\r\n e: MouseEvent,\r\n model: DataType,\r\n virtualIndex: number,\r\n) {\r\n const event = new CustomEvent(GROUP_EXPAND_EVENT, {\r\n detail: {\r\n model,\r\n virtualIndex,\r\n },\r\n cancelable: true,\r\n bubbles: true,\r\n }) as CustomEvent<HTMLRevoGridElementEventMap['groupexpandclick']>;\r\n e.target?.dispatchEvent(event);\r\n}\r\n\r\nexport const GroupingRowRenderer = (props: RowGroupingProps) => {\r\n const { model, itemIndex, hasExpand, groupingCustomRenderer } = props;\r\n const name = model[PSEUDO_GROUP_ITEM];\r\n const expanded = model[GROUP_EXPANDED];\r\n const depth = parseInt(model[GROUP_DEPTH], 10) || 0;\r\n\r\n if (groupingCustomRenderer) {\r\n return (\r\n <RowRenderer {...props} rowClass=\"groupingRow\" depth={depth}>\r\n <div onClick={e => expandEvent(e, model, itemIndex)}>\r\n {groupingCustomRenderer(h, {\r\n ...props,\r\n colType: props.providers.colType,\r\n name,\r\n expanded,\r\n depth,\r\n })}\r\n </div>\r\n </RowRenderer>\r\n );\r\n }\r\n\r\n return (\r\n <RowRenderer {...props} rowClass=\"groupingRow\" depth={depth}>\r\n {hasExpand && [\r\n <button\r\n class={{ [GROUP_EXPAND_BTN]: true }}\r\n onClick={e => expandEvent(e, model, itemIndex)}\r\n >\r\n {expandSvgIconVNode(expanded)}\r\n </button>,\r\n name,\r\n ]}\r\n </RowRenderer>\r\n );\r\n};\r\n\r\nexport const expandSvgIconVNode = (expanded = false) => {\r\n return (\r\n <svg\r\n aria-hidden=\"true\"\r\n style={{ transform: `rotate(${!expanded ? -90 : 0}deg)` }}\r\n focusable=\"false\"\r\n viewBox=\"0 0 448 512\"\r\n >\r\n <path\r\n fill=\"currentColor\"\r\n d=\"M207.029 381.476L12.686 187.132c-9.373-9.373-9.373-24.569 0-33.941l22.667-22.667c9.357-9.357 24.522-9.375 33.901-.04L224 284.505l154.745-154.021c9.379-9.335 24.544-9.317 33.901.04l22.667 22.667c9.373 9.373 9.373 24.569 0 33.941L240.971 381.476c-9.373 9.372-24.569 9.372-33.942 0z\"\r\n ></path>\r\n </svg>\r\n );\r\n};\r\n\r\nexport default GroupingRowRenderer;\r\n","import { h, type VNode, Build, EventEmitter } from '@stencil/core';\r\nimport {\r\n DragStartEvent,\r\n CellTemplateProp,\r\n} from '@type';\r\n\r\nimport {\r\n DRAGGABLE_CLASS,\r\n DRAG_ICON_CLASS,\r\n getCellDataParsed,\r\n} from '../../utils';\r\n\r\nimport { isRowDragService } from './column.service';\r\n\r\ninterface RenderProps {\r\n schemaModel: CellTemplateProp;\r\n additionalData?: any;\r\n dragStartCell?: EventEmitter<DragStartEvent>;\r\n}\r\n\r\n\r\nfunction renderCell(v: RenderProps) {\r\n const els: (VNode | string)[] = [];\r\n\r\n // #region Custom cell\r\n const template = v.schemaModel.column?.cellTemplate;\r\n if (template) {\r\n els.push(template(h, v.schemaModel, v.additionalData));\r\n }\r\n // #endregion\r\n\r\n // #region Regular cell\r\n else {\r\n if (!v.schemaModel.column) {\r\n // something is wrong with data\r\n if (Build?.isDev) {\r\n console.error('Investigate column problem.', v.schemaModel);\r\n }\r\n return '';\r\n }\r\n\r\n // Row drag\r\n if (\r\n v.schemaModel.column.rowDrag &&\r\n isRowDragService(v.schemaModel.column.rowDrag, v.schemaModel)\r\n ) {\r\n els.push(\r\n <span\r\n class={DRAGGABLE_CLASS}\r\n onMouseDown={originalEvent =>\r\n v.dragStartCell?.emit({\r\n originalEvent,\r\n model: v.schemaModel,\r\n })\r\n }\r\n >\r\n <span class={DRAG_ICON_CLASS} />\r\n </span>,\r\n );\r\n }\r\n \r\n els.push(`${\r\n getCellDataParsed(v.schemaModel.model, v.schemaModel.column)\r\n }`);\r\n }\r\n return els;\r\n}\r\n\r\nexport const CellRenderer = ({\r\n renderProps,\r\n cellProps,\r\n}: {\r\n renderProps: RenderProps;\r\n cellProps: any;\r\n}): VNode => {\r\n const render = renderCell.bind(null, renderProps);\r\n return (\r\n <div {...cellProps} redraw={render}>\r\n {render()}\r\n </div>\r\n );\r\n};\r\n"],"names":[],"mappings":"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"}
|