@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
|
@@ -65,6 +65,9 @@ export class VegaDropdownAppenderController extends ElementAppenderSlimmer {
|
|
|
65
65
|
*/
|
|
66
66
|
async watchIsDropdownShow() {
|
|
67
67
|
if (this.isDropdownShow) {
|
|
68
|
+
if (this.selectAllController.isEnabled()) {
|
|
69
|
+
this.sourceController.setRenderSource();
|
|
70
|
+
}
|
|
68
71
|
this.showEventEmitter.emit();
|
|
69
72
|
this.updateLastFocusedElement();
|
|
70
73
|
}
|
|
@@ -177,6 +180,12 @@ __decorate([
|
|
|
177
180
|
__decorate([
|
|
178
181
|
MapToComponentField()
|
|
179
182
|
], VegaDropdownAppenderController.prototype, "renderer", void 0);
|
|
183
|
+
__decorate([
|
|
184
|
+
MapToComponentField()
|
|
185
|
+
], VegaDropdownAppenderController.prototype, "sourceController", void 0);
|
|
186
|
+
__decorate([
|
|
187
|
+
MapToComponentField()
|
|
188
|
+
], VegaDropdownAppenderController.prototype, "selectAllController", void 0);
|
|
180
189
|
__decorate([
|
|
181
190
|
MapToComponentField()
|
|
182
191
|
], VegaDropdownAppenderController.prototype, "searchRenderer", void 0);
|
|
@@ -5,10 +5,13 @@ var __decorate = (this && this.__decorate) || function (decorators, target, key,
|
|
|
5
5
|
return c > 3 && r && Object.defineProperty(target, key, r), r;
|
|
6
6
|
};
|
|
7
7
|
import { InjectVegaSlimmer, MapToComponentField, MapToComponentMethod, VegaSlimmer, methodPlaceholder, } from 'vega-slimmer/core';
|
|
8
|
+
import { forceUpdate } from '@stencil/core';
|
|
8
9
|
import { MutationObserverSlimmer } from '../../../../helpers/slimmers/mutation-observer/mutation-observer-slimmer';
|
|
9
10
|
import ChangeManager from '../../../../helpers/change-manager/change-manager';
|
|
10
11
|
import DomNodeSubjectFactory from '../../../../helpers/change-manager/subject/dom-node-subject/dom-node-subject-factory';
|
|
11
12
|
import { VegaInternalDropdownTemplateItemsChange } from '../../../../helpers/event-manager/event-id/vega-internal-event-id';
|
|
13
|
+
import { findParent } from '../../../../utils/ui';
|
|
14
|
+
import { isArrayEqual } from '../../../../utils/array';
|
|
12
15
|
/**
|
|
13
16
|
* The controller for the table children components.
|
|
14
17
|
*/
|
|
@@ -31,15 +34,18 @@ export class VegaDropdownChildrenController extends VegaSlimmer {
|
|
|
31
34
|
});
|
|
32
35
|
this.labelSet = new Set();
|
|
33
36
|
this.keySet = new Set();
|
|
37
|
+
this.previousSelectableKeys = [];
|
|
34
38
|
/**
|
|
35
39
|
* The `syncUpDropdownCurrentDataBySlot` method is responsible for
|
|
36
40
|
* synchronizing the current data in a dropdown based on the items present in the slot.
|
|
37
41
|
*/
|
|
38
42
|
this.collectKeyAndLabelFromSlot = () => {
|
|
39
|
-
const container = this.
|
|
43
|
+
const container = this.getContainerElement();
|
|
40
44
|
Array.from(container.querySelectorAll('vega-dropdown-item')).forEach((item) => {
|
|
41
|
-
|
|
42
|
-
|
|
45
|
+
if (this.isCurrentDropdownTemplateItem(item)) {
|
|
46
|
+
item.label && this.labelSet.add(item.label);
|
|
47
|
+
item.itemKey && this.keySet.add(item.itemKey);
|
|
48
|
+
}
|
|
43
49
|
});
|
|
44
50
|
};
|
|
45
51
|
}
|
|
@@ -70,6 +76,20 @@ export class VegaDropdownChildrenController extends VegaSlimmer {
|
|
|
70
76
|
this.syncUpDropdownCurrentData();
|
|
71
77
|
}
|
|
72
78
|
}
|
|
79
|
+
/**
|
|
80
|
+
* Manually sync template/slot-based data after dynamic DOM mutations.
|
|
81
|
+
*/
|
|
82
|
+
syncTemplateData() {
|
|
83
|
+
this.syncUpDropdownCurrentData();
|
|
84
|
+
if (this.selectAllController.isEnabled()) {
|
|
85
|
+
this.syncTemplateSelectAllState();
|
|
86
|
+
this.updateTemplateSelectableKeysAndRefresh();
|
|
87
|
+
}
|
|
88
|
+
else {
|
|
89
|
+
// Reset Select All visibility state so re-enabling allowSelectAll can re-trigger UI refresh.
|
|
90
|
+
this.previousSelectableKeys = [];
|
|
91
|
+
}
|
|
92
|
+
}
|
|
73
93
|
/**
|
|
74
94
|
* The function checks if a given label exists in a label set.
|
|
75
95
|
*
|
|
@@ -88,6 +108,22 @@ export class VegaDropdownChildrenController extends VegaSlimmer {
|
|
|
88
108
|
isKeyExist(key) {
|
|
89
109
|
return this.keySet.has(key);
|
|
90
110
|
}
|
|
111
|
+
/**
|
|
112
|
+
* Returns the keys of all non-disabled slot items.
|
|
113
|
+
* Used by the Select All controller to enumerate selectable items in template/slot mode.
|
|
114
|
+
*
|
|
115
|
+
* @returns {string[]} Keys of selectable (non-disabled) template items.
|
|
116
|
+
*/
|
|
117
|
+
getSelectableKeys() {
|
|
118
|
+
const container = this.getContainerElement();
|
|
119
|
+
const keys = [];
|
|
120
|
+
Array.from(container.querySelectorAll('vega-dropdown-item')).forEach((item) => {
|
|
121
|
+
if (this.isCurrentDropdownTemplateItem(item) && !item.disabled && item.itemKey) {
|
|
122
|
+
keys.push(item.itemKey);
|
|
123
|
+
}
|
|
124
|
+
});
|
|
125
|
+
return keys;
|
|
126
|
+
}
|
|
91
127
|
/**
|
|
92
128
|
* The function syncs up the current data of a dropdown based on the render mode.
|
|
93
129
|
*/
|
|
@@ -101,6 +137,48 @@ export class VegaDropdownChildrenController extends VegaSlimmer {
|
|
|
101
137
|
this.notifyTemplateItemsChange();
|
|
102
138
|
}
|
|
103
139
|
}
|
|
140
|
+
/**
|
|
141
|
+
* Updates previous selectable template keys and triggers re-render when Select All visibility changes.
|
|
142
|
+
*
|
|
143
|
+
*/
|
|
144
|
+
updateTemplateSelectableKeysAndRefresh() {
|
|
145
|
+
const hadSelectableKeys = this.previousSelectableKeys.length > 0;
|
|
146
|
+
const currentSelectableKeys = this.getSelectableKeys();
|
|
147
|
+
const hasSelectableKeys = currentSelectableKeys.length > 0;
|
|
148
|
+
this.previousSelectableKeys = currentSelectableKeys;
|
|
149
|
+
if (hadSelectableKeys !== hasSelectableKeys) {
|
|
150
|
+
forceUpdate(this.host);
|
|
151
|
+
}
|
|
152
|
+
}
|
|
153
|
+
/**
|
|
154
|
+
* Re-syncs Select All sentinel state for template mode after slot item mutations.
|
|
155
|
+
*/
|
|
156
|
+
syncTemplateSelectAllState() {
|
|
157
|
+
if (this.selectAllController.isEnabled() &&
|
|
158
|
+
Array.isArray(this.selectedController.selectedSourceKey)) {
|
|
159
|
+
const currentSelectedKeys = this.selectedController.selectedSourceKey;
|
|
160
|
+
const syncedSelectedKeys = this.selectAllController.syncSelectedKeysWithSelectAll([], currentSelectedKeys);
|
|
161
|
+
if (!isArrayEqual(currentSelectedKeys, syncedSelectedKeys)) {
|
|
162
|
+
this.selectedController.selectedSourceKey = syncedSelectedKeys;
|
|
163
|
+
}
|
|
164
|
+
}
|
|
165
|
+
}
|
|
166
|
+
/**
|
|
167
|
+
* Check whether a template item belongs to the current dropdown instead of a nested dropdown.
|
|
168
|
+
*
|
|
169
|
+
* @param {HTMLVegaDropdownItemElement} item - Template mode dropdown item element.
|
|
170
|
+
* @returns {boolean} True only when the nearest dropdown ancestor is current host.
|
|
171
|
+
*/
|
|
172
|
+
isCurrentDropdownTemplateItem(item) {
|
|
173
|
+
const appender = findParent(item, 'vega-dropdown-content-box');
|
|
174
|
+
if (appender) {
|
|
175
|
+
const ownerDropdown = appender['data-parent-ref'];
|
|
176
|
+
const parentElement = item.parentElement;
|
|
177
|
+
const isNestedTriggerItem = parentElement.tagName === 'VEGA-DROPDOWN';
|
|
178
|
+
return ownerDropdown === this.host && !isNestedTriggerItem;
|
|
179
|
+
}
|
|
180
|
+
return findParent(item, 'vega-dropdown') === this.host;
|
|
181
|
+
}
|
|
104
182
|
/**
|
|
105
183
|
* The function collects unique labels and keys from a nested array of objects.
|
|
106
184
|
*
|
|
@@ -128,11 +206,20 @@ export class VegaDropdownChildrenController extends VegaSlimmer {
|
|
|
128
206
|
this.keySet.clear();
|
|
129
207
|
this.labelSet.clear();
|
|
130
208
|
}
|
|
209
|
+
/**
|
|
210
|
+
* Returns the dropdown content box element, or falls back to the host element if not yet available.
|
|
211
|
+
* Handles cases where `getDropdownContentBoxRef()` returns null during early lifecycle phases.
|
|
212
|
+
*
|
|
213
|
+
* @returns {HTMLElement} The dropdown content box or host element.
|
|
214
|
+
*/
|
|
215
|
+
getContainerElement() {
|
|
216
|
+
return this.renderer.getDropdownContentBoxRef() || this.host;
|
|
217
|
+
}
|
|
131
218
|
/**
|
|
132
219
|
* The function `notifyTemplateItemsChange` notifies changes to dropdown items within a container element.
|
|
133
220
|
*/
|
|
134
221
|
notifyTemplateItemsChange() {
|
|
135
|
-
const container = this.
|
|
222
|
+
const container = this.getContainerElement();
|
|
136
223
|
ChangeManager.notify(DomNodeSubjectFactory.getSubject(this.host, VegaInternalDropdownTemplateItemsChange), container.querySelectorAll('vega-dropdown-item'));
|
|
137
224
|
}
|
|
138
225
|
}
|
|
@@ -157,6 +244,9 @@ __decorate([
|
|
|
157
244
|
__decorate([
|
|
158
245
|
MapToComponentField()
|
|
159
246
|
], VegaDropdownChildrenController.prototype, "selectedController", void 0);
|
|
247
|
+
__decorate([
|
|
248
|
+
MapToComponentField()
|
|
249
|
+
], VegaDropdownChildrenController.prototype, "selectAllController", void 0);
|
|
160
250
|
__decorate([
|
|
161
251
|
InjectVegaSlimmer()
|
|
162
252
|
], VegaDropdownChildrenController.prototype, "mutationObserver", void 0);
|
|
@@ -172,3 +262,6 @@ __decorate([
|
|
|
172
262
|
__decorate([
|
|
173
263
|
MapToComponentMethod('watchSource')
|
|
174
264
|
], VegaDropdownChildrenController.prototype, "watchSource", null);
|
|
265
|
+
__decorate([
|
|
266
|
+
MapToComponentMethod('syncTemplateData')
|
|
267
|
+
], VegaDropdownChildrenController.prototype, "syncTemplateData", null);
|
|
@@ -0,0 +1,219 @@
|
|
|
1
|
+
var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
|
|
2
|
+
var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
|
|
3
|
+
if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
|
|
4
|
+
else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
|
|
5
|
+
return c > 3 && r && Object.defineProperty(target, key, r), r;
|
|
6
|
+
};
|
|
7
|
+
import { MapToComponentField, VegaSlimmer } from 'vega-slimmer/core';
|
|
8
|
+
import { flattenChildren } from '../../../../utils/array';
|
|
9
|
+
import { VEGA_DROPDOWN_SELECT_ALL_KEY } from '../../constants';
|
|
10
|
+
/**
|
|
11
|
+
* Determine Select All indeterminate state from selected keys and selectable keys.
|
|
12
|
+
*
|
|
13
|
+
* @param {string[] | string} keys - Current selected keys.
|
|
14
|
+
* @param {string[]} allKeys - Selectable keys for current mode.
|
|
15
|
+
* @param {string} selectAllKey - Internal Select All sentinel key.
|
|
16
|
+
* @returns {boolean} True when selection is partial.
|
|
17
|
+
*/
|
|
18
|
+
export const calculateSelectAllIndeterminate = (keys, allKeys, selectAllKey = VEGA_DROPDOWN_SELECT_ALL_KEY) => {
|
|
19
|
+
if (!Array.isArray(keys)) {
|
|
20
|
+
return false;
|
|
21
|
+
}
|
|
22
|
+
const selectedRealKeys = keys.filter((key) => key !== selectAllKey);
|
|
23
|
+
if (allKeys.length === 0) {
|
|
24
|
+
// Template-mode fallback: when selectable keys are not yet enumerable,
|
|
25
|
+
// missing Select All sentinel with non-empty real keys indicates partial selection.
|
|
26
|
+
return selectedRealKeys.length > 0 && !keys.includes(selectAllKey);
|
|
27
|
+
}
|
|
28
|
+
const selectedSelectableCount = selectedRealKeys.filter((key) => allKeys.includes(key)).length;
|
|
29
|
+
return selectedSelectableCount > 0 && selectedSelectableCount < allKeys.length;
|
|
30
|
+
};
|
|
31
|
+
/**
|
|
32
|
+
* Determine indeterminate state specifically for the Select All item.
|
|
33
|
+
*
|
|
34
|
+
* @param {string} itemKey - Current dropdown item key.
|
|
35
|
+
* @param {string[] | string} keys - Current selected keys.
|
|
36
|
+
* @param {DropdownSourceItem[]} source - Source items (used in source mode).
|
|
37
|
+
* @param {string} selectAllKey - Internal Select All sentinel key.
|
|
38
|
+
* @returns {boolean} True when current item is Select All and selection is partial.
|
|
39
|
+
*/
|
|
40
|
+
export const isSelectAllItemIndeterminate = (itemKey, keys, source, selectAllKey = VEGA_DROPDOWN_SELECT_ALL_KEY) => {
|
|
41
|
+
if (!Array.isArray(keys) || itemKey !== selectAllKey) {
|
|
42
|
+
return false;
|
|
43
|
+
}
|
|
44
|
+
const allKeys = source.length
|
|
45
|
+
? flattenChildren(source)
|
|
46
|
+
.filter((item) => !item.disabled)
|
|
47
|
+
.map((item) => item.key)
|
|
48
|
+
: [];
|
|
49
|
+
return calculateSelectAllIndeterminate(keys, allKeys, selectAllKey);
|
|
50
|
+
};
|
|
51
|
+
/**
|
|
52
|
+
* The `VegaDropdownSelectAllController` encapsulates all Select All behavior.
|
|
53
|
+
* It is used when allowSelectAll is enabled.
|
|
54
|
+
*/
|
|
55
|
+
export class VegaDropdownSelectAllController extends VegaSlimmer {
|
|
56
|
+
constructor() {
|
|
57
|
+
super(...arguments);
|
|
58
|
+
this.selectAllKey = VEGA_DROPDOWN_SELECT_ALL_KEY;
|
|
59
|
+
}
|
|
60
|
+
/**
|
|
61
|
+
* Determine if Select All behavior should be active for current dropdown mode.
|
|
62
|
+
*
|
|
63
|
+
* @returns {boolean} True when allowSelectAll is enabled and selectType is multiple.
|
|
64
|
+
*/
|
|
65
|
+
isEnabled() {
|
|
66
|
+
return this.allowSelectAll && this.selectType === 'multiple';
|
|
67
|
+
}
|
|
68
|
+
/**
|
|
69
|
+
* Add synthetic Select All option to source when enabled.
|
|
70
|
+
*
|
|
71
|
+
* @param {VegaDropdownSourceItem[]} source - The original source array.
|
|
72
|
+
* @returns {VegaDropdownSourceItem[]} Source with Select All item added at the start, or original source if not enabled.
|
|
73
|
+
*/
|
|
74
|
+
getSourceWithSelectAll(source) {
|
|
75
|
+
if (!this.isEnabled() || source.length === 0) {
|
|
76
|
+
return source;
|
|
77
|
+
}
|
|
78
|
+
const selectAllItem = {
|
|
79
|
+
key: this.selectAllKey,
|
|
80
|
+
label: this.translationSlimmer.t('Select All'),
|
|
81
|
+
};
|
|
82
|
+
return [selectAllItem, ...source];
|
|
83
|
+
}
|
|
84
|
+
/**
|
|
85
|
+
* Remove internal Select All key from selected keys.
|
|
86
|
+
*
|
|
87
|
+
* @param {string[]} keys - The current selected keys array.
|
|
88
|
+
* @returns {string[]} Keys with the internal Select All key removed.
|
|
89
|
+
*/
|
|
90
|
+
filterOutSelectAllKey(keys) {
|
|
91
|
+
return keys.filter((k) => k !== this.selectAllKey);
|
|
92
|
+
}
|
|
93
|
+
/**
|
|
94
|
+
* Toggle key selection in multiple mode, including Select All interactions.
|
|
95
|
+
*
|
|
96
|
+
* @param {DropdownSourceItem[]} source - The full source array of dropdown items.
|
|
97
|
+
* @param {string[]} selectedKeys - The currently selected keys.
|
|
98
|
+
* @param {string} key - The key that was clicked.
|
|
99
|
+
* @returns {string[]} Updated selected keys after the toggle operation.
|
|
100
|
+
*/
|
|
101
|
+
toggleSelectionForMultiple(source, selectedKeys, key) {
|
|
102
|
+
const allKeys = this.getSelectableKeys(source);
|
|
103
|
+
const currentKeys = this.filterOutSelectAllKey(selectedKeys);
|
|
104
|
+
if (!this.isEnabled()) {
|
|
105
|
+
return currentKeys.includes(key)
|
|
106
|
+
? currentKeys.filter((k) => k !== key)
|
|
107
|
+
: [...currentKeys, key];
|
|
108
|
+
}
|
|
109
|
+
if (key === this.selectAllKey) {
|
|
110
|
+
const isAllSelected = allKeys.every((k) => currentKeys.includes(k));
|
|
111
|
+
return isAllSelected ? [] : [...allKeys, this.selectAllKey];
|
|
112
|
+
}
|
|
113
|
+
const nextKeys = currentKeys.includes(key)
|
|
114
|
+
? currentKeys.filter((k) => k !== key)
|
|
115
|
+
: [...currentKeys, key];
|
|
116
|
+
const isNextAllSelected = allKeys.every((k) => nextKeys.includes(k));
|
|
117
|
+
if (isNextAllSelected) {
|
|
118
|
+
return [...nextKeys, this.selectAllKey];
|
|
119
|
+
}
|
|
120
|
+
return nextKeys;
|
|
121
|
+
}
|
|
122
|
+
/**
|
|
123
|
+
* Keep Select All internal key aligned with current selected keys.
|
|
124
|
+
*
|
|
125
|
+
* @param {DropdownSourceItem[]} source - The full source array of dropdown items.
|
|
126
|
+
* @param {string[]} keys - The current selected keys to synchronize.
|
|
127
|
+
* @returns {string[]} Keys with Select All key added or removed based on whether all items are selected.
|
|
128
|
+
*/
|
|
129
|
+
syncSelectedKeysWithSelectAll(source, keys) {
|
|
130
|
+
if (!this.isEnabled()) {
|
|
131
|
+
return keys;
|
|
132
|
+
}
|
|
133
|
+
const allKeys = this.getSelectableKeys(source);
|
|
134
|
+
if (allKeys.length === 0) {
|
|
135
|
+
return keys;
|
|
136
|
+
}
|
|
137
|
+
const selectedRealKeys = this.filterOutSelectAllKey(keys);
|
|
138
|
+
const isAllSelected = allKeys.every((key) => selectedRealKeys.includes(key));
|
|
139
|
+
if (isAllSelected) {
|
|
140
|
+
return keys.includes(this.selectAllKey) ? keys : [...selectedRealKeys, this.selectAllKey];
|
|
141
|
+
}
|
|
142
|
+
return selectedRealKeys;
|
|
143
|
+
}
|
|
144
|
+
/**
|
|
145
|
+
* Check if a key is valid for selection in multiple mode.
|
|
146
|
+
*
|
|
147
|
+
* @param {string} key - The key to check.
|
|
148
|
+
* @returns {boolean} True if the key is the internal Select All key and feature is enabled.
|
|
149
|
+
*/
|
|
150
|
+
isAllowedVirtualKey(key) {
|
|
151
|
+
return this.isEnabled() && key === this.selectAllKey;
|
|
152
|
+
}
|
|
153
|
+
/**
|
|
154
|
+
* Determine whether Select All should be rendered in an indeterminate state.
|
|
155
|
+
*
|
|
156
|
+
* @param {string[] | string} keys - Current selected keys.
|
|
157
|
+
* @param {DropdownSourceItem[]} source - Source items (used in source mode).
|
|
158
|
+
* @returns {boolean} True when some but not all selectable items are selected.
|
|
159
|
+
*/
|
|
160
|
+
isSelectAllIndeterminate(keys, source) {
|
|
161
|
+
if (!this.isEnabled() || !Array.isArray(keys)) {
|
|
162
|
+
return false;
|
|
163
|
+
}
|
|
164
|
+
const allKeys = this.getSelectableKeys(source);
|
|
165
|
+
return calculateSelectAllIndeterminate(keys, allKeys, this.selectAllKey);
|
|
166
|
+
}
|
|
167
|
+
/**
|
|
168
|
+
* Returns the internal Select All item key.
|
|
169
|
+
* Used by renderers to inject the synthetic Select All item into the template/slot list.
|
|
170
|
+
*
|
|
171
|
+
* @returns {string} The Select All key.
|
|
172
|
+
*/
|
|
173
|
+
getSelectAllItemKey() {
|
|
174
|
+
return this.selectAllKey;
|
|
175
|
+
}
|
|
176
|
+
/**
|
|
177
|
+
* Determine whether template/slot mode should render the synthetic Select All row.
|
|
178
|
+
*
|
|
179
|
+
* @returns {boolean} True when Select All is enabled in template mode and there is at least one selectable real item.
|
|
180
|
+
*/
|
|
181
|
+
shouldRenderTemplateSelectAll() {
|
|
182
|
+
if (!this.isEnabled() || this.renderModeController.isSourceRenderMode()) {
|
|
183
|
+
return false;
|
|
184
|
+
}
|
|
185
|
+
return this.getSelectableKeys([]).length > 0;
|
|
186
|
+
}
|
|
187
|
+
/**
|
|
188
|
+
* Collect selectable keys from the source or DOM while skipping disabled items.
|
|
189
|
+
* In slot/template mode, keys are read from the rendered DOM via the children controller.
|
|
190
|
+
*
|
|
191
|
+
* @param {DropdownSourceItem[]} source - The dropdown source array (used in source mode only).
|
|
192
|
+
* @returns {string[]} The keys that can be selected.
|
|
193
|
+
*/
|
|
194
|
+
getSelectableKeys(source) {
|
|
195
|
+
if (!this.renderModeController.isSourceRenderMode()) {
|
|
196
|
+
return this.childrenController
|
|
197
|
+
.getSelectableKeys()
|
|
198
|
+
.filter((key) => key !== this.selectAllKey);
|
|
199
|
+
}
|
|
200
|
+
return flattenChildren(source)
|
|
201
|
+
.filter((item) => !item.disabled)
|
|
202
|
+
.map((item) => item.key);
|
|
203
|
+
}
|
|
204
|
+
}
|
|
205
|
+
__decorate([
|
|
206
|
+
MapToComponentField()
|
|
207
|
+
], VegaDropdownSelectAllController.prototype, "allowSelectAll", void 0);
|
|
208
|
+
__decorate([
|
|
209
|
+
MapToComponentField()
|
|
210
|
+
], VegaDropdownSelectAllController.prototype, "selectType", void 0);
|
|
211
|
+
__decorate([
|
|
212
|
+
MapToComponentField()
|
|
213
|
+
], VegaDropdownSelectAllController.prototype, "translationSlimmer", void 0);
|
|
214
|
+
__decorate([
|
|
215
|
+
MapToComponentField()
|
|
216
|
+
], VegaDropdownSelectAllController.prototype, "renderModeController", void 0);
|
|
217
|
+
__decorate([
|
|
218
|
+
MapToComponentField()
|
|
219
|
+
], VegaDropdownSelectAllController.prototype, "childrenController", void 0);
|
|
@@ -31,6 +31,9 @@ export class VegaDropdownSelectedController extends VegaSlimmer {
|
|
|
31
31
|
* @returns {string[] | string} The selected row keys array
|
|
32
32
|
*/
|
|
33
33
|
getSelection() {
|
|
34
|
+
if (this.selectAllController.isEnabled() && Array.isArray(this.selectedSourceKey)) {
|
|
35
|
+
return this.selectAllController.filterOutSelectAllKey(this.selectedSourceKey);
|
|
36
|
+
}
|
|
34
37
|
return this.selectedSourceKey;
|
|
35
38
|
}
|
|
36
39
|
/**
|
|
@@ -42,6 +45,10 @@ export class VegaDropdownSelectedController extends VegaSlimmer {
|
|
|
42
45
|
* @returns {void} -.
|
|
43
46
|
*/
|
|
44
47
|
watchSelectedRowKeySet(keys) {
|
|
48
|
+
if (this.selectType === 'none') {
|
|
49
|
+
this.selectedSourceKey = '';
|
|
50
|
+
return;
|
|
51
|
+
}
|
|
45
52
|
this.checkSelectedSourceKey(keys);
|
|
46
53
|
}
|
|
47
54
|
/**
|
|
@@ -53,6 +60,13 @@ export class VegaDropdownSelectedController extends VegaSlimmer {
|
|
|
53
60
|
watchSelectType() {
|
|
54
61
|
this.checkSelectedSourceKey(this.selectedSourceKey);
|
|
55
62
|
}
|
|
63
|
+
/**
|
|
64
|
+
* The function `watchAllowSelectAll` normalizes selectedSourceKey when allowSelectAll changes,
|
|
65
|
+
* keeping the internal Select All key in sync with current selection state.
|
|
66
|
+
*/
|
|
67
|
+
watchAllowSelectAll() {
|
|
68
|
+
this.checkSelectedSourceKey(this.selectedSourceKey);
|
|
69
|
+
}
|
|
56
70
|
/**
|
|
57
71
|
* The function "watchSelectedSourceKey" assigns a value to the variable "selectedSourceKey" by calling
|
|
58
72
|
* the function "checkSelectedSourceKey" with the current value of "selectedSourceKey" as an argument.
|
|
@@ -92,15 +106,9 @@ export class VegaDropdownSelectedController extends VegaSlimmer {
|
|
|
92
106
|
* @param {string} key - The key parameter is a string that represents the selected item.
|
|
93
107
|
*/
|
|
94
108
|
select(key) {
|
|
109
|
+
const isSelectAllClick = this.selectAllController.isAllowedVirtualKey(key);
|
|
95
110
|
if (this.selectType === 'multiple') {
|
|
96
|
-
|
|
97
|
-
this.selectedSourceKey = [
|
|
98
|
-
...this.selectedSourceKey.filter((itemKey) => itemKey !== key),
|
|
99
|
-
];
|
|
100
|
-
}
|
|
101
|
-
else {
|
|
102
|
-
this.selectedSourceKey = [...this.selectedSourceKey, key];
|
|
103
|
-
}
|
|
111
|
+
this.selectedSourceKey = this.selectAllController.toggleSelectionForMultiple(this.source, this.selectedSourceKey, key);
|
|
104
112
|
}
|
|
105
113
|
else if (this.selectType === 'single') {
|
|
106
114
|
this.selectedSourceKey = key;
|
|
@@ -109,17 +117,26 @@ export class VegaDropdownSelectedController extends VegaSlimmer {
|
|
|
109
117
|
else {
|
|
110
118
|
this.appenderController.hide();
|
|
111
119
|
}
|
|
120
|
+
if (isSelectAllClick) {
|
|
121
|
+
// Select All interaction is exposed only through the dedicated boolean event.
|
|
122
|
+
const isSelectAllSelected = Array.isArray(this.selectedSourceKey) &&
|
|
123
|
+
this.selectedSourceKey.includes(this.selectAllController.getSelectAllItemKey());
|
|
124
|
+
this.selectAllClickEventEmitter.emit(isSelectAllSelected);
|
|
125
|
+
return;
|
|
126
|
+
}
|
|
112
127
|
this.dropdownClickEventEmitter.emit(key);
|
|
113
128
|
}
|
|
114
129
|
/**
|
|
115
130
|
* The reset action.
|
|
116
131
|
*/
|
|
117
132
|
reset() {
|
|
118
|
-
|
|
119
|
-
if (
|
|
120
|
-
this.
|
|
133
|
+
const resetEvent = this.resetEventEmitter.emit();
|
|
134
|
+
if (!resetEvent.defaultPrevented) {
|
|
135
|
+
this.selectedSourceKey = this.selectType === 'multiple' ? [] : '';
|
|
136
|
+
if (this.selectType !== 'multiple') {
|
|
137
|
+
this.appenderController.hide();
|
|
138
|
+
}
|
|
121
139
|
}
|
|
122
|
-
this.resetEventEmitter.emit();
|
|
123
140
|
}
|
|
124
141
|
/**
|
|
125
142
|
* The function checks if the given item belongs to the current dropdown.
|
|
@@ -176,9 +193,42 @@ export class VegaDropdownSelectedController extends VegaSlimmer {
|
|
|
176
193
|
this.selectedSourceKey = result;
|
|
177
194
|
}
|
|
178
195
|
else {
|
|
179
|
-
|
|
196
|
+
const normalizedKey = this.normalizeSelectedSourceKeyBySelectType(key);
|
|
197
|
+
if (this.selectAllController.isEnabled() &&
|
|
198
|
+
Array.isArray(normalizedKey) &&
|
|
199
|
+
this.selectType === 'multiple') {
|
|
200
|
+
this.selectedSourceKey = this.selectAllController.syncSelectedKeysWithSelectAll(this.source, normalizedKey);
|
|
201
|
+
}
|
|
202
|
+
else {
|
|
203
|
+
this.selectedSourceKey = normalizedKey;
|
|
204
|
+
}
|
|
180
205
|
}
|
|
181
206
|
}
|
|
207
|
+
/**
|
|
208
|
+
* Normalizes the selectedSourceKey value to match the shape expected by the current selectType.
|
|
209
|
+
* Ensures that switching selectType at runtime (e.g. single → multiple) coerces the stored key
|
|
210
|
+
* into the correct type (array for multiple, string for single, empty string for none).
|
|
211
|
+
*
|
|
212
|
+
* @param {string | string[]} key - The current selectedSourceKey value to normalize.
|
|
213
|
+
* @returns {string | string[]} The normalized key matching the current selectType shape.
|
|
214
|
+
*/
|
|
215
|
+
normalizeSelectedSourceKeyBySelectType(key) {
|
|
216
|
+
if (this.selectType === 'multiple') {
|
|
217
|
+
if (Array.isArray(key)) {
|
|
218
|
+
return key;
|
|
219
|
+
}
|
|
220
|
+
return key ? [key] : [];
|
|
221
|
+
}
|
|
222
|
+
if (this.selectType === 'single') {
|
|
223
|
+
if (typeof key === 'string') {
|
|
224
|
+
return key;
|
|
225
|
+
}
|
|
226
|
+
return key[0] || '';
|
|
227
|
+
}
|
|
228
|
+
// Keep the incoming key when selectType is "none".
|
|
229
|
+
// This preserves preselection set before selectType is switched to single/multiple.
|
|
230
|
+
return key;
|
|
231
|
+
}
|
|
182
232
|
/**
|
|
183
233
|
* The function checks if multiple selected keys exist and removes invalid keys, returning the valid
|
|
184
234
|
* keys.
|
|
@@ -189,6 +239,9 @@ export class VegaDropdownSelectedController extends VegaSlimmer {
|
|
|
189
239
|
checkMultipleSelectedKeys(keys) {
|
|
190
240
|
const invalidKeys = [];
|
|
191
241
|
const result = keys.filter((key) => {
|
|
242
|
+
if (this.selectAllController.isAllowedVirtualKey(key)) {
|
|
243
|
+
return true;
|
|
244
|
+
}
|
|
192
245
|
const isExist = this.childrenController.isKeyExist(key);
|
|
193
246
|
if (!isExist)
|
|
194
247
|
invalidKeys.push(key);
|
|
@@ -197,6 +250,9 @@ export class VegaDropdownSelectedController extends VegaSlimmer {
|
|
|
197
250
|
if (invalidKeys.length > 0) {
|
|
198
251
|
LogUtility.warn(`Invalid selectedSourceKey ${keys} for ${this.selectType} mode`);
|
|
199
252
|
}
|
|
253
|
+
if (this.selectAllController.isEnabled()) {
|
|
254
|
+
return this.selectAllController.syncSelectedKeysWithSelectAll(this.source, result);
|
|
255
|
+
}
|
|
200
256
|
return result;
|
|
201
257
|
}
|
|
202
258
|
}
|
|
@@ -230,9 +286,15 @@ __decorate([
|
|
|
230
286
|
__decorate([
|
|
231
287
|
MapToComponentField()
|
|
232
288
|
], VegaDropdownSelectedController.prototype, "dropdownClickEventEmitter", void 0);
|
|
289
|
+
__decorate([
|
|
290
|
+
MapToComponentField()
|
|
291
|
+
], VegaDropdownSelectedController.prototype, "selectAllClickEventEmitter", void 0);
|
|
233
292
|
__decorate([
|
|
234
293
|
MapToComponentField()
|
|
235
294
|
], VegaDropdownSelectedController.prototype, "resetEventEmitter", void 0);
|
|
295
|
+
__decorate([
|
|
296
|
+
MapToComponentField()
|
|
297
|
+
], VegaDropdownSelectedController.prototype, "selectAllController", void 0);
|
|
236
298
|
__decorate([
|
|
237
299
|
MapToComponentMethod('componentWillLoad')
|
|
238
300
|
], VegaDropdownSelectedController.prototype, "componentWillLoad", null);
|
|
@@ -248,6 +310,9 @@ __decorate([
|
|
|
248
310
|
__decorate([
|
|
249
311
|
MapToComponentMethod('watchSelectType')
|
|
250
312
|
], VegaDropdownSelectedController.prototype, "watchSelectType", null);
|
|
313
|
+
__decorate([
|
|
314
|
+
MapToComponentMethod('watchAllowSelectAll')
|
|
315
|
+
], VegaDropdownSelectedController.prototype, "watchAllowSelectAll", null);
|
|
251
316
|
__decorate([
|
|
252
317
|
MapToComponentMethod('watchSelectedSourceKey')
|
|
253
318
|
], VegaDropdownSelectedController.prototype, "watchSelectedSourceKey", null);
|
|
@@ -27,12 +27,18 @@ export class VegaDropdownSourceController extends VegaSlimmer {
|
|
|
27
27
|
watchCaseSensitive() {
|
|
28
28
|
this.handleSource();
|
|
29
29
|
}
|
|
30
|
+
/**
|
|
31
|
+
* Watch allowSelectAll property changes
|
|
32
|
+
*/
|
|
33
|
+
watchAllowSelectAll() {
|
|
34
|
+
this.handleSource();
|
|
35
|
+
}
|
|
30
36
|
/**
|
|
31
37
|
* The function sets the source for rendering by searching for a formatted source.
|
|
32
38
|
*/
|
|
33
39
|
setRenderSource() {
|
|
34
40
|
if (this.renderModeController.isSourceRenderMode()) {
|
|
35
|
-
this.sourceForRender = this.searchController.search(this.source);
|
|
41
|
+
this.sourceForRender = this.searchController.search(this.selectAllController.getSourceWithSelectAll(this.source));
|
|
36
42
|
}
|
|
37
43
|
}
|
|
38
44
|
/**
|
|
@@ -64,6 +70,9 @@ __decorate([
|
|
|
64
70
|
__decorate([
|
|
65
71
|
MapToComponentField()
|
|
66
72
|
], VegaDropdownSourceController.prototype, "renderModeController", void 0);
|
|
73
|
+
__decorate([
|
|
74
|
+
MapToComponentField()
|
|
75
|
+
], VegaDropdownSourceController.prototype, "selectAllController", void 0);
|
|
67
76
|
__decorate([
|
|
68
77
|
MapToComponentMethod('componentWillLoad')
|
|
69
78
|
], VegaDropdownSourceController.prototype, "componentWillLoad", null);
|
|
@@ -73,3 +82,6 @@ __decorate([
|
|
|
73
82
|
__decorate([
|
|
74
83
|
MapToComponentMethod('watchCaseSensitive')
|
|
75
84
|
], VegaDropdownSourceController.prototype, "watchCaseSensitive", null);
|
|
85
|
+
__decorate([
|
|
86
|
+
MapToComponentMethod('watchAllowSelectAll')
|
|
87
|
+
], VegaDropdownSourceController.prototype, "watchAllowSelectAll", null);
|
package/dist/collection/components/vega-dropdown/slimmers/renderers/vega-dropdown-list-renderer.js
CHANGED
|
@@ -65,6 +65,7 @@ export class VegaDropdownListRenderer extends VegaSlimmer {
|
|
|
65
65
|
[`vega-dropdown-item-display-${this.itemDisplayRule}`]: true,
|
|
66
66
|
['v-hidden']: this.isLoading,
|
|
67
67
|
}, ref: (ref) => (this.templateContainerRef = ref), onScroll: this.scrollableController.onScroll },
|
|
68
|
+
this.selectAllController.shouldRenderTemplateSelectAll() && (h("vega-dropdown-item", { itemKey: this.selectAllController.getSelectAllItemKey(), label: this.translationSlimmer.t('Select All') })),
|
|
68
69
|
h("slot", { name: "items" })));
|
|
69
70
|
}
|
|
70
71
|
}
|
|
@@ -110,3 +111,9 @@ __decorate([
|
|
|
110
111
|
__decorate([
|
|
111
112
|
MapToComponentField()
|
|
112
113
|
], VegaDropdownListRenderer.prototype, "virtualizationThreshold", void 0);
|
|
114
|
+
__decorate([
|
|
115
|
+
MapToComponentField()
|
|
116
|
+
], VegaDropdownListRenderer.prototype, "allowSelectAll", void 0);
|
|
117
|
+
__decorate([
|
|
118
|
+
MapToComponentField()
|
|
119
|
+
], VegaDropdownListRenderer.prototype, "selectAllController", void 0);
|