@globalpayments/vega 2.47.1 → 2.49.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-fdf98585.js → app-globals-e17dedba.js} +3 -3
- package/dist/cjs/{content-state-b1ec39e3.js → content-state-6a48bcb5.js} +240 -5
- package/dist/cjs/{design-token-0c22ffa8.js → design-token-6e2c52f1.js} +1 -1
- package/dist/cjs/{element-appender-slimmer-b3109dd1.js → element-appender-slimmer-9fb99abd.js} +2 -2
- package/dist/cjs/{form-field-controller-slimmer-2432e295.js → form-field-controller-slimmer-527c25a0.js} +2 -2
- package/dist/cjs/{image-annotation-action-becd6f24.js → image-annotation-action-9c2b9c8e.js} +1 -1
- package/dist/cjs/{index-ec9a1f36.js → index-c4dec3aa.js} +1 -1
- package/dist/cjs/index.cjs.js +6 -6
- package/dist/cjs/{inject-keyboard-manager-d1eac696.js → inject-keyboard-manager-b301e887.js} +1 -1
- package/dist/cjs/{keyboard-manager-97d0ddfa.js → keyboard-manager-2ccf4b16.js} +25 -5
- package/dist/cjs/{keyboard-manager-slimmer-23ce5dcf.js → keyboard-manager-slimmer-900cf2f5.js} +1 -1
- package/dist/cjs/loader.cjs.js +5 -5
- package/dist/cjs/{min-number-rule-5bcccc8f.js → min-number-rule-965fc43d.js} +2 -2
- package/dist/cjs/{public-rules-3c2a69b4.js → public-rules-10ec636d.js} +3 -3
- package/dist/cjs/{responsive-format-facade-e48962dd.js → responsive-format-facade-9be0a851.js} +1 -1
- package/dist/cjs/{rich-text-editor-required-rule-f08f5891.js → rich-text-editor-required-rule-5faded94.js} +1 -1
- package/dist/cjs/{string-input-formatter-slimmer-56a2401f.js → string-input-formatter-slimmer-50322824.js} +2 -2
- package/dist/cjs/{style-formatter-48ef74d4.js → style-formatter-5b95a2a6.js} +1 -1
- package/dist/cjs/{sub-state-notify-slimmer-b16c9094.js → sub-state-notify-slimmer-7f437b19.js} +1 -1
- package/dist/cjs/{sub-state-observer-slimmer-1b6de09f.js → sub-state-observer-slimmer-e90362cd.js} +1 -1
- package/dist/cjs/vega-accordion.cjs.entry.js +4 -4
- package/dist/cjs/vega-app-header-button.cjs.entry.js +4 -4
- package/dist/cjs/vega-box.cjs.entry.js +5 -5
- package/dist/cjs/vega-button-circle.cjs.entry.js +4 -4
- package/dist/cjs/vega-button-group_2.cjs.entry.js +3 -3
- package/dist/cjs/vega-button.cjs.entry.js +3 -3
- package/dist/cjs/vega-calendar_3.cjs.entry.js +3 -3
- package/dist/cjs/vega-card.cjs.entry.js +4 -4
- package/dist/cjs/vega-carousel.cjs.entry.js +3 -3
- package/dist/cjs/vega-checkbox_2.cjs.entry.js +3 -3
- package/dist/cjs/vega-chip.cjs.entry.js +4 -4
- package/dist/cjs/vega-color-picker.cjs.entry.js +3 -3
- package/dist/cjs/vega-combo-box.cjs.entry.js +5 -5
- package/dist/cjs/vega-date-picker_2.cjs.entry.js +10 -10
- package/dist/cjs/vega-dialog_2.cjs.entry.js +4 -4
- package/dist/cjs/vega-divider.cjs.entry.js +4 -4
- package/dist/cjs/vega-dropdown_5.cjs.entry.js +8 -8
- package/dist/cjs/vega-env-manager-23b8b23c.js +2 -2
- package/dist/cjs/vega-file-uploader.cjs.entry.js +3 -3
- package/dist/cjs/vega-flag-icon.cjs.entry.js +4 -4
- package/dist/cjs/vega-flex.cjs.entry.js +5 -5
- package/dist/cjs/vega-font.cjs.entry.js +4 -4
- package/dist/cjs/vega-form.cjs.entry.js +4 -4
- package/dist/cjs/vega-grid.cjs.entry.js +4 -4
- package/dist/cjs/vega-icon.cjs.entry.js +4 -4
- package/dist/cjs/vega-image-uploader.cjs.entry.js +16 -7
- package/dist/cjs/vega-input-credit-card.cjs.entry.js +3 -3
- package/dist/cjs/vega-input-numeric.cjs.entry.js +11 -8
- package/dist/cjs/vega-input-phone-number.cjs.entry.js +3 -3
- package/dist/cjs/vega-input-range.cjs.entry.js +3 -3
- package/dist/cjs/vega-input-select.cjs.entry.js +5 -5
- package/dist/cjs/vega-input.cjs.entry.js +8 -8
- package/dist/cjs/{vega-internal-event-id-dc866d43.js → vega-internal-event-id-bfea9b93.js} +4 -0
- package/dist/cjs/vega-left-nav_5.cjs.entry.js +447 -194
- package/dist/cjs/vega-loader-wrapper_2.cjs.entry.js +3 -3
- package/dist/cjs/vega-pagination-page-selector-mobile.cjs.entry.js +1 -1
- package/dist/cjs/vega-pagination-page-size-selector-mobile.cjs.entry.js +1 -1
- package/dist/cjs/vega-pagination.cjs.entry.js +3 -3
- package/dist/cjs/vega-popover_2.cjs.entry.js +11 -11
- package/dist/cjs/vega-radio_2.cjs.entry.js +8 -5
- package/dist/cjs/vega-rich-text-content.cjs.entry.js +19 -13
- package/dist/cjs/vega-rich-text-editor_4.cjs.entry.js +480 -196
- package/dist/cjs/vega-selection-chip_2.cjs.entry.js +6 -6
- package/dist/cjs/vega-selection-tile_2.cjs.entry.js +4 -4
- package/dist/cjs/vega-sidenav_3.cjs.entry.js +5 -5
- package/dist/cjs/vega-signature-capture.cjs.entry.js +6 -6
- package/dist/cjs/vega-stepper.cjs.entry.js +6 -6
- package/dist/cjs/vega-tab-group_2.cjs.entry.js +55 -19
- package/dist/cjs/vega-table_8.cjs.entry.js +5 -5
- package/dist/cjs/vega-textarea.cjs.entry.js +3 -3
- package/dist/cjs/vega-time-picker_2.cjs.entry.js +8 -8
- package/dist/cjs/vega-toggle-switch.cjs.entry.js +10 -4
- package/dist/cjs/vega-tooltip_2.cjs.entry.js +11 -11
- package/dist/cjs/vega.cjs.js +5 -5
- package/dist/collection/collection-manifest.json +1 -1
- package/dist/collection/components/vega-image-uploader/slimmers/renderers/vega-image-uploader-actions-renderer.js +4 -1
- package/dist/collection/components/vega-image-uploader/vega-image-uploader.js +11 -1
- package/dist/collection/components/vega-input/vega-input.js +4 -4
- package/dist/collection/components/vega-nav/slimmers/vega-left-nav-group-hierarchy-controller.js +31 -0
- package/dist/collection/components/vega-nav/vega-left-nav/test/vega-left-nav-mock-data.js +147 -0
- package/dist/collection/components/vega-nav/vega-left-nav/vega-left-nav.js +42 -8
- package/dist/collection/components/vega-nav/vega-left-nav-group/slimmers/controllers/vega-left-nav-group-initialize-selected-controller.js +56 -0
- package/dist/collection/components/vega-nav/vega-left-nav-group/slimmers/controllers/vega-left-nav-group-link-click-controller.js +70 -0
- package/dist/collection/components/vega-nav/vega-left-nav-group/slimmers/controllers/vega-left-nav-group-open-state-controller.js +47 -0
- package/dist/collection/components/vega-nav/vega-left-nav-group/slimmers/controllers/vega-left-nav-group-other-groups-click-controller.js +60 -0
- package/dist/collection/components/vega-nav/vega-left-nav-group/slimmers/renderers/vega-left-nav-group-renderer.js +10 -9
- package/dist/collection/components/vega-nav/vega-left-nav-group/vega-left-nav-group.js +21 -6
- package/dist/collection/components/vega-nav/vega-left-nav-link/slimmers/controllers/vega-left-nav-link-controller.js +21 -0
- package/dist/collection/components/vega-nav/vega-left-nav-link/slimmers/renderers/vega-left-nav-link-renderer.js +13 -1
- package/dist/collection/components/vega-nav/vega-left-nav-link/vega-left-nav-link.js +5 -0
- package/dist/collection/components/vega-rich-text-content/vega-rich-text-content.css +3 -0
- package/dist/collection/components/vega-rich-text-editor/dto/annotations/bold-annotation.js +6 -0
- package/dist/collection/components/vega-rich-text-editor/dto/annotations/code-annotation.js +6 -0
- package/dist/collection/components/vega-rich-text-editor/dto/annotations/horizontal-alignment-annotation.js +6 -0
- package/dist/collection/components/vega-rich-text-editor/dto/annotations/image-annotation.js +6 -0
- package/dist/collection/components/vega-rich-text-editor/dto/annotations/indent-annotation.js +6 -0
- package/dist/collection/components/vega-rich-text-editor/dto/annotations/italic-annotation.js +6 -0
- package/dist/collection/components/vega-rich-text-editor/dto/annotations/link-annotation.js +6 -0
- package/dist/collection/components/vega-rich-text-editor/dto/annotations/link-group-annotation.js +7 -0
- package/dist/collection/components/vega-rich-text-editor/dto/annotations/selection-range-annotation.js +8 -0
- package/dist/collection/components/vega-rich-text-editor/dto/annotations/strikethrough-annotation.js +6 -0
- package/dist/collection/components/vega-rich-text-editor/dto/annotations/text-color-annotation.js +6 -0
- package/dist/collection/components/vega-rich-text-editor/dto/annotations/text-style-annotation.js +15 -0
- package/dist/collection/components/vega-rich-text-editor/dto/annotations/underline-annotation.js +6 -0
- package/dist/collection/components/vega-rich-text-editor/dto/blocks/block.abstract.js +8 -0
- package/dist/collection/components/vega-rich-text-editor/dto/blocks/image-block.js +14 -0
- package/dist/collection/components/vega-rich-text-editor/dto/blocks/list-block.js +14 -0
- package/dist/collection/components/vega-rich-text-editor/dto/blocks/list-item-block.js +20 -0
- package/dist/collection/components/vega-rich-text-editor/dto/blocks/text-block.js +25 -1
- package/dist/collection/components/vega-rich-text-editor/dto/content-state.js +47 -2
- package/dist/collection/components/vega-rich-text-editor/dto/editor-state.js +36 -0
- package/dist/collection/components/vega-rich-text-editor/dto/nodes/image-node.js +6 -0
- package/dist/collection/components/vega-rich-text-editor/dto/nodes/node.abstract.js +8 -0
- package/dist/collection/components/vega-rich-text-editor/dto/nodes/text-node.js +7 -1
- package/dist/collection/components/vega-rich-text-editor/dto/range.js +8 -0
- package/dist/collection/components/vega-rich-text-editor/dto/renderers/blocks/image-block-renderer.js +1 -1
- package/dist/collection/components/vega-rich-text-editor/dto/renderers/blocks/list-block-renderer.js +1 -1
- package/dist/collection/components/vega-rich-text-editor/dto/renderers/blocks/list-item-block-renderer.js +1 -1
- package/dist/collection/components/vega-rich-text-editor/dto/renderers/blocks/text-block-renderer.js +7 -1
- package/dist/collection/components/vega-rich-text-editor/dto/renderers/nodes/image-node-renderer.js +1 -1
- package/dist/collection/components/vega-rich-text-editor/dto/renderers/nodes/text-node-renderer.js +2 -2
- package/dist/collection/components/vega-rich-text-editor/dto/selection-state.js +17 -0
- package/dist/collection/components/vega-rich-text-editor/slimmers/controllers/helper/element-to-dto-strategy/block-to-rte-block-strategy.abstract.js +15 -5
- package/dist/collection/components/vega-rich-text-editor/slimmers/controllers/helper/element-to-dto-strategy/continue-inline-to-rte-text-block-strategy.js +3 -0
- package/dist/collection/components/vega-rich-text-editor/slimmers/controllers/helper/element-to-dto-strategy/element-to-dto-strategy.abstract.js +3 -2
- package/dist/collection/components/vega-rich-text-editor/slimmers/controllers/helper/element-to-dto-strategy/inline-block-to-rte-text-block-strategy.js +16 -1
- package/dist/collection/components/vega-rich-text-editor/slimmers/controllers/helper/element-to-dto-strategy/vega-image-to-rte-image-block-strategy.js +18 -15
- package/dist/collection/components/vega-rich-text-editor/slimmers/controllers/history-controller.js +137 -0
- package/dist/collection/components/vega-rich-text-editor/slimmers/controllers/selection-controller.js +54 -15
- package/dist/collection/components/vega-rich-text-editor/slimmers/controllers/value-controller.js +13 -1
- package/dist/collection/components/vega-rich-text-editor/test/dto/content-state.test.js +116 -0
- package/dist/collection/components/vega-rich-text-editor/test/dto/nodes/text-node.test.js +12 -0
- package/dist/collection/components/vega-rich-text-editor/vega-rich-text-editor.js +5 -0
- package/dist/collection/components/vega-rich-text-editor/vega-rich-text-image-editor/slimmers/renderers/vega-rich-text-image-editor-renderer.js +4 -0
- package/dist/collection/components/vega-rich-text-editor/vega-rich-text-image-editor/vega-rich-text-image-editor.js +2 -1
- package/dist/collection/components/vega-stepper/vega-stepper.js +2 -2
- package/dist/collection/components/vega-tab-group/slimmers/vega-tab-group/controllers/vega-tab-group-pages-controller.js +22 -12
- package/dist/collection/components/vega-tab-group/slimmers/vega-tab-group/renderers/vega-tab-group-renderer.js +6 -2
- package/dist/collection/components/vega-tab-group/slimmers/vega-tab-group/renderers/vega-tab-group-tab-list-renderer.js +20 -4
- package/dist/collection/components/vega-tab-group/vega-tab-group.css +16 -0
- package/dist/collection/components/vega-tab-group/vega-tab-group.js +32 -0
- package/dist/collection/components/vega-toggle-switch/vega-toggle-switch.js +8 -2
- package/dist/collection/helpers/event-manager/event-id/vega-internal-event-id.js +2 -0
- package/dist/collection/helpers/keyboard/keyboard-manager.js +25 -5
- package/dist/collection/helpers/keyboard/test/keyboard-manager.test.js +204 -105
- package/dist/collection/helpers/validator/rules/max-number-rule.js +1 -1
- package/dist/collection/helpers/validator/rules/min-number-rule.js +1 -1
- package/dist/collection/helpers/validator/test/rules/max-number-rule.test.js +2 -2
- package/dist/collection/helpers/validator/test/rules/min-number-rule.test.js +2 -2
- package/dist/esm/{app-globals-53b6125a.js → app-globals-b7b43a4e.js} +3 -3
- package/dist/esm/{content-state-7437e069.js → content-state-dbc9f635.js} +240 -5
- package/dist/esm/{design-token-fb43f78a.js → design-token-e263e6a2.js} +1 -1
- package/dist/esm/{element-appender-slimmer-0a0b20e9.js → element-appender-slimmer-55d63b1f.js} +2 -2
- package/dist/esm/{form-field-controller-slimmer-2978abd4.js → form-field-controller-slimmer-e7dc3db1.js} +2 -2
- package/dist/esm/{image-annotation-action-51248df9.js → image-annotation-action-1aa938ab.js} +1 -1
- package/dist/esm/{index-96374234.js → index-4aa167d6.js} +1 -1
- package/dist/esm/index.js +6 -6
- package/dist/esm/{inject-keyboard-manager-ab0bfb8b.js → inject-keyboard-manager-f513be4a.js} +1 -1
- package/dist/esm/{keyboard-manager-8c4ef91b.js → keyboard-manager-262be5ce.js} +25 -5
- package/dist/esm/{keyboard-manager-slimmer-6f5cb52a.js → keyboard-manager-slimmer-42bf9773.js} +1 -1
- package/dist/esm/loader.js +5 -5
- package/dist/esm/{min-number-rule-a6082418.js → min-number-rule-86421853.js} +2 -2
- package/dist/esm/{public-rules-cfc196c9.js → public-rules-5cf6aa95.js} +3 -3
- package/dist/esm/{responsive-format-facade-ae799f25.js → responsive-format-facade-bc2f8ad3.js} +1 -1
- package/dist/esm/{rich-text-editor-required-rule-baf61553.js → rich-text-editor-required-rule-6a7cd3ee.js} +1 -1
- package/dist/esm/{string-input-formatter-slimmer-8c7987ac.js → string-input-formatter-slimmer-c61f82d6.js} +2 -2
- package/dist/esm/{style-formatter-bf71b8e7.js → style-formatter-0f221459.js} +1 -1
- package/dist/esm/{sub-state-notify-slimmer-2216c7dc.js → sub-state-notify-slimmer-4e3cf09d.js} +1 -1
- package/dist/esm/{sub-state-observer-slimmer-da938c88.js → sub-state-observer-slimmer-be7a6ce3.js} +1 -1
- package/dist/esm/vega-accordion.entry.js +4 -4
- package/dist/esm/vega-app-header-button.entry.js +4 -4
- package/dist/esm/vega-box.entry.js +5 -5
- package/dist/esm/vega-button-circle.entry.js +4 -4
- package/dist/esm/vega-button-group_2.entry.js +3 -3
- package/dist/esm/vega-button.entry.js +3 -3
- package/dist/esm/vega-calendar_3.entry.js +3 -3
- package/dist/esm/vega-card.entry.js +4 -4
- package/dist/esm/vega-carousel.entry.js +3 -3
- package/dist/esm/vega-checkbox_2.entry.js +3 -3
- package/dist/esm/vega-chip.entry.js +4 -4
- package/dist/esm/vega-color-picker.entry.js +3 -3
- package/dist/esm/vega-combo-box.entry.js +5 -5
- package/dist/esm/vega-date-picker_2.entry.js +10 -10
- package/dist/esm/vega-dialog_2.entry.js +4 -4
- package/dist/esm/vega-divider.entry.js +4 -4
- package/dist/esm/vega-dropdown_5.entry.js +8 -8
- package/dist/esm/vega-env-manager-8f8dc473.js +2 -2
- package/dist/esm/vega-file-uploader.entry.js +3 -3
- package/dist/esm/vega-flag-icon.entry.js +4 -4
- package/dist/esm/vega-flex.entry.js +5 -5
- package/dist/esm/vega-font.entry.js +4 -4
- package/dist/esm/vega-form.entry.js +4 -4
- package/dist/esm/vega-grid.entry.js +4 -4
- package/dist/esm/vega-icon.entry.js +4 -4
- package/dist/esm/vega-image-uploader.entry.js +16 -7
- package/dist/esm/vega-input-credit-card.entry.js +3 -3
- package/dist/esm/vega-input-numeric.entry.js +11 -8
- package/dist/esm/vega-input-phone-number.entry.js +3 -3
- package/dist/esm/vega-input-range.entry.js +3 -3
- package/dist/esm/vega-input-select.entry.js +5 -5
- package/dist/esm/vega-input.entry.js +8 -8
- package/dist/esm/{vega-internal-event-id-7d1ff289.js → vega-internal-event-id-85ad403f.js} +3 -1
- package/dist/esm/vega-left-nav_5.entry.js +447 -194
- package/dist/esm/vega-loader-wrapper_2.entry.js +3 -3
- package/dist/esm/vega-pagination-page-selector-mobile.entry.js +1 -1
- package/dist/esm/vega-pagination-page-size-selector-mobile.entry.js +1 -1
- package/dist/esm/vega-pagination.entry.js +3 -3
- package/dist/esm/vega-popover_2.entry.js +11 -11
- package/dist/esm/vega-radio_2.entry.js +8 -5
- package/dist/esm/vega-rich-text-content.entry.js +19 -13
- package/dist/esm/vega-rich-text-editor_4.entry.js +480 -196
- package/dist/esm/vega-selection-chip_2.entry.js +6 -6
- package/dist/esm/vega-selection-tile_2.entry.js +4 -4
- package/dist/esm/vega-sidenav_3.entry.js +5 -5
- package/dist/esm/vega-signature-capture.entry.js +6 -6
- package/dist/esm/vega-stepper.entry.js +6 -6
- package/dist/esm/vega-tab-group_2.entry.js +55 -19
- package/dist/esm/vega-table_8.entry.js +5 -5
- package/dist/esm/vega-textarea.entry.js +3 -3
- package/dist/esm/vega-time-picker_2.entry.js +8 -8
- package/dist/esm/vega-toggle-switch.entry.js +10 -4
- package/dist/esm/vega-tooltip_2.entry.js +11 -11
- package/dist/esm/vega.js +5 -5
- package/dist/types/components/vega-image-uploader/slimmers/renderers/vega-image-uploader-actions-renderer.d.ts +1 -0
- package/dist/types/components/vega-image-uploader/vega-image-uploader.d.ts +3 -0
- package/dist/types/components/vega-input/vega-input.d.ts +2 -2
- package/dist/types/components/vega-nav/interface.d.ts +11 -0
- package/dist/types/components/vega-nav/slimmers/vega-left-nav-group-hierarchy-controller.d.ts +15 -0
- package/dist/types/components/vega-nav/vega-left-nav/test/vega-left-nav-mock-data.d.ts +4 -0
- package/dist/types/components/vega-nav/vega-left-nav/vega-left-nav.d.ts +21 -4
- package/dist/types/components/vega-nav/vega-left-nav-group/slimmers/controllers/vega-left-nav-group-initialize-selected-controller.d.ts +20 -0
- package/dist/types/components/vega-nav/vega-left-nav-group/slimmers/controllers/vega-left-nav-group-link-click-controller.d.ts +25 -0
- package/dist/types/components/vega-nav/vega-left-nav-group/slimmers/controllers/vega-left-nav-group-open-state-controller.d.ts +27 -0
- package/dist/types/components/vega-nav/vega-left-nav-group/slimmers/controllers/vega-left-nav-group-other-groups-click-controller.d.ts +17 -0
- package/dist/types/components/vega-nav/vega-left-nav-group/slimmers/renderers/vega-left-nav-group-renderer.d.ts +2 -1
- package/dist/types/components/vega-nav/vega-left-nav-group/vega-left-nav-group.d.ts +12 -5
- package/dist/types/components/vega-nav/vega-left-nav-link/slimmers/controllers/vega-left-nav-link-controller.d.ts +5 -0
- package/dist/types/components/vega-nav/vega-left-nav-link/slimmers/renderers/vega-left-nav-link-renderer.d.ts +2 -0
- package/dist/types/components/vega-nav/vega-left-nav-link/vega-left-nav-link.d.ts +2 -0
- package/dist/types/components/vega-rich-text-editor/dto/annotations/block-annotation.abstract.d.ts +1 -0
- package/dist/types/components/vega-rich-text-editor/dto/annotations/bold-annotation.d.ts +4 -0
- package/dist/types/components/vega-rich-text-editor/dto/annotations/code-annotation.d.ts +4 -0
- package/dist/types/components/vega-rich-text-editor/dto/annotations/horizontal-alignment-annotation.d.ts +4 -0
- package/dist/types/components/vega-rich-text-editor/dto/annotations/image-annotation.d.ts +4 -0
- package/dist/types/components/vega-rich-text-editor/dto/annotations/indent-annotation.d.ts +4 -0
- package/dist/types/components/vega-rich-text-editor/dto/annotations/italic-annotation.d.ts +4 -0
- package/dist/types/components/vega-rich-text-editor/dto/annotations/link-annotation.d.ts +4 -0
- package/dist/types/components/vega-rich-text-editor/dto/annotations/link-group-annotation.d.ts +1 -0
- package/dist/types/components/vega-rich-text-editor/dto/annotations/node-annotation.abstract.d.ts +1 -0
- package/dist/types/components/vega-rich-text-editor/dto/annotations/selection-range-annotation.d.ts +6 -0
- package/dist/types/components/vega-rich-text-editor/dto/annotations/strikethrough-annotation.d.ts +4 -0
- package/dist/types/components/vega-rich-text-editor/dto/annotations/text-color-annotation.d.ts +4 -0
- package/dist/types/components/vega-rich-text-editor/dto/annotations/text-style-annotation.d.ts +4 -0
- package/dist/types/components/vega-rich-text-editor/dto/annotations/underline-annotation.d.ts +4 -0
- package/dist/types/components/vega-rich-text-editor/dto/blocks/block.abstract.d.ts +9 -1
- package/dist/types/components/vega-rich-text-editor/dto/blocks/image-block.d.ts +4 -0
- package/dist/types/components/vega-rich-text-editor/dto/blocks/list-block.d.ts +4 -0
- package/dist/types/components/vega-rich-text-editor/dto/blocks/list-item-block.d.ts +4 -0
- package/dist/types/components/vega-rich-text-editor/dto/blocks/text-block.d.ts +4 -0
- package/dist/types/components/vega-rich-text-editor/dto/content-state.d.ts +19 -1
- package/dist/types/components/vega-rich-text-editor/dto/editor-state.d.ts +20 -0
- package/dist/types/components/vega-rich-text-editor/dto/nodes/image-node.d.ts +4 -0
- package/dist/types/components/vega-rich-text-editor/dto/nodes/node.abstract.d.ts +9 -1
- package/dist/types/components/vega-rich-text-editor/dto/nodes/text-node.d.ts +4 -0
- package/dist/types/components/vega-rich-text-editor/dto/range.d.ts +6 -0
- package/dist/types/components/vega-rich-text-editor/dto/selection-state.d.ts +14 -0
- package/dist/types/components/vega-rich-text-editor/interface.d.ts +7 -1
- package/dist/types/components/vega-rich-text-editor/slimmers/controllers/helper/element-to-dto-strategy/block-to-rte-block-strategy.abstract.d.ts +1 -0
- package/dist/types/components/vega-rich-text-editor/slimmers/controllers/helper/element-to-dto-strategy/element-to-dto-strategy.abstract.d.ts +2 -2
- package/dist/types/components/vega-rich-text-editor/slimmers/controllers/history-controller.d.ts +54 -0
- package/dist/types/components/vega-rich-text-editor/slimmers/controllers/selection-controller.d.ts +14 -1
- package/dist/types/components/vega-rich-text-editor/slimmers/controllers/value-controller.d.ts +4 -1
- package/dist/types/components/vega-rich-text-editor/vega-rich-text-editor.d.ts +2 -0
- package/dist/types/components/vega-tab-group/slimmers/vega-tab-group/controllers/vega-tab-group-pages-controller.d.ts +1 -0
- package/dist/types/components/vega-tab-group/slimmers/vega-tab-group/renderers/vega-tab-group-renderer.d.ts +1 -0
- package/dist/types/components/vega-tab-group/slimmers/vega-tab-group/renderers/vega-tab-group-tab-list-renderer.d.ts +3 -0
- package/dist/types/components/vega-tab-group/types.d.ts +2 -0
- package/dist/types/components/vega-tab-group/vega-tab-group.d.ts +7 -1
- package/dist/types/components/vega-toggle-switch/vega-toggle-switch.d.ts +1 -0
- package/dist/types/components.d.ts +26 -14
- package/dist/types/helpers/event-manager/event-id/vega-internal-event-id.d.ts +2 -0
- package/dist/types/helpers/keyboard/keyboard-manager.d.ts +11 -1
- package/dist/types/types/components.type.d.ts +2 -1
- package/dist/types/types/ui.type.d.ts +1 -1
- package/dist/vega/index.esm.js +1 -1
- package/dist/vega/{p-df44a712.entry.js → p-01fd343e.entry.js} +1 -1
- package/dist/vega/{p-50a076d0.entry.js → p-0a18f5f6.entry.js} +1 -1
- package/dist/vega/{p-7bc3a42b.js → p-1abe125f.js} +1 -1
- package/dist/vega/{p-4b541ce8.entry.js → p-2198de3e.entry.js} +1 -1
- package/dist/vega/{p-0073c3de.entry.js → p-24e0cdcc.entry.js} +1 -1
- package/dist/vega/{p-4f7f93ef.entry.js → p-2565cb0c.entry.js} +1 -1
- package/dist/vega/p-26e4221c.entry.js +1 -0
- package/dist/vega/{p-1c08e94a.entry.js → p-27e3825f.entry.js} +1 -1
- package/dist/vega/{p-aa109e80.entry.js → p-2bd64faf.entry.js} +1 -1
- package/dist/vega/{p-ab26cad6.js → p-2da83c2a.js} +1 -1
- package/dist/vega/{p-410755ca.entry.js → p-2fadef27.entry.js} +1 -1
- package/dist/vega/{p-01b4d6ba.entry.js → p-33ffaa71.entry.js} +1 -1
- package/dist/vega/{p-343b4522.entry.js → p-34a70d18.entry.js} +1 -1
- package/dist/vega/{p-f9b07b5e.entry.js → p-353d32c0.entry.js} +1 -1
- package/dist/vega/{p-d6d9c300.entry.js → p-3aa244d4.entry.js} +1 -1
- package/dist/vega/p-429616af.entry.js +1 -0
- package/dist/vega/p-44b0a005.js +1 -0
- package/dist/vega/{p-e1a06741.entry.js → p-472727a4.entry.js} +1 -1
- package/dist/vega/p-4e167a8c.js +1 -0
- package/dist/vega/p-4e68dfd9.js +1 -0
- package/dist/vega/p-4e76904e.entry.js +1 -0
- package/dist/vega/{p-8c32ff75.entry.js → p-4fa94b35.entry.js} +1 -1
- package/dist/vega/{p-b64d5c3a.entry.js → p-52e17867.entry.js} +1 -1
- package/dist/vega/p-56a0b13d.js +1 -0
- package/dist/vega/{p-1b731247.entry.js → p-57cdacb1.entry.js} +1 -1
- package/dist/vega/{p-bcb43c54.entry.js → p-57e813f2.entry.js} +1 -1
- package/dist/vega/{p-b06e5916.entry.js → p-58b8c06b.entry.js} +1 -1
- package/dist/vega/{p-bd5ca7cc.entry.js → p-59ccf915.entry.js} +1 -1
- package/dist/vega/{p-324dd09a.entry.js → p-5a8f129f.entry.js} +1 -1
- package/dist/vega/p-5cbadf95.entry.js +1 -0
- package/dist/vega/{p-b2643e88.js → p-5e3a15a1.js} +1 -1
- package/dist/vega/p-5f377954.js +1 -1
- package/dist/vega/{p-4b1a7d31.entry.js → p-63414091.entry.js} +1 -1
- package/dist/vega/{p-0b56725e.entry.js → p-6aa569e5.entry.js} +1 -1
- package/dist/vega/{p-b9f48611.js → p-6b75fe39.js} +1 -1
- package/dist/vega/{p-69cc3fa2.js → p-6cabdb36.js} +1 -1
- package/dist/vega/{p-bab6ca81.js → p-6d7d923b.js} +1 -1
- package/dist/vega/{p-b6caa1e2.entry.js → p-6ec8a9d8.entry.js} +1 -1
- package/dist/vega/{p-d7642125.js → p-72ecfd40.js} +1 -1
- package/dist/vega/p-7db32dc0.entry.js +1 -0
- package/dist/vega/{p-f0bc8f6d.js → p-7f6702f7.js} +1 -1
- package/dist/vega/{p-c706de06.entry.js → p-84aac4b1.entry.js} +1 -1
- package/dist/vega/{p-213752bd.js → p-88c9efbb.js} +1 -1
- package/dist/vega/{p-b65de502.entry.js → p-8aec8dac.entry.js} +1 -1
- package/dist/vega/{p-1e2886b5.js → p-8afa2115.js} +1 -1
- package/dist/vega/p-8bc4c015.entry.js +1 -0
- package/dist/vega/p-96b4c0cc.entry.js +1 -0
- package/dist/vega/p-a8b681ed.entry.js +1 -0
- package/dist/vega/{p-b4dfa967.entry.js → p-ac82ca73.entry.js} +1 -1
- package/dist/vega/{p-c86a4896.entry.js → p-ba6c7f00.entry.js} +1 -1
- package/dist/vega/{p-2c1c88c0.entry.js → p-be40684b.entry.js} +1 -1
- package/dist/vega/p-bf1894ec.js +1 -0
- package/dist/vega/{p-79cc1f41.entry.js → p-c1e1adf9.entry.js} +1 -1
- package/dist/vega/p-c5f8b3a3.entry.js +1 -0
- package/dist/vega/p-c754b32c.js +1 -0
- package/dist/vega/{p-d4a61b1d.entry.js → p-c96effa5.entry.js} +1 -1
- package/dist/vega/{p-d6c37085.entry.js → p-ca34443a.entry.js} +1 -1
- package/dist/vega/{p-96410d71.entry.js → p-cb637815.entry.js} +1 -1
- package/dist/vega/{p-0523efe8.entry.js → p-ccdd49be.entry.js} +1 -1
- package/dist/vega/p-cd205d96.js +1 -0
- package/dist/vega/{p-a1bdf9a0.entry.js → p-ce70a54a.entry.js} +1 -1
- package/dist/vega/{p-e5695801.entry.js → p-d6591d70.entry.js} +1 -1
- package/dist/vega/{p-80c86d79.js → p-d7937711.js} +1 -1
- package/dist/vega/{p-59e9f57a.js → p-dbc82247.js} +1 -1
- package/dist/vega/{p-d6620b42.entry.js → p-e29da13d.entry.js} +1 -1
- package/dist/vega/p-e719b1a9.entry.js +1 -0
- package/dist/vega/{p-4f54ba1f.entry.js → p-f7423232.entry.js} +1 -1
- package/dist/vega/{p-611282a7.entry.js → p-fb853d5f.entry.js} +1 -1
- package/dist/vega/{p-8f80b321.entry.js → p-fd018044.entry.js} +1 -1
- package/dist/vega/p-fda0c179.entry.js +1 -0
- package/dist/vega/p-ff41dc6a.entry.js +1 -0
- package/dist/vega/vega.esm.js +1 -1
- package/package.json +1 -1
- package/dist/collection/components/vega-nav/vega-left-nav-group/slimmers/controllers/vega-left-nav-group-controller.js +0 -30
- package/dist/collection/components/vega-nav/vega-left-nav-group/slimmers/controllers/vega-left-nav-group-sibling-observer-controller.js +0 -48
- package/dist/types/components/vega-nav/vega-left-nav-group/slimmers/controllers/vega-left-nav-group-controller.d.ts +0 -11
- package/dist/types/components/vega-nav/vega-left-nav-group/slimmers/controllers/vega-left-nav-group-sibling-observer-controller.d.ts +0 -18
- package/dist/vega/p-08679cd9.entry.js +0 -1
- package/dist/vega/p-12d60f5f.js +0 -1
- package/dist/vega/p-214aa52e.js +0 -1
- package/dist/vega/p-2863aa51.entry.js +0 -1
- package/dist/vega/p-2e65e175.js +0 -1
- package/dist/vega/p-31de5cb4.entry.js +0 -1
- package/dist/vega/p-3d3cd394.js +0 -1
- package/dist/vega/p-3e285c35.js +0 -1
- package/dist/vega/p-7594875a.entry.js +0 -1
- package/dist/vega/p-8af3fc79.entry.js +0 -1
- package/dist/vega/p-8ee31f00.entry.js +0 -1
- package/dist/vega/p-952913fc.entry.js +0 -1
- package/dist/vega/p-b07add9c.entry.js +0 -1
- package/dist/vega/p-b9051ad2.js +0 -1
- package/dist/vega/p-c2321aa8.entry.js +0 -1
- package/dist/vega/p-ceb9f5aa.entry.js +0 -1
- package/dist/vega/p-db7a6878.entry.js +0 -1
- package/dist/vega/p-e59ff7d1.entry.js +0 -1
- package/dist/vega/p-f2373487.js +0 -1
|
@@ -17,8 +17,10 @@ import ChangeManager from '../../../../helpers/change-manager/change-manager';
|
|
|
17
17
|
import domNodeSubjectFactory from '../../../../helpers/change-manager/subject/dom-node-subject/dom-node-subject-factory';
|
|
18
18
|
import { VegaInternalRichTextEditorSelectionRangeChange } from '../../../../helpers/event-manager/event-id/vega-internal-event-id';
|
|
19
19
|
import { Observer } from '../../../../helpers/change-manager/observer/observer';
|
|
20
|
+
import { RTETextNode } from '../../dto/nodes/text-node';
|
|
20
21
|
import { ZERO_WIDTH_SPACE } from '../../constants/constant';
|
|
21
22
|
import { RTERange } from '../../dto/range';
|
|
23
|
+
import { RTESelectionState } from '../../dto/selection-state';
|
|
22
24
|
/**
|
|
23
25
|
* The text selection controller
|
|
24
26
|
*/
|
|
@@ -28,7 +30,7 @@ export class SelectionController extends VegaSlimmer {
|
|
|
28
30
|
this.currentRange = new RTERange();
|
|
29
31
|
this.updateCaretPositionTaskQueue = new SynchronizeTaskQueue(1);
|
|
30
32
|
this.handleSelectionWithDebounce = debounce(this.handleSelectionChange, SelectionController.SELECTION_CHANGE_DEBOUNCE_TIME, this);
|
|
31
|
-
this.
|
|
33
|
+
this.pendingRestoreSelectionNodes = [];
|
|
32
34
|
/**
|
|
33
35
|
* Sets the next selection state with specified start and end nodes, offsets, and a timestamp.
|
|
34
36
|
*
|
|
@@ -68,6 +70,7 @@ export class SelectionController extends VegaSlimmer {
|
|
|
68
70
|
* Watches the internal value of the editor
|
|
69
71
|
*/
|
|
70
72
|
watchValueUpdate() {
|
|
73
|
+
this.prepareRestoreSelectionState();
|
|
71
74
|
this.restoreSelection();
|
|
72
75
|
}
|
|
73
76
|
/**
|
|
@@ -102,6 +105,14 @@ export class SelectionController extends VegaSlimmer {
|
|
|
102
105
|
getSelectedBlocks() {
|
|
103
106
|
return Array.from(this.selectionMap.keys());
|
|
104
107
|
}
|
|
108
|
+
/**
|
|
109
|
+
* Set the selection state
|
|
110
|
+
*
|
|
111
|
+
* @param {RTESelectionState} state - The selection state to set
|
|
112
|
+
*/
|
|
113
|
+
setSelectionState(state) {
|
|
114
|
+
this.selectionState = state;
|
|
115
|
+
}
|
|
105
116
|
/**
|
|
106
117
|
* Sets the next selection state with specified start and end nodes, offsets, push the update task to a queue
|
|
107
118
|
*
|
|
@@ -159,23 +170,15 @@ export class SelectionController extends VegaSlimmer {
|
|
|
159
170
|
* Restore the selection to the current selected nodes
|
|
160
171
|
*/
|
|
161
172
|
restoreSelection() {
|
|
162
|
-
if (this.
|
|
163
|
-
const startNode = this.
|
|
164
|
-
|
|
165
|
-
if (startNode === endNode && startNode.text.length === 0) {
|
|
173
|
+
if (this.selectionState) {
|
|
174
|
+
const { startNode, endNode, startOffset, endOffset } = this.selectionState.range;
|
|
175
|
+
if (startNode instanceof RTETextNode && startNode === endNode && startNode.text.length === 0) {
|
|
166
176
|
this.enqueueSelectionRangeFutureState(startNode, ZERO_WIDTH_SPACE.length);
|
|
167
177
|
}
|
|
168
178
|
else {
|
|
169
|
-
|
|
170
|
-
if (stateEntityRenderingRegistry.getDOMByEntity(startNode) === startContainer.parentElement &&
|
|
171
|
-
stateEntityRenderingRegistry.getDOMByEntity(endNode) === endContainer.parentElement) {
|
|
172
|
-
this.enqueueSelectionRangeFutureState(startNode, startOffset, endNode, endOffset);
|
|
173
|
-
}
|
|
174
|
-
else {
|
|
175
|
-
this.enqueueSelectionRangeFutureState(startNode, 0, endNode, endNode.text.length);
|
|
176
|
-
}
|
|
179
|
+
this.enqueueSelectionRangeFutureState(startNode, startOffset, endNode, endOffset);
|
|
177
180
|
}
|
|
178
|
-
this.
|
|
181
|
+
this.selectionState = null;
|
|
179
182
|
}
|
|
180
183
|
}
|
|
181
184
|
/**
|
|
@@ -263,10 +266,43 @@ export class SelectionController extends VegaSlimmer {
|
|
|
263
266
|
*/
|
|
264
267
|
registerSelectionRangeChangeObserver() {
|
|
265
268
|
this.selectionRangeChangeObserver = new Observer(this.isAcceptableSelectionRangeChange.bind(this), (payload) => {
|
|
266
|
-
this.
|
|
269
|
+
this.pendingRestoreSelectionNodes.push(payload.node);
|
|
267
270
|
});
|
|
268
271
|
ChangeManager.register(domNodeSubjectFactory.getSubject(this.host, VegaInternalRichTextEditorSelectionRangeChange), this.selectionRangeChangeObserver);
|
|
269
272
|
}
|
|
273
|
+
/**
|
|
274
|
+
* Prepare the selection state to restore
|
|
275
|
+
*/
|
|
276
|
+
prepareRestoreSelectionState() {
|
|
277
|
+
if (this.pendingRestoreSelectionNodes.length > 0) {
|
|
278
|
+
const startNode = this.pendingRestoreSelectionNodes[0];
|
|
279
|
+
const endNode = this.pendingRestoreSelectionNodes.length > 1
|
|
280
|
+
? this.pendingRestoreSelectionNodes[this.pendingRestoreSelectionNodes.length - 1]
|
|
281
|
+
: startNode;
|
|
282
|
+
const { startOffset, endOffset, endContainer, startContainer } = this.currentRange;
|
|
283
|
+
const nodesInCurrentRange = stateEntityRenderingRegistry.getDOMByEntity(startNode) === startContainer.parentElement &&
|
|
284
|
+
stateEntityRenderingRegistry.getDOMByEntity(endNode) === endContainer.parentElement;
|
|
285
|
+
if (nodesInCurrentRange) {
|
|
286
|
+
this.currentRange = this.currentRange.updateRTERange({
|
|
287
|
+
startNode,
|
|
288
|
+
endNode,
|
|
289
|
+
startOffset,
|
|
290
|
+
endOffset,
|
|
291
|
+
});
|
|
292
|
+
this.selectionState = new RTESelectionState(this.currentRange);
|
|
293
|
+
}
|
|
294
|
+
else {
|
|
295
|
+
this.currentRange = this.currentRange.updateRTERange({
|
|
296
|
+
startNode,
|
|
297
|
+
endNode,
|
|
298
|
+
startOffset: 0,
|
|
299
|
+
endOffset: endNode.text.length,
|
|
300
|
+
});
|
|
301
|
+
this.selectionState = new RTESelectionState(this.currentRange);
|
|
302
|
+
}
|
|
303
|
+
this.pendingRestoreSelectionNodes = [];
|
|
304
|
+
}
|
|
305
|
+
}
|
|
270
306
|
}
|
|
271
307
|
SelectionController.SELECTION_CHANGE_DEBOUNCE_TIME = 50;
|
|
272
308
|
__decorate([
|
|
@@ -290,6 +326,9 @@ __decorate([
|
|
|
290
326
|
__decorate([
|
|
291
327
|
MapToComponentField()
|
|
292
328
|
], SelectionController.prototype, "insertCompositionTextController", void 0);
|
|
329
|
+
__decorate([
|
|
330
|
+
MapToComponentField()
|
|
331
|
+
], SelectionController.prototype, "historyController", void 0);
|
|
293
332
|
__decorate([
|
|
294
333
|
MapToComponentMethod('connectedCallback')
|
|
295
334
|
], SelectionController.prototype, "connectedCallback", null);
|
package/dist/collection/components/vega-rich-text-editor/slimmers/controllers/value-controller.js
CHANGED
|
@@ -14,6 +14,8 @@ import { Observer } from '../../../../helpers/change-manager/observer/observer';
|
|
|
14
14
|
import { debounce } from '../../../../utils/timer';
|
|
15
15
|
import { VegaRTEContent } from '../../dto/content-state';
|
|
16
16
|
import { waitForComponentDidRender } from '../../../../helpers/common';
|
|
17
|
+
import { RTEEditorState } from '../../dto/editor-state';
|
|
18
|
+
import { RTESelectionState } from '../../dto/selection-state';
|
|
17
19
|
/**
|
|
18
20
|
* The value controller is responsible for updating the value of the rich text editor.
|
|
19
21
|
*/
|
|
@@ -64,8 +66,12 @@ export class ValueController extends VegaSlimmer {
|
|
|
64
66
|
* Updates the value of the editor and restore the selection.
|
|
65
67
|
*
|
|
66
68
|
* @param {VegaRTEContent} newValue The new value to set.
|
|
69
|
+
* @param {boolean} recordHistory - Whether to record the change in history.
|
|
67
70
|
*/
|
|
68
|
-
async flushChanges(newValue) {
|
|
71
|
+
async flushChanges(newValue, recordHistory = true) {
|
|
72
|
+
if (recordHistory) {
|
|
73
|
+
this.historyController.registerHistory(new RTEEditorState(newValue, new RTESelectionState(this.selectionController.getCurrentRange())));
|
|
74
|
+
}
|
|
69
75
|
this.value = newValue.clone();
|
|
70
76
|
await waitForComponentDidRender(this.host);
|
|
71
77
|
}
|
|
@@ -91,6 +97,12 @@ __decorate([
|
|
|
91
97
|
__decorate([
|
|
92
98
|
MapToComponentField()
|
|
93
99
|
], ValueController.prototype, "valueController", void 0);
|
|
100
|
+
__decorate([
|
|
101
|
+
MapToComponentField()
|
|
102
|
+
], ValueController.prototype, "historyController", void 0);
|
|
103
|
+
__decorate([
|
|
104
|
+
MapToComponentField()
|
|
105
|
+
], ValueController.prototype, "selectionController", void 0);
|
|
94
106
|
__decorate([
|
|
95
107
|
MapToComponentMethod('connectedCallback')
|
|
96
108
|
], ValueController.prototype, "connectedCallback", null);
|
|
@@ -2,6 +2,8 @@ import { VegaRTEContent } from '../../dto/content-state';
|
|
|
2
2
|
import { RTETextBlock } from '../../dto/blocks/text-block';
|
|
3
3
|
import { RTEImageBlock } from '../../dto/blocks/image-block';
|
|
4
4
|
import { RTEListBlock } from '../../dto/blocks/list-block';
|
|
5
|
+
import { BlockAnnotationTypeEnum } from '../../dto/annotations/block-annotation.abstract';
|
|
6
|
+
import { NodeAnnotationTypeEnum } from '../../dto/annotations/node-annotation.abstract';
|
|
5
7
|
describe('content state', () => {
|
|
6
8
|
it('fromJSON should work as expect', () => {
|
|
7
9
|
expect(() => VegaRTEContent.fromJSON([
|
|
@@ -125,6 +127,43 @@ describe('content state', () => {
|
|
|
125
127
|
expect(clonedContentState).not.toBe(contentState);
|
|
126
128
|
expect(clonedContentState).toEqual(contentState);
|
|
127
129
|
});
|
|
130
|
+
it('should deep clone content state', () => {
|
|
131
|
+
const contentState = VegaRTEContent.fromJSON([
|
|
132
|
+
{
|
|
133
|
+
id: '1',
|
|
134
|
+
type: 'paragraph',
|
|
135
|
+
annotations: {
|
|
136
|
+
textStyle: 'paragraph',
|
|
137
|
+
},
|
|
138
|
+
nodes: [
|
|
139
|
+
{ id: '1-1', type: 'text', text: 'This is a paragraph', annotations: { bold: true } },
|
|
140
|
+
],
|
|
141
|
+
},
|
|
142
|
+
]);
|
|
143
|
+
const clonedContentState = contentState.clone(true);
|
|
144
|
+
expect(clonedContentState).not.toBe(contentState);
|
|
145
|
+
expect(clonedContentState).toEqual(contentState);
|
|
146
|
+
const block = contentState.blocks[0];
|
|
147
|
+
const clonedBlock = clonedContentState.blocks[0];
|
|
148
|
+
expect(clonedBlock).toEqual(block);
|
|
149
|
+
expect(clonedBlock).not.toBe(block);
|
|
150
|
+
const node = block.nodes[0];
|
|
151
|
+
const clonedNode = clonedBlock.nodes[0];
|
|
152
|
+
expect(clonedNode).toEqual(node);
|
|
153
|
+
expect(clonedNode).not.toBe(node);
|
|
154
|
+
const blockAnnotations = block.annotationMap;
|
|
155
|
+
const clonedBlockAnnotations = clonedBlock.annotationMap;
|
|
156
|
+
expect(clonedBlockAnnotations).toEqual(blockAnnotations);
|
|
157
|
+
expect(clonedBlockAnnotations).not.toBe(blockAnnotations);
|
|
158
|
+
expect(clonedBlock.getAnnotationByType(BlockAnnotationTypeEnum.TEXT_STYLE)).toEqual(block.getAnnotationByType(BlockAnnotationTypeEnum.TEXT_STYLE));
|
|
159
|
+
expect(clonedBlock.getAnnotationByType(BlockAnnotationTypeEnum.TEXT_STYLE)).not.toBe(block.getAnnotationByType(BlockAnnotationTypeEnum.TEXT_STYLE));
|
|
160
|
+
const nodeAnnotations = node.annotationMap;
|
|
161
|
+
const clonedNodeAnnotations = clonedNode.annotationMap;
|
|
162
|
+
expect(clonedNodeAnnotations).toEqual(nodeAnnotations);
|
|
163
|
+
expect(clonedNodeAnnotations).not.toBe(nodeAnnotations);
|
|
164
|
+
expect(clonedNode.getAnnotationByType(NodeAnnotationTypeEnum.BOLD)).toEqual(node.getAnnotationByType(NodeAnnotationTypeEnum.BOLD));
|
|
165
|
+
expect(clonedNode.getAnnotationByType(NodeAnnotationTypeEnum.BOLD)).not.toBe(node.getAnnotationByType(NodeAnnotationTypeEnum.BOLD));
|
|
166
|
+
});
|
|
128
167
|
it('the parent property should set as properly when create VegaRTEContent', () => {
|
|
129
168
|
const contentState = VegaRTEContent.fromJSON([
|
|
130
169
|
{
|
|
@@ -169,4 +208,81 @@ describe('content state', () => {
|
|
|
169
208
|
expect(nestedListBlock.parent).toEqual(listItemBlock);
|
|
170
209
|
expect(nestedListItemBlock.parent).toEqual(nestedListBlock);
|
|
171
210
|
});
|
|
211
|
+
describe('findNodeById', () => {
|
|
212
|
+
let content;
|
|
213
|
+
beforeAll(() => {
|
|
214
|
+
content = VegaRTEContent.fromJSON([
|
|
215
|
+
{
|
|
216
|
+
id: '1',
|
|
217
|
+
type: 'paragraph',
|
|
218
|
+
nodes: [
|
|
219
|
+
{ id: '1-1', type: 'text', text: 'This ' },
|
|
220
|
+
{ id: '1-2', type: 'text', text: 'is a ' },
|
|
221
|
+
{ id: '1-3', type: 'text', text: 'paragraph.' },
|
|
222
|
+
],
|
|
223
|
+
},
|
|
224
|
+
{
|
|
225
|
+
id: '2',
|
|
226
|
+
type: 'image',
|
|
227
|
+
nodes: [{ id: '2-1', type: 'image', url: 'img.png' }],
|
|
228
|
+
},
|
|
229
|
+
{
|
|
230
|
+
id: '3',
|
|
231
|
+
type: 'bullet-list',
|
|
232
|
+
blocks: [
|
|
233
|
+
{
|
|
234
|
+
id: '3-1',
|
|
235
|
+
type: 'list-item',
|
|
236
|
+
nodes: [{ id: '3-1-1', type: 'text', text: 'List item 1' }],
|
|
237
|
+
children: [
|
|
238
|
+
{
|
|
239
|
+
id: '3-2',
|
|
240
|
+
type: 'number-list',
|
|
241
|
+
blocks: [
|
|
242
|
+
{
|
|
243
|
+
id: '3-2-1',
|
|
244
|
+
type: 'list-item',
|
|
245
|
+
nodes: [
|
|
246
|
+
{ id: '3-2-1-1', type: 'text', text: 'Nested list item' },
|
|
247
|
+
],
|
|
248
|
+
},
|
|
249
|
+
],
|
|
250
|
+
},
|
|
251
|
+
],
|
|
252
|
+
},
|
|
253
|
+
],
|
|
254
|
+
},
|
|
255
|
+
]);
|
|
256
|
+
});
|
|
257
|
+
it('should find the node in text block', () => {
|
|
258
|
+
expect(content.findNodeById('1-2').toJSON()).toEqual({ id: '1-2', type: 'text', text: 'is a ' });
|
|
259
|
+
});
|
|
260
|
+
it('should find the node in image block', () => {
|
|
261
|
+
expect(content.findNodeById('2-1').toJSON()).toEqual({
|
|
262
|
+
id: '2-1',
|
|
263
|
+
type: 'image',
|
|
264
|
+
url: 'img.png',
|
|
265
|
+
annotations: {
|
|
266
|
+
size: 'md',
|
|
267
|
+
},
|
|
268
|
+
});
|
|
269
|
+
});
|
|
270
|
+
it('should find the node in list item', () => {
|
|
271
|
+
expect(content.findNodeById('3-1-1').toJSON()).toEqual({
|
|
272
|
+
id: '3-1-1',
|
|
273
|
+
type: 'text',
|
|
274
|
+
text: 'List item 1',
|
|
275
|
+
});
|
|
276
|
+
});
|
|
277
|
+
it('should find the node in nested list item', () => {
|
|
278
|
+
expect(content.findNodeById('3-2-1-1').toJSON()).toEqual({
|
|
279
|
+
id: '3-2-1-1',
|
|
280
|
+
type: 'text',
|
|
281
|
+
text: 'Nested list item',
|
|
282
|
+
});
|
|
283
|
+
});
|
|
284
|
+
it('should return null for non-existent node', () => {
|
|
285
|
+
expect(content.findNodeById('not-exist')).toBeNull();
|
|
286
|
+
});
|
|
287
|
+
});
|
|
172
288
|
});
|
|
@@ -396,4 +396,16 @@ describe('text node', () => {
|
|
|
396
396
|
textNode.apply(new DeleteNodeAnnotationAction(NodeAnnotationTypeEnum.BOLD));
|
|
397
397
|
expect(textNode.toJSON()).toEqual({ id: '1', type: 'text', text: 'This is a text.' });
|
|
398
398
|
});
|
|
399
|
+
it('should clone a text node with annotations correctly', () => {
|
|
400
|
+
const textBlock = new RTETextBlock('block-1', 'paragraph');
|
|
401
|
+
const textNode = new RTETextNode('1', 'This is a text.', textBlock);
|
|
402
|
+
textNode.apply(new BoldAnnotationAction(true));
|
|
403
|
+
const clonedNode = textNode.clone();
|
|
404
|
+
expect(textNode).toEqual(clonedNode);
|
|
405
|
+
expect(textNode).not.toBe(clonedNode);
|
|
406
|
+
expect(textNode.annotationMap).toEqual(clonedNode.annotationMap);
|
|
407
|
+
expect(textNode.annotationMap).not.toBe(clonedNode.annotationMap);
|
|
408
|
+
expect(textNode.getAnnotationByType(NodeAnnotationTypeEnum.BOLD)).toEqual(clonedNode.getAnnotationByType(NodeAnnotationTypeEnum.BOLD));
|
|
409
|
+
expect(textNode.getAnnotationByType(NodeAnnotationTypeEnum.BOLD)).not.toBe(clonedNode.getAnnotationByType(NodeAnnotationTypeEnum.BOLD));
|
|
410
|
+
});
|
|
399
411
|
});
|
|
@@ -43,6 +43,7 @@ import { InsertCompositionTextController } from './slimmers/controllers/insert-c
|
|
|
43
43
|
import { DeleteSelectedNodesController } from './slimmers/controllers/delete-selected-nodes-controller';
|
|
44
44
|
import { TranslationSlimmer } from '../../helpers/slimmers/translation';
|
|
45
45
|
import { VegaInternalThemeManager } from '../../helpers/theme/internal-theme-manager';
|
|
46
|
+
import { HistoryController } from './slimmers/controllers/history-controller';
|
|
46
47
|
/**
|
|
47
48
|
* @vegaVersion 2.34.0
|
|
48
49
|
*/
|
|
@@ -95,6 +96,7 @@ export class VegaRichTextEditor {
|
|
|
95
96
|
this.changeEventPreventSlimmer = new ChildNodesEventPreventSlimmer([VegaChange], () => this.vegaRichTextEditorRenderer.getRichTextWrapperRef());
|
|
96
97
|
this.textNodeColorController = new TextNodeColorController();
|
|
97
98
|
this.deleteSelectedNodesController = new DeleteSelectedNodesController();
|
|
99
|
+
this.historyController = new HistoryController();
|
|
98
100
|
this.richTextContentEditable = true;
|
|
99
101
|
this.selectionMap = new Map();
|
|
100
102
|
this.isInDarkMode = VegaInternalThemeManager.isDarkMode();
|
|
@@ -689,3 +691,6 @@ __decorate([
|
|
|
689
691
|
__decorate([
|
|
690
692
|
InjectVegaSlimmer()
|
|
691
693
|
], VegaRichTextEditor.prototype, "deleteSelectedNodesController", void 0);
|
|
694
|
+
__decorate([
|
|
695
|
+
InjectVegaSlimmer()
|
|
696
|
+
], VegaRichTextEditor.prototype, "historyController", void 0);
|
|
@@ -63,6 +63,10 @@ export class VegaRichTextImageEditorRenderer extends VegaSlimmer {
|
|
|
63
63
|
{ key: 'lg', text: this.translationSlimmer.t('Lg') },
|
|
64
64
|
], selected: this.size, ref: (ref) => {
|
|
65
65
|
DomNodeSubjectObserverFactory.addUniqueObserverToNode(ref, VegaChange, (e) => {
|
|
66
|
+
// The below line is covered in `history.spec#should register history, and undo/redo for image size change`
|
|
67
|
+
// Prevent handling vegaChange triggered by DOM ref reuse (e.g., undo/redo) when the image editor is not visible.
|
|
68
|
+
if (!this.selected)
|
|
69
|
+
return;
|
|
66
70
|
const size = e.detail;
|
|
67
71
|
this.size = size;
|
|
68
72
|
this.changeEventEmitter.emit({
|
|
@@ -38,6 +38,7 @@ export class VegaRichTextImageEditor {
|
|
|
38
38
|
*
|
|
39
39
|
* @vegaVersion 2.34.0
|
|
40
40
|
*/
|
|
41
|
+
/* eslint-disable-next-line @stencil/strict-mutable */
|
|
41
42
|
this.size = 'md';
|
|
42
43
|
}
|
|
43
44
|
render() {
|
|
@@ -75,7 +76,7 @@ export class VegaRichTextImageEditor {
|
|
|
75
76
|
},
|
|
76
77
|
"size": {
|
|
77
78
|
"type": "string",
|
|
78
|
-
"mutable":
|
|
79
|
+
"mutable": true,
|
|
79
80
|
"complexType": {
|
|
80
81
|
"original": "VegaRichTextImageEditorSizeType",
|
|
81
82
|
"resolved": "\"lg\" | \"md\" | \"sm\"",
|
|
@@ -30,11 +30,11 @@ export class VegaStepper {
|
|
|
30
30
|
propertyRules: [
|
|
31
31
|
{
|
|
32
32
|
propertyName: 'min',
|
|
33
|
-
ruleFactory: (min) => new MinNumberRule({ minValue: min }),
|
|
33
|
+
ruleFactory: (min) => typeof min === 'number' ? new MinNumberRule({ minValue: min }) : null,
|
|
34
34
|
},
|
|
35
35
|
{
|
|
36
36
|
propertyName: 'max',
|
|
37
|
-
ruleFactory: (max) => new MaxNumberRule({ maxValue: max }),
|
|
37
|
+
ruleFactory: (max) => typeof max === 'number' ? new MaxNumberRule({ maxValue: max }) : null,
|
|
38
38
|
},
|
|
39
39
|
],
|
|
40
40
|
defaultValue: 0,
|
|
@@ -52,15 +52,17 @@ export class VegaTabGroupPagesController extends PageResizeObserverSlimmer {
|
|
|
52
52
|
const primaryMargin = 48;
|
|
53
53
|
const groupWidth = this.host.getBoundingClientRect().width;
|
|
54
54
|
let tabGroupContainerWidth = this.variant === 'secondary' ? groupWidth : groupWidth - primaryMargin;
|
|
55
|
-
if (
|
|
56
|
-
|
|
57
|
-
|
|
58
|
-
|
|
59
|
-
|
|
60
|
-
|
|
61
|
-
|
|
62
|
-
|
|
63
|
-
|
|
55
|
+
if (this.overflow === 'menu') {
|
|
56
|
+
if (startIndex > 0) {
|
|
57
|
+
tabGroupContainerWidth -= this.TAB_SIDE_BUTTON_WIDTH + this.TAB_SIDE_BUTTON_AND_CONTENT_SPACE;
|
|
58
|
+
}
|
|
59
|
+
const showRightButton = values.length > 0 &&
|
|
60
|
+
values.slice(startIndex).reduce((prev, current) => prev + current) >
|
|
61
|
+
tabGroupContainerWidth &&
|
|
62
|
+
tabGroupContainerWidth > 0;
|
|
63
|
+
if (showRightButton) {
|
|
64
|
+
tabGroupContainerWidth -= this.TAB_SIDE_BUTTON_WIDTH;
|
|
65
|
+
}
|
|
64
66
|
}
|
|
65
67
|
return tabGroupContainerWidth;
|
|
66
68
|
};
|
|
@@ -136,9 +138,14 @@ export class VegaTabGroupPagesController extends PageResizeObserverSlimmer {
|
|
|
136
138
|
*/
|
|
137
139
|
initTabPages() {
|
|
138
140
|
if (this.tabItems) {
|
|
139
|
-
|
|
140
|
-
|
|
141
|
-
|
|
141
|
+
if (this.overflow === 'scroll') {
|
|
142
|
+
this.tabPages = [[...this.tabItems]];
|
|
143
|
+
}
|
|
144
|
+
else {
|
|
145
|
+
this.tabPages = this.valuePaginator.paginate(this.tabItems, (_input, index) => this.tabWidthArray[index] > 0
|
|
146
|
+
? this.tabWidthArray[index] + Number(this.formatAndValidGap(this.gap))
|
|
147
|
+
: this.tabWidthArray[index], this.getTabContainerSpace);
|
|
148
|
+
}
|
|
142
149
|
}
|
|
143
150
|
}
|
|
144
151
|
/*
|
|
@@ -199,6 +206,9 @@ __decorate([
|
|
|
199
206
|
__decorate([
|
|
200
207
|
MapToComponentField()
|
|
201
208
|
], VegaTabGroupPagesController.prototype, "variant", void 0);
|
|
209
|
+
__decorate([
|
|
210
|
+
MapToComponentField()
|
|
211
|
+
], VegaTabGroupPagesController.prototype, "overflow", void 0);
|
|
202
212
|
__decorate([
|
|
203
213
|
MapToComponentField({ componentFieldName: 'vegaTabGroupSliderStateController' })
|
|
204
214
|
], VegaTabGroupPagesController.prototype, "sliderStateController", void 0);
|
|
@@ -23,10 +23,11 @@ export class VegaTabGroupRenderer extends VegaSlimmer {
|
|
|
23
23
|
'more-tab': this.tabPages.length > 1,
|
|
24
24
|
'tab-style-secondary': this.variant === 'secondary',
|
|
25
25
|
'tab-style-primary': this.variant !== 'secondary',
|
|
26
|
+
'swipe-more-tabs': this.overflow === 'scroll',
|
|
26
27
|
}, ref: (node) => (this.tabMenuContainer = node) },
|
|
27
|
-
this.directionButtonRenderer.render('left'),
|
|
28
|
+
this.overflow === 'menu' && this.directionButtonRenderer.render('left'),
|
|
28
29
|
this.tabListRenderer.render(),
|
|
29
|
-
this.directionButtonRenderer.render('right')),
|
|
30
|
+
this.overflow === 'menu' && this.directionButtonRenderer.render('right')),
|
|
30
31
|
h("div", { class: "horizontal-divider" }),
|
|
31
32
|
this.contentRenderer.render()));
|
|
32
33
|
}
|
|
@@ -37,6 +38,9 @@ __decorate([
|
|
|
37
38
|
__decorate([
|
|
38
39
|
MapToComponentField()
|
|
39
40
|
], VegaTabGroupRenderer.prototype, "variant", void 0);
|
|
41
|
+
__decorate([
|
|
42
|
+
MapToComponentField()
|
|
43
|
+
], VegaTabGroupRenderer.prototype, "overflow", void 0);
|
|
40
44
|
__decorate([
|
|
41
45
|
MapToComponentField({ componentFieldName: 'vegaTabGroupTabListRenderer' })
|
|
42
46
|
], VegaTabGroupRenderer.prototype, "tabListRenderer", void 0);
|
|
@@ -21,10 +21,23 @@ export class VegaTabGroupTabListRenderer extends VegaSlimmer {
|
|
|
21
21
|
};
|
|
22
22
|
}
|
|
23
23
|
render() {
|
|
24
|
-
return (h("div", { class:
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
24
|
+
return (h("div", { class: {
|
|
25
|
+
'tab-list': true,
|
|
26
|
+
'menu': this.overflow === 'menu',
|
|
27
|
+
'scroll': this.overflow === 'scroll',
|
|
28
|
+
} },
|
|
29
|
+
this.overflow === 'menu' && this.renderTabListInMenuOverflow(),
|
|
30
|
+
this.overflow === 'scroll' && this.renderTabListInScrollOverflow()));
|
|
31
|
+
}
|
|
32
|
+
renderTabListInMenuOverflow() {
|
|
33
|
+
return (h("vega-carousel", { showSlider: false, ref: (el) => (this.carouselDom = el) }, this.tabPages.length > 0 ? (this.tabPages.map((tabPage, index) => {
|
|
34
|
+
return h("div", { key: index }, this.renderTabList(tabPage));
|
|
35
|
+
})) : (h("div", null, this.renderTabList(this.tabItems)))));
|
|
36
|
+
}
|
|
37
|
+
renderTabListInScrollOverflow() {
|
|
38
|
+
return (h("div", { class: "overflow-scroll" }, this.tabPages.map((tabPage, index) => {
|
|
39
|
+
return h("div", { key: index }, this.renderTabList(tabPage));
|
|
40
|
+
})));
|
|
28
41
|
}
|
|
29
42
|
renderTabList(showTabItems) {
|
|
30
43
|
return (h("vega-flex", { gap: this.gap }, showTabItems.map((item) => {
|
|
@@ -106,6 +119,9 @@ __decorate([
|
|
|
106
119
|
__decorate([
|
|
107
120
|
MapToComponentField()
|
|
108
121
|
], VegaTabGroupTabListRenderer.prototype, "tabItems", void 0);
|
|
122
|
+
__decorate([
|
|
123
|
+
MapToComponentField()
|
|
124
|
+
], VegaTabGroupTabListRenderer.prototype, "overflow", void 0);
|
|
109
125
|
__decorate([
|
|
110
126
|
MapToComponentField()
|
|
111
127
|
], VegaTabGroupTabListRenderer.prototype, "positionRelativeTo", void 0);
|
|
@@ -15,6 +15,22 @@
|
|
|
15
15
|
background-color: rgba(var(--v-bg-action-quaternary, 222, 225, 227, 1));
|
|
16
16
|
}
|
|
17
17
|
|
|
18
|
+
.tab-content-container .tab-list.scroll {
|
|
19
|
+
width: 100%;
|
|
20
|
+
overflow: hidden;
|
|
21
|
+
}
|
|
22
|
+
.tab-content-container .tab-list.scroll .overflow-scroll > div {
|
|
23
|
+
display: flex;
|
|
24
|
+
overflow-x: auto;
|
|
25
|
+
scroll-behavior: smooth;
|
|
26
|
+
-webkit-overflow-scrolling: touch;
|
|
27
|
+
scrollbar-width: none;
|
|
28
|
+
-ms-overflow-style: none;
|
|
29
|
+
}
|
|
30
|
+
.tab-content-container .tab-list.scroll .overflow-scroll > div::-webkit-scrollbar {
|
|
31
|
+
display: none;
|
|
32
|
+
}
|
|
33
|
+
|
|
18
34
|
.tab-content-container.more-tab .vega-tab {
|
|
19
35
|
flex-grow: 1;
|
|
20
36
|
}
|
|
@@ -84,6 +84,12 @@ export class VegaTabGroup {
|
|
|
84
84
|
* @vegaVersion 1.39.0
|
|
85
85
|
*/
|
|
86
86
|
this.variant = 'primary';
|
|
87
|
+
/**
|
|
88
|
+
* Specifies the overflow navigation for many tab items within the tab group.
|
|
89
|
+
*
|
|
90
|
+
* @vegaVersion __VERSION__
|
|
91
|
+
*/
|
|
92
|
+
this.overflow = 'menu';
|
|
87
93
|
}
|
|
88
94
|
/**
|
|
89
95
|
* The below method is e2e-test covered in
|
|
@@ -283,6 +289,32 @@ export class VegaTabGroup {
|
|
|
283
289
|
"attribute": "variant",
|
|
284
290
|
"reflect": false,
|
|
285
291
|
"defaultValue": "'primary'"
|
|
292
|
+
},
|
|
293
|
+
"overflow": {
|
|
294
|
+
"type": "string",
|
|
295
|
+
"mutable": false,
|
|
296
|
+
"complexType": {
|
|
297
|
+
"original": "TabGroupOverflowType",
|
|
298
|
+
"resolved": "\"menu\" | \"scroll\"",
|
|
299
|
+
"references": {
|
|
300
|
+
"TabGroupOverflowType": {
|
|
301
|
+
"location": "import",
|
|
302
|
+
"path": "./types"
|
|
303
|
+
}
|
|
304
|
+
}
|
|
305
|
+
},
|
|
306
|
+
"required": false,
|
|
307
|
+
"optional": false,
|
|
308
|
+
"docs": {
|
|
309
|
+
"tags": [{
|
|
310
|
+
"name": "vegaVersion",
|
|
311
|
+
"text": "__VERSION__"
|
|
312
|
+
}],
|
|
313
|
+
"text": "Specifies the overflow navigation for many tab items within the tab group."
|
|
314
|
+
},
|
|
315
|
+
"attribute": "overflow",
|
|
316
|
+
"reflect": false,
|
|
317
|
+
"defaultValue": "'menu'"
|
|
286
318
|
}
|
|
287
319
|
}; }
|
|
288
320
|
static get states() { return {
|
|
@@ -45,6 +45,7 @@ export class VegaToggleSwitch {
|
|
|
45
45
|
this.checked = false;
|
|
46
46
|
/**
|
|
47
47
|
* The `value` property returns `true` when the toggle switch is checked, and `false` when it is unchecked.
|
|
48
|
+
* This property is included for form control compatibility and can be used interchangeably with the checked property.
|
|
48
49
|
*
|
|
49
50
|
* @vegaVersion 2.25.0
|
|
50
51
|
*/
|
|
@@ -125,7 +126,12 @@ export class VegaToggleSwitch {
|
|
|
125
126
|
methodPlaceholder();
|
|
126
127
|
}
|
|
127
128
|
componentWillLoad() {
|
|
128
|
-
this.
|
|
129
|
+
if (!this.checked && this.value === true) {
|
|
130
|
+
this.checked = true;
|
|
131
|
+
}
|
|
132
|
+
else {
|
|
133
|
+
this.value = this.checked;
|
|
134
|
+
}
|
|
129
135
|
}
|
|
130
136
|
render() {
|
|
131
137
|
let divContainerCss = this.checked
|
|
@@ -189,7 +195,7 @@ export class VegaToggleSwitch {
|
|
|
189
195
|
"name": "vegaVersion",
|
|
190
196
|
"text": "2.25.0"
|
|
191
197
|
}],
|
|
192
|
-
"text": "The `value` property returns `true` when the toggle switch is checked, and `false` when it is unchecked."
|
|
198
|
+
"text": "The `value` property returns `true` when the toggle switch is checked, and `false` when it is unchecked.\nThis property is included for form control compatibility and can be used interchangeably with the checked property."
|
|
193
199
|
},
|
|
194
200
|
"attribute": "value",
|
|
195
201
|
"reflect": true,
|
|
@@ -34,6 +34,8 @@ export const VegaInputSelectRenderPrefixIconInternalOverridden = new VegaInterna
|
|
|
34
34
|
export const VegaDropdownSearchInternalOverridden = new VegaInternalEventID('VegaDropdownSearchInternalOverridden');
|
|
35
35
|
export const VegaInternalSidenavLinkClick = new VegaInternalEventID('sidenavLinkClick');
|
|
36
36
|
export const VegaInternalLeftNavGroupExpand = new VegaInternalEventID('leftNavGroupExpand');
|
|
37
|
+
export const VegaInternalLeftNavLinkSelected = new VegaInternalEventID('leftNavLinkSelected');
|
|
38
|
+
export const VegaInternalInitializeLeftNavLinkSelected = new VegaInternalEventID('initializeLeftNavLinkSelected');
|
|
37
39
|
export const VegaInternalDropdownUpdateTarget = new VegaInternalEventID('dropdownUpdateTarget');
|
|
38
40
|
export const VegaInternalRichTextEditorFlushChanges = new VegaInternalEventID('richTextEditorFlushChanges');
|
|
39
41
|
export const VegaInternalRichTextEditorSelectionRangeChange = new VegaInternalEventID('richTextEditorSelectionRangeChange');
|