@heartlandone/vega 2.88.0 → 2.90.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/{action-color-accessibility-validator-15fa91e4.js → action-color-accessibility-validator-24498816.js} +2 -2
- package/dist/cjs/{app-globals-6fbbcb2f.js → app-globals-08924736.js} +11 -8
- package/dist/cjs/{aria-dialog-focusable-trap-slimmer-c2ca46db.js → aria-dialog-focusable-trap-slimmer-a0ff1263.js} +2 -2
- package/dist/cjs/{brand-switch-state-controller-slimmer-3d41b2a4.js → brand-switch-state-controller-slimmer-97882447.js} +1 -1
- package/dist/cjs/{child-nodes-event-prevent-slimmer-01930b4e.js → child-nodes-event-prevent-slimmer-85a7fdb0.js} +1 -1
- package/dist/cjs/{child-nodes-notify-observer-slimmer-34a606b3.js → child-nodes-notify-observer-slimmer-7ae2a78f.js} +1 -1
- package/dist/cjs/{code-block-00fee034.js → code-block-89850671.js} +4 -4
- package/dist/cjs/{component-value-history-controller-slimmer.abstract-066645b3.js → component-value-history-controller-slimmer.abstract-a8da4087.js} +5 -5
- package/dist/cjs/{content-state-d4f54659.js → content-state-e1c3efe6.js} +32 -7
- package/dist/cjs/{dark-mode-state-controller-slimmer-8a87ec08.js → dark-mode-state-controller-slimmer-b454645a.js} +1 -1
- package/dist/cjs/{dark-mode-style-controller-ed481250.js → dark-mode-style-controller-32d4054a.js} +2 -2
- package/dist/cjs/{date-required-rule-4cea8fc8.js → date-required-rule-3437acbc.js} +1 -1
- package/dist/cjs/{design-token-ad9f413c.js → design-token-939bf72c.js} +3 -3
- package/dist/cjs/{dom-node-subject-observer-factory-ba6a95f3.js → dom-node-subject-observer-factory-c82df135.js} +1 -1
- package/dist/cjs/{element-appender-slimmer-d04aa177.js → element-appender-slimmer-14e85a91.js} +5 -5
- package/dist/cjs/{event-emit-slimmer-5fd6e54a.js → event-emit-slimmer-146316b2.js} +2 -2
- package/dist/cjs/{form-field-controller-slimmer-23d112bd.js → form-field-controller-slimmer-c4ebee27.js} +5 -5
- package/dist/cjs/{image-annotation-action-bcf2a1b4.js → image-annotation-action-f86690fd.js} +29 -5
- package/dist/cjs/index.cjs.js +26 -25
- package/dist/cjs/{inject-keyboard-manager-acaf1530.js → inject-keyboard-manager-743de047.js} +1 -1
- package/dist/cjs/{internal-translation-controller-a1250419.js → internal-translation-controller-9785d4e8.js} +9 -2
- package/dist/cjs/{internal-vega-event-manager-c515cf5e.js → internal-vega-event-manager-6e49d1ca.js} +3 -3
- package/dist/cjs/{keyboard-manager-6821709a.js → keyboard-manager-5396083a.js} +2 -2
- package/dist/cjs/{keyboard-manager-slimmer-74528545.js → keyboard-manager-slimmer-eedcfbc8.js} +1 -1
- package/dist/cjs/link-extension-dafeeed0.js +583 -0
- package/dist/cjs/loader.cjs.js +17 -18
- package/dist/cjs/{month-view-generator-61578283.js → month-view-generator-c7492e06.js} +1 -1
- package/dist/cjs/{public-rules-d2fbbbf5.js → public-rules-b032050f.js} +11 -11
- package/dist/cjs/{range-e797475c.js → range-efdf6f78.js} +2 -2
- package/dist/cjs/{replace-selected-text-action-a098523f.js → replace-selected-text-action-0f7b7c78.js} +1 -1
- package/dist/cjs/{responsive-format-facade-bf330592.js → responsive-format-facade-d112aa9f.js} +1 -1
- package/dist/cjs/{rich-text-editor-required-rule-ba9d42fa.js → rich-text-editor-required-rule-86d9cd4d.js} +1 -1
- package/dist/cjs/{split-cell-operation-91ee6894.js → split-cell-operation-b41344bd.js} +5 -5
- package/dist/cjs/{state-border-formatter-fd194e53.js → state-border-formatter-c3c9b90d.js} +1 -1
- package/dist/cjs/{static-subject-title-5829a298.js → static-subject-title-70c73b16.js} +2 -0
- package/dist/cjs/{string-format-strategy.abstract-af9fc35e.js → string-format-strategy.abstract-d51050cd.js} +1 -1
- package/dist/cjs/{string-input-formatter-slimmer-a3fb1292.js → string-input-formatter-slimmer-23fdb50e.js} +3 -3
- package/dist/cjs/{string-mask-strategy-2054f3fb.js → string-mask-strategy-10fe0f6d.js} +2 -2
- package/dist/cjs/{style-formatter-7d60fb70.js → style-formatter-11c95331.js} +2 -2
- package/dist/cjs/{sub-state-notify-slimmer-757e3a76.js → sub-state-notify-slimmer-450277b6.js} +1 -1
- package/dist/cjs/{sub-state-observer-slimmer-aa93ab4f.js → sub-state-observer-slimmer-5bfe8e97.js} +2 -2
- package/dist/cjs/{time-required-rule-ba450bbd.js → time-required-rule-2fd7c828.js} +1 -1
- package/dist/cjs/{token-extension-8b69f7e1.js → token-extension-2e3e1631.js} +637 -497
- package/dist/cjs/{translation-slimmer-aee3fb1c.js → translation-slimmer-e8549aff.js} +17 -1
- package/dist/cjs/{type-guard-424efe26.js → type-guard-9917b11f.js} +1 -1
- package/dist/cjs/{ui-3727d685.js → ui-c91c37a7.js} +1 -31
- package/dist/cjs/{valid-credit-card-number-rule-6bd5834c.js → valid-credit-card-number-rule-8c541bcd.js} +1 -1
- package/dist/cjs/vega-accordion.cjs.entry.js +12 -12
- package/dist/cjs/vega-app-footer.cjs.entry.js +3 -3
- package/dist/cjs/vega-app-header-button.cjs.entry.js +15 -15
- package/dist/cjs/vega-backdrop.cjs.entry.js +1 -1
- package/dist/cjs/vega-banner.cjs.entry.js +5 -5
- package/dist/cjs/vega-box.cjs.entry.js +8 -8
- package/dist/cjs/vega-brand-logo.cjs.entry.js +3 -3
- package/dist/cjs/vega-breadcrumb.cjs.entry.js +7 -7
- package/dist/cjs/vega-button-circle.cjs.entry.js +12 -12
- package/dist/cjs/vega-button-group_2.cjs.entry.js +8 -8
- package/dist/cjs/vega-button-link.cjs.entry.js +8 -8
- package/dist/cjs/vega-button.cjs.entry.js +10 -10
- package/dist/cjs/vega-calendar_4.cjs.entry.js +15 -15
- package/dist/cjs/vega-card.cjs.entry.js +7 -7
- package/dist/cjs/vega-carousel.cjs.entry.js +9 -9
- package/dist/cjs/vega-checkbox_2.cjs.entry.js +159 -23
- package/dist/cjs/vega-chip.cjs.entry.js +14 -14
- package/dist/cjs/vega-code-block.cjs.entry.js +16 -16
- package/dist/cjs/vega-color-picker.cjs.entry.js +21 -11
- package/dist/cjs/vega-color-swatch-picker.cjs.entry.js +11 -11
- package/dist/cjs/vega-color-swatch.cjs.entry.js +8 -8
- package/dist/cjs/vega-combo-box.cjs.entry.js +42 -20
- package/dist/cjs/vega-date-picker_2.cjs.entry.js +37 -24
- package/dist/cjs/vega-dialog_2.cjs.entry.js +11 -11
- package/dist/cjs/vega-divider.cjs.entry.js +6 -6
- package/dist/cjs/vega-dropdown_5.cjs.entry.js +18 -18
- package/dist/cjs/vega-env-manager-23b8b23c.js +2 -2
- package/dist/cjs/{vega-event-id-39dedd17.js → vega-event-id-37c1716f.js} +2 -0
- package/dist/cjs/vega-field-error.cjs.entry.js +1 -1
- package/dist/cjs/vega-field-label.cjs.entry.js +86 -14
- package/dist/cjs/vega-file-uploader.cjs.entry.js +10 -10
- package/dist/cjs/vega-flag-icon.cjs.entry.js +6 -6
- package/dist/cjs/vega-flex.cjs.entry.js +8 -8
- package/dist/cjs/vega-font.cjs.entry.js +7 -7
- package/dist/cjs/vega-form.cjs.entry.js +13 -13
- package/dist/cjs/vega-grid.cjs.entry.js +7 -7
- package/dist/cjs/vega-icon.cjs.entry.js +7 -7
- package/dist/cjs/vega-image-uploader.cjs.entry.js +29 -16
- package/dist/cjs/vega-input-credit-card.cjs.entry.js +25 -15
- package/dist/cjs/vega-input-numeric.cjs.entry.js +28 -15
- package/dist/cjs/vega-input-passcode.cjs.entry.js +13 -13
- package/dist/cjs/vega-input-phone-number.cjs.entry.js +12 -12
- package/dist/cjs/vega-input-range.cjs.entry.js +25 -12
- package/dist/cjs/vega-input-select.cjs.entry.js +34 -21
- package/dist/cjs/vega-input.cjs.entry.js +14 -14
- package/dist/cjs/vega-item-toggle.cjs.entry.js +5 -5
- package/dist/cjs/vega-left-nav_5.cjs.entry.js +17 -17
- package/dist/cjs/vega-loader-wrapper_2.cjs.entry.js +5 -5
- package/dist/cjs/vega-page-notification_2.cjs.entry.js +3 -3
- package/dist/cjs/vega-pagination-page-selector-mobile.cjs.entry.js +5 -5
- package/dist/cjs/vega-pagination-page-size-selector-mobile.cjs.entry.js +6 -6
- package/dist/cjs/vega-pagination.cjs.entry.js +11 -11
- package/dist/cjs/vega-popover_2.cjs.entry.js +15 -15
- package/dist/cjs/vega-progress-tracker_2.cjs.entry.js +11 -11
- package/dist/cjs/vega-radio_2.cjs.entry.js +26 -19
- package/dist/cjs/vega-rich-text-content.cjs.entry.js +71 -39
- package/dist/cjs/vega-rich-text-editor_4.cjs.entry.js +78 -35
- package/dist/cjs/vega-rich-text-special-characters-panel.cjs.entry.js +11 -11
- package/dist/cjs/vega-rich-text-table-properties_3.cjs.entry.js +16 -16
- package/dist/cjs/vega-segment-control.cjs.entry.js +6 -6
- package/dist/cjs/vega-selection-chip_2.cjs.entry.js +27 -14
- package/dist/cjs/vega-selection-tile_2.cjs.entry.js +32 -34
- package/dist/cjs/vega-sidenav_3.cjs.entry.js +11 -11
- package/dist/cjs/vega-signature-capture.cjs.entry.js +28 -15
- package/dist/cjs/vega-stepper.cjs.entry.js +10 -10
- package/dist/cjs/vega-tab-group_2.cjs.entry.js +15 -12
- package/dist/cjs/vega-table_11.cjs.entry.js +13 -13
- package/dist/cjs/vega-text.cjs.entry.js +177 -63
- package/dist/cjs/vega-textarea.cjs.entry.js +11 -11
- package/dist/cjs/vega-time-picker_2.cjs.entry.js +31 -18
- package/dist/cjs/vega-toggle-switch.cjs.entry.js +20 -10
- package/dist/cjs/vega-tooltip_2.cjs.entry.js +9 -9
- package/dist/cjs/vega.cjs.js +17 -18
- package/dist/cjs/{wait-for-component-did-render-a13f7eb9.js → wait-for-component-did-render-762084fc.js} +1 -1
- package/dist/collection/components/vega-app-header-button/vega-app-header-button.css +1 -0
- package/dist/collection/components/vega-app-header-button/vega-app-header-button.js +2 -2
- package/dist/collection/components/vega-breadcrumb/slimmers/renderers/vega-breadcrumb-collapsed-item-renderer.js +1 -1
- package/dist/collection/components/vega-button-link/vega-button-link.css +3 -0
- package/dist/collection/components/vega-button-link/vega-button-link.js +1 -1
- package/dist/collection/components/vega-checkbox/vega-checkbox-group/vega-checkbox-group.css +8 -11
- package/dist/collection/components/vega-checkbox/vega-checkbox-group/vega-checkbox-group.js +131 -11
- package/dist/collection/components/vega-checkbox/vega-checkbox.js +148 -6
- package/dist/collection/components/vega-chip/vega-chip.css +1 -0
- package/dist/collection/components/vega-chip/vega-chip.js +1 -1
- package/dist/collection/components/vega-color-picker/vega-color-picker.js +36 -2
- package/dist/collection/components/vega-combo-box/slimmers/renderers/vega-combo-box-dropdown-renderer.js +14 -2
- package/dist/collection/components/vega-combo-box/vega-combo-box.css +12 -0
- package/dist/collection/components/vega-combo-box/vega-combo-box.js +44 -1
- package/dist/collection/components/vega-date-picker/slimmers/renderers/vega-date-picker-renderer.js +4 -1
- package/dist/collection/components/vega-date-picker/vega-date-picker.js +34 -0
- package/dist/collection/components/vega-field-label/slimmers/renderers/vega-field-label-label-announcement-renderer.js +69 -0
- package/dist/collection/components/vega-field-label/vega-field-label.css +12 -0
- package/dist/collection/components/vega-field-label/vega-field-label.js +12 -3
- package/dist/collection/components/vega-image-uploader/slimmers/renderers/vega-image-uploader-renderer.js +4 -1
- package/dist/collection/components/vega-image-uploader/vega-image-uploader.js +34 -0
- package/dist/collection/components/vega-input-credit-card/vega-input-credit-card.js +35 -1
- package/dist/collection/components/vega-input-numeric/slimmers/renderers/vega-input-numeric-renderer.js +4 -1
- package/dist/collection/components/vega-input-numeric/vega-input-numeric.js +34 -0
- package/dist/collection/components/vega-input-range/slimmers/renderers/vega-input-range-renderer.js +4 -1
- package/dist/collection/components/vega-input-range/vega-input-range.js +34 -0
- package/dist/collection/components/vega-input-select/slimmers/renderers/vega-input-select-dropdown-renderer.js +6 -6
- package/dist/collection/components/vega-input-select/slimmers/renderers/vega-input-select-renderer.js +4 -1
- package/dist/collection/components/vega-input-select/vega-input-select.css +1 -0
- package/dist/collection/components/vega-input-select/vega-input-select.js +34 -0
- package/dist/collection/components/vega-radio/vega-radio-group/vega-radio-group.css +8 -11
- package/dist/collection/components/vega-radio/vega-radio-group/vega-radio-group.js +35 -7
- package/dist/collection/components/vega-rich-text-editor/dto/renderers/blocks/link-wrapper-renderer.js +36 -1
- package/dist/collection/components/vega-rich-text-editor/extensions/base-toolbar-button-renderer.js +15 -12
- package/dist/collection/components/vega-rich-text-editor/extensions/extension.abstract.js +11 -0
- package/dist/collection/components/vega-rich-text-editor/extensions/functions/renderers/function-toolbar-button-renderer.js +1 -1
- package/dist/collection/components/vega-rich-text-editor/extensions/horizontal-line/action-handler-strategies/horizontal-line-block-insert-strategy.js +79 -0
- package/dist/collection/components/vega-rich-text-editor/extensions/horizontal-line/action-handler-strategies/hr-to-horizontal-line-block-strategy.js +45 -0
- package/dist/collection/components/vega-rich-text-editor/extensions/horizontal-line/actions/insert-horizontal-line-block-action.js +14 -0
- package/dist/collection/components/vega-rich-text-editor/extensions/horizontal-line/assets/horizontal-line.js +3 -0
- package/dist/collection/components/vega-rich-text-editor/extensions/horizontal-line/dto/horizontal-line-annotation.js +63 -0
- package/dist/collection/components/vega-rich-text-editor/extensions/horizontal-line/dto/horizontal-line-block.js +89 -0
- package/dist/collection/components/vega-rich-text-editor/extensions/horizontal-line/dto/horizontal-line-node.js +32 -0
- package/dist/collection/components/vega-rich-text-editor/extensions/horizontal-line/filter-styles-strategies/horizontal-line-block/horizontal-line-filter-styles-strategy.js +45 -0
- package/dist/collection/components/vega-rich-text-editor/extensions/horizontal-line/filter-styles-strategies/horizontal-line-block/predicate.js +14 -0
- package/dist/collection/components/vega-rich-text-editor/extensions/horizontal-line/horizontal-line-extension.js +41 -0
- package/dist/collection/components/vega-rich-text-editor/extensions/horizontal-line/renderers/horizontal-line-block-renderer.js +37 -0
- package/dist/collection/components/vega-rich-text-editor/extensions/horizontal-line/renderers/horizontal-line-toolbar-button-renderer.js +77 -0
- package/dist/collection/components/vega-rich-text-editor/extensions/languages/language-toolbar-button-renderer.js +30 -16
- package/dist/collection/components/vega-rich-text-editor/extensions/line-height/line-height-toolbar-button-renderer.js +1 -1
- package/dist/collection/components/vega-rich-text-editor/extensions/link/link-extension.js +34 -0
- package/dist/collection/components/vega-rich-text-editor/extensions/link/type.js +1 -0
- package/dist/collection/components/vega-rich-text-editor/extensions/link/utils.js +22 -0
- package/dist/collection/components/vega-rich-text-editor/extensions/rte-extension-state-store.js +37 -0
- package/dist/collection/components/vega-rich-text-editor/extensions/tokens/token-toolbar-button-renderer.js +1 -1
- package/dist/collection/components/vega-rich-text-editor/public-api.js +2 -0
- package/dist/collection/components/vega-rich-text-editor/slimmers/controllers/helper/element-to-dto-strategy/html-block-strategy.js +8 -0
- package/dist/collection/components/vega-rich-text-editor/slimmers/controllers/helper/element-to-dto-strategy/inline-element-to-text-node-strategy.js +18 -1
- package/dist/collection/components/vega-rich-text-editor/slimmers/renderers/toolbar-renderer.js +5 -3
- package/dist/collection/components/vega-rich-text-editor/slimmers/renderers/vega-rich-text-editor-renderer.js +1 -1
- package/dist/collection/components/vega-rich-text-editor/vega-rich-text-editor.js +39 -1
- package/dist/collection/components/vega-rich-text-editor/vega-rich-text-link-editor/slimmers/renderers/vega-rich-text-link-editor-renderer.js +13 -4
- package/dist/collection/components/vega-segment-control/slimmers/renderers/vega-segment-renderer.js +1 -1
- package/dist/collection/components/vega-selection-chip/vega-selection-chip-group/slimmers/renderers/vega-selection-chip-group-renderer.js +4 -1
- package/dist/collection/components/vega-selection-chip/vega-selection-chip-group/vega-selection-chip-group.js +34 -0
- package/dist/collection/components/vega-selection-tile/vega-selection-tile-group/slimmers/renderers/vega-selection-tile-group-renderer.js +9 -21
- package/dist/collection/components/vega-selection-tile/vega-selection-tile-group/vega-selection-tile-group.css +1 -38
- package/dist/collection/components/vega-selection-tile/vega-selection-tile-group/vega-selection-tile-group.js +34 -0
- package/dist/collection/components/vega-signature-capture/slimmers/written-mode/renderers/written-mode-renderer.js +4 -1
- package/dist/collection/components/vega-signature-capture/vega-signature-capture.js +34 -0
- package/dist/collection/components/vega-tab-group/slimmers/vega-tab-group/controllers/vega-tab-group-pages-controller.js +4 -2
- package/dist/collection/components/vega-tab-group/vega-tab-group.js +5 -4
- package/dist/collection/components/vega-text/slimmers/renderers/vega-text-tooltip-renderer.js +153 -61
- package/dist/collection/components/vega-text/vega-text.css +37 -0
- package/dist/collection/components/vega-text/vega-text.js +48 -0
- package/dist/collection/components/vega-textarea/vega-textarea.js +1 -1
- package/dist/collection/components/vega-time-picker/slimmers/renderers/vega-time-picker-label-renderer.js +4 -1
- package/dist/collection/components/vega-time-picker/vega-time-picker.js +34 -0
- package/dist/collection/components/vega-toggle-switch/vega-toggle-switch.js +35 -1
- package/dist/collection/constants/ui.js +1 -0
- package/dist/collection/global/scripts/before-vega-load.js +4 -0
- package/dist/collection/helpers/change-manager/subject/static-subject/static-subject-title.js +1 -0
- package/dist/collection/helpers/event-manager/event-id/component-event-id-map.js +3 -3
- package/dist/collection/helpers/event-manager/event-id/vega-event-id.js +1 -0
- package/dist/collection/helpers/slimmers/translation/translation-slimmer.js +16 -0
- package/dist/collection/helpers/translation/locales/en.js +8 -1
- package/dist/esm/{action-color-accessibility-validator-3d8efb64.js → action-color-accessibility-validator-ce55cb07.js} +2 -2
- package/dist/esm/{app-globals-98c3d676.js → app-globals-a4134d21.js} +11 -8
- package/dist/esm/{aria-dialog-focusable-trap-slimmer-7d9a9f5a.js → aria-dialog-focusable-trap-slimmer-7db3d5a7.js} +2 -2
- package/dist/esm/{brand-switch-state-controller-slimmer-60249013.js → brand-switch-state-controller-slimmer-9ca03c81.js} +1 -1
- package/dist/esm/{child-nodes-event-prevent-slimmer-2f823df2.js → child-nodes-event-prevent-slimmer-1e3ac106.js} +1 -1
- package/dist/esm/{child-nodes-notify-observer-slimmer-8822d0d0.js → child-nodes-notify-observer-slimmer-499a3aa7.js} +1 -1
- package/dist/esm/{code-block-6261a99d.js → code-block-9a17d89b.js} +5 -5
- package/dist/esm/{component-value-history-controller-slimmer.abstract-07488472.js → component-value-history-controller-slimmer.abstract-a64c3678.js} +5 -5
- package/dist/esm/{content-state-9bf85e00.js → content-state-d59b4560.js} +33 -8
- package/dist/esm/{dark-mode-state-controller-slimmer-f2b4f8ed.js → dark-mode-state-controller-slimmer-778dd929.js} +1 -1
- package/dist/esm/{dark-mode-style-controller-fcda24ec.js → dark-mode-style-controller-ca5afd2d.js} +2 -2
- package/dist/esm/{date-required-rule-281aab50.js → date-required-rule-cb960229.js} +1 -1
- package/dist/esm/{design-token-b7ce7ed4.js → design-token-f73ebce9.js} +3 -3
- package/dist/esm/{dom-node-subject-observer-factory-3897e95b.js → dom-node-subject-observer-factory-ddff8662.js} +1 -1
- package/dist/esm/{element-appender-slimmer-3926470f.js → element-appender-slimmer-c62cf540.js} +5 -5
- package/dist/esm/{event-emit-slimmer-0990037c.js → event-emit-slimmer-3eb4d8ad.js} +2 -2
- package/dist/esm/{form-field-controller-slimmer-24aca6c4.js → form-field-controller-slimmer-514a3195.js} +5 -5
- package/dist/esm/{image-annotation-action-dadda36f.js → image-annotation-action-f4ea265c.js} +29 -6
- package/dist/esm/index.js +22 -23
- package/dist/esm/{inject-keyboard-manager-6317d1b3.js → inject-keyboard-manager-6522df5c.js} +1 -1
- package/dist/esm/{internal-translation-controller-0b9589d0.js → internal-translation-controller-653bd7e3.js} +9 -2
- package/dist/esm/{internal-vega-event-manager-dc4c3a37.js → internal-vega-event-manager-a9758b6e.js} +3 -3
- package/dist/esm/{keyboard-manager-69761aa6.js → keyboard-manager-9615fa9b.js} +2 -2
- package/dist/esm/{keyboard-manager-slimmer-c2d038f0.js → keyboard-manager-slimmer-21bdc3a4.js} +1 -1
- package/dist/esm/link-extension-be164793.js +576 -0
- package/dist/esm/loader.js +17 -18
- package/dist/esm/{month-view-generator-4c1ee949.js → month-view-generator-1b7c9bb8.js} +1 -1
- package/dist/esm/{public-rules-da28b413.js → public-rules-58f31834.js} +11 -11
- package/dist/esm/{range-342cbce9.js → range-1c1c20fa.js} +2 -2
- package/dist/esm/{replace-selected-text-action-a45bee4b.js → replace-selected-text-action-1abc5200.js} +1 -1
- package/dist/esm/{responsive-format-facade-3ca1422d.js → responsive-format-facade-12697af2.js} +1 -1
- package/dist/esm/{rich-text-editor-required-rule-46d0bc5b.js → rich-text-editor-required-rule-050d292b.js} +1 -1
- package/dist/esm/{split-cell-operation-1d114aa3.js → split-cell-operation-8251d2a1.js} +5 -5
- package/dist/esm/{state-border-formatter-3ebc76a4.js → state-border-formatter-55cee24d.js} +1 -1
- package/dist/esm/{static-subject-title-52f93124.js → static-subject-title-1c86e974.js} +2 -1
- package/dist/esm/{string-format-strategy.abstract-95d691e1.js → string-format-strategy.abstract-14c1e874.js} +1 -1
- package/dist/esm/{string-input-formatter-slimmer-e18d202c.js → string-input-formatter-slimmer-ec297247.js} +3 -3
- package/dist/esm/{string-mask-strategy-43d846ac.js → string-mask-strategy-18760123.js} +2 -2
- package/dist/esm/{style-formatter-197e2fd3.js → style-formatter-6073ae27.js} +2 -2
- package/dist/esm/{sub-state-notify-slimmer-80ac7dee.js → sub-state-notify-slimmer-d5a21bb3.js} +1 -1
- package/dist/esm/{sub-state-observer-slimmer-81538a8c.js → sub-state-observer-slimmer-d924288a.js} +2 -2
- package/dist/esm/{time-required-rule-78d8ecf1.js → time-required-rule-9b775d24.js} +1 -1
- package/dist/esm/{token-extension-30011dc4.js → token-extension-6cb7dcb2.js} +576 -435
- package/dist/esm/{translation-slimmer-49903fc8.js → translation-slimmer-d32eb861.js} +17 -1
- package/dist/esm/{type-guard-b18807dc.js → type-guard-fd1f4760.js} +1 -1
- package/dist/esm/{ui-64815a12.js → ui-d73f756a.js} +2 -30
- package/dist/esm/{valid-credit-card-number-rule-fe1c8a9c.js → valid-credit-card-number-rule-dfd3e0a6.js} +1 -1
- package/dist/esm/vega-accordion.entry.js +12 -12
- package/dist/esm/vega-app-footer.entry.js +3 -3
- package/dist/esm/vega-app-header-button.entry.js +15 -15
- package/dist/esm/vega-backdrop.entry.js +1 -1
- package/dist/esm/vega-banner.entry.js +5 -5
- package/dist/esm/vega-box.entry.js +8 -8
- package/dist/esm/vega-brand-logo.entry.js +3 -3
- package/dist/esm/vega-breadcrumb.entry.js +7 -7
- package/dist/esm/vega-button-circle.entry.js +12 -12
- package/dist/esm/vega-button-group_2.entry.js +8 -8
- package/dist/esm/vega-button-link.entry.js +8 -8
- package/dist/esm/vega-button.entry.js +10 -10
- package/dist/esm/vega-calendar_4.entry.js +15 -15
- package/dist/esm/vega-card.entry.js +7 -7
- package/dist/esm/vega-carousel.entry.js +9 -9
- package/dist/esm/vega-checkbox_2.entry.js +159 -23
- package/dist/esm/vega-chip.entry.js +14 -14
- package/dist/esm/vega-code-block.entry.js +16 -16
- package/dist/esm/vega-color-picker.entry.js +21 -11
- package/dist/esm/vega-color-swatch-picker.entry.js +11 -11
- package/dist/esm/vega-color-swatch.entry.js +8 -8
- package/dist/esm/vega-combo-box.entry.js +42 -20
- package/dist/esm/vega-date-picker_2.entry.js +37 -24
- package/dist/esm/vega-dialog_2.entry.js +11 -11
- package/dist/esm/vega-divider.entry.js +6 -6
- package/dist/esm/vega-dropdown_5.entry.js +18 -18
- package/dist/esm/vega-env-manager-8f8dc473.js +2 -2
- package/dist/esm/{vega-event-id-20494454.js → vega-event-id-92848bf5.js} +2 -1
- package/dist/esm/vega-field-error.entry.js +1 -1
- package/dist/esm/vega-field-label.entry.js +86 -14
- package/dist/esm/vega-file-uploader.entry.js +10 -10
- package/dist/esm/vega-flag-icon.entry.js +6 -6
- package/dist/esm/vega-flex.entry.js +8 -8
- package/dist/esm/vega-font.entry.js +7 -7
- package/dist/esm/vega-form.entry.js +13 -13
- package/dist/esm/vega-grid.entry.js +7 -7
- package/dist/esm/vega-icon.entry.js +7 -7
- package/dist/esm/vega-image-uploader.entry.js +29 -16
- package/dist/esm/vega-input-credit-card.entry.js +25 -15
- package/dist/esm/vega-input-numeric.entry.js +28 -15
- package/dist/esm/vega-input-passcode.entry.js +13 -13
- package/dist/esm/vega-input-phone-number.entry.js +12 -12
- package/dist/esm/vega-input-range.entry.js +25 -12
- package/dist/esm/vega-input-select.entry.js +34 -21
- package/dist/esm/vega-input.entry.js +14 -14
- package/dist/esm/vega-item-toggle.entry.js +5 -5
- package/dist/esm/vega-left-nav_5.entry.js +17 -17
- package/dist/esm/vega-loader-wrapper_2.entry.js +5 -5
- package/dist/esm/vega-page-notification_2.entry.js +3 -3
- package/dist/esm/vega-pagination-page-selector-mobile.entry.js +5 -5
- package/dist/esm/vega-pagination-page-size-selector-mobile.entry.js +6 -6
- package/dist/esm/vega-pagination.entry.js +11 -11
- package/dist/esm/vega-popover_2.entry.js +15 -15
- package/dist/esm/vega-progress-tracker_2.entry.js +11 -11
- package/dist/esm/vega-radio_2.entry.js +26 -19
- package/dist/esm/vega-rich-text-content.entry.js +48 -16
- package/dist/esm/vega-rich-text-editor_4.entry.js +77 -34
- package/dist/esm/vega-rich-text-special-characters-panel.entry.js +11 -11
- package/dist/esm/vega-rich-text-table-properties_3.entry.js +16 -16
- package/dist/esm/vega-segment-control.entry.js +6 -6
- package/dist/esm/vega-selection-chip_2.entry.js +27 -14
- package/dist/esm/vega-selection-tile_2.entry.js +32 -34
- package/dist/esm/vega-sidenav_3.entry.js +11 -11
- package/dist/esm/vega-signature-capture.entry.js +28 -15
- package/dist/esm/vega-stepper.entry.js +10 -10
- package/dist/esm/vega-tab-group_2.entry.js +15 -12
- package/dist/esm/vega-table_11.entry.js +13 -13
- package/dist/esm/vega-text.entry.js +177 -63
- package/dist/esm/vega-textarea.entry.js +11 -11
- package/dist/esm/vega-time-picker_2.entry.js +31 -18
- package/dist/esm/vega-toggle-switch.entry.js +20 -10
- package/dist/esm/vega-tooltip_2.entry.js +9 -9
- package/dist/esm/vega.js +17 -18
- package/dist/esm/{wait-for-component-did-render-4069cbea.js → wait-for-component-did-render-b378bf16.js} +1 -1
- package/dist/sri/vega-sri-manifest.json +404 -408
- package/dist/types/components/vega-checkbox/vega-checkbox-group/vega-checkbox-group.d.ts +51 -2
- package/dist/types/components/vega-checkbox/vega-checkbox.d.ts +60 -0
- package/dist/types/components/vega-color-picker/vega-color-picker.d.ts +10 -0
- package/dist/types/components/vega-combo-box/slimmers/renderers/vega-combo-box-dropdown-renderer.d.ts +1 -0
- package/dist/types/components/vega-combo-box/vega-combo-box.d.ts +21 -0
- package/dist/types/components/vega-date-picker/slimmers/renderers/vega-date-picker-renderer.d.ts +1 -0
- package/dist/types/components/vega-date-picker/vega-date-picker.d.ts +10 -0
- package/dist/types/components/vega-field-label/slimmers/renderers/vega-field-label-label-announcement-renderer.d.ts +21 -0
- package/dist/types/components/vega-field-label/vega-field-label.d.ts +2 -0
- package/dist/types/components/vega-image-uploader/slimmers/renderers/vega-image-uploader-renderer.d.ts +1 -0
- package/dist/types/components/vega-image-uploader/vega-image-uploader.d.ts +10 -0
- package/dist/types/components/vega-input-credit-card/vega-input-credit-card.d.ts +10 -0
- package/dist/types/components/vega-input-numeric/slimmers/renderers/vega-input-numeric-renderer.d.ts +1 -0
- package/dist/types/components/vega-input-numeric/vega-input-numeric.d.ts +10 -0
- package/dist/types/components/vega-input-range/slimmers/renderers/vega-input-range-renderer.d.ts +1 -0
- package/dist/types/components/vega-input-range/vega-input-range.d.ts +10 -0
- package/dist/types/components/vega-input-select/slimmers/renderers/vega-input-select-renderer.d.ts +1 -0
- package/dist/types/components/vega-input-select/vega-input-select.d.ts +10 -0
- package/dist/types/components/vega-radio/vega-radio-group/vega-radio-group.d.ts +10 -1
- package/dist/types/components/vega-rich-text-editor/dto/renderers/blocks/link-wrapper-renderer.d.ts +3 -1
- package/dist/types/components/vega-rich-text-editor/extensions/base-toolbar-button-renderer.d.ts +8 -5
- package/dist/types/components/vega-rich-text-editor/extensions/extension.abstract.d.ts +9 -0
- package/dist/types/components/vega-rich-text-editor/extensions/horizontal-line/action-handler-strategies/horizontal-line-block-insert-strategy.d.ts +29 -0
- package/dist/types/components/vega-rich-text-editor/extensions/horizontal-line/action-handler-strategies/hr-to-horizontal-line-block-strategy.d.ts +35 -0
- package/dist/types/components/vega-rich-text-editor/extensions/horizontal-line/actions/insert-horizontal-line-block-action.d.ts +15 -0
- package/dist/types/components/vega-rich-text-editor/extensions/horizontal-line/assets/horizontal-line.d.ts +3 -0
- package/dist/types/components/vega-rich-text-editor/extensions/horizontal-line/dto/horizontal-line-annotation.d.ts +43 -0
- package/dist/types/components/vega-rich-text-editor/extensions/horizontal-line/dto/horizontal-line-block.d.ts +53 -0
- package/dist/types/components/vega-rich-text-editor/extensions/horizontal-line/dto/horizontal-line-node.d.ts +26 -0
- package/dist/types/components/vega-rich-text-editor/extensions/horizontal-line/filter-styles-strategies/horizontal-line-block/horizontal-line-filter-styles-strategy.d.ts +31 -0
- package/dist/types/components/vega-rich-text-editor/extensions/horizontal-line/filter-styles-strategies/horizontal-line-block/predicate.d.ts +12 -0
- package/dist/types/components/vega-rich-text-editor/extensions/horizontal-line/horizontal-line-extension.d.ts +9 -0
- package/dist/types/components/vega-rich-text-editor/extensions/horizontal-line/renderers/horizontal-line-block-renderer.d.ts +16 -0
- package/dist/types/components/vega-rich-text-editor/extensions/horizontal-line/renderers/horizontal-line-toolbar-button-renderer.d.ts +27 -0
- package/dist/types/components/vega-rich-text-editor/extensions/languages/language-toolbar-button-renderer.d.ts +16 -12
- package/dist/types/components/vega-rich-text-editor/extensions/link/link-extension.d.ts +27 -0
- package/dist/types/components/vega-rich-text-editor/extensions/link/type.d.ts +15 -0
- package/dist/types/components/vega-rich-text-editor/extensions/link/utils.d.ts +8 -0
- package/dist/types/components/vega-rich-text-editor/extensions/rte-extension-state-store.d.ts +30 -0
- package/dist/types/components/vega-rich-text-editor/public-api.d.ts +3 -0
- package/dist/types/components/vega-rich-text-editor/slimmers/renderers/toolbar-renderer.d.ts +1 -1
- package/dist/types/components/vega-rich-text-editor/vega-rich-text-editor.d.ts +22 -0
- package/dist/types/components/vega-rich-text-editor/vega-rich-text-link-editor/slimmers/renderers/vega-rich-text-link-editor-renderer.d.ts +1 -0
- package/dist/types/components/vega-selection-chip/vega-selection-chip-group/slimmers/renderers/vega-selection-chip-group-renderer.d.ts +1 -0
- package/dist/types/components/vega-selection-chip/vega-selection-chip-group/vega-selection-chip-group.d.ts +10 -0
- package/dist/types/components/vega-selection-tile/vega-selection-tile-group/slimmers/renderers/vega-selection-tile-group-renderer.d.ts +2 -1
- package/dist/types/components/vega-selection-tile/vega-selection-tile-group/vega-selection-tile-group.d.ts +10 -0
- package/dist/types/components/vega-signature-capture/slimmers/written-mode/renderers/written-mode-renderer.d.ts +1 -0
- package/dist/types/components/vega-signature-capture/vega-signature-capture.d.ts +10 -0
- package/dist/types/components/vega-tab-group/slimmers/vega-tab-group/controllers/vega-tab-group-pages-controller.d.ts +3 -2
- package/dist/types/components/vega-tab-group/vega-tab-group.d.ts +4 -3
- package/dist/types/components/vega-text/slimmers/renderers/vega-text-tooltip-renderer.d.ts +34 -12
- package/dist/types/components/vega-text/vega-text.d.ts +19 -0
- package/dist/types/components/vega-time-picker/slimmers/renderers/vega-time-picker-label-renderer.d.ts +1 -0
- package/dist/types/components/vega-time-picker/vega-time-picker.d.ts +10 -0
- package/dist/types/components/vega-toggle-switch/vega-toggle-switch.d.ts +10 -0
- package/dist/types/components.d.ts +222 -2
- package/dist/types/constants/ui.d.ts +1 -1
- package/dist/types/helpers/change-manager/subject/static-subject/static-subject-title.d.ts +2 -1
- package/dist/types/helpers/event-manager/event-id/vega-event-id.d.ts +1 -0
- package/dist/types/helpers/slimmers/translation/translation-slimmer.d.ts +11 -0
- package/dist/types/helpers/translation/interface.d.ts +8 -1
- package/dist/vega/index.esm.js +1 -1
- package/dist/vega/{p-d24892d6.entry.js → p-00d2a013.entry.js} +1 -1
- package/dist/vega/{p-77fb5d5c.js → p-014cd411.js} +1 -1
- package/dist/vega/p-02492864.entry.js +1 -0
- package/dist/vega/{p-5c1a4fd7.entry.js → p-0278cd2b.entry.js} +1 -1
- package/dist/vega/{p-6bd37d32.js → p-0542b8ac.js} +1 -1
- package/dist/vega/p-0a1c7f80.js +1 -0
- package/dist/vega/p-0cc4a052.entry.js +1 -0
- package/dist/vega/{p-9e0f8b46.entry.js → p-0e298ee8.entry.js} +1 -1
- package/dist/vega/p-1827a459.entry.js +1 -0
- package/dist/vega/{p-03b32939.entry.js → p-1b4abd76.entry.js} +1 -1
- package/dist/vega/{p-4914a5f8.entry.js → p-1d16a7fa.entry.js} +1 -1
- package/dist/vega/{p-e5726df7.entry.js → p-1ee185d9.entry.js} +1 -1
- package/dist/vega/{p-ce8a0aa6.entry.js → p-203f4ce9.entry.js} +1 -1
- package/dist/vega/p-2620a164.js +1 -0
- package/dist/vega/{p-416e89b0.entry.js → p-2649051e.entry.js} +1 -1
- package/dist/vega/{p-c93dfe23.js → p-277c306b.js} +1 -1
- package/dist/vega/{p-c0c13993.entry.js → p-285e5e52.entry.js} +1 -1
- package/dist/vega/p-2c7e1bcb.js +1 -0
- package/dist/vega/{p-36e46c4f.js → p-30487f0e.js} +1 -1
- package/dist/vega/p-306720b8.entry.js +1 -0
- package/dist/vega/p-30a6b7aa.entry.js +1 -0
- package/dist/vega/{p-7292ac20.js → p-328dbe8e.js} +1 -1
- package/dist/vega/p-350d1b75.entry.js +1 -0
- package/dist/vega/{p-b5d00d38.entry.js → p-355ea330.entry.js} +1 -1
- package/dist/vega/{p-3312e3dd.js → p-35d617d5.js} +1 -1
- package/dist/vega/p-3755d8d3.entry.js +1 -0
- package/dist/vega/{p-b565a6a5.js → p-3e09aeed.js} +1 -1
- package/dist/vega/{p-92710213.entry.js → p-3e956269.entry.js} +1 -1
- package/dist/vega/{p-cacec680.js → p-3ed6a602.js} +1 -1
- package/dist/vega/{p-d2237b95.entry.js → p-4386625c.entry.js} +1 -1
- package/dist/vega/{p-0d3830f1.js → p-44f39eee.js} +1 -1
- package/dist/vega/{p-b72d7b57.entry.js → p-44f81987.entry.js} +1 -1
- package/dist/vega/{p-b3e97e2f.entry.js → p-456890f5.entry.js} +1 -1
- package/dist/vega/p-465590d1.entry.js +1 -0
- package/dist/vega/{p-a53e1a60.entry.js → p-4694fe27.entry.js} +1 -1
- package/dist/vega/p-46cab60a.js +1 -0
- package/dist/vega/{p-341d5e4e.js → p-46e0c6ca.js} +1 -1
- package/dist/vega/p-47ffdc0f.entry.js +1 -0
- package/dist/vega/p-4edd7f8c.js +1 -0
- package/dist/vega/p-4fdd0a71.js +1 -0
- package/dist/vega/{p-11e2dcf5.js → p-526e3634.js} +1 -1
- package/dist/vega/p-528748fa.js +1 -0
- package/dist/vega/p-54141828.entry.js +1 -0
- package/dist/vega/{p-e7fb7eee.js → p-566ba295.js} +1 -1
- package/dist/vega/{p-01f617ee.entry.js → p-581d89bb.entry.js} +1 -1
- package/dist/vega/{p-4f53b45d.entry.js → p-5a6e2c08.entry.js} +1 -1
- package/dist/vega/p-5f048811.entry.js +1 -0
- package/dist/vega/p-5f377954.js +1 -1
- package/dist/vega/p-600f0316.entry.js +1 -0
- package/dist/vega/p-616d7096.entry.js +1 -0
- package/dist/vega/{p-df4f9264.entry.js → p-6528739f.entry.js} +1 -1
- package/dist/vega/{p-d1641644.entry.js → p-667c980d.entry.js} +1 -1
- package/dist/vega/{p-b519b9ab.entry.js → p-6845ed5c.entry.js} +1 -1
- package/dist/vega/p-6cedb325.js +1 -0
- package/dist/vega/{p-b7f30f68.entry.js → p-6d99a0b3.entry.js} +1 -1
- package/dist/vega/{p-18d1d404.entry.js → p-6fec4d46.entry.js} +1 -1
- package/dist/vega/p-716a393e.entry.js +1 -0
- package/dist/vega/p-73ce8fef.js +1 -0
- package/dist/vega/p-788a7a5a.js +1 -0
- package/dist/vega/{p-1385da31.entry.js → p-7fe292af.entry.js} +1 -1
- package/dist/vega/{p-788ada42.js → p-820ff54c.js} +1 -1
- package/dist/vega/{p-a73d8915.entry.js → p-8258dc37.entry.js} +1 -1
- package/dist/vega/p-82c133aa.js +1 -0
- package/dist/vega/{p-0b2ca33b.js → p-844b7826.js} +1 -1
- package/dist/vega/{p-0d248322.entry.js → p-850ea38b.entry.js} +1 -1
- package/dist/vega/p-85dcd07b.js +3 -0
- package/dist/vega/{p-92468c30.entry.js → p-8666f206.entry.js} +1 -1
- package/dist/vega/{p-518e0a24.js → p-881622fd.js} +1 -1
- package/dist/vega/p-88c29aae.entry.js +1 -0
- package/dist/vega/p-8a054a13.js +1 -0
- package/dist/vega/{p-ea48decc.js → p-8a34c08a.js} +1 -1
- package/dist/vega/{p-ecbead18.entry.js → p-8d9c4338.entry.js} +1 -1
- package/dist/vega/p-92e493ea.entry.js +1 -0
- package/dist/vega/{p-a87bc75a.entry.js → p-939c486f.entry.js} +1 -1
- package/dist/vega/{p-3d6568cc.js → p-97e7da55.js} +1 -1
- package/dist/vega/{p-a36d4199.entry.js → p-99545fd7.entry.js} +1 -1
- package/dist/vega/p-99ea0fa0.entry.js +1 -0
- package/dist/vega/{p-3967fa98.entry.js → p-a05a2f1e.entry.js} +1 -1
- package/dist/vega/{p-10fa27d2.js → p-a58cacca.js} +1 -1
- package/dist/vega/{p-81d55efd.js → p-a809b33a.js} +1 -1
- package/dist/vega/{p-a0fa5ccc.entry.js → p-a9a70696.entry.js} +1 -1
- package/dist/vega/{p-b0fb5099.entry.js → p-aae71499.entry.js} +1 -1
- package/dist/vega/{p-f7ad9349.js → p-b0f55f5f.js} +1 -1
- package/dist/vega/{p-7cd2b93b.js → p-b3420fcf.js} +1 -1
- package/dist/vega/p-b5c08306.entry.js +1 -0
- package/dist/vega/{p-abfe46ca.js → p-b7c90543.js} +1 -1
- package/dist/vega/{p-b31802b3.entry.js → p-bcd3bd79.entry.js} +1 -1
- package/dist/vega/p-bce9f489.entry.js +1 -0
- package/dist/vega/{p-1d752c37.entry.js → p-c0a6ed53.entry.js} +1 -1
- package/dist/vega/{p-7dcc0b23.entry.js → p-c1c5bd2c.entry.js} +1 -1
- package/dist/vega/{p-cdd3af89.entry.js → p-c5621f60.entry.js} +1 -1
- package/dist/vega/{p-f0d70de3.js → p-c596bb49.js} +1 -1
- package/dist/vega/p-c9c42a07.js +1 -0
- package/dist/vega/p-cb378636.js +1 -0
- package/dist/vega/p-d0e7c14b.entry.js +1 -0
- package/dist/vega/{p-919de162.js → p-d2916121.js} +1 -1
- package/dist/vega/{p-5424e837.js → p-d319ebb5.js} +1 -1
- package/dist/vega/p-d6422004.entry.js +1 -0
- package/dist/vega/p-d76cb9da.entry.js +1 -0
- package/dist/vega/{p-6629a68b.js → p-d7790113.js} +1 -1
- package/dist/vega/{p-b5a3de00.entry.js → p-d871e8eb.entry.js} +1 -1
- package/dist/vega/p-d905159c.entry.js +1 -0
- package/dist/vega/{p-ba4f23d8.entry.js → p-dfda6e01.entry.js} +1 -1
- package/dist/vega/p-e30a4f3e.js +1 -0
- package/dist/vega/{p-b2a0d104.entry.js → p-e8c5a446.entry.js} +1 -1
- package/dist/vega/{p-fea75b87.js → p-eb927e2b.js} +1 -1
- package/dist/vega/{p-9f03856e.js → p-ecea4d24.js} +1 -1
- package/dist/vega/{p-c6201e76.entry.js → p-ed1dbc98.entry.js} +1 -1
- package/dist/vega/p-f0b99c3a.entry.js +1 -0
- package/dist/vega/{p-9c48e4e5.js → p-f0d6e2f2.js} +1 -1
- package/dist/vega/p-f251a907.entry.js +1 -0
- package/dist/vega/{p-5a960f83.entry.js → p-f5c8024e.entry.js} +1 -1
- package/dist/vega/{p-36f3dd19.entry.js → p-f70cfac5.entry.js} +1 -1
- package/dist/vega/p-f830deb8.js +1 -0
- package/dist/vega/p-f9ae396b.entry.js +1 -0
- package/dist/vega/p-fcefb62c.js +1 -0
- package/dist/vega/p-fd2a49be.entry.js +1 -0
- package/dist/vega/{p-6be01c6b.entry.js → p-fe573f85.entry.js} +1 -1
- package/dist/vega/vega.esm.js +1 -1
- package/package.json +1 -1
- package/dist/cjs/base-renderer-0a3b62b7.js +0 -9
- package/dist/cjs/dto-renderer-manager-7eb5c5ce.js +0 -98
- package/dist/esm/base-renderer-101f6d04.js +0 -7
- package/dist/esm/dto-renderer-manager-abc7eb5f.js +0 -96
- package/dist/vega/p-05dc6718.js +0 -1
- package/dist/vega/p-0c460945.js +0 -1
- package/dist/vega/p-0dafd071.entry.js +0 -1
- package/dist/vega/p-0edf9c6e.entry.js +0 -1
- package/dist/vega/p-1f563387.js +0 -1
- package/dist/vega/p-296c90bd.entry.js +0 -1
- package/dist/vega/p-30f76962.js +0 -3
- package/dist/vega/p-3186995a.entry.js +0 -1
- package/dist/vega/p-3ab50c06.entry.js +0 -1
- package/dist/vega/p-3e2e4b00.entry.js +0 -1
- package/dist/vega/p-50958342.js +0 -1
- package/dist/vega/p-540bd78a.entry.js +0 -1
- package/dist/vega/p-54ed506c.entry.js +0 -1
- package/dist/vega/p-5c8522eb.entry.js +0 -1
- package/dist/vega/p-6205288e.entry.js +0 -1
- package/dist/vega/p-696d7b8f.js +0 -1
- package/dist/vega/p-6ab23e89.entry.js +0 -1
- package/dist/vega/p-70e0c3eb.entry.js +0 -1
- package/dist/vega/p-7168ef16.entry.js +0 -1
- package/dist/vega/p-7348a091.entry.js +0 -1
- package/dist/vega/p-7cd8d054.entry.js +0 -1
- package/dist/vega/p-8ee917b4.js +0 -1
- package/dist/vega/p-a0dd5273.entry.js +0 -1
- package/dist/vega/p-a32ad1ac.entry.js +0 -1
- package/dist/vega/p-a528714c.js +0 -1
- package/dist/vega/p-a5713178.js +0 -1
- package/dist/vega/p-a7b5f497.js +0 -1
- package/dist/vega/p-ad815280.js +0 -1
- package/dist/vega/p-b218141f.entry.js +0 -1
- package/dist/vega/p-b6c3ce6d.js +0 -1
- package/dist/vega/p-b857a661.js +0 -1
- package/dist/vega/p-c4675cd2.entry.js +0 -1
- package/dist/vega/p-c51e3b9e.js +0 -1
- package/dist/vega/p-c84aa55a.js +0 -1
- package/dist/vega/p-cd382652.entry.js +0 -1
- package/dist/vega/p-cf5c6172.entry.js +0 -1
- package/dist/vega/p-d8591207.entry.js +0 -1
- package/dist/vega/p-da42fde0.js +0 -1
- package/dist/vega/p-dc0f7ef1.entry.js +0 -1
- package/dist/vega/p-dcd3b421.entry.js +0 -1
- package/dist/vega/p-ea4b5520.entry.js +0 -1
- package/dist/vega/p-eb78a2f2.entry.js +0 -1
- package/dist/vega/p-ec2a1d4c.js +0 -1
- package/dist/vega/p-fdf6f368.js +0 -1
- package/dist/vega/p-ffda64ac.js +0 -1
- package/dist/vega/p-ffe8a826.entry.js +0 -1
|
@@ -1,31 +1,30 @@
|
|
|
1
1
|
import { g as generateUUID } from './misc-9fdbcfbb.js';
|
|
2
|
-
import { a as arrayToClassString, g as getDeviceType, D as DeviceType, f as findParent, r as rgbToHex } from './ui-
|
|
2
|
+
import { a as arrayToClassString, g as getDeviceType, D as DeviceType, f as findParent, r as rgbToHex } from './ui-d73f756a.js';
|
|
3
3
|
import { L as LogUtility, I as InjectVegaSlimmer } from './global-slimmer-registry-17c4efd4.js';
|
|
4
4
|
import { I as InjectVegaTelemetrySlimmer, c as createPublicAPIRuntimeMetricsSlimmer } from './create-public-api-runtime-metrics-slimmer-da6615bf.js';
|
|
5
5
|
import { I as InternalVegaZIndexManager } from './internal-vega-z-index-manager-7d2b54c3.js';
|
|
6
6
|
import { c as createDynamicSlimmer } from './dynamic-slimmer-90b8af32.js';
|
|
7
7
|
import { P as PageResizeObserverSlimmer } from './page-resize-observer-slimmer-e24d36c5.js';
|
|
8
|
-
import { i as internalVegaEventManager } from './internal-vega-event-manager-
|
|
9
|
-
import { V as VegaInternalTranslation } from './internal-translation-controller-
|
|
10
|
-
import {
|
|
11
|
-
import {
|
|
12
|
-
import { i as
|
|
13
|
-
import {
|
|
14
|
-
import { V as VegaRTEBaseRenderer } from './base-renderer-101f6d04.js';
|
|
8
|
+
import { i as internalVegaEventManager } from './internal-vega-event-manager-a9758b6e.js';
|
|
9
|
+
import { V as VegaInternalTranslation } from './internal-translation-controller-653bd7e3.js';
|
|
10
|
+
import { U as UpdateCursorPositionAction, V as VegaRTEContent, B as BlockToRTEBlockStrategyAbstract, E as ElementToDTOStrategy, h as htmlElementToAnnotationGenerator, I as InsertNewParagraphAction, R as RTEImageBlock, a as InsertChildrenBeforeStrategy, P as PasteContentStrategy, A as AnnotationGeneratorStrategyAbstract, b as RTEListItemBlock } from './content-state-d59b4560.js';
|
|
11
|
+
import { R as RTEExtensionContextManager, a as VegaRTEExtensionRenderer, b as VegaRTEExtension } from './link-extension-be164793.js';
|
|
12
|
+
import { M as ModifyContentAction, A as ActionHandleStrategyRegistry, R as RTETextNode, a as RTEBlock, b as RTETextBlock, c as RTEAnnotationStyle, d as ActionHandleStrategy, I as InsertChildrenAfterAction, e as AppendChildrenAction, f as RTENode, s as stateEntityRenderingRegistry, g as InsertChildrenBeforeAction, h as InternalAnnotationTypeEnum, i as ModifyContentActionType, B as BlockAnnotation, j as AnnotationAction, k as RemoveChildrenAction, C as CommonAnnotationTypeEnum, l as CustomAttributeAnnotation, m as RTEDTOClassManager, n as RTEFilterStylesStrategy, o as RTEDecoratorNode, S as SplitBlockWithNodeAction, U as UpdateTextAction, N as NodeAnnotationTypeEnum, p as RTECodeBlock, q as CustomStyleAnnotation, r as RTEFilterStylesStrategyRegistry } from './code-block-9a17d89b.js';
|
|
13
|
+
import { i as isNonNullable } from './type-guard-fd1f4760.js';
|
|
15
14
|
import { V as VegaInternalIconManager } from './internal-icon-manager-276f968f.js';
|
|
16
15
|
import { v as vegaNonceManager } from './vega-nonce-manager-497e5eb5.js';
|
|
17
|
-
import { D as DomNodeSubjectObserverFactory, d as domNodeSubjectFactory } from './dom-node-subject-observer-factory-
|
|
18
|
-
import { V as VegaDropdownClick, a as VegaClick, b as VegaPopoverHide, c as VegaPopoverShow } from './vega-event-id-
|
|
19
|
-
import { R as RTETableExtensionAnnotationTypeEnum, a as RTE_TABLE_HEAD_DEFAULT_BACKGROUND_COLOR, S as SettingEventHandler, T as TableSettingType, b as RTETableAnnotation, c as RTETableCellAnnotation, d as RTETableHeadCellBlock, e as RowOperationEventHandler, C as ColumnOperationEventHandler, M as MergeCellsOperationEventHandler, f as SplitCellOperationEventHandler, g as RTETableColorManager, h as RTETableBlock, i as generateTableBody, j as RTETableCellBlock, k as RTETableHeadBlock, l as RTETableBodyBlock, m as getParentBlockByType, n as RTETableHeadCellAnnotation, o as TableColumnStrategy, p as getAllTableRows, q as buildTableGrid, s as setSpanAttributes, r as findCellBlockById, t as getDefaultCellBlockTemplate, I as InsertTableColumnDirection, u as buildCellStartColumnMap, v as getTableColumnCount, w as getFirstNode, x as getCellSpan, y as createNewCell, z as MergeCellsOperationType, A as RTETableRowBlock, B as getActualColumnPosition, D as InsertTableRowDirection, E as RTE_TABLE_DEFAULT_COLORS, F as INSERT_TABLE_ROW_INTO_DIFFERENT_SECTION, G as INSERT_TABLE_ROW_INTO_SAME_SECTION, H as DELETE_TABLE_ROW, J as TOGGLE_HEADER_ROW, K as INSERT_TABLE_COLUMN, L as DELETE_TABLE_COLUMN, N as TOGGLE_HEADER_TABLE_COLUMN, O as ToggleHeaderTableColumnStrategy, P as SPLIT_TABLE_CELL, Q as REPLACE_TABLE_CELL, U as SPLIT_CELL_HORIZONTALLY, W as SPLIT_CELL_VERTICALLY, X as SELECT_TABLE_COLUMN, Y as MERGE_CELLS } from './split-cell-operation-
|
|
16
|
+
import { D as DomNodeSubjectObserverFactory, d as domNodeSubjectFactory } from './dom-node-subject-observer-factory-ddff8662.js';
|
|
17
|
+
import { V as VegaDropdownClick, a as VegaClick, b as VegaPopoverHide, c as VegaPopoverShow } from './vega-event-id-92848bf5.js';
|
|
18
|
+
import { R as RTETableExtensionAnnotationTypeEnum, a as RTE_TABLE_HEAD_DEFAULT_BACKGROUND_COLOR, S as SettingEventHandler, T as TableSettingType, b as RTETableAnnotation, c as RTETableCellAnnotation, d as RTETableHeadCellBlock, e as RowOperationEventHandler, C as ColumnOperationEventHandler, M as MergeCellsOperationEventHandler, f as SplitCellOperationEventHandler, g as RTETableColorManager, h as RTETableBlock, i as generateTableBody, j as RTETableCellBlock, k as RTETableHeadBlock, l as RTETableBodyBlock, m as getParentBlockByType, n as RTETableHeadCellAnnotation, o as TableColumnStrategy, p as getAllTableRows, q as buildTableGrid, s as setSpanAttributes, r as findCellBlockById, t as getDefaultCellBlockTemplate, I as InsertTableColumnDirection, u as buildCellStartColumnMap, v as getTableColumnCount, w as getFirstNode, x as getCellSpan, y as createNewCell, z as MergeCellsOperationType, A as RTETableRowBlock, B as getActualColumnPosition, D as InsertTableRowDirection, E as RTE_TABLE_DEFAULT_COLORS, F as INSERT_TABLE_ROW_INTO_DIFFERENT_SECTION, G as INSERT_TABLE_ROW_INTO_SAME_SECTION, H as DELETE_TABLE_ROW, J as TOGGLE_HEADER_ROW, K as INSERT_TABLE_COLUMN, L as DELETE_TABLE_COLUMN, N as TOGGLE_HEADER_TABLE_COLUMN, O as ToggleHeaderTableColumnStrategy, P as SPLIT_TABLE_CELL, Q as REPLACE_TABLE_CELL, U as SPLIT_CELL_HORIZONTALLY, W as SPLIT_CELL_VERTICALLY, X as SELECT_TABLE_COLUMN, Y as MERGE_CELLS } from './split-cell-operation-8251d2a1.js';
|
|
20
19
|
import { C as ChangeManager } from './change-manager-6a7eb88c.js';
|
|
21
20
|
import { V as VegaInternalRTEExtensionTableCellsSelectionAnchor, a as VegaInternalPopoverUpdateTarget, b as VegaInternalRTEExtensionTableCellSelectionChange } from './vega-internal-event-id-913e8be6.js';
|
|
22
21
|
import { r as remoteInvocationRegistry } from './remote-invocation-registry-d69245c2.js';
|
|
23
|
-
import { V as VegaInternalThemeManager } from './dark-mode-style-controller-
|
|
22
|
+
import { V as VegaInternalThemeManager } from './dark-mode-style-controller-ca5afd2d.js';
|
|
24
23
|
import { t as tryGetDocument } from './try-get-document-bef0f526.js';
|
|
25
24
|
import { p as parseToPixelString } from './pixel-f32c07ce.js';
|
|
26
25
|
import { c as cleanObject } from './object-0c277f57.js';
|
|
27
26
|
import { d as debounce } from './timer-9321173b.js';
|
|
28
|
-
import { R as ReplaceSelectedTextAction } from './replace-selected-text-action-
|
|
27
|
+
import { R as ReplaceSelectedTextAction } from './replace-selected-text-action-1abc5200.js';
|
|
29
28
|
|
|
30
29
|
const VegaLoaderRuntimeMetricsPayloadDefinition = [
|
|
31
30
|
{
|
|
@@ -1048,393 +1047,6 @@ __decorate([
|
|
|
1048
1047
|
], TranslationController.prototype, "vegaPublicAPIRuntimeMetricsSlimmer", void 0);
|
|
1049
1048
|
const VegaTranslation = new TranslationController();
|
|
1050
1049
|
|
|
1051
|
-
/**
|
|
1052
|
-
* Manager for storing and retrieving the extension context associated with each rich text editor host element.
|
|
1053
|
-
*
|
|
1054
|
-
* @todo Currently, there are three types of contexts in RTE: toolbar render context, extension context, and DTO render context. The second and third types are bound to the extension context via host props. We are considering optimizing these three types of contexts to make the program more flexible and easier to maintain.
|
|
1055
|
-
*/
|
|
1056
|
-
class RTEExtensionContextManager {
|
|
1057
|
-
constructor() {
|
|
1058
|
-
this.extensionContextMap = new WeakMap();
|
|
1059
|
-
}
|
|
1060
|
-
/**
|
|
1061
|
-
* Store the extension context for the given rich text editor host element.
|
|
1062
|
-
*
|
|
1063
|
-
* @param {RTEExtensionContext} context - The extension context to store.
|
|
1064
|
-
*/
|
|
1065
|
-
updateExtensionContext(context) {
|
|
1066
|
-
if (context && context.host) {
|
|
1067
|
-
let newContext = context;
|
|
1068
|
-
const existingContext = this.extensionContextMap.get(context.host);
|
|
1069
|
-
// If there is already an existing context for the host, merge the new context with the existing one to avoid overwriting any properties that are not included in the new context.
|
|
1070
|
-
if (existingContext) {
|
|
1071
|
-
newContext = Object.assign(Object.assign({}, existingContext), context);
|
|
1072
|
-
}
|
|
1073
|
-
this.extensionContextMap.set(context.host, newContext);
|
|
1074
|
-
}
|
|
1075
|
-
}
|
|
1076
|
-
/**
|
|
1077
|
-
* Get the extension context for the given rich text editor host element.
|
|
1078
|
-
*
|
|
1079
|
-
* @typedef HTMLVegaRichTextEditorElement - The type definition for the rich text editor host element.
|
|
1080
|
-
* @param {Nullable<HTMLVegaRichTextEditorElement>} el - The host rich text editor element.
|
|
1081
|
-
* @returns {Nullable<RTEExtensionContext>} - The extension context associated with the host.
|
|
1082
|
-
*/
|
|
1083
|
-
getExtensionContext(el) {
|
|
1084
|
-
return el ? this.extensionContextMap.get(el) : null;
|
|
1085
|
-
}
|
|
1086
|
-
}
|
|
1087
|
-
const RTEExtensionContextManager$1 = new RTEExtensionContextManager();
|
|
1088
|
-
|
|
1089
|
-
/**
|
|
1090
|
-
* Base renderer for Vega Rich Text Editor.
|
|
1091
|
-
*/
|
|
1092
|
-
class VegaRTEExtensionRenderer extends VegaRTEBaseRenderer {
|
|
1093
|
-
/**
|
|
1094
|
-
* Returns the styles to be injected into the RTE scope.
|
|
1095
|
-
* Override this method to provide custom styles for the custom blocks or nodes.
|
|
1096
|
-
*
|
|
1097
|
-
* @returns {string} - The styles as a string.
|
|
1098
|
-
*/
|
|
1099
|
-
injectRTEScopeStyles() {
|
|
1100
|
-
return '';
|
|
1101
|
-
}
|
|
1102
|
-
/**
|
|
1103
|
-
* Renders the given data as a DOM element.
|
|
1104
|
-
*
|
|
1105
|
-
* @param {RTEBlock | RTENode} renderData - The data to render, which can be a block or a node.
|
|
1106
|
-
* @param {RTERenderContext} rteContext - The rte editor context.
|
|
1107
|
-
* @param {VegaRTECreateElementFunction} createElement - The function to create a DOM element.
|
|
1108
|
-
* @returns {VegaRTERenderResult} - The rendered DOM element.
|
|
1109
|
-
*/
|
|
1110
|
-
render(renderData, rteContext, createElement) {
|
|
1111
|
-
var _a;
|
|
1112
|
-
const element = this.doRender(createElement, renderData, rteContext);
|
|
1113
|
-
this.fallbackRegisterRef(element, renderData);
|
|
1114
|
-
this.appendChildren(((_a = element.childrenContainerGetter) === null || _a === void 0 ? void 0 : _a.call(element)) || element, renderData, rteContext, createElement);
|
|
1115
|
-
return element;
|
|
1116
|
-
}
|
|
1117
|
-
/**
|
|
1118
|
-
* Register the reference of the element in the rendering registry.
|
|
1119
|
-
*
|
|
1120
|
-
* @param {RTEBlock | RTENode} renderData - The data to register with the element.
|
|
1121
|
-
* @returns {VegaRTEUseRef} - The function to register the element.
|
|
1122
|
-
*/
|
|
1123
|
-
useRef(renderData) {
|
|
1124
|
-
renderData[VegaRTEExtensionRenderer.REGISTER_REF_FLAG] = true;
|
|
1125
|
-
return function (element) {
|
|
1126
|
-
if (element) {
|
|
1127
|
-
stateEntityRenderingRegistry.register(element, renderData);
|
|
1128
|
-
}
|
|
1129
|
-
};
|
|
1130
|
-
}
|
|
1131
|
-
/**
|
|
1132
|
-
* Get a registered renderer by its key.
|
|
1133
|
-
*
|
|
1134
|
-
* @param {string} key - The key of the renderer.
|
|
1135
|
-
* @returns {Nullable<BaseRenderer>} - The registered renderer or null if not found.
|
|
1136
|
-
*/
|
|
1137
|
-
getDTORenderer(key) {
|
|
1138
|
-
return RTEDTORendererManager.getRTERenderer(key);
|
|
1139
|
-
}
|
|
1140
|
-
/**
|
|
1141
|
-
* Get the extension context for the given rich text editor host element.
|
|
1142
|
-
*
|
|
1143
|
-
* @typedef HTMLVegaRichTextEditorElement - The type definition for the rich text editor host element.
|
|
1144
|
-
* @param {HTMLVegaRichTextEditorElement} el - The host rich text editor element.
|
|
1145
|
-
* @returns {Nullable<RTEExtensionContext>} - The extension context associated with the host.
|
|
1146
|
-
*/
|
|
1147
|
-
getExtensionContext(el) {
|
|
1148
|
-
return RTEExtensionContextManager$1.getExtensionContext(el);
|
|
1149
|
-
}
|
|
1150
|
-
/**
|
|
1151
|
-
* Auto render the block children if the block element is not exist
|
|
1152
|
-
*
|
|
1153
|
-
* @param {VegaRTERenderResult} parentElement - The parent element to append children to.
|
|
1154
|
-
* @param {RTEBlock | RTENode} renderData - The data to render children for.
|
|
1155
|
-
* @param {RTERenderContext} rteContext - The render context.
|
|
1156
|
-
* @param {VegaRTECreateElementFunction} createElement - The function to create a DOM element.
|
|
1157
|
-
*/
|
|
1158
|
-
appendChildren(parentElement, renderData, rteContext, createElement) {
|
|
1159
|
-
if (Array.isArray(renderData['children']) &&
|
|
1160
|
-
renderData['children'].length &&
|
|
1161
|
-
!parentElement['$children$']) {
|
|
1162
|
-
parentElement['$children$'] = renderData['children']
|
|
1163
|
-
.map((child) => {
|
|
1164
|
-
return this.renderChildren(child, rteContext, createElement);
|
|
1165
|
-
})
|
|
1166
|
-
.filter(isNonNullable);
|
|
1167
|
-
}
|
|
1168
|
-
}
|
|
1169
|
-
/**
|
|
1170
|
-
* Render the children node.
|
|
1171
|
-
*
|
|
1172
|
-
* @param {RTENode | RTEBlock} renderData - The node to render children for.
|
|
1173
|
-
* @param {RTERenderContext} rteContext - The render context.
|
|
1174
|
-
* @param {VegaRTECreateElementFunction} createElement - The function to create a DOM element.
|
|
1175
|
-
* @returns {Nullable<VegaRTERenderResult>} - The rendered DOM element.
|
|
1176
|
-
*/
|
|
1177
|
-
renderChildren(renderData, rteContext, createElement) {
|
|
1178
|
-
const renderer = this.getDTORenderer(renderData.type);
|
|
1179
|
-
if (renderer) {
|
|
1180
|
-
return renderer.render(renderData, rteContext, createElement);
|
|
1181
|
-
}
|
|
1182
|
-
}
|
|
1183
|
-
/**
|
|
1184
|
-
* Fallback register reference for the element.
|
|
1185
|
-
*
|
|
1186
|
-
* @param {VegaRTERenderResult} element - The rendered DOM element.
|
|
1187
|
-
* @param {RTEBlock | RTENode} renderData - The data to register with the element.
|
|
1188
|
-
*/
|
|
1189
|
-
fallbackRegisterRef(element, renderData) {
|
|
1190
|
-
if (!renderData[VegaRTEExtensionRenderer.REGISTER_REF_FLAG] &&
|
|
1191
|
-
element['$attrs$'] &&
|
|
1192
|
-
!element['$attrs$']['ref']) {
|
|
1193
|
-
// eslint-disable-next-line jsdoc/require-jsdoc
|
|
1194
|
-
element['$attrs$']['ref'] = this.useRef(renderData);
|
|
1195
|
-
}
|
|
1196
|
-
}
|
|
1197
|
-
}
|
|
1198
|
-
VegaRTEExtensionRenderer.REGISTER_REF_FLAG = '__registeredRef__';
|
|
1199
|
-
|
|
1200
|
-
const patchedBlockClasses = new WeakSet();
|
|
1201
|
-
const annotationHandlersByClass = new WeakMap();
|
|
1202
|
-
/**
|
|
1203
|
-
* Abstract class for Vega Rich Text Editor extensions.
|
|
1204
|
-
*/
|
|
1205
|
-
class VegaRTEExtension {
|
|
1206
|
-
constructor() {
|
|
1207
|
-
/**
|
|
1208
|
-
* The context of the RTE extension, which may include references to the host editor and other relevant information.
|
|
1209
|
-
*/
|
|
1210
|
-
this.extensionContext = null;
|
|
1211
|
-
this.hasCustomStylesRenderers = new Set();
|
|
1212
|
-
}
|
|
1213
|
-
/**
|
|
1214
|
-
* Registers an action handle strategy for a specific node or block class.
|
|
1215
|
-
*
|
|
1216
|
-
* @param {string} nodeOrBlockClassName - The name of the node or block class.
|
|
1217
|
-
* @param {string} actionType - The type of the action.
|
|
1218
|
-
* @param {ActionHandleStrategy<ModifyContentAction | AnnotationAction, RTENode | RTEBlock | VegaRTEContent>} strategy - The strategy to register.
|
|
1219
|
-
*/
|
|
1220
|
-
static registerActionHandleStrategy(nodeOrBlockClassName, actionType, strategy) {
|
|
1221
|
-
ActionHandleStrategyRegistry.register(actionType, nodeOrBlockClassName, strategy);
|
|
1222
|
-
}
|
|
1223
|
-
/**
|
|
1224
|
-
* Registers an action handler interceptor for a specific node or block class.
|
|
1225
|
-
*
|
|
1226
|
-
* @param {string} nodeOrBlockClassName - The name of the node or block class.
|
|
1227
|
-
* @param {string} actionType - The type of the action.
|
|
1228
|
-
* @param {ActionHandlerInterceptor<ModifyContentAction, RTENode | RTEBlock | VegaRTEContent>} strategy - The interceptor to register.
|
|
1229
|
-
*/
|
|
1230
|
-
static registerActionHandlerInterceptor(nodeOrBlockClassName, actionType, strategy) {
|
|
1231
|
-
ActionHandlerInterceptorRegistry.register(actionType, nodeOrBlockClassName, strategy);
|
|
1232
|
-
}
|
|
1233
|
-
/**
|
|
1234
|
-
* Registers a filter styles strategy for a specific block or node class.
|
|
1235
|
-
*
|
|
1236
|
-
* @param {string} blockOrNodeClassName - The name of the block or node class.
|
|
1237
|
-
* @param {RTEFilterStylesStrategy} strategy - The filter styles strategy to register.
|
|
1238
|
-
*/
|
|
1239
|
-
static registerFilterStylesStrategy(blockOrNodeClassName, strategy) {
|
|
1240
|
-
RTEFilterStylesStrategyRegistry.register(blockOrNodeClassName, strategy);
|
|
1241
|
-
}
|
|
1242
|
-
/**
|
|
1243
|
-
* Attach a custom JSON annotation handler to a block DTO class's static `from` flow.
|
|
1244
|
-
*
|
|
1245
|
-
* This is a reusable extension point: any extension can register a handler for an
|
|
1246
|
-
* annotation key and transform the value into block annotations during JSON parsing.
|
|
1247
|
-
*
|
|
1248
|
-
* Safe to call multiple times per class/key/handler — duplicate registrations are no-ops.
|
|
1249
|
-
*
|
|
1250
|
-
* @param {BlockClassWithFrom} BlockClass - Block DTO class to patch.
|
|
1251
|
-
* @param {string} annotationKey - JSON annotation key to read from `block.annotations`.
|
|
1252
|
-
* @param {AnnotationFromJsonHandler} handler - Handler that applies annotation logic to the instance.
|
|
1253
|
-
*/
|
|
1254
|
-
static attachAnnotationFromJson(BlockClass, annotationKey, handler) {
|
|
1255
|
-
var _a, _b;
|
|
1256
|
-
const handlerMap = (_a = annotationHandlersByClass.get(BlockClass)) !== null && _a !== void 0 ? _a : new Map();
|
|
1257
|
-
const handlers = (_b = handlerMap.get(annotationKey)) !== null && _b !== void 0 ? _b : new Set();
|
|
1258
|
-
handlers.add(handler);
|
|
1259
|
-
handlerMap.set(annotationKey, handlers);
|
|
1260
|
-
annotationHandlersByClass.set(BlockClass, handlerMap);
|
|
1261
|
-
if (patchedBlockClasses.has(BlockClass)) {
|
|
1262
|
-
return;
|
|
1263
|
-
}
|
|
1264
|
-
patchedBlockClasses.add(BlockClass);
|
|
1265
|
-
const originalFrom = BlockClass.from.bind(BlockClass);
|
|
1266
|
-
/**
|
|
1267
|
-
* Wrapped static `from` that preserves original behavior and then applies
|
|
1268
|
-
* all registered annotation-from-json handlers for this BlockClass.
|
|
1269
|
-
*
|
|
1270
|
-
* @param {VegaRTEBlockBase} block - Raw JSON block payload.
|
|
1271
|
-
* @param {VegaRTETransformOptions} [options] - Optional transform options.
|
|
1272
|
-
* @returns {RTEBlock} The transformed block instance.
|
|
1273
|
-
*/
|
|
1274
|
-
BlockClass.from = function patchedFrom(block, options) {
|
|
1275
|
-
const instance = originalFrom(block, options);
|
|
1276
|
-
const annotations = block.annotations;
|
|
1277
|
-
const currentHandlerMap = annotationHandlersByClass.get(BlockClass);
|
|
1278
|
-
if (annotations && currentHandlerMap) {
|
|
1279
|
-
currentHandlerMap.forEach((registeredHandlers, key) => {
|
|
1280
|
-
const value = annotations[key];
|
|
1281
|
-
registeredHandlers.forEach((registeredHandler) => {
|
|
1282
|
-
registeredHandler(instance, value, block, options);
|
|
1283
|
-
});
|
|
1284
|
-
});
|
|
1285
|
-
}
|
|
1286
|
-
return instance;
|
|
1287
|
-
};
|
|
1288
|
-
}
|
|
1289
|
-
/**
|
|
1290
|
-
* Lifecycle hook called by the rich text editor before the first render
|
|
1291
|
-
* (during `componentWillLoad`). Override this method to perform per-host
|
|
1292
|
-
* pre-render setup — for example, registering a host-specific toolbar button
|
|
1293
|
-
* renderer via {@link registerToolbarButtonRenderer} so that each editor on
|
|
1294
|
-
* the page gets its own isolated renderer instance.
|
|
1295
|
-
*
|
|
1296
|
-
* The default implementation is a no-op; subclasses may override selectively.
|
|
1297
|
-
*
|
|
1298
|
-
* @typedef HTMLVegaRichTextEditorElement - The type of the host rich text editor element.
|
|
1299
|
-
* @param {HTMLVegaRichTextEditorElement} host - The host rich text editor element that is about to load.
|
|
1300
|
-
*/
|
|
1301
|
-
prepareBeforeLoad(host) {
|
|
1302
|
-
}
|
|
1303
|
-
/**
|
|
1304
|
-
* Initializes the RTE extension with the provided context.
|
|
1305
|
-
*
|
|
1306
|
-
* @param {RTEExtensionContext} context - The context of the RTE extension.
|
|
1307
|
-
*/
|
|
1308
|
-
initialExtensionAfterLoad(context) {
|
|
1309
|
-
this.extensionContext = context;
|
|
1310
|
-
RTEExtensionContextManager$1.updateExtensionContext(context);
|
|
1311
|
-
}
|
|
1312
|
-
/**
|
|
1313
|
-
* Callback method invoked when the extension is destroyed.
|
|
1314
|
-
* Override this method to perform any necessary cleanup.
|
|
1315
|
-
*/
|
|
1316
|
-
destroyExtension() {
|
|
1317
|
-
}
|
|
1318
|
-
/**
|
|
1319
|
-
* Collect custom styles for the extension renderers.
|
|
1320
|
-
* If custom nodes have special styles, override this method to provide the styles.
|
|
1321
|
-
*
|
|
1322
|
-
* @returns {string} - The custom styles as a string.
|
|
1323
|
-
*/
|
|
1324
|
-
collectExtensionRendererStyles() {
|
|
1325
|
-
let styles = '';
|
|
1326
|
-
if (this.hasCustomStylesRenderers.size > 0) {
|
|
1327
|
-
this.hasCustomStylesRenderers.forEach((renderer) => {
|
|
1328
|
-
styles += `${renderer.injectRTEScopeStyles()}\n`;
|
|
1329
|
-
});
|
|
1330
|
-
}
|
|
1331
|
-
return styles;
|
|
1332
|
-
}
|
|
1333
|
-
/**
|
|
1334
|
-
* Register a node type with the extension.
|
|
1335
|
-
*
|
|
1336
|
-
* @param {string} type - The type of the node or block. The type should be a string that uniquely identifies the node or block.
|
|
1337
|
-
* @param {ClassType<RTEBlock | RTENode>} DTOClass - The DTO class to register.
|
|
1338
|
-
*/
|
|
1339
|
-
registerNode(type, DTOClass) {
|
|
1340
|
-
RTEDTOClassManager.registerRTEDTOClass(type, DTOClass);
|
|
1341
|
-
}
|
|
1342
|
-
/**
|
|
1343
|
-
* Register a renderer for a node type with the extension.
|
|
1344
|
-
*
|
|
1345
|
-
* @param {string} type - The type of the node or block. The type should be a string that uniquely identifies the node or block.
|
|
1346
|
-
* @param {BaseRenderer} renderer - The renderer to register.
|
|
1347
|
-
*/
|
|
1348
|
-
registerRenderer(type, renderer) {
|
|
1349
|
-
RTEDTORendererManager.registerRTEDTORenderer(type, renderer);
|
|
1350
|
-
if (renderer instanceof VegaRTEExtensionRenderer && renderer.injectRTEScopeStyles()) {
|
|
1351
|
-
this.hasCustomStylesRenderers.add(renderer);
|
|
1352
|
-
}
|
|
1353
|
-
}
|
|
1354
|
-
/**
|
|
1355
|
-
* Register a toolbar button renderer for the extension.
|
|
1356
|
-
* When a `host` element is provided the renderer is registered in the per-host map
|
|
1357
|
-
* (via {@link RTEDTORendererManager#registerRTEToolbarButtonRendererForHost}), giving
|
|
1358
|
-
* that host an isolated renderer instance that takes precedence over the global singleton.
|
|
1359
|
-
* Omit `host` to fall back to the global registration (backwards-compatible default).
|
|
1360
|
-
*
|
|
1361
|
-
* @param {string} type - The type of the toolbar button.
|
|
1362
|
-
* @param {VegaRTEToolbarButtonRenderer} renderer - The renderer to register.
|
|
1363
|
-
* @param {HTMLVegaRichTextEditorElement} [host] - Optional host element for per-host isolation.
|
|
1364
|
-
*/
|
|
1365
|
-
registerToolbarButtonRenderer(type, renderer, host) {
|
|
1366
|
-
if (host) {
|
|
1367
|
-
RTEDTORendererManager.registerRTEToolbarButtonRendererForHost(host, type, renderer);
|
|
1368
|
-
}
|
|
1369
|
-
else {
|
|
1370
|
-
RTEDTORendererManager.registerRTEToolbarButtonRenderer(type, renderer);
|
|
1371
|
-
}
|
|
1372
|
-
}
|
|
1373
|
-
/**
|
|
1374
|
-
* This is a helper method that utilizes RTEUtils to register common strategies.
|
|
1375
|
-
* Call the method with the class name of the block to make it support basic strategies like:
|
|
1376
|
-
* - Delete children
|
|
1377
|
-
* - Append the children
|
|
1378
|
-
* - Delete the block children content
|
|
1379
|
-
*
|
|
1380
|
-
* @param {string} blockClassName - The class name of the block to register strategies for.
|
|
1381
|
-
*/
|
|
1382
|
-
registerBlockBasicStrategies(blockClassName) {
|
|
1383
|
-
RTEDTOActionStrategyManager.registerBlockBasicStrategies(blockClassName);
|
|
1384
|
-
}
|
|
1385
|
-
/**
|
|
1386
|
-
* Unregister a strategy for a specific action type and block class if not need.
|
|
1387
|
-
*
|
|
1388
|
-
* @param {string} actionType - The special action type or the action class name.
|
|
1389
|
-
* @param {string} blockClassName - The class name of the block to unregister the strategy for.
|
|
1390
|
-
*/
|
|
1391
|
-
unRegisterStrategy(actionType, blockClassName) {
|
|
1392
|
-
ActionHandleStrategyRegistry.unregister(actionType, blockClassName);
|
|
1393
|
-
}
|
|
1394
|
-
/**
|
|
1395
|
-
* Unregister a strategy for a specific action type and block class if not need.
|
|
1396
|
-
*
|
|
1397
|
-
* @param {string} actionType - The special action type or the action class name.
|
|
1398
|
-
* @param {string} blockClassName - The class name of the block to unregister the strategy for.
|
|
1399
|
-
* @param {ActionHandlerInterceptor<ModifyContentAction, RTENode | RTEBlock | VegaRTEContent>} strategy - The interceptor to unregister.
|
|
1400
|
-
*/
|
|
1401
|
-
unRegisterInterceptor(actionType, blockClassName, strategy) {
|
|
1402
|
-
ActionHandlerInterceptorRegistry.unregister(actionType, blockClassName, strategy);
|
|
1403
|
-
}
|
|
1404
|
-
/**
|
|
1405
|
-
* Register an element to block DTO class strategy.
|
|
1406
|
-
*
|
|
1407
|
-
* @param {ElementToDTOStrategy} strategy - The strategy to register.
|
|
1408
|
-
*/
|
|
1409
|
-
registerElementToBlockDTOClassStrategy(strategy) {
|
|
1410
|
-
ElementToDTOClassStrategyManager.registerElementToBlockStrategy(strategy);
|
|
1411
|
-
}
|
|
1412
|
-
/**
|
|
1413
|
-
* Register an element to node DTO class strategy.
|
|
1414
|
-
*
|
|
1415
|
-
* @param {ElementToDTOStrategy} strategy - The strategy to register.
|
|
1416
|
-
*/
|
|
1417
|
-
registerElementToNodeDTOClassStrategy(strategy) {
|
|
1418
|
-
ElementToDTOClassStrategyManager.registerElementToNodeStrategy(strategy);
|
|
1419
|
-
}
|
|
1420
|
-
/**
|
|
1421
|
-
* Get the registered element to node DTO class strategies.
|
|
1422
|
-
*
|
|
1423
|
-
* @returns {ElementToDTOStrategy[]} - The registered element to node DTO class strategies.
|
|
1424
|
-
*/
|
|
1425
|
-
getElementToNodeDTOClassStrategies() {
|
|
1426
|
-
return ElementToDTOClassStrategyManager.getElementToNodeStrategies();
|
|
1427
|
-
}
|
|
1428
|
-
/**
|
|
1429
|
-
* Register a custom annotation handler for HTML to DTO conversion.
|
|
1430
|
-
*
|
|
1431
|
-
* @param {AnnotationGeneratorStrategyAbstract} handler - The annotation handler to register.
|
|
1432
|
-
*/
|
|
1433
|
-
registerAnnotationHandler(handler) {
|
|
1434
|
-
htmlElementToAnnotationGenerator.registerHandler(handler);
|
|
1435
|
-
}
|
|
1436
|
-
}
|
|
1437
|
-
|
|
1438
1050
|
/**
|
|
1439
1051
|
* Base class for rendering extension toolbar button in the rich text editor.
|
|
1440
1052
|
* The renderer provides common functionalities for rendering toolbar buttons, including:
|
|
@@ -1469,7 +1081,7 @@ class VegaRTEToolbarButtonRenderer {
|
|
|
1469
1081
|
* @returns {Nullable<RTEExtensionContext>} - The extension context associated with the host.
|
|
1470
1082
|
*/
|
|
1471
1083
|
getExtensionContext(el) {
|
|
1472
|
-
return RTEExtensionContextManager
|
|
1084
|
+
return RTEExtensionContextManager.getExtensionContext(el);
|
|
1473
1085
|
}
|
|
1474
1086
|
/**
|
|
1475
1087
|
* Renders a dropdown component with the specified properties and children.
|
|
@@ -1496,9 +1108,10 @@ class VegaRTEToolbarButtonRenderer {
|
|
|
1496
1108
|
*
|
|
1497
1109
|
* @param {VegaRTECreateElementFunction} h - Create element function.
|
|
1498
1110
|
* @param {(RTEDropdownListItem | RTEDropdownListGroup)[]} itemList - The list of dropdown items.
|
|
1111
|
+
* @param {VegaRTEToolbarRenderContext} editorContext - The render context for the editor.
|
|
1499
1112
|
* @returns {VegaRTERenderResult} - The render result for the dropdown list.
|
|
1500
1113
|
*/
|
|
1501
|
-
renderDropdownListTemplate(h, itemList) {
|
|
1114
|
+
renderDropdownListTemplate(h, itemList, editorContext) {
|
|
1502
1115
|
return h('div', {
|
|
1503
1116
|
slot: 'items',
|
|
1504
1117
|
onMouseDown: this.preventDefault,
|
|
@@ -1513,8 +1126,8 @@ class VegaRTEToolbarButtonRenderer {
|
|
|
1513
1126
|
h('style', { nonce: vegaNonceManager.nonce }, '.rte-dropdown-list vega-dropdown-group vega-dropdown-group { padding-left: 4px }'),
|
|
1514
1127
|
...itemList.map((item) => {
|
|
1515
1128
|
return 'children' in item
|
|
1516
|
-
? this.renderDropdownGroup(h, item)
|
|
1517
|
-
: this.renderDropdownItem(h, item);
|
|
1129
|
+
? this.renderDropdownGroup(h, item, editorContext)
|
|
1130
|
+
: this.renderDropdownItem(h, item, editorContext);
|
|
1518
1131
|
}),
|
|
1519
1132
|
]);
|
|
1520
1133
|
}
|
|
@@ -1523,32 +1136,34 @@ class VegaRTEToolbarButtonRenderer {
|
|
|
1523
1136
|
*
|
|
1524
1137
|
* @param {VegaRTECreateElementFunction} h - Create element function.
|
|
1525
1138
|
* @param {RTEDropdownListItem} item - The dropdown item.
|
|
1139
|
+
* @param {VegaRTEToolbarRenderContext} editorContext - The render context for the editor.
|
|
1526
1140
|
* @returns {VegaRTERenderResult} - The render result for the dropdown item.
|
|
1527
1141
|
*/
|
|
1528
|
-
renderDropdownItem(h, item) {
|
|
1142
|
+
renderDropdownItem(h, item, editorContext) {
|
|
1529
1143
|
return h('vega-dropdown-item', {
|
|
1530
1144
|
key: item.key,
|
|
1531
1145
|
itemKey: item.key,
|
|
1532
|
-
label: item.label,
|
|
1146
|
+
label: editorContext.translation.t(item.label),
|
|
1533
1147
|
prefixIcon: item.icon,
|
|
1534
1148
|
});
|
|
1535
1149
|
}
|
|
1536
1150
|
/**
|
|
1537
|
-
* Renders a dropdown
|
|
1151
|
+
* Renders a dropdown group for the toolbar button.
|
|
1538
1152
|
*
|
|
1539
1153
|
* @param {VegaRTECreateElementFunction} h - Create element function.
|
|
1540
1154
|
* @param {RTEDropdownListGroup} item - The dropdown group.
|
|
1541
|
-
* @
|
|
1155
|
+
* @param {VegaRTEToolbarRenderContext} editorContext - The render context for the editor.
|
|
1156
|
+
* @returns {VegaRTERenderResult} - The render result for the dropdown group.
|
|
1542
1157
|
*/
|
|
1543
|
-
renderDropdownGroup(h, item) {
|
|
1158
|
+
renderDropdownGroup(h, item, editorContext) {
|
|
1544
1159
|
return h('vega-dropdown-group', {
|
|
1545
1160
|
key: item.key,
|
|
1546
|
-
label: item.label,
|
|
1161
|
+
label: editorContext.translation.t(item.label),
|
|
1547
1162
|
divide: false,
|
|
1548
1163
|
}, item.children.map((child) => {
|
|
1549
1164
|
return 'children' in child
|
|
1550
|
-
? this.renderDropdownGroup(h, child)
|
|
1551
|
-
: this.renderDropdownItem(h, child);
|
|
1165
|
+
? this.renderDropdownGroup(h, child, editorContext)
|
|
1166
|
+
: this.renderDropdownItem(h, child, editorContext);
|
|
1552
1167
|
}));
|
|
1553
1168
|
}
|
|
1554
1169
|
/**
|
|
@@ -1607,7 +1222,7 @@ class VegaRTEToolbarButtonRenderer {
|
|
|
1607
1222
|
return h('vega-font', {
|
|
1608
1223
|
variant: 'font-field-label-sm',
|
|
1609
1224
|
color: isDisabled ? 'text-disabled' : 'text-primary',
|
|
1610
|
-
}, label);
|
|
1225
|
+
}, editorContext.translation.t(label));
|
|
1611
1226
|
}
|
|
1612
1227
|
return null;
|
|
1613
1228
|
}
|
|
@@ -1789,7 +1404,7 @@ class RTETokenToolbarButtonRenderer extends VegaRTEToolbarButtonRenderer {
|
|
|
1789
1404
|
showArrowIcon: true,
|
|
1790
1405
|
tooltip: { text: 'Insert token' },
|
|
1791
1406
|
}),
|
|
1792
|
-
this.renderDropdownListTemplate(createElement, this.tokenList),
|
|
1407
|
+
this.renderDropdownListTemplate(createElement, this.tokenList, editorContext),
|
|
1793
1408
|
]);
|
|
1794
1409
|
}
|
|
1795
1410
|
/**
|
|
@@ -1971,13 +1586,8 @@ class RTETokenNodeRenderer extends VegaRTEExtensionRenderer {
|
|
|
1971
1586
|
|
|
1972
1587
|
/**
|
|
1973
1588
|
* Toolbar button renderer for language selection in Vega Rich Text Editor.
|
|
1974
|
-
*
|
|
1975
|
-
*
|
|
1976
|
-
* **own** instance of this renderer, registered in the per-host map inside
|
|
1977
|
-
* {@link RTEDTORendererManager} via {@link VegaRTEExtension#prepareBeforeLoad}. Because
|
|
1978
|
-
* every editor has a dedicated renderer, all state (label DOM ref, selected language, and
|
|
1979
|
-
* the language-change callback) is held in plain instance fields — no WeakMaps or shared
|
|
1980
|
-
* singletons are required.
|
|
1589
|
+
* Each editor host gets its own instance, registered via
|
|
1590
|
+
* {@link VegaRTEExtension#prepareBeforeLoad}, so renderer state is held in plain fields.
|
|
1981
1591
|
*/
|
|
1982
1592
|
class RTELanguageToolbarButtonRenderer extends VegaRTEToolbarButtonRenderer {
|
|
1983
1593
|
constructor(languageList, languageChangeCallback, selectedLanguage = '') {
|
|
@@ -1986,10 +1596,9 @@ class RTELanguageToolbarButtonRenderer extends VegaRTEToolbarButtonRenderer {
|
|
|
1986
1596
|
this.languageChangeCallback = null;
|
|
1987
1597
|
this.selectedLanguage = '';
|
|
1988
1598
|
this.labelRef = null;
|
|
1599
|
+
this.translation = null;
|
|
1989
1600
|
/**
|
|
1990
|
-
* Handles the language selection event.
|
|
1991
|
-
* Because each editor has its own renderer instance, the language-change callback
|
|
1992
|
-
* is stored directly on this instance — no indirect context lookup is needed.
|
|
1601
|
+
* Handles the language selection event from the dropdown.
|
|
1993
1602
|
*
|
|
1994
1603
|
* @param {string} itemKey - The key of the selected language item.
|
|
1995
1604
|
*/
|
|
@@ -2004,15 +1613,18 @@ class RTELanguageToolbarButtonRenderer extends VegaRTEToolbarButtonRenderer {
|
|
|
2004
1613
|
this.selectedLanguage = selectedLanguage;
|
|
2005
1614
|
}
|
|
2006
1615
|
/**
|
|
2007
|
-
* Updates the selected language and refreshes the button label text in-place
|
|
2008
|
-
* without
|
|
1616
|
+
* Updates the selected language and refreshes the button label text in-place
|
|
1617
|
+
* without a full toolbar re-render. The label is routed through the translation
|
|
1618
|
+
* helper so localization is preserved on imperative updates.
|
|
2009
1619
|
*
|
|
2010
1620
|
* @param {string} language The language key to set as selected.
|
|
2011
1621
|
*/
|
|
2012
1622
|
setSelectedLanguage(language) {
|
|
1623
|
+
var _a;
|
|
2013
1624
|
this.selectedLanguage = language;
|
|
2014
|
-
if (this.labelRef) {
|
|
2015
|
-
|
|
1625
|
+
if (((_a = this.labelRef) === null || _a === void 0 ? void 0 : _a.firstChild) && this.translation) {
|
|
1626
|
+
const label = this.getLanguageLabelByKey(language);
|
|
1627
|
+
this.labelRef.firstChild.nodeValue = this.translation.t(label);
|
|
2016
1628
|
}
|
|
2017
1629
|
}
|
|
2018
1630
|
/**
|
|
@@ -2027,7 +1639,8 @@ class RTELanguageToolbarButtonRenderer extends VegaRTEToolbarButtonRenderer {
|
|
|
2027
1639
|
* @inheritDoc
|
|
2028
1640
|
*/
|
|
2029
1641
|
render(createElement, editorContext) {
|
|
2030
|
-
|
|
1642
|
+
const translatedSource = this.languageList.map((item) => this.translateDropdownEntry(item, editorContext));
|
|
1643
|
+
return this.renderDropdown(createElement, editorContext, { source: translatedSource }, [
|
|
2031
1644
|
this.renderButton(createElement, editorContext, {
|
|
2032
1645
|
label: this.getLanguageLabelByKey(this.selectedLanguage),
|
|
2033
1646
|
showArrowIcon: true,
|
|
@@ -2042,6 +1655,7 @@ class RTELanguageToolbarButtonRenderer extends VegaRTEToolbarButtonRenderer {
|
|
|
2042
1655
|
* @inheritDoc
|
|
2043
1656
|
*/
|
|
2044
1657
|
renderButtonLabel(h, editorContext, label) {
|
|
1658
|
+
this.translation = editorContext.translation;
|
|
2045
1659
|
const isDisabled = this.isDisabled(editorContext);
|
|
2046
1660
|
return h('vega-font', {
|
|
2047
1661
|
variant: 'font-field-label-sm',
|
|
@@ -2050,7 +1664,7 @@ class RTELanguageToolbarButtonRenderer extends VegaRTEToolbarButtonRenderer {
|
|
|
2050
1664
|
ref: (el) => {
|
|
2051
1665
|
this.labelRef = el;
|
|
2052
1666
|
},
|
|
2053
|
-
}, label);
|
|
1667
|
+
}, editorContext.translation.t(label));
|
|
2054
1668
|
}
|
|
2055
1669
|
/* istanbul ignore next */
|
|
2056
1670
|
/**
|
|
@@ -2071,6 +1685,21 @@ class RTELanguageToolbarButtonRenderer extends VegaRTEToolbarButtonRenderer {
|
|
|
2071
1685
|
const language = this.getListItemByKey(this.languageList, key);
|
|
2072
1686
|
return (_a = language === null || language === void 0 ? void 0 : language.label) !== null && _a !== void 0 ? _a : 'Select Language';
|
|
2073
1687
|
}
|
|
1688
|
+
/**
|
|
1689
|
+
* Recursively translates labels in a dropdown entry so that nested
|
|
1690
|
+
* {@link RTEDropdownListGroup} children are also localized.
|
|
1691
|
+
*
|
|
1692
|
+
* @param {RTEDropdownListItem | RTEDropdownListGroup} entry The entry to translate.
|
|
1693
|
+
* @param {VegaRTEToolbarRenderContext} editorContext The render context.
|
|
1694
|
+
* @returns {RTEDropdownListItem | RTEDropdownListGroup} The translated entry.
|
|
1695
|
+
*/
|
|
1696
|
+
translateDropdownEntry(entry, editorContext) {
|
|
1697
|
+
const translatedLabel = editorContext.translation.t(entry.label);
|
|
1698
|
+
if ('children' in entry) {
|
|
1699
|
+
return Object.assign(Object.assign({}, entry), { label: translatedLabel, children: entry.children.map((child) => this.translateDropdownEntry(child, editorContext)) });
|
|
1700
|
+
}
|
|
1701
|
+
return Object.assign(Object.assign({}, entry), { label: translatedLabel });
|
|
1702
|
+
}
|
|
2074
1703
|
}
|
|
2075
1704
|
|
|
2076
1705
|
/**
|
|
@@ -2574,7 +2203,7 @@ class FunctionToolbarButtonRenderer extends VegaRTEToolbarButtonRenderer {
|
|
|
2574
2203
|
showArrowIcon: true,
|
|
2575
2204
|
tooltip: { text: 'Insert function' },
|
|
2576
2205
|
}),
|
|
2577
|
-
this.renderDropdownListTemplate(h, FunctionToolbarButtonRenderer.FUNCTION_LIST),
|
|
2206
|
+
this.renderDropdownListTemplate(h, FunctionToolbarButtonRenderer.FUNCTION_LIST, editorContext),
|
|
2578
2207
|
]);
|
|
2579
2208
|
}
|
|
2580
2209
|
/**
|
|
@@ -3027,7 +2656,7 @@ class VegaRTEFunctionExtension extends VegaRTEExtension {
|
|
|
3027
2656
|
VegaRTEExtension.registerActionHandlerInterceptor(RTETextBlock.name, ModifyContentActionType.PASTE_CONTENT, new PreventPasteContentInterceptor());
|
|
3028
2657
|
})();
|
|
3029
2658
|
|
|
3030
|
-
const tableBlockStylesCss = ".v-rte--extension-table-container{display:table}table.v-rte--extension-table{border-collapse:collapse}table.v-rte--extension-table th,table.v-rte--extension-table td{border:1px solid #ddd;padding:12px;text-align:left;vertical-align:middle;min-width:55px;box-sizing:border-box;position:relative}table.v-rte--extension-table th{background-color:#f2f2f2}.rte-table-setting-popover,.rte-table-dynamic-popover{display:block}table.v-rte--extension-table .v-rte-table-cell-focused::after,table.v-rte--extension-table .v-rte-table-cell-selected::after{content:'';position:absolute;top:0;left:0;right:0;bottom:0;pointer-events:none;background-color:rgba(158, 207, 250, 0.3)}table.v-rte--extension-table:has(.v-rte-table-cell-selected){caret-color:transparent}table.v-rte--extension-table:has(.v-rte-table-cell-selected) ::selection{background-color:transparent}table.v-rte--extension-table:has(.v-rte-table-cell-selected) ::-moz-selection{background-color:transparent}.v-rte--extension-table-caption{padding:8px;border:1px solid #ddd;border-bottom:none;background-color:rgba(var(--v-bg-table-header,
|
|
2659
|
+
const tableBlockStylesCss = ".v-rte--extension-table-container{display:table}table.v-rte--extension-table{border-collapse:collapse}table.v-rte--extension-table th,table.v-rte--extension-table td{border:1px solid #ddd;padding:12px;text-align:left;vertical-align:middle;min-width:55px;box-sizing:border-box;position:relative}table.v-rte--extension-table th{background-color:#f2f2f2}.rte-table-setting-popover,.rte-table-dynamic-popover{display:block}table.v-rte--extension-table .v-rte-table-cell-focused::after,table.v-rte--extension-table .v-rte-table-cell-selected::after{content:'';position:absolute;top:0;left:0;right:0;bottom:0;pointer-events:none;background-color:rgba(158, 207, 250, 0.3)}table.v-rte--extension-table:has(.v-rte-table-cell-selected){caret-color:transparent}table.v-rte--extension-table:has(.v-rte-table-cell-selected) ::selection{background-color:transparent}table.v-rte--extension-table:has(.v-rte-table-cell-selected) ::-moz-selection{background-color:transparent}.v-rte--extension-table-caption{padding:8px;border:1px solid #ddd;border-bottom:none;background-color:rgba(var(--v-bg-table-header, 240, 243, 247, 1));position:relative;display:table-caption;caption-side:top;min-height:22px;text-align:center;word-break:break-word;overflow-wrap:break-word}.v-rte--extension-table-caption.showPlaceholder::before{position:absolute;left:0;right:0;content:attr(data-placeholder);font-family:'Inter', sans-serif;font-size:16px;font-weight:400;line-height:24px;letter-spacing:0;color:rgba(var(--v-text-input-placeholder, 176, 180, 181, 1));text-align:center;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}";
|
|
3031
2660
|
|
|
3032
2661
|
const DELETE_TABLE_BLOCK = 'DELETE_TABLE_BLOCK';
|
|
3033
2662
|
/**
|
|
@@ -3657,7 +3286,7 @@ class TablePopoverBaseRenderer {
|
|
|
3657
3286
|
*/
|
|
3658
3287
|
getTableExtensionContext() {
|
|
3659
3288
|
return this.renderContext
|
|
3660
|
-
? RTEExtensionContextManager
|
|
3289
|
+
? RTEExtensionContextManager.getExtensionContext(this.renderContext.host)
|
|
3661
3290
|
: null;
|
|
3662
3291
|
}
|
|
3663
3292
|
}
|
|
@@ -7751,6 +7380,518 @@ class VegaRTETableExtension extends VegaRTEExtension {
|
|
|
7751
7380
|
VegaRTEExtension.registerFilterStylesStrategy(RTETableHeadCellBlock.dtoName, new TableCellFilterStylesStrategy('th'));
|
|
7752
7381
|
})();
|
|
7753
7382
|
|
|
7383
|
+
/**
|
|
7384
|
+
* Horizontal line node — a decorator node representing `<hr>` in the editor.
|
|
7385
|
+
*/
|
|
7386
|
+
class RTEHorizontalLineNode extends RTEDecoratorNode {
|
|
7387
|
+
constructor(id, parentBlock, annotationMap) {
|
|
7388
|
+
super(id, annotationMap);
|
|
7389
|
+
this.type = 'horizontal-line';
|
|
7390
|
+
this.parent = parentBlock;
|
|
7391
|
+
}
|
|
7392
|
+
/**
|
|
7393
|
+
* @inheritDoc
|
|
7394
|
+
*/
|
|
7395
|
+
toJSON() {
|
|
7396
|
+
return {
|
|
7397
|
+
id: this.id,
|
|
7398
|
+
type: 'horizontal-line',
|
|
7399
|
+
};
|
|
7400
|
+
}
|
|
7401
|
+
/**
|
|
7402
|
+
* @inheritDoc
|
|
7403
|
+
*/
|
|
7404
|
+
clone(parent) {
|
|
7405
|
+
return new RTEHorizontalLineNode(this.id, parent, super.cloneAnnotations());
|
|
7406
|
+
}
|
|
7407
|
+
/**
|
|
7408
|
+
* @inheritDoc
|
|
7409
|
+
*/
|
|
7410
|
+
toHtml() {
|
|
7411
|
+
return '<hr>';
|
|
7412
|
+
}
|
|
7413
|
+
}
|
|
7414
|
+
|
|
7415
|
+
/**
|
|
7416
|
+
* Predicate class provides static methods to check specific conditions on HTML elements or dto instances.
|
|
7417
|
+
*/
|
|
7418
|
+
class Predicate {
|
|
7419
|
+
/**
|
|
7420
|
+
* Checks if the given class name corresponds to a horizontal line block.
|
|
7421
|
+
*
|
|
7422
|
+
* @param {string} className The class name to check.
|
|
7423
|
+
* @returns {boolean} True if the class name corresponds to a horizontal line block, false otherwise.
|
|
7424
|
+
*/
|
|
7425
|
+
static isHorizontalLineBlock(className) {
|
|
7426
|
+
return className === 'RTEHorizontalLineBlock';
|
|
7427
|
+
}
|
|
7428
|
+
}
|
|
7429
|
+
|
|
7430
|
+
/**
|
|
7431
|
+
* Default visual styles for the `<hr>` element in the RTE.
|
|
7432
|
+
* These styles match the CSS applied in `horizontal-line-block-styles.css`.
|
|
7433
|
+
*
|
|
7434
|
+
* @see {@link file://extensions/horizontal-line/renderers/horizontal-line-block-styles.css} — must stay in sync.
|
|
7435
|
+
*/
|
|
7436
|
+
const HR_DEFAULT_STYLES = {
|
|
7437
|
+
display: 'inline-block',
|
|
7438
|
+
width: '100%',
|
|
7439
|
+
height: '4px',
|
|
7440
|
+
backgroundColor: 'rgb(222, 222, 222)',
|
|
7441
|
+
borderWidth: '0px',
|
|
7442
|
+
};
|
|
7443
|
+
/**
|
|
7444
|
+
* Filter styles strategy for horizontal line blocks.
|
|
7445
|
+
* Strips default HR visual styles during output and refills them during input,
|
|
7446
|
+
* ensuring source edit round-trips do not lose information.
|
|
7447
|
+
*/
|
|
7448
|
+
class HorizontalLineFilterStylesStrategy extends RTEFilterStylesStrategy {
|
|
7449
|
+
constructor() {
|
|
7450
|
+
super(...arguments);
|
|
7451
|
+
this.stylesToBeFiltered = HR_DEFAULT_STYLES;
|
|
7452
|
+
this.elementTagName = 'hr';
|
|
7453
|
+
}
|
|
7454
|
+
/**
|
|
7455
|
+
* @inheritDoc
|
|
7456
|
+
*/
|
|
7457
|
+
canFilter(blockOrNodeInstance) {
|
|
7458
|
+
return Predicate.isHorizontalLineBlock(blockOrNodeInstance.dtoName);
|
|
7459
|
+
}
|
|
7460
|
+
/**
|
|
7461
|
+
* @inheritDoc
|
|
7462
|
+
*/
|
|
7463
|
+
canRefill(_blockOrNodeClassName, element) {
|
|
7464
|
+
return element.tagName.toLowerCase() === this.elementTagName;
|
|
7465
|
+
}
|
|
7466
|
+
/**
|
|
7467
|
+
* @inheritDoc
|
|
7468
|
+
*/
|
|
7469
|
+
toCssText() {
|
|
7470
|
+
return this.buildCssTextForStyles(this.elementTagName, this.classNameToBeAdded);
|
|
7471
|
+
}
|
|
7472
|
+
}
|
|
7473
|
+
|
|
7474
|
+
var RTEHorizontalLineExtensionAnnotationTypeEnum;
|
|
7475
|
+
(function (RTEHorizontalLineExtensionAnnotationTypeEnum) {
|
|
7476
|
+
RTEHorizontalLineExtensionAnnotationTypeEnum["HORIZONTAL_LINE"] = "HORIZONTAL_LINE";
|
|
7477
|
+
})(RTEHorizontalLineExtensionAnnotationTypeEnum || (RTEHorizontalLineExtensionAnnotationTypeEnum = {}));
|
|
7478
|
+
/**
|
|
7479
|
+
* Horizontal line annotation.
|
|
7480
|
+
* Mirrors {@link TextStyleAnnotation}: emits the HR default visual styles in
|
|
7481
|
+
* standalone mode (source edit) and the corresponding class in normal mode.
|
|
7482
|
+
* Only added to the block when `autoMatchFormat` is enabled.
|
|
7483
|
+
*/
|
|
7484
|
+
class HorizontalLineAnnotation extends BlockAnnotation {
|
|
7485
|
+
constructor() {
|
|
7486
|
+
super(...arguments);
|
|
7487
|
+
this.type = RTEHorizontalLineExtensionAnnotationTypeEnum.HORIZONTAL_LINE;
|
|
7488
|
+
}
|
|
7489
|
+
/**
|
|
7490
|
+
* Generate the map item for the annotation.
|
|
7491
|
+
*
|
|
7492
|
+
* @returns {[RTEHorizontalLineExtensionAnnotationTypeEnum.HORIZONTAL_LINE, HorizontalLineAnnotation]} Map item.
|
|
7493
|
+
*/
|
|
7494
|
+
static from() {
|
|
7495
|
+
return [RTEHorizontalLineExtensionAnnotationTypeEnum.HORIZONTAL_LINE, new HorizontalLineAnnotation()];
|
|
7496
|
+
}
|
|
7497
|
+
/**
|
|
7498
|
+
* Get the default styles for the horizontal line element.
|
|
7499
|
+
*
|
|
7500
|
+
* @returns {AnnotationStyle} The default styles.
|
|
7501
|
+
*/
|
|
7502
|
+
static getDefaultStyles() {
|
|
7503
|
+
return HR_DEFAULT_STYLES;
|
|
7504
|
+
}
|
|
7505
|
+
/**
|
|
7506
|
+
* @inheritDoc
|
|
7507
|
+
*/
|
|
7508
|
+
toJSON() {
|
|
7509
|
+
// HR identity is captured by the block type; nothing to serialize.
|
|
7510
|
+
return null;
|
|
7511
|
+
}
|
|
7512
|
+
/**
|
|
7513
|
+
* @inheritDoc
|
|
7514
|
+
*/
|
|
7515
|
+
clone() {
|
|
7516
|
+
return new HorizontalLineAnnotation();
|
|
7517
|
+
}
|
|
7518
|
+
/**
|
|
7519
|
+
* @inheritDoc
|
|
7520
|
+
*/
|
|
7521
|
+
renderClass(options) {
|
|
7522
|
+
if (options === null || options === void 0 ? void 0 : options.standalone)
|
|
7523
|
+
return null;
|
|
7524
|
+
return 'v-rte-horizontal-line-hr';
|
|
7525
|
+
}
|
|
7526
|
+
/**
|
|
7527
|
+
* @inheritDoc
|
|
7528
|
+
*/
|
|
7529
|
+
renderStyle(options) {
|
|
7530
|
+
if (!(options === null || options === void 0 ? void 0 : options.standalone))
|
|
7531
|
+
return null;
|
|
7532
|
+
return HorizontalLineAnnotation.getDefaultStyles();
|
|
7533
|
+
}
|
|
7534
|
+
}
|
|
7535
|
+
|
|
7536
|
+
/**
|
|
7537
|
+
* Horizontal line block — a block containing a single `<hr>` decorator node.
|
|
7538
|
+
*/
|
|
7539
|
+
class RTEHorizontalLineBlock extends RTEBlock {
|
|
7540
|
+
constructor(id, options) {
|
|
7541
|
+
super(id);
|
|
7542
|
+
this.dtoName = RTEHorizontalLineBlock.dtoName;
|
|
7543
|
+
this.type = 'horizontal-line';
|
|
7544
|
+
this.children = [];
|
|
7545
|
+
const { autoMatchFormat = true } = options !== null && options !== void 0 ? options : {};
|
|
7546
|
+
if (autoMatchFormat) {
|
|
7547
|
+
this.annotationMap = new Map([HorizontalLineAnnotation.from()]);
|
|
7548
|
+
}
|
|
7549
|
+
}
|
|
7550
|
+
/**
|
|
7551
|
+
* Creates an RTEHorizontalLineBlock from a JSON representation.
|
|
7552
|
+
*
|
|
7553
|
+
* @param {VegaRTECustomBlock} block - The block JSON to convert.
|
|
7554
|
+
* @param {VegaRTETransformOptions} [options] - Transformation options.
|
|
7555
|
+
* @returns {RTEHorizontalLineBlock} The created block instance.
|
|
7556
|
+
*/
|
|
7557
|
+
static from(block, options = { autoMatchFormat: true }) {
|
|
7558
|
+
var _a, _b;
|
|
7559
|
+
const hrBlock = new RTEHorizontalLineBlock(block.id, options);
|
|
7560
|
+
const nodeId = ((_b = (_a = block.children) === null || _a === void 0 ? void 0 : _a[0]) === null || _b === void 0 ? void 0 : _b.id) || generateUUID();
|
|
7561
|
+
const node = new RTEHorizontalLineNode(nodeId, hrBlock);
|
|
7562
|
+
hrBlock.children = [node];
|
|
7563
|
+
if (block.annotations) {
|
|
7564
|
+
RTEBlock.convertAnnotationsToMap(hrBlock.annotationMap, block.annotations);
|
|
7565
|
+
}
|
|
7566
|
+
return hrBlock;
|
|
7567
|
+
}
|
|
7568
|
+
/**
|
|
7569
|
+
* Creates a new RTEHorizontalLineBlock with a child node.
|
|
7570
|
+
*
|
|
7571
|
+
* @param {VegaRTEBlockAnnotations} [annotations] - Optional annotations (e.g. customStyle overrides).
|
|
7572
|
+
* @param {VegaRTETransformOptions} [options] - Transformation options.
|
|
7573
|
+
* @returns {RTEHorizontalLineBlock} A new block instance.
|
|
7574
|
+
*/
|
|
7575
|
+
static create(annotations, options = { autoMatchFormat: true }) {
|
|
7576
|
+
const hrBlock = new RTEHorizontalLineBlock(generateUUID(), options);
|
|
7577
|
+
const node = new RTEHorizontalLineNode(generateUUID(), hrBlock);
|
|
7578
|
+
hrBlock.children = [node];
|
|
7579
|
+
if (annotations) {
|
|
7580
|
+
RTEBlock.convertAnnotationsToMap(hrBlock.annotationMap, annotations);
|
|
7581
|
+
}
|
|
7582
|
+
return hrBlock;
|
|
7583
|
+
}
|
|
7584
|
+
/**
|
|
7585
|
+
* @inheritDoc
|
|
7586
|
+
*/
|
|
7587
|
+
toJSON() {
|
|
7588
|
+
return Object.assign(Object.assign({}, super.toJSON()), { type: 'horizontal-line', children: this.children.map((node) => node.toJSON()) });
|
|
7589
|
+
}
|
|
7590
|
+
/**
|
|
7591
|
+
* @inheritDoc
|
|
7592
|
+
*/
|
|
7593
|
+
toHtml(options) {
|
|
7594
|
+
const attrStr = super.generateAttributeString(options);
|
|
7595
|
+
return `<hr${attrStr}>`;
|
|
7596
|
+
}
|
|
7597
|
+
/**
|
|
7598
|
+
* @inheritDoc
|
|
7599
|
+
*/
|
|
7600
|
+
isNotEmpty() {
|
|
7601
|
+
return this.children.length > 0;
|
|
7602
|
+
}
|
|
7603
|
+
/**
|
|
7604
|
+
* @inheritDoc
|
|
7605
|
+
*/
|
|
7606
|
+
getLastNode() {
|
|
7607
|
+
return this.children[this.children.length - 1];
|
|
7608
|
+
}
|
|
7609
|
+
/**
|
|
7610
|
+
* @inheritDoc
|
|
7611
|
+
*/
|
|
7612
|
+
clone(parent) {
|
|
7613
|
+
const clonedBlock = new RTEHorizontalLineBlock(this.id);
|
|
7614
|
+
clonedBlock.children = this.children.map((node) => node.clone(clonedBlock));
|
|
7615
|
+
clonedBlock.annotationMap = super.cloneAnnotations();
|
|
7616
|
+
clonedBlock.parent = parent;
|
|
7617
|
+
return clonedBlock;
|
|
7618
|
+
}
|
|
7619
|
+
}
|
|
7620
|
+
RTEHorizontalLineBlock.dtoName = 'RTEHorizontalLineBlock';
|
|
7621
|
+
|
|
7622
|
+
const horizontalLineBlockStylesCss = ".v-rte-horizontal-line{padding:8px 0;overflow:hidden}.v-rte-horizontal-line .v-rte-horizontal-line-hr{display:inline-block;width:100%;height:4px;border-width:0px;background-color:rgb(222, 222, 222)}";
|
|
7623
|
+
|
|
7624
|
+
/**
|
|
7625
|
+
* Renderer for horizontal line blocks in the rich text editor.
|
|
7626
|
+
*/
|
|
7627
|
+
class RTEHorizontalLineBlockRenderer extends VegaRTEExtensionRenderer {
|
|
7628
|
+
/**
|
|
7629
|
+
* @inheritDoc
|
|
7630
|
+
*/
|
|
7631
|
+
doRender(createElement, block, rteContext) {
|
|
7632
|
+
const node = block.children[0];
|
|
7633
|
+
const customStyles = block.getStyles(rteContext);
|
|
7634
|
+
const annotationClasses = block.getClasses(rteContext);
|
|
7635
|
+
const hrClass = [RTEDecoratorNode.DECORATOR_NODE_CLASS, annotationClasses]
|
|
7636
|
+
.filter(Boolean)
|
|
7637
|
+
.join(' ');
|
|
7638
|
+
return createElement('div', {
|
|
7639
|
+
key: block.id,
|
|
7640
|
+
class: `v-rte-horizontal-line ${RTEDecoratorNode.DECORATOR_CONTAINER_CLASS}`,
|
|
7641
|
+
ref: this.useRef(block),
|
|
7642
|
+
}, [
|
|
7643
|
+
createElement('hr', {
|
|
7644
|
+
key: (node === null || node === void 0 ? void 0 : node.id) || block.id + '-hr',
|
|
7645
|
+
class: hrClass,
|
|
7646
|
+
style: Object.keys(customStyles).length > 0 ? customStyles : undefined,
|
|
7647
|
+
ref: node ? this.useRef(node) : undefined,
|
|
7648
|
+
}),
|
|
7649
|
+
]);
|
|
7650
|
+
}
|
|
7651
|
+
/**
|
|
7652
|
+
* @inheritDoc
|
|
7653
|
+
*/
|
|
7654
|
+
injectRTEScopeStyles() {
|
|
7655
|
+
return horizontalLineBlockStylesCss;
|
|
7656
|
+
}
|
|
7657
|
+
}
|
|
7658
|
+
|
|
7659
|
+
const HorizontalLine = {
|
|
7660
|
+
icon: `<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 640 512"><!--! Font Awesome Pro 6.3.0 by @fontawesome - https://fontawesome.com License - https://fontawesome.com/license (Commercial License) Copyright 2023 Fonticons, Inc. --><path fill="currentColor" d="M0 224H32 608h32v64H608 32 0V224z"/></svg>`,
|
|
7661
|
+
};
|
|
7662
|
+
|
|
7663
|
+
const INSERT_HORIZONTAL_LINE_BLOCK = 'INSERT_HORIZONTAL_LINE_BLOCK';
|
|
7664
|
+
/**
|
|
7665
|
+
* Action to insert a horizontal line block into the rich text editor.
|
|
7666
|
+
* Carries cursor position info to support split-paragraph insertion (same pattern as InsertImageToBlockAction).
|
|
7667
|
+
*/
|
|
7668
|
+
class InsertHorizontalLineBlockAction extends ModifyContentAction {
|
|
7669
|
+
constructor(splitPointNode, startOffsetOfNode = 0) {
|
|
7670
|
+
super();
|
|
7671
|
+
this.type = INSERT_HORIZONTAL_LINE_BLOCK;
|
|
7672
|
+
this.splitPointNode = splitPointNode;
|
|
7673
|
+
this.startOffsetOfNode = startOffsetOfNode;
|
|
7674
|
+
}
|
|
7675
|
+
}
|
|
7676
|
+
|
|
7677
|
+
/**
|
|
7678
|
+
* Toolbar button renderer for horizontal line insertion.
|
|
7679
|
+
*/
|
|
7680
|
+
class RTEHorizontalLineToolbarButtonRenderer extends VegaRTEToolbarButtonRenderer {
|
|
7681
|
+
/**
|
|
7682
|
+
* Renders the horizontal line toolbar button.
|
|
7683
|
+
*
|
|
7684
|
+
* @param {VegaRTECreateElementFunction} createElement - The function to create elements.
|
|
7685
|
+
* @param {VegaRTEToolbarRenderContext} editorContext - The render context.
|
|
7686
|
+
* @returns {VegaRTERenderResult} The rendered toolbar button.
|
|
7687
|
+
*/
|
|
7688
|
+
render(createElement, editorContext) {
|
|
7689
|
+
return this.renderButton(createElement, editorContext, {
|
|
7690
|
+
icon: 'horizontal-line',
|
|
7691
|
+
tooltip: { text: VegaInternalTranslation.t('Horizontal line') },
|
|
7692
|
+
});
|
|
7693
|
+
}
|
|
7694
|
+
/**
|
|
7695
|
+
* @inheritDoc
|
|
7696
|
+
*/
|
|
7697
|
+
isDisabled(editorContext) {
|
|
7698
|
+
const context = this.getExtensionContext(editorContext.host);
|
|
7699
|
+
if (context) {
|
|
7700
|
+
const { host, getSelectedNodes } = context;
|
|
7701
|
+
const [startNode] = getSelectedNodes();
|
|
7702
|
+
return startNode
|
|
7703
|
+
? host.disabled ||
|
|
7704
|
+
!ActionHandleStrategyRegistry.canHandle(INSERT_HORIZONTAL_LINE_BLOCK, startNode.parent)
|
|
7705
|
+
: host.disabled;
|
|
7706
|
+
}
|
|
7707
|
+
return false;
|
|
7708
|
+
}
|
|
7709
|
+
/**
|
|
7710
|
+
* @inheritDoc
|
|
7711
|
+
*/
|
|
7712
|
+
handleButtonClick(editorContext) {
|
|
7713
|
+
if (this.isDisabled(editorContext)) {
|
|
7714
|
+
return;
|
|
7715
|
+
}
|
|
7716
|
+
const context = this.getExtensionContext(editorContext.host);
|
|
7717
|
+
if (context) {
|
|
7718
|
+
const { host, getSelectedNodes, flushValue } = context;
|
|
7719
|
+
const selectedNodes = getSelectedNodes();
|
|
7720
|
+
const focusNode = selectedNodes[0];
|
|
7721
|
+
const startOffset = editorContext.rteRange.startOffset;
|
|
7722
|
+
const action = new InsertHorizontalLineBlockAction(focusNode, startOffset);
|
|
7723
|
+
if (!focusNode) {
|
|
7724
|
+
host.value.apply(action);
|
|
7725
|
+
}
|
|
7726
|
+
else if (focusNode.parent) {
|
|
7727
|
+
focusNode.parent.apply(action);
|
|
7728
|
+
}
|
|
7729
|
+
if (action.nextFocusNode) {
|
|
7730
|
+
host.value.apply(new UpdateCursorPositionAction(action.nextFocusNode, 0));
|
|
7731
|
+
}
|
|
7732
|
+
flushValue(host.value);
|
|
7733
|
+
}
|
|
7734
|
+
}
|
|
7735
|
+
/**
|
|
7736
|
+
* @inheritDoc
|
|
7737
|
+
*/
|
|
7738
|
+
handleDropdownClick() {
|
|
7739
|
+
// No dropdown for horizontal line
|
|
7740
|
+
}
|
|
7741
|
+
}
|
|
7742
|
+
(() => {
|
|
7743
|
+
VegaInternalIconManager.register({
|
|
7744
|
+
'horizontal-line': HorizontalLine,
|
|
7745
|
+
});
|
|
7746
|
+
})();
|
|
7747
|
+
|
|
7748
|
+
/**
|
|
7749
|
+
* Strategy to convert `<hr>` HTML elements into RTEHorizontalLineBlock instances.
|
|
7750
|
+
*/
|
|
7751
|
+
class HrToHorizontalLineBlockStrategy extends ElementToDTOStrategy {
|
|
7752
|
+
/**
|
|
7753
|
+
* Determines if this strategy can handle the current element.
|
|
7754
|
+
*
|
|
7755
|
+
* @param {HTMLElement[]} elementsArray - Array of elements to process.
|
|
7756
|
+
* @param {number} currentIndex - The current index in the array.
|
|
7757
|
+
* @returns {number} The number of elements this strategy can handle (1 for `<hr>`, 0 otherwise).
|
|
7758
|
+
*/
|
|
7759
|
+
canHandle(elementsArray, currentIndex) {
|
|
7760
|
+
return elementsArray[currentIndex].tagName === 'HR' ? 1 : 0;
|
|
7761
|
+
}
|
|
7762
|
+
/**
|
|
7763
|
+
* Converts the `<hr>` element to an RTEHorizontalLineBlock.
|
|
7764
|
+
* Uses `htmlElementToAnnotationGenerator` to extract annotations (handles refill + filter).
|
|
7765
|
+
*
|
|
7766
|
+
* @param {HTMLElement[]} elementsArray - Array of elements.
|
|
7767
|
+
* @param {VegaRTETransformOptions} [options] - Transformation options.
|
|
7768
|
+
* @returns {Nullable<RTEContentBlock>} The created horizontal line block.
|
|
7769
|
+
*/
|
|
7770
|
+
handle(elementsArray, options) {
|
|
7771
|
+
const element = elementsArray[0];
|
|
7772
|
+
const annotations = htmlElementToAnnotationGenerator.generate(RTEHorizontalLineBlock, element, options);
|
|
7773
|
+
return RTEHorizontalLineBlock.create(annotations, options);
|
|
7774
|
+
}
|
|
7775
|
+
/**
|
|
7776
|
+
* @inheritDoc
|
|
7777
|
+
*/
|
|
7778
|
+
appendChildBlocks() {
|
|
7779
|
+
// `<hr>` is a void element — no children to append.
|
|
7780
|
+
}
|
|
7781
|
+
/**
|
|
7782
|
+
* `<hr>` is a void element — no children to process.
|
|
7783
|
+
*
|
|
7784
|
+
* @returns {boolean} Always false.
|
|
7785
|
+
*/
|
|
7786
|
+
shouldProceedToElementChildren() {
|
|
7787
|
+
return false;
|
|
7788
|
+
}
|
|
7789
|
+
}
|
|
7790
|
+
|
|
7791
|
+
/**
|
|
7792
|
+
* Strategy to handle the insertion of a horizontal line block into the rich text editor.
|
|
7793
|
+
* Follows the same pattern as BlockInsertImageIntoTextStrategy (before/after/split).
|
|
7794
|
+
*/
|
|
7795
|
+
class InsertHorizontalLineBlockStrategy extends ActionHandleStrategy {
|
|
7796
|
+
/**
|
|
7797
|
+
* @inheritDoc
|
|
7798
|
+
*/
|
|
7799
|
+
handleAction(action, target) {
|
|
7800
|
+
const hrBlock = RTEHorizontalLineBlock.create();
|
|
7801
|
+
if (action.splitPointNode instanceof RTETextNode) {
|
|
7802
|
+
const splitNode = action.splitPointNode;
|
|
7803
|
+
const startOffsetOfNode = action.startOffsetOfNode;
|
|
7804
|
+
if (this.isCaretPositionAtBlockEnd(target, splitNode, startOffsetOfNode)) {
|
|
7805
|
+
this.insertAfterWithFocus(action, target, hrBlock);
|
|
7806
|
+
}
|
|
7807
|
+
else if (this.isCaretPositionAtBlockStart(target, splitNode, startOffsetOfNode)) {
|
|
7808
|
+
target.parent.apply(new InsertChildrenBeforeAction(target, hrBlock));
|
|
7809
|
+
action.nextFocusNode = target.getFirstNode();
|
|
7810
|
+
}
|
|
7811
|
+
else {
|
|
7812
|
+
const splitBlockAction = new SplitBlockWithNodeAction(splitNode, startOffsetOfNode);
|
|
7813
|
+
target.apply(splitBlockAction);
|
|
7814
|
+
const nextBlock = this.getNextSiblingBlock(target);
|
|
7815
|
+
target.parent.apply(new InsertChildrenAfterAction(target, hrBlock));
|
|
7816
|
+
action.nextFocusNode = nextBlock.getFirstNode();
|
|
7817
|
+
}
|
|
7818
|
+
}
|
|
7819
|
+
else if (action.splitPointNode) {
|
|
7820
|
+
// Decorator node selected (image, HR, etc.) — insert after current block
|
|
7821
|
+
this.insertAfterWithFocus(action, target, hrBlock);
|
|
7822
|
+
}
|
|
7823
|
+
else {
|
|
7824
|
+
const emptyParagraph = super.createNewParagraph('');
|
|
7825
|
+
target.apply(new AppendChildrenAction([hrBlock, emptyParagraph]));
|
|
7826
|
+
action.nextFocusNode = emptyParagraph.children[0];
|
|
7827
|
+
}
|
|
7828
|
+
}
|
|
7829
|
+
/**
|
|
7830
|
+
* Insert HR after target. If next sibling is focusable (has a text node), move cursor there;
|
|
7831
|
+
* otherwise create an empty paragraph after HR.
|
|
7832
|
+
*
|
|
7833
|
+
* @param {InsertHorizontalLineBlockAction} action - The insert action whose `nextFocusNode` is updated.
|
|
7834
|
+
* @param {RTEBlock} target - The block after which the HR is inserted.
|
|
7835
|
+
* @param {RTEHorizontalLineBlock} hrBlock - The HR block to insert.
|
|
7836
|
+
*/
|
|
7837
|
+
insertAfterWithFocus(action, target, hrBlock) {
|
|
7838
|
+
const nextBlock = this.getNextSiblingBlock(target);
|
|
7839
|
+
const nextFirstNode = nextBlock === null || nextBlock === void 0 ? void 0 : nextBlock.getFirstNode();
|
|
7840
|
+
if (nextFirstNode instanceof RTETextNode) {
|
|
7841
|
+
target.parent.apply(new InsertChildrenAfterAction(target, hrBlock));
|
|
7842
|
+
action.nextFocusNode = nextFirstNode;
|
|
7843
|
+
}
|
|
7844
|
+
else {
|
|
7845
|
+
const emptyParagraph = super.createNewParagraph('');
|
|
7846
|
+
target.parent.apply(new InsertChildrenAfterAction(target, hrBlock, emptyParagraph));
|
|
7847
|
+
action.nextFocusNode = emptyParagraph.children[0];
|
|
7848
|
+
}
|
|
7849
|
+
}
|
|
7850
|
+
/**
|
|
7851
|
+
* Get the next sibling block of the given block.
|
|
7852
|
+
*
|
|
7853
|
+
* @param {RTEBlock} block - The current block.
|
|
7854
|
+
* @returns {RTEBlock | undefined} The next sibling block, or undefined if none.
|
|
7855
|
+
*/
|
|
7856
|
+
getNextSiblingBlock(block) {
|
|
7857
|
+
const parent = block.parent;
|
|
7858
|
+
const siblings = parent.children;
|
|
7859
|
+
const index = siblings.indexOf(block);
|
|
7860
|
+
return siblings[index + 1];
|
|
7861
|
+
}
|
|
7862
|
+
}
|
|
7863
|
+
|
|
7864
|
+
/**
|
|
7865
|
+
* Extension that adds horizontal line (`<hr>`) support to the Vega Rich Text Editor.
|
|
7866
|
+
*/
|
|
7867
|
+
class VegaRTEHorizontalLineExtension extends VegaRTEExtension {
|
|
7868
|
+
constructor() {
|
|
7869
|
+
super();
|
|
7870
|
+
this.blockRenderer = new RTEHorizontalLineBlockRenderer();
|
|
7871
|
+
this.toolbarButtonRenderer = new RTEHorizontalLineToolbarButtonRenderer();
|
|
7872
|
+
// Register basic block strategies (delete, append, paste, etc.)
|
|
7873
|
+
this.registerBlockBasicStrategies(RTEHorizontalLineBlock.name);
|
|
7874
|
+
// Register the block DTO class
|
|
7875
|
+
this.registerNode('horizontal-line', RTEHorizontalLineBlock);
|
|
7876
|
+
// Register the renderer
|
|
7877
|
+
this.registerRenderer('horizontal-line', this.blockRenderer);
|
|
7878
|
+
// Register the toolbar button
|
|
7879
|
+
this.registerToolbarButtonRenderer('horizontalLine', this.toolbarButtonRenderer);
|
|
7880
|
+
// Register HTML → DTO conversion strategy
|
|
7881
|
+
this.registerElementToBlockDTOClassStrategy(new HrToHorizontalLineBlockStrategy());
|
|
7882
|
+
// Register filter styles strategy for source edit round-trip
|
|
7883
|
+
VegaRTEExtension.registerFilterStylesStrategy(RTEHorizontalLineBlock.dtoName, new HorizontalLineFilterStylesStrategy());
|
|
7884
|
+
}
|
|
7885
|
+
}
|
|
7886
|
+
(() => {
|
|
7887
|
+
const insertStrategy = new InsertHorizontalLineBlockStrategy();
|
|
7888
|
+
// Register insert strategy for all block types that can be a target
|
|
7889
|
+
VegaRTEExtension.registerActionHandleStrategy(VegaRTEContent.name, INSERT_HORIZONTAL_LINE_BLOCK, insertStrategy);
|
|
7890
|
+
VegaRTEExtension.registerActionHandleStrategy(RTETextBlock.name, INSERT_HORIZONTAL_LINE_BLOCK, insertStrategy);
|
|
7891
|
+
VegaRTEExtension.registerActionHandleStrategy(RTEImageBlock.name, INSERT_HORIZONTAL_LINE_BLOCK, insertStrategy);
|
|
7892
|
+
VegaRTEExtension.registerActionHandleStrategy(RTEHorizontalLineBlock.name, INSERT_HORIZONTAL_LINE_BLOCK, insertStrategy);
|
|
7893
|
+
})();
|
|
7894
|
+
|
|
7754
7895
|
const ARROW_CHARACTERS = [
|
|
7755
7896
|
{ character: '←', title: 'leftwards simple arrow' },
|
|
7756
7897
|
{ character: '→', title: 'rightwards simple arrow' },
|
|
@@ -8409,7 +8550,7 @@ class RTELineHeightToolbarButtonRenderer extends VegaRTEToolbarButtonRenderer {
|
|
|
8409
8550
|
showArrowIcon: true,
|
|
8410
8551
|
tooltip: { text: VegaInternalTranslation.t('Line Height') },
|
|
8411
8552
|
}),
|
|
8412
|
-
this.renderDropdownListTemplate(createElement, dropdownItems),
|
|
8553
|
+
this.renderDropdownListTemplate(createElement, dropdownItems, editorContext),
|
|
8413
8554
|
]);
|
|
8414
8555
|
}
|
|
8415
8556
|
/**
|
|
@@ -8804,4 +8945,4 @@ class VegaRTETokenExtension extends VegaRTEExtension {
|
|
|
8804
8945
|
VegaRTEExtension.registerActionHandleStrategy(RTEListItemBlock.name, 'INSERT_TOKEN_NODE', insertTokenNodeStrategy);
|
|
8805
8946
|
})();
|
|
8806
8947
|
|
|
8807
|
-
export { ActionHandlerInterceptor as A, InsertNodeToNearestRootAction as I, RTETokenToolbarButtonRenderer as R, VegaLoader as V, VegaNotify as a, VegaEventManager$1 as b, VegaZIndexManager$1 as c, VegaSkeletonLoader as d, VegaTranslation as e, VegaRTETokenExtension as f, VegaRTELanguageExtension as g, VegaRTEDefaultLineHeightOptions as h, VegaRTEFunctionExtension as i, VegaRTETableExtension as j,
|
|
8948
|
+
export { ActionHandlerInterceptor as A, InsertNodeToNearestRootAction as I, RTETokenToolbarButtonRenderer as R, VegaLoader as V, VegaNotify as a, VegaEventManager$1 as b, VegaZIndexManager$1 as c, VegaSkeletonLoader as d, VegaTranslation as e, VegaRTETokenExtension as f, VegaRTELanguageExtension as g, VegaRTEDefaultLineHeightOptions as h, VegaRTEFunctionExtension as i, VegaRTETableExtension as j, VegaRTEHorizontalLineExtension as k, VegaRTESpecialCharactersExtension as l, VegaRTESpecialCharactersEssentials as m, VegaRTESpecialCharactersLatin as n, VegaRTESpecialCharactersMathematical as o, VegaRTESpecialCharactersArrows as p, VegaRTESpecialCharactersCurrency as q, VegaRTESpecialCharactersText as r, VegaRTELineHeightExtension as s, VegaRTEToolbarButtonRenderer as t, RTETokenNode as u, RTETokenNodeRenderer as v, waitForVega as w, RTELanguageToolbarButtonRenderer as x };
|