@globalpayments/vega 2.92.0 → 2.93.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/dist/cjs/{app-globals-2f326662.js → app-globals-f7ad9275.js} +13 -9
- package/dist/cjs/{child-nodes-event-prevent-slimmer-b9a5b3e2.js → child-nodes-event-prevent-slimmer-e67ee84c.js} +1 -1
- package/dist/cjs/{code-block-6435d641.js → code-block-2f3d0f38.js} +41 -11
- package/dist/cjs/{component-value-history-controller-slimmer.abstract-e4c9a5ba.js → component-value-history-controller-slimmer.abstract-31d2c7aa.js} +72 -39
- package/dist/cjs/{content-state-96ec9114.js → content-state-13daf87a.js} +61 -7
- package/dist/cjs/{date-required-rule-8c9e312b.js → date-required-rule-e65ddd7d.js} +1 -1
- package/dist/cjs/{design-token-3548af29.js → design-token-47393cbb.js} +3 -3
- package/dist/cjs/{element-appender-slimmer-3bf69990.js → element-appender-slimmer-29c4ac60.js} +17 -8
- package/dist/cjs/{event-emit-slimmer-5bab10c2.js → event-emit-slimmer-d234a619.js} +1 -1
- package/dist/cjs/{form-field-controller-slimmer-e0efac05.js → form-field-controller-slimmer-3bfcf88c.js} +1 -1
- package/dist/cjs/{image-annotation-action-853f72c8.js → image-annotation-action-c2b163bb.js} +3 -3
- package/dist/cjs/image-extension-4e99b620.js +39 -0
- package/dist/cjs/index.cjs.js +22 -19
- package/dist/cjs/{inject-keyboard-manager-0dccff1a.js → inject-keyboard-manager-4b2ebbe4.js} +1 -1
- package/dist/cjs/{internal-calendar-period-factory-6187ec4c.js → internal-calendar-period-factory-7a0ecdb1.js} +1 -1
- package/dist/cjs/{internal-translation-controller-48ebfd0f.js → internal-translation-controller-31f2b057.js} +4 -0
- package/dist/cjs/{internal-vega-event-manager-7196a847.js → internal-vega-event-manager-13c4012b.js} +2 -1
- package/dist/cjs/{keyboard-manager-dfe8d924.js → keyboard-manager-c78b46bd.js} +1 -1
- package/dist/cjs/{keyboard-manager-slimmer-4a2560a1.js → keyboard-manager-slimmer-d350c931.js} +1 -1
- package/dist/cjs/{link-extension-28d95849.js → link-extension-455c02b3.js} +3 -3
- package/dist/cjs/loader.cjs.js +15 -14
- package/dist/cjs/{month-view-generator-2e59b188.js → month-view-generator-006562dc.js} +1 -1
- package/dist/cjs/{public-rules-8727c42c.js → public-rules-c59eba88.js} +7 -7
- package/dist/cjs/{range-5cb3d1e4.js → range-bf80fa40.js} +1 -1
- package/dist/cjs/{replace-selected-text-action-a31563ed.js → replace-selected-text-action-a80f5a6a.js} +1 -1
- package/dist/cjs/{responsive-format-facade-98b89142.js → responsive-format-facade-1af54330.js} +1 -1
- package/dist/cjs/{rich-text-editor-required-rule-8e4d577d.js → rich-text-editor-required-rule-1085c71a.js} +1 -1
- package/dist/cjs/{split-cell-operation-9e3ab88d.js → split-cell-operation-2fa5c9e4.js} +3 -3
- package/dist/cjs/{state-border-formatter-626b0a14.js → state-border-formatter-501f6645.js} +1 -1
- package/dist/cjs/{string-format-strategy.abstract-981f43e1.js → string-format-strategy.abstract-a02bf002.js} +1 -1
- package/dist/cjs/{string-input-formatter-slimmer-fc4a0ba5.js → string-input-formatter-slimmer-9cca6151.js} +1 -1
- package/dist/cjs/{string-mask-strategy-b47fa159.js → string-mask-strategy-4c174ebf.js} +2 -2
- package/dist/cjs/{style-formatter-baf18624.js → style-formatter-2c749500.js} +2 -2
- package/dist/cjs/{time-required-rule-e77d174f.js → time-required-rule-04994a5e.js} +1 -1
- package/dist/cjs/{token-extension-3aec039f.js → token-extension-d217914d.js} +1300 -14
- package/dist/cjs/{translation-slimmer-1e05769e.js → translation-slimmer-7fb6e94c.js} +1 -1
- package/dist/cjs/{type-guard-7ab48d6c.js → type-guard-1c3770d4.js} +1 -1
- package/dist/cjs/{valid-credit-card-number-rule-52ba9c67.js → valid-credit-card-number-rule-f719a8c6.js} +1 -1
- package/dist/cjs/vega-accordion.cjs.entry.js +9 -9
- package/dist/cjs/vega-app-footer.cjs.entry.js +3 -3
- package/dist/cjs/vega-app-header-button.cjs.entry.js +9 -9
- package/dist/cjs/vega-banner.cjs.entry.js +3 -3
- package/dist/cjs/vega-box.cjs.entry.js +6 -6
- package/dist/cjs/vega-breadcrumb.cjs.entry.js +4 -4
- package/dist/cjs/vega-button-circle.cjs.entry.js +9 -9
- package/dist/cjs/vega-button-group_2.cjs.entry.js +4 -4
- package/dist/cjs/vega-button-link.cjs.entry.js +4 -4
- package/dist/cjs/vega-button.cjs.entry.js +7 -7
- package/dist/cjs/vega-calendar_5.cjs.entry.js +11 -11
- package/dist/cjs/vega-card.cjs.entry.js +5 -5
- package/dist/cjs/vega-carousel.cjs.entry.js +6 -6
- package/dist/cjs/vega-checkbox_2.cjs.entry.js +6 -6
- package/dist/cjs/vega-chip.cjs.entry.js +9 -9
- package/dist/cjs/vega-code-block.cjs.entry.js +12 -12
- package/dist/cjs/vega-color-picker.cjs.entry.js +5 -5
- package/dist/cjs/vega-color-swatch-picker.cjs.entry.js +7 -7
- package/dist/cjs/vega-color-swatch.cjs.entry.js +5 -5
- package/dist/cjs/vega-combo-box.cjs.entry.js +19 -13
- package/dist/cjs/vega-date-picker_2.cjs.entry.js +17 -17
- package/dist/cjs/vega-dialog_2.cjs.entry.js +20 -9
- package/dist/cjs/vega-divider.cjs.entry.js +5 -5
- package/dist/cjs/vega-dropdown_5.cjs.entry.js +693 -195
- package/dist/cjs/vega-env-manager-23b8b23c.js +2 -2
- package/dist/cjs/{vega-event-id-df22d80e.js → vega-event-id-58afed7a.js} +2 -0
- package/dist/cjs/vega-field-label.cjs.entry.js +5 -5
- package/dist/cjs/vega-file-uploader.cjs.entry.js +6 -6
- package/dist/cjs/vega-flag-icon.cjs.entry.js +5 -5
- package/dist/cjs/vega-flex.cjs.entry.js +6 -6
- package/dist/cjs/vega-font.cjs.entry.js +5 -5
- package/dist/cjs/vega-form.cjs.entry.js +7 -7
- package/dist/cjs/vega-grid.cjs.entry.js +5 -5
- package/dist/cjs/vega-icon.cjs.entry.js +5 -5
- package/dist/cjs/vega-image-uploader.cjs.entry.js +9 -9
- package/dist/cjs/vega-input-credit-card.cjs.entry.js +10 -10
- package/dist/cjs/vega-input-numeric.cjs.entry.js +9 -9
- package/dist/cjs/vega-input-passcode.cjs.entry.js +9 -9
- package/dist/cjs/vega-input-phone-number.cjs.entry.js +8 -8
- package/dist/cjs/vega-input-range.cjs.entry.js +7 -7
- package/dist/cjs/vega-input-select.cjs.entry.js +9 -9
- package/dist/cjs/vega-input.cjs.entry.js +9 -9
- package/dist/cjs/vega-item-toggle.cjs.entry.js +3 -3
- package/dist/cjs/vega-left-nav_5.cjs.entry.js +10 -10
- package/dist/cjs/vega-loader-wrapper_2.cjs.entry.js +3 -3
- package/dist/cjs/vega-page-notification_2.cjs.entry.js +1 -1
- package/dist/cjs/vega-pagination-page-selector-mobile.cjs.entry.js +3 -3
- package/dist/cjs/vega-pagination-page-size-selector-mobile.cjs.entry.js +3 -3
- package/dist/cjs/vega-pagination.cjs.entry.js +8 -8
- package/dist/cjs/vega-popover_2.cjs.entry.js +11 -11
- package/dist/cjs/vega-progress-tracker_2.cjs.entry.js +6 -6
- package/dist/cjs/vega-radio_2.cjs.entry.js +9 -9
- package/dist/cjs/vega-rich-text-content.cjs.entry.js +7 -7
- package/dist/cjs/vega-rich-text-editor_4.cjs.entry.js +472 -62
- package/dist/cjs/vega-rich-text-find-replace-panel.cjs.entry.js +4 -4
- package/dist/cjs/vega-rich-text-special-characters-panel.cjs.entry.js +8 -8
- package/dist/cjs/vega-rich-text-table-properties_3.cjs.entry.js +11 -11
- package/dist/cjs/vega-segment-control.cjs.entry.js +3 -3
- package/dist/cjs/vega-selection-chip_2.cjs.entry.js +8 -8
- package/dist/cjs/vega-selection-tile_2.cjs.entry.js +6 -6
- package/dist/cjs/vega-sidenav_3.cjs.entry.js +6 -6
- package/dist/cjs/vega-signature-capture.cjs.entry.js +10 -10
- package/dist/cjs/vega-stepper.cjs.entry.js +6 -6
- package/dist/cjs/vega-tab-group_2.cjs.entry.js +4 -4
- package/dist/cjs/vega-table_11.cjs.entry.js +911 -428
- package/dist/cjs/vega-textarea.cjs.entry.js +7 -9
- package/dist/cjs/vega-time-picker_2.cjs.entry.js +34 -14
- package/dist/cjs/vega-toggle-switch.cjs.entry.js +5 -5
- package/dist/cjs/vega-tooltip_2.cjs.entry.js +6 -6
- package/dist/cjs/vega.cjs.js +15 -14
- package/dist/collection/components/vega-combo-box/slimmers/renderers/vega-combo-box-dropdown-renderer.js +4 -1
- package/dist/collection/components/vega-combo-box/vega-combo-box.js +7 -1
- package/dist/collection/components/vega-dialog/vega-dialog.js +1 -1
- package/dist/collection/components/vega-dropdown/constants.js +1 -0
- package/dist/collection/components/vega-dropdown/slimmers/controllers/vega-dropdown-appender-controller.js +9 -0
- package/dist/collection/components/vega-dropdown/slimmers/controllers/vega-dropdown-children-controller.js +97 -4
- package/dist/collection/components/vega-dropdown/slimmers/controllers/vega-dropdown-select-all-controller.js +219 -0
- package/dist/collection/components/vega-dropdown/slimmers/controllers/vega-dropdown-selected-controller.js +78 -13
- package/dist/collection/components/vega-dropdown/slimmers/controllers/vega-dropdown-source-controller.js +13 -1
- package/dist/collection/components/vega-dropdown/slimmers/renderers/vega-dropdown-list-renderer.js +7 -0
- package/dist/collection/components/vega-dropdown/vega-dropdown-item/slimmers/controllers/vega-dropdown-item-state-controller.js +52 -1
- package/dist/collection/components/vega-dropdown/vega-dropdown-item/slimmers/renderers/vega-dropdown-item-renderer.js +4 -1
- package/dist/collection/components/vega-dropdown/vega-dropdown-item/vega-dropdown-item.js +5 -0
- package/dist/collection/components/vega-dropdown/vega-dropdown.js +126 -1
- package/dist/collection/components/vega-field-label/vega-field-label.js +1 -1
- package/dist/collection/components/vega-hint/vega-hint.js +1 -1
- package/dist/collection/components/vega-modal/slimmers/renderers/vega-modal-renderer.js +4 -1
- package/dist/collection/components/vega-modal/vega-modal.css +0 -1
- package/dist/collection/components/vega-modal/vega-modal.js +38 -0
- package/dist/collection/components/vega-rich-text-editor/assets/redo.js +1 -1
- package/dist/collection/components/vega-rich-text-editor/assets/undo.js +1 -1
- package/dist/collection/components/vega-rich-text-editor/dto/action-handle-strategies/modify-content-strategies/block-insert-line-break-strategy.js +11 -5
- package/dist/collection/components/vega-rich-text-editor/dto/action-handle-strategies/modify-content-strategies/block-split-with-text-node-strategy.js +9 -4
- package/dist/collection/components/vega-rich-text-editor/dto/action-handle-strategies/modify-content-strategies/paste-content-strategy.js +61 -5
- package/dist/collection/components/vega-rich-text-editor/dto/actions/paste-content-action.js +1 -0
- package/dist/collection/components/vega-rich-text-editor/dto/nodes/text-node.js +6 -1
- package/dist/collection/components/vega-rich-text-editor/extensions/blockquote/action-handler-interceptors/blockquote-exit-on-enter-interceptor.js +61 -0
- package/dist/collection/components/vega-rich-text-editor/extensions/blockquote/action-handler-strategies/block-transform-to-blockquote-strategy.js +40 -0
- package/dist/collection/components/vega-rich-text-editor/extensions/blockquote/action-handler-strategies/remove-blockquote-strategy.js +20 -0
- package/dist/collection/components/vega-rich-text-editor/extensions/blockquote/actions/remove-blockquote-action.js +17 -0
- package/dist/collection/components/vega-rich-text-editor/extensions/blockquote/actions/transform-to-blockquote-action.js +19 -0
- package/dist/collection/components/vega-rich-text-editor/extensions/blockquote/assets/quote-left.js +4 -0
- package/dist/collection/components/vega-rich-text-editor/extensions/blockquote/blockquote-extension.js +47 -0
- package/dist/collection/components/vega-rich-text-editor/extensions/blockquote/dto/blockquote-annotation.js +76 -0
- package/dist/collection/components/vega-rich-text-editor/extensions/blockquote/dto/rte-blockquote-block.js +70 -0
- package/dist/collection/components/vega-rich-text-editor/extensions/blockquote/element-to-dto-strategies/blockquote-to-blockquote-block-strategy.js +53 -0
- package/dist/collection/components/vega-rich-text-editor/extensions/blockquote/filter-styles-strategies/blockquote-block/blockquote-filter-styles-strategy.js +41 -0
- package/dist/collection/components/vega-rich-text-editor/extensions/blockquote/renderers/blockquote-block-renderer.js +21 -0
- package/dist/collection/components/vega-rich-text-editor/extensions/blockquote/renderers/blockquote-toolbar-button-renderer.js +260 -0
- package/dist/collection/components/vega-rich-text-editor/extensions/image/image-extension.js +34 -0
- package/dist/collection/components/vega-rich-text-editor/extensions/image/type.js +1 -0
- package/dist/collection/components/vega-rich-text-editor/extensions/paste/assets/paste.js +3 -0
- package/dist/collection/components/vega-rich-text-editor/extensions/paste/paste-chooser-ui.js +144 -0
- package/dist/collection/components/vega-rich-text-editor/extensions/paste/paste-constants.js +6 -0
- package/dist/collection/components/vega-rich-text-editor/extensions/paste/paste-extension.js +442 -0
- package/dist/collection/components/vega-rich-text-editor/extensions/table/renderers/table-renderer.js +1 -1
- package/dist/collection/components/vega-rich-text-editor/extensions/table/table-extension.js +4 -3
- package/dist/collection/components/vega-rich-text-editor/helpers/utils.js +14 -0
- package/dist/collection/components/vega-rich-text-editor/public-api.js +3 -0
- package/dist/collection/components/vega-rich-text-editor/slimmers/controllers/helper/input-event-handler/base-handler.js +1 -1
- package/dist/collection/components/vega-rich-text-editor/slimmers/controllers/helper/input-event-handler/insert-line-break-handler.js +1 -1
- package/dist/collection/components/vega-rich-text-editor/slimmers/controllers/helper/input-event-handler/insert-paste-handler.js +385 -25
- package/dist/collection/components/vega-rich-text-editor/slimmers/controllers/selection-controller.js +69 -36
- package/dist/collection/components/vega-rich-text-editor/slimmers/renderers/tools/image-toolbar-button-slimmer.js +59 -14
- package/dist/collection/components/vega-rich-text-editor/vega-rich-text-editor-toolbar-button/slimmers/renderers/vega-rich-text-editor-toolbar-button-renderer.js +6 -1
- package/dist/collection/components/vega-rich-text-editor/vega-rich-text-editor-toolbar-button/vega-rich-text-editor-toolbar-button.js +28 -1
- package/dist/collection/components/vega-rich-text-editor/vega-rich-text-editor.js +1 -1
- package/dist/collection/components/vega-rich-text-editor/vega-rich-text-image-editor/vega-rich-text-image-editor.js +1 -1
- package/dist/collection/components/vega-rich-text-editor/vega-rich-text-link-editor/vega-rich-text-link-editor.js +1 -1
- package/dist/collection/components/vega-table/slimmers/controllers/dto/column-render-input-model.js +32 -0
- package/dist/collection/components/vega-table/slimmers/controllers/vega-table-body-col-span-controller.js +77 -0
- package/dist/collection/components/vega-table/slimmers/renderers/vega-table-body-col-span-resolver.js +121 -0
- package/dist/collection/components/vega-table/slimmers/renderers/vega-table-cell-renderer.js +39 -14
- package/dist/collection/components/vega-table/slimmers/renderers/vega-table-pinned-renderer.js +207 -7
- package/dist/collection/components/vega-table/slimmers/renderers/vega-table-row-renderer.js +16 -3
- package/dist/collection/components/vega-table/vega-table-cell/vega-table-cell.js +24 -4
- package/dist/collection/components/vega-table/vega-table-expand-row/slimmers/controllers/vega-table-expand-row-col-span-controller.js +11 -2
- package/dist/collection/components/vega-table/vega-table-foot-cell/slimmers/renderers/vega-table-foot-cell-renderer.js +5 -1
- package/dist/collection/components/vega-table/vega-table-foot-cell/vega-table-foot-cell.js +22 -1
- package/dist/collection/components/vega-table/vega-table.css +5 -0
- package/dist/collection/components/vega-table/vega-table.js +5 -0
- package/dist/collection/components/vega-text/vega-text.js +1 -1
- package/dist/collection/components/vega-textarea/vega-textarea.js +1 -3
- package/dist/collection/components/vega-time-picker/slimmers/controllers/vega-time-picker-range-dropdown-controller.js +4 -0
- package/dist/collection/components/vega-time-picker/slimmers/controllers/vega-time-picker-single-dropdown-controller.js +4 -0
- package/dist/collection/components/vega-time-picker/vega-time-picker.js +39 -0
- package/dist/collection/constants/ui.js +1 -0
- package/dist/collection/global/scripts/before-vega-load.js +6 -0
- package/dist/collection/helpers/event-manager/event-id/component-event-id-map.js +2 -1
- package/dist/collection/helpers/event-manager/event-id/vega-event-id.js +1 -0
- package/dist/collection/helpers/slimmers/element-appender/element-appender-slimmer.js +11 -4
- package/dist/collection/helpers/translation/locales/en.js +4 -0
- package/dist/collection/helpers/ui/element-appender.js +5 -2
- package/dist/esm/{app-globals-5e0d319a.js → app-globals-9950d055.js} +13 -9
- package/dist/esm/{child-nodes-event-prevent-slimmer-f24618c5.js → child-nodes-event-prevent-slimmer-96c14f5a.js} +1 -1
- package/dist/esm/{code-block-b71b2aa4.js → code-block-ae2337c2.js} +41 -12
- package/dist/esm/{component-value-history-controller-slimmer.abstract-282df6e5.js → component-value-history-controller-slimmer.abstract-b1ee1b8e.js} +72 -39
- package/dist/esm/{content-state-909099f8.js → content-state-c3b85ae6.js} +61 -7
- package/dist/esm/{date-required-rule-15edb04a.js → date-required-rule-e06115f8.js} +1 -1
- package/dist/esm/{design-token-cb5ed6b9.js → design-token-4e682056.js} +3 -3
- package/dist/esm/{element-appender-slimmer-e41120ee.js → element-appender-slimmer-a4485ef6.js} +17 -8
- package/dist/esm/{event-emit-slimmer-03deba18.js → event-emit-slimmer-db4a82e0.js} +1 -1
- package/dist/esm/{form-field-controller-slimmer-cfe1d8a7.js → form-field-controller-slimmer-a1c7b28c.js} +1 -1
- package/dist/esm/{image-annotation-action-98232dc4.js → image-annotation-action-4c77d314.js} +3 -3
- package/dist/esm/image-extension-7108c27d.js +37 -0
- package/dist/esm/index.js +19 -19
- package/dist/esm/{inject-keyboard-manager-13cc77ab.js → inject-keyboard-manager-e8ddb78d.js} +1 -1
- package/dist/esm/{internal-calendar-period-factory-c3d70f3b.js → internal-calendar-period-factory-6f19d767.js} +1 -1
- package/dist/esm/{internal-translation-controller-8e8a514a.js → internal-translation-controller-09b8bd13.js} +4 -0
- package/dist/esm/{internal-vega-event-manager-75e5e3bb.js → internal-vega-event-manager-48690e5b.js} +2 -1
- package/dist/esm/{keyboard-manager-fe885db1.js → keyboard-manager-ec18721b.js} +1 -1
- package/dist/esm/{keyboard-manager-slimmer-61d4c79b.js → keyboard-manager-slimmer-531ddb0e.js} +1 -1
- package/dist/esm/{link-extension-f1a3bea7.js → link-extension-74eaa826.js} +3 -3
- package/dist/esm/loader.js +15 -14
- package/dist/esm/{month-view-generator-85eecb95.js → month-view-generator-afd78ff8.js} +1 -1
- package/dist/esm/{public-rules-323bea4b.js → public-rules-5fce32a5.js} +7 -7
- package/dist/esm/{range-e63068d1.js → range-8f877dbf.js} +1 -1
- package/dist/esm/{replace-selected-text-action-c0817b2b.js → replace-selected-text-action-c9278a0f.js} +1 -1
- package/dist/esm/{responsive-format-facade-fb424f5b.js → responsive-format-facade-299e6304.js} +1 -1
- package/dist/esm/{rich-text-editor-required-rule-0edb8ba7.js → rich-text-editor-required-rule-3047bab0.js} +1 -1
- package/dist/esm/{split-cell-operation-93b4d775.js → split-cell-operation-98d58410.js} +3 -3
- package/dist/esm/{state-border-formatter-1a528ca4.js → state-border-formatter-da52b626.js} +1 -1
- package/dist/esm/{string-format-strategy.abstract-72fc98aa.js → string-format-strategy.abstract-a45b5ff7.js} +1 -1
- package/dist/esm/{string-input-formatter-slimmer-b0c480d8.js → string-input-formatter-slimmer-4a032fed.js} +1 -1
- package/dist/esm/{string-mask-strategy-4e00c173.js → string-mask-strategy-37e53e48.js} +2 -2
- package/dist/esm/{style-formatter-5c1bea8d.js → style-formatter-3d5ddfb1.js} +2 -2
- package/dist/esm/{time-required-rule-df500b14.js → time-required-rule-355b73d2.js} +1 -1
- package/dist/esm/{token-extension-32d1fa56.js → token-extension-ecfafe94.js} +1298 -15
- package/dist/esm/{translation-slimmer-60408f13.js → translation-slimmer-3ea56354.js} +1 -1
- package/dist/esm/{type-guard-91087018.js → type-guard-2bfb2c7b.js} +1 -1
- package/dist/esm/{valid-credit-card-number-rule-681ecb75.js → valid-credit-card-number-rule-52c6b029.js} +1 -1
- package/dist/esm/vega-accordion.entry.js +9 -9
- package/dist/esm/vega-app-footer.entry.js +3 -3
- package/dist/esm/vega-app-header-button.entry.js +9 -9
- package/dist/esm/vega-banner.entry.js +3 -3
- package/dist/esm/vega-box.entry.js +6 -6
- package/dist/esm/vega-breadcrumb.entry.js +4 -4
- package/dist/esm/vega-button-circle.entry.js +9 -9
- package/dist/esm/vega-button-group_2.entry.js +4 -4
- package/dist/esm/vega-button-link.entry.js +4 -4
- package/dist/esm/vega-button.entry.js +7 -7
- package/dist/esm/vega-calendar_5.entry.js +11 -11
- package/dist/esm/vega-card.entry.js +5 -5
- package/dist/esm/vega-carousel.entry.js +6 -6
- package/dist/esm/vega-checkbox_2.entry.js +6 -6
- package/dist/esm/vega-chip.entry.js +9 -9
- package/dist/esm/vega-code-block.entry.js +12 -12
- package/dist/esm/vega-color-picker.entry.js +5 -5
- package/dist/esm/vega-color-swatch-picker.entry.js +7 -7
- package/dist/esm/vega-color-swatch.entry.js +5 -5
- package/dist/esm/vega-combo-box.entry.js +19 -13
- package/dist/esm/vega-date-picker_2.entry.js +17 -17
- package/dist/esm/vega-dialog_2.entry.js +20 -9
- package/dist/esm/vega-divider.entry.js +5 -5
- package/dist/esm/vega-dropdown_5.entry.js +695 -197
- package/dist/esm/vega-env-manager-8f8dc473.js +2 -2
- package/dist/esm/{vega-event-id-d3017041.js → vega-event-id-270fe47e.js} +2 -1
- package/dist/esm/vega-field-label.entry.js +5 -5
- package/dist/esm/vega-file-uploader.entry.js +6 -6
- package/dist/esm/vega-flag-icon.entry.js +5 -5
- package/dist/esm/vega-flex.entry.js +6 -6
- package/dist/esm/vega-font.entry.js +5 -5
- package/dist/esm/vega-form.entry.js +7 -7
- package/dist/esm/vega-grid.entry.js +5 -5
- package/dist/esm/vega-icon.entry.js +5 -5
- package/dist/esm/vega-image-uploader.entry.js +9 -9
- package/dist/esm/vega-input-credit-card.entry.js +10 -10
- package/dist/esm/vega-input-numeric.entry.js +9 -9
- package/dist/esm/vega-input-passcode.entry.js +9 -9
- package/dist/esm/vega-input-phone-number.entry.js +8 -8
- package/dist/esm/vega-input-range.entry.js +7 -7
- package/dist/esm/vega-input-select.entry.js +9 -9
- package/dist/esm/vega-input.entry.js +9 -9
- package/dist/esm/vega-item-toggle.entry.js +3 -3
- package/dist/esm/vega-left-nav_5.entry.js +10 -10
- package/dist/esm/vega-loader-wrapper_2.entry.js +3 -3
- package/dist/esm/vega-page-notification_2.entry.js +1 -1
- package/dist/esm/vega-pagination-page-selector-mobile.entry.js +3 -3
- package/dist/esm/vega-pagination-page-size-selector-mobile.entry.js +3 -3
- package/dist/esm/vega-pagination.entry.js +8 -8
- package/dist/esm/vega-popover_2.entry.js +11 -11
- package/dist/esm/vega-progress-tracker_2.entry.js +6 -6
- package/dist/esm/vega-radio_2.entry.js +9 -9
- package/dist/esm/vega-rich-text-content.entry.js +7 -7
- package/dist/esm/vega-rich-text-editor_4.entry.js +472 -62
- package/dist/esm/vega-rich-text-find-replace-panel.entry.js +4 -4
- package/dist/esm/vega-rich-text-special-characters-panel.entry.js +8 -8
- package/dist/esm/vega-rich-text-table-properties_3.entry.js +11 -11
- package/dist/esm/vega-segment-control.entry.js +3 -3
- package/dist/esm/vega-selection-chip_2.entry.js +8 -8
- package/dist/esm/vega-selection-tile_2.entry.js +6 -6
- package/dist/esm/vega-sidenav_3.entry.js +6 -6
- package/dist/esm/vega-signature-capture.entry.js +10 -10
- package/dist/esm/vega-stepper.entry.js +6 -6
- package/dist/esm/vega-tab-group_2.entry.js +4 -4
- package/dist/esm/vega-table_11.entry.js +911 -428
- package/dist/esm/vega-textarea.entry.js +7 -9
- package/dist/esm/vega-time-picker_2.entry.js +34 -14
- package/dist/esm/vega-toggle-switch.entry.js +5 -5
- package/dist/esm/vega-tooltip_2.entry.js +6 -6
- package/dist/esm/vega.js +15 -14
- package/dist/sri/vega-sri-manifest.json +362 -358
- package/dist/types/components/vega-combo-box/types.d.ts +6 -1
- package/dist/types/components/vega-combo-box/vega-combo-box.d.ts +1 -0
- package/dist/types/components/vega-dropdown/constants.d.ts +1 -0
- package/dist/types/components/vega-dropdown/slimmers/controllers/vega-dropdown-appender-controller.d.ts +2 -0
- package/dist/types/components/vega-dropdown/slimmers/controllers/vega-dropdown-children-controller.d.ts +36 -0
- package/dist/types/components/vega-dropdown/slimmers/controllers/vega-dropdown-select-all-controller.d.ts +107 -0
- package/dist/types/components/vega-dropdown/slimmers/controllers/vega-dropdown-selected-controller.d.ts +17 -0
- package/dist/types/components/vega-dropdown/slimmers/controllers/vega-dropdown-source-controller.d.ts +5 -0
- package/dist/types/components/vega-dropdown/slimmers/renderers/vega-dropdown-list-renderer.d.ts +2 -0
- package/dist/types/components/vega-dropdown/types.d.ts +8 -0
- package/dist/types/components/vega-dropdown/vega-dropdown-item/slimmers/controllers/vega-dropdown-item-state-controller.d.ts +25 -0
- package/dist/types/components/vega-dropdown/vega-dropdown-item/slimmers/renderers/vega-dropdown-item-renderer.d.ts +1 -0
- package/dist/types/components/vega-dropdown/vega-dropdown-item/vega-dropdown-item.d.ts +4 -0
- package/dist/types/components/vega-dropdown/vega-dropdown.d.ts +48 -0
- package/dist/types/components/vega-modal/slimmers/renderers/vega-modal-renderer.d.ts +2 -1
- package/dist/types/components/vega-modal/vega-modal.d.ts +9 -1
- package/dist/types/components/vega-rich-text-editor/dto/action-handle-strategies/modify-content-strategies/paste-content-strategy.d.ts +14 -4
- package/dist/types/components/vega-rich-text-editor/dto/actions/paste-content-action.d.ts +7 -0
- package/dist/types/components/vega-rich-text-editor/extensions/blockquote/action-handler-interceptors/blockquote-exit-on-enter-interceptor.d.ts +34 -0
- package/dist/types/components/vega-rich-text-editor/extensions/blockquote/action-handler-strategies/block-transform-to-blockquote-strategy.d.ts +13 -0
- package/dist/types/components/vega-rich-text-editor/extensions/blockquote/action-handler-strategies/remove-blockquote-strategy.d.ts +13 -0
- package/dist/types/components/vega-rich-text-editor/extensions/blockquote/actions/remove-blockquote-action.d.ts +14 -0
- package/dist/types/components/vega-rich-text-editor/extensions/blockquote/actions/transform-to-blockquote-action.d.ts +18 -0
- package/dist/types/components/vega-rich-text-editor/extensions/blockquote/assets/quote-left.d.ts +3 -0
- package/dist/types/components/vega-rich-text-editor/extensions/blockquote/blockquote-extension.d.ts +9 -0
- package/dist/types/components/vega-rich-text-editor/extensions/blockquote/dto/blockquote-annotation.d.ts +48 -0
- package/dist/types/components/vega-rich-text-editor/extensions/blockquote/dto/rte-blockquote-block.d.ts +56 -0
- package/dist/types/components/vega-rich-text-editor/extensions/blockquote/element-to-dto-strategies/blockquote-to-blockquote-block-strategy.d.ts +35 -0
- package/dist/types/components/vega-rich-text-editor/extensions/blockquote/filter-styles-strategies/blockquote-block/blockquote-filter-styles-strategy.d.ts +31 -0
- package/dist/types/components/vega-rich-text-editor/extensions/blockquote/renderers/blockquote-block-renderer.d.ts +18 -0
- package/dist/types/components/vega-rich-text-editor/extensions/blockquote/renderers/blockquote-toolbar-button-renderer.d.ts +113 -0
- package/dist/types/components/vega-rich-text-editor/extensions/image/image-extension.d.ts +27 -0
- package/dist/types/components/vega-rich-text-editor/extensions/image/type.d.ts +13 -0
- package/dist/types/components/vega-rich-text-editor/extensions/paste/assets/paste.d.ts +3 -0
- package/dist/types/components/vega-rich-text-editor/extensions/paste/paste-chooser-ui.d.ts +58 -0
- package/dist/types/components/vega-rich-text-editor/extensions/paste/paste-constants.d.ts +6 -0
- package/dist/types/components/vega-rich-text-editor/extensions/paste/paste-extension.d.ts +150 -0
- package/dist/types/components/vega-rich-text-editor/helpers/utils.d.ts +7 -0
- package/dist/types/components/vega-rich-text-editor/public-api.d.ts +3 -0
- package/dist/types/components/vega-rich-text-editor/slimmers/controllers/helper/input-event-handler/insert-paste-handler.d.ts +114 -3
- package/dist/types/components/vega-rich-text-editor/slimmers/controllers/selection-controller.d.ts +22 -13
- package/dist/types/components/vega-rich-text-editor/slimmers/renderers/tools/image-toolbar-button-slimmer.d.ts +10 -2
- package/dist/types/components/vega-rich-text-editor/vega-rich-text-editor-toolbar-button/slimmers/renderers/vega-rich-text-editor-toolbar-button-renderer.d.ts +1 -0
- package/dist/types/components/vega-rich-text-editor/vega-rich-text-editor-toolbar-button/vega-rich-text-editor-toolbar-button.d.ts +6 -0
- package/dist/types/components/vega-rich-text-editor/vega-rich-text-editor.d.ts +4 -4
- package/dist/types/components/vega-rich-text-editor/vega-rich-text-image-editor/vega-rich-text-image-editor.d.ts +1 -1
- package/dist/types/components/vega-rich-text-editor/vega-rich-text-link-editor/vega-rich-text-link-editor.d.ts +1 -1
- package/dist/types/components/vega-table/interface.d.ts +18 -0
- package/dist/types/components/vega-table/slimmers/controllers/dto/column-render-input-model.d.ts +13 -0
- package/dist/types/components/vega-table/slimmers/controllers/vega-table-body-col-span-controller.d.ts +43 -0
- package/dist/types/components/vega-table/slimmers/renderers/vega-table-body-col-span-resolver.d.ts +38 -0
- package/dist/types/components/vega-table/slimmers/renderers/vega-table-cell-renderer.d.ts +11 -2
- package/dist/types/components/vega-table/slimmers/renderers/vega-table-pinned-renderer.d.ts +4 -0
- package/dist/types/components/vega-table/slimmers/renderers/vega-table-row-renderer.d.ts +1 -0
- package/dist/types/components/vega-table/vega-table-cell/slimmers/controllers/vega-table-row-state-subscriber.d.ts +1 -1
- package/dist/types/components/vega-table/vega-table-cell/vega-table-cell.d.ts +9 -0
- package/dist/types/components/vega-table/vega-table-foot-cell/slimmers/renderers/vega-table-foot-cell-renderer.d.ts +1 -0
- package/dist/types/components/vega-table/vega-table-foot-cell/vega-table-foot-cell.d.ts +9 -0
- package/dist/types/components/vega-table/vega-table.d.ts +2 -0
- package/dist/types/components/vega-time-picker/slimmers/controllers/vega-time-picker-range-dropdown-controller.d.ts +1 -0
- package/dist/types/components/vega-time-picker/slimmers/controllers/vega-time-picker-single-dropdown-controller.d.ts +1 -0
- package/dist/types/components/vega-time-picker/types.d.ts +7 -0
- package/dist/types/components/vega-time-picker/vega-time-picker.d.ts +11 -1
- package/dist/types/components.d.ts +80 -3
- package/dist/types/constants/ui.d.ts +1 -1
- package/dist/types/helpers/event-manager/event-id/vega-event-id.d.ts +1 -0
- package/dist/types/helpers/translation/interface.d.ts +5 -0
- package/dist/types/helpers/ui/element-appender.d.ts +4 -1
- package/dist/types/types/components.type.d.ts +5 -1
- package/dist/vega/index.esm.js +1 -1
- package/dist/vega/{p-481601c0.entry.js → p-05f937c5.entry.js} +1 -1
- package/dist/vega/{p-970115d6.js → p-07562b9c.js} +1 -1
- package/dist/vega/{p-d0ce752f.entry.js → p-09d50f59.entry.js} +1 -1
- package/dist/vega/{p-22f73e6e.entry.js → p-0cb78838.entry.js} +1 -1
- package/dist/vega/p-0e607b44.js +1 -0
- package/dist/vega/{p-c8eaf91c.entry.js → p-0f1d6ceb.entry.js} +1 -1
- package/dist/vega/{p-70817cf5.js → p-140616fe.js} +1 -1
- package/dist/vega/{p-f70f7ad8.entry.js → p-1818f399.entry.js} +1 -1
- package/dist/vega/{p-802bf369.js → p-18a5e8bc.js} +1 -1
- package/dist/vega/{p-4d9061fb.js → p-19c42e30.js} +1 -1
- package/dist/vega/{p-d7369441.js → p-1efab41b.js} +1 -1
- package/dist/vega/{p-92823583.js → p-21e21f51.js} +1 -1
- package/dist/vega/{p-c0629528.entry.js → p-26c7fe8b.entry.js} +1 -1
- package/dist/vega/p-282b37cb.js +1 -0
- package/dist/vega/{p-c78aeaf3.entry.js → p-2dc5edd0.entry.js} +1 -1
- package/dist/vega/{p-228c5de8.js → p-2de61f1b.js} +1 -1
- package/dist/vega/{p-82279b03.entry.js → p-2de88b4a.entry.js} +1 -1
- package/dist/vega/{p-438b7404.entry.js → p-2fcc604c.entry.js} +1 -1
- package/dist/vega/{p-aa32f2f3.js → p-32a67ba1.js} +1 -1
- package/dist/vega/p-392e049c.entry.js +1 -0
- package/dist/vega/{p-a268a4fb.entry.js → p-3932f964.entry.js} +1 -1
- package/dist/vega/{p-f515d189.entry.js → p-3c9da3cd.entry.js} +1 -1
- package/dist/vega/{p-5829a66d.entry.js → p-3f7b10b9.entry.js} +1 -1
- package/dist/vega/{p-5545a235.entry.js → p-422d88ae.entry.js} +1 -1
- package/dist/vega/p-4256252c.js +3 -0
- package/dist/vega/{p-8f078d0d.entry.js → p-44439ecc.entry.js} +1 -1
- package/dist/vega/{p-68e16c70.entry.js → p-45e8424a.entry.js} +1 -1
- package/dist/vega/p-4c49b2e3.js +1 -0
- package/dist/vega/{p-71e2a3ec.js → p-4d9562bc.js} +1 -1
- package/dist/vega/p-4e1aa86f.js +1 -0
- package/dist/vega/p-4ef5c4a7.entry.js +1 -0
- package/dist/vega/{p-9440a8a5.entry.js → p-4f327808.entry.js} +1 -1
- package/dist/vega/{p-2def8e3e.js → p-5139e516.js} +1 -1
- package/dist/vega/{p-2e58d99e.entry.js → p-56c4e349.entry.js} +1 -1
- package/dist/vega/{p-b730bf6e.js → p-5dbfffcd.js} +1 -1
- package/dist/vega/p-5f377954.js +1 -1
- package/dist/vega/{p-916dfa7e.entry.js → p-615a2b8c.entry.js} +1 -1
- package/dist/vega/{p-625351a3.entry.js → p-63101cb4.entry.js} +1 -1
- package/dist/vega/{p-7798254d.entry.js → p-653a6dd8.entry.js} +1 -1
- package/dist/vega/{p-d20587b4.entry.js → p-66b7d1c7.entry.js} +1 -1
- package/dist/vega/{p-9219201a.entry.js → p-6712a9c7.entry.js} +1 -1
- package/dist/vega/p-698fbd73.js +1 -0
- package/dist/vega/p-6ad7144a.entry.js +1 -0
- package/dist/vega/{p-9fafc956.entry.js → p-6b1893f6.entry.js} +1 -1
- package/dist/vega/{p-93dfab05.js → p-6d40635e.js} +1 -1
- package/dist/vega/{p-b799fc1f.entry.js → p-73fd18d9.entry.js} +1 -1
- package/dist/vega/p-751a5cd6.entry.js +1 -0
- package/dist/vega/{p-f7739cbb.entry.js → p-7b93a756.entry.js} +1 -1
- package/dist/vega/{p-2314494a.entry.js → p-7c8e579e.entry.js} +1 -1
- package/dist/vega/{p-4953bb1a.js → p-7d54e9c1.js} +1 -1
- package/dist/vega/{p-590c8720.entry.js → p-832d1a72.entry.js} +1 -1
- package/dist/vega/p-846b1ab9.entry.js +1 -0
- package/dist/vega/p-88863658.js +1 -0
- package/dist/vega/{p-c2e0f8b7.entry.js → p-8c1a5fa4.entry.js} +1 -1
- package/dist/vega/{p-f0bc2bbb.js → p-8d27b9cc.js} +1 -1
- package/dist/vega/{p-f365601c.entry.js → p-944b43ce.entry.js} +1 -1
- package/dist/vega/{p-8d69b201.js → p-95d6c85f.js} +1 -1
- package/dist/vega/{p-9b1d718c.entry.js → p-99b699be.entry.js} +1 -1
- package/dist/vega/p-9a01be93.js +1 -0
- package/dist/vega/{p-53c76d9d.entry.js → p-9a472a04.entry.js} +1 -1
- package/dist/vega/{p-18413b62.entry.js → p-9cafbc26.entry.js} +1 -1
- package/dist/vega/p-a359e53c.js +1 -0
- package/dist/vega/p-a9a87b9a.js +1 -0
- package/dist/vega/p-acbba6da.entry.js +1 -0
- package/dist/vega/{p-56cf1a65.entry.js → p-ad35dea4.entry.js} +1 -1
- package/dist/vega/{p-06c2ce2c.entry.js → p-af98539f.entry.js} +1 -1
- package/dist/vega/{p-136226f8.js → p-afb96938.js} +1 -1
- package/dist/vega/{p-e160a727.entry.js → p-b042e3b4.entry.js} +1 -1
- package/dist/vega/{p-5beec481.js → p-b1ff70bf.js} +1 -1
- package/dist/vega/{p-9cdedcfb.entry.js → p-b39d4a88.entry.js} +1 -1
- package/dist/vega/{p-c78e8081.entry.js → p-b5bee669.entry.js} +1 -1
- package/dist/vega/p-b5f308ee.entry.js +1 -0
- package/dist/vega/{p-43c3848f.entry.js → p-bbabb1c8.entry.js} +1 -1
- package/dist/vega/p-bbf1f988.entry.js +1 -0
- package/dist/vega/{p-e9cee498.entry.js → p-c2d28797.entry.js} +1 -1
- package/dist/vega/{p-40501057.entry.js → p-c3c0e415.entry.js} +1 -1
- package/dist/vega/{p-5946fadf.js → p-c553d37e.js} +1 -1
- package/dist/vega/{p-f6bccb06.entry.js → p-c5ecbc53.entry.js} +1 -1
- package/dist/vega/{p-2353b64f.entry.js → p-c9c6daa6.entry.js} +1 -1
- package/dist/vega/p-cb81fc2a.entry.js +1 -0
- package/dist/vega/p-ccb9bf86.js +1 -0
- package/dist/vega/{p-e371738b.js → p-ccf7518b.js} +1 -1
- package/dist/vega/{p-8b9a8603.entry.js → p-cf8d5b3f.entry.js} +1 -1
- package/dist/vega/{p-30561e1d.entry.js → p-d3a36d19.entry.js} +1 -1
- package/dist/vega/{p-cd1844ad.entry.js → p-d44943e2.entry.js} +1 -1
- package/dist/vega/{p-d3c8b871.entry.js → p-d4bb6f93.entry.js} +1 -1
- package/dist/vega/p-d62b85ff.entry.js +1 -0
- package/dist/vega/{p-ce7e9515.entry.js → p-d7f32ccf.entry.js} +1 -1
- package/dist/vega/p-dca3278f.js +1 -0
- package/dist/vega/{p-37dffdf6.entry.js → p-ddd28a8e.entry.js} +1 -1
- package/dist/vega/{p-2da12975.entry.js → p-ddf03de1.entry.js} +1 -1
- package/dist/vega/p-e0ecafca.js +1 -0
- package/dist/vega/p-e33e1e90.js +1 -0
- package/dist/vega/{p-5038b6d7.entry.js → p-e410c4ad.entry.js} +1 -1
- package/dist/vega/{p-a361456d.js → p-e4309574.js} +1 -1
- package/dist/vega/p-e5187a86.entry.js +1 -0
- package/dist/vega/{p-fc5dfb52.entry.js → p-e86c6802.entry.js} +1 -1
- package/dist/vega/{p-e3803943.js → p-ef605271.js} +1 -1
- package/dist/vega/{p-45ab490c.js → p-f0d4c78c.js} +1 -1
- package/dist/vega/{p-e41d9d0e.entry.js → p-f2f22b5d.entry.js} +1 -1
- package/dist/vega/{p-b6ebfd5c.entry.js → p-f8a29127.entry.js} +1 -1
- package/dist/vega/{p-cd9fb2ca.entry.js → p-fbd3be00.entry.js} +1 -1
- package/dist/vega/{p-450bf94d.entry.js → p-fda6e2cc.entry.js} +1 -1
- package/dist/vega/p-ff8dd200.js +1 -0
- package/dist/vega/{p-c67ce78c.entry.js → p-ffdacaf9.entry.js} +1 -1
- package/dist/vega/vega.esm.js +1 -1
- package/package.json +2 -16
- package/readme.md +0 -5
- package/dist/vega/p-0179f55d.js +0 -1
- package/dist/vega/p-07b56f2b.entry.js +0 -1
- package/dist/vega/p-209e0166.js +0 -1
- package/dist/vega/p-35df0f0a.entry.js +0 -1
- package/dist/vega/p-3cf4339a.entry.js +0 -1
- package/dist/vega/p-4e39adf5.entry.js +0 -1
- package/dist/vega/p-5319da71.entry.js +0 -1
- package/dist/vega/p-5de1acdb.js +0 -1
- package/dist/vega/p-5df9047c.js +0 -1
- package/dist/vega/p-683cfe24.js +0 -1
- package/dist/vega/p-7be548a7.js +0 -1
- package/dist/vega/p-8509c140.entry.js +0 -1
- package/dist/vega/p-8aa07ed0.js +0 -1
- package/dist/vega/p-8da860f6.js +0 -1
- package/dist/vega/p-ca9852bb.js +0 -1
- package/dist/vega/p-de885ef2.js +0 -1
- package/dist/vega/p-dee38163.entry.js +0 -1
- package/dist/vega/p-e5502873.entry.js +0 -1
- package/dist/vega/p-ea22cba0.js +0 -1
- package/dist/vega/p-ea54ce0a.js +0 -3
- package/dist/vega/p-ee3155bd.js +0 -1
- package/dist/vega/p-eee01ba7.entry.js +0 -1
- package/dist/vega/p-ef2b9846.entry.js +0 -1
- package/dist/vega/p-f4a01959.js +0 -1
- package/dist/vega/p-f5aefb2f.entry.js +0 -1
package/dist/collection/components/vega-table/slimmers/renderers/vega-table-pinned-renderer.js
CHANGED
|
@@ -28,6 +28,12 @@ export class VegaTablePinnedRenderer extends VegaSlimmer {
|
|
|
28
28
|
},
|
|
29
29
|
});
|
|
30
30
|
this.previouslyStyledCells = new Set();
|
|
31
|
+
// Each set tracks cells where exactly one dynamic class was added — cleared per class so
|
|
32
|
+
// that static classes from render() on the same cell are never inadvertently stripped
|
|
33
|
+
// (e.g. a cell that is both isRightStartPinned and the last-visible body cell).
|
|
34
|
+
this.dynamicRightDividerCells = new Set();
|
|
35
|
+
this.dynamicLeftDividerCells = new Set();
|
|
36
|
+
this.dynamicHideRightBorderCells = new Set();
|
|
31
37
|
this.clearPinnedPositionsTaskQueue = new SynchronizeTaskQueue(1);
|
|
32
38
|
}
|
|
33
39
|
componentDidLoad() {
|
|
@@ -36,7 +42,17 @@ export class VegaTablePinnedRenderer extends VegaSlimmer {
|
|
|
36
42
|
async componentDidRender() {
|
|
37
43
|
await this.clearPinnedPositionsTaskQueue.runTask();
|
|
38
44
|
this.updateTableRowPinnedPosition();
|
|
39
|
-
this.updateTableCellPinnedPosition();
|
|
45
|
+
const unreadyCells = this.updateTableCellPinnedPosition();
|
|
46
|
+
if (unreadyCells.length > 0) {
|
|
47
|
+
// In dev builds, Stencil's HMR flag forces loadModule() to always use a
|
|
48
|
+
// dynamic import(), so a brand-new cell's first render is deferred. We wait
|
|
49
|
+
// for each unready cell via componentOnReady() — which resolves exactly when
|
|
50
|
+
// the cell's shadow <td> is first rendered — then apply sticky positioning.
|
|
51
|
+
// In production (hotModuleReplacement=false) loadModule() is synchronous, so
|
|
52
|
+
// cells are always ready by componentDidRender and this branch is never reached.
|
|
53
|
+
await Promise.all(unreadyCells.map((cell) => cell.componentOnReady()));
|
|
54
|
+
this.updateTableCellPinnedPosition();
|
|
55
|
+
}
|
|
40
56
|
}
|
|
41
57
|
watchColumnStructureModel() {
|
|
42
58
|
void this.clearPinnedPositionsTaskQueue.enqueue({
|
|
@@ -48,24 +64,165 @@ export class VegaTablePinnedRenderer extends VegaSlimmer {
|
|
|
48
64
|
updateTableCellPinnedPosition() {
|
|
49
65
|
if (!this.columnStructureModel.hasLeftPinnedColumn() &&
|
|
50
66
|
!this.columnStructureModel.hasRightPinnedColumn())
|
|
51
|
-
return;
|
|
67
|
+
return [];
|
|
68
|
+
// Clear stale dynamic boundary classes before re-evaluating breakpoint visibility.
|
|
69
|
+
// This ensures the classes are removed when the viewport grows back (e.g. column B
|
|
70
|
+
// becomes visible again) and not only when the column structure changes.
|
|
71
|
+
// Each set only removes the single class it tracks, preserving any other static
|
|
72
|
+
// border classes that render() placed on the same cell (VD-9565).
|
|
73
|
+
this.dynamicRightDividerCells.forEach((cell) => cell.classList.remove('right-divider'));
|
|
74
|
+
this.dynamicRightDividerCells.clear();
|
|
75
|
+
this.dynamicLeftDividerCells.forEach((cell) => cell.classList.remove('left-divider'));
|
|
76
|
+
this.dynamicLeftDividerCells.clear();
|
|
77
|
+
this.dynamicHideRightBorderCells.forEach((cell) => cell.classList.remove('hide-right-border'));
|
|
78
|
+
this.dynamicHideRightBorderCells.clear();
|
|
52
79
|
// if not have head row, it means no pinned, so no need to update
|
|
53
80
|
const row = this.host.shadowRoot.querySelector('vega-table-head-row');
|
|
54
81
|
// to avoid window resize before table rendered.
|
|
55
82
|
// @see{module:resize-pinned-position-by-edit-row}
|
|
56
83
|
/* istanbul ignore next */
|
|
57
84
|
if (!row)
|
|
58
|
-
return;
|
|
85
|
+
return [];
|
|
59
86
|
const headCellRenderInputMap = this.vegaTableRenderInputController.getHeadCellRenderInputMap();
|
|
60
87
|
const pinnedColumnBodyCellRenderInputMap = this.vegaTableRenderInputController.getPinnedColumnBodyCellRenderInputMap();
|
|
61
88
|
const [prevShadowThWidth, nextShadowThWidth] = this.getRowShadowThWidths();
|
|
62
89
|
const leafWidths = this.getLeafWidths();
|
|
90
|
+
// Track the last visible left-pinned head cell and first visible right-pinned head cell
|
|
91
|
+
// to dynamically apply boundary classes when breakpoint-hidden columns shift the boundary.
|
|
92
|
+
let lastVisibleLeftPinnedHeadCell = null;
|
|
93
|
+
let firstVisibleRightPinnedHeadCell = null;
|
|
94
|
+
let lastVisibleRightPinnedHeadCell = null;
|
|
63
95
|
headCellRenderInputMap.forEach((renderInput, headCell) => {
|
|
96
|
+
var _a;
|
|
97
|
+
/* istanbul ignore next -- defensive null-guard: jsdom always provides shadowRoot */
|
|
98
|
+
const shadowCell = (_a = headCell.shadowRoot) === null || _a === void 0 ? void 0 : _a.querySelector('th, td');
|
|
99
|
+
const isVisible = shadowCell ? shadowCell.getBoundingClientRect().width > 0 : false;
|
|
64
100
|
this.updateCellPinnedPosition(renderInput, headCell, prevShadowThWidth, leafWidths, nextShadowThWidth);
|
|
101
|
+
if (isVisible && renderInput.pinned === 'left') {
|
|
102
|
+
lastVisibleLeftPinnedHeadCell = shadowCell;
|
|
103
|
+
}
|
|
104
|
+
if (isVisible && renderInput.pinned === 'right' && !firstVisibleRightPinnedHeadCell) {
|
|
105
|
+
firstVisibleRightPinnedHeadCell = shadowCell;
|
|
106
|
+
}
|
|
107
|
+
if (isVisible && renderInput.pinned === 'right') {
|
|
108
|
+
lastVisibleRightPinnedHeadCell = shadowCell;
|
|
109
|
+
}
|
|
65
110
|
});
|
|
66
|
-
|
|
67
|
-
|
|
111
|
+
// Remove stale entries (disconnected cells) left over from prior renders (e.g. after drag reorder).
|
|
112
|
+
pinnedColumnBodyCellRenderInputMap.forEach((_, bodyCell) => {
|
|
113
|
+
/* istanbul ignore next -- defensive cleanup for disconnected cells; jsdom always keeps cells connected */
|
|
114
|
+
if (!(bodyCell === null || bodyCell === void 0 ? void 0 : bodyCell.isConnected)) {
|
|
115
|
+
pinnedColumnBodyCellRenderInputMap.delete(bodyCell);
|
|
116
|
+
}
|
|
117
|
+
});
|
|
118
|
+
// Track last visible left-pinned body cells per row for boundary class propagation.
|
|
119
|
+
const lastVisibleLeftPinnedBodyCells = new Map();
|
|
120
|
+
const firstVisibleRightPinnedBodyCells = new Map();
|
|
121
|
+
const lastVisibleRightPinnedBodyCells = new Map();
|
|
122
|
+
// Collect body cells whose shadow DOM is not yet ready (newly created cells).
|
|
123
|
+
const unreadyCells = [];
|
|
124
|
+
pinnedColumnBodyCellRenderInputMap.forEach((renderInput, bodyCell) => {
|
|
125
|
+
var _a;
|
|
126
|
+
/* istanbul ignore next -- defensive null-guard: jsdom always provides shadowRoot */
|
|
127
|
+
const shadowCell = (_a = bodyCell.shadowRoot) === null || _a === void 0 ? void 0 : _a.querySelector('th, td');
|
|
128
|
+
const isVisible = shadowCell ? shadowCell.getBoundingClientRect().width > 0 : false;
|
|
129
|
+
// Shadow DOM not ready yet — cell was just created (e.g. colspan collapsed after drag).
|
|
130
|
+
if (['left', 'right'].includes(renderInput.pinned) && !shadowCell) {
|
|
131
|
+
unreadyCells.push(bodyCell);
|
|
132
|
+
return;
|
|
133
|
+
}
|
|
134
|
+
this.updateCellPinnedPosition(renderInput, bodyCell, prevShadowThWidth, leafWidths, nextShadowThWidth);
|
|
135
|
+
if (isVisible && renderInput.pinned === 'left') {
|
|
136
|
+
// Use the parent row as the grouping key for per-row tracking
|
|
137
|
+
const parentRow = bodyCell.closest('vega-table-row');
|
|
138
|
+
if (parentRow) {
|
|
139
|
+
lastVisibleLeftPinnedBodyCells.set(parentRow, shadowCell);
|
|
140
|
+
}
|
|
141
|
+
}
|
|
142
|
+
if (isVisible && renderInput.pinned === 'right') {
|
|
143
|
+
const parentRow = bodyCell.closest('vega-table-row');
|
|
144
|
+
if (parentRow && !firstVisibleRightPinnedBodyCells.has(parentRow)) {
|
|
145
|
+
firstVisibleRightPinnedBodyCells.set(parentRow, shadowCell);
|
|
146
|
+
}
|
|
147
|
+
if (parentRow) {
|
|
148
|
+
lastVisibleRightPinnedBodyCells.set(parentRow, shadowCell);
|
|
149
|
+
}
|
|
150
|
+
}
|
|
68
151
|
});
|
|
152
|
+
// Apply boundary divider to the last visible left-pinned cell when the static
|
|
153
|
+
// isLeftEndPinned column is hidden by breakpoint.
|
|
154
|
+
if (lastVisibleLeftPinnedHeadCell &&
|
|
155
|
+
!lastVisibleLeftPinnedHeadCell.classList.contains('right-divider')) {
|
|
156
|
+
// Check if the static boundary column is hidden — if leafWidths shows 0 for the
|
|
157
|
+
// isLeftEndPinned column, the boundary has shifted.
|
|
158
|
+
const leafRenderInputs = this.vegaTableRenderInputController.getLeafRenderInputs();
|
|
159
|
+
const staticBoundaryLeaf = leafRenderInputs.find((leaf) => leaf.isLeftEndPinned);
|
|
160
|
+
if (staticBoundaryLeaf && leafWidths[staticBoundaryLeaf.columnIndex] === 0) {
|
|
161
|
+
lastVisibleLeftPinnedHeadCell.classList.add('right-divider');
|
|
162
|
+
this.dynamicRightDividerCells.add(lastVisibleLeftPinnedHeadCell);
|
|
163
|
+
lastVisibleLeftPinnedBodyCells.forEach((cell) => {
|
|
164
|
+
// Only track cells that don't already hold `right-divider` from their
|
|
165
|
+
// static render (effectiveRenderInput.isLeftEndPinned). If we add a
|
|
166
|
+
// statically-classed cell here, the per-class clear on the next resize
|
|
167
|
+
// would erroneously remove the static class (VD-9540).
|
|
168
|
+
if (!cell.classList.contains('right-divider')) {
|
|
169
|
+
cell.classList.add('right-divider');
|
|
170
|
+
this.dynamicRightDividerCells.add(cell);
|
|
171
|
+
}
|
|
172
|
+
});
|
|
173
|
+
}
|
|
174
|
+
}
|
|
175
|
+
if (firstVisibleRightPinnedHeadCell &&
|
|
176
|
+
!firstVisibleRightPinnedHeadCell.classList.contains('left-divider')) {
|
|
177
|
+
const leafRenderInputs = this.vegaTableRenderInputController.getLeafRenderInputs();
|
|
178
|
+
const staticBoundaryLeaf = leafRenderInputs.find((leaf) => leaf.isRightStartPinned);
|
|
179
|
+
if (staticBoundaryLeaf && leafWidths[staticBoundaryLeaf.columnIndex] === 0) {
|
|
180
|
+
firstVisibleRightPinnedHeadCell.classList.add('left-divider');
|
|
181
|
+
this.dynamicLeftDividerCells.add(firstVisibleRightPinnedHeadCell);
|
|
182
|
+
firstVisibleRightPinnedBodyCells.forEach((cell) => {
|
|
183
|
+
// Only track cells that don't already hold `left-divider` from their
|
|
184
|
+
// static render (effectiveRenderInput.isRightStartPinned). If we add a
|
|
185
|
+
// statically-classed cell here, the per-class clear on the next resize
|
|
186
|
+
// would erroneously remove the static class (VD-9540).
|
|
187
|
+
if (!cell.classList.contains('left-divider')) {
|
|
188
|
+
cell.classList.add('left-divider');
|
|
189
|
+
this.dynamicLeftDividerCells.add(cell);
|
|
190
|
+
}
|
|
191
|
+
});
|
|
192
|
+
}
|
|
193
|
+
}
|
|
194
|
+
// Apply hide-right-border to the last visible right-pinned cell when the structural
|
|
195
|
+
// right-most column is hidden by breakpoint. Without this, the new right-most visible
|
|
196
|
+
// pinned column keeps a right border while the head cell suppresses it (head cells use
|
|
197
|
+
// isViewEnd), leaving an extra vertical border at the table's right edge (VD-9565).
|
|
198
|
+
if (lastVisibleRightPinnedHeadCell &&
|
|
199
|
+
!lastVisibleRightPinnedHeadCell.classList.contains('hide-right-border')) {
|
|
200
|
+
const leafRenderInputs = this.vegaTableRenderInputController.getLeafRenderInputs();
|
|
201
|
+
// The structural right-most column is the last right-pinned leaf. Leaf render
|
|
202
|
+
// inputs do not carry `isViewEnd` (unlike head render inputs), so identify the
|
|
203
|
+
// boundary via `pinned` order instead.
|
|
204
|
+
const rightPinnedLeaves = leafRenderInputs.filter((leaf) => leaf.pinned === 'right');
|
|
205
|
+
const structuralEndLeaf = rightPinnedLeaves[rightPinnedLeaves.length - 1];
|
|
206
|
+
if (structuralEndLeaf && leafWidths[structuralEndLeaf.columnIndex] === 0) {
|
|
207
|
+
lastVisibleRightPinnedHeadCell.classList.add('hide-right-border');
|
|
208
|
+
this.dynamicHideRightBorderCells.add(lastVisibleRightPinnedHeadCell);
|
|
209
|
+
lastVisibleRightPinnedBodyCells.forEach((cell) => {
|
|
210
|
+
// Only track cells that don't already hold `hide-right-border` from their
|
|
211
|
+
// static render (isViewEnd/isNoPinnedEnd). Adding a statically-classed cell
|
|
212
|
+
// here would let the per-class clear erroneously strip the static class on
|
|
213
|
+
// the next resize (mirrors the VD-9540 divider guard).
|
|
214
|
+
if (!cell.classList.contains('hide-right-border')) {
|
|
215
|
+
cell.classList.add('hide-right-border');
|
|
216
|
+
this.dynamicHideRightBorderCells.add(cell);
|
|
217
|
+
}
|
|
218
|
+
});
|
|
219
|
+
}
|
|
220
|
+
}
|
|
221
|
+
// Sync colspan on pinned body cells that span breakpoint-hidden columns.
|
|
222
|
+
// Chrome does not honour visibility:collapse / display:none on <col> for table layout,
|
|
223
|
+
// so we directly adjust the shadow <td> colspan attribute to exclude hidden columns (VD-9540).
|
|
224
|
+
this.syncColspanForHiddenColumns(leafWidths, pinnedColumnBodyCellRenderInputMap);
|
|
225
|
+
return unreadyCells;
|
|
69
226
|
}
|
|
70
227
|
getRowShadowThWidths() {
|
|
71
228
|
const row = this.host.shadowRoot.querySelector('vega-table-head-row');
|
|
@@ -102,6 +259,33 @@ export class VegaTablePinnedRenderer extends VegaSlimmer {
|
|
|
102
259
|
}
|
|
103
260
|
});
|
|
104
261
|
}
|
|
262
|
+
syncColspanForHiddenColumns(leafWidths, pinnedColumnBodyCellRenderInputMap) {
|
|
263
|
+
// NOTE: renderInput.colSpan is null for flat (non-group) tables — it only holds a value for
|
|
264
|
+
// group-column subtree spans. We read the original colspan from the component prop (bodyCell.colSpan)
|
|
265
|
+
// which is always the rendered value, unaffected by our shadow-DOM attribute writes.
|
|
266
|
+
//
|
|
267
|
+
// Skip when ALL leaf widths are 0 — that means the table is running in jsdom / an off-screen
|
|
268
|
+
// context where getBoundingClientRect() always returns 0. Adjusting in that state would
|
|
269
|
+
// incorrectly reduce every colspan to 1 (no visible columns = Math.max(1,0)=1).
|
|
270
|
+
if (leafWidths.every((w) => w === 0))
|
|
271
|
+
return;
|
|
272
|
+
pinnedColumnBodyCellRenderInputMap.forEach((renderInput, bodyCell) => {
|
|
273
|
+
var _a;
|
|
274
|
+
const originalColspan = bodyCell.colSpan || 1;
|
|
275
|
+
if (originalColspan <= 1)
|
|
276
|
+
return;
|
|
277
|
+
/* istanbul ignore next -- defensive null-guard: jsdom always provides shadowRoot */
|
|
278
|
+
const shadowTd = (_a = bodyCell.shadowRoot) === null || _a === void 0 ? void 0 : _a.querySelector('td');
|
|
279
|
+
/* istanbul ignore next -- shadowTd is always present in jsdom */
|
|
280
|
+
if (!shadowTd)
|
|
281
|
+
return;
|
|
282
|
+
// Count how many columns in the span are visible (width > 0) — hidden breakpoint
|
|
283
|
+
// columns have leafWidth === 0 because their <th> has display:none.
|
|
284
|
+
const spanned = leafWidths.slice(renderInput.columnIndex, renderInput.columnIndex + originalColspan);
|
|
285
|
+
const effectiveColspan = Math.max(1, spanned.filter((w) => w > 0).length);
|
|
286
|
+
shadowTd.setAttribute('colspan', String(effectiveColspan));
|
|
287
|
+
});
|
|
288
|
+
}
|
|
105
289
|
updateCellPinnedPosition(renderInput, headCell, prevShadowThWidth, leafWidths, nextShadowThWidth) {
|
|
106
290
|
if (['left', 'right'].includes(renderInput.pinned)) {
|
|
107
291
|
const shadowCell = headCell.shadowRoot.querySelector('th, td');
|
|
@@ -113,10 +297,17 @@ export class VegaTablePinnedRenderer extends VegaSlimmer {
|
|
|
113
297
|
this.updatePinnedPosition(shadowCell, 'left', position);
|
|
114
298
|
}
|
|
115
299
|
if (renderInput.pinned === 'right') {
|
|
116
|
-
|
|
300
|
+
// renderInput.colSpan is null for flat (non-group) tables — it only carries a value
|
|
301
|
+
// for group-column subtree spans (multi-level headers). For body cells with an HTML
|
|
302
|
+
// colspan (e.g. colSpan:2 spanning the last two right-pinned columns), we read the
|
|
303
|
+
// actual span from the host component prop so the right-edge offset is calculated
|
|
304
|
+
// over the full spanned width rather than just one column (VD-9565).
|
|
305
|
+
const colSpan = isNonNullable(renderInput.colSpan)
|
|
306
|
+
? renderInput.colSpan
|
|
307
|
+
: headCell.colSpan || 1;
|
|
117
308
|
const position = nextShadowThWidth +
|
|
118
309
|
leafWidths
|
|
119
|
-
.slice(renderInput.columnIndex +
|
|
310
|
+
.slice(renderInput.columnIndex + colSpan)
|
|
120
311
|
.reduce((count, colWidth) => count + colWidth, 0);
|
|
121
312
|
this.updatePinnedPosition(shadowCell, 'right', position);
|
|
122
313
|
}
|
|
@@ -171,6 +362,15 @@ export class VegaTablePinnedRenderer extends VegaSlimmer {
|
|
|
171
362
|
cell.style.width = '';
|
|
172
363
|
}
|
|
173
364
|
});
|
|
365
|
+
// Remove boundary classes only from cells where they were dynamically added
|
|
366
|
+
// (breakpoint-shifted boundaries). Static boundary classes from renderInput are
|
|
367
|
+
// re-applied by the cell's own render cycle.
|
|
368
|
+
this.dynamicRightDividerCells.forEach((cell) => cell.classList.remove('right-divider'));
|
|
369
|
+
this.dynamicRightDividerCells.clear();
|
|
370
|
+
this.dynamicLeftDividerCells.forEach((cell) => cell.classList.remove('left-divider'));
|
|
371
|
+
this.dynamicLeftDividerCells.clear();
|
|
372
|
+
this.dynamicHideRightBorderCells.forEach((cell) => cell.classList.remove('hide-right-border'));
|
|
373
|
+
this.dynamicHideRightBorderCells.clear();
|
|
174
374
|
this.previouslyStyledCells.clear();
|
|
175
375
|
}
|
|
176
376
|
updatePinnedPosition(cell, type, position) {
|
|
@@ -15,6 +15,18 @@ export class VegaTableRowRenderer extends VegaSlimmer {
|
|
|
15
15
|
this.renderTableRowComponent = (rowProps) => {
|
|
16
16
|
const { rowKey, index, record, isVisibleInCurrentPage } = rowProps;
|
|
17
17
|
const renderInputs = this.vegaTableRenderInputController.getLeafRenderInputs();
|
|
18
|
+
// Resolve every leaf's colspan in one pass. Entries are index-aligned with renderInputs;
|
|
19
|
+
// a `null` entry marks a leaf consumed by a preceding spanning cell (skip it).
|
|
20
|
+
const colSpanResults = this.vegaTableBodyColSpanController.resolveRow(record, index, renderInputs);
|
|
21
|
+
const cells = [];
|
|
22
|
+
renderInputs.forEach((renderInput, leafIndex) => {
|
|
23
|
+
const colSpanResult = colSpanResults[leafIndex];
|
|
24
|
+
if (!colSpanResult) {
|
|
25
|
+
// Consumed by a preceding spanning cell — nothing to render for this leaf.
|
|
26
|
+
return;
|
|
27
|
+
}
|
|
28
|
+
cells.push(this.vegaTableCellRenderer.render(renderInput, record, index, colSpanResult));
|
|
29
|
+
});
|
|
18
30
|
return (h("vega-table-row", { class: {
|
|
19
31
|
'v-hidden': !isVisibleInCurrentPage,
|
|
20
32
|
}, key: `vega-table-row-${rowKey}`, rowKey: rowKey,
|
|
@@ -23,9 +35,7 @@ export class VegaTableRowRenderer extends VegaSlimmer {
|
|
|
23
35
|
DomNodeSubjectObserverFactory.addUniqueObserverToNode(ref, VegaClick, () => {
|
|
24
36
|
this.rowClickEventEmitter.emit({ record: record, index: index });
|
|
25
37
|
});
|
|
26
|
-
}, striped: this.striped && index % 2 === 1, rowDivider: this.rowDivider && !rowProps.isLastRow },
|
|
27
|
-
return this.vegaTableCellRenderer.render(renderInput, record, index);
|
|
28
|
-
})));
|
|
38
|
+
}, striped: this.striped && index % 2 === 1, rowDivider: this.rowDivider && !rowProps.isLastRow }, cells));
|
|
29
39
|
};
|
|
30
40
|
}
|
|
31
41
|
render(rowProps, editable) {
|
|
@@ -42,6 +52,9 @@ __decorate([
|
|
|
42
52
|
__decorate([
|
|
43
53
|
MapToComponentField()
|
|
44
54
|
], VegaTableRowRenderer.prototype, "vegaTableCellRenderer", void 0);
|
|
55
|
+
__decorate([
|
|
56
|
+
MapToComponentField()
|
|
57
|
+
], VegaTableRowRenderer.prototype, "vegaTableBodyColSpanController", void 0);
|
|
45
58
|
__decorate([
|
|
46
59
|
MapToComponentField()
|
|
47
60
|
], VegaTableRowRenderer.prototype, "striped", void 0);
|
|
@@ -40,7 +40,7 @@ export class VegaTableCell {
|
|
|
40
40
|
};
|
|
41
41
|
}
|
|
42
42
|
render() {
|
|
43
|
-
var _a, _b, _c;
|
|
43
|
+
var _a, _b, _c, _d, _e, _f;
|
|
44
44
|
const responsiveClass = generateResponsiveClass(this.breakpoint, 'v-table-cell');
|
|
45
45
|
const columnAlignClass = generateTextAlignClass(this.textAlign);
|
|
46
46
|
const overflowClass = this.getCellOverflowClass();
|
|
@@ -54,7 +54,7 @@ export class VegaTableCell {
|
|
|
54
54
|
if ((_b = this.renderInput) === null || _b === void 0 ? void 0 : _b.isLeftEndPinned) {
|
|
55
55
|
columnClasses.push('right-divider');
|
|
56
56
|
}
|
|
57
|
-
if ((_c = this.renderInput) === null || _c === void 0 ? void 0 : _c.isNoPinnedEnd) {
|
|
57
|
+
if (((_c = this.renderInput) === null || _c === void 0 ? void 0 : _c.isNoPinnedEnd) || ((_d = this.renderInput) === null || _d === void 0 ? void 0 : _d.isViewEnd)) {
|
|
58
58
|
columnClasses.push('hide-right-border');
|
|
59
59
|
}
|
|
60
60
|
return sanitizeVegaComponent(h(Host, { class: arrayToClassString([
|
|
@@ -65,8 +65,8 @@ export class VegaTableCell {
|
|
|
65
65
|
this.checked && 'checked',
|
|
66
66
|
this.striped && 'striped',
|
|
67
67
|
this.expanded && 'expanded',
|
|
68
|
-
]) },
|
|
69
|
-
h("td", { class: arrayToClassString(columnClasses), part: "cell",
|
|
68
|
+
]), "aria-colspan": ((_e = this.colSpan) !== null && _e !== void 0 ? _e : 0) > 1 ? String(this.colSpan) : null },
|
|
69
|
+
h("td", { class: arrayToClassString(columnClasses), part: "cell", colSpan: ((_f = this.colSpan) !== null && _f !== void 0 ? _f : 0) > 1 ? this.colSpan : null,
|
|
70
70
|
/* eslint-disable-next-line react/jsx-no-bind */
|
|
71
71
|
onMouseEnter: this.onMouseEnter.bind(this),
|
|
72
72
|
/* eslint-disable-next-line react/jsx-no-bind */
|
|
@@ -175,6 +175,26 @@ export class VegaTableCell {
|
|
|
175
175
|
},
|
|
176
176
|
"attribute": "width",
|
|
177
177
|
"reflect": false
|
|
178
|
+
},
|
|
179
|
+
"colSpan": {
|
|
180
|
+
"type": "number",
|
|
181
|
+
"mutable": false,
|
|
182
|
+
"complexType": {
|
|
183
|
+
"original": "number",
|
|
184
|
+
"resolved": "number",
|
|
185
|
+
"references": {}
|
|
186
|
+
},
|
|
187
|
+
"required": false,
|
|
188
|
+
"optional": true,
|
|
189
|
+
"docs": {
|
|
190
|
+
"tags": [{
|
|
191
|
+
"name": "vegaVersion",
|
|
192
|
+
"text": "2.93.0"
|
|
193
|
+
}],
|
|
194
|
+
"text": "Number of columns this cell should span horizontally.\nValues of `undefined`, `null`, and `1` are treated as no spanning.\nWhen the effective span is `>= 2`, a `colspan` attribute is set on the inner `<td>`\nand `aria-colspan` is exposed on the host element for assistive technology."
|
|
195
|
+
},
|
|
196
|
+
"attribute": "col-span",
|
|
197
|
+
"reflect": false
|
|
178
198
|
}
|
|
179
199
|
}; }
|
|
180
200
|
static get states() { return {
|
|
@@ -65,13 +65,22 @@ export class VegaTableExpandRowColSpanController extends VegaSlimmer {
|
|
|
65
65
|
const cells = isTemplateRenderMode
|
|
66
66
|
? table.querySelectorAll('vega-table-row:nth-of-type(1) vega-table-cell')
|
|
67
67
|
: table.shadowRoot.querySelectorAll('vega-table-row:nth-of-type(1) vega-table-cell');
|
|
68
|
-
return Array.from(cells)
|
|
68
|
+
return Array.from(cells)
|
|
69
|
+
.filter((cell) => {
|
|
69
70
|
if (!cell.breakpoint)
|
|
70
71
|
return true;
|
|
71
72
|
if (currentBreakpoint === 'default')
|
|
72
73
|
return false;
|
|
73
74
|
return Breakpoints[currentBreakpoint] >= Breakpoints[cell.breakpoint];
|
|
74
|
-
})
|
|
75
|
+
})
|
|
76
|
+
.reduce((total, cell) => {
|
|
77
|
+
var _a;
|
|
78
|
+
// A cell with `colSpan >= 2` is a single element that occupies multiple physical
|
|
79
|
+
// columns, so add its span rather than 1. This keeps the expand-row colspan aligned
|
|
80
|
+
// with the full table width when body cells merge columns.
|
|
81
|
+
const span = (_a = cell.colSpan) !== null && _a !== void 0 ? _a : 1;
|
|
82
|
+
return total + (span > 1 ? span : 1);
|
|
83
|
+
}, 0);
|
|
75
84
|
}
|
|
76
85
|
}
|
|
77
86
|
__decorate([
|
|
@@ -11,11 +11,12 @@ import { generateResponsiveClass } from '../../../utils';
|
|
|
11
11
|
import { arrayToClassString } from '../../../../../utils/ui';
|
|
12
12
|
export class VegaTableFootCellRenderer extends VegaSlimmer {
|
|
13
13
|
render() {
|
|
14
|
+
var _a;
|
|
14
15
|
return (h("td", { class: {
|
|
15
16
|
'vega-table-cell': true,
|
|
16
17
|
'break-word': !FeatureFlag.isEnabled('VEGA_TABLE.ENABLE_NEW_CELL_BREAK_WORDS_STYLE'),
|
|
17
18
|
[generateResponsiveClass(this.breakpoint, 'v-table-cell')]: true,
|
|
18
|
-
} },
|
|
19
|
+
}, colSpan: ((_a = this.colSpan) !== null && _a !== void 0 ? _a : 0) > 1 ? this.colSpan : null },
|
|
19
20
|
h("div", { class: arrayToClassString(['vega-table-column', this.textAlign]) },
|
|
20
21
|
h("span", { class: "vega-table-column-label" },
|
|
21
22
|
h("slot", null)))));
|
|
@@ -30,3 +31,6 @@ __decorate([
|
|
|
30
31
|
__decorate([
|
|
31
32
|
MapToComponentField()
|
|
32
33
|
], VegaTableFootCellRenderer.prototype, "textAlign", void 0);
|
|
34
|
+
__decorate([
|
|
35
|
+
MapToComponentField()
|
|
36
|
+
], VegaTableFootCellRenderer.prototype, "colSpan", void 0);
|
|
@@ -26,10 +26,11 @@ export class VegaTableFootCell {
|
|
|
26
26
|
this.currentBreakpoint = getCurrentBreakpoint();
|
|
27
27
|
}
|
|
28
28
|
render() {
|
|
29
|
+
var _a;
|
|
29
30
|
return sanitizeVegaComponent(h(Host, { class: {
|
|
30
31
|
[`density-${ResponsiveFormatFacade.formatCustom(this.density)}`]: true,
|
|
31
32
|
'column-divider': this.columnDivider,
|
|
32
|
-
}, style: { width: this.width } }, this.vegaTableFootCellRenderer.render()), this.host);
|
|
33
|
+
}, style: { width: this.width }, "aria-colspan": ((_a = this.colSpan) !== null && _a !== void 0 ? _a : 0) > 1 ? String(this.colSpan) : null }, this.vegaTableFootCellRenderer.render()), this.host);
|
|
33
34
|
}
|
|
34
35
|
static get is() { return "vega-table-foot-cell"; }
|
|
35
36
|
static get encapsulation() { return "shadow"; }
|
|
@@ -104,6 +105,26 @@ export class VegaTableFootCell {
|
|
|
104
105
|
},
|
|
105
106
|
"attribute": "width",
|
|
106
107
|
"reflect": false
|
|
108
|
+
},
|
|
109
|
+
"colSpan": {
|
|
110
|
+
"type": "number",
|
|
111
|
+
"mutable": false,
|
|
112
|
+
"complexType": {
|
|
113
|
+
"original": "number",
|
|
114
|
+
"resolved": "number",
|
|
115
|
+
"references": {}
|
|
116
|
+
},
|
|
117
|
+
"required": false,
|
|
118
|
+
"optional": true,
|
|
119
|
+
"docs": {
|
|
120
|
+
"tags": [{
|
|
121
|
+
"name": "vegaVersion",
|
|
122
|
+
"text": "2.93.0"
|
|
123
|
+
}],
|
|
124
|
+
"text": "Number of columns this foot cell should span horizontally.\nValues of `undefined`, `null`, and `1` are treated as no spanning.\nWhen the effective span is `>= 2`, a `colspan` attribute is set on the inner `<td>`\nand `aria-colspan` is exposed on the host element for assistive technology."
|
|
125
|
+
},
|
|
126
|
+
"attribute": "col-span",
|
|
127
|
+
"reflect": false
|
|
107
128
|
}
|
|
108
129
|
}; }
|
|
109
130
|
static get states() { return {
|
|
@@ -102,25 +102,30 @@ table:not(.show-edit-error) *::part(field-error-message) {
|
|
|
102
102
|
|
|
103
103
|
col.v-hidden {
|
|
104
104
|
display: none;
|
|
105
|
+
visibility: collapse;
|
|
105
106
|
}
|
|
106
107
|
@media (min-width: 320px) {
|
|
107
108
|
col.S\:v-table-column {
|
|
108
109
|
display: table-column;
|
|
110
|
+
visibility: visible;
|
|
109
111
|
}
|
|
110
112
|
}
|
|
111
113
|
@media (min-width: 768px) {
|
|
112
114
|
col.M\:v-table-column {
|
|
113
115
|
display: table-column;
|
|
116
|
+
visibility: visible;
|
|
114
117
|
}
|
|
115
118
|
}
|
|
116
119
|
@media (min-width: 1024px) {
|
|
117
120
|
col.L\:v-table-column {
|
|
118
121
|
display: table-column;
|
|
122
|
+
visibility: visible;
|
|
119
123
|
}
|
|
120
124
|
}
|
|
121
125
|
@media (min-width: 1440px) {
|
|
122
126
|
col.XL\:v-table-column {
|
|
123
127
|
display: table-column;
|
|
128
|
+
visibility: visible;
|
|
124
129
|
}
|
|
125
130
|
}
|
|
126
131
|
|
|
@@ -8,6 +8,7 @@ import { Component, Element, Prop, State, Event, Watch, Method, h } from '@stenc
|
|
|
8
8
|
import { ImmutableSet } from '../../helpers/immutable/immutable-set';
|
|
9
9
|
import { InjectVegaGlobalSlimmer, InjectVegaSlimmer, methodPlaceholder, slotPlaceholder, } from 'vega-slimmer/core';
|
|
10
10
|
import { VegaTableCellRenderer } from './slimmers/renderers/vega-table-cell-renderer';
|
|
11
|
+
import { VegaTableBodyColSpanController } from './slimmers/controllers/vega-table-body-col-span-controller';
|
|
11
12
|
import { VegaTableExpandRowController } from './slimmers/controllers/vega-table-expand-row-controller';
|
|
12
13
|
import { VegaTableRowSelectionController } from './slimmers/controllers/vega-table-row-selection-controller';
|
|
13
14
|
import { VegaTableDataSourceController } from './slimmers/controllers/vega-table-data-source-controller';
|
|
@@ -53,6 +54,7 @@ export class VegaTable {
|
|
|
53
54
|
this.vegaTableBodyRenderer = new VegaTableBodyRenderer();
|
|
54
55
|
this.vegaTableRowRenderer = new VegaTableRowRenderer();
|
|
55
56
|
this.vegaTableCellRenderer = new VegaTableCellRenderer();
|
|
57
|
+
this.vegaTableBodyColSpanController = new VegaTableBodyColSpanController();
|
|
56
58
|
this.vegaTablePaginationRenderer = new VegaTablePaginationRenderer();
|
|
57
59
|
this.vegaTableScrollContainerRenderer = new VegaTableScrollContainerRenderer();
|
|
58
60
|
this.vegaTableRowSelectionController = new VegaTableRowSelectionController();
|
|
@@ -1950,6 +1952,9 @@ __decorate([
|
|
|
1950
1952
|
__decorate([
|
|
1951
1953
|
InjectVegaSlimmer()
|
|
1952
1954
|
], VegaTable.prototype, "vegaTableCellRenderer", void 0);
|
|
1955
|
+
__decorate([
|
|
1956
|
+
InjectVegaSlimmer()
|
|
1957
|
+
], VegaTable.prototype, "vegaTableBodyColSpanController", void 0);
|
|
1953
1958
|
__decorate([
|
|
1954
1959
|
InjectVegaSlimmer()
|
|
1955
1960
|
], VegaTable.prototype, "vegaTablePaginationRenderer", void 0);
|
|
@@ -13,7 +13,7 @@ import { VegaComponentUsageRuntimeMetricsSlimmer } from '../../helpers/slimmers/
|
|
|
13
13
|
*/
|
|
14
14
|
/**
|
|
15
15
|
* This is an internal used component and shouldn't be used by client,
|
|
16
|
-
* it
|
|
16
|
+
* it is not part of the public component surface.
|
|
17
17
|
*/
|
|
18
18
|
export class VegaText {
|
|
19
19
|
constructor() {
|
|
@@ -290,9 +290,7 @@ export class VegaTextarea {
|
|
|
290
290
|
if (this.textareaRef.value !== this.value) {
|
|
291
291
|
this.textareaRef.value = this.value;
|
|
292
292
|
}
|
|
293
|
-
|
|
294
|
-
this.currentCharCount = value.length;
|
|
295
|
-
}
|
|
293
|
+
this.currentCharCount = value.length;
|
|
296
294
|
ChangeManager.notify(FORM_ELEMENT_VALUE_CHANGE, {
|
|
297
295
|
host: this.host,
|
|
298
296
|
detail: value,
|
|
@@ -29,6 +29,7 @@ export class VegaTimePickerRangeDropdownController extends ElementAppenderSlimme
|
|
|
29
29
|
translocation: { X: 0, Y: 8 },
|
|
30
30
|
placement: ['bottom', 'top'],
|
|
31
31
|
matchTargetWidth: true,
|
|
32
|
+
isScreenPosition: this.vegaDropdownProps.isScreenPosition,
|
|
32
33
|
};
|
|
33
34
|
}, () => new ClickOutsideOnlyToDismissStrategy(), 'isRangeDropdownShow');
|
|
34
35
|
this.isRangeDropdownShow = false;
|
|
@@ -74,6 +75,9 @@ export class VegaTimePickerRangeDropdownController extends ElementAppenderSlimme
|
|
|
74
75
|
__decorate([
|
|
75
76
|
MapToComponentField()
|
|
76
77
|
], VegaTimePickerRangeDropdownController.prototype, "positionRelativeTo", void 0);
|
|
78
|
+
__decorate([
|
|
79
|
+
MapToComponentField()
|
|
80
|
+
], VegaTimePickerRangeDropdownController.prototype, "vegaDropdownProps", void 0);
|
|
77
81
|
__decorate([
|
|
78
82
|
MapToComponentField()
|
|
79
83
|
], VegaTimePickerRangeDropdownController.prototype, "mode", void 0);
|
|
@@ -24,6 +24,7 @@ export class VegaTimePickerSingleDropdownController extends ElementAppenderSlimm
|
|
|
24
24
|
positionRelativeTo: this.positionRelativeTo,
|
|
25
25
|
translocation: { X: 0, Y: 8 },
|
|
26
26
|
placement: ['bottom', 'top'],
|
|
27
|
+
isScreenPosition: this.vegaDropdownProps.isScreenPosition,
|
|
27
28
|
}), () => new ClickOutsideOnlyToDismissStrategy());
|
|
28
29
|
}
|
|
29
30
|
/**
|
|
@@ -126,6 +127,9 @@ __decorate([
|
|
|
126
127
|
__decorate([
|
|
127
128
|
MapToComponentField()
|
|
128
129
|
], VegaTimePickerSingleDropdownController.prototype, "positionRelativeTo", void 0);
|
|
130
|
+
__decorate([
|
|
131
|
+
MapToComponentField()
|
|
132
|
+
], VegaTimePickerSingleDropdownController.prototype, "vegaDropdownProps", void 0);
|
|
129
133
|
__decorate([
|
|
130
134
|
MapToComponentField()
|
|
131
135
|
], VegaTimePickerSingleDropdownController.prototype, "selectedTimeValue", void 0);
|
|
@@ -214,6 +214,15 @@ export class VegaTimePicker {
|
|
|
214
214
|
* @vegaVersion 1.12.0
|
|
215
215
|
*/
|
|
216
216
|
this.validationRules = [];
|
|
217
|
+
/**
|
|
218
|
+
* Provides partial dropdown positioning properties for the time picker.
|
|
219
|
+
*
|
|
220
|
+
* Set `isScreenPosition: true` to position the dropdown relative to
|
|
221
|
+
* the viewport.
|
|
222
|
+
*
|
|
223
|
+
* @vegaVersion 2.93.0
|
|
224
|
+
*/
|
|
225
|
+
this.vegaDropdownProps = {};
|
|
217
226
|
}
|
|
218
227
|
/**
|
|
219
228
|
* The below method is e2e-test covered in
|
|
@@ -250,6 +259,9 @@ export class VegaTimePicker {
|
|
|
250
259
|
watchValidationRules() {
|
|
251
260
|
methodPlaceholder();
|
|
252
261
|
}
|
|
262
|
+
watchVegaDropdownProps() {
|
|
263
|
+
methodPlaceholder();
|
|
264
|
+
}
|
|
253
265
|
componentWillLoad() {
|
|
254
266
|
methodPlaceholder();
|
|
255
267
|
}
|
|
@@ -651,6 +663,30 @@ export class VegaTimePicker {
|
|
|
651
663
|
},
|
|
652
664
|
"attribute": "position-relative-to",
|
|
653
665
|
"reflect": false
|
|
666
|
+
},
|
|
667
|
+
"vegaDropdownProps": {
|
|
668
|
+
"type": "unknown",
|
|
669
|
+
"mutable": false,
|
|
670
|
+
"complexType": {
|
|
671
|
+
"original": "VegaDropdownPropsForTimePicker",
|
|
672
|
+
"resolved": "{ isScreenPosition?: boolean; }",
|
|
673
|
+
"references": {
|
|
674
|
+
"VegaDropdownPropsForTimePicker": {
|
|
675
|
+
"location": "import",
|
|
676
|
+
"path": "./types"
|
|
677
|
+
}
|
|
678
|
+
}
|
|
679
|
+
},
|
|
680
|
+
"required": false,
|
|
681
|
+
"optional": false,
|
|
682
|
+
"docs": {
|
|
683
|
+
"tags": [{
|
|
684
|
+
"name": "vegaVersion",
|
|
685
|
+
"text": "2.93.0"
|
|
686
|
+
}],
|
|
687
|
+
"text": "Provides partial dropdown positioning properties for the time picker.\n\nSet `isScreenPosition: true` to position the dropdown relative to\n the viewport."
|
|
688
|
+
},
|
|
689
|
+
"defaultValue": "{}"
|
|
654
690
|
}
|
|
655
691
|
}; }
|
|
656
692
|
static get states() { return {
|
|
@@ -723,6 +759,9 @@ export class VegaTimePicker {
|
|
|
723
759
|
}, {
|
|
724
760
|
"propName": "validationRules",
|
|
725
761
|
"methodName": "watchValidationRules"
|
|
762
|
+
}, {
|
|
763
|
+
"propName": "vegaDropdownProps",
|
|
764
|
+
"methodName": "watchVegaDropdownProps"
|
|
726
765
|
}]; }
|
|
727
766
|
}
|
|
728
767
|
__decorate([
|
|
@@ -108,6 +108,7 @@ export const VegaNativeEventName = [
|
|
|
108
108
|
'eventEdit',
|
|
109
109
|
'todayClick',
|
|
110
110
|
'additionalLinkClick',
|
|
111
|
+
'dropdownSelectAllClick',
|
|
111
112
|
];
|
|
112
113
|
// eslint-disable-next-line @typescript-eslint/typedef
|
|
113
114
|
export const CssStates = ['default', 'hover', 'active', 'focus-visible'];
|