@globalpayments/vega 2.98.0 → 2.100.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/{accessibility-88f8af84.js → accessibility-6ca2a237.js} +21 -0
- package/dist/cjs/{action-color-accessibility-validator-24498816.js → action-color-accessibility-validator-b8a9ef0f.js} +2 -2
- package/dist/cjs/{app-globals-b3f05631.js → app-globals-48d067a7.js} +11 -10
- package/dist/cjs/{aria-attributes-value-mapper-9a41b9cf.js → aria-attributes-value-mapper-e8c6b0e0.js} +1 -1
- package/dist/cjs/{code-block-d78c2b2c.js → code-block-3b42c364.js} +95 -6
- package/dist/cjs/{component-global-style-slimmer-93c5fb50.js → component-global-style-slimmer-ba588eb4.js} +1 -1
- package/dist/cjs/{component-value-history-controller-slimmer.abstract-beb00fea.js → component-value-history-controller-slimmer.abstract-bbe3bcaf.js} +24 -5
- package/dist/cjs/{content-state-78a620a9.js → content-state-87a06c1a.js} +104 -8
- package/dist/cjs/{dark-mode-style-controller-32d4054a.js → dark-mode-style-controller-f3da3342.js} +2 -2
- package/dist/cjs/{date-required-rule-5250f26d.js → date-required-rule-45c802d3.js} +1 -1
- package/dist/cjs/{design-token-74674ee7.js → design-token-9d762da0.js} +3 -3
- package/dist/cjs/{element-appender-slimmer-597e9e48.js → element-appender-slimmer-f7ba5d9a.js} +2 -2
- package/dist/cjs/{form-field-controller-slimmer-a743be34.js → form-field-controller-slimmer-fbaddc91.js} +2 -2
- package/dist/cjs/{image-annotation-action-85c4bd83.js → image-annotation-action-03d3e01a.js} +7 -6
- package/dist/cjs/{image-extension-260fa69c.js → image-extension-ccda26d3.js} +2 -2
- package/dist/cjs/{index-592b4052.js → index-5d1adcd1.js} +86 -0
- package/dist/cjs/index.cjs.js +20 -19
- package/dist/cjs/{inject-keyboard-manager-6a6f5c9f.js → inject-keyboard-manager-540f0876.js} +1 -1
- package/dist/cjs/{internal-calendar-period-factory-dfcdd3f6.js → internal-calendar-period-factory-b11918ee.js} +1 -1
- package/dist/cjs/{internal-translation-controller-1dac2df8.js → internal-translation-controller-27bfc8c7.js} +17 -0
- package/dist/cjs/{keyboard-manager-c56033b1.js → keyboard-manager-16e96b62.js} +12 -5
- package/dist/cjs/{keyboard-manager-slimmer-7043a106.js → keyboard-manager-slimmer-0a4e556d.js} +1 -1
- package/dist/cjs/{link-extension-220ff6a9.js → link-extension-71eeaa9f.js} +26 -7
- package/dist/cjs/loader.cjs.js +14 -14
- package/dist/cjs/{month-view-generator-7b704a80.js → month-view-generator-0a3e04de.js} +1 -1
- package/dist/cjs/overlay-escape-coordination-901d8942.js +38 -0
- package/dist/cjs/{public-rules-5657bce4.js → public-rules-3dc5d02d.js} +9 -9
- package/dist/cjs/{range-c5afd53a.js → range-d29751e3.js} +1 -1
- package/dist/cjs/{responsive-format-facade-493d1763.js → responsive-format-facade-c6d7f0a1.js} +1 -1
- package/dist/cjs/{rich-text-editor-required-rule-385c1b61.js → rich-text-editor-required-rule-05de7f0c.js} +1 -1
- package/dist/cjs/{split-cell-operation-873d5db7.js → split-cell-operation-ef783850.js} +14 -4
- package/dist/cjs/{state-border-formatter-711c7aaa.js → state-border-formatter-dda9109a.js} +1 -1
- package/dist/cjs/{string-format-strategy.abstract-b61bdcbd.js → string-format-strategy.abstract-3a968a59.js} +1 -1
- package/dist/cjs/{string-input-formatter-slimmer-ef65cca7.js → string-input-formatter-slimmer-9747039f.js} +1 -1
- package/dist/cjs/{string-mask-strategy-ad3fa0ac.js → string-mask-strategy-d9f85c21.js} +2 -2
- package/dist/cjs/{style-formatter-8f711cb0.js → style-formatter-d21a9784.js} +2 -2
- package/dist/cjs/{time-required-rule-87417359.js → time-required-rule-580cbd3d.js} +1 -1
- package/dist/cjs/{token-extension-78b5a026.js → token-extension-8d7bd451.js} +3773 -252
- package/dist/cjs/{translation-slimmer-77c7f37d.js → translation-slimmer-31cd5a57.js} +1 -1
- package/dist/cjs/{type-guard-a57ef3ac.js → type-guard-00b8efc0.js} +1 -1
- package/dist/cjs/{valid-credit-card-number-rule-4c0a3040.js → valid-credit-card-number-rule-70885128.js} +1 -1
- package/dist/cjs/vega-accordion.cjs.entry.js +6 -6
- package/dist/cjs/vega-app-footer.cjs.entry.js +2 -2
- package/dist/cjs/vega-app-header-button.cjs.entry.js +6 -6
- package/dist/cjs/vega-banner.cjs.entry.js +1 -1
- package/dist/cjs/vega-box.cjs.entry.js +7 -7
- package/dist/cjs/vega-brand-logo.cjs.entry.js +2 -2
- package/dist/cjs/vega-breadcrumb.cjs.entry.js +2 -2
- package/dist/cjs/vega-button-circle.cjs.entry.js +7 -7
- package/dist/cjs/vega-button-group_2.cjs.entry.js +13 -6
- package/dist/cjs/vega-button-link.cjs.entry.js +4 -4
- package/dist/cjs/vega-button.cjs.entry.js +22 -6
- package/dist/cjs/vega-calendar_5.cjs.entry.js +22 -11
- package/dist/cjs/vega-card.cjs.entry.js +5 -5
- package/dist/cjs/vega-carousel.cjs.entry.js +4 -4
- package/dist/cjs/vega-checkbox_2.cjs.entry.js +4 -4
- package/dist/cjs/vega-chip.cjs.entry.js +6 -6
- package/dist/cjs/vega-code-block.cjs.entry.js +12 -12
- package/dist/cjs/vega-color-picker.cjs.entry.js +4 -4
- package/dist/cjs/vega-color-swatch-picker.cjs.entry.js +4 -4
- package/dist/cjs/vega-color-swatch.cjs.entry.js +3 -3
- package/dist/cjs/vega-combo-box.cjs.entry.js +10 -10
- package/dist/cjs/vega-counter-badge.cjs.entry.js +2 -2
- package/dist/cjs/vega-date-picker_2.cjs.entry.js +15 -15
- package/dist/cjs/vega-dialog_2.cjs.entry.js +72 -6
- package/dist/cjs/vega-divider.cjs.entry.js +5 -5
- package/dist/cjs/vega-dropdown_5.cjs.entry.js +116 -24
- package/dist/cjs/vega-env-manager-23b8b23c.js +2 -2
- package/dist/cjs/vega-field-label.cjs.entry.js +27 -34
- package/dist/cjs/vega-file-uploader.cjs.entry.js +5 -5
- 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 +2 -2
- package/dist/cjs/vega-grid.cjs.entry.js +5 -5
- package/dist/cjs/vega-icon.cjs.entry.js +6 -6
- package/dist/cjs/vega-image-uploader.cjs.entry.js +8 -8
- package/dist/cjs/vega-input-credit-card.cjs.entry.js +7 -7
- package/dist/cjs/vega-input-numeric.cjs.entry.js +6 -6
- package/dist/cjs/vega-input-passcode.cjs.entry.js +6 -6
- package/dist/cjs/vega-input-phone-number.cjs.entry.js +42 -8
- package/dist/cjs/vega-input-range.cjs.entry.js +5 -5
- package/dist/cjs/vega-input-select.cjs.entry.js +25 -8
- package/dist/cjs/vega-input.cjs.entry.js +9 -9
- 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-size-selector-mobile.cjs.entry.js +2 -2
- package/dist/cjs/vega-pagination.cjs.entry.js +4 -4
- package/dist/cjs/vega-popover_2.cjs.entry.js +58 -9
- package/dist/cjs/vega-progress-tracker_2.cjs.entry.js +4 -4
- package/dist/cjs/vega-radio_2.cjs.entry.js +7 -7
- package/dist/cjs/vega-rich-text-content.cjs.entry.js +44 -13
- package/dist/cjs/vega-rich-text-editor_4.cjs.entry.js +767 -248
- package/dist/cjs/vega-rich-text-find-replace-panel.cjs.entry.js +3 -3
- package/dist/cjs/vega-rich-text-special-characters-panel.cjs.entry.js +5 -5
- package/dist/cjs/vega-rich-text-table-properties_3.cjs.entry.js +158 -105
- package/dist/cjs/vega-selection-chip_2.cjs.entry.js +6 -6
- package/dist/cjs/vega-selection-tile_2.cjs.entry.js +3 -3
- package/dist/cjs/vega-sidenav_3.cjs.entry.js +4 -4
- package/dist/cjs/vega-signature-capture.cjs.entry.js +8 -8
- package/dist/cjs/vega-stepper.cjs.entry.js +3 -3
- package/dist/cjs/vega-tab-group_2.cjs.entry.js +22 -9
- package/dist/cjs/vega-table_11.cjs.entry.js +82 -46
- package/dist/cjs/vega-textarea.cjs.entry.js +3 -3
- package/dist/cjs/vega-time-picker_2.cjs.entry.js +11 -11
- package/dist/cjs/vega-toggle-switch.cjs.entry.js +4 -4
- package/dist/cjs/vega-tooltip_2.cjs.entry.js +6 -6
- package/dist/cjs/vega.cjs.js +14 -14
- package/dist/collection/components/vega-button/vega-button.js +17 -2
- package/dist/collection/components/vega-button-group/vega-button-group-item/slimmers/renderers/vega-button-group-item-renderer.js +13 -6
- package/dist/collection/components/vega-button-link/vega-button-link.js +2 -2
- package/dist/collection/components/vega-calendar/slimmers/common/renderers/vega-calendar-event-item-renderer.js +5 -2
- package/dist/collection/components/vega-calendar/vega-calendar-event-preview/slimmers/renderers/vega-calendar-event-preview-detail-renderer.js +9 -1
- package/dist/collection/components/vega-code-block/vega-code-block.css +4 -4
- package/dist/collection/components/vega-counter-badge/vega-counter-badge.js +2 -2
- package/dist/collection/components/vega-dropdown/slimmers/controllers/vega-dropdown-keyboard-controller.js +148 -0
- package/dist/collection/components/vega-dropdown/slimmers/controllers/vega-dropdown-scrollable-controller.js +5 -2
- package/dist/collection/components/vega-dropdown/slimmers/renderers/vega-dropdown-renderer.js +17 -0
- package/dist/collection/components/vega-dropdown/vega-dropdown-group/slimmers/renderers/vega-dropdown-group-renderer.js +6 -4
- package/dist/collection/components/vega-dropdown/vega-dropdown-item/slimmers/renderers/vega-dropdown-item-renderer.js +12 -4
- package/dist/collection/components/vega-dropdown/vega-dropdown-item/vega-dropdown-item.css +2 -1
- package/dist/collection/components/vega-dropdown/vega-dropdown.js +1 -1
- package/dist/collection/components/vega-field-label/slimmers/renderers/vega-field-label-label-announcement-renderer.js +21 -30
- package/dist/collection/components/vega-field-label/vega-field-label.css +1 -0
- package/dist/collection/components/vega-field-label/vega-field-label.js +7 -5
- package/dist/collection/components/vega-input-select/slimmers/renderers/vega-input-select-dropdown-renderer.js +19 -2
- package/dist/collection/components/vega-modal/slimmers/controllers/vega-modal-open-state-controller.js +66 -0
- package/dist/collection/components/vega-popover/slimmers/renderers/vega-popover-appender-renderer.js +17 -0
- package/dist/collection/components/vega-popover/vega-popover.js +33 -1
- package/dist/collection/components/vega-rich-text-content/slimmers/renderers/vega-rich-text-content-renderer.js +4 -1
- package/dist/collection/components/vega-rich-text-editor/constants/constant.js +25 -0
- package/dist/collection/components/vega-rich-text-editor/dto/action-handle-strategies/modify-content-strategies/commit-value-strategy.js +13 -0
- package/dist/collection/components/vega-rich-text-editor/dto/actions/commit-value-action.js +20 -0
- package/dist/collection/components/vega-rich-text-editor/dto/annotations/text-style-default-styles.js +2 -1
- package/dist/collection/components/vega-rich-text-editor/dto/blocks/block.abstract.js +22 -0
- package/dist/collection/components/vega-rich-text-editor/dto/blocks/list-item-block.js +10 -0
- package/dist/collection/components/vega-rich-text-editor/dto/content-state.js +11 -0
- package/dist/collection/components/vega-rich-text-editor/dto/filter-styles-strategies/filter-styles-strategy-registry.js +2 -1
- package/dist/collection/components/vega-rich-text-editor/dto/filter-styles-strategies/filter-styles-strategy.abstract.js +5 -2
- package/dist/collection/components/vega-rich-text-editor/dto/filter-styles-strategies/text-node/title-heading-node-filter-styles-strategy.js +36 -2
- package/dist/collection/components/vega-rich-text-editor/dto/nodes/code-block-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 +6 -0
- package/dist/collection/components/vega-rich-text-editor/dto/renderers/blocks/block-text-nodes-renderer.abstract.js +20 -3
- package/dist/collection/components/vega-rich-text-editor/dto/renderers/nodes/text-node-renderer.js +12 -0
- package/dist/collection/components/vega-rich-text-editor/extensions/base-toolbar-button-renderer.js +30 -18
- package/dist/collection/components/vega-rich-text-editor/extensions/block-boundary-registry.js +34 -0
- package/dist/collection/components/vega-rich-text-editor/extensions/blockquote/renderers/blockquote-toolbar-button-renderer.js +1 -0
- package/dist/collection/components/vega-rich-text-editor/extensions/copy/copy-toolbar-button-renderer.js +1 -0
- package/dist/collection/components/vega-rich-text-editor/extensions/cut/cut-toolbar-button-renderer.js +1 -0
- package/dist/collection/components/vega-rich-text-editor/extensions/extension.abstract.js +20 -0
- package/dist/collection/components/vega-rich-text-editor/extensions/find-replace/slimmer/renderers/find-replace-toolbar-button-renderer.js +51 -0
- package/dist/collection/components/vega-rich-text-editor/extensions/find-replace/vega-rich-text-find-replace-panel/slimmers/renderers/find-replace-panel-renderer.js +2 -2
- package/dist/collection/components/vega-rich-text-editor/extensions/fullscreen/fullscreen-toolbar-button-renderer.js +3 -0
- package/dist/collection/components/vega-rich-text-editor/extensions/functions/action-handler-strategies/insert-function-block-strategy.js +3 -2
- package/dist/collection/components/vega-rich-text-editor/extensions/functions/constants.js +8 -0
- package/dist/collection/components/vega-rich-text-editor/extensions/functions/dto/function-block.js +14 -3
- package/dist/collection/components/vega-rich-text-editor/extensions/functions/dto/logic-control-block.js +2 -1
- package/dist/collection/components/vega-rich-text-editor/extensions/functions/dto/logic-control-node.js +6 -0
- package/dist/collection/components/vega-rich-text-editor/extensions/functions/element-to-dto-strategies/div-containing-function-block-strategy.js +19 -0
- package/dist/collection/components/vega-rich-text-editor/extensions/functions/element-to-dto-strategies/div-to-function-block-strategy.js +9 -5
- package/dist/collection/components/vega-rich-text-editor/extensions/functions/element-to-dto-strategies/div-to-function-content-strategy.js +3 -3
- package/dist/collection/components/vega-rich-text-editor/extensions/functions/element-to-dto-strategies/div-to-logic-control-block-strategy.js +4 -2
- package/dist/collection/components/vega-rich-text-editor/extensions/functions/function-extension.js +18 -0
- package/dist/collection/components/vega-rich-text-editor/extensions/functions/renderers/function-block-renderer.js +5 -2
- package/dist/collection/components/vega-rich-text-editor/extensions/functions/renderers/function-toolbar-button-renderer.js +1 -0
- package/dist/collection/components/vega-rich-text-editor/extensions/functions/renderers/logic-control-block-renderer.js +2 -1
- package/dist/collection/components/vega-rich-text-editor/extensions/functions/utils.js +36 -0
- package/dist/collection/components/vega-rich-text-editor/extensions/horizontal-line/renderers/horizontal-line-toolbar-button-renderer.js +1 -0
- package/dist/collection/components/vega-rich-text-editor/extensions/languages/language-extension.js +1 -0
- package/dist/collection/components/vega-rich-text-editor/extensions/languages/language-toolbar-button-renderer.js +5 -3
- package/dist/collection/components/vega-rich-text-editor/extensions/line-height/line-height-toolbar-button-renderer.js +16 -0
- package/dist/collection/components/vega-rich-text-editor/extensions/paste/action-handler-strategies/image-replace-src-strategy.js +21 -0
- package/dist/collection/components/vega-rich-text-editor/extensions/paste/actions/image-replace-src-action.js +13 -0
- package/dist/collection/components/vega-rich-text-editor/extensions/paste/parse-local-images-helper/paste-image-parser.js +295 -0
- package/dist/collection/components/vega-rich-text-editor/extensions/paste/parse-local-images-helper/pending-image-registry.js +116 -0
- package/dist/collection/components/vega-rich-text-editor/extensions/paste/paste-chooser-ui.js +13 -4
- package/dist/collection/components/vega-rich-text-editor/extensions/paste/paste-extension.js +70 -7
- package/dist/collection/components/vega-rich-text-editor/extensions/paste/strategies/default-paste-strategy.js +38 -0
- package/dist/collection/components/vega-rich-text-editor/extensions/paste/strategies/paste-processing-strategy.abstract.js +55 -0
- package/dist/collection/components/vega-rich-text-editor/extensions/paste/strategies/paste-strategy-selector.js +59 -0
- package/dist/collection/components/vega-rich-text-editor/extensions/paste/strategies/word-paste-strategy.js +416 -0
- package/dist/collection/components/vega-rich-text-editor/extensions/paste/word-paste-transformers/word-structure-code-block-transformer.js +106 -0
- package/dist/collection/components/vega-rich-text-editor/extensions/paste/word-paste-transformers/word-structure-image-transformer.js +198 -0
- package/dist/collection/components/vega-rich-text-editor/extensions/paste/word-paste-transformers/word-structure-list-transformer.js +591 -0
- package/dist/collection/components/vega-rich-text-editor/extensions/paste/word-paste-transformers/word-structure-paragraph-transformer.js +112 -0
- package/dist/collection/components/vega-rich-text-editor/extensions/paste/word-paste-transformers/word-structure-table-transformer.js +551 -0
- package/dist/collection/components/vega-rich-text-editor/extensions/paste/word-paste-transformers/word-structure-transformer.js +7 -0
- package/dist/collection/components/vega-rich-text-editor/extensions/special-characters/special-characters-toolbar-button-renderer.js +2 -0
- package/dist/collection/components/vega-rich-text-editor/extensions/table/dto/table-block.js +10 -0
- package/dist/collection/components/vega-rich-text-editor/extensions/table/renderers/table-caption-renderer.js +3 -9
- package/dist/collection/components/vega-rich-text-editor/extensions/table/renderers/table-cell-renderer.js +2 -2
- package/dist/collection/components/vega-rich-text-editor/extensions/table/renderers/table-dynamic-popover-renderer.js +81 -1
- package/dist/collection/components/vega-rich-text-editor/extensions/table/renderers/table-popover-base-renderer.js +148 -0
- package/dist/collection/components/vega-rich-text-editor/extensions/table/renderers/table-renderer.js +151 -5
- package/dist/collection/components/vega-rich-text-editor/extensions/table/renderers/table-setting-popover-renderer.js +144 -2
- package/dist/collection/components/vega-rich-text-editor/extensions/table/table-selection.js +26 -1
- package/dist/collection/components/vega-rich-text-editor/extensions/table/table-toolbar-button-renderer.js +1 -0
- package/dist/collection/components/vega-rich-text-editor/extensions/table/vega-rich-text-table-properties/slimmers/renderers/vega-rich-text-cell-properties-form-field-renderer.js +11 -2
- package/dist/collection/components/vega-rich-text-editor/extensions/table/vega-rich-text-table-properties/slimmers/renderers/vega-rich-text-table-properties-basic-form-field-renderer.abstract.js +5 -2
- package/dist/collection/components/vega-rich-text-editor/extensions/table/vega-rich-text-table-properties/slimmers/renderers/vega-rich-text-table-properties-form-field-renderer.js +5 -1
- package/dist/collection/components/vega-rich-text-editor/extensions/table/vega-rich-text-table-properties/vega-rich-text-table-properties.css +5 -0
- package/dist/collection/components/vega-rich-text-editor/extensions/table/vega-rich-text-table-properties/vega-rich-text-table-properties.js +16 -1
- package/dist/collection/components/vega-rich-text-editor/extensions/table/vega-rich-text-table-setting/slimmers/renderers/caption-button-slimmer.js +1 -0
- package/dist/collection/components/vega-rich-text-editor/extensions/table/vega-rich-text-table-setting/slimmers/renderers/cell-properties-button-slimmer.js +1 -0
- package/dist/collection/components/vega-rich-text-editor/extensions/table/vega-rich-text-table-setting/slimmers/renderers/column-button-slimmer.js +10 -9
- package/dist/collection/components/vega-rich-text-editor/extensions/table/vega-rich-text-table-setting/slimmers/renderers/merge-cells-button-slimmer.js +9 -8
- package/dist/collection/components/vega-rich-text-editor/extensions/table/vega-rich-text-table-setting/slimmers/renderers/row-button-slimmer.js +25 -10
- package/dist/collection/components/vega-rich-text-editor/extensions/table/vega-rich-text-table-setting/slimmers/renderers/table-properties-button-slimmer.js +1 -0
- package/dist/collection/components/vega-rich-text-editor/extensions/table/vega-rich-text-table-setting/slimmers/renderers/table-setting-button-slimmer.abstract.js +5 -4
- package/dist/collection/components/vega-rich-text-editor/extensions/table/vega-rich-text-table-setting/slimmers/renderers/vega-rich-text-table-setting-renderer.js +1 -1
- package/dist/collection/components/vega-rich-text-editor/extensions/table/vega-rich-text-table-setting/vega-rich-text-table-setting.css +10 -0
- package/dist/collection/components/vega-rich-text-editor/extensions/table/vega-rich-text-table-setting/vega-rich-text-table-setting.js +2 -0
- package/dist/collection/components/vega-rich-text-editor/extensions/tokens/span-to-token-node-strategy.js +4 -2
- package/dist/collection/components/vega-rich-text-editor/extensions/tokens/token-node.js +44 -0
- package/dist/collection/components/vega-rich-text-editor/extensions/tokens/token-toolbar-button-renderer.js +1 -0
- package/dist/collection/components/vega-rich-text-editor/extensions/word-count/action-handler-interceptors/prevent-hard-limit-exceed-interceptor.js +70 -0
- package/dist/collection/components/vega-rich-text-editor/extensions/word-count/type.js +1 -0
- package/dist/collection/components/vega-rich-text-editor/extensions/word-count/word-count-extension.js +62 -0
- package/dist/collection/components/vega-rich-text-editor/public-api.js +1 -0
- package/dist/collection/components/vega-rich-text-editor/slimmers/controllers/extension-controller.js +2 -0
- package/dist/collection/components/vega-rich-text-editor/slimmers/controllers/helper/element-to-dto-strategy/annotation-handler/text-style-annotation-handler.js +7 -4
- package/dist/collection/components/vega-rich-text-editor/slimmers/controllers/helper/element-to-dto-strategy/continue-inline-to-rte-text-block-strategy.js +17 -0
- package/dist/collection/components/vega-rich-text-editor/slimmers/controllers/helper/input-event-handler/insert-paste-handler.js +18 -4
- package/dist/collection/components/vega-rich-text-editor/slimmers/controllers/insert-composition-text-controller.js +2 -1
- package/dist/collection/components/vega-rich-text-editor/slimmers/controllers/selection-controller.js +21 -2
- package/dist/collection/components/vega-rich-text-editor/slimmers/controllers/user-input-controller.js +7 -1
- package/dist/collection/components/vega-rich-text-editor/slimmers/controllers/value-controller.js +52 -2
- package/dist/collection/components/vega-rich-text-editor/slimmers/controllers/word-count-controller.js +79 -0
- package/dist/collection/components/vega-rich-text-editor/slimmers/renderers/toolbar-renderer.js +6 -3
- package/dist/collection/components/vega-rich-text-editor/slimmers/renderers/tools/bullets-numbers/bullets-numbers-toolbar-button-slimmer.js +2 -1
- package/dist/collection/components/vega-rich-text-editor/slimmers/renderers/tools/horizontal-alignment/horizontal-alignment-toolbar-button-slimmer.js +2 -1
- package/dist/collection/components/vega-rich-text-editor/slimmers/renderers/tools/image-toolbar-button-slimmer.js +3 -2
- package/dist/collection/components/vega-rich-text-editor/slimmers/renderers/tools/link-toolbar-button-slimmer.js +111 -2
- package/dist/collection/components/vega-rich-text-editor/slimmers/renderers/tools/source-edit-toolbar-button-slimmer.js +24 -6
- package/dist/collection/components/vega-rich-text-editor/slimmers/renderers/tools/text-color-toolbar-button-slimmer.js +1 -1
- package/dist/collection/components/vega-rich-text-editor/slimmers/renderers/tools/text-styles-toolbar-button-slimmer.js +1 -1
- package/dist/collection/components/vega-rich-text-editor/slimmers/renderers/tools/toolbar-button-slimmer.abstract.js +3 -2
- package/dist/collection/components/vega-rich-text-editor/slimmers/renderers/vega-rich-text-editor-renderer.js +59 -8
- package/dist/collection/components/vega-rich-text-editor/slimmers/renderers/vega-rich-text-editor-source-view-renderer.js +5 -2
- package/dist/collection/components/vega-rich-text-editor/vega-rich-text-editor-toolbar-button/slimmers/renderers/vega-rich-text-editor-toolbar-button-renderer.js +1 -1
- package/dist/collection/components/vega-rich-text-editor/vega-rich-text-editor-toolbar-button/vega-rich-text-editor-toolbar-button.js +13 -1
- package/dist/collection/components/vega-rich-text-editor/vega-rich-text-editor.js +16 -0
- package/dist/collection/components/vega-rich-text-editor/vega-rich-text-link-editor/slimmers/controllers/link-editor-controller.js +124 -0
- package/dist/collection/components/vega-rich-text-editor/vega-rich-text-link-editor/slimmers/renderers/vega-rich-text-link-editor-renderer.js +9 -1
- package/dist/collection/components/vega-tab-group/slimmers/vega-tab-group/renderers/vega-tab-group-tab-list-renderer.js +14 -7
- package/dist/collection/components/vega-tab-group/vega-tab-group.css +6 -0
- package/dist/collection/components/vega-tab-group/vega-tab-group.js +5 -0
- package/dist/collection/components/vega-table/slimmers/controllers/vega-table-body-col-span-controller.js +31 -1
- package/dist/collection/components/vega-table/slimmers/renderers/vega-table-body-col-span-resolver.js +18 -11
- package/dist/collection/global/scripts/before-vega-load.js +2 -0
- package/dist/collection/helpers/keyboard/keyboard-manager.js +11 -4
- package/dist/collection/helpers/keyboard/overlay-escape-coordination.js +33 -0
- package/dist/collection/helpers/slimmers/mutation-observer/aria-attributes-value-mapper.js +1 -1
- package/dist/collection/helpers/translation/locales/en.js +17 -0
- package/dist/collection/polyfill/libphonenumber/as-you-type.js +21 -3
- package/dist/collection/polyfill/libphonenumber/metadata.js +16 -0
- package/dist/collection/utils/accessibility.js +20 -0
- package/dist/collection/utils/sanitize/index.js +3 -2
- package/dist/collection/utils/sanitize/strategies/index.js +1 -0
- package/dist/collection/utils/sanitize/strategies/label-sanitize-strategy.js +14 -0
- package/dist/collection/utils/sanitize/strategies/plain-text-sanitize-strategy.js +70 -0
- package/dist/esm/{accessibility-6af5cf2e.js → accessibility-c899a968.js} +21 -1
- package/dist/esm/{action-color-accessibility-validator-ce55cb07.js → action-color-accessibility-validator-08877515.js} +2 -2
- package/dist/esm/{app-globals-95c7110a.js → app-globals-1e1371d5.js} +11 -10
- package/dist/esm/{aria-attributes-value-mapper-2c632641.js → aria-attributes-value-mapper-a5c7478e.js} +1 -1
- package/dist/esm/{aria-dialog-focusable-trap-slimmer-f069f54d.js → aria-dialog-focusable-trap-slimmer-b2a24a45.js} +2 -2
- package/dist/esm/{child-nodes-notify-observer-slimmer-499a3aa7.js → child-nodes-notify-observer-slimmer-034bc78c.js} +1 -1
- package/dist/esm/{code-block-9c513169.js → code-block-741d6b8e.js} +91 -9
- package/dist/esm/{component-global-style-slimmer-ac703085.js → component-global-style-slimmer-7d60a04a.js} +1 -1
- package/dist/esm/{component-value-history-controller-slimmer.abstract-9cef2a2a.js → component-value-history-controller-slimmer.abstract-2bcd749e.js} +26 -7
- package/dist/esm/{content-state-25c81c08.js → content-state-2f6f4204.js} +104 -11
- package/dist/esm/{dark-mode-style-controller-ca5afd2d.js → dark-mode-style-controller-352f15ff.js} +2 -2
- package/dist/esm/{date-required-rule-85334d0c.js → date-required-rule-2ea3aec8.js} +1 -1
- package/dist/esm/{design-token-10ff79b5.js → design-token-82a4e107.js} +3 -3
- package/dist/esm/{dom-node-subject-observer-factory-ddff8662.js → dom-node-subject-observer-factory-bb7e68a0.js} +1 -1
- package/dist/esm/{element-appender-slimmer-8a06ecdd.js → element-appender-slimmer-c820c0bf.js} +4 -4
- package/dist/esm/{event-emit-slimmer-2452278f.js → event-emit-slimmer-e8bb2292.js} +1 -1
- package/dist/esm/{form-field-controller-slimmer-68fc5380.js → form-field-controller-slimmer-02165dbe.js} +5 -5
- package/dist/esm/{image-annotation-action-d7f2aecc.js → image-annotation-action-972c1074.js} +8 -7
- package/dist/esm/{image-extension-fbd1ed6e.js → image-extension-59484e9a.js} +2 -2
- package/dist/esm/{index-3b327f29.js → index-35451d12.js} +86 -1
- package/dist/esm/index.js +21 -21
- package/dist/esm/{inject-keyboard-manager-ea1aad5b.js → inject-keyboard-manager-6a10c9b7.js} +1 -1
- package/dist/esm/{internal-calendar-period-factory-7b294fb6.js → internal-calendar-period-factory-d1a60f81.js} +1 -1
- package/dist/esm/{internal-translation-controller-fac22598.js → internal-translation-controller-fff376d2.js} +17 -0
- package/dist/esm/{keyboard-manager-50da85d7.js → keyboard-manager-a58288df.js} +13 -6
- package/dist/esm/{keyboard-manager-slimmer-1f7c8bfb.js → keyboard-manager-slimmer-133b86cd.js} +1 -1
- package/dist/esm/{link-extension-e8ee103e.js → link-extension-e89acb5c.js} +26 -7
- package/dist/esm/loader.js +16 -16
- package/dist/esm/{month-view-generator-a1a9a4ec.js → month-view-generator-20e32b22.js} +1 -1
- package/dist/esm/overlay-escape-coordination-439f7d6f.js +35 -0
- package/dist/esm/{public-rules-49de79c7.js → public-rules-c154201b.js} +11 -11
- package/dist/esm/{range-b678c693.js → range-c818a1eb.js} +2 -2
- package/dist/esm/{responsive-format-facade-f19b601c.js → responsive-format-facade-07843ec3.js} +1 -1
- package/dist/esm/{rich-text-editor-required-rule-578e0958.js → rich-text-editor-required-rule-878e91c6.js} +1 -1
- package/dist/esm/{split-cell-operation-1c8e7585.js → split-cell-operation-cc0cdf90.js} +15 -5
- package/dist/esm/{state-border-formatter-bfda33aa.js → state-border-formatter-3b3dcfe8.js} +1 -1
- package/dist/esm/{string-format-strategy.abstract-1f4ff1b3.js → string-format-strategy.abstract-44381dcb.js} +1 -1
- package/dist/esm/{string-input-formatter-slimmer-0006a107.js → string-input-formatter-slimmer-76fe52d3.js} +3 -3
- package/dist/esm/{string-mask-strategy-bbbcdbef.js → string-mask-strategy-999fba4b.js} +2 -2
- package/dist/esm/{style-formatter-e9adc8f4.js → style-formatter-c4192c99.js} +2 -2
- package/dist/esm/{sub-state-notify-slimmer-23b7d0e8.js → sub-state-notify-slimmer-e306c849.js} +1 -1
- package/dist/esm/{sub-state-observer-slimmer-722f6b92.js → sub-state-observer-slimmer-bd85f381.js} +2 -2
- package/dist/esm/{time-required-rule-1ce2d0a0.js → time-required-rule-0554b114.js} +1 -1
- package/dist/esm/{token-extension-f2d009e3.js → token-extension-35c66684.js} +3773 -253
- package/dist/esm/{translation-slimmer-ee0f0e76.js → translation-slimmer-77022f2e.js} +1 -1
- package/dist/esm/{type-guard-f2624334.js → type-guard-26d83e7e.js} +1 -1
- package/dist/esm/{ui-d73f756a.js → ui-80e610f4.js} +1 -1
- package/dist/esm/{valid-credit-card-number-rule-60212b1d.js → valid-credit-card-number-rule-f60b6904.js} +1 -1
- package/dist/esm/vega-accordion.entry.js +9 -9
- package/dist/esm/vega-app-footer.entry.js +5 -5
- package/dist/esm/vega-app-header-button.entry.js +9 -9
- package/dist/esm/vega-backdrop.entry.js +1 -1
- package/dist/esm/vega-banner.entry.js +4 -4
- package/dist/esm/vega-box.entry.js +8 -8
- package/dist/esm/vega-brand-logo.entry.js +2 -2
- package/dist/esm/vega-breadcrumb.entry.js +5 -5
- package/dist/esm/vega-button-circle.entry.js +10 -10
- package/dist/esm/vega-button-group_2.entry.js +18 -11
- package/dist/esm/vega-button-link.entry.js +7 -7
- package/dist/esm/vega-button.entry.js +25 -9
- package/dist/esm/vega-calendar_5.entry.js +27 -16
- package/dist/esm/vega-card.entry.js +6 -6
- package/dist/esm/vega-carousel.entry.js +7 -7
- package/dist/esm/vega-checkbox_2.entry.js +9 -9
- package/dist/esm/vega-chip.entry.js +9 -9
- package/dist/esm/vega-code-block.entry.js +15 -15
- package/dist/esm/vega-color-picker.entry.js +8 -8
- package/dist/esm/vega-color-swatch-picker.entry.js +8 -8
- package/dist/esm/vega-color-swatch.entry.js +6 -6
- package/dist/esm/vega-combo-box.entry.js +14 -14
- package/dist/esm/vega-counter-badge.entry.js +2 -2
- package/dist/esm/vega-date-picker_2.entry.js +21 -21
- package/dist/esm/vega-dialog_2.entry.js +76 -10
- package/dist/esm/vega-divider.entry.js +5 -5
- package/dist/esm/vega-dropdown_5.entry.js +123 -31
- package/dist/esm/vega-env-manager-8f8dc473.js +2 -2
- package/dist/esm/vega-field-label.entry.js +30 -37
- package/dist/esm/vega-file-uploader.entry.js +9 -9
- package/dist/esm/vega-flag-icon.entry.js +5 -5
- package/dist/esm/vega-flex.entry.js +7 -7
- package/dist/esm/vega-font.entry.js +6 -6
- package/dist/esm/vega-form.entry.js +8 -8
- package/dist/esm/vega-grid.entry.js +6 -6
- package/dist/esm/vega-icon.entry.js +7 -7
- package/dist/esm/vega-image-uploader.entry.js +12 -12
- package/dist/esm/vega-input-credit-card.entry.js +11 -11
- package/dist/esm/vega-input-numeric.entry.js +11 -11
- package/dist/esm/vega-input-passcode.entry.js +10 -10
- package/dist/esm/vega-input-phone-number.entry.js +46 -12
- package/dist/esm/vega-input-range.entry.js +9 -9
- package/dist/esm/vega-input-select.entry.js +29 -12
- package/dist/esm/vega-input.entry.js +14 -14
- package/dist/esm/vega-item-toggle.entry.js +3 -3
- package/dist/esm/vega-left-nav_5.entry.js +15 -15
- package/dist/esm/vega-loader-wrapper_2.entry.js +4 -4
- package/dist/esm/vega-page-notification_2.entry.js +3 -3
- package/dist/esm/vega-pagination-page-selector-mobile.entry.js +2 -2
- package/dist/esm/vega-pagination-page-size-selector-mobile.entry.js +4 -4
- package/dist/esm/vega-pagination.entry.js +7 -7
- package/dist/esm/vega-popover_2.entry.js +62 -13
- package/dist/esm/vega-progress-tracker_2.entry.js +9 -9
- package/dist/esm/vega-radio_2.entry.js +12 -12
- package/dist/esm/vega-rich-text-content.entry.js +48 -17
- package/dist/esm/vega-rich-text-editor_4.entry.js +774 -255
- package/dist/esm/vega-rich-text-find-replace-panel.entry.js +6 -6
- package/dist/esm/vega-rich-text-special-characters-panel.entry.js +8 -8
- package/dist/esm/vega-rich-text-table-properties_3.entry.js +160 -107
- package/dist/esm/vega-segment-control.entry.js +3 -3
- package/dist/esm/vega-selection-chip_2.entry.js +11 -11
- package/dist/esm/vega-selection-tile_2.entry.js +9 -9
- package/dist/esm/vega-sidenav_3.entry.js +9 -9
- package/dist/esm/vega-signature-capture.entry.js +12 -12
- package/dist/esm/vega-stepper.entry.js +7 -7
- package/dist/esm/vega-tab-group_2.entry.js +25 -12
- package/dist/esm/vega-table_11.entry.js +59 -23
- package/dist/esm/vega-textarea.entry.js +7 -7
- package/dist/esm/vega-time-picker_2.entry.js +15 -15
- package/dist/esm/vega-toggle-switch.entry.js +8 -8
- package/dist/esm/vega-tooltip_2.entry.js +8 -8
- package/dist/esm/vega.js +16 -16
- package/dist/esm/{wait-for-component-did-render-ff7062aa.js → wait-for-component-did-render-9b91a826.js} +1 -1
- package/dist/sri/vega-sri-manifest.json +399 -395
- package/dist/types/components/vega-button/vega-button.d.ts +2 -0
- package/dist/types/components/vega-button-group/types.d.ts +12 -6
- package/dist/types/components/vega-calendar/vega-calendar-event-preview/slimmers/renderers/vega-calendar-event-preview-detail-renderer.d.ts +2 -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.d.ts +1 -1
- package/dist/types/components/vega-field-label/slimmers/renderers/vega-field-label-label-announcement-renderer.d.ts +3 -10
- package/dist/types/components/vega-input-select/slimmers/renderers/vega-input-select-dropdown-renderer.d.ts +8 -0
- package/dist/types/components/vega-modal/slimmers/controllers/vega-modal-open-state-controller.d.ts +33 -0
- package/dist/types/components/vega-modal/types.d.ts +2 -1
- package/dist/types/components/vega-popover/slimmers/renderers/vega-popover-appender-renderer.d.ts +9 -0
- package/dist/types/components/vega-rich-text-editor/constants/constant.d.ts +22 -0
- package/dist/types/components/vega-rich-text-editor/dto/action-handle-strategies/modify-content-strategies/commit-value-strategy.d.ts +13 -0
- package/dist/types/components/vega-rich-text-editor/dto/actions/commit-value-action.d.ts +20 -0
- package/dist/types/components/vega-rich-text-editor/dto/annotations/text-style-default-styles.d.ts +1 -0
- package/dist/types/components/vega-rich-text-editor/dto/blocks/block.abstract.d.ts +15 -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/content-state.d.ts +6 -0
- package/dist/types/components/vega-rich-text-editor/dto/filter-styles-strategies/filter-styles-strategy-registry.d.ts +1 -0
- package/dist/types/components/vega-rich-text-editor/dto/filter-styles-strategies/filter-styles-strategy.abstract.d.ts +3 -2
- package/dist/types/components/vega-rich-text-editor/dto/filter-styles-strategies/text-node/title-heading-node-filter-styles-strategy.d.ts +25 -3
- package/dist/types/components/vega-rich-text-editor/dto/nodes/code-block-node.d.ts +4 -0
- package/dist/types/components/vega-rich-text-editor/dto/nodes/node.abstract.d.ts +6 -0
- 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/renderers/blocks/block-text-nodes-renderer.abstract.d.ts +7 -0
- package/dist/types/components/vega-rich-text-editor/dto/renderers/nodes/text-node-renderer.d.ts +11 -0
- package/dist/types/components/vega-rich-text-editor/extensions/base-toolbar-button-renderer.d.ts +5 -0
- package/dist/types/components/vega-rich-text-editor/extensions/block-boundary-registry.d.ts +21 -0
- package/dist/types/components/vega-rich-text-editor/extensions/extension.abstract.d.ts +15 -0
- package/dist/types/components/vega-rich-text-editor/extensions/find-replace/slimmer/renderers/find-replace-toolbar-button-renderer.d.ts +19 -0
- package/dist/types/components/vega-rich-text-editor/extensions/functions/constants.d.ts +4 -0
- package/dist/types/components/vega-rich-text-editor/extensions/functions/dto/function-block.d.ts +7 -0
- package/dist/types/components/vega-rich-text-editor/extensions/functions/dto/logic-control-node.d.ts +4 -0
- package/dist/types/components/vega-rich-text-editor/extensions/functions/element-to-dto-strategies/div-containing-function-block-strategy.d.ts +8 -0
- package/dist/types/components/vega-rich-text-editor/extensions/functions/function-extension.d.ts +6 -0
- package/dist/types/components/vega-rich-text-editor/extensions/functions/utils.d.ts +29 -0
- package/dist/types/components/vega-rich-text-editor/extensions/line-height/line-height-toolbar-button-renderer.d.ts +14 -1
- package/dist/types/components/vega-rich-text-editor/extensions/paste/action-handler-strategies/image-replace-src-strategy.d.ts +12 -0
- package/dist/types/components/vega-rich-text-editor/extensions/paste/actions/image-replace-src-action.d.ts +11 -0
- package/dist/types/components/vega-rich-text-editor/extensions/paste/parse-local-images-helper/paste-image-parser.d.ts +136 -0
- package/dist/types/components/vega-rich-text-editor/extensions/paste/parse-local-images-helper/pending-image-registry.d.ts +68 -0
- package/dist/types/components/vega-rich-text-editor/extensions/paste/paste-chooser-ui.d.ts +9 -4
- package/dist/types/components/vega-rich-text-editor/extensions/paste/paste-extension.d.ts +39 -2
- package/dist/types/components/vega-rich-text-editor/extensions/paste/strategies/default-paste-strategy.d.ts +29 -0
- package/dist/types/components/vega-rich-text-editor/extensions/paste/strategies/paste-processing-strategy.abstract.d.ts +61 -0
- package/dist/types/components/vega-rich-text-editor/extensions/paste/strategies/paste-strategy-selector.d.ts +45 -0
- package/dist/types/components/vega-rich-text-editor/extensions/paste/strategies/word-paste-strategy.d.ts +186 -0
- package/dist/types/components/vega-rich-text-editor/extensions/paste/word-paste-transformers/word-structure-code-block-transformer.d.ts +51 -0
- package/dist/types/components/vega-rich-text-editor/extensions/paste/word-paste-transformers/word-structure-image-transformer.d.ts +86 -0
- package/dist/types/components/vega-rich-text-editor/extensions/paste/word-paste-transformers/word-structure-list-transformer.d.ts +271 -0
- package/dist/types/components/vega-rich-text-editor/extensions/paste/word-paste-transformers/word-structure-paragraph-transformer.d.ts +25 -0
- package/dist/types/components/vega-rich-text-editor/extensions/paste/word-paste-transformers/word-structure-table-transformer.d.ts +240 -0
- package/dist/types/components/vega-rich-text-editor/extensions/paste/word-paste-transformers/word-structure-transformer.d.ts +36 -0
- package/dist/types/components/vega-rich-text-editor/extensions/table/dto/table-block.d.ts +8 -0
- package/dist/types/components/vega-rich-text-editor/extensions/table/renderers/table-caption-renderer.d.ts +2 -2
- package/dist/types/components/vega-rich-text-editor/extensions/table/renderers/table-dynamic-popover-renderer.d.ts +31 -1
- package/dist/types/components/vega-rich-text-editor/extensions/table/renderers/table-popover-base-renderer.d.ts +91 -0
- package/dist/types/components/vega-rich-text-editor/extensions/table/renderers/table-renderer.d.ts +46 -0
- package/dist/types/components/vega-rich-text-editor/extensions/table/renderers/table-setting-popover-renderer.d.ts +58 -0
- package/dist/types/components/vega-rich-text-editor/extensions/table/table-selection.d.ts +8 -0
- package/dist/types/components/vega-rich-text-editor/extensions/table/vega-rich-text-table-properties/slimmers/renderers/vega-rich-text-table-properties-basic-form-field-renderer.abstract.d.ts +2 -1
- package/dist/types/components/vega-rich-text-editor/extensions/table/vega-rich-text-table-properties/vega-rich-text-table-properties.d.ts +2 -0
- package/dist/types/components/vega-rich-text-editor/extensions/table/vega-rich-text-table-setting/slimmers/renderers/row-button-slimmer.d.ts +3 -0
- package/dist/types/components/vega-rich-text-editor/extensions/table/vega-rich-text-table-setting/slimmers/renderers/table-setting-button-slimmer.abstract.d.ts +3 -1
- package/dist/types/components/vega-rich-text-editor/extensions/table/vega-rich-text-table-setting/vega-rich-text-table-setting.d.ts +1 -0
- package/dist/types/components/vega-rich-text-editor/extensions/tokens/span-to-token-node-strategy.d.ts +2 -2
- package/dist/types/components/vega-rich-text-editor/extensions/tokens/token-node.d.ts +19 -1
- package/dist/types/components/vega-rich-text-editor/extensions/word-count/action-handler-interceptors/prevent-hard-limit-exceed-interceptor.d.ts +38 -0
- package/dist/types/components/vega-rich-text-editor/extensions/word-count/type.d.ts +46 -0
- package/dist/types/components/vega-rich-text-editor/extensions/word-count/word-count-extension.d.ts +38 -0
- package/dist/types/components/vega-rich-text-editor/interface.d.ts +22 -0
- package/dist/types/components/vega-rich-text-editor/public-api.d.ts +1 -0
- package/dist/types/components/vega-rich-text-editor/slimmers/controllers/helper/element-to-dto-strategy/annotation-handler/text-style-annotation-handler.d.ts +4 -1
- package/dist/types/components/vega-rich-text-editor/slimmers/controllers/helper/element-to-dto-strategy/continue-inline-to-rte-text-block-strategy.d.ts +8 -0
- package/dist/types/components/vega-rich-text-editor/slimmers/controllers/value-controller.d.ts +11 -1
- package/dist/types/components/vega-rich-text-editor/slimmers/controllers/word-count-controller.d.ts +40 -0
- package/dist/types/components/vega-rich-text-editor/slimmers/renderers/tools/link-toolbar-button-slimmer.d.ts +14 -0
- package/dist/types/components/vega-rich-text-editor/slimmers/renderers/tools/source-edit-toolbar-button-slimmer.d.ts +4 -1
- package/dist/types/components/vega-rich-text-editor/slimmers/renderers/tools/toolbar-button-slimmer.abstract.d.ts +3 -2
- package/dist/types/components/vega-rich-text-editor/slimmers/renderers/vega-rich-text-editor-renderer.d.ts +12 -0
- package/dist/types/components/vega-rich-text-editor/vega-rich-text-editor-toolbar-button/vega-rich-text-editor-toolbar-button.d.ts +2 -0
- package/dist/types/components/vega-rich-text-editor/vega-rich-text-editor.d.ts +4 -0
- package/dist/types/components/vega-rich-text-editor/vega-rich-text-link-editor/slimmers/controllers/link-editor-controller.d.ts +68 -0
- package/dist/types/components/vega-rich-text-editor/vega-rich-text-link-editor/slimmers/renderers/vega-rich-text-link-editor-renderer.d.ts +3 -0
- package/dist/types/components/vega-tab-group/slimmers/vega-tab-group/renderers/vega-tab-group-tab-list-renderer.d.ts +1 -0
- package/dist/types/components/vega-tab-group/types.d.ts +3 -1
- package/dist/types/components/vega-tab-group/vega-tab-group.d.ts +2 -0
- package/dist/types/components/vega-table/interface.d.ts +4 -4
- package/dist/types/components/vega-table/slimmers/controllers/vega-table-body-col-span-controller.d.ts +16 -0
- package/dist/types/components/vega-table/slimmers/renderers/vega-table-body-col-span-resolver.d.ts +8 -10
- package/dist/types/helpers/keyboard/keyboard-manager.d.ts +9 -0
- package/dist/types/helpers/keyboard/overlay-escape-coordination.d.ts +28 -0
- package/dist/types/helpers/slimmers/mutation-observer/aria-attributes-value-mapper.d.ts +1 -1
- package/dist/types/helpers/translation/interface.d.ts +18 -1
- package/dist/types/polyfill/libphonenumber/as-you-type.d.ts +1 -0
- package/dist/types/polyfill/libphonenumber/metadata.d.ts +10 -0
- package/dist/types/types/public-api.d.ts +2 -0
- package/dist/types/utils/accessibility.d.ts +9 -0
- package/dist/types/utils/sanitize/index.d.ts +3 -2
- package/dist/types/utils/sanitize/strategies/index.d.ts +1 -0
- package/dist/types/utils/sanitize/strategies/label-sanitize-strategy.d.ts +9 -0
- package/dist/types/utils/sanitize/strategies/plain-text-sanitize-strategy.d.ts +36 -0
- package/dist/vega/index.esm.js +1 -1
- package/dist/vega/{p-6f537797.entry.js → p-01ca92e6.entry.js} +1 -1
- package/dist/vega/{p-02d3ce79.entry.js → p-02b5d4ac.entry.js} +1 -1
- package/dist/vega/p-06a42a9f.entry.js +1 -0
- package/dist/vega/{p-fd23c365.entry.js → p-0cd362f3.entry.js} +1 -1
- package/dist/vega/p-0e10798b.entry.js +1 -0
- package/dist/vega/{p-2c2e8615.js → p-0eea1ca8.js} +1 -1
- package/dist/vega/{p-c98c2f5f.entry.js → p-0f344e02.entry.js} +1 -1
- package/dist/vega/{p-4cbfc01e.entry.js → p-23db0a92.entry.js} +1 -1
- package/dist/vega/{p-ccbe3f1b.entry.js → p-284a8828.entry.js} +1 -1
- package/dist/vega/{p-ac94ba1b.entry.js → p-2b26e182.entry.js} +1 -1
- package/dist/vega/{p-56598858.entry.js → p-2c8dc0d2.entry.js} +1 -1
- package/dist/vega/{p-2bb5a232.js → p-3091b105.js} +1 -1
- package/dist/vega/{p-9abf7d0a.entry.js → p-35d37477.entry.js} +1 -1
- package/dist/vega/{p-526e3634.js → p-36a57431.js} +1 -1
- package/dist/vega/{p-810c9c29.js → p-379736e2.js} +1 -1
- package/dist/vega/p-3abb793c.entry.js +1 -0
- package/dist/vega/{p-f29ea345.entry.js → p-3d6a43df.entry.js} +1 -1
- package/dist/vega/{p-c2277448.entry.js → p-3f2a4b34.entry.js} +1 -1
- package/dist/vega/p-401c6764.js +1 -0
- package/dist/vega/{p-da867019.entry.js → p-411cadbc.entry.js} +1 -1
- package/dist/vega/{p-ec64cc59.entry.js → p-46f22f6c.entry.js} +1 -1
- package/dist/vega/{p-8d2501b2.js → p-493108d5.js} +1 -1
- package/dist/vega/{p-085d1647.entry.js → p-49de5559.entry.js} +1 -1
- package/dist/vega/{p-781b7a54.js → p-4b35c748.js} +1 -1
- package/dist/vega/{p-a8174ad8.entry.js → p-4d1896e0.entry.js} +1 -1
- package/dist/vega/{p-b00ec194.entry.js → p-4e23e56c.entry.js} +1 -1
- package/dist/vega/{p-1cff027b.entry.js → p-5006404e.entry.js} +1 -1
- package/dist/vega/{p-56417ec5.entry.js → p-5789690b.entry.js} +1 -1
- package/dist/vega/{p-461100b8.entry.js → p-594cb986.entry.js} +1 -1
- package/dist/vega/p-5a086e93.js +1 -0
- package/dist/vega/{p-3e09aeed.js → p-5b3c8a56.js} +1 -1
- package/dist/vega/p-5b9b1631.entry.js +1 -0
- package/dist/vega/{p-c41a2d4a.js → p-5c3649f9.js} +1 -1
- package/dist/vega/{p-fb9475ab.entry.js → p-5d9be870.entry.js} +1 -1
- package/dist/vega/p-5f377954.js +1 -1
- package/dist/vega/{p-d609c3fd.js → p-60a74fb7.js} +1 -1
- package/dist/vega/{p-2acf9b42.entry.js → p-61ed7268.entry.js} +1 -1
- package/dist/vega/p-6336d446.entry.js +1 -0
- package/dist/vega/{p-dbb4b1d1.js → p-638b6a7d.js} +1 -1
- package/dist/vega/{p-bdb5180c.js → p-68744e7e.js} +1 -1
- package/dist/vega/p-6e9e7131.js +1 -0
- package/dist/vega/{p-014cd411.js → p-6eedbc4f.js} +1 -1
- package/dist/vega/{p-a090b2be.js → p-6fd8f14b.js} +1 -1
- package/dist/vega/{p-0cf3b5c1.entry.js → p-7469d0d1.entry.js} +1 -1
- package/dist/vega/p-74b20563.entry.js +1 -0
- package/dist/vega/{p-17c69503.entry.js → p-76999ea1.entry.js} +1 -1
- package/dist/vega/p-77bcdd35.js +1 -0
- package/dist/vega/{p-035e2f05.entry.js → p-79b49e8d.entry.js} +1 -1
- package/dist/vega/{p-8d96f0e8.entry.js → p-7a03ef96.entry.js} +1 -1
- package/dist/vega/{p-c5fb8a69.entry.js → p-7ae4cf82.entry.js} +1 -1
- package/dist/vega/{p-f9bfee81.entry.js → p-7cc8855d.entry.js} +1 -1
- package/dist/vega/{p-d470fce2.entry.js → p-7ddc0bec.entry.js} +1 -1
- package/dist/vega/{p-ca3c1317.entry.js → p-7e22610b.entry.js} +1 -1
- package/dist/vega/p-7f395622.entry.js +1 -0
- package/dist/vega/{p-3737b9e2.entry.js → p-816b5fd2.entry.js} +1 -1
- package/dist/vega/p-8387896e.js +1 -0
- package/dist/vega/p-844ad6aa.entry.js +1 -0
- package/dist/vega/p-853a05eb.js +1 -0
- package/dist/vega/p-85de755f.js +1 -0
- package/dist/vega/p-8663314e.js +1 -0
- package/dist/vega/{p-95c18f79.entry.js → p-86fb46d2.entry.js} +1 -1
- package/dist/vega/p-8cfdd0e8.entry.js +1 -0
- package/dist/vega/p-8ebe30a8.js +1 -0
- package/dist/vega/p-8f00dfe6.js +1 -0
- package/dist/vega/{p-66647244.js → p-8fc0a820.js} +1 -1
- package/dist/vega/{p-4fd0cf01.js → p-9034f709.js} +1 -1
- package/dist/vega/{p-456f678b.js → p-941a83db.js} +1 -1
- package/dist/vega/{p-ae2abdfa.js → p-96c090c4.js} +1 -1
- package/dist/vega/p-9ba2fdff.js +1 -0
- package/dist/vega/{p-d319ebb5.js → p-9e9f49f4.js} +1 -1
- package/dist/vega/p-9efa5d76.js +1 -0
- package/dist/vega/{p-a81ad3bd.js → p-a306bb39.js} +1 -1
- package/dist/vega/{p-db11134b.entry.js → p-a48468b5.entry.js} +1 -1
- package/dist/vega/{p-56db3323.js → p-a488447f.js} +1 -1
- package/dist/vega/p-a647c856.entry.js +1 -0
- package/dist/vega/{p-a484e32d.entry.js → p-a6a89f09.entry.js} +1 -1
- package/dist/vega/p-a92cd703.js +1 -0
- package/dist/vega/p-a93b3aed.js +1 -0
- package/dist/vega/{p-528748fa.js → p-aa135628.js} +1 -1
- package/dist/vega/{p-4bfe3258.entry.js → p-aaaf21eb.entry.js} +1 -1
- package/dist/vega/{p-36d9e782.entry.js → p-ab253867.entry.js} +1 -1
- package/dist/vega/{p-dcd3e3a7.js → p-ab9d53e9.js} +1 -1
- package/dist/vega/p-ad367b48.entry.js +1 -0
- package/dist/vega/{p-e18c0656.entry.js → p-af0cfea0.entry.js} +1 -1
- package/dist/vega/p-b07f587a.entry.js +1 -0
- package/dist/vega/p-b21cc390.entry.js +1 -0
- package/dist/vega/{p-12e8a1b2.js → p-b2a4314a.js} +1 -1
- package/dist/vega/p-b52d7724.js +3 -0
- package/dist/vega/{p-5f96e741.entry.js → p-b97ed9f7.entry.js} +1 -1
- package/dist/vega/{p-7dcd2850.entry.js → p-bc0e5598.entry.js} +1 -1
- package/dist/vega/p-bc119e75.entry.js +1 -0
- package/dist/vega/{p-0cbf09f7.entry.js → p-bedb575c.entry.js} +1 -1
- package/dist/vega/{p-cb81126a.entry.js → p-bfe5dff7.entry.js} +1 -1
- package/dist/vega/{p-52c69f9e.entry.js → p-c032f626.entry.js} +1 -1
- package/dist/vega/{p-1ea9ad9a.js → p-c34f4cbc.js} +1 -1
- package/dist/vega/{p-72ab5cd5.entry.js → p-c422ee02.entry.js} +1 -1
- package/dist/vega/{p-39c5054b.js → p-c576e846.js} +1 -1
- package/dist/vega/{p-c70748f7.entry.js → p-c7d46740.entry.js} +1 -1
- package/dist/vega/p-cc569b54.js +1 -0
- package/dist/vega/{p-4e065ef7.entry.js → p-cd04b149.entry.js} +1 -1
- package/dist/vega/{p-2a245138.entry.js → p-cd0a108b.entry.js} +1 -1
- package/dist/vega/{p-8c56d74d.entry.js → p-d1bb6e7a.entry.js} +1 -1
- package/dist/vega/{p-200c8914.entry.js → p-d340ee3d.entry.js} +1 -1
- package/dist/vega/p-d897acd5.js +1 -0
- package/dist/vega/p-debf9e06.entry.js +1 -0
- package/dist/vega/p-e0a51e49.js +1 -0
- package/dist/vega/{p-1aedbfd2.entry.js → p-e11c6ec4.entry.js} +1 -1
- package/dist/vega/{p-1e0a8fd3.js → p-e14323f3.js} +1 -1
- package/dist/vega/{p-6d4518d7.entry.js → p-e5abc288.entry.js} +1 -1
- package/dist/vega/{p-544ce391.entry.js → p-ea1a0046.entry.js} +1 -1
- package/dist/vega/{p-72fd17a1.entry.js → p-edd7aa92.entry.js} +1 -1
- package/dist/vega/p-ef1bbf14.js +1 -0
- package/dist/vega/{p-9834d5d4.entry.js → p-efc08027.entry.js} +1 -1
- package/dist/vega/{p-874e5624.js → p-f485448a.js} +1 -1
- package/dist/vega/{p-92528dc9.entry.js → p-f8b2dbb9.entry.js} +1 -1
- package/dist/vega/{p-cf4b3d40.entry.js → p-f8bf379c.entry.js} +1 -1
- package/dist/vega/{p-b98ead05.entry.js → p-f902305d.entry.js} +1 -1
- package/dist/vega/p-fe985b52.js +1 -0
- package/dist/vega/vega.esm.js +1 -1
- package/package.json +1 -1
- package/dist/collection/components/vega-dropdown/slimmers/controllers/vega-dropdown-keyboard-conttroller.js +0 -85
- package/dist/collection/components/vega-rich-text-editor/extensions/paste/paste-constants.js +0 -6
- package/dist/types/components/vega-rich-text-editor/extensions/paste/paste-constants.d.ts +0 -6
- package/dist/vega/p-03eeadc1.entry.js +0 -1
- package/dist/vega/p-0eb29065.js +0 -3
- package/dist/vega/p-10d30c03.js +0 -1
- package/dist/vega/p-1250b1ab.entry.js +0 -1
- package/dist/vega/p-1abd3c17.js +0 -1
- package/dist/vega/p-2d158cbd.js +0 -1
- package/dist/vega/p-2f07d719.entry.js +0 -1
- package/dist/vega/p-36d2df7a.entry.js +0 -1
- package/dist/vega/p-373541fa.js +0 -1
- package/dist/vega/p-3a620268.js +0 -1
- package/dist/vega/p-3d0b4074.js +0 -1
- package/dist/vega/p-56493601.js +0 -1
- package/dist/vega/p-571ec00b.js +0 -1
- package/dist/vega/p-585e4f1c.entry.js +0 -1
- package/dist/vega/p-5b1f5e4a.entry.js +0 -1
- package/dist/vega/p-6234852e.entry.js +0 -1
- package/dist/vega/p-67eaf77e.js +0 -1
- package/dist/vega/p-6c95a6a3.js +0 -1
- package/dist/vega/p-6fd4f2c6.js +0 -1
- package/dist/vega/p-7e8fdac4.js +0 -1
- package/dist/vega/p-83ad8988.js +0 -1
- package/dist/vega/p-94975537.entry.js +0 -1
- package/dist/vega/p-a91927eb.entry.js +0 -1
- package/dist/vega/p-b3733762.entry.js +0 -1
- package/dist/vega/p-b622c455.js +0 -1
- package/dist/vega/p-c6d775b8.entry.js +0 -1
- package/dist/vega/p-cd69aeae.js +0 -1
- package/dist/vega/p-cfe268a8.entry.js +0 -1
- package/dist/vega/p-daba4af1.js +0 -1
- package/dist/vega/p-de8f0d98.js +0 -1
- package/dist/vega/p-f0e828d8.js +0 -1
- package/dist/vega/p-f62c5a20.entry.js +0 -1
- package/dist/vega/p-f6c0e9e7.entry.js +0 -1
- package/dist/vega/p-fa65956c.entry.js +0 -1
- /package/dist/types/components/vega-dropdown/slimmers/controllers/{vega-dropdown-keyboard-conttroller.d.ts → vega-dropdown-keyboard-controller.d.ts} +0 -0
|
@@ -8,6 +8,7 @@ import { FindController } from '../controllers/find-controller';
|
|
|
8
8
|
import { ReplaceController } from '../controllers/replace-controller';
|
|
9
9
|
import { VegaInternalTranslation } from '../../../../../../helpers/translation/internal-translation-controller';
|
|
10
10
|
import { debounce } from '../../../../../../utils/timer';
|
|
11
|
+
import { getDeepActiveElementInShadow } from '../../../../../../utils/ui';
|
|
11
12
|
/**
|
|
12
13
|
* Toolbar button renderer for the Find & Replace extension.
|
|
13
14
|
*
|
|
@@ -60,14 +61,22 @@ export class FindReplaceToolbarButtonRenderer extends VegaRTEToolbarButtonRender
|
|
|
60
61
|
placement: 'bottom',
|
|
61
62
|
showArrow: false,
|
|
62
63
|
isScreenPosition: true,
|
|
64
|
+
role: 'presentation',
|
|
63
65
|
// eslint-disable-next-line jsdoc/require-jsdoc
|
|
64
66
|
ref: (ref) => {
|
|
65
67
|
if (ref) {
|
|
66
68
|
this.popoverRef = ref;
|
|
67
69
|
DomNodeSubjectObserverFactory.addUniqueObserverToNode(ref, VegaPopoverHide, () => {
|
|
70
|
+
const shouldRestoreFocus = this.shouldRestoreFocusToButton();
|
|
68
71
|
this.isPopoverOpen = false;
|
|
69
72
|
this.findController.clear();
|
|
70
73
|
this.updatePanel({ current: 0, total: 0 });
|
|
74
|
+
if (shouldRestoreFocus) {
|
|
75
|
+
// Defer so it runs after the popover's own focus-restore
|
|
76
|
+
// (AriaDialogFocusableTrapSlimmer), returning focus to the toolbar
|
|
77
|
+
// button for keyboard and VoiceOver users when the panel is dismissed.
|
|
78
|
+
setTimeout(() => this.focusToolbarButton());
|
|
79
|
+
}
|
|
71
80
|
});
|
|
72
81
|
DomNodeSubjectObserverFactory.addUniqueObserverToNode(ref, VegaPopoverShow, () => {
|
|
73
82
|
this.isPopoverOpen = true;
|
|
@@ -98,6 +107,7 @@ export class FindReplaceToolbarButtonRenderer extends VegaRTEToolbarButtonRender
|
|
|
98
107
|
]),
|
|
99
108
|
h('div', { slot: 'popover-content' }, this.renderButton(h, editorContext, {
|
|
100
109
|
icon: 'rte-find-replace',
|
|
110
|
+
ariaLabel: editorContext.translation.t('Find and replace'),
|
|
101
111
|
tooltip: { text: VegaInternalTranslation.t('Find and replace') },
|
|
102
112
|
})),
|
|
103
113
|
]);
|
|
@@ -200,6 +210,47 @@ export class FindReplaceToolbarButtonRenderer extends VegaRTEToolbarButtonRender
|
|
|
200
210
|
void this.popoverRef.hide();
|
|
201
211
|
}
|
|
202
212
|
}
|
|
213
|
+
/**
|
|
214
|
+
* Decides whether closing the panel should return focus to the toolbar button.
|
|
215
|
+
*
|
|
216
|
+
* Focus is restored when the panel is dismissed while focus is still inside it
|
|
217
|
+
* (Escape key or the Close button) — including the VoiceOver case where the
|
|
218
|
+
* dialog's `inert` blur has already moved focus to `<body>`. It is not restored
|
|
219
|
+
* when focus has intentionally moved to another element (Tab out of the panel
|
|
220
|
+
* or interacting with something else), so we don't yank focus back.
|
|
221
|
+
*
|
|
222
|
+
* @returns {boolean} True when focus should return to the toolbar button.
|
|
223
|
+
*/
|
|
224
|
+
shouldRestoreFocusToButton() {
|
|
225
|
+
// eslint-disable-next-line no-restricted-globals
|
|
226
|
+
const activeEl = getDeepActiveElementInShadow(document, true);
|
|
227
|
+
// eslint-disable-next-line no-restricted-globals
|
|
228
|
+
return !activeEl || activeEl === document.body || this.isElementWithinPanel(activeEl);
|
|
229
|
+
}
|
|
230
|
+
/**
|
|
231
|
+
* Checks whether an element is inside the panel, crossing shadow boundaries.
|
|
232
|
+
*
|
|
233
|
+
* @param {Nullable<HTMLElement>} el - The element to test.
|
|
234
|
+
* @returns {boolean} True when the element is contained by the panel.
|
|
235
|
+
*/
|
|
236
|
+
isElementWithinPanel(el) {
|
|
237
|
+
if (!el || !this.panelRef) {
|
|
238
|
+
return false;
|
|
239
|
+
}
|
|
240
|
+
let node = el;
|
|
241
|
+
while (node) {
|
|
242
|
+
if (node === this.panelRef) {
|
|
243
|
+
return true;
|
|
244
|
+
}
|
|
245
|
+
const parent = node.parentNode;
|
|
246
|
+
// Cross shadow boundaries: a shadow root (nodeType 11) exposes its `host`.
|
|
247
|
+
node =
|
|
248
|
+
parent && parent.nodeType === Node.DOCUMENT_FRAGMENT_NODE
|
|
249
|
+
? parent.host
|
|
250
|
+
: parent;
|
|
251
|
+
}
|
|
252
|
+
return false;
|
|
253
|
+
}
|
|
203
254
|
}
|
|
204
255
|
(() => {
|
|
205
256
|
VegaInternalIconManager.register({ 'rte-find-replace': findReplaceIcon });
|
|
@@ -26,7 +26,7 @@ export class FindReplacePanelRenderer extends VegaSlimmer {
|
|
|
26
26
|
h("div", { class: "find-replace-panel__field" },
|
|
27
27
|
h("vega-field-label", { label: VegaInternalTranslation.t('Find in text') }),
|
|
28
28
|
h("div", { class: "find-replace-panel__body" },
|
|
29
|
-
h("vega-input", { size: "small", label: "", class: "find-replace-panel__input", ref: (ref) => {
|
|
29
|
+
h("vega-input", { size: "small", label: "", "data-aria-label": VegaInternalTranslation.t('Find in text'), class: "find-replace-panel__input", ref: (ref) => {
|
|
30
30
|
if (ref) {
|
|
31
31
|
DomNodeSubjectObserverFactory.addUniqueObserverToNode(ref, VegaChange, (e) => {
|
|
32
32
|
this.onKeywordChange(e.detail);
|
|
@@ -40,7 +40,7 @@ export class FindReplacePanelRenderer extends VegaSlimmer {
|
|
|
40
40
|
h("div", { class: "find-replace-panel__field" },
|
|
41
41
|
h("vega-field-label", { label: VegaInternalTranslation.t('Replace with') }),
|
|
42
42
|
h("div", { class: "find-replace-panel__body" },
|
|
43
|
-
h("vega-input", { disabled: !hasResults, size: "small", label: "", class: "find-replace-panel__input", ref: (ref) => {
|
|
43
|
+
h("vega-input", { disabled: !hasResults, size: "small", label: "", "data-aria-label": VegaInternalTranslation.t('Replace with'), class: "find-replace-panel__input", ref: (ref) => {
|
|
44
44
|
if (ref) {
|
|
45
45
|
DomNodeSubjectObserverFactory.addUniqueObserverToNode(ref, VegaChange, (e) => {
|
|
46
46
|
this.onReplacementChange(e.detail);
|
|
@@ -30,6 +30,9 @@ export class RTEFullscreenToolbarButtonRenderer extends VegaRTEToolbarButtonRend
|
|
|
30
30
|
const selected = this.isSelected();
|
|
31
31
|
return this.renderButton(createElement, editorContext, {
|
|
32
32
|
icon: selected ? 'rte-fullscreen-exit' : 'rte-fullscreen-enter',
|
|
33
|
+
ariaLabel: selected
|
|
34
|
+
? editorContext.translation.t('Exit fullscreen mode')
|
|
35
|
+
: editorContext.translation.t('Enter fullscreen mode'),
|
|
33
36
|
tooltip: {
|
|
34
37
|
text: selected
|
|
35
38
|
? VegaInternalTranslation.t('Exit fullscreen mode')
|
|
@@ -4,6 +4,7 @@ import { generateUUID } from '../../../../../utils/misc';
|
|
|
4
4
|
import { InsertChildrenAfterAction } from '../../../dto/actions/insert-children-after-block';
|
|
5
5
|
import { AppendChildrenAction } from '../../../dto/actions/append-child-nodes-action';
|
|
6
6
|
import { RTEFunctionBlock } from '../dto/function-block';
|
|
7
|
+
import { FUNCTION_CONTENT_CLASS } from '../constants';
|
|
7
8
|
/**
|
|
8
9
|
* Strategy to handle the insertion of a function block into the rich text editor.
|
|
9
10
|
*/
|
|
@@ -46,7 +47,7 @@ export class InsertFunctionBlockStrategy extends ActionHandleStrategy {
|
|
|
46
47
|
{
|
|
47
48
|
id: `${id}-2`,
|
|
48
49
|
annotations: {
|
|
49
|
-
customClass: [
|
|
50
|
+
customClass: [FUNCTION_CONTENT_CLASS],
|
|
50
51
|
},
|
|
51
52
|
type: 'paragraph',
|
|
52
53
|
nodes: [
|
|
@@ -65,7 +66,7 @@ export class InsertFunctionBlockStrategy extends ActionHandleStrategy {
|
|
|
65
66
|
{
|
|
66
67
|
id: `${id}-4`,
|
|
67
68
|
annotations: {
|
|
68
|
-
customClass: [
|
|
69
|
+
customClass: [FUNCTION_CONTENT_CLASS],
|
|
69
70
|
},
|
|
70
71
|
type: 'paragraph',
|
|
71
72
|
nodes: [
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
export const FUNCTION_BLOCK_CLASS = 'statement';
|
|
2
|
+
export const FUNCTION_CONTENT_CLASS = 'statementelement';
|
|
3
|
+
export const FUNCTION_SYNTAX_CLASS = 'statementsyntax';
|
|
4
|
+
export const FUNCTION_ELEMENT_CLASSES = [
|
|
5
|
+
FUNCTION_BLOCK_CLASS,
|
|
6
|
+
FUNCTION_CONTENT_CLASS,
|
|
7
|
+
FUNCTION_SYNTAX_CLASS,
|
|
8
|
+
];
|
package/dist/collection/components/vega-rich-text-editor/extensions/functions/dto/function-block.js
CHANGED
|
@@ -2,6 +2,8 @@ import { generateUUID } from '../../../../../utils/misc';
|
|
|
2
2
|
import { RTEAnnotationStyle } from '../../../dto/annotations/annotation-style';
|
|
3
3
|
import { RTEBlock } from '../../../dto/blocks/block.abstract';
|
|
4
4
|
import { RTETextBlock } from '../../../dto/blocks/text-block';
|
|
5
|
+
import { FUNCTION_BLOCK_CLASS, FUNCTION_CONTENT_CLASS } from '../constants';
|
|
6
|
+
import { RTE_BLOCK_BOUNDARY_ATTRIBUTE } from '../../../constants/constant';
|
|
5
7
|
/**
|
|
6
8
|
* RTE Function Block
|
|
7
9
|
*/
|
|
@@ -21,7 +23,7 @@ export class RTEFunctionBlock extends RTEBlock {
|
|
|
21
23
|
*/
|
|
22
24
|
static from(block, options) {
|
|
23
25
|
const functionBlock = new RTEFunctionBlock(block.id);
|
|
24
|
-
const defaultAnnotation = { customClass: [
|
|
26
|
+
const defaultAnnotation = { customClass: [FUNCTION_BLOCK_CLASS] };
|
|
25
27
|
let { annotations } = block;
|
|
26
28
|
annotations = annotations
|
|
27
29
|
? Object.assign(Object.assign({}, annotations), defaultAnnotation) : defaultAnnotation;
|
|
@@ -39,14 +41,14 @@ export class RTEFunctionBlock extends RTEBlock {
|
|
|
39
41
|
.map((child) => {
|
|
40
42
|
if (child instanceof RTETextBlock) {
|
|
41
43
|
const attrStr = this.getFunctionContentStyle(child);
|
|
42
|
-
return `<div class="
|
|
44
|
+
return `<div class="${FUNCTION_CONTENT_CLASS}"${attrStr}>${child.getChildrenHtml()}</div>`;
|
|
43
45
|
}
|
|
44
46
|
else {
|
|
45
47
|
return child.toHtml();
|
|
46
48
|
}
|
|
47
49
|
})
|
|
48
50
|
.join('');
|
|
49
|
-
return `<div class="
|
|
51
|
+
return `<div class="${FUNCTION_BLOCK_CLASS}" ${RTE_BLOCK_BOUNDARY_ATTRIBUTE}>${childrenHtml}</div>`;
|
|
50
52
|
}
|
|
51
53
|
/**
|
|
52
54
|
* @inheritDoc
|
|
@@ -67,6 +69,15 @@ export class RTEFunctionBlock extends RTEBlock {
|
|
|
67
69
|
getLastNode() {
|
|
68
70
|
return this.children[this.children.length - 1].getLastNode();
|
|
69
71
|
}
|
|
72
|
+
/**
|
|
73
|
+
* The function block is an atomic caret boundary: descending would resolve the caret onto a
|
|
74
|
+
* `contenteditable="false"` logic-control node instead of staying anchored to the block.
|
|
75
|
+
*
|
|
76
|
+
* @inheritDoc
|
|
77
|
+
*/
|
|
78
|
+
allowsCaretDescend() {
|
|
79
|
+
return false;
|
|
80
|
+
}
|
|
70
81
|
/**
|
|
71
82
|
* @inheritDoc
|
|
72
83
|
*/
|
|
@@ -1,4 +1,5 @@
|
|
|
1
1
|
import { RTEBlock } from '../../../dto/blocks/block.abstract';
|
|
2
|
+
import { FUNCTION_SYNTAX_CLASS } from '../constants';
|
|
2
3
|
import { RTELogicControlNode } from '../dto/logic-control-node';
|
|
3
4
|
/**
|
|
4
5
|
* Class representing a logic control block in the rich text editor.
|
|
@@ -48,7 +49,7 @@ export class RTELogicControlBlock extends RTEBlock {
|
|
|
48
49
|
* @returns {string} - The HTML string of the logic control block.
|
|
49
50
|
*/
|
|
50
51
|
toHtml() {
|
|
51
|
-
return `<div class='
|
|
52
|
+
return `<div class='${FUNCTION_SYNTAX_CLASS}' contenteditable='false'>${this.statementText}</div>`;
|
|
52
53
|
}
|
|
53
54
|
/**
|
|
54
55
|
* Clone the current block instance.
|
|
@@ -0,0 +1,19 @@
|
|
|
1
|
+
import { HtmlBlockStrategy } from '../../../slimmers/controllers/helper/element-to-dto-strategy/html-block-strategy';
|
|
2
|
+
import { FUNCTION_BLOCK_CLASS } from '../constants';
|
|
3
|
+
import { RTE_BLOCK_BOUNDARY_ATTRIBUTE } from '../../../constants/constant';
|
|
4
|
+
import { isFunctionBlockElement } from '../utils';
|
|
5
|
+
/** Preserve a div that contains a function block during auto-formatting. */
|
|
6
|
+
export class FunctionBlockContainerStrategy extends HtmlBlockStrategy {
|
|
7
|
+
/**
|
|
8
|
+
* @inheritDoc
|
|
9
|
+
*/
|
|
10
|
+
canHandle(elementsArray, currentIndex) {
|
|
11
|
+
const element = elementsArray[currentIndex];
|
|
12
|
+
if (element.nodeType !== Node.ELEMENT_NODE)
|
|
13
|
+
return 0;
|
|
14
|
+
const containsFunctionBlock = !!element.querySelector(`[${RTE_BLOCK_BOUNDARY_ATTRIBUTE}], .${FUNCTION_BLOCK_CLASS}`);
|
|
15
|
+
return element.nodeName === 'DIV' && !isFunctionBlockElement(element) && containsFunctionBlock
|
|
16
|
+
? 1
|
|
17
|
+
: 0;
|
|
18
|
+
}
|
|
19
|
+
}
|
|
@@ -1,6 +1,8 @@
|
|
|
1
1
|
import { generateUUID } from '../../../../../utils/misc';
|
|
2
2
|
import { ElementToDTOStrategy } from '../../../slimmers/controllers/helper/element-to-dto-strategy/element-to-dto-strategy.abstract';
|
|
3
3
|
import { RTEFunctionBlock } from '../dto/function-block';
|
|
4
|
+
import { FUNCTION_BLOCK_CLASS, FUNCTION_SYNTAX_CLASS } from '../constants';
|
|
5
|
+
import { isFunctionBoundaryContainer } from '../utils';
|
|
4
6
|
/**
|
|
5
7
|
* Strategy to convert a div with class 'statement' into an function block.
|
|
6
8
|
*/
|
|
@@ -10,11 +12,13 @@ export class DivToFunctionBlockStrategy extends ElementToDTOStrategy {
|
|
|
10
12
|
*/
|
|
11
13
|
canHandle(elementsArray, currentIndex) {
|
|
12
14
|
const element = elementsArray[currentIndex];
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
15
|
+
if (element.nodeType !== Node.ELEMENT_NODE)
|
|
16
|
+
return 0;
|
|
17
|
+
const isFunctionBoundary = isFunctionBoundaryContainer(element);
|
|
18
|
+
return element.tagName === 'DIV' &&
|
|
19
|
+
isFunctionBoundary &&
|
|
16
20
|
element.childNodes.length &&
|
|
17
|
-
element.querySelector(
|
|
21
|
+
element.querySelector(`.${FUNCTION_SYNTAX_CLASS}`)
|
|
18
22
|
? 1
|
|
19
23
|
: 0;
|
|
20
24
|
}
|
|
@@ -26,7 +30,7 @@ export class DivToFunctionBlockStrategy extends ElementToDTOStrategy {
|
|
|
26
30
|
id: generateUUID(),
|
|
27
31
|
type: 'function-block',
|
|
28
32
|
annotations: {
|
|
29
|
-
customClass: [
|
|
33
|
+
customClass: [FUNCTION_BLOCK_CLASS],
|
|
30
34
|
},
|
|
31
35
|
children: [],
|
|
32
36
|
});
|
|
@@ -2,13 +2,14 @@ import { generateUUID } from '../../../../../utils/misc';
|
|
|
2
2
|
import { RTETextBlock } from '../../../dto/blocks/text-block';
|
|
3
3
|
import htmlElementToAnnotationGenerator from '../../../slimmers/controllers/helper/element-to-dto-strategy/annotation-handler/html-element-to-annotation-generator';
|
|
4
4
|
import { DivToLogicControlBlockStrategy } from './div-to-logic-control-block-strategy';
|
|
5
|
+
import { FUNCTION_CONTENT_CLASS } from '../constants';
|
|
5
6
|
/**
|
|
6
7
|
* Strategy to convert a div with class 'statementelement' into an function block.
|
|
7
8
|
*/
|
|
8
9
|
export class DivToFunctionContentStrategy extends DivToLogicControlBlockStrategy {
|
|
9
10
|
constructor() {
|
|
10
11
|
super(...arguments);
|
|
11
|
-
this.blockClassName =
|
|
12
|
+
this.blockClassName = FUNCTION_CONTENT_CLASS;
|
|
12
13
|
}
|
|
13
14
|
/**
|
|
14
15
|
* @inheritDoc
|
|
@@ -16,12 +17,11 @@ export class DivToFunctionContentStrategy extends DivToLogicControlBlockStrategy
|
|
|
16
17
|
handle(elementsArray, options) {
|
|
17
18
|
const element = elementsArray[0];
|
|
18
19
|
const annotations = htmlElementToAnnotationGenerator.generate(RTETextBlock, element);
|
|
19
|
-
const nodes = Array.from(elementsArray[0].childNodes);
|
|
20
20
|
return RTETextBlock.from({
|
|
21
21
|
id: generateUUID(),
|
|
22
22
|
type: 'paragraph',
|
|
23
23
|
annotations: Object.assign({ customClass: [this.blockClassName] }, annotations),
|
|
24
|
-
nodes: this.generateChildNodes(
|
|
24
|
+
nodes: this.generateChildNodes(Array.from(elementsArray[0].childNodes), undefined, options),
|
|
25
25
|
});
|
|
26
26
|
}
|
|
27
27
|
}
|
|
@@ -1,13 +1,15 @@
|
|
|
1
1
|
import { generateUUID } from '../../../../../utils/misc';
|
|
2
2
|
import { RTELogicControlBlock } from '../dto/logic-control-block';
|
|
3
3
|
import { BlockToRTEBlockStrategyAbstract } from '../../../slimmers/controllers/helper/element-to-dto-strategy/block-to-rte-block-strategy.abstract';
|
|
4
|
+
import { FUNCTION_SYNTAX_CLASS } from '../constants';
|
|
5
|
+
import { isFunctionBoundaryContainer } from '../utils';
|
|
4
6
|
/**
|
|
5
7
|
* Strategy to convert a div with class 'statementsyntax' into an RTELogicControlBlock DTO.
|
|
6
8
|
*/
|
|
7
9
|
export class DivToLogicControlBlockStrategy extends BlockToRTEBlockStrategyAbstract {
|
|
8
10
|
constructor() {
|
|
9
11
|
super(...arguments);
|
|
10
|
-
this.blockClassName =
|
|
12
|
+
this.blockClassName = FUNCTION_SYNTAX_CLASS;
|
|
11
13
|
}
|
|
12
14
|
/**
|
|
13
15
|
* @inheritDoc
|
|
@@ -50,6 +52,6 @@ export class DivToLogicControlBlockStrategy extends BlockToRTEBlockStrategyAbstr
|
|
|
50
52
|
* @returns {boolean} True if the element is a child of a function block, false otherwise
|
|
51
53
|
*/
|
|
52
54
|
isFunctionBlockChild(element) {
|
|
53
|
-
return !!(element.parentElement && element.parentElement
|
|
55
|
+
return !!(element.parentElement && isFunctionBoundaryContainer(element.parentElement));
|
|
54
56
|
}
|
|
55
57
|
}
|
package/dist/collection/components/vega-rich-text-editor/extensions/functions/function-extension.js
CHANGED
|
@@ -10,6 +10,7 @@ import { RTELogicControlBlockRenderer } from './renderers/logic-control-block-re
|
|
|
10
10
|
import { DivToLogicControlBlockStrategy } from './element-to-dto-strategies/div-to-logic-control-block-strategy';
|
|
11
11
|
import { DivToFunctionBlockStrategy } from './element-to-dto-strategies/div-to-function-block-strategy';
|
|
12
12
|
import { DivToFunctionContentStrategy } from './element-to-dto-strategies/div-to-function-content-strategy';
|
|
13
|
+
import { FunctionBlockContainerStrategy } from './element-to-dto-strategies/div-containing-function-block-strategy';
|
|
13
14
|
import { RTEFunctionBlock } from './dto/function-block';
|
|
14
15
|
import { RTEFunctionBlockRenderer } from './renderers/function-block-renderer';
|
|
15
16
|
import { ModifyContentActionType } from '../../dto/actions/modify-content-action.abstract';
|
|
@@ -18,15 +19,18 @@ import { FunctionBlockInsertParagraphStrategy } from './action-handler-strategie
|
|
|
18
19
|
import { PreventPasteContentInterceptor } from './action-handler-interceptor/prevent-paste-content-interceptor';
|
|
19
20
|
import { PASTE_PLAIN_TEXT } from './actions/paste-plain-text-action';
|
|
20
21
|
import { PastePlainTextStrategy } from './action-handler-strategies/paste-plain-text-strategy';
|
|
22
|
+
import { isFunctionBlockElement } from './utils';
|
|
21
23
|
const convertLogicControlBlockStrategy = new DivToLogicControlBlockStrategy();
|
|
22
24
|
const convertFunctionContentStrategy = new DivToFunctionContentStrategy();
|
|
23
25
|
const convertFunctionBlockStrategy = new DivToFunctionBlockStrategy();
|
|
26
|
+
const convertFunctionBlockContainerStrategy = new FunctionBlockContainerStrategy();
|
|
24
27
|
/**
|
|
25
28
|
* Function extension class for Vega Rich Text Editor.
|
|
26
29
|
*/
|
|
27
30
|
export class VegaRTEFunctionExtension extends VegaRTEExtension {
|
|
28
31
|
constructor() {
|
|
29
32
|
super();
|
|
33
|
+
this.unregisterBlockBoundaryPredicate = null;
|
|
30
34
|
this.registerBlockBasicStrategies(RTELogicControlBlock.name);
|
|
31
35
|
this.registerBlockBasicStrategies(RTEFunctionBlock.name);
|
|
32
36
|
this.preventFunctionBlockDefaultInsertNewParagraph();
|
|
@@ -37,11 +41,25 @@ export class VegaRTEFunctionExtension extends VegaRTEExtension {
|
|
|
37
41
|
this.registerElementToBlockDTOClassStrategy(convertLogicControlBlockStrategy);
|
|
38
42
|
this.registerElementToBlockDTOClassStrategy(convertFunctionContentStrategy);
|
|
39
43
|
this.registerElementToBlockDTOClassStrategy(convertFunctionBlockStrategy);
|
|
44
|
+
this.registerElementToBlockDTOClassStrategy(convertFunctionBlockContainerStrategy);
|
|
40
45
|
}
|
|
41
46
|
/** @inheritDoc */
|
|
42
47
|
prepareBeforeLoad(host) {
|
|
43
48
|
this.registerToolbarButtonRenderer(VegaRTEFunctionExtension.TOOLBAR_BUTTON_KEY, new FunctionToolbarButtonRenderer(), host);
|
|
44
49
|
}
|
|
50
|
+
/** @inheritDoc */
|
|
51
|
+
initialExtensionAfterLoad(context) {
|
|
52
|
+
var _a;
|
|
53
|
+
super.initialExtensionAfterLoad(context);
|
|
54
|
+
(_a = this.unregisterBlockBoundaryPredicate) === null || _a === void 0 ? void 0 : _a.call(this);
|
|
55
|
+
this.unregisterBlockBoundaryPredicate = this.registerBlockBoundaryPredicate(isFunctionBlockElement);
|
|
56
|
+
}
|
|
57
|
+
/** @inheritDoc */
|
|
58
|
+
destroyExtension() {
|
|
59
|
+
var _a;
|
|
60
|
+
(_a = this.unregisterBlockBoundaryPredicate) === null || _a === void 0 ? void 0 : _a.call(this);
|
|
61
|
+
this.unregisterBlockBoundaryPredicate = null;
|
|
62
|
+
}
|
|
45
63
|
/**
|
|
46
64
|
* Remove the appen children strategies to prevent default insert new paragraph logic in function block
|
|
47
65
|
*/
|
|
@@ -1,4 +1,6 @@
|
|
|
1
1
|
import { VegaRTEExtensionRenderer } from '../../base-extension-renderer';
|
|
2
|
+
import { FUNCTION_BLOCK_CLASS } from '../constants';
|
|
3
|
+
import { RTE_BLOCK_BOUNDARY_ATTRIBUTE } from '../../../constants/constant';
|
|
2
4
|
import styles from './function-block-styles.css';
|
|
3
5
|
/**
|
|
4
6
|
* Renderer for Function Block
|
|
@@ -11,6 +13,7 @@ export class RTEFunctionBlockRenderer extends VegaRTEExtensionRenderer {
|
|
|
11
13
|
return createElement('div', {
|
|
12
14
|
key: renderData.id,
|
|
13
15
|
class: this.getElementClassName(renderData),
|
|
16
|
+
[RTE_BLOCK_BOUNDARY_ATTRIBUTE]: '',
|
|
14
17
|
ref: this.useRef(renderData),
|
|
15
18
|
});
|
|
16
19
|
}
|
|
@@ -30,8 +33,8 @@ export class RTEFunctionBlockRenderer extends VegaRTEExtensionRenderer {
|
|
|
30
33
|
*/
|
|
31
34
|
getElementClassName(block) {
|
|
32
35
|
let classes = block.getClasses();
|
|
33
|
-
if (classes.indexOf(
|
|
34
|
-
classes = '
|
|
36
|
+
if (classes.indexOf(FUNCTION_BLOCK_CLASS) < 0) {
|
|
37
|
+
classes = FUNCTION_BLOCK_CLASS + ' ' + classes;
|
|
35
38
|
}
|
|
36
39
|
return classes.trim();
|
|
37
40
|
}
|
|
@@ -13,6 +13,7 @@ export class FunctionToolbarButtonRenderer extends VegaRTEToolbarButtonRenderer
|
|
|
13
13
|
return this.renderDropdown(h, editorContext, {}, [
|
|
14
14
|
this.renderButton(h, editorContext, {
|
|
15
15
|
label: 'Functions',
|
|
16
|
+
ariaLabel: 'Functions',
|
|
16
17
|
showArrowIcon: true,
|
|
17
18
|
tooltip: { text: 'Insert function' },
|
|
18
19
|
}),
|
|
@@ -1,4 +1,5 @@
|
|
|
1
1
|
import { VegaRTEExtensionRenderer } from '../../base-extension-renderer';
|
|
2
|
+
import { FUNCTION_SYNTAX_CLASS } from '../constants';
|
|
2
3
|
/**
|
|
3
4
|
* Renders a logic control block in the rich text editor.
|
|
4
5
|
*/
|
|
@@ -9,7 +10,7 @@ export class RTELogicControlBlockRenderer extends VegaRTEExtensionRenderer {
|
|
|
9
10
|
doRender(h, renderData) {
|
|
10
11
|
return h('div', {
|
|
11
12
|
key: renderData.id,
|
|
12
|
-
class:
|
|
13
|
+
class: FUNCTION_SYNTAX_CLASS,
|
|
13
14
|
ref: this.useRef(renderData),
|
|
14
15
|
}, h('span', {
|
|
15
16
|
key: `${renderData.id}-1`,
|
|
@@ -0,0 +1,36 @@
|
|
|
1
|
+
import { RTE_BLOCK_BOUNDARY_ATTRIBUTE } from '../../constants/constant';
|
|
2
|
+
import { FUNCTION_BLOCK_CLASS, FUNCTION_ELEMENT_CLASSES } from './constants';
|
|
3
|
+
/**
|
|
4
|
+
* Returns true when the element belongs to function extension blocks by semantic
|
|
5
|
+
* boundary attribute or known function element classes.
|
|
6
|
+
*
|
|
7
|
+
* Use this helper for broad detection (e.g., extension-level boundary predicate
|
|
8
|
+
* registration) where both container and child function elements should be
|
|
9
|
+
* treated as part of the function block structure.
|
|
10
|
+
*
|
|
11
|
+
* @param {HTMLElement} element - Element to inspect.
|
|
12
|
+
* @returns {boolean} Whether the element belongs to a function block structure.
|
|
13
|
+
* @example
|
|
14
|
+
* this.registerBlockBoundaryPredicate(isFunctionBlockElement);
|
|
15
|
+
*/
|
|
16
|
+
export const isFunctionBlockElement = (element) => {
|
|
17
|
+
return (element.hasAttribute(RTE_BLOCK_BOUNDARY_ATTRIBUTE) ||
|
|
18
|
+
FUNCTION_ELEMENT_CLASSES.some((functionClass) => element.classList.contains(functionClass)));
|
|
19
|
+
};
|
|
20
|
+
/**
|
|
21
|
+
* Returns true when the element is a function block boundary container.
|
|
22
|
+
*
|
|
23
|
+
* Use this helper when conversion logic must identify only the function block
|
|
24
|
+
* container element (the DIV that maps to RTEFunctionBlock), not function child
|
|
25
|
+
* elements such as syntax/content nodes.
|
|
26
|
+
*
|
|
27
|
+
* @param {HTMLElement} element - Element to inspect.
|
|
28
|
+
* @returns {boolean} Whether the element is a function block boundary container.
|
|
29
|
+
* @example
|
|
30
|
+
* if (isFunctionBoundaryContainer(element)) {
|
|
31
|
+
* // map the DIV to RTEFunctionBlock
|
|
32
|
+
* }
|
|
33
|
+
*/
|
|
34
|
+
export const isFunctionBoundaryContainer = (element) => {
|
|
35
|
+
return (element.hasAttribute(RTE_BLOCK_BOUNDARY_ATTRIBUTE) || element.classList.contains(FUNCTION_BLOCK_CLASS));
|
|
36
|
+
};
|
|
@@ -19,6 +19,7 @@ export class RTEHorizontalLineToolbarButtonRenderer extends VegaRTEToolbarButton
|
|
|
19
19
|
render(createElement, editorContext) {
|
|
20
20
|
return this.renderButton(createElement, editorContext, {
|
|
21
21
|
icon: 'horizontal-line',
|
|
22
|
+
ariaLabel: VegaInternalTranslation.t('Horizontal line'),
|
|
22
23
|
tooltip: { text: VegaInternalTranslation.t('Horizontal line') },
|
|
23
24
|
});
|
|
24
25
|
}
|
package/dist/collection/components/vega-rich-text-editor/extensions/languages/language-extension.js
CHANGED
|
@@ -130,6 +130,7 @@ export class VegaRTELanguageExtension extends VegaRTEExtension {
|
|
|
130
130
|
options = {
|
|
131
131
|
autoMatchFormat: (_a = host.sourceEditConfig.autoMatchFormat) !== null && _a !== void 0 ? _a : true,
|
|
132
132
|
filterInlineStyles: host.sourceEditConfig.filterInlineStyles,
|
|
133
|
+
blockBoundaryRegistry: this.extensionContext.blockBoundaryRegistry,
|
|
133
134
|
};
|
|
134
135
|
}
|
|
135
136
|
result = VegaRTEContent.fromHtml(codeBlock.value.code, options);
|
|
@@ -59,6 +59,7 @@ export class RTELanguageToolbarButtonRenderer extends VegaRTEToolbarButtonRender
|
|
|
59
59
|
return this.renderDropdown(createElement, editorContext, { source: translatedSource }, [
|
|
60
60
|
this.renderButton(createElement, editorContext, {
|
|
61
61
|
label: this.getLanguageLabelByKey(this.selectedLanguage),
|
|
62
|
+
ariaLabel: 'Language',
|
|
62
63
|
showArrowIcon: true,
|
|
63
64
|
tooltip: { text: 'Select language' },
|
|
64
65
|
}),
|
|
@@ -74,10 +75,11 @@ export class RTELanguageToolbarButtonRenderer extends VegaRTEToolbarButtonRender
|
|
|
74
75
|
this.translation = editorContext.translation;
|
|
75
76
|
const isDisabled = this.isDisabled(editorContext);
|
|
76
77
|
return h('vega-font', {
|
|
77
|
-
variant: 'font-field-label-sm',
|
|
78
|
-
color: isDisabled ? 'text-disabled' : 'text-primary',
|
|
78
|
+
'variant': 'font-field-label-sm',
|
|
79
|
+
'color': isDisabled ? 'text-disabled' : 'text-primary',
|
|
80
|
+
'aria-hidden': 'true',
|
|
79
81
|
// eslint-disable-next-line jsdoc/require-jsdoc
|
|
80
|
-
ref: (el) => {
|
|
82
|
+
'ref': (el) => {
|
|
81
83
|
this.labelRef = el;
|
|
82
84
|
},
|
|
83
85
|
}, editorContext.translation.t(label));
|
|
@@ -34,12 +34,28 @@ export class RTELineHeightToolbarButtonRenderer extends VegaRTEToolbarButtonRend
|
|
|
34
34
|
}, [
|
|
35
35
|
this.renderButton(createElement, editorContext, {
|
|
36
36
|
icon: 'line-height',
|
|
37
|
+
ariaLabel: editorContext.translation.t('Line Height'),
|
|
37
38
|
showArrowIcon: true,
|
|
38
39
|
tooltip: { text: VegaInternalTranslation.t('Line Height') },
|
|
39
40
|
}),
|
|
40
41
|
this.renderDropdownListTemplate(createElement, dropdownItems, editorContext),
|
|
41
42
|
]);
|
|
42
43
|
}
|
|
44
|
+
/**
|
|
45
|
+
* Renders each line-height option with its label as light-DOM children rather than the
|
|
46
|
+
* `label` prop. This gives the focusable menuitem a light-DOM text anchor so Safari
|
|
47
|
+
* VoiceOver's reading cursor follows focus into the item (Ctrl+Opt+Right walks item→item
|
|
48
|
+
* instead of escaping to the next toolbar button).
|
|
49
|
+
*
|
|
50
|
+
* The label is wrapped in a `<span>` (not a bare text node) so a click targeting the label
|
|
51
|
+
* lands on a slotted element that composes into the item's shadow `<li>`; a bare text node
|
|
52
|
+
* resolves to the `vega-dropdown-item` host, whose click never reaches the shadow handler.
|
|
53
|
+
*
|
|
54
|
+
* @inheritDoc
|
|
55
|
+
*/
|
|
56
|
+
renderDropdownItem(h, item, editorContext) {
|
|
57
|
+
return h('vega-dropdown-item', { key: item.key, itemKey: item.key, prefixIcon: item.icon }, h('span', undefined, editorContext.translation.t(item.label)));
|
|
58
|
+
}
|
|
43
59
|
/**
|
|
44
60
|
* @inheritDoc
|
|
45
61
|
*/
|
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
import { ActionHandleStrategy } from '../../../dto/action-handle-strategies/action-handle-strategy.abstract';
|
|
2
|
+
import { PasteImageParser } from '../parse-local-images-helper/paste-image-parser';
|
|
3
|
+
/**
|
|
4
|
+
* Strategy to handle the `ImageReplaceSrcAction` for replacing the `src` attribute of an `<img>` element in the RTE content.
|
|
5
|
+
*/
|
|
6
|
+
export class ImageReplaceSrcStrategy extends ActionHandleStrategy {
|
|
7
|
+
/**
|
|
8
|
+
* @inheritDoc
|
|
9
|
+
*/
|
|
10
|
+
handleAction(action, target) {
|
|
11
|
+
const { img, url } = action;
|
|
12
|
+
img.setAttribute('src', url);
|
|
13
|
+
img.removeAttribute(PasteImageParser.PREVIEW_IMG_KEY);
|
|
14
|
+
target.url = url;
|
|
15
|
+
if (target.annotationMap && target.annotationMap.has('CUSTOM_ATTRIBUTE')) {
|
|
16
|
+
const customAttributeAnnotation = target.annotationMap.get('CUSTOM_ATTRIBUTE');
|
|
17
|
+
customAttributeAnnotation.customAttribute.src = url;
|
|
18
|
+
delete customAttributeAnnotation.customAttribute[PasteImageParser.PREVIEW_IMG_KEY];
|
|
19
|
+
}
|
|
20
|
+
}
|
|
21
|
+
}
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
import { ModifyContentAction } from '../../../dto/actions/modify-content-action.abstract';
|
|
2
|
+
export const REPLACE_IMAGE_SRC = 'REPLACE_IMAGE_SRC';
|
|
3
|
+
/**
|
|
4
|
+
* Action to replace the `src` attribute of an `<img>` element in the RTE content.
|
|
5
|
+
*/
|
|
6
|
+
export class ImageReplaceSrcAction extends ModifyContentAction {
|
|
7
|
+
constructor(imageElement, url) {
|
|
8
|
+
super();
|
|
9
|
+
this.type = REPLACE_IMAGE_SRC;
|
|
10
|
+
this.img = imageElement;
|
|
11
|
+
this.url = url;
|
|
12
|
+
}
|
|
13
|
+
}
|