@globalpayments/vega 2.58.0 → 2.59.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/cjs/{app-globals-26e2fe1e.js → app-globals-a8f5e755.js} +25 -12
- package/dist/cjs/{brand-switch-state-controller-slimmer-5efa1b24.js → brand-switch-state-controller-slimmer-b83a4596.js} +1 -1
- package/dist/cjs/{child-nodes-event-prevent-slimmer-96240a0e.js → child-nodes-event-prevent-slimmer-5df43771.js} +1 -1
- package/dist/cjs/{child-nodes-notify-observer-slimmer-30ba81ac.js → child-nodes-notify-observer-slimmer-34ac3bfc.js} +1 -1
- package/dist/cjs/{code-block-7650c868.js → code-block-4bfae76d.js} +2128 -990
- package/dist/cjs/{component-value-history-controller-slimmer.abstract-a6e4e5bc.js → component-value-history-controller-slimmer.abstract-34f4577a.js} +112 -54
- package/dist/cjs/content-state-0da174e0.js +3692 -0
- package/dist/cjs/{dark-mode-state-controller-slimmer-add5d8a8.js → dark-mode-state-controller-slimmer-17022f93.js} +1 -1
- package/dist/cjs/{dark-mode-style-controller-f9a32d68.js → dark-mode-style-controller-ab0703e1.js} +1 -1
- package/dist/cjs/{deprecated-property-slimmer-4f15005f.js → deprecated-property-slimmer-1eb8f031.js} +1 -1
- package/dist/cjs/{design-token-e771bb16.js → design-token-deb195e9.js} +1 -1
- package/dist/cjs/{dom-node-subject-factory-769dd00f.js → dom-node-subject-factory-bad99695.js} +1 -1
- package/dist/cjs/{dom-node-subject-observer-factory-5aa4cc83.js → dom-node-subject-observer-factory-df6e6df0.js} +1 -1
- package/dist/cjs/{element-appender-slimmer-7f98d16b.js → element-appender-slimmer-299039f1.js} +7 -7
- package/dist/cjs/{event-emit-slimmer-6154c759.js → event-emit-slimmer-efc70b94.js} +3 -3
- package/dist/cjs/{form-field-controller-slimmer-7bb7df10.js → form-field-controller-slimmer-772d1892.js} +24 -24
- package/dist/cjs/{image-annotation-action-6715d6f3.js → image-annotation-action-117fee1f.js} +130 -29
- package/dist/cjs/{index-7700600c.js → index-00ba6623.js} +23 -4
- package/dist/cjs/{index-ee4bc191.js → index-10199ee8.js} +2 -2
- package/dist/cjs/index.cjs.js +23 -23
- package/dist/cjs/{inject-keyboard-manager-f1f781b7.js → inject-keyboard-manager-70382bae.js} +1 -1
- package/dist/cjs/{internal-vega-event-manager-e98944ac.js → internal-vega-event-manager-83065493.js} +1 -1
- package/dist/cjs/{keyboard-manager-0be55fb9.js → keyboard-manager-6858915b.js} +1 -1
- package/dist/cjs/{keyboard-manager-slimmer-92c7227b.js → keyboard-manager-slimmer-faca2038.js} +1 -1
- package/dist/cjs/loader.cjs.js +16 -14
- package/dist/cjs/{object-bbd4ed7f.js → object-e2e28e3d.js} +13 -0
- package/dist/cjs/{public-rules-036795a4.js → public-rules-d1f7a352.js} +11 -9
- package/dist/cjs/{responsive-format-facade-d164ced7.js → responsive-format-facade-20c63e07.js} +4 -4
- package/dist/cjs/{rich-text-editor-required-rule-91eb0e22.js → rich-text-editor-required-rule-fbf8cbab.js} +1 -1
- package/dist/cjs/{static-subject-title-7e7d791a.js → static-subject-title-85732e0f.js} +2 -0
- package/dist/cjs/string-39438062.js +24 -0
- package/dist/cjs/{string-input-formatter-slimmer-dc1747ad.js → string-input-formatter-slimmer-1b757bad.js} +3 -3
- package/dist/cjs/{style-formatter-3e7af35b.js → style-formatter-e08163fd.js} +1 -1
- package/dist/cjs/{sub-state-notify-slimmer-409bbd1a.js → sub-state-notify-slimmer-943eb7cc.js} +2 -2
- package/dist/cjs/{sub-state-observer-slimmer-93d0a609.js → sub-state-observer-slimmer-0788232a.js} +3 -3
- package/dist/cjs/{translation-de7e351e.js → translation-cde4dce3.js} +31 -1
- package/dist/cjs/{translation-slimmer-83bdb9fe.js → translation-slimmer-af399096.js} +1 -1
- package/dist/cjs/{ui-6c069604.js → ui-4ce1fa08.js} +10 -0
- package/dist/cjs/vega-accordion.cjs.entry.js +17 -15
- package/dist/cjs/vega-app-footer.cjs.entry.js +4 -4
- package/dist/cjs/vega-app-header-button.cjs.entry.js +18 -16
- package/dist/cjs/vega-backdrop.cjs.entry.js +2 -2
- package/dist/cjs/vega-banner.cjs.entry.js +6 -6
- package/dist/cjs/vega-bar-chart.cjs.entry.js +1 -1
- package/dist/cjs/vega-box.cjs.entry.js +16 -14
- package/dist/cjs/vega-brand-logo.cjs.entry.js +4 -4
- package/dist/cjs/vega-breadcrumb.cjs.entry.js +7 -7
- package/dist/cjs/vega-button-circle.cjs.entry.js +18 -16
- package/dist/cjs/vega-button-group_2.cjs.entry.js +10 -10
- package/dist/cjs/vega-button-link.cjs.entry.js +7 -7
- package/dist/cjs/vega-button.cjs.entry.js +17 -15
- package/dist/cjs/{vega-calendar_3.cjs.entry.js → vega-calendar_4.cjs.entry.js} +1615 -1096
- package/dist/cjs/vega-card.cjs.entry.js +15 -13
- package/dist/cjs/vega-carousel.cjs.entry.js +17 -16
- package/dist/cjs/vega-checkbox_2.cjs.entry.js +14 -14
- package/dist/cjs/vega-chip.cjs.entry.js +18 -16
- package/dist/cjs/vega-code-block.cjs.entry.js +22 -22
- package/dist/cjs/vega-color-picker.cjs.entry.js +12 -12
- package/dist/cjs/vega-combo-box.cjs.entry.js +15 -15
- package/dist/cjs/vega-counter-badge.cjs.entry.js +1 -1
- package/dist/cjs/vega-date-picker_2.cjs.entry.js +25 -24
- package/dist/cjs/vega-dialog_2.cjs.entry.js +19 -18
- package/dist/cjs/vega-divider.cjs.entry.js +15 -13
- package/dist/cjs/vega-dropdown_5.cjs.entry.js +37 -26
- package/dist/cjs/vega-env-manager-23b8b23c.js +2 -2
- package/dist/cjs/vega-field-error.cjs.entry.js +3 -2
- package/dist/cjs/vega-field-label.cjs.entry.js +6 -6
- package/dist/cjs/vega-file-uploader.cjs.entry.js +13 -13
- package/dist/cjs/vega-flag-icon.cjs.entry.js +15 -13
- package/dist/cjs/vega-flex.cjs.entry.js +16 -14
- package/dist/cjs/vega-font.cjs.entry.js +15 -13
- package/dist/cjs/vega-form.cjs.entry.js +108 -18
- package/dist/cjs/vega-grid.cjs.entry.js +15 -13
- package/dist/cjs/vega-hint.cjs.entry.js +1 -1
- package/dist/cjs/vega-icon.cjs.entry.js +15 -13
- package/dist/cjs/vega-image-uploader.cjs.entry.js +21 -20
- package/dist/cjs/vega-input-credit-card.cjs.entry.js +13 -13
- package/dist/cjs/vega-input-numeric.cjs.entry.js +16 -16
- package/dist/cjs/vega-input-phone-number.cjs.entry.js +18 -17
- package/dist/cjs/vega-input-range.cjs.entry.js +14 -14
- package/dist/cjs/vega-input-select.cjs.entry.js +20 -19
- package/dist/cjs/vega-input.cjs.entry.js +15 -15
- package/dist/cjs/{vega-internal-event-id-bda08efa.js → vega-internal-event-id-ae6e2c13.js} +7 -1
- package/dist/cjs/vega-item-toggle.cjs.entry.js +8 -8
- package/dist/cjs/vega-left-nav_5.cjs.entry.js +21 -20
- package/dist/cjs/vega-line-chart.cjs.entry.js +1 -1
- package/dist/cjs/vega-loader-wrapper_2.cjs.entry.js +14 -12
- package/dist/cjs/vega-page-notification_2.cjs.entry.js +4 -4
- package/dist/cjs/vega-pagination-page-selector-mobile.cjs.entry.js +7 -7
- package/dist/cjs/vega-pagination-page-size-selector-mobile.cjs.entry.js +8 -8
- package/dist/cjs/vega-pagination.cjs.entry.js +18 -16
- package/dist/cjs/vega-pie-chart.cjs.entry.js +1 -1
- package/dist/cjs/vega-popover_2.cjs.entry.js +43 -20
- package/dist/cjs/vega-progress-tracker.cjs.entry.js +8 -8
- package/dist/cjs/vega-radio_2.cjs.entry.js +16 -16
- package/dist/cjs/vega-rich-text-content.cjs.entry.js +273 -175
- package/dist/cjs/vega-rich-text-editor_4.cjs.entry.js +709 -1496
- package/dist/cjs/vega-section-title.cjs.entry.js +1 -1
- package/dist/cjs/vega-segment-control.cjs.entry.js +6 -6
- package/dist/cjs/vega-selection-chip_2.cjs.entry.js +20 -19
- package/dist/cjs/vega-selection-tile_2.cjs.entry.js +15 -15
- package/dist/cjs/vega-sidenav_3.cjs.entry.js +18 -16
- package/dist/cjs/vega-signature-capture.cjs.entry.js +20 -20
- package/dist/cjs/{vega-skeleton-loader-controller-d534f5a1.js → vega-skeleton-loader-controller-b1971f43.js} +3 -3
- package/dist/cjs/vega-skeleton.cjs.entry.js +1 -1
- package/dist/cjs/vega-slot-container.cjs.entry.js +1 -1
- package/dist/cjs/vega-stepper.cjs.entry.js +13 -13
- package/dist/cjs/vega-tab-group_2.cjs.entry.js +8 -8
- package/dist/cjs/vega-table_8.cjs.entry.js +20 -19
- package/dist/cjs/vega-text.cjs.entry.js +2 -2
- package/dist/cjs/vega-textarea.cjs.entry.js +13 -13
- package/dist/cjs/vega-time-picker_2.cjs.entry.js +23 -22
- package/dist/cjs/vega-toggle-switch.cjs.entry.js +12 -12
- package/dist/cjs/vega-tooltip_2.cjs.entry.js +19 -18
- package/dist/cjs/vega.cjs.js +16 -14
- package/dist/collection/collection-manifest.json +8 -6
- package/dist/collection/components/vega-calendar/slimmers/common/controllers/vega-calendar-event-controller.js +3 -0
- package/dist/collection/components/vega-calendar/slimmers/common/controllers/vega-calendar-event-preivew-popover-controller.js +83 -0
- package/dist/collection/components/vega-calendar/slimmers/common/controllers/vega-calendar-post-operation-date-controller.js +15 -2
- package/dist/collection/components/vega-calendar/slimmers/common/helpers/repeat-pattern/base-repeat-pattern.js +16 -0
- package/dist/collection/components/vega-calendar/slimmers/common/helpers/repeat-pattern/calendar-event-daily-repeat-pattern.js +12 -0
- package/dist/collection/components/vega-calendar/slimmers/common/helpers/repeat-pattern/calendar-event-monthly-repeat-pattern.js +12 -0
- package/dist/collection/components/vega-calendar/slimmers/common/helpers/repeat-pattern/calendar-event-weekly-repeat-pattern.js +14 -0
- package/dist/collection/components/vega-calendar/slimmers/common/helpers/repeat-pattern/calendar-event-yearly-repeat-pattern.js +13 -0
- package/dist/collection/components/vega-calendar/slimmers/common/renderers/vega-calendar-event-item-renderer.js +53 -2
- package/dist/collection/components/vega-calendar/slimmers/common/renderers/vega-calendar-event-preview-popover-renderer.js +68 -0
- package/dist/collection/components/vega-calendar/slimmers/common/renderers/vega-calendar-full-day-event-layout-renderer.js +5 -2
- package/dist/collection/components/vega-calendar/slimmers/common/renderers/vega-calendar-renderer.js +10 -1
- package/dist/collection/components/vega-calendar/slimmers/common/renderers/vega-calendar-switch-panel.js +3 -4
- package/dist/collection/components/vega-calendar/slimmers/day-view/renderers/full-day-event/vega-calendar-full-day-event-renderer.js +3 -3
- package/dist/collection/components/vega-calendar/slimmers/day-view/renderers/timed-event/vega-calendar-day-event-layout-renderer.js +5 -2
- package/dist/collection/components/vega-calendar/slimmers/day-view/renderers/timed-event/vega-calendar-timed-event-renderer.js +1 -1
- package/dist/collection/components/vega-calendar/slimmers/month-view/renderers/vega-calendar-month-event-renderer.js +61 -23
- package/dist/collection/components/vega-calendar/slimmers/month-view/renderers/vega-calendar-month-view-renderer.js +1 -2
- package/dist/collection/components/vega-calendar/utils/index.js +16 -10
- package/dist/collection/components/vega-calendar/vega-calendar-event/slimmers/renderers/vega-calendar-event-renderer.js +5 -32
- package/dist/collection/components/vega-calendar/vega-calendar-event/vega-calendar-event.js +0 -5
- package/dist/collection/components/vega-calendar/vega-calendar-event-preview/assets/clock.js +3 -0
- package/dist/collection/components/vega-calendar/vega-calendar-event-preview/assets/close.js +3 -0
- package/dist/collection/components/vega-calendar/vega-calendar-event-preview/slimmers/controllers/vega-calendar-event-preview-state-controller.js +46 -0
- package/dist/collection/components/vega-calendar/vega-calendar-event-preview/slimmers/renderers/vega-calendar-event-preview-detail-renderer.js +81 -0
- package/dist/collection/components/vega-calendar/vega-calendar-event-preview/vega-calendar-event-preview.css +86 -0
- package/dist/collection/components/vega-calendar/vega-calendar-event-preview/vega-calendar-event-preview.js +56 -0
- package/dist/collection/components/vega-calendar/vega-calendar.css +10 -0
- package/dist/collection/components/vega-calendar/vega-calendar.js +37 -0
- package/dist/collection/components/vega-dropdown/vega-dropdown-item/slimmers/renderers/vega-dropdown-item-renderer.js +12 -3
- package/dist/collection/components/vega-dropdown/vega-dropdown-item/vega-dropdown-item.css +0 -1
- package/dist/collection/components/vega-field-error/slimmers/controllers/vega-field-error-message-controller.js +1 -0
- package/dist/collection/components/vega-form/slimmers/controllers/vega-form-field-validation-state-controller.js +80 -0
- package/dist/collection/components/vega-form/vega-form.js +47 -0
- package/dist/collection/components/vega-popover/slimmers/renderers/vega-popover-appender-renderer.js +4 -1
- package/dist/collection/components/vega-popover/vega-popover-content-box/vega-popover-content-box.css +2521 -1
- package/dist/collection/components/vega-popover/vega-popover-content-box/vega-popover-content-box.js +42 -1
- package/dist/collection/components/vega-popover/vega-popover.js +36 -0
- package/dist/collection/components/vega-rich-text-content/slimmers/renderers/vega-rich-text-content-renderer.js +3 -15
- package/dist/collection/components/vega-rich-text-content/vega-rich-text-content.css +81 -16
- package/dist/collection/components/vega-rich-text-editor/assets/display-code.js +3 -0
- package/dist/collection/components/vega-rich-text-editor/constants/constant.js +6 -5
- package/dist/collection/components/vega-rich-text-editor/dto/action-handle-strategies/action-handle-strategy.abstract.js +90 -26
- package/dist/collection/components/vega-rich-text-editor/dto/action-handle-strategies/apply-annotation-strategies/block-update-horizontal-alignment-strategy.js +15 -0
- package/dist/collection/components/vega-rich-text-editor/dto/action-handle-strategies/apply-annotation-strategies/block-update-indent-strategy.js +15 -0
- package/dist/collection/components/vega-rich-text-editor/dto/action-handle-strategies/apply-annotation-strategies/block-update-link-group-strategy.js +18 -4
- package/dist/collection/components/vega-rich-text-editor/dto/action-handle-strategies/apply-annotation-strategies/block-update-text-style-strategy.js +1 -0
- package/dist/collection/components/vega-rich-text-editor/dto/action-handle-strategies/apply-annotation-strategies/node-split-text-strategy.js +6 -1
- package/dist/collection/components/vega-rich-text-editor/dto/action-handle-strategies/apply-annotation-strategies/node-update-annotation-map-strategy.js +15 -1
- package/dist/collection/components/vega-rich-text-editor/dto/action-handle-strategies/modify-content-strategies/{block-append-blocks-strategy.js → append-children-strategy.js} +3 -2
- package/dist/collection/components/vega-rich-text-editor/dto/action-handle-strategies/modify-content-strategies/{block-delete-text-content-strategy.js → block-delete-text-or-decorator-node-strategy.js} +60 -12
- package/dist/collection/components/vega-rich-text-editor/dto/action-handle-strategies/modify-content-strategies/block-insert-image-into-text-strategy.js +7 -7
- package/dist/collection/components/vega-rich-text-editor/dto/action-handle-strategies/modify-content-strategies/block-insert-line-break-with-blocks-strategy.js +2 -2
- package/dist/collection/components/vega-rich-text-editor/dto/action-handle-strategies/modify-content-strategies/block-insert-new-paragraph-strategy.js +38 -30
- package/dist/collection/components/vega-rich-text-editor/dto/action-handle-strategies/modify-content-strategies/block-merge-nodes-strategy.js +4 -4
- package/dist/collection/components/vega-rich-text-editor/dto/action-handle-strategies/modify-content-strategies/block-replace-nodes-strategy.js +2 -2
- package/dist/collection/components/vega-rich-text-editor/dto/action-handle-strategies/modify-content-strategies/block-split-with-image-node-strategy.js +4 -4
- package/dist/collection/components/vega-rich-text-editor/dto/action-handle-strategies/modify-content-strategies/block-split-with-text-node-strategy.js +2 -2
- package/dist/collection/components/vega-rich-text-editor/dto/action-handle-strategies/modify-content-strategies/block-transform-to-code-block-strategy.js +4 -4
- package/dist/collection/components/vega-rich-text-editor/dto/action-handle-strategies/modify-content-strategies/block-transform-to-list-strategy.js +6 -6
- package/dist/collection/components/vega-rich-text-editor/dto/action-handle-strategies/modify-content-strategies/block-unlink-link-group-strategy.js +24 -0
- package/dist/collection/components/vega-rich-text-editor/dto/action-handle-strategies/modify-content-strategies/code-block-insert-image-strategy.js +2 -2
- package/dist/collection/components/vega-rich-text-editor/dto/action-handle-strategies/modify-content-strategies/code-block-remove-self-strategy.js +4 -4
- package/dist/collection/components/vega-rich-text-editor/dto/action-handle-strategies/modify-content-strategies/delete-link-group-strategy.js +34 -0
- package/dist/collection/components/vega-rich-text-editor/dto/action-handle-strategies/modify-content-strategies/image-block-insert-image-strategy.js +9 -9
- package/dist/collection/components/vega-rich-text-editor/dto/action-handle-strategies/modify-content-strategies/image-insert-line-break-strategy.js +2 -2
- package/dist/collection/components/vega-rich-text-editor/dto/action-handle-strategies/modify-content-strategies/image-insert-line-break-with-blocks-strategy.js +6 -6
- package/dist/collection/components/vega-rich-text-editor/dto/action-handle-strategies/modify-content-strategies/insert-children-after-strategy.js +15 -0
- package/dist/collection/components/vega-rich-text-editor/dto/action-handle-strategies/modify-content-strategies/insert-children-before-strategy.js +38 -0
- package/dist/collection/components/vega-rich-text-editor/dto/action-handle-strategies/modify-content-strategies/insert-text-to-decorator-node-strategy.js +37 -0
- package/dist/collection/components/vega-rich-text-editor/dto/action-handle-strategies/modify-content-strategies/link-group-node-split-strategy.js +31 -0
- package/dist/collection/components/vega-rich-text-editor/dto/action-handle-strategies/modify-content-strategies/list-insert-image-strategy.js +2 -2
- package/dist/collection/components/vega-rich-text-editor/dto/action-handle-strategies/modify-content-strategies/list-item-insert-new-paragraph-strategy.js +15 -15
- package/dist/collection/components/vega-rich-text-editor/dto/action-handle-strategies/modify-content-strategies/list-remove-list-item-strategy.js +5 -5
- package/dist/collection/components/vega-rich-text-editor/dto/action-handle-strategies/modify-content-strategies/list-transform-to-list-strategy.js +10 -10
- package/dist/collection/components/vega-rich-text-editor/dto/action-handle-strategies/modify-content-strategies/list-transform-to-paragraph-strategy.js +13 -13
- package/dist/collection/components/vega-rich-text-editor/dto/action-handle-strategies/modify-content-strategies/node-update-text-strategy.js +2 -2
- package/dist/collection/components/vega-rich-text-editor/dto/action-handle-strategies/modify-content-strategies/remove-children-strategy.js +26 -0
- package/dist/collection/components/vega-rich-text-editor/dto/action-handle-strategies/modify-content-strategies/switch-out-from-code-block-strategy.js +2 -2
- package/dist/collection/components/vega-rich-text-editor/dto/action-handle-strategies/modify-content-strategies/update-cursor-position-strategy.js +23 -0
- package/dist/collection/components/vega-rich-text-editor/dto/actions/append-child-nodes-action.js +7 -3
- package/dist/collection/components/vega-rich-text-editor/dto/actions/custom-style-annotation-action.js +20 -0
- package/dist/collection/components/vega-rich-text-editor/dto/actions/delete-link-group-action.js +10 -0
- package/dist/collection/components/vega-rich-text-editor/dto/actions/insert-children-after-block.js +14 -0
- package/dist/collection/components/vega-rich-text-editor/dto/actions/insert-children-before-block.js +14 -0
- package/dist/collection/components/vega-rich-text-editor/dto/actions/{break-single-block-action.js → insert-new-paragraph-action.js} +3 -3
- package/dist/collection/components/vega-rich-text-editor/dto/actions/insert-text-to-decorator-node-action.js +17 -0
- package/dist/collection/components/vega-rich-text-editor/dto/actions/link-annotation-action.js +2 -1
- package/dist/collection/components/vega-rich-text-editor/dto/actions/link-group-annotation-action.js +2 -1
- package/dist/collection/components/vega-rich-text-editor/dto/actions/link-group-node-split-action.js +11 -0
- package/dist/collection/components/vega-rich-text-editor/dto/actions/modify-content-action.abstract.js +10 -7
- package/dist/collection/components/vega-rich-text-editor/dto/actions/remove-child-action.js +4 -5
- package/dist/collection/components/vega-rich-text-editor/dto/actions/unlink-link-group-action.js +11 -0
- package/dist/collection/components/vega-rich-text-editor/dto/actions/update-cursor-position-action.js +20 -0
- package/dist/collection/components/vega-rich-text-editor/dto/annotations/block-annotation.abstract.js +2 -0
- package/dist/collection/components/vega-rich-text-editor/dto/annotations/bold-annotation.js +13 -5
- package/dist/collection/components/vega-rich-text-editor/dto/annotations/clear-formatting-annotation.js +2 -0
- package/dist/collection/components/vega-rich-text-editor/dto/annotations/code-annotation.js +21 -14
- package/dist/collection/components/vega-rich-text-editor/dto/annotations/common-annotation.abstract.js +12 -0
- package/dist/collection/components/vega-rich-text-editor/dto/annotations/custom-attribute-annotation.js +80 -0
- package/dist/collection/components/vega-rich-text-editor/dto/annotations/custom-class-annotation.js +54 -0
- package/dist/collection/components/vega-rich-text-editor/dto/annotations/custom-style-annotation.js +67 -0
- package/dist/collection/components/vega-rich-text-editor/dto/annotations/horizontal-alignment-annotation.js +26 -10
- package/dist/collection/components/vega-rich-text-editor/dto/annotations/image-annotation.js +17 -8
- package/dist/collection/components/vega-rich-text-editor/dto/annotations/indent-annotation.js +8 -2
- package/dist/collection/components/vega-rich-text-editor/dto/annotations/inline-html-annotation.js +68 -0
- package/dist/collection/components/vega-rich-text-editor/dto/annotations/internal-wrapper-annotation.js +41 -0
- package/dist/collection/components/vega-rich-text-editor/dto/annotations/italic-annotation.js +13 -5
- package/dist/collection/components/vega-rich-text-editor/dto/annotations/link-annotation.js +16 -11
- package/dist/collection/components/vega-rich-text-editor/dto/annotations/link-group-annotation.js +92 -0
- package/dist/collection/components/vega-rich-text-editor/dto/annotations/list-annotation.js +41 -0
- package/dist/collection/components/vega-rich-text-editor/dto/annotations/node-annotation.abstract.js +2 -0
- package/dist/collection/components/vega-rich-text-editor/dto/annotations/plain-text-annotation.js +42 -0
- package/dist/collection/components/vega-rich-text-editor/dto/annotations/strikethrough-annotation.js +9 -9
- package/dist/collection/components/vega-rich-text-editor/dto/annotations/text-color-annotation.js +3 -7
- package/dist/collection/components/vega-rich-text-editor/dto/annotations/text-style-annotation.js +74 -12
- package/dist/collection/components/vega-rich-text-editor/dto/annotations/underline-annotation.js +9 -9
- package/dist/collection/components/vega-rich-text-editor/dto/blocks/block.abstract.js +116 -4
- package/dist/collection/components/vega-rich-text-editor/dto/blocks/code-block.js +10 -2
- package/dist/collection/components/vega-rich-text-editor/dto/blocks/html-block.js +78 -0
- package/dist/collection/components/vega-rich-text-editor/dto/blocks/image-block.js +17 -21
- package/dist/collection/components/vega-rich-text-editor/dto/blocks/list-block.js +66 -12
- package/dist/collection/components/vega-rich-text-editor/dto/blocks/list-item-block.js +20 -18
- package/dist/collection/components/vega-rich-text-editor/dto/blocks/text-block.js +116 -37
- package/dist/collection/components/vega-rich-text-editor/dto/content-state.js +70 -33
- package/dist/collection/components/vega-rich-text-editor/dto/nodes/code-block-node.js +9 -2
- package/dist/collection/components/vega-rich-text-editor/dto/nodes/decorator-node.js +58 -0
- package/dist/collection/components/vega-rich-text-editor/dto/nodes/image-node.js +45 -19
- package/dist/collection/components/vega-rich-text-editor/dto/nodes/node.abstract.js +145 -0
- package/dist/collection/components/vega-rich-text-editor/dto/nodes/text-node.js +163 -21
- package/dist/collection/components/vega-rich-text-editor/dto/range.js +22 -33
- package/dist/collection/components/vega-rich-text-editor/dto/renderers/base-renderer.js +5 -0
- package/dist/collection/components/vega-rich-text-editor/dto/renderers/blocks/block-renderer.abstract.js +7 -23
- package/dist/collection/components/vega-rich-text-editor/dto/renderers/blocks/block-text-nodes-renderer.abstract.js +15 -93
- package/dist/collection/components/vega-rich-text-editor/dto/renderers/blocks/code-block-renderer.js +0 -9
- package/dist/collection/components/vega-rich-text-editor/dto/renderers/blocks/html-block-renderer.js +12 -0
- package/dist/collection/components/vega-rich-text-editor/dto/renderers/blocks/image-block-renderer.js +1 -5
- package/dist/collection/components/vega-rich-text-editor/dto/renderers/blocks/link-wrapper-renderer.js +125 -0
- package/dist/collection/components/vega-rich-text-editor/dto/renderers/blocks/list-block-renderer.js +2 -6
- package/dist/collection/components/vega-rich-text-editor/dto/renderers/blocks/list-item-block-renderer.js +1 -1
- package/dist/collection/components/vega-rich-text-editor/dto/renderers/blocks/text-block-renderer.js +2 -27
- package/dist/collection/components/vega-rich-text-editor/dto/renderers/nodes/image-node-renderer.js +70 -7
- package/dist/collection/components/vega-rich-text-editor/dto/renderers/nodes/node-renderer.abstract.js +2 -28
- package/dist/collection/components/vega-rich-text-editor/dto/renderers/nodes/text-node-renderer.js +19 -5
- package/dist/collection/components/vega-rich-text-editor/dto/renderers/renderer-factory.js +47 -0
- package/dist/collection/components/vega-rich-text-editor/dto/setup.js +69 -0
- package/dist/collection/components/vega-rich-text-editor/extensions/base-extension-renderer.js +83 -0
- package/dist/collection/components/vega-rich-text-editor/extensions/base-toolbar-button-renderer.js +5 -0
- package/dist/collection/components/vega-rich-text-editor/slimmers/controllers/delete-selected-nodes-controller.js +53 -29
- package/dist/collection/components/vega-rich-text-editor/slimmers/controllers/focus-controller.js +13 -5
- package/dist/collection/components/vega-rich-text-editor/slimmers/controllers/helper/element-to-dto-strategy/annotation-handler/annotation-generator-strategy.abstract.js +5 -0
- package/dist/collection/components/vega-rich-text-editor/slimmers/controllers/helper/element-to-dto-strategy/annotation-handler/bold-annotaion-handler.js +33 -0
- package/dist/collection/components/vega-rich-text-editor/slimmers/controllers/helper/element-to-dto-strategy/annotation-handler/code-annotation-handler.js +33 -0
- package/dist/collection/components/vega-rich-text-editor/slimmers/controllers/helper/element-to-dto-strategy/annotation-handler/color-annotation-handler.js +49 -0
- package/dist/collection/components/vega-rich-text-editor/slimmers/controllers/helper/element-to-dto-strategy/annotation-handler/custom-attribute-annotation-handler.js +48 -0
- package/dist/collection/components/vega-rich-text-editor/slimmers/controllers/helper/element-to-dto-strategy/annotation-handler/custom-class-annotation-handler.js +36 -0
- package/dist/collection/components/vega-rich-text-editor/slimmers/controllers/helper/element-to-dto-strategy/annotation-handler/custom-style-annotation-handler.js +48 -0
- package/dist/collection/components/vega-rich-text-editor/slimmers/controllers/helper/element-to-dto-strategy/annotation-handler/html-element-to-annotation-generator.js +66 -0
- package/dist/collection/components/vega-rich-text-editor/slimmers/controllers/helper/element-to-dto-strategy/annotation-handler/image-alt-annotation-handler.js +19 -0
- package/dist/collection/components/vega-rich-text-editor/slimmers/controllers/helper/element-to-dto-strategy/annotation-handler/image-size-annotation-handler.js +32 -0
- package/dist/collection/components/vega-rich-text-editor/slimmers/controllers/helper/element-to-dto-strategy/annotation-handler/indent-annotation-handler.js +53 -0
- package/dist/collection/components/vega-rich-text-editor/slimmers/controllers/helper/element-to-dto-strategy/annotation-handler/inline-html-annotation-handler.js +99 -0
- package/dist/collection/components/vega-rich-text-editor/slimmers/controllers/helper/element-to-dto-strategy/annotation-handler/italic-annotation-handler.js +32 -0
- package/dist/collection/components/vega-rich-text-editor/slimmers/controllers/helper/element-to-dto-strategy/annotation-handler/link-annotation-handler.js +53 -0
- package/dist/collection/components/vega-rich-text-editor/slimmers/controllers/helper/element-to-dto-strategy/annotation-handler/strike-through-annotation-handler.js +34 -0
- package/dist/collection/components/vega-rich-text-editor/slimmers/controllers/helper/element-to-dto-strategy/annotation-handler/text-align-annotation-handler.js +57 -0
- package/dist/collection/components/vega-rich-text-editor/slimmers/controllers/helper/element-to-dto-strategy/annotation-handler/text-style-annotation-handler.js +120 -0
- package/dist/collection/components/vega-rich-text-editor/slimmers/controllers/helper/element-to-dto-strategy/annotation-handler/underline-annotation-handler.js +32 -0
- package/dist/collection/components/vega-rich-text-editor/slimmers/controllers/helper/element-to-dto-strategy/block-to-rte-block-strategy.abstract.js +38 -232
- package/dist/collection/components/vega-rich-text-editor/slimmers/controllers/helper/element-to-dto-strategy/continue-inline-to-rte-text-block-strategy.js +34 -19
- package/dist/collection/components/vega-rich-text-editor/slimmers/controllers/helper/element-to-dto-strategy/element-to-dto-strategy-processor.js +19 -33
- package/dist/collection/components/vega-rich-text-editor/slimmers/controllers/helper/element-to-dto-strategy/element-to-dto-strategy.abstract.js +4 -3
- package/dist/collection/components/vega-rich-text-editor/slimmers/controllers/helper/element-to-dto-strategy/element-to-rte-image-block-strategy.abstract.js +33 -0
- package/dist/collection/components/vega-rich-text-editor/slimmers/controllers/helper/element-to-dto-strategy/element-to-text-node-strategy.js +33 -0
- package/dist/collection/components/vega-rich-text-editor/slimmers/controllers/helper/element-to-dto-strategy/html-block-strategy.js +99 -0
- package/dist/collection/components/vega-rich-text-editor/slimmers/controllers/helper/element-to-dto-strategy/img-to-rte-image-block-strategy.js +5 -21
- package/dist/collection/components/vega-rich-text-editor/slimmers/controllers/helper/element-to-dto-strategy/inline-block-to-rte-text-block-strategy.js +8 -48
- package/dist/collection/components/vega-rich-text-editor/slimmers/controllers/helper/element-to-dto-strategy/inline-element-to-text-node-strategy.js +46 -0
- package/dist/collection/components/vega-rich-text-editor/slimmers/controllers/helper/element-to-dto-strategy/li-to-rte-list-item-block-strategy.js +59 -10
- package/dist/collection/components/vega-rich-text-editor/slimmers/controllers/helper/element-to-dto-strategy/ol-to-rte-list-block-strategy.js +8 -5
- package/dist/collection/components/vega-rich-text-editor/slimmers/controllers/helper/element-to-dto-strategy/plain-text-to-text-node-strategy.js +35 -0
- package/dist/collection/components/vega-rich-text-editor/slimmers/controllers/helper/element-to-dto-strategy/span-img-to-rte-image-block-strategy.js +5 -21
- package/dist/collection/components/vega-rich-text-editor/slimmers/controllers/helper/element-to-dto-strategy/ul-not-li-child-to-rte-list-item-block.js +11 -6
- package/dist/collection/components/vega-rich-text-editor/slimmers/controllers/helper/element-to-dto-strategy/ul-to-rte-list-block-strategy.js +8 -5
- package/dist/collection/components/vega-rich-text-editor/slimmers/controllers/helper/element-to-dto-strategy/vega-image-to-rte-image-block-strategy.js +9 -9
- package/dist/collection/components/vega-rich-text-editor/slimmers/controllers/helper/input-event-handler/base-handler.js +2 -2
- package/dist/collection/components/vega-rich-text-editor/slimmers/controllers/helper/input-event-handler/delete-content-handler.js +8 -22
- package/dist/collection/components/vega-rich-text-editor/slimmers/controllers/helper/input-event-handler/insert-paragraph-handler.js +2 -2
- package/dist/collection/components/vega-rich-text-editor/slimmers/controllers/helper/input-event-handler/insert-paste-handler.js +13 -15
- package/dist/collection/components/vega-rich-text-editor/slimmers/controllers/helper/input-event-handler/insert-text-handler.js +36 -28
- package/dist/collection/components/vega-rich-text-editor/slimmers/controllers/insert-composition-text-controller.js +6 -3
- package/dist/collection/components/vega-rich-text-editor/slimmers/controllers/insert-image-controller.js +3 -3
- package/dist/collection/components/vega-rich-text-editor/slimmers/controllers/selection-controller.js +75 -5
- package/dist/collection/components/vega-rich-text-editor/slimmers/controllers/state-entity-rendering-registry.js +39 -4
- package/dist/collection/components/vega-rich-text-editor/slimmers/controllers/value-controller.js +11 -0
- package/dist/collection/components/vega-rich-text-editor/slimmers/renderers/toolbar-renderer.js +41 -5
- package/dist/collection/components/vega-rich-text-editor/slimmers/renderers/tools/bold-toolbar-button-slimmer.js +2 -2
- package/dist/collection/components/vega-rich-text-editor/slimmers/renderers/tools/bullets-numbers/bullets-numbers-toolbar-button-slimmer.js +2 -2
- package/dist/collection/components/vega-rich-text-editor/slimmers/renderers/tools/bullets-numbers/bullets-toolbar-button-slimmer.js +2 -2
- package/dist/collection/components/vega-rich-text-editor/slimmers/renderers/tools/bullets-numbers/numbers-toolbar-button-slimmer.js +2 -2
- package/dist/collection/components/vega-rich-text-editor/slimmers/renderers/tools/clear-style-toolbar-button-slimmer.js +2 -2
- package/dist/collection/components/vega-rich-text-editor/slimmers/renderers/tools/code-block-toolbar-button-slimmer.js +2 -2
- package/dist/collection/components/vega-rich-text-editor/slimmers/renderers/tools/code-toolbar-button-slimmer.js +2 -2
- package/dist/collection/components/vega-rich-text-editor/slimmers/renderers/tools/horizontal-alignment/center-align-toolbar-button-slimmer.js +2 -2
- package/dist/collection/components/vega-rich-text-editor/slimmers/renderers/tools/horizontal-alignment/horizontal-alignment-toolbar-button-slimmer.js +2 -2
- package/dist/collection/components/vega-rich-text-editor/slimmers/renderers/tools/horizontal-alignment/justify-align-toolbar-button-slimmer.js +2 -2
- package/dist/collection/components/vega-rich-text-editor/slimmers/renderers/tools/horizontal-alignment/left-align-toolbar-button-slimmer.js +2 -2
- package/dist/collection/components/vega-rich-text-editor/slimmers/renderers/tools/horizontal-alignment/right-align-toolbar-button-slimmer.js +2 -2
- package/dist/collection/components/vega-rich-text-editor/slimmers/renderers/tools/image-toolbar-button-slimmer.js +2 -2
- package/dist/collection/components/vega-rich-text-editor/slimmers/renderers/tools/italic-toolbar-button-slimmer.js +2 -2
- package/dist/collection/components/vega-rich-text-editor/slimmers/renderers/tools/less-indent-toolbar-button-slimmer.js +2 -2
- package/dist/collection/components/vega-rich-text-editor/slimmers/renderers/tools/link-toolbar-button-slimmer.js +3 -2
- package/dist/collection/components/vega-rich-text-editor/slimmers/renderers/tools/more-indent-toolbar-button-slimmer.js +2 -2
- package/dist/collection/components/vega-rich-text-editor/slimmers/renderers/tools/source-edit-toolbar-button-slimmer.js +64 -0
- package/dist/collection/components/vega-rich-text-editor/slimmers/renderers/tools/strikethrough-toolbar-button-slimmer.js +2 -2
- package/dist/collection/components/vega-rich-text-editor/slimmers/renderers/tools/text-color-toolbar-button-slimmer.js +2 -2
- package/dist/collection/components/vega-rich-text-editor/slimmers/renderers/tools/text-styles-toolbar-button-slimmer.js +5 -4
- package/dist/collection/components/vega-rich-text-editor/slimmers/renderers/tools/toolbar-button-slimmer.abstract.js +10 -3
- package/dist/collection/components/vega-rich-text-editor/slimmers/renderers/tools/underline-toolbar-button-slimmer.js +2 -2
- package/dist/collection/components/vega-rich-text-editor/slimmers/renderers/tools/visual-mode-toolbar-button-slimmer.abstract.js +37 -0
- package/dist/collection/components/vega-rich-text-editor/slimmers/renderers/vega-rich-text-editor-renderer.js +41 -3
- package/dist/collection/components/vega-rich-text-editor/test/dto/action-handle-strategies/code-block-strategy-registry.test.js +2 -3
- package/dist/collection/components/vega-rich-text-editor/test/dto/action-handle-strategies/content-state-strategy-registry.test.js +8 -9
- package/dist/collection/components/vega-rich-text-editor/test/dto/action-handle-strategies/image-block-strategy-register.test.js +15 -13
- package/dist/collection/components/vega-rich-text-editor/test/dto/action-handle-strategies/list-block-strategy-register.test.js +8 -8
- package/dist/collection/components/vega-rich-text-editor/test/dto/action-handle-strategies/list-item-strategy-register.test.js +12 -12
- package/dist/collection/components/vega-rich-text-editor/test/dto/action-handle-strategies/node-split-text-strategy.test.js +3 -2
- package/dist/collection/components/vega-rich-text-editor/test/dto/action-handle-strategies/node-update-annotation-map-strategy.test.js +2 -2
- package/dist/collection/components/vega-rich-text-editor/test/dto/action-handle-strategies/text-block-strategy-register.test.js +34 -12
- package/dist/collection/components/vega-rich-text-editor/test/dto/annotation-actions.test.js +1 -0
- package/dist/collection/components/vega-rich-text-editor/test/dto/annotations.test.js +258 -28
- package/dist/collection/components/vega-rich-text-editor/test/dto/blocks/html-block.test.js +124 -0
- package/dist/collection/components/vega-rich-text-editor/test/dto/blocks/image-block.test.js +10 -0
- package/dist/collection/components/vega-rich-text-editor/test/dto/blocks/text-block.test.js +59 -0
- package/dist/collection/components/vega-rich-text-editor/test/dto/content-state.test.js +2613 -0
- package/dist/collection/components/vega-rich-text-editor/test/dto/nodes/image-node.test.js +29 -0
- package/dist/collection/components/vega-rich-text-editor/test/dto/nodes/text-node.test.js +103 -4
- package/dist/collection/components/vega-rich-text-editor/test/element-to-dto-strategy/custom-attribute-annotation-handler.test.js +49 -0
- package/dist/collection/components/vega-rich-text-editor/test/element-to-dto-strategy/element-to-text-node-strategy.test.js +38 -0
- package/dist/collection/components/vega-rich-text-editor/test/element-to-dto-strategy/html-element-to-annotation-generator.test.js +26 -0
- package/dist/collection/components/vega-rich-text-editor/test/spec-utils.js +32 -0
- package/dist/collection/components/vega-rich-text-editor/vega-rich-text-editor-toolbar-button/slimmers/renderers/vega-rich-text-editor-toolbar-button-renderer.js +6 -2
- package/dist/collection/components/vega-rich-text-editor/vega-rich-text-editor-toolbar-button/vega-rich-text-editor-toolbar-button.css +3 -0
- package/dist/collection/components/vega-rich-text-editor/vega-rich-text-editor-toolbar-button/vega-rich-text-editor-toolbar-button.js +27 -0
- package/dist/collection/components/vega-rich-text-editor/vega-rich-text-editor.css +7 -32
- package/dist/collection/components/vega-rich-text-editor/vega-rich-text-editor.js +67 -2
- package/dist/collection/constants/ui.js +1 -0
- package/dist/collection/helpers/calendar/calendar-date.js +12 -0
- package/dist/collection/helpers/calendar/calendar-event.js +24 -0
- package/dist/collection/helpers/calendar/test/calendar-date.test.js +4 -0
- package/dist/collection/helpers/calendar/test/calendar-event.test.js +57 -0
- package/dist/collection/helpers/calendar/utils.js +38 -0
- package/dist/collection/helpers/change-manager/subject/static-subject/static-subject-title.js +1 -0
- package/dist/collection/helpers/code-format/code-formatter.js +116 -0
- package/dist/collection/helpers/code-format/test/code-formatter.test.js +362 -0
- package/dist/collection/helpers/event-manager/event-id/vega-internal-event-id.js +4 -1
- package/dist/collection/helpers/rte-manager/dto-action-strategy-manager.js +37 -0
- package/dist/collection/helpers/rte-manager/dto-class-manager.js +51 -0
- package/dist/collection/helpers/rte-manager/dto-renderer-manager.js +54 -0
- package/dist/collection/helpers/rte-manager/element-dto-class-strategy-manager.js +56 -0
- package/dist/collection/helpers/rte-manager/rte.manager.test.js +94 -0
- package/dist/collection/helpers/slimmers/field-error-controller-silmmer.js +4 -6
- package/dist/collection/helpers/slimmers/field-error-ui-controller-slimmer.js +12 -10
- package/dist/collection/helpers/slimmers/global/vega-translate-observer-slimmer.js +17 -4
- package/dist/collection/helpers/slimmers/test/field-error-controller-slimmer.test.js +1 -0
- package/dist/collection/helpers/slimmers/test/global/vega-translate-observer-slimmer.test.js +89 -0
- package/dist/collection/helpers/translation/locales/en.js +30 -0
- package/dist/collection/helpers/translation/tests/internal-translation-controller.test.js +30 -0
- package/dist/collection/polyfill/shadow-selection/shadow-selection-polyfill.js +16 -14
- package/dist/collection/polyfill/shadow-selection/test/shadow-selection-polyfill.test.js +1 -0
- package/dist/collection/polyfill/test-polyfill/unit/methods.js +9 -0
- package/dist/collection/utils/object.js +12 -0
- package/dist/collection/utils/string.js +10 -0
- package/dist/collection/utils/test/object.test.js +27 -1
- package/dist/collection/utils/ui.js +9 -0
- package/dist/esm/{app-globals-ee6a1250.js → app-globals-eec29b87.js} +25 -12
- package/dist/esm/{brand-switch-state-controller-slimmer-05c85e6d.js → brand-switch-state-controller-slimmer-d6e4d217.js} +1 -1
- package/dist/esm/{child-nodes-event-prevent-slimmer-b59a578e.js → child-nodes-event-prevent-slimmer-6b5b31f5.js} +1 -1
- package/dist/esm/{child-nodes-notify-observer-slimmer-eeed5986.js → child-nodes-notify-observer-slimmer-78f77c2c.js} +1 -1
- package/dist/esm/{code-block-7bd4cb87.js → code-block-3d519665.js} +2107 -970
- package/dist/esm/{component-value-history-controller-slimmer.abstract-41c58caf.js → component-value-history-controller-slimmer.abstract-8b5be007.js} +112 -54
- package/dist/esm/content-state-100d1efd.js +3682 -0
- package/dist/esm/{dark-mode-state-controller-slimmer-f1c2c299.js → dark-mode-state-controller-slimmer-0c7d1c77.js} +1 -1
- package/dist/esm/{dark-mode-style-controller-ea798fc8.js → dark-mode-style-controller-3bbb32dc.js} +1 -1
- package/dist/esm/{deprecated-property-slimmer-32575f02.js → deprecated-property-slimmer-2c14df89.js} +1 -1
- package/dist/esm/{design-token-23522f5c.js → design-token-80dd7d60.js} +1 -1
- package/dist/esm/{dom-node-subject-factory-6374611f.js → dom-node-subject-factory-202655e7.js} +1 -1
- package/dist/esm/{dom-node-subject-observer-factory-c345ca2e.js → dom-node-subject-observer-factory-999e21e3.js} +1 -1
- package/dist/esm/{element-appender-slimmer-042df95a.js → element-appender-slimmer-e2d3e79a.js} +7 -7
- package/dist/esm/{event-emit-slimmer-b5cb9b81.js → event-emit-slimmer-40973ec2.js} +3 -3
- package/dist/esm/{form-field-controller-slimmer-f0982f11.js → form-field-controller-slimmer-47820eaa.js} +24 -24
- package/dist/esm/{image-annotation-action-1e88f5a0.js → image-annotation-action-215f92d6.js} +128 -29
- package/dist/esm/{index-d0a47531.js → index-057d0f70.js} +23 -4
- package/dist/esm/{index-fb3b74bd.js → index-18a340fb.js} +2 -2
- package/dist/esm/index.js +16 -16
- package/dist/esm/{inject-keyboard-manager-5141d09a.js → inject-keyboard-manager-a28dfee4.js} +1 -1
- package/dist/esm/{internal-vega-event-manager-d80c53c5.js → internal-vega-event-manager-526f8ed1.js} +1 -1
- package/dist/esm/{keyboard-manager-3ffe81b0.js → keyboard-manager-fa6355cb.js} +1 -1
- package/dist/esm/{keyboard-manager-slimmer-751e98f5.js → keyboard-manager-slimmer-818050ee.js} +1 -1
- package/dist/esm/loader.js +16 -14
- package/dist/esm/{object-261e7344.js → object-66c37948.js} +13 -1
- package/dist/esm/{public-rules-287d4d77.js → public-rules-1016ce0c.js} +11 -9
- package/dist/esm/{responsive-format-facade-d2632288.js → responsive-format-facade-4bf60125.js} +4 -4
- package/dist/esm/{rich-text-editor-required-rule-69d5f035.js → rich-text-editor-required-rule-423c3c83.js} +1 -1
- package/dist/esm/{static-subject-title-ca83d6b6.js → static-subject-title-633b3474.js} +2 -1
- package/dist/esm/string-a953eafc.js +21 -0
- package/dist/esm/{string-input-formatter-slimmer-09478e0d.js → string-input-formatter-slimmer-b144e8d7.js} +3 -3
- package/dist/esm/{style-formatter-f7951677.js → style-formatter-184752b5.js} +1 -1
- package/dist/esm/{sub-state-notify-slimmer-0a6c3cbb.js → sub-state-notify-slimmer-b3524c09.js} +2 -2
- package/dist/esm/{sub-state-observer-slimmer-53eec5fb.js → sub-state-observer-slimmer-c823d69c.js} +3 -3
- package/dist/esm/{translation-a6eacb5f.js → translation-833d9ef4.js} +31 -1
- package/dist/esm/{translation-slimmer-f28e4708.js → translation-slimmer-c83b52c1.js} +1 -1
- package/dist/esm/{ui-7d177fb0.js → ui-c20be16d.js} +10 -1
- package/dist/esm/vega-accordion.entry.js +17 -15
- package/dist/esm/vega-app-footer.entry.js +4 -4
- package/dist/esm/vega-app-header-button.entry.js +18 -16
- package/dist/esm/vega-backdrop.entry.js +2 -2
- package/dist/esm/vega-banner.entry.js +6 -6
- package/dist/esm/vega-bar-chart.entry.js +1 -1
- package/dist/esm/vega-box.entry.js +16 -14
- package/dist/esm/vega-brand-logo.entry.js +4 -4
- package/dist/esm/vega-breadcrumb.entry.js +7 -7
- package/dist/esm/vega-button-circle.entry.js +18 -16
- package/dist/esm/vega-button-group_2.entry.js +10 -10
- package/dist/esm/vega-button-link.entry.js +7 -7
- package/dist/esm/vega-button.entry.js +17 -15
- package/dist/esm/{vega-calendar_3.entry.js → vega-calendar_4.entry.js} +1615 -1097
- package/dist/esm/vega-card.entry.js +15 -13
- package/dist/esm/vega-carousel.entry.js +17 -16
- package/dist/esm/vega-checkbox_2.entry.js +14 -14
- package/dist/esm/vega-chip.entry.js +18 -16
- package/dist/esm/vega-code-block.entry.js +19 -19
- package/dist/esm/vega-color-picker.entry.js +12 -12
- package/dist/esm/vega-combo-box.entry.js +15 -15
- package/dist/esm/vega-counter-badge.entry.js +1 -1
- package/dist/esm/vega-date-picker_2.entry.js +25 -24
- package/dist/esm/vega-dialog_2.entry.js +19 -18
- package/dist/esm/vega-divider.entry.js +15 -13
- package/dist/esm/vega-dropdown_5.entry.js +37 -26
- package/dist/esm/vega-env-manager-8f8dc473.js +2 -2
- package/dist/esm/vega-field-error.entry.js +3 -2
- package/dist/esm/vega-field-label.entry.js +6 -6
- package/dist/esm/vega-file-uploader.entry.js +13 -13
- package/dist/esm/vega-flag-icon.entry.js +15 -13
- package/dist/esm/vega-flex.entry.js +16 -14
- package/dist/esm/vega-font.entry.js +15 -13
- package/dist/esm/vega-form.entry.js +109 -19
- package/dist/esm/vega-grid.entry.js +15 -13
- package/dist/esm/vega-hint.entry.js +1 -1
- package/dist/esm/vega-icon.entry.js +15 -13
- package/dist/esm/vega-image-uploader.entry.js +21 -20
- package/dist/esm/vega-input-credit-card.entry.js +13 -13
- package/dist/esm/vega-input-numeric.entry.js +16 -16
- package/dist/esm/vega-input-phone-number.entry.js +18 -17
- package/dist/esm/vega-input-range.entry.js +14 -14
- package/dist/esm/vega-input-select.entry.js +20 -19
- package/dist/esm/vega-input.entry.js +15 -15
- package/dist/esm/{vega-internal-event-id-4072659b.js → vega-internal-event-id-b7c865de.js} +5 -2
- package/dist/esm/vega-item-toggle.entry.js +8 -8
- package/dist/esm/vega-left-nav_5.entry.js +21 -20
- package/dist/esm/vega-line-chart.entry.js +1 -1
- package/dist/esm/vega-loader-wrapper_2.entry.js +14 -12
- package/dist/esm/vega-page-notification_2.entry.js +4 -4
- package/dist/esm/vega-pagination-page-selector-mobile.entry.js +7 -7
- package/dist/esm/vega-pagination-page-size-selector-mobile.entry.js +8 -8
- package/dist/esm/vega-pagination.entry.js +18 -16
- package/dist/esm/vega-pie-chart.entry.js +1 -1
- package/dist/esm/vega-popover_2.entry.js +43 -20
- package/dist/esm/vega-progress-tracker.entry.js +8 -8
- package/dist/esm/vega-radio_2.entry.js +16 -16
- package/dist/esm/vega-rich-text-content.entry.js +273 -175
- package/dist/esm/vega-rich-text-editor_4.entry.js +693 -1480
- package/dist/esm/vega-section-title.entry.js +1 -1
- package/dist/esm/vega-segment-control.entry.js +6 -6
- package/dist/esm/vega-selection-chip_2.entry.js +20 -19
- package/dist/esm/vega-selection-tile_2.entry.js +15 -15
- package/dist/esm/vega-sidenav_3.entry.js +18 -16
- package/dist/esm/vega-signature-capture.entry.js +20 -20
- package/dist/esm/{vega-skeleton-loader-controller-3f6faa17.js → vega-skeleton-loader-controller-38864fcd.js} +3 -3
- package/dist/esm/vega-skeleton.entry.js +1 -1
- package/dist/esm/vega-slot-container.entry.js +1 -1
- package/dist/esm/vega-stepper.entry.js +13 -13
- package/dist/esm/vega-tab-group_2.entry.js +8 -8
- package/dist/esm/vega-table_8.entry.js +20 -19
- package/dist/esm/vega-text.entry.js +2 -2
- package/dist/esm/vega-textarea.entry.js +13 -13
- package/dist/esm/vega-time-picker_2.entry.js +23 -22
- package/dist/esm/vega-toggle-switch.entry.js +12 -12
- package/dist/esm/vega-tooltip_2.entry.js +19 -18
- package/dist/esm/vega.js +16 -14
- package/dist/types/components/vega-calendar/slimmers/common/controllers/vega-calendar-event-controller.d.ts +1 -0
- package/dist/types/components/vega-calendar/slimmers/common/controllers/vega-calendar-event-preivew-popover-controller.d.ts +48 -0
- package/dist/types/components/vega-calendar/slimmers/common/controllers/vega-calendar-post-operation-date-controller.d.ts +10 -0
- package/dist/types/components/vega-calendar/slimmers/common/helpers/repeat-pattern/base-repeat-pattern.d.ts +8 -0
- package/dist/types/components/vega-calendar/slimmers/common/helpers/repeat-pattern/calendar-event-daily-repeat-pattern.d.ts +6 -0
- package/dist/types/components/vega-calendar/slimmers/common/helpers/repeat-pattern/calendar-event-monthly-repeat-pattern.d.ts +6 -0
- package/dist/types/components/vega-calendar/slimmers/common/helpers/repeat-pattern/calendar-event-weekly-repeat-pattern.d.ts +6 -0
- package/dist/types/components/vega-calendar/slimmers/common/helpers/repeat-pattern/calendar-event-yearly-repeat-pattern.d.ts +6 -0
- package/dist/types/components/vega-calendar/slimmers/common/renderers/vega-calendar-event-item-renderer.d.ts +8 -1
- package/dist/types/components/vega-calendar/slimmers/common/renderers/vega-calendar-event-preview-popover-renderer.d.ts +18 -0
- package/dist/types/components/vega-calendar/slimmers/common/renderers/vega-calendar-full-day-event-layout-renderer.d.ts +3 -1
- package/dist/types/components/vega-calendar/slimmers/common/renderers/vega-calendar-renderer.d.ts +3 -0
- package/dist/types/components/vega-calendar/slimmers/day-view/renderers/timed-event/vega-calendar-day-event-layout-renderer.d.ts +3 -1
- package/dist/types/components/vega-calendar/slimmers/month-view/renderers/vega-calendar-month-event-renderer.d.ts +6 -1
- package/dist/types/components/vega-calendar/utils/index.d.ts +9 -8
- package/dist/types/components/vega-calendar/vega-calendar-event/slimmers/renderers/vega-calendar-event-renderer.d.ts +0 -8
- package/dist/types/components/vega-calendar/vega-calendar-event/vega-calendar-event.d.ts +0 -2
- package/dist/types/components/vega-calendar/vega-calendar-event-preview/assets/clock.d.ts +3 -0
- package/dist/types/components/vega-calendar/vega-calendar-event-preview/assets/close.d.ts +3 -0
- package/dist/types/components/vega-calendar/vega-calendar-event-preview/slimmers/controllers/vega-calendar-event-preview-state-controller.d.ts +16 -0
- package/dist/types/components/vega-calendar/vega-calendar-event-preview/slimmers/renderers/vega-calendar-event-preview-detail-renderer.d.ts +13 -0
- package/dist/types/components/vega-calendar/vega-calendar-event-preview/types.d.ts +5 -0
- package/dist/types/components/vega-calendar/vega-calendar-event-preview/vega-calendar-event-preview.d.ts +22 -0
- package/dist/types/components/vega-calendar/vega-calendar.d.ts +10 -0
- package/dist/types/components/vega-field-error/types.d.ts +2 -1
- package/dist/types/components/vega-form/slimmers/controllers/vega-form-field-validation-state-controller.d.ts +29 -0
- package/dist/types/components/vega-form/types.d.ts +18 -0
- package/dist/types/components/vega-form/vega-form.d.ts +11 -1
- package/dist/types/components/vega-popover/slimmers/renderers/vega-popover-appender-renderer.d.ts +1 -0
- package/dist/types/components/vega-popover/vega-popover-content-box/vega-popover-content-box.d.ts +7 -0
- package/dist/types/components/vega-popover/vega-popover.d.ts +7 -1
- package/dist/types/components/vega-rich-text-content/slimmers/renderers/vega-rich-text-content-renderer.d.ts +0 -2
- package/dist/types/components/vega-rich-text-editor/assets/display-code.d.ts +3 -0
- package/dist/types/components/vega-rich-text-editor/constants/constant.d.ts +1 -0
- package/dist/types/components/vega-rich-text-editor/dto/action-handle-strategies/action-handle-strategy-registry.d.ts +4 -4
- package/dist/types/components/vega-rich-text-editor/dto/action-handle-strategies/action-handle-strategy.abstract.d.ts +55 -27
- package/dist/types/components/vega-rich-text-editor/dto/action-handle-strategies/apply-annotation-strategies/block-update-horizontal-alignment-strategy.d.ts +15 -0
- package/dist/types/components/vega-rich-text-editor/dto/action-handle-strategies/apply-annotation-strategies/block-update-indent-strategy.d.ts +15 -0
- package/dist/types/components/vega-rich-text-editor/dto/action-handle-strategies/modify-content-strategies/append-children-strategy.d.ts +13 -0
- package/dist/types/components/vega-rich-text-editor/dto/action-handle-strategies/modify-content-strategies/block-delete-node-content-strategy.d.ts +4 -4
- package/dist/types/components/vega-rich-text-editor/dto/action-handle-strategies/modify-content-strategies/block-delete-text-or-decorator-node-strategy.d.ts +26 -0
- package/dist/types/components/vega-rich-text-editor/dto/action-handle-strategies/modify-content-strategies/block-insert-new-paragraph-strategy.d.ts +11 -12
- package/dist/types/components/vega-rich-text-editor/dto/action-handle-strategies/modify-content-strategies/block-unlink-link-group-strategy.d.ts +15 -0
- package/dist/types/components/vega-rich-text-editor/dto/action-handle-strategies/modify-content-strategies/code-block-remove-self-strategy.d.ts +2 -2
- package/dist/types/components/vega-rich-text-editor/dto/action-handle-strategies/modify-content-strategies/delete-link-group-strategy.d.ts +15 -0
- package/dist/types/components/vega-rich-text-editor/dto/action-handle-strategies/modify-content-strategies/insert-children-after-strategy.d.ts +13 -0
- package/dist/types/components/vega-rich-text-editor/dto/action-handle-strategies/modify-content-strategies/insert-children-before-strategy.d.ts +23 -0
- package/dist/types/components/vega-rich-text-editor/dto/action-handle-strategies/modify-content-strategies/insert-text-to-decorator-node-strategy.d.ts +18 -0
- package/dist/types/components/vega-rich-text-editor/dto/action-handle-strategies/modify-content-strategies/link-group-node-split-strategy.d.ts +15 -0
- package/dist/types/components/vega-rich-text-editor/dto/action-handle-strategies/modify-content-strategies/list-item-insert-new-paragraph-strategy.d.ts +3 -3
- package/dist/types/components/vega-rich-text-editor/dto/action-handle-strategies/modify-content-strategies/list-remove-list-item-strategy.d.ts +5 -5
- package/dist/types/components/vega-rich-text-editor/dto/action-handle-strategies/modify-content-strategies/remove-children-strategy.d.ts +17 -0
- package/dist/types/components/vega-rich-text-editor/dto/action-handle-strategies/modify-content-strategies/update-cursor-position-strategy.d.ts +12 -0
- package/dist/types/components/vega-rich-text-editor/dto/actions/append-child-nodes-action.d.ts +6 -2
- package/dist/types/components/vega-rich-text-editor/dto/actions/custom-style-annotation-action.d.ts +17 -0
- package/dist/types/components/vega-rich-text-editor/dto/actions/delete-link-group-action.d.ts +7 -0
- package/dist/types/components/vega-rich-text-editor/dto/actions/insert-children-after-block.d.ts +14 -0
- package/dist/types/components/vega-rich-text-editor/dto/actions/insert-children-before-block.d.ts +14 -0
- package/dist/types/components/vega-rich-text-editor/dto/actions/{break-single-block-action.d.ts → insert-new-paragraph-action.d.ts} +2 -2
- package/dist/types/components/vega-rich-text-editor/dto/actions/insert-text-to-decorator-node-action.d.ts +14 -0
- package/dist/types/components/vega-rich-text-editor/dto/actions/link-annotation-action.d.ts +3 -1
- package/dist/types/components/vega-rich-text-editor/dto/actions/link-group-annotation-action.d.ts +2 -1
- package/dist/types/components/vega-rich-text-editor/dto/actions/link-group-node-split-action.d.ts +10 -0
- package/dist/types/components/vega-rich-text-editor/dto/actions/modify-content-action.abstract.d.ts +12 -9
- package/dist/types/components/vega-rich-text-editor/dto/actions/remove-child-action.d.ts +3 -4
- package/dist/types/components/vega-rich-text-editor/dto/actions/unlink-link-group-action.d.ts +9 -0
- package/dist/types/components/vega-rich-text-editor/dto/actions/update-cursor-position-action.d.ts +20 -0
- package/dist/types/components/vega-rich-text-editor/dto/annotations/annotation.abstract.d.ts +2 -1
- package/dist/types/components/vega-rich-text-editor/dto/annotations/block-annotation.abstract.d.ts +18 -4
- package/dist/types/components/vega-rich-text-editor/dto/annotations/bold-annotation.d.ts +7 -5
- package/dist/types/components/vega-rich-text-editor/dto/annotations/clear-formatting-annotation.d.ts +2 -1
- package/dist/types/components/vega-rich-text-editor/dto/annotations/code-annotation.d.ts +9 -11
- package/dist/types/components/vega-rich-text-editor/dto/annotations/common-annotation.abstract.d.ts +20 -0
- package/dist/types/components/vega-rich-text-editor/dto/annotations/custom-attribute-annotation.d.ts +44 -0
- package/dist/types/components/vega-rich-text-editor/dto/annotations/custom-class-annotation.d.ts +40 -0
- package/dist/types/components/vega-rich-text-editor/dto/annotations/custom-style-annotation.d.ts +48 -0
- package/dist/types/components/vega-rich-text-editor/dto/annotations/horizontal-alignment-annotation.d.ts +5 -9
- package/dist/types/components/vega-rich-text-editor/dto/annotations/image-annotation.d.ts +10 -8
- package/dist/types/components/vega-rich-text-editor/dto/annotations/indent-annotation.d.ts +5 -1
- package/dist/types/components/vega-rich-text-editor/dto/annotations/inline-html-annotation.d.ts +37 -0
- package/dist/types/components/vega-rich-text-editor/dto/annotations/internal-wrapper-annotation.d.ts +31 -0
- package/dist/types/components/vega-rich-text-editor/dto/annotations/italic-annotation.d.ts +7 -5
- package/dist/types/components/vega-rich-text-editor/dto/annotations/link-annotation.d.ts +10 -6
- package/dist/types/components/vega-rich-text-editor/dto/annotations/link-group-annotation.d.ts +49 -0
- package/dist/types/components/vega-rich-text-editor/dto/annotations/list-annotation.d.ts +25 -0
- package/dist/types/components/vega-rich-text-editor/dto/annotations/node-annotation.abstract.d.ts +18 -4
- package/dist/types/components/vega-rich-text-editor/dto/annotations/plain-text-annotation.d.ts +31 -0
- package/dist/types/components/vega-rich-text-editor/dto/annotations/strikethrough-annotation.d.ts +5 -9
- package/dist/types/components/vega-rich-text-editor/dto/annotations/text-color-annotation.d.ts +3 -7
- package/dist/types/components/vega-rich-text-editor/dto/annotations/text-style-annotation.d.ts +9 -7
- package/dist/types/components/vega-rich-text-editor/dto/annotations/underline-annotation.d.ts +5 -9
- package/dist/types/components/vega-rich-text-editor/dto/blocks/block.abstract.d.ts +70 -9
- package/dist/types/components/vega-rich-text-editor/dto/blocks/code-block.d.ts +7 -2
- package/dist/types/components/vega-rich-text-editor/dto/blocks/html-block.d.ts +42 -0
- package/dist/types/components/vega-rich-text-editor/dto/blocks/image-block.d.ts +10 -4
- package/dist/types/components/vega-rich-text-editor/dto/blocks/list-block.d.ts +33 -6
- package/dist/types/components/vega-rich-text-editor/dto/blocks/list-item-block.d.ts +9 -5
- package/dist/types/components/vega-rich-text-editor/dto/blocks/text-block.d.ts +29 -14
- package/dist/types/components/vega-rich-text-editor/dto/content-state.d.ts +20 -3
- package/dist/types/components/vega-rich-text-editor/dto/nodes/code-block-node.d.ts +7 -2
- package/dist/types/components/vega-rich-text-editor/dto/nodes/decorator-node.d.ts +41 -0
- package/dist/types/components/vega-rich-text-editor/dto/nodes/image-node.d.ts +10 -4
- package/dist/types/components/vega-rich-text-editor/dto/nodes/node.abstract.d.ts +116 -5
- package/dist/types/components/vega-rich-text-editor/dto/nodes/text-node.d.ts +59 -4
- package/dist/types/components/vega-rich-text-editor/dto/range.d.ts +0 -7
- package/dist/types/components/vega-rich-text-editor/dto/renderers/base-renderer.d.ts +9 -0
- package/dist/types/components/vega-rich-text-editor/dto/renderers/blocks/block-renderer.abstract.d.ts +7 -20
- package/dist/types/components/vega-rich-text-editor/dto/renderers/blocks/block-text-nodes-renderer.abstract.d.ts +9 -6
- package/dist/types/components/vega-rich-text-editor/dto/renderers/blocks/code-block-renderer.d.ts +0 -8
- package/dist/types/components/vega-rich-text-editor/dto/renderers/blocks/html-block-renderer.d.ts +8 -0
- package/dist/types/components/vega-rich-text-editor/dto/renderers/blocks/image-block-renderer.d.ts +0 -2
- package/dist/types/components/vega-rich-text-editor/dto/renderers/blocks/link-wrapper-renderer.d.ts +24 -0
- package/dist/types/components/vega-rich-text-editor/dto/renderers/blocks/list-block-renderer.d.ts +0 -2
- package/dist/types/components/vega-rich-text-editor/dto/renderers/blocks/text-block-renderer.d.ts +0 -3
- package/dist/types/components/vega-rich-text-editor/dto/renderers/nodes/image-node-renderer.d.ts +37 -0
- package/dist/types/components/vega-rich-text-editor/dto/renderers/nodes/node-renderer.abstract.d.ts +3 -16
- package/dist/types/components/vega-rich-text-editor/dto/renderers/nodes/text-node-renderer.d.ts +2 -0
- package/dist/types/components/vega-rich-text-editor/dto/renderers/renderer-factory.d.ts +24 -0
- package/dist/types/components/vega-rich-text-editor/dto/setup.d.ts +1 -0
- package/dist/types/components/vega-rich-text-editor/extensions/base-extension-renderer.d.ts +61 -0
- package/dist/types/components/vega-rich-text-editor/extensions/base-toolbar-button-renderer.d.ts +13 -0
- package/dist/types/components/vega-rich-text-editor/interface.d.ts +172 -42
- package/dist/types/components/vega-rich-text-editor/slimmers/controllers/delete-selected-nodes-controller.d.ts +19 -0
- package/dist/types/components/vega-rich-text-editor/slimmers/controllers/focus-controller.d.ts +1 -0
- package/dist/types/components/vega-rich-text-editor/slimmers/controllers/helper/element-to-dto-strategy/annotation-handler/annotation-generator-strategy.abstract.d.ts +16 -0
- package/dist/types/components/vega-rich-text-editor/slimmers/controllers/helper/element-to-dto-strategy/annotation-handler/bold-annotaion-handler.d.ts +25 -0
- package/dist/types/components/vega-rich-text-editor/slimmers/controllers/helper/element-to-dto-strategy/annotation-handler/code-annotation-handler.d.ts +25 -0
- package/dist/types/components/vega-rich-text-editor/slimmers/controllers/helper/element-to-dto-strategy/annotation-handler/color-annotation-handler.d.ts +25 -0
- package/dist/types/components/vega-rich-text-editor/slimmers/controllers/helper/element-to-dto-strategy/annotation-handler/custom-attribute-annotation-handler.d.ts +35 -0
- package/dist/types/components/vega-rich-text-editor/slimmers/controllers/helper/element-to-dto-strategy/annotation-handler/custom-class-annotation-handler.d.ts +28 -0
- package/dist/types/components/vega-rich-text-editor/slimmers/controllers/helper/element-to-dto-strategy/annotation-handler/custom-style-annotation-handler.d.ts +28 -0
- package/dist/types/components/vega-rich-text-editor/slimmers/controllers/helper/element-to-dto-strategy/annotation-handler/html-element-to-annotation-generator.d.ts +26 -0
- package/dist/types/components/vega-rich-text-editor/slimmers/controllers/helper/element-to-dto-strategy/annotation-handler/image-alt-annotation-handler.d.ts +17 -0
- package/dist/types/components/vega-rich-text-editor/slimmers/controllers/helper/element-to-dto-strategy/annotation-handler/image-size-annotation-handler.d.ts +24 -0
- package/dist/types/components/vega-rich-text-editor/slimmers/controllers/helper/element-to-dto-strategy/annotation-handler/indent-annotation-handler.d.ts +24 -0
- package/dist/types/components/vega-rich-text-editor/slimmers/controllers/helper/element-to-dto-strategy/annotation-handler/inline-html-annotation-handler.d.ts +28 -0
- package/dist/types/components/vega-rich-text-editor/slimmers/controllers/helper/element-to-dto-strategy/annotation-handler/italic-annotation-handler.d.ts +25 -0
- package/dist/types/components/vega-rich-text-editor/slimmers/controllers/helper/element-to-dto-strategy/annotation-handler/link-annotation-handler.d.ts +29 -0
- package/dist/types/components/vega-rich-text-editor/slimmers/controllers/helper/element-to-dto-strategy/annotation-handler/strike-through-annotation-handler.d.ts +25 -0
- package/dist/types/components/vega-rich-text-editor/slimmers/controllers/helper/element-to-dto-strategy/annotation-handler/text-align-annotation-handler.d.ts +27 -0
- package/dist/types/components/vega-rich-text-editor/slimmers/controllers/helper/element-to-dto-strategy/annotation-handler/text-style-annotation-handler.d.ts +57 -0
- package/dist/types/components/vega-rich-text-editor/slimmers/controllers/helper/element-to-dto-strategy/annotation-handler/underline-annotation-handler.d.ts +25 -0
- package/dist/types/components/vega-rich-text-editor/slimmers/controllers/helper/element-to-dto-strategy/block-to-rte-block-strategy.abstract.d.ts +12 -85
- package/dist/types/components/vega-rich-text-editor/slimmers/controllers/helper/element-to-dto-strategy/continue-inline-to-rte-text-block-strategy.d.ts +10 -2
- package/dist/types/components/vega-rich-text-editor/slimmers/controllers/helper/element-to-dto-strategy/element-to-dto-strategy-processor.d.ts +12 -3
- package/dist/types/components/vega-rich-text-editor/slimmers/controllers/helper/element-to-dto-strategy/element-to-dto-strategy.abstract.d.ts +6 -4
- package/dist/types/components/vega-rich-text-editor/slimmers/controllers/helper/element-to-dto-strategy/element-to-rte-image-block-strategy.abstract.d.ts +14 -0
- package/dist/types/components/vega-rich-text-editor/slimmers/controllers/helper/element-to-dto-strategy/element-to-text-node-strategy.d.ts +23 -0
- package/dist/types/components/vega-rich-text-editor/slimmers/controllers/helper/element-to-dto-strategy/html-block-strategy.d.ts +34 -0
- package/dist/types/components/vega-rich-text-editor/slimmers/controllers/helper/element-to-dto-strategy/img-to-rte-image-block-strategy.d.ts +5 -4
- package/dist/types/components/vega-rich-text-editor/slimmers/controllers/helper/element-to-dto-strategy/inline-block-to-rte-text-block-strategy.d.ts +3 -9
- package/dist/types/components/vega-rich-text-editor/slimmers/controllers/helper/element-to-dto-strategy/inline-element-to-text-node-strategy.d.ts +17 -0
- package/dist/types/components/vega-rich-text-editor/slimmers/controllers/helper/element-to-dto-strategy/li-to-rte-list-item-block-strategy.d.ts +20 -3
- package/dist/types/components/vega-rich-text-editor/slimmers/controllers/helper/element-to-dto-strategy/ol-to-rte-list-block-strategy.d.ts +5 -5
- package/dist/types/components/vega-rich-text-editor/slimmers/controllers/helper/element-to-dto-strategy/plain-text-to-text-node-strategy.d.ts +16 -0
- package/dist/types/components/vega-rich-text-editor/slimmers/controllers/helper/element-to-dto-strategy/span-img-to-rte-image-block-strategy.d.ts +5 -4
- package/dist/types/components/vega-rich-text-editor/slimmers/controllers/helper/element-to-dto-strategy/ul-not-li-child-to-rte-list-item-block.d.ts +3 -2
- package/dist/types/components/vega-rich-text-editor/slimmers/controllers/helper/element-to-dto-strategy/ul-to-rte-list-block-strategy.d.ts +5 -5
- package/dist/types/components/vega-rich-text-editor/slimmers/controllers/helper/element-to-dto-strategy/vega-image-to-rte-image-block-strategy.d.ts +5 -4
- package/dist/types/components/vega-rich-text-editor/slimmers/controllers/helper/input-event-handler/delete-content-handler.d.ts +0 -7
- package/dist/types/components/vega-rich-text-editor/slimmers/controllers/helper/input-event-handler/insert-paste-handler.d.ts +0 -1
- package/dist/types/components/vega-rich-text-editor/slimmers/controllers/selection-controller.d.ts +20 -0
- package/dist/types/components/vega-rich-text-editor/slimmers/controllers/state-entity-rendering-registry.d.ts +20 -3
- package/dist/types/components/vega-rich-text-editor/slimmers/controllers/value-controller.d.ts +4 -0
- package/dist/types/components/vega-rich-text-editor/slimmers/renderers/toolbar-renderer.d.ts +6 -0
- package/dist/types/components/vega-rich-text-editor/slimmers/renderers/tools/bold-toolbar-button-slimmer.d.ts +2 -2
- package/dist/types/components/vega-rich-text-editor/slimmers/renderers/tools/bullets-numbers/bullets-numbers-toolbar-button-slimmer.d.ts +3 -2
- package/dist/types/components/vega-rich-text-editor/slimmers/renderers/tools/bullets-numbers/bullets-toolbar-button-slimmer.d.ts +2 -2
- package/dist/types/components/vega-rich-text-editor/slimmers/renderers/tools/bullets-numbers/numbers-toolbar-button-slimmer.d.ts +2 -2
- package/dist/types/components/vega-rich-text-editor/slimmers/renderers/tools/clear-style-toolbar-button-slimmer.d.ts +2 -2
- package/dist/types/components/vega-rich-text-editor/slimmers/renderers/tools/code-block-toolbar-button-slimmer.d.ts +2 -2
- package/dist/types/components/vega-rich-text-editor/slimmers/renderers/tools/code-toolbar-button-slimmer.d.ts +2 -2
- package/dist/types/components/vega-rich-text-editor/slimmers/renderers/tools/horizontal-alignment/center-align-toolbar-button-slimmer.d.ts +2 -2
- package/dist/types/components/vega-rich-text-editor/slimmers/renderers/tools/horizontal-alignment/horizontal-alignment-toolbar-button-slimmer.d.ts +3 -2
- package/dist/types/components/vega-rich-text-editor/slimmers/renderers/tools/horizontal-alignment/justify-align-toolbar-button-slimmer.d.ts +2 -2
- package/dist/types/components/vega-rich-text-editor/slimmers/renderers/tools/horizontal-alignment/left-align-toolbar-button-slimmer.d.ts +2 -2
- package/dist/types/components/vega-rich-text-editor/slimmers/renderers/tools/horizontal-alignment/right-align-toolbar-button-slimmer.d.ts +2 -2
- package/dist/types/components/vega-rich-text-editor/slimmers/renderers/tools/image-toolbar-button-slimmer.d.ts +3 -2
- package/dist/types/components/vega-rich-text-editor/slimmers/renderers/tools/italic-toolbar-button-slimmer.d.ts +2 -2
- package/dist/types/components/vega-rich-text-editor/slimmers/renderers/tools/less-indent-toolbar-button-slimmer.d.ts +2 -2
- package/dist/types/components/vega-rich-text-editor/slimmers/renderers/tools/link-toolbar-button-slimmer.d.ts +3 -2
- package/dist/types/components/vega-rich-text-editor/slimmers/renderers/tools/more-indent-toolbar-button-slimmer.d.ts +2 -2
- package/dist/types/components/vega-rich-text-editor/slimmers/renderers/tools/source-edit-toolbar-button-slimmer.d.ts +14 -0
- package/dist/types/components/vega-rich-text-editor/slimmers/renderers/tools/strikethrough-toolbar-button-slimmer.d.ts +2 -2
- package/dist/types/components/vega-rich-text-editor/slimmers/renderers/tools/text-color-toolbar-button-slimmer.d.ts +3 -2
- package/dist/types/components/vega-rich-text-editor/slimmers/renderers/tools/text-styles-toolbar-button-slimmer.d.ts +3 -2
- package/dist/types/components/vega-rich-text-editor/slimmers/renderers/tools/toolbar-button-slimmer.abstract.d.ts +7 -2
- package/dist/types/components/vega-rich-text-editor/slimmers/renderers/tools/underline-toolbar-button-slimmer.d.ts +2 -2
- package/dist/types/components/vega-rich-text-editor/slimmers/renderers/tools/visual-mode-toolbar-button-slimmer.abstract.d.ts +24 -0
- package/dist/types/components/vega-rich-text-editor/slimmers/renderers/vega-rich-text-editor-renderer.d.ts +10 -2
- package/dist/types/components/vega-rich-text-editor/test/dto/action-handle-strategies/image-block-strategy-register.test.d.ts +1 -1
- package/dist/types/components/vega-rich-text-editor/test/dto/action-handle-strategies/list-block-strategy-register.test.d.ts +1 -1
- package/dist/types/components/vega-rich-text-editor/test/dto/action-handle-strategies/node-split-text-strategy.test.d.ts +1 -1
- package/dist/types/components/vega-rich-text-editor/test/dto/action-handle-strategies/text-block-strategy-register.test.d.ts +1 -1
- package/dist/types/components/vega-rich-text-editor/test/dto/blocks/html-block.test.d.ts +1 -0
- package/dist/types/components/vega-rich-text-editor/test/dto/blocks/text-block.test.d.ts +1 -1
- package/dist/types/components/vega-rich-text-editor/test/dto/content-state.test.d.ts +1 -1
- package/dist/types/components/vega-rich-text-editor/test/dto/nodes/text-node.test.d.ts +1 -1
- package/dist/types/components/vega-rich-text-editor/test/element-to-dto-strategy/custom-attribute-annotation-handler.test.d.ts +1 -0
- package/dist/types/components/vega-rich-text-editor/test/element-to-dto-strategy/element-to-text-node-strategy.test.d.ts +1 -0
- package/dist/types/components/vega-rich-text-editor/test/element-to-dto-strategy/html-element-to-annotation-generator.test.d.ts +1 -0
- package/dist/types/components/vega-rich-text-editor/test/spec-utils.d.ts +15 -0
- package/dist/types/components/vega-rich-text-editor/vega-rich-text-editor-toolbar-button/slimmers/renderers/vega-rich-text-editor-toolbar-button-renderer.d.ts +1 -0
- package/dist/types/components/vega-rich-text-editor/vega-rich-text-editor-toolbar-button/vega-rich-text-editor-toolbar-button.d.ts +6 -0
- package/dist/types/components/vega-rich-text-editor/vega-rich-text-editor.d.ts +17 -1
- package/dist/types/components.d.ts +81 -2
- package/dist/types/constants/ui.d.ts +1 -1
- package/dist/types/helpers/calendar/calendar-date.d.ts +7 -0
- package/dist/types/helpers/calendar/calendar-event.d.ts +15 -1
- package/dist/types/helpers/calendar/utils.d.ts +18 -0
- package/dist/types/helpers/change-manager/subject/static-subject/static-subject-title.d.ts +2 -1
- package/dist/types/helpers/code-format/code-formatter.d.ts +34 -0
- package/dist/types/helpers/code-format/test/code-formatter.test.d.ts +1 -0
- package/dist/types/helpers/event-manager/event-id/vega-internal-event-id.d.ts +3 -0
- package/dist/types/helpers/rte-manager/dto-action-strategy-manager.d.ts +13 -0
- package/dist/types/helpers/rte-manager/dto-class-manager.d.ts +38 -0
- package/dist/types/helpers/rte-manager/dto-renderer-manager.d.ts +44 -0
- package/dist/types/helpers/rte-manager/element-dto-class-strategy-manager.d.ts +42 -0
- package/dist/types/helpers/rte-manager/rte.manager.test.d.ts +1 -0
- package/dist/types/helpers/slimmers/field-error-ui-controller-slimmer.d.ts +1 -1
- package/dist/types/helpers/slimmers/form-field-controller-slimmer.d.ts +1 -1
- package/dist/types/helpers/slimmers/global/vega-translate-observer-slimmer.d.ts +6 -0
- package/dist/types/helpers/slimmers/test/global/vega-translate-observer-slimmer.test.d.ts +1 -0
- package/dist/types/helpers/translation/interface.d.ts +31 -1
- package/dist/types/types/class.type.d.ts +3 -0
- package/dist/types/types/components.type.d.ts +10 -2
- package/dist/types/utils/object.d.ts +8 -0
- package/dist/types/utils/string.d.ts +7 -0
- package/dist/types/utils/ui.d.ts +7 -0
- package/dist/vega/index.esm.js +1 -1
- package/dist/vega/p-02841589.js +1 -0
- package/dist/vega/{p-81ed90d5.js → p-02b29c18.js} +1 -1
- package/dist/vega/{p-f25570f5.js → p-09d63c0c.js} +1 -1
- package/dist/vega/{p-4c4ac1a5.entry.js → p-09ddae74.entry.js} +1 -1
- package/dist/vega/{p-9afdcf65.js → p-0a2ff1e2.js} +1 -1
- package/dist/vega/p-0b2fef0d.entry.js +1 -0
- package/dist/vega/{p-1db2ba98.entry.js → p-0c247128.entry.js} +1 -1
- package/dist/vega/p-0cd89fb6.js +1 -0
- package/dist/vega/{p-e940bc37.js → p-0f0baac3.js} +1 -1
- package/dist/vega/{p-4a237308.js → p-0fce930c.js} +1 -1
- package/dist/vega/p-11663b1c.js +1 -0
- package/dist/vega/p-16ec4633.js +1 -0
- package/dist/vega/p-17d517c8.entry.js +1 -0
- package/dist/vega/p-18711f87.entry.js +1 -0
- package/dist/vega/p-19aa2dbe.entry.js +1 -0
- package/dist/vega/{p-8782abeb.js → p-1bd516c5.js} +1 -1
- package/dist/vega/p-23f0dfeb.entry.js +1 -0
- package/dist/vega/{p-7c348ac7.entry.js → p-26ef2066.entry.js} +1 -1
- package/dist/vega/{p-c69a6547.entry.js → p-27b5f69c.entry.js} +1 -1
- package/dist/vega/{p-41465ad0.entry.js → p-2a66e2f7.entry.js} +1 -1
- package/dist/vega/p-2cc8e5f0.entry.js +1 -0
- package/dist/vega/p-323d2af0.entry.js +1 -0
- package/dist/vega/p-33f45d1b.entry.js +1 -0
- package/dist/vega/p-351405f2.entry.js +1 -0
- package/dist/vega/p-35a3c0e5.entry.js +1 -0
- package/dist/vega/{p-82b18195.entry.js → p-36ae2dd3.entry.js} +1 -1
- package/dist/vega/p-3ce966b2.entry.js +1 -0
- package/dist/vega/p-42632023.entry.js +1 -0
- package/dist/vega/{p-832b59af.js → p-436f7e27.js} +1 -1
- package/dist/vega/{p-5bd3487e.js → p-4452e085.js} +1 -1
- package/dist/vega/{p-710da484.entry.js → p-446d0317.entry.js} +1 -1
- package/dist/vega/{p-012cbd8f.js → p-4474bc63.js} +1 -1
- package/dist/vega/{p-6dad2e5c.entry.js → p-476cc642.entry.js} +1 -1
- package/dist/vega/p-48a58baf.js +2 -0
- package/dist/vega/{p-bcdb235d.js → p-4a368e1e.js} +1 -1
- package/dist/vega/p-4b7edf72.entry.js +1 -0
- package/dist/vega/{p-a4a0fcfd.entry.js → p-4ca12302.entry.js} +2 -2
- package/dist/vega/p-4ee21459.entry.js +1 -0
- package/dist/vega/{p-4674c318.entry.js → p-4fc18f2f.entry.js} +1 -1
- package/dist/vega/p-521ace2d.js +1 -0
- package/dist/vega/{p-1f9a735a.entry.js → p-53d67971.entry.js} +1 -1
- package/dist/vega/p-55b4b6ff.entry.js +1 -0
- package/dist/vega/p-56290b7e.entry.js +1 -0
- package/dist/vega/{p-d5776087.js → p-575235c8.js} +1 -1
- package/dist/vega/p-57ea996e.entry.js +1 -0
- package/dist/vega/p-59e990c7.entry.js +1 -0
- package/dist/vega/p-5b7d347a.js +1 -0
- package/dist/vega/p-5f377954.js +1 -1
- package/dist/vega/{p-7d5ebd26.entry.js → p-606d1f7c.entry.js} +1 -1
- package/dist/vega/{p-4ab67150.entry.js → p-61d1f3cb.entry.js} +1 -1
- package/dist/vega/p-6a24c2d9.entry.js +1 -0
- package/dist/vega/{p-5f6b942c.entry.js → p-6b292628.entry.js} +1 -1
- package/dist/vega/p-6e42d500.entry.js +1 -0
- package/dist/vega/{p-c9740710.entry.js → p-70939752.entry.js} +1 -1
- package/dist/vega/p-778b1d71.entry.js +1 -0
- package/dist/vega/{p-fda6f8bc.js → p-7934c09c.js} +1 -1
- package/dist/vega/p-7a3b142b.js +1 -0
- package/dist/vega/{p-9b08ed46.entry.js → p-7b1bb372.entry.js} +1 -1
- package/dist/vega/p-7b365345.entry.js +1 -0
- package/dist/vega/p-7bb74931.js +1 -0
- package/dist/vega/{p-4c871d0f.entry.js → p-7cd2fac8.entry.js} +1 -1
- package/dist/vega/{p-0c8bd757.js → p-7e8f055d.js} +1 -1
- package/dist/vega/p-7f087c8b.js +1 -0
- package/dist/vega/{p-fcb5b40f.entry.js → p-801cb489.entry.js} +1 -1
- package/dist/vega/p-80aac6eb.entry.js +1 -0
- package/dist/vega/{p-904d1b43.js → p-846ae5fb.js} +1 -1
- package/dist/vega/{p-66e9d31a.entry.js → p-847dbae4.entry.js} +1 -1
- package/dist/vega/{p-397b5d91.entry.js → p-850a6305.entry.js} +1 -1
- package/dist/vega/p-86f17433.js +1 -0
- package/dist/vega/{p-acd9bfa4.js → p-8852361b.js} +1 -1
- package/dist/vega/p-8a877e12.js +1 -0
- package/dist/vega/p-966a9940.entry.js +1 -0
- package/dist/vega/{p-8c4f893b.js → p-9773c913.js} +1 -1
- package/dist/vega/{p-bd84b7b9.entry.js → p-9a74eb86.entry.js} +1 -1
- package/dist/vega/p-a0954e7c.entry.js +1 -0
- package/dist/vega/p-a6dacccd.js +1 -0
- package/dist/vega/{p-59282fc8.entry.js → p-a7baad6d.entry.js} +1 -1
- package/dist/vega/{p-8e581755.entry.js → p-ae21e5f5.entry.js} +1 -1
- package/dist/vega/p-aeea4154.entry.js +1 -0
- package/dist/vega/{p-613ee009.js → p-af464251.js} +1 -1
- package/dist/vega/p-b40adb9e.js +1 -0
- package/dist/vega/p-b4be8573.entry.js +1 -0
- package/dist/vega/{p-6e01f0a2.js → p-b5822a21.js} +1 -1
- package/dist/vega/p-b5bef48a.js +1 -0
- package/dist/vega/p-b6f78c1e.entry.js +1 -0
- package/dist/vega/{p-f3bd26a1.entry.js → p-b73532c0.entry.js} +1 -1
- package/dist/vega/{p-d789b291.js → p-bbb96a13.js} +1 -1
- package/dist/vega/p-bca1f8f9.js +1 -0
- package/dist/vega/p-bf0ced3c.js +1 -0
- package/dist/vega/p-bf19682d.js +1 -0
- package/dist/vega/p-c131544b.entry.js +1 -0
- package/dist/vega/{p-9540e3ed.entry.js → p-c81cb852.entry.js} +1 -1
- package/dist/vega/{p-091ab617.entry.js → p-cc20f01f.entry.js} +1 -1
- package/dist/vega/{p-500684e1.entry.js → p-cc5a3a1b.entry.js} +1 -1
- package/dist/vega/{p-f940b7f7.entry.js → p-d0fbbb7f.entry.js} +1 -1
- package/dist/vega/{p-864de9a1.js → p-d4564bfd.js} +1 -1
- package/dist/vega/{p-c42ec0ac.entry.js → p-d45f79ce.entry.js} +1 -1
- package/dist/vega/p-d590402d.entry.js +1 -0
- package/dist/vega/{p-34dc3f71.entry.js → p-d72abacd.entry.js} +1 -1
- package/dist/vega/{p-fe1512f9.entry.js → p-d7558ed7.entry.js} +1 -1
- package/dist/vega/p-d8566958.entry.js +1 -0
- package/dist/vega/{p-a1e50e6c.entry.js → p-dc5026e7.entry.js} +1 -1
- package/dist/vega/p-e4674c00.entry.js +1 -0
- package/dist/vega/{p-311f338d.entry.js → p-e9ad8223.entry.js} +1 -1
- package/dist/vega/p-e9d2e0dc.entry.js +1 -0
- package/dist/vega/{p-86a300e8.entry.js → p-ebbaa112.entry.js} +1 -1
- package/dist/vega/p-ee1e7389.entry.js +1 -0
- package/dist/vega/{p-24042f0c.entry.js → p-f47de801.entry.js} +1 -1
- package/dist/vega/p-f993bcca.entry.js +1 -0
- package/dist/vega/{p-9ce0bd82.entry.js → p-fc8badd3.entry.js} +2 -2
- package/dist/vega/{p-42ec43ef.entry.js → p-fe6ea6cf.entry.js} +1 -1
- package/dist/vega/{p-92355996.entry.js → p-ffaee583.entry.js} +1 -1
- package/dist/vega/vega.esm.js +1 -1
- package/package.json +5 -3
- package/dist/cjs/content-state-fd5ad4a8.js +0 -1152
- package/dist/cjs/string-21427167.js +0 -13
- package/dist/cjs/types-a4295b11.js +0 -12
- package/dist/collection/components/vega-calendar/vega-calendar-event/slimmers/controllers/vega-calendar-event-bg-color-controller.js +0 -29
- package/dist/collection/components/vega-rich-text-editor/dto/action-handle-strategies/modify-content-strategies/block-append-nodes-strategy.js +0 -21
- package/dist/collection/components/vega-rich-text-editor/dto/action-handle-strategies/modify-content-strategies/block-delete-image-strategy.js +0 -54
- package/dist/collection/components/vega-rich-text-editor/dto/action-handle-strategies/modify-content-strategies/block-insert-blocks-after-strategy.js +0 -15
- package/dist/collection/components/vega-rich-text-editor/dto/action-handle-strategies/modify-content-strategies/block-insert-blocks-before-strategy.js +0 -38
- package/dist/collection/components/vega-rich-text-editor/dto/action-handle-strategies/modify-content-strategies/block-insert-nodes-after-node-strategy.js +0 -14
- package/dist/collection/components/vega-rich-text-editor/dto/action-handle-strategies/modify-content-strategies/block-insert-nodes-before-node-strategy.js +0 -14
- package/dist/collection/components/vega-rich-text-editor/dto/action-handle-strategies/modify-content-strategies/block-remove-child-block-strategy.js +0 -15
- package/dist/collection/components/vega-rich-text-editor/dto/action-handle-strategies/modify-content-strategies/block-remove-node-strategy.js +0 -21
- package/dist/collection/components/vega-rich-text-editor/dto/action-handle-strategies/modify-content-strategies/block-replace-node-with-nodes-strategy.js +0 -28
- package/dist/collection/components/vega-rich-text-editor/dto/action-handle-strategies/modify-content-strategies/image-insert-new-paragraph-strategy.js +0 -44
- package/dist/collection/components/vega-rich-text-editor/dto/action-handle-strategies/modify-content-strategies/list-item-delete-text-content-strategy.js +0 -20
- package/dist/collection/components/vega-rich-text-editor/dto/action-handle-strategies/modify-content-strategies/list-item-remove-node-strategy.js +0 -19
- package/dist/collection/components/vega-rich-text-editor/dto/actions/insert-blocks-after-block.js +0 -14
- package/dist/collection/components/vega-rich-text-editor/dto/actions/insert-blocks-before-block.js +0 -14
- package/dist/collection/components/vega-rich-text-editor/dto/actions/insert-nodes-after-node-action.js +0 -14
- package/dist/collection/components/vega-rich-text-editor/dto/actions/insert-nodes-before-node-action.js +0 -14
- package/dist/esm/content-state-a43e703e.js +0 -1146
- package/dist/esm/string-be824360.js +0 -11
- package/dist/esm/types-0cadfd73.js +0 -12
- package/dist/types/components/vega-calendar/vega-calendar-event/slimmers/controllers/vega-calendar-event-bg-color-controller.d.ts +0 -12
- package/dist/types/components/vega-rich-text-editor/dto/action-handle-strategies/modify-content-strategies/block-append-blocks-strategy.d.ts +0 -13
- package/dist/types/components/vega-rich-text-editor/dto/action-handle-strategies/modify-content-strategies/block-append-nodes-strategy.d.ts +0 -16
- package/dist/types/components/vega-rich-text-editor/dto/action-handle-strategies/modify-content-strategies/block-delete-image-strategy.d.ts +0 -19
- package/dist/types/components/vega-rich-text-editor/dto/action-handle-strategies/modify-content-strategies/block-delete-text-content-strategy.d.ts +0 -19
- package/dist/types/components/vega-rich-text-editor/dto/action-handle-strategies/modify-content-strategies/block-insert-blocks-after-strategy.d.ts +0 -13
- package/dist/types/components/vega-rich-text-editor/dto/action-handle-strategies/modify-content-strategies/block-insert-blocks-before-strategy.d.ts +0 -23
- package/dist/types/components/vega-rich-text-editor/dto/action-handle-strategies/modify-content-strategies/block-insert-nodes-after-node-strategy.d.ts +0 -13
- package/dist/types/components/vega-rich-text-editor/dto/action-handle-strategies/modify-content-strategies/block-insert-nodes-before-node-strategy.d.ts +0 -13
- package/dist/types/components/vega-rich-text-editor/dto/action-handle-strategies/modify-content-strategies/block-remove-child-block-strategy.d.ts +0 -13
- package/dist/types/components/vega-rich-text-editor/dto/action-handle-strategies/modify-content-strategies/block-remove-node-strategy.d.ts +0 -16
- package/dist/types/components/vega-rich-text-editor/dto/action-handle-strategies/modify-content-strategies/block-replace-node-with-nodes-strategy.d.ts +0 -20
- package/dist/types/components/vega-rich-text-editor/dto/action-handle-strategies/modify-content-strategies/image-insert-new-paragraph-strategy.d.ts +0 -21
- package/dist/types/components/vega-rich-text-editor/dto/action-handle-strategies/modify-content-strategies/list-item-delete-text-content-strategy.d.ts +0 -15
- package/dist/types/components/vega-rich-text-editor/dto/action-handle-strategies/modify-content-strategies/list-item-remove-node-strategy.d.ts +0 -15
- package/dist/types/components/vega-rich-text-editor/dto/actions/insert-blocks-after-block.d.ts +0 -13
- package/dist/types/components/vega-rich-text-editor/dto/actions/insert-blocks-before-block.d.ts +0 -13
- package/dist/types/components/vega-rich-text-editor/dto/actions/insert-nodes-after-node-action.d.ts +0 -13
- package/dist/types/components/vega-rich-text-editor/dto/actions/insert-nodes-before-node-action.d.ts +0 -13
- package/dist/vega/p-083af15f.entry.js +0 -1
- package/dist/vega/p-0b5330e1.entry.js +0 -1
- package/dist/vega/p-0bb29d98.js +0 -1
- package/dist/vega/p-1792a352.entry.js +0 -1
- package/dist/vega/p-1a4f77de.entry.js +0 -1
- package/dist/vega/p-1a6dacc7.entry.js +0 -1
- package/dist/vega/p-21d26bb4.js +0 -2
- package/dist/vega/p-27a9ad35.entry.js +0 -1
- package/dist/vega/p-27ec0c07.entry.js +0 -1
- package/dist/vega/p-317920e6.entry.js +0 -1
- package/dist/vega/p-376b3ec7.entry.js +0 -1
- package/dist/vega/p-394594e9.entry.js +0 -1
- package/dist/vega/p-43263510.js +0 -1
- package/dist/vega/p-435451be.entry.js +0 -1
- package/dist/vega/p-472108bd.entry.js +0 -1
- package/dist/vega/p-47a4c625.js +0 -1
- package/dist/vega/p-48ae6f02.entry.js +0 -1
- package/dist/vega/p-48b24fd3.entry.js +0 -1
- package/dist/vega/p-5773a9a3.js +0 -1
- package/dist/vega/p-5fe47fe8.entry.js +0 -1
- package/dist/vega/p-61ea2d75.entry.js +0 -1
- package/dist/vega/p-63adca7b.entry.js +0 -1
- package/dist/vega/p-699032fc.entry.js +0 -1
- package/dist/vega/p-6be16084.js +0 -1
- package/dist/vega/p-71c65f7e.js +0 -1
- package/dist/vega/p-81279fea.entry.js +0 -1
- package/dist/vega/p-88e08a33.js +0 -1
- package/dist/vega/p-8e2b1dae.entry.js +0 -1
- package/dist/vega/p-8e662f26.js +0 -1
- package/dist/vega/p-8f8de5ab.entry.js +0 -1
- package/dist/vega/p-997a2064.entry.js +0 -1
- package/dist/vega/p-9a956a00.js +0 -1
- package/dist/vega/p-9d6003ef.js +0 -1
- package/dist/vega/p-a04491cc.entry.js +0 -1
- package/dist/vega/p-a1056063.entry.js +0 -1
- package/dist/vega/p-a7042a5a.entry.js +0 -1
- package/dist/vega/p-acf7667e.entry.js +0 -1
- package/dist/vega/p-b21b128c.entry.js +0 -1
- package/dist/vega/p-b75a8edb.entry.js +0 -1
- package/dist/vega/p-c21295cf.entry.js +0 -1
- package/dist/vega/p-ce5a3589.entry.js +0 -1
- package/dist/vega/p-d1355307.js +0 -1
- package/dist/vega/p-d1cb7f28.js +0 -1
- package/dist/vega/p-d661a5aa.entry.js +0 -1
- package/dist/vega/p-d7e0c57a.js +0 -1
- package/dist/vega/p-e1ed78db.js +0 -1
- package/dist/vega/p-e7b00bf0.js +0 -1
- package/dist/vega/p-ef84dc90.entry.js +0 -1
- package/dist/vega/p-f229d6d1.js +0 -1
- package/dist/vega/p-f27fcc7c.entry.js +0 -1
- package/dist/vega/p-f543e911.entry.js +0 -1
- package/dist/vega/p-f5ac60f5.js +0 -1
- package/dist/vega/p-f7b5833d.entry.js +0 -1
- package/dist/vega/p-fc02a67a.js +0 -1
|
@@ -1,62 +1,180 @@
|
|
|
1
|
-
import { h, H as Host, F as Fragment, r as registerInstance, c as createEvent, g as getElement } from './index-
|
|
1
|
+
import { h, H as Host, F as Fragment, r as registerInstance, c as createEvent, g as getElement } from './index-057d0f70.js';
|
|
2
2
|
import { c as MapToComponentField, M as MapToComponentMethod, V as VegaSlimmer, I as InjectVegaSlimmer } from './global-slimmer-registry-17c4efd4.js';
|
|
3
3
|
import { V as VegaComponentUsageRuntimeMetricsSlimmer, I as InjectVegaGlobalSlimmer } from './component-usage-runtime-metrics-a84cc93e.js';
|
|
4
4
|
import { s as sanitizeVegaComponent } from './component-7d906393.js';
|
|
5
5
|
import { c as createEnterKeyHandlerToTriggerClick } from './accessibility-e5fd0fab.js';
|
|
6
6
|
import { C as ChangeManager } from './change-manager-6a7eb88c.js';
|
|
7
|
-
import { d as domNodeSubjectFactory, b as VegaDropdownClick, f as VegaChange, P as VegaImageInserted, a as VegaClick, M as VegaPopoverShow, N as VegaPopoverHide } from './dom-node-subject-factory-
|
|
8
|
-
import { V as VegaInternalComponentDidRender,
|
|
9
|
-
import {
|
|
7
|
+
import { d as domNodeSubjectFactory, b as VegaDropdownClick, f as VegaChange, P as VegaImageInserted, a as VegaClick, M as VegaPopoverShow, N as VegaPopoverHide } from './dom-node-subject-factory-202655e7.js';
|
|
8
|
+
import { V as VegaInternalComponentDidRender, b as VegaInternalRichTextEditorFlushChanges, y as VegaInternalRichTextEditDeleteSelectedNodes, z as VegaInternalRichTextImageClick, A as VegaInternalRichTextImageDeleteButtonClicked, s as VegaInternalPopoverUpdateTarget } from './vega-internal-event-id-b7c865de.js';
|
|
9
|
+
import { R as RTEDTORendererManager, V as VisualModeToolbarButtonSlimmer, I as ImageAnnotationAction, T as TextNodeRenderingRegistry, b as ToolbarButtonSlimmer, a as TextColorToolbarButtonSlimmer } from './image-annotation-action-215f92d6.js';
|
|
10
10
|
import { V as VegaInternalIconManager } from './internal-icon-manager-7eac52c8.js';
|
|
11
|
-
import {
|
|
12
|
-
import { D as DomNodeSubjectObserverFactory } from './dom-node-subject-observer-factory-
|
|
11
|
+
import { a as RTETextNode, Y as BoldAnnotationAction, p as NodeAnnotationTypeEnum, X as RTECodeBlockNode, _ as ItalicAnnotationAction, $ as UnderlineAnnotationAction, R as RTETextBlock, a0 as TextStyleAnnotationAction, a1 as TextStyleAnnotation, a2 as BoldAnnotation, k as BlockAnnotationTypeEnum, a3 as ClearFormattingAnnotationAction, a4 as CodeAnnotationAction, a5 as StrikethroughAnnotationAction, T as SelectionChangeAction, L as LinkAnnotationAction, a6 as IndentAnnotationAction, w as ModifyContentAction, M as ModifyContentActionType, H as HorizontalAlignmentAnnotationAction, s as stateEntityRenderingRegistry, b as AppendChildrenAction, Z as ZERO_WIDTH_SPACE, U as UpdateTextAction, i as InsertChildrenBeforeAction, x as SplitBlockWithNodeAction, h as RemoveChildrenAction, v as ReplaceChildNodesAction, I as InsertChildrenAfterAction, o as RTECodeBlock } from './code-block-3d519665.js';
|
|
12
|
+
import { D as DomNodeSubjectObserverFactory } from './dom-node-subject-observer-factory-999e21e3.js';
|
|
13
13
|
import { g as generateUUID } from './create-public-api-runtime-metrics-slimmer-bedf3a1e.js';
|
|
14
|
-
import { a as waitForComponentDidRender } from './index-
|
|
15
|
-
import {
|
|
16
|
-
import {
|
|
17
|
-
import { c as
|
|
18
|
-
import {
|
|
19
|
-
import { R as RTESelectionState, C as ComponentValueHistoryControllerSlimmer, A as AutoRunWhenReRenderTaskQueueSlimmer, a as SelectionController } from './component-value-history-controller-slimmer.abstract-
|
|
20
|
-
import { b as FORM_ELEMENT_VALUE_CHANGE, D as DARK_MODE_CHANGE } from './static-subject-title-
|
|
14
|
+
import { a as waitForComponentDidRender } from './index-18a340fb.js';
|
|
15
|
+
import { c as RTEImageNode, a as RTEListItemBlock, V as VegaRTEContent, M as MergeTwoBlocksNodesAction, d as InsertNewParagraphAction, E as ElementToDtoStrategyProcessor, R as RTEImageBlock } from './content-state-100d1efd.js';
|
|
16
|
+
import { F as FormFieldControllerSlimmer } from './form-field-controller-slimmer-47820eaa.js';
|
|
17
|
+
import { c as createEventEmitSlimmer } from './event-emit-slimmer-40973ec2.js';
|
|
18
|
+
import { c as createSubStateNotifySlimmer } from './sub-state-notify-slimmer-b3524c09.js';
|
|
19
|
+
import { R as RTESelectionState, C as ComponentValueHistoryControllerSlimmer, A as AutoRunWhenReRenderTaskQueueSlimmer, a as SelectionController } from './component-value-history-controller-slimmer.abstract-8b5be007.js';
|
|
20
|
+
import { b as FORM_ELEMENT_VALUE_CHANGE, D as DARK_MODE_CHANGE } from './static-subject-title-633b3474.js';
|
|
21
21
|
import { O as Observer } from './observer-3959f9dd.js';
|
|
22
22
|
import { d as debounce } from './timer-9321173b.js';
|
|
23
|
-
import { D as DarkModeStateControllerSlimmer } from './dark-mode-state-controller-slimmer-
|
|
24
|
-
import {
|
|
25
|
-
import {
|
|
26
|
-
import {
|
|
27
|
-
import {
|
|
28
|
-
import { T as TranslationSlimmer } from './translation-slimmer-f28e4708.js';
|
|
29
|
-
import { V as VegaInternalThemeManager } from './dark-mode-style-controller-ea798fc8.js';
|
|
23
|
+
import { D as DarkModeStateControllerSlimmer } from './dark-mode-state-controller-slimmer-0c7d1c77.js';
|
|
24
|
+
import { R as RichTextEditorRequiredRule } from './rich-text-editor-required-rule-423c3c83.js';
|
|
25
|
+
import { C as ChildNodesEventPreventSlimmer } from './child-nodes-event-prevent-slimmer-6b5b31f5.js';
|
|
26
|
+
import { T as TranslationSlimmer } from './translation-slimmer-c83b52c1.js';
|
|
27
|
+
import { V as VegaInternalThemeManager } from './dark-mode-style-controller-3bbb32dc.js';
|
|
30
28
|
import { c as chevronDown } from './chevron-down-4a75d28e.js';
|
|
31
29
|
import { t as trashCan } from './trash-can-8819a939.js';
|
|
30
|
+
import { f as findParent } from './ui-c20be16d.js';
|
|
32
31
|
import { r as remoteInvocationRegistry } from './remote-invocation-registry-d69245c2.js';
|
|
33
32
|
import './icon-manager-2ee1c619.js';
|
|
33
|
+
import './string-a953eafc.js';
|
|
34
|
+
import './type-guard-84b1f192.js';
|
|
35
|
+
import './breakpoints-d9faf11c.js';
|
|
36
|
+
import './ui-8424715a.js';
|
|
37
|
+
import './regex-dfe11abf.js';
|
|
38
|
+
import './typography-396de03f.js';
|
|
39
|
+
import './object-66c37948.js';
|
|
34
40
|
import './dynamic-slimmer-90b8af32.js';
|
|
35
41
|
import './wait-for-vega-handler-c2c07ac3.js';
|
|
36
|
-
import './
|
|
37
|
-
import './translation-a6eacb5f.js';
|
|
42
|
+
import './translation-833d9ef4.js';
|
|
38
43
|
import './page-resize-observer-slimmer-0bf7fbf3.js';
|
|
39
|
-
import './ui-8424715a.js';
|
|
40
|
-
import './breakpoints-d9faf11c.js';
|
|
41
44
|
import './try-get-document-bef0f526.js';
|
|
42
45
|
import './internal-form-field-validation-rule.abstract-f5b6bdbf.js';
|
|
43
46
|
import './mutation-observer-slimmer-58ebc13c.js';
|
|
44
47
|
import './mutation-observer-filters-1a054fb0.js';
|
|
45
48
|
import './array-7888f339.js';
|
|
46
49
|
import './number-4398f2e1.js';
|
|
47
|
-
import './sub-state-observer-slimmer-
|
|
48
|
-
import './internal-vega-event-manager-
|
|
50
|
+
import './sub-state-observer-slimmer-c823d69c.js';
|
|
51
|
+
import './internal-vega-event-manager-526f8ed1.js';
|
|
49
52
|
import './synchronize-task-queue-ac8acc3b.js';
|
|
50
|
-
import './keyboard-manager-slimmer-
|
|
51
|
-
import './keyboard-manager-
|
|
52
|
-
import './regex-dfe11abf.js';
|
|
53
|
-
import './typography-396de03f.js';
|
|
53
|
+
import './keyboard-manager-slimmer-818050ee.js';
|
|
54
|
+
import './keyboard-manager-fa6355cb.js';
|
|
54
55
|
import './vega-env-manager-8f8dc473.js';
|
|
55
56
|
import './feature-flag-controller-51659753.js';
|
|
56
57
|
import './index-e9da316f.js';
|
|
57
58
|
import './_commonjsHelpers-9943807e.js';
|
|
58
59
|
|
|
59
|
-
|
|
60
|
+
/**
|
|
61
|
+
* Class to format HTML code with proper indentation and style cleanup.
|
|
62
|
+
*/
|
|
63
|
+
class CodeFormatter {
|
|
64
|
+
constructor() {
|
|
65
|
+
/**
|
|
66
|
+
* Formats a given HTML source string by applying indentation and cleaning up styles.
|
|
67
|
+
*
|
|
68
|
+
* @param {string} source - The HTML source string to format.
|
|
69
|
+
* @param {CodeFormatOptions} options - Formatting options.
|
|
70
|
+
* @returns {string} The formatted HTML string.
|
|
71
|
+
*/
|
|
72
|
+
this.format = (source, options = {}) => {
|
|
73
|
+
const { tabWidth = 4, useTabs = true } = options;
|
|
74
|
+
const indentUnit = useTabs ? '\t' : ' ';
|
|
75
|
+
const INDENT = indentUnit.repeat(tabWidth);
|
|
76
|
+
const tagRegex = /(<\/?[^>]+>)/g;
|
|
77
|
+
// Split source into tokens using tag boundaries while filtering out empty strings
|
|
78
|
+
const tokens = source.split(tagRegex).filter((t) => t.length > 0);
|
|
79
|
+
let indentLevel = 0;
|
|
80
|
+
let output = '';
|
|
81
|
+
for (let i = 0; i < tokens.length; i++) {
|
|
82
|
+
let token = tokens[i];
|
|
83
|
+
// Decrease indentation for closing tags
|
|
84
|
+
if (token.startsWith('</')) {
|
|
85
|
+
indentLevel = Math.max(0, indentLevel - 1);
|
|
86
|
+
}
|
|
87
|
+
const indent = INDENT.repeat(indentLevel);
|
|
88
|
+
if (token.startsWith('<')) {
|
|
89
|
+
// Clean and normalize inline style attributes
|
|
90
|
+
token = token.replace(/style\s*=\s*"([^"]*)"/g, (_, styleContent) => {
|
|
91
|
+
return `style="${this.formatStyle(styleContent)}"`;
|
|
92
|
+
});
|
|
93
|
+
const tagName = CodeFormatter.getTagName(token);
|
|
94
|
+
const isInline = CodeFormatter.INLINE_TAGS.has(tagName);
|
|
95
|
+
// Inline tag grouping: e.g., <strong>Text</strong> stays on one line
|
|
96
|
+
if (isInline && i + 2 < tokens.length && tokens[i + 2] === `</${tagName}>`) {
|
|
97
|
+
// Group consecutive inline tags
|
|
98
|
+
let inlineGroup = `${token}${tokens[i + 1]}${tokens[i + 2]}`;
|
|
99
|
+
i += 2;
|
|
100
|
+
// Keep merging consecutive inline tag pairs
|
|
101
|
+
while (i + 2 < tokens.length &&
|
|
102
|
+
tokens[i + 1].startsWith('<') &&
|
|
103
|
+
CodeFormatter.INLINE_TAGS.has(CodeFormatter.getTagName(tokens[i + 1])) &&
|
|
104
|
+
tokens[i + 3] === `</${CodeFormatter.getTagName(tokens[i + 1])}>`) {
|
|
105
|
+
inlineGroup += `${tokens[i + 1]}${tokens[i + 2]}${tokens[i + 3]}`;
|
|
106
|
+
i += 3;
|
|
107
|
+
}
|
|
108
|
+
output += `${indent}${inlineGroup}\n`;
|
|
109
|
+
}
|
|
110
|
+
else {
|
|
111
|
+
output += `${indent}${token}\n`;
|
|
112
|
+
// Increase indentation for non-void opening tags
|
|
113
|
+
if (!token.startsWith('</') &&
|
|
114
|
+
!token.endsWith('/>') &&
|
|
115
|
+
!/^<br|^<img|^<meta|^<input|^<hr/i.test(token)) {
|
|
116
|
+
indentLevel++;
|
|
117
|
+
}
|
|
118
|
+
}
|
|
119
|
+
}
|
|
120
|
+
else {
|
|
121
|
+
// Add plain text content with current indentation
|
|
122
|
+
const text = token;
|
|
123
|
+
if (text.length > 0) {
|
|
124
|
+
output += `${INDENT.repeat(indentLevel)}${text}\n`;
|
|
125
|
+
}
|
|
126
|
+
}
|
|
127
|
+
}
|
|
128
|
+
return output.trim();
|
|
129
|
+
};
|
|
130
|
+
}
|
|
131
|
+
/**
|
|
132
|
+
* Extracts the tag name from an HTML tag string.
|
|
133
|
+
*
|
|
134
|
+
* @param {string} tag - A raw HTML tag string
|
|
135
|
+
* @returns {string} The lowercase tag name, or an empty string if no match is found.
|
|
136
|
+
*/
|
|
137
|
+
static getTagName(tag) {
|
|
138
|
+
var _a;
|
|
139
|
+
const match = tag.match(/^<\/?([a-z0-9]+)/i);
|
|
140
|
+
return (_a = match === null || match === void 0 ? void 0 : match[1].toLowerCase()) !== null && _a !== void 0 ? _a : '';
|
|
141
|
+
}
|
|
142
|
+
/**
|
|
143
|
+
* Formats a CSS style string by trimming white space and ensuring consistent semicolon spacing.
|
|
144
|
+
*
|
|
145
|
+
* @param {string} style - The CSS style string to format.
|
|
146
|
+
* @returns {string} The formatted style string.
|
|
147
|
+
*/
|
|
148
|
+
formatStyle(style) {
|
|
149
|
+
return style
|
|
150
|
+
.split(';')
|
|
151
|
+
.map((s) => s.trim())
|
|
152
|
+
.filter(Boolean)
|
|
153
|
+
.join('; ');
|
|
154
|
+
}
|
|
155
|
+
}
|
|
156
|
+
CodeFormatter.INLINE_TAGS = new Set([
|
|
157
|
+
'span',
|
|
158
|
+
'strong',
|
|
159
|
+
'em',
|
|
160
|
+
'a',
|
|
161
|
+
'b',
|
|
162
|
+
'i',
|
|
163
|
+
'u',
|
|
164
|
+
'small',
|
|
165
|
+
'abbr',
|
|
166
|
+
'code',
|
|
167
|
+
'b',
|
|
168
|
+
'u',
|
|
169
|
+
's',
|
|
170
|
+
'mark',
|
|
171
|
+
'time',
|
|
172
|
+
'del',
|
|
173
|
+
'ins',
|
|
174
|
+
]);
|
|
175
|
+
const CodeFormatter$1 = new CodeFormatter();
|
|
176
|
+
|
|
177
|
+
var __decorate$B = (undefined && undefined.__decorate) || function (decorators, target, key, desc) {
|
|
60
178
|
var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
|
|
61
179
|
if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
|
|
62
180
|
else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
|
|
@@ -72,6 +190,7 @@ class VegaRichTextEditorRenderer extends VegaSlimmer {
|
|
|
72
190
|
return (h("div", { class: {
|
|
73
191
|
'rich-text-editor-container': true,
|
|
74
192
|
'disabled': this.disabled,
|
|
193
|
+
'vega-hidden': this.sourceView,
|
|
75
194
|
}, style: { minHeight: `${this.rows * 24}px` }, onClick: this.richTextContentFocus, role: "textbox", tabIndex: !this.disabled ? -1 : 0, onKeyDown: createEnterKeyHandlerToTriggerClick(), ref: (node) => (this.richTextContainerRef = node) },
|
|
76
195
|
h("vega-rich-text-content", { ref: (ref) => (this.richTextContentRef = ref), content: this.value }),
|
|
77
196
|
this.renderCharacterCounter()));
|
|
@@ -90,6 +209,20 @@ class VegaRichTextEditorRenderer extends VegaSlimmer {
|
|
|
90
209
|
this.richTextContentFocus = () => {
|
|
91
210
|
void this.richTextContentRef.vegaFocus();
|
|
92
211
|
};
|
|
212
|
+
this.renderSourceViewContent = () => {
|
|
213
|
+
if (!this.allowSourceEdit)
|
|
214
|
+
return;
|
|
215
|
+
const sourceViewValue = this.sourceView
|
|
216
|
+
? CodeFormatter$1.format(this.value.toHtml({
|
|
217
|
+
autoMatchFormat: this.sourceEditConfig.autoMatchFormat,
|
|
218
|
+
}))
|
|
219
|
+
: '';
|
|
220
|
+
return (h("div", { class: {
|
|
221
|
+
'source-view-container': true,
|
|
222
|
+
'vega-hidden': !this.sourceView,
|
|
223
|
+
} },
|
|
224
|
+
h("vega-code-block", { ref: (ref) => (this.sourceCodeBlockRef = ref), disabled: this.disabled, value: { language: 'html', code: sourceViewValue } })));
|
|
225
|
+
};
|
|
93
226
|
}
|
|
94
227
|
/**
|
|
95
228
|
* Component lifecycle - [componentDidRender]{@link VegaRichTextEditor.componentDidRender}
|
|
@@ -108,7 +241,7 @@ class VegaRichTextEditorRenderer extends VegaSlimmer {
|
|
|
108
241
|
/**
|
|
109
242
|
* Returns the HTMLElement reference of the rich text content area.
|
|
110
243
|
*
|
|
111
|
-
* @returns {HTMLVegaRichTextContentElement} An HTMLVegaRichTextContentElement is being returned.
|
|
244
|
+
* @returns {Nullable<HTMLVegaRichTextContentElement>} An HTMLVegaRichTextContentElement is being returned.
|
|
112
245
|
*/
|
|
113
246
|
getRichTextContentRef() {
|
|
114
247
|
return this.richTextContentRef;
|
|
@@ -131,6 +264,11 @@ class VegaRichTextEditorRenderer extends VegaSlimmer {
|
|
|
131
264
|
return this.richTextContentRef.shadowRoot.querySelector('.rich-text-content');
|
|
132
265
|
}
|
|
133
266
|
}
|
|
267
|
+
getSourceCode() {
|
|
268
|
+
if (this.sourceCodeBlockRef) {
|
|
269
|
+
return this.sourceCodeBlockRef.value.code;
|
|
270
|
+
}
|
|
271
|
+
}
|
|
134
272
|
render() {
|
|
135
273
|
return h(Host, null, this.renderRichTextEditor());
|
|
136
274
|
}
|
|
@@ -139,45 +277,62 @@ class VegaRichTextEditorRenderer extends VegaSlimmer {
|
|
|
139
277
|
this.renderLabel(),
|
|
140
278
|
this.hint && this.renderHintMessage(),
|
|
141
279
|
this.toolbarRenderer.render(),
|
|
142
|
-
this.
|
|
280
|
+
this.renderContent(),
|
|
143
281
|
this.renderErrorMessage()));
|
|
144
282
|
}
|
|
145
283
|
renderLabel() {
|
|
146
284
|
return (this.label && (h("vega-field-label", { onClick: this.richTextContentFocus, isFieldRequired: this.required, disabled: this.disabled, label: this.label })));
|
|
147
285
|
}
|
|
286
|
+
renderContent() {
|
|
287
|
+
return (h(Fragment, null,
|
|
288
|
+
this.renderTextContent(),
|
|
289
|
+
this.renderSourceViewContent()));
|
|
290
|
+
}
|
|
148
291
|
}
|
|
149
|
-
__decorate$
|
|
292
|
+
__decorate$B([
|
|
150
293
|
MapToComponentField()
|
|
151
294
|
], VegaRichTextEditorRenderer.prototype, "host", void 0);
|
|
152
|
-
__decorate$
|
|
295
|
+
__decorate$B([
|
|
153
296
|
MapToComponentField()
|
|
154
297
|
], VegaRichTextEditorRenderer.prototype, "toolbarRenderer", void 0);
|
|
155
|
-
__decorate$
|
|
298
|
+
__decorate$B([
|
|
156
299
|
MapToComponentField()
|
|
157
300
|
], VegaRichTextEditorRenderer.prototype, "label", void 0);
|
|
158
|
-
__decorate$
|
|
301
|
+
__decorate$B([
|
|
159
302
|
MapToComponentField()
|
|
160
303
|
], VegaRichTextEditorRenderer.prototype, "required", void 0);
|
|
161
|
-
__decorate$
|
|
304
|
+
__decorate$B([
|
|
162
305
|
MapToComponentField()
|
|
163
306
|
], VegaRichTextEditorRenderer.prototype, "hint", void 0);
|
|
164
|
-
__decorate$
|
|
307
|
+
__decorate$B([
|
|
165
308
|
MapToComponentField()
|
|
166
309
|
], VegaRichTextEditorRenderer.prototype, "disabled", void 0);
|
|
167
|
-
__decorate$
|
|
310
|
+
__decorate$B([
|
|
168
311
|
MapToComponentField()
|
|
169
312
|
], VegaRichTextEditorRenderer.prototype, "rows", void 0);
|
|
170
|
-
__decorate$
|
|
313
|
+
__decorate$B([
|
|
171
314
|
MapToComponentField()
|
|
172
315
|
], VegaRichTextEditorRenderer.prototype, "placeholder", void 0);
|
|
173
|
-
__decorate$
|
|
316
|
+
__decorate$B([
|
|
174
317
|
MapToComponentField()
|
|
175
318
|
], VegaRichTextEditorRenderer.prototype, "value", void 0);
|
|
176
|
-
__decorate$
|
|
319
|
+
__decorate$B([
|
|
320
|
+
MapToComponentField()
|
|
321
|
+
], VegaRichTextEditorRenderer.prototype, "sourceView", void 0);
|
|
322
|
+
__decorate$B([
|
|
323
|
+
MapToComponentField()
|
|
324
|
+
], VegaRichTextEditorRenderer.prototype, "toolbarItems", void 0);
|
|
325
|
+
__decorate$B([
|
|
326
|
+
MapToComponentField()
|
|
327
|
+
], VegaRichTextEditorRenderer.prototype, "sourceEditConfig", void 0);
|
|
328
|
+
__decorate$B([
|
|
329
|
+
MapToComponentField()
|
|
330
|
+
], VegaRichTextEditorRenderer.prototype, "allowSourceEdit", void 0);
|
|
331
|
+
__decorate$B([
|
|
177
332
|
MapToComponentMethod('componentDidRender')
|
|
178
333
|
], VegaRichTextEditorRenderer.prototype, "componentDidRender", null);
|
|
179
334
|
|
|
180
|
-
var __decorate$
|
|
335
|
+
var __decorate$A = (undefined && undefined.__decorate) || function (decorators, target, key, desc) {
|
|
181
336
|
var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
|
|
182
337
|
if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
|
|
183
338
|
else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
|
|
@@ -222,73 +377,108 @@ class ToolbarRenderer extends VegaSlimmer {
|
|
|
222
377
|
};
|
|
223
378
|
}
|
|
224
379
|
render() {
|
|
225
|
-
return (h("vega-flex", { gap: "size-8", alignItems: "center", flexWrap: "wrap" },
|
|
226
|
-
|
|
227
|
-
|
|
380
|
+
return (h("vega-flex", { gap: "size-8", alignItems: "center", flexWrap: "wrap" },
|
|
381
|
+
this.allowSourceEdit && (h(Fragment, null,
|
|
382
|
+
h("div", { class: "toolbar-btn-group" }, this.sourceEditToolbarButtonSlimmer.render()),
|
|
383
|
+
!this.sourceView && this.toolbarItems.length > 0 && this.renderVegaDivider())),
|
|
384
|
+
this.toolbarItems.map((group) => {
|
|
385
|
+
return (h("div", { class: "toolbar-btn-group" }, group.map((item) => {
|
|
386
|
+
const presetRenderer = this.getToolbarBtnRenderer(item);
|
|
387
|
+
const customRenderer = RTEDTORendererManager.getRTEToolbarButtonRenderer(item);
|
|
388
|
+
if (presetRenderer) {
|
|
389
|
+
return presetRenderer.render();
|
|
390
|
+
}
|
|
391
|
+
else if (customRenderer) {
|
|
392
|
+
return customRenderer.render(h, {
|
|
393
|
+
host: this.host,
|
|
394
|
+
rteRange: this.selectionController.getCurrentRange(),
|
|
395
|
+
sourceEditMode: this.sourceView,
|
|
396
|
+
});
|
|
397
|
+
}
|
|
398
|
+
return null;
|
|
399
|
+
})));
|
|
228
400
|
})));
|
|
229
|
-
|
|
401
|
+
}
|
|
402
|
+
renderVegaDivider() {
|
|
403
|
+
return (h("vega-box", { height: "size-32" },
|
|
404
|
+
h("vega-divider", { direction: "vertical" })));
|
|
230
405
|
}
|
|
231
406
|
}
|
|
232
|
-
__decorate$
|
|
407
|
+
__decorate$A([
|
|
233
408
|
MapToComponentField()
|
|
234
409
|
], ToolbarRenderer.prototype, "toolbarItems", void 0);
|
|
235
|
-
__decorate$
|
|
410
|
+
__decorate$A([
|
|
411
|
+
MapToComponentField()
|
|
412
|
+
], ToolbarRenderer.prototype, "allowSourceEdit", void 0);
|
|
413
|
+
__decorate$A([
|
|
414
|
+
MapToComponentField()
|
|
415
|
+
], ToolbarRenderer.prototype, "host", void 0);
|
|
416
|
+
__decorate$A([
|
|
236
417
|
MapToComponentField()
|
|
237
418
|
], ToolbarRenderer.prototype, "clearStyleToolbarButtonSlimmer", void 0);
|
|
238
|
-
__decorate$
|
|
419
|
+
__decorate$A([
|
|
239
420
|
MapToComponentField()
|
|
240
421
|
], ToolbarRenderer.prototype, "boldToolbarButtonSlimmer", void 0);
|
|
241
|
-
__decorate$
|
|
422
|
+
__decorate$A([
|
|
242
423
|
MapToComponentField()
|
|
243
424
|
], ToolbarRenderer.prototype, "textStylesToolbarButtonSlimmer", void 0);
|
|
244
|
-
__decorate$
|
|
425
|
+
__decorate$A([
|
|
245
426
|
MapToComponentField()
|
|
246
427
|
], ToolbarRenderer.prototype, "italicToolbarButtonSlimmer", void 0);
|
|
247
|
-
__decorate$
|
|
428
|
+
__decorate$A([
|
|
248
429
|
MapToComponentField()
|
|
249
430
|
], ToolbarRenderer.prototype, "underlineToolbarButtonSlimmer", void 0);
|
|
250
|
-
__decorate$
|
|
431
|
+
__decorate$A([
|
|
251
432
|
MapToComponentField()
|
|
252
433
|
], ToolbarRenderer.prototype, "textColorToolbarButtonSlimmer", void 0);
|
|
253
|
-
__decorate$
|
|
434
|
+
__decorate$A([
|
|
254
435
|
MapToComponentField()
|
|
255
436
|
], ToolbarRenderer.prototype, "bulletsNumbersToolbarButtonSlimmer", void 0);
|
|
256
|
-
__decorate$
|
|
437
|
+
__decorate$A([
|
|
257
438
|
MapToComponentField()
|
|
258
439
|
], ToolbarRenderer.prototype, "horizontalAlignmentToolbarButtonSlimmer", void 0);
|
|
259
|
-
__decorate$
|
|
440
|
+
__decorate$A([
|
|
260
441
|
MapToComponentField()
|
|
261
442
|
], ToolbarRenderer.prototype, "strikethroughToolbarButtonSlimmer", void 0);
|
|
262
|
-
__decorate$
|
|
443
|
+
__decorate$A([
|
|
263
444
|
MapToComponentField()
|
|
264
445
|
], ToolbarRenderer.prototype, "imageToolbarButtonSlimmer", void 0);
|
|
265
|
-
__decorate$
|
|
446
|
+
__decorate$A([
|
|
266
447
|
MapToComponentField()
|
|
267
448
|
], ToolbarRenderer.prototype, "moreIndentToolbarButtonSlimmer", void 0);
|
|
268
|
-
__decorate$
|
|
449
|
+
__decorate$A([
|
|
269
450
|
MapToComponentField()
|
|
270
451
|
], ToolbarRenderer.prototype, "lessIndentToolbarButtonSlimmer", void 0);
|
|
271
|
-
__decorate$
|
|
452
|
+
__decorate$A([
|
|
272
453
|
MapToComponentField()
|
|
273
454
|
], ToolbarRenderer.prototype, "codeToolbarButtonSlimmer", void 0);
|
|
274
|
-
__decorate$
|
|
455
|
+
__decorate$A([
|
|
275
456
|
MapToComponentField()
|
|
276
457
|
], ToolbarRenderer.prototype, "linkToolbarButtonSlimmer", void 0);
|
|
277
|
-
__decorate$
|
|
458
|
+
__decorate$A([
|
|
278
459
|
MapToComponentField()
|
|
279
460
|
], ToolbarRenderer.prototype, "codeBlockToolbarButtonSlimmer", void 0);
|
|
461
|
+
__decorate$A([
|
|
462
|
+
MapToComponentField()
|
|
463
|
+
], ToolbarRenderer.prototype, "sourceEditToolbarButtonSlimmer", void 0);
|
|
464
|
+
__decorate$A([
|
|
465
|
+
MapToComponentField()
|
|
466
|
+
], ToolbarRenderer.prototype, "selectionController", void 0);
|
|
467
|
+
__decorate$A([
|
|
468
|
+
MapToComponentField()
|
|
469
|
+
], ToolbarRenderer.prototype, "sourceView", void 0);
|
|
280
470
|
|
|
281
471
|
const bold = {
|
|
282
472
|
icon: `<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 384 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 64C0 46.3 14.3 32 32 32H80 96 224c70.7 0 128 57.3 128 128c0 31.3-11.3 60.1-30 82.3c37.1 22.4 62 63.1 62 109.7c0 70.7-57.3 128-128 128H96 80 32c-17.7 0-32-14.3-32-32s14.3-32 32-32H48V256 96H32C14.3 96 0 81.7 0 64zM224 224c35.3 0 64-28.7 64-64s-28.7-64-64-64H112V224H224zM112 288V416H256c35.3 0 64-28.7 64-64s-28.7-64-64-64H224 112z"/></svg>`,
|
|
283
473
|
};
|
|
284
474
|
|
|
285
|
-
var __decorate$
|
|
475
|
+
var __decorate$z = (undefined && undefined.__decorate) || function (decorators, target, key, desc) {
|
|
286
476
|
var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
|
|
287
477
|
if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
|
|
288
478
|
else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
|
|
289
479
|
return c > 3 && r && Object.defineProperty(target, key, r), r;
|
|
290
480
|
};
|
|
291
|
-
class BoldToolbarButtonSlimmer extends
|
|
481
|
+
class BoldToolbarButtonSlimmer extends VisualModeToolbarButtonSlimmer {
|
|
292
482
|
constructor() {
|
|
293
483
|
super({
|
|
294
484
|
icon: 'bold',
|
|
@@ -325,7 +515,7 @@ class BoldToolbarButtonSlimmer extends ToolbarButtonSlimmer {
|
|
|
325
515
|
(() => {
|
|
326
516
|
VegaInternalIconManager.register({ bold });
|
|
327
517
|
})();
|
|
328
|
-
__decorate$
|
|
518
|
+
__decorate$z([
|
|
329
519
|
MapToComponentField()
|
|
330
520
|
], BoldToolbarButtonSlimmer.prototype, "selectionController", void 0);
|
|
331
521
|
|
|
@@ -333,32 +523,13 @@ const italic = {
|
|
|
333
523
|
icon: `<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 384 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="M128 64c0-17.7 14.3-32 32-32H352c17.7 0 32 14.3 32 32s-14.3 32-32 32H293.3L160 416h64c17.7 0 32 14.3 32 32s-14.3 32-32 32H32c-17.7 0-32-14.3-32-32s14.3-32 32-32H90.7L224 96H160c-17.7 0-32-14.3-32-32z"/></svg>`,
|
|
334
524
|
};
|
|
335
525
|
|
|
336
|
-
|
|
337
|
-
* Action to toggle the italic annotation
|
|
338
|
-
*/
|
|
339
|
-
class ItalicAnnotationAction extends TextSplittableAction {
|
|
340
|
-
constructor(italic) {
|
|
341
|
-
super();
|
|
342
|
-
this.isFlushable = true;
|
|
343
|
-
this.italic = italic;
|
|
344
|
-
}
|
|
345
|
-
/**
|
|
346
|
-
* Converts the action to an annotation
|
|
347
|
-
*
|
|
348
|
-
* @returns {ItalicAnnotation} The annotation
|
|
349
|
-
*/
|
|
350
|
-
toAnnotation() {
|
|
351
|
-
return new ItalicAnnotation(this.italic);
|
|
352
|
-
}
|
|
353
|
-
}
|
|
354
|
-
|
|
355
|
-
var __decorate$x = (undefined && undefined.__decorate) || function (decorators, target, key, desc) {
|
|
526
|
+
var __decorate$y = (undefined && undefined.__decorate) || function (decorators, target, key, desc) {
|
|
356
527
|
var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
|
|
357
528
|
if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
|
|
358
529
|
else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
|
|
359
530
|
return c > 3 && r && Object.defineProperty(target, key, r), r;
|
|
360
531
|
};
|
|
361
|
-
class ItalicToolbarButtonSlimmer extends
|
|
532
|
+
class ItalicToolbarButtonSlimmer extends VisualModeToolbarButtonSlimmer {
|
|
362
533
|
constructor() {
|
|
363
534
|
super({
|
|
364
535
|
icon: 'italic',
|
|
@@ -393,7 +564,7 @@ class ItalicToolbarButtonSlimmer extends ToolbarButtonSlimmer {
|
|
|
393
564
|
(() => {
|
|
394
565
|
VegaInternalIconManager.register({ italic });
|
|
395
566
|
})();
|
|
396
|
-
__decorate$
|
|
567
|
+
__decorate$y([
|
|
397
568
|
MapToComponentField()
|
|
398
569
|
], ItalicToolbarButtonSlimmer.prototype, "selectionController", void 0);
|
|
399
570
|
|
|
@@ -401,32 +572,13 @@ const underline = {
|
|
|
401
572
|
icon: `<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 448 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="M16 64c0-17.7 14.3-32 32-32h96c17.7 0 32 14.3 32 32s-14.3 32-32 32H128V224c0 53 43 96 96 96s96-43 96-96V96H304c-17.7 0-32-14.3-32-32s14.3-32 32-32h96c17.7 0 32 14.3 32 32s-14.3 32-32 32H384V224c0 88.4-71.6 160-160 160s-160-71.6-160-160V96H48C30.3 96 16 81.7 16 64zM0 448c0-17.7 14.3-32 32-32H416c17.7 0 32 14.3 32 32s-14.3 32-32 32H32c-17.7 0-32-14.3-32-32z"/></svg>`,
|
|
402
573
|
};
|
|
403
574
|
|
|
404
|
-
|
|
405
|
-
* Action to toggle the underline annotation
|
|
406
|
-
*/
|
|
407
|
-
class UnderlineAnnotationAction extends TextSplittableAction {
|
|
408
|
-
constructor(underline) {
|
|
409
|
-
super();
|
|
410
|
-
this.isFlushable = true;
|
|
411
|
-
this.underline = underline;
|
|
412
|
-
}
|
|
413
|
-
/**
|
|
414
|
-
* Converts the action to an annotation
|
|
415
|
-
*
|
|
416
|
-
* @returns {Annotation} the annotation
|
|
417
|
-
*/
|
|
418
|
-
toAnnotation() {
|
|
419
|
-
return new UnderlineAnnotation(this.underline);
|
|
420
|
-
}
|
|
421
|
-
}
|
|
422
|
-
|
|
423
|
-
var __decorate$w = (undefined && undefined.__decorate) || function (decorators, target, key, desc) {
|
|
575
|
+
var __decorate$x = (undefined && undefined.__decorate) || function (decorators, target, key, desc) {
|
|
424
576
|
var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
|
|
425
577
|
if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
|
|
426
578
|
else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
|
|
427
579
|
return c > 3 && r && Object.defineProperty(target, key, r), r;
|
|
428
580
|
};
|
|
429
|
-
class UnderlineToolbarButtonSlimmer extends
|
|
581
|
+
class UnderlineToolbarButtonSlimmer extends VisualModeToolbarButtonSlimmer {
|
|
430
582
|
constructor() {
|
|
431
583
|
super({
|
|
432
584
|
icon: 'underline',
|
|
@@ -464,7 +616,7 @@ class UnderlineToolbarButtonSlimmer extends ToolbarButtonSlimmer {
|
|
|
464
616
|
(() => {
|
|
465
617
|
VegaInternalIconManager.register({ underline });
|
|
466
618
|
})();
|
|
467
|
-
__decorate$
|
|
619
|
+
__decorate$x([
|
|
468
620
|
MapToComponentField()
|
|
469
621
|
], UnderlineToolbarButtonSlimmer.prototype, "selectionController", void 0);
|
|
470
622
|
|
|
@@ -472,13 +624,13 @@ const textSize = {
|
|
|
472
624
|
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="M64 128V96h96l0 320H128c-17.7 0-32 14.3-32 32s14.3 32 32 32H256c17.7 0 32-14.3 32-32s-14.3-32-32-32H224l0-320h96v32c0 17.7 14.3 32 32 32s32-14.3 32-32V80c0-26.5-21.5-48-48-48H192 48C21.5 32 0 53.5 0 80v48c0 17.7 14.3 32 32 32s32-14.3 32-32zM384 304V288h64l0 128H432c-17.7 0-32 14.3-32 32s14.3 32 32 32h96c17.7 0 32-14.3 32-32s-14.3-32-32-32H512l0-128h64v16c0 17.7 14.3 32 32 32s32-14.3 32-32V272c0-26.5-21.5-48-48-48H368c-26.5 0-48 21.5-48 48v32c0 17.7 14.3 32 32 32s32-14.3 32-32z"/></svg>`,
|
|
473
625
|
};
|
|
474
626
|
|
|
475
|
-
var __decorate$
|
|
627
|
+
var __decorate$w = (undefined && undefined.__decorate) || function (decorators, target, key, desc) {
|
|
476
628
|
var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
|
|
477
629
|
if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
|
|
478
630
|
else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
|
|
479
631
|
return c > 3 && r && Object.defineProperty(target, key, r), r;
|
|
480
632
|
};
|
|
481
|
-
class TextStylesToolbarButtonSlimmer extends
|
|
633
|
+
class TextStylesToolbarButtonSlimmer extends VisualModeToolbarButtonSlimmer {
|
|
482
634
|
constructor() {
|
|
483
635
|
super({
|
|
484
636
|
icon: 'text-size',
|
|
@@ -520,7 +672,7 @@ class TextStylesToolbarButtonSlimmer extends ToolbarButtonSlimmer {
|
|
|
520
672
|
const boldAnnotation = new BoldAnnotation(item.bold);
|
|
521
673
|
return (h("vega-dropdown-item", { key: item.key, itemKey: item.key },
|
|
522
674
|
h("vega-box", { padding: { right: 'size-20' } },
|
|
523
|
-
h("div", { style: Object.assign(Object.assign({}, textStyleAnnotation.
|
|
675
|
+
h("div", { style: Object.assign(Object.assign({}, textStyleAnnotation.renderStyle({ standalone: true })), boldAnnotation.renderStyle({ standalone: true })) }, this.translationSlimmer.t(item.label)))));
|
|
524
676
|
})));
|
|
525
677
|
}
|
|
526
678
|
isSelected() {
|
|
@@ -536,6 +688,7 @@ class TextStylesToolbarButtonSlimmer extends ToolbarButtonSlimmer {
|
|
|
536
688
|
DomNodeSubjectObserverFactory.addUniqueObserverToNode(dropdownRef, VegaDropdownClick, this.handleDropdownItemClick);
|
|
537
689
|
}
|
|
538
690
|
getSelectedSourceKey() {
|
|
691
|
+
var _a;
|
|
539
692
|
const currentSelectedBlocks = this.selectionController
|
|
540
693
|
.getSelectedBlocks()
|
|
541
694
|
.filter((block) => block instanceof RTETextBlock);
|
|
@@ -543,7 +696,7 @@ class TextStylesToolbarButtonSlimmer extends ToolbarButtonSlimmer {
|
|
|
543
696
|
currentSelectedBlocks.every((block) => block.type === currentSelectedBlocks[0].type);
|
|
544
697
|
if (isSameType) {
|
|
545
698
|
const blockAnnotation = currentSelectedBlocks[0].getAnnotationByType(BlockAnnotationTypeEnum.TEXT_STYLE);
|
|
546
|
-
return blockAnnotation.textStyle;
|
|
699
|
+
return (_a = blockAnnotation === null || blockAnnotation === void 0 ? void 0 : blockAnnotation.textStyle) !== null && _a !== void 0 ? _a : '';
|
|
547
700
|
}
|
|
548
701
|
return '';
|
|
549
702
|
}
|
|
@@ -583,10 +736,10 @@ TextStylesToolbarButtonSlimmer.items = [
|
|
|
583
736
|
label: 'Paragraph',
|
|
584
737
|
},
|
|
585
738
|
];
|
|
586
|
-
__decorate$
|
|
739
|
+
__decorate$w([
|
|
587
740
|
MapToComponentField()
|
|
588
741
|
], TextStylesToolbarButtonSlimmer.prototype, "selectionController", void 0);
|
|
589
|
-
__decorate$
|
|
742
|
+
__decorate$w([
|
|
590
743
|
MapToComponentField()
|
|
591
744
|
], TextStylesToolbarButtonSlimmer.prototype, "focusController", void 0);
|
|
592
745
|
|
|
@@ -594,13 +747,13 @@ const TextSlash = {
|
|
|
594
747
|
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="M38.8 5.1C28.4-3.1 13.3-1.2 5.1 9.2S-1.2 34.7 9.2 42.9l592 464c10.4 8.2 25.5 6.3 33.7-4.1s6.3-25.5-4.1-33.7L355.7 253.5 400.2 96H503L497 120.2c-4.3 17.1 6.1 34.5 23.3 38.8s34.5-6.1 38.8-23.3l11-44.1C577.6 61.3 554.7 32 523.5 32H376.1h-.3H204.5c-22 0-41.2 15-46.6 36.4l-6.3 25.2L38.8 5.1zm168 131.7c.1-.3 .2-.7 .3-1L217 96H333.7L301.3 210.8l-94.5-74.1zM243.3 416H192c-17.7 0-32 14.3-32 32s14.3 32 32 32H352c17.7 0 32-14.3 32-32s-14.3-32-32-32H309.8l17.6-62.1L272.9 311 243.3 416z"/></svg>`,
|
|
595
748
|
};
|
|
596
749
|
|
|
597
|
-
var __decorate$
|
|
750
|
+
var __decorate$v = (undefined && undefined.__decorate) || function (decorators, target, key, desc) {
|
|
598
751
|
var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
|
|
599
752
|
if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
|
|
600
753
|
else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
|
|
601
754
|
return c > 3 && r && Object.defineProperty(target, key, r), r;
|
|
602
755
|
};
|
|
603
|
-
class ClearStyleToolbarButtonSlimmer extends
|
|
756
|
+
class ClearStyleToolbarButtonSlimmer extends VisualModeToolbarButtonSlimmer {
|
|
604
757
|
constructor() {
|
|
605
758
|
super({
|
|
606
759
|
icon: 'text-slash',
|
|
@@ -632,7 +785,7 @@ class ClearStyleToolbarButtonSlimmer extends ToolbarButtonSlimmer {
|
|
|
632
785
|
'text-slash': TextSlash,
|
|
633
786
|
});
|
|
634
787
|
})();
|
|
635
|
-
__decorate$
|
|
788
|
+
__decorate$v([
|
|
636
789
|
MapToComponentField()
|
|
637
790
|
], ClearStyleToolbarButtonSlimmer.prototype, "selectionController", void 0);
|
|
638
791
|
|
|
@@ -640,13 +793,13 @@ const codeSimple = {
|
|
|
640
793
|
icon: `<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 576 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="M214.6 118.6c12.5-12.5 12.5-32.8 0-45.3s-32.8-12.5-45.3 0l-160 160c-12.5 12.5-12.5 32.8 0 45.3l160 160c12.5 12.5 32.8 12.5 45.3 0s12.5-32.8 0-45.3L77.3 256 214.6 118.6zm146.7 0L498.7 256 361.4 393.4c-12.5 12.5-12.5 32.8 0 45.3s32.8 12.5 45.3 0l160-160c12.5-12.5 12.5-32.8 0-45.3l-160-160c-12.5-12.5-32.8-12.5-45.3 0s-12.5 32.8 0 45.3z"/></svg>`,
|
|
641
794
|
};
|
|
642
795
|
|
|
643
|
-
var __decorate$
|
|
796
|
+
var __decorate$u = (undefined && undefined.__decorate) || function (decorators, target, key, desc) {
|
|
644
797
|
var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
|
|
645
798
|
if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
|
|
646
799
|
else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
|
|
647
800
|
return c > 3 && r && Object.defineProperty(target, key, r), r;
|
|
648
801
|
};
|
|
649
|
-
class CodeToolbarButtonSlimmer extends
|
|
802
|
+
class CodeToolbarButtonSlimmer extends VisualModeToolbarButtonSlimmer {
|
|
650
803
|
constructor() {
|
|
651
804
|
super({
|
|
652
805
|
icon: 'code-simple',
|
|
@@ -679,7 +832,7 @@ class CodeToolbarButtonSlimmer extends ToolbarButtonSlimmer {
|
|
|
679
832
|
(() => {
|
|
680
833
|
VegaInternalIconManager.register({ 'code-simple': codeSimple });
|
|
681
834
|
})();
|
|
682
|
-
__decorate$
|
|
835
|
+
__decorate$u([
|
|
683
836
|
MapToComponentField()
|
|
684
837
|
], CodeToolbarButtonSlimmer.prototype, "selectionController", void 0);
|
|
685
838
|
|
|
@@ -687,32 +840,13 @@ const strikethrough = {
|
|
|
687
840
|
icon: `<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 512 512"><!--! Font Awesome Free 6.1.1 by @fontawesome - https://fontawesome.com License - https://fontawesome.com/license/free (Icons: CC BY 4.0, Fonts: SIL OFL 1.1, Code: MIT License) Copyright 2022 Fonticons, Inc. --><path fill="currentColor" d="M332.2 319.9c17.22 12.17 22.33 26.51 18.61 48.21c-3.031 17.59-10.88 29.34-24.72 36.99c-35.44 19.75-108.5 11.96-186-19.68c-16.34-6.686-35.03 1.156-41.72 17.53s1.188 35.05 17.53 41.71c31.75 12.93 95.69 35.37 157.6 35.37c29.62 0 58.81-5.156 83.72-18.96c30.81-17.09 50.44-45.46 56.72-82.11c3.998-23.27 2.168-42.58-3.488-59.05H332.2zM488 239.9l-176.5-.0309c-15.85-5.613-31.83-10.34-46.7-14.62c-85.47-24.62-110.9-39.05-103.7-81.33c2.5-14.53 10.16-25.96 22.72-34.03c20.47-13.15 64.06-23.84 155.4 .3438c17.09 4.531 34.59-5.654 39.13-22.74c4.531-17.09-5.656-34.59-22.75-39.12c-91.31-24.18-160.7-21.62-206.3 7.654C121.8 73.72 103.6 101.1 98.09 133.1C89.26 184.5 107.9 217.3 137.2 239.9L24 239.9c-13.25 0-24 10.75-24 23.1c0 13.25 10.75 23.1 24 23.1h464c13.25 0 24-10.75 24-23.1C512 250.7 501.3 239.9 488 239.9z"/></svg>`,
|
|
688
841
|
};
|
|
689
842
|
|
|
690
|
-
|
|
691
|
-
* Action to toggle the strikethrough annotation
|
|
692
|
-
*/
|
|
693
|
-
class StrikethroughAnnotationAction extends TextSplittableAction {
|
|
694
|
-
constructor(underline) {
|
|
695
|
-
super();
|
|
696
|
-
this.isFlushable = true;
|
|
697
|
-
this.strikethrough = underline;
|
|
698
|
-
}
|
|
699
|
-
/**
|
|
700
|
-
* Converts the action to an annotation
|
|
701
|
-
*
|
|
702
|
-
* @returns {Annotation} the annotation
|
|
703
|
-
*/
|
|
704
|
-
toAnnotation() {
|
|
705
|
-
return new StrikethroughAnnotation(this.strikethrough);
|
|
706
|
-
}
|
|
707
|
-
}
|
|
708
|
-
|
|
709
|
-
var __decorate$s = (undefined && undefined.__decorate) || function (decorators, target, key, desc) {
|
|
843
|
+
var __decorate$t = (undefined && undefined.__decorate) || function (decorators, target, key, desc) {
|
|
710
844
|
var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
|
|
711
845
|
if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
|
|
712
846
|
else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
|
|
713
847
|
return c > 3 && r && Object.defineProperty(target, key, r), r;
|
|
714
848
|
};
|
|
715
|
-
class StrikethroughToolbarButtonSlimmer extends
|
|
849
|
+
class StrikethroughToolbarButtonSlimmer extends VisualModeToolbarButtonSlimmer {
|
|
716
850
|
constructor() {
|
|
717
851
|
super({
|
|
718
852
|
icon: 'strikethrough',
|
|
@@ -750,7 +884,7 @@ class StrikethroughToolbarButtonSlimmer extends ToolbarButtonSlimmer {
|
|
|
750
884
|
(() => {
|
|
751
885
|
VegaInternalIconManager.register({ strikethrough });
|
|
752
886
|
})();
|
|
753
|
-
__decorate$
|
|
887
|
+
__decorate$t([
|
|
754
888
|
MapToComponentField()
|
|
755
889
|
], StrikethroughToolbarButtonSlimmer.prototype, "selectionController", void 0);
|
|
756
890
|
|
|
@@ -758,13 +892,13 @@ const link = {
|
|
|
758
892
|
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="M562.8 267.7c56.5-56.5 56.5-148 0-204.5c-50-50-128.8-56.5-186.3-15.4l-1.6 1.1c-14.4 10.3-17.7 30.3-7.4 44.6s30.3 17.7 44.6 7.4l1.6-1.1c32.1-22.9 76-19.3 103.8 8.6c31.5 31.5 31.5 82.5 0 114L405.3 334.8c-31.5 31.5-82.5 31.5-114 0c-27.9-27.9-31.5-71.8-8.6-103.8l1.1-1.6c10.3-14.4 6.9-34.4-7.4-44.6s-34.4-6.9-44.6 7.4l-1.1 1.6C189.5 251.2 196 330 246 380c56.5 56.5 148 56.5 204.5 0L562.8 267.7zM43.2 244.3c-56.5 56.5-56.5 148 0 204.5c50 50 128.8 56.5 186.3 15.4l1.6-1.1c14.4-10.3 17.7-30.3 7.4-44.6s-30.3-17.7-44.6-7.4l-1.6 1.1c-32.1 22.9-76 19.3-103.8-8.6C57 372 57 321 88.5 289.5L200.7 177.2c31.5-31.5 82.5-31.5 114 0c27.9 27.9 31.5 71.8 8.6 103.9l-1.1 1.6c-10.3 14.4-6.9 34.4 7.4 44.6s34.4 6.9 44.6-7.4l1.1-1.6C416.5 260.8 410 182 360 132c-56.5-56.5-148-56.5-204.5 0L43.2 244.3z"/></svg>`,
|
|
759
893
|
};
|
|
760
894
|
|
|
761
|
-
var __decorate$
|
|
895
|
+
var __decorate$s = (undefined && undefined.__decorate) || function (decorators, target, key, desc) {
|
|
762
896
|
var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
|
|
763
897
|
if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
|
|
764
898
|
else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
|
|
765
899
|
return c > 3 && r && Object.defineProperty(target, key, r), r;
|
|
766
900
|
};
|
|
767
|
-
class LinkToolbarButtonSlimmer extends
|
|
901
|
+
class LinkToolbarButtonSlimmer extends VisualModeToolbarButtonSlimmer {
|
|
768
902
|
constructor() {
|
|
769
903
|
super({
|
|
770
904
|
icon: 'link',
|
|
@@ -783,6 +917,7 @@ class LinkToolbarButtonSlimmer extends ToolbarButtonSlimmer {
|
|
|
783
917
|
link: { href: url, groupKey: groupKey },
|
|
784
918
|
newText: textChanged ? text : undefined,
|
|
785
919
|
needMergeNode: textChanged && this.currentSelectedNodes.length > 1,
|
|
920
|
+
type: 'link',
|
|
786
921
|
}));
|
|
787
922
|
});
|
|
788
923
|
return;
|
|
@@ -840,7 +975,7 @@ class LinkToolbarButtonSlimmer extends ToolbarButtonSlimmer {
|
|
|
840
975
|
(() => {
|
|
841
976
|
VegaInternalIconManager.register({ link: link });
|
|
842
977
|
})();
|
|
843
|
-
__decorate$
|
|
978
|
+
__decorate$s([
|
|
844
979
|
MapToComponentField()
|
|
845
980
|
], LinkToolbarButtonSlimmer.prototype, "selectionController", void 0);
|
|
846
981
|
|
|
@@ -848,32 +983,13 @@ const indent = {
|
|
|
848
983
|
icon: `<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 448 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 64C0 46.3 14.3 32 32 32H416c17.7 0 32 14.3 32 32s-14.3 32-32 32H32C14.3 96 0 81.7 0 64zM192 192c0-17.7 14.3-32 32-32H416c17.7 0 32 14.3 32 32s-14.3 32-32 32H224c-17.7 0-32-14.3-32-32zm32 96H416c17.7 0 32 14.3 32 32s-14.3 32-32 32H224c-17.7 0-32-14.3-32-32s14.3-32 32-32zM0 448c0-17.7 14.3-32 32-32H416c17.7 0 32 14.3 32 32s-14.3 32-32 32H32c-17.7 0-32-14.3-32-32zM127.8 268.6L25.8 347.9C15.3 356.1 0 348.6 0 335.3V176.7c0-13.3 15.3-20.8 25.8-12.6l101.9 79.3c8.2 6.4 8.2 18.9 0 25.3z"/></svg>`,
|
|
849
984
|
};
|
|
850
985
|
|
|
851
|
-
|
|
852
|
-
* Action to toggle block indent annotation
|
|
853
|
-
*/
|
|
854
|
-
class IndentAnnotationAction extends AnnotationAction {
|
|
855
|
-
constructor(indent) {
|
|
856
|
-
super();
|
|
857
|
-
this.isFlushable = true;
|
|
858
|
-
this.indent = indent;
|
|
859
|
-
}
|
|
860
|
-
/**
|
|
861
|
-
* Converts the action to an annotation
|
|
862
|
-
*
|
|
863
|
-
* @returns {Annotation} The annotation
|
|
864
|
-
*/
|
|
865
|
-
toAnnotation() {
|
|
866
|
-
return new IndentAnnotation(this.indent);
|
|
867
|
-
}
|
|
868
|
-
}
|
|
869
|
-
|
|
870
|
-
var __decorate$q = (undefined && undefined.__decorate) || function (decorators, target, key, desc) {
|
|
986
|
+
var __decorate$r = (undefined && undefined.__decorate) || function (decorators, target, key, desc) {
|
|
871
987
|
var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
|
|
872
988
|
if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
|
|
873
989
|
else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
|
|
874
990
|
return c > 3 && r && Object.defineProperty(target, key, r), r;
|
|
875
991
|
};
|
|
876
|
-
class MoreIndentToolbarButtonSlimmer extends
|
|
992
|
+
class MoreIndentToolbarButtonSlimmer extends VisualModeToolbarButtonSlimmer {
|
|
877
993
|
constructor() {
|
|
878
994
|
super({
|
|
879
995
|
icon: 'indent',
|
|
@@ -903,7 +1019,7 @@ class MoreIndentToolbarButtonSlimmer extends ToolbarButtonSlimmer {
|
|
|
903
1019
|
(() => {
|
|
904
1020
|
VegaInternalIconManager.register({ indent: indent });
|
|
905
1021
|
})();
|
|
906
|
-
__decorate$
|
|
1022
|
+
__decorate$r([
|
|
907
1023
|
MapToComponentField()
|
|
908
1024
|
], MoreIndentToolbarButtonSlimmer.prototype, "selectionController", void 0);
|
|
909
1025
|
|
|
@@ -911,13 +1027,13 @@ const outdent = {
|
|
|
911
1027
|
icon: `<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 512 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="M6 64C6 46.3 20.3 32 38 32H422c17.7 0 32 14.3 32 32s-14.3 32-32 32H38C20.3 96 6 81.7 6 64zM198 192c0-17.7 14.3-32 32-32H422c17.7 0 32 14.3 32 32s-14.3 32-32 32H230c-17.7 0-32-14.3-32-32zm32 96H422c17.7 0 32 14.3 32 32s-14.3 32-32 32H230c-17.7 0-32-14.3-32-32s14.3-32 32-32zM6 448c0-17.7 14.3-32 32-32H422c17.7 0 32 14.3 32 32s-14.3 32-32 32H38c-17.7 0-32-14.3-32-32zm.2-179.4c-8.2-6.4-8.2-18.9 0-25.3l101.9-79.3c10.5-8.2 25.8-.7 25.8 12.6V335.3c0 13.3-15.3 20.8-25.8 12.6L6.2 268.6z"/></svg>`,
|
|
912
1028
|
};
|
|
913
1029
|
|
|
914
|
-
var __decorate$
|
|
1030
|
+
var __decorate$q = (undefined && undefined.__decorate) || function (decorators, target, key, desc) {
|
|
915
1031
|
var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
|
|
916
1032
|
if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
|
|
917
1033
|
else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
|
|
918
1034
|
return c > 3 && r && Object.defineProperty(target, key, r), r;
|
|
919
1035
|
};
|
|
920
|
-
class LessIndentToolbarButtonSlimmer extends
|
|
1036
|
+
class LessIndentToolbarButtonSlimmer extends VisualModeToolbarButtonSlimmer {
|
|
921
1037
|
constructor() {
|
|
922
1038
|
super({
|
|
923
1039
|
icon: 'outdent',
|
|
@@ -948,7 +1064,7 @@ class LessIndentToolbarButtonSlimmer extends ToolbarButtonSlimmer {
|
|
|
948
1064
|
(() => {
|
|
949
1065
|
VegaInternalIconManager.register({ outdent: outdent });
|
|
950
1066
|
})();
|
|
951
|
-
__decorate$
|
|
1067
|
+
__decorate$q([
|
|
952
1068
|
MapToComponentField()
|
|
953
1069
|
], LessIndentToolbarButtonSlimmer.prototype, "selectionController", void 0);
|
|
954
1070
|
|
|
@@ -969,13 +1085,13 @@ class ImageUpdateUrlAction extends ModifyContentAction {
|
|
|
969
1085
|
}
|
|
970
1086
|
}
|
|
971
1087
|
|
|
972
|
-
var __decorate$
|
|
1088
|
+
var __decorate$p = (undefined && undefined.__decorate) || function (decorators, target, key, desc) {
|
|
973
1089
|
var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
|
|
974
1090
|
if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
|
|
975
1091
|
else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
|
|
976
1092
|
return c > 3 && r && Object.defineProperty(target, key, r), r;
|
|
977
1093
|
};
|
|
978
|
-
class ImageToolbarButtonSlimmer extends
|
|
1094
|
+
class ImageToolbarButtonSlimmer extends VisualModeToolbarButtonSlimmer {
|
|
979
1095
|
constructor() {
|
|
980
1096
|
super({
|
|
981
1097
|
icon: 'image',
|
|
@@ -1027,13 +1143,13 @@ class ImageToolbarButtonSlimmer extends ToolbarButtonSlimmer {
|
|
|
1027
1143
|
(() => {
|
|
1028
1144
|
VegaInternalIconManager.register({ image: image });
|
|
1029
1145
|
})();
|
|
1030
|
-
__decorate$
|
|
1146
|
+
__decorate$p([
|
|
1031
1147
|
MapToComponentField()
|
|
1032
1148
|
], ImageToolbarButtonSlimmer.prototype, "insertImageController", void 0);
|
|
1033
|
-
__decorate$
|
|
1149
|
+
__decorate$p([
|
|
1034
1150
|
MapToComponentField()
|
|
1035
1151
|
], ImageToolbarButtonSlimmer.prototype, "imageInsertedEventEmitter", void 0);
|
|
1036
|
-
__decorate$
|
|
1152
|
+
__decorate$p([
|
|
1037
1153
|
MapToComponentField()
|
|
1038
1154
|
], ImageToolbarButtonSlimmer.prototype, "selectionController", void 0);
|
|
1039
1155
|
|
|
@@ -1070,13 +1186,13 @@ class TransformParagraphAction extends ModifyContentAction {
|
|
|
1070
1186
|
}
|
|
1071
1187
|
}
|
|
1072
1188
|
|
|
1073
|
-
var __decorate$
|
|
1189
|
+
var __decorate$o = (undefined && undefined.__decorate) || function (decorators, target, key, desc) {
|
|
1074
1190
|
var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
|
|
1075
1191
|
if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
|
|
1076
1192
|
else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
|
|
1077
1193
|
return c > 3 && r && Object.defineProperty(target, key, r), r;
|
|
1078
1194
|
};
|
|
1079
|
-
class BulletsToolbarButtonSlimmer extends
|
|
1195
|
+
class BulletsToolbarButtonSlimmer extends VisualModeToolbarButtonSlimmer {
|
|
1080
1196
|
constructor() {
|
|
1081
1197
|
super({
|
|
1082
1198
|
icon: 'list-ul',
|
|
@@ -1129,20 +1245,20 @@ class BulletsToolbarButtonSlimmer extends ToolbarButtonSlimmer {
|
|
|
1129
1245
|
}
|
|
1130
1246
|
}
|
|
1131
1247
|
}
|
|
1132
|
-
__decorate$
|
|
1248
|
+
__decorate$o([
|
|
1133
1249
|
MapToComponentField()
|
|
1134
1250
|
], BulletsToolbarButtonSlimmer.prototype, "selectionController", void 0);
|
|
1135
|
-
__decorate$
|
|
1251
|
+
__decorate$o([
|
|
1136
1252
|
MapToComponentField()
|
|
1137
1253
|
], BulletsToolbarButtonSlimmer.prototype, "popoverRef", void 0);
|
|
1138
1254
|
|
|
1139
|
-
var __decorate$
|
|
1255
|
+
var __decorate$n = (undefined && undefined.__decorate) || function (decorators, target, key, desc) {
|
|
1140
1256
|
var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
|
|
1141
1257
|
if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
|
|
1142
1258
|
else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
|
|
1143
1259
|
return c > 3 && r && Object.defineProperty(target, key, r), r;
|
|
1144
1260
|
};
|
|
1145
|
-
class NumbersToolbarButtonSlimmer extends
|
|
1261
|
+
class NumbersToolbarButtonSlimmer extends VisualModeToolbarButtonSlimmer {
|
|
1146
1262
|
constructor() {
|
|
1147
1263
|
super({
|
|
1148
1264
|
icon: 'list-ol',
|
|
@@ -1193,20 +1309,20 @@ class NumbersToolbarButtonSlimmer extends ToolbarButtonSlimmer {
|
|
|
1193
1309
|
}
|
|
1194
1310
|
}
|
|
1195
1311
|
}
|
|
1196
|
-
__decorate$
|
|
1312
|
+
__decorate$n([
|
|
1197
1313
|
MapToComponentField()
|
|
1198
1314
|
], NumbersToolbarButtonSlimmer.prototype, "selectionController", void 0);
|
|
1199
|
-
__decorate$
|
|
1315
|
+
__decorate$n([
|
|
1200
1316
|
MapToComponentField()
|
|
1201
1317
|
], NumbersToolbarButtonSlimmer.prototype, "popoverRef", void 0);
|
|
1202
1318
|
|
|
1203
|
-
var __decorate$
|
|
1319
|
+
var __decorate$m = (undefined && undefined.__decorate) || function (decorators, target, key, desc) {
|
|
1204
1320
|
var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
|
|
1205
1321
|
if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
|
|
1206
1322
|
else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
|
|
1207
1323
|
return c > 3 && r && Object.defineProperty(target, key, r), r;
|
|
1208
1324
|
};
|
|
1209
|
-
class BulletsNumbersToolbarButtonSlimmer extends
|
|
1325
|
+
class BulletsNumbersToolbarButtonSlimmer extends VisualModeToolbarButtonSlimmer {
|
|
1210
1326
|
constructor() {
|
|
1211
1327
|
super({
|
|
1212
1328
|
icon: 'list-ul',
|
|
@@ -1250,49 +1366,30 @@ class BulletsNumbersToolbarButtonSlimmer extends ToolbarButtonSlimmer {
|
|
|
1250
1366
|
'list-ol': ListOL,
|
|
1251
1367
|
});
|
|
1252
1368
|
})();
|
|
1253
|
-
__decorate$
|
|
1369
|
+
__decorate$m([
|
|
1254
1370
|
MapToComponentField()
|
|
1255
1371
|
], BulletsNumbersToolbarButtonSlimmer.prototype, "selectionController", void 0);
|
|
1256
|
-
__decorate$
|
|
1372
|
+
__decorate$m([
|
|
1257
1373
|
InjectVegaSlimmer()
|
|
1258
1374
|
], BulletsNumbersToolbarButtonSlimmer.prototype, "bulletsToolbarButtonSlimmer", void 0);
|
|
1259
|
-
__decorate$
|
|
1375
|
+
__decorate$m([
|
|
1260
1376
|
InjectVegaSlimmer()
|
|
1261
1377
|
], BulletsNumbersToolbarButtonSlimmer.prototype, "numbersToolbarButtonSlimmer", void 0);
|
|
1262
|
-
__decorate$
|
|
1378
|
+
__decorate$m([
|
|
1263
1379
|
MapToComponentMethod('componentWillRender')
|
|
1264
1380
|
], BulletsNumbersToolbarButtonSlimmer.prototype, "componentWillRender", null);
|
|
1265
1381
|
|
|
1266
|
-
/**
|
|
1267
|
-
* Action to toggle block horizontal alignment annotation
|
|
1268
|
-
*/
|
|
1269
|
-
class HorizontalAlignmentAnnotationAction extends AnnotationAction {
|
|
1270
|
-
constructor(textAlign) {
|
|
1271
|
-
super();
|
|
1272
|
-
this.isFlushable = true;
|
|
1273
|
-
this.textAlign = textAlign;
|
|
1274
|
-
}
|
|
1275
|
-
/**
|
|
1276
|
-
* Converts the action to an annotation
|
|
1277
|
-
*
|
|
1278
|
-
* @returns {HorizontalAlignmentAnnotation} The annotation
|
|
1279
|
-
*/
|
|
1280
|
-
toAnnotation() {
|
|
1281
|
-
return new HorizontalAlignmentAnnotation(this.textAlign);
|
|
1282
|
-
}
|
|
1283
|
-
}
|
|
1284
|
-
|
|
1285
1382
|
const AlignLeft = {
|
|
1286
1383
|
icon: `<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 448 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="M288 64c0 17.7-14.3 32-32 32H32C14.3 96 0 81.7 0 64S14.3 32 32 32H256c17.7 0 32 14.3 32 32zm0 256c0 17.7-14.3 32-32 32H32c-17.7 0-32-14.3-32-32s14.3-32 32-32H256c17.7 0 32 14.3 32 32zM0 192c0-17.7 14.3-32 32-32H416c17.7 0 32 14.3 32 32s-14.3 32-32 32H32c-17.7 0-32-14.3-32-32zM448 448c0 17.7-14.3 32-32 32H32c-17.7 0-32-14.3-32-32s14.3-32 32-32H416c17.7 0 32 14.3 32 32z"/></svg>`,
|
|
1287
1384
|
};
|
|
1288
1385
|
|
|
1289
|
-
var __decorate$
|
|
1386
|
+
var __decorate$l = (undefined && undefined.__decorate) || function (decorators, target, key, desc) {
|
|
1290
1387
|
var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
|
|
1291
1388
|
if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
|
|
1292
1389
|
else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
|
|
1293
1390
|
return c > 3 && r && Object.defineProperty(target, key, r), r;
|
|
1294
1391
|
};
|
|
1295
|
-
class LeftAlignToolbarButtonSlimmer extends
|
|
1392
|
+
class LeftAlignToolbarButtonSlimmer extends VisualModeToolbarButtonSlimmer {
|
|
1296
1393
|
constructor() {
|
|
1297
1394
|
super({
|
|
1298
1395
|
icon: 'align-left',
|
|
@@ -1321,10 +1418,10 @@ class LeftAlignToolbarButtonSlimmer extends ToolbarButtonSlimmer {
|
|
|
1321
1418
|
'align-left': AlignLeft,
|
|
1322
1419
|
});
|
|
1323
1420
|
})();
|
|
1324
|
-
__decorate$
|
|
1421
|
+
__decorate$l([
|
|
1325
1422
|
MapToComponentField()
|
|
1326
1423
|
], LeftAlignToolbarButtonSlimmer.prototype, "selectionController", void 0);
|
|
1327
|
-
__decorate$
|
|
1424
|
+
__decorate$l([
|
|
1328
1425
|
MapToComponentField()
|
|
1329
1426
|
], LeftAlignToolbarButtonSlimmer.prototype, "popoverRef", void 0);
|
|
1330
1427
|
|
|
@@ -1332,13 +1429,13 @@ const AlignCenter = {
|
|
|
1332
1429
|
icon: `<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 448 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="M352 64c0-17.7-14.3-32-32-32H128c-17.7 0-32 14.3-32 32s14.3 32 32 32H320c17.7 0 32-14.3 32-32zm96 128c0-17.7-14.3-32-32-32H32c-17.7 0-32 14.3-32 32s14.3 32 32 32H416c17.7 0 32-14.3 32-32zM0 448c0 17.7 14.3 32 32 32H416c17.7 0 32-14.3 32-32s-14.3-32-32-32H32c-17.7 0-32 14.3-32 32zM352 320c0-17.7-14.3-32-32-32H128c-17.7 0-32 14.3-32 32s14.3 32 32 32H320c17.7 0 32-14.3 32-32z"/></svg>`,
|
|
1333
1430
|
};
|
|
1334
1431
|
|
|
1335
|
-
var __decorate$
|
|
1432
|
+
var __decorate$k = (undefined && undefined.__decorate) || function (decorators, target, key, desc) {
|
|
1336
1433
|
var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
|
|
1337
1434
|
if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
|
|
1338
1435
|
else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
|
|
1339
1436
|
return c > 3 && r && Object.defineProperty(target, key, r), r;
|
|
1340
1437
|
};
|
|
1341
|
-
class CenterAlignToolbarButtonSlimmer extends
|
|
1438
|
+
class CenterAlignToolbarButtonSlimmer extends VisualModeToolbarButtonSlimmer {
|
|
1342
1439
|
constructor() {
|
|
1343
1440
|
super({
|
|
1344
1441
|
icon: 'align-center',
|
|
@@ -1367,10 +1464,10 @@ class CenterAlignToolbarButtonSlimmer extends ToolbarButtonSlimmer {
|
|
|
1367
1464
|
'align-center': AlignCenter,
|
|
1368
1465
|
});
|
|
1369
1466
|
})();
|
|
1370
|
-
__decorate$
|
|
1467
|
+
__decorate$k([
|
|
1371
1468
|
MapToComponentField()
|
|
1372
1469
|
], CenterAlignToolbarButtonSlimmer.prototype, "selectionController", void 0);
|
|
1373
|
-
__decorate$
|
|
1470
|
+
__decorate$k([
|
|
1374
1471
|
MapToComponentField()
|
|
1375
1472
|
], CenterAlignToolbarButtonSlimmer.prototype, "popoverRef", void 0);
|
|
1376
1473
|
|
|
@@ -1378,13 +1475,13 @@ const AlignRight = {
|
|
|
1378
1475
|
icon: `<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 448 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="M448 64c0 17.7-14.3 32-32 32H192c-17.7 0-32-14.3-32-32s14.3-32 32-32H416c17.7 0 32 14.3 32 32zm0 256c0 17.7-14.3 32-32 32H192c-17.7 0-32-14.3-32-32s14.3-32 32-32H416c17.7 0 32 14.3 32 32zM0 192c0-17.7 14.3-32 32-32H416c17.7 0 32 14.3 32 32s-14.3 32-32 32H32c-17.7 0-32-14.3-32-32zM448 448c0 17.7-14.3 32-32 32H32c-17.7 0-32-14.3-32-32s14.3-32 32-32H416c17.7 0 32 14.3 32 32z"/></svg>`,
|
|
1379
1476
|
};
|
|
1380
1477
|
|
|
1381
|
-
var __decorate$
|
|
1478
|
+
var __decorate$j = (undefined && undefined.__decorate) || function (decorators, target, key, desc) {
|
|
1382
1479
|
var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
|
|
1383
1480
|
if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
|
|
1384
1481
|
else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
|
|
1385
1482
|
return c > 3 && r && Object.defineProperty(target, key, r), r;
|
|
1386
1483
|
};
|
|
1387
|
-
class RightAlignToolbarButtonSlimmer extends
|
|
1484
|
+
class RightAlignToolbarButtonSlimmer extends VisualModeToolbarButtonSlimmer {
|
|
1388
1485
|
constructor() {
|
|
1389
1486
|
super({
|
|
1390
1487
|
icon: 'align-right',
|
|
@@ -1413,10 +1510,10 @@ class RightAlignToolbarButtonSlimmer extends ToolbarButtonSlimmer {
|
|
|
1413
1510
|
'align-right': AlignRight,
|
|
1414
1511
|
});
|
|
1415
1512
|
})();
|
|
1416
|
-
__decorate$
|
|
1513
|
+
__decorate$j([
|
|
1417
1514
|
MapToComponentField()
|
|
1418
1515
|
], RightAlignToolbarButtonSlimmer.prototype, "selectionController", void 0);
|
|
1419
|
-
__decorate$
|
|
1516
|
+
__decorate$j([
|
|
1420
1517
|
MapToComponentField()
|
|
1421
1518
|
], RightAlignToolbarButtonSlimmer.prototype, "popoverRef", void 0);
|
|
1422
1519
|
|
|
@@ -1424,13 +1521,13 @@ const AlignJustify = {
|
|
|
1424
1521
|
icon: `<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 448 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="M448 64c0-17.7-14.3-32-32-32H32C14.3 32 0 46.3 0 64S14.3 96 32 96H416c17.7 0 32-14.3 32-32zm0 256c0-17.7-14.3-32-32-32H32c-17.7 0-32 14.3-32 32s14.3 32 32 32H416c17.7 0 32-14.3 32-32zM0 192c0 17.7 14.3 32 32 32H416c17.7 0 32-14.3 32-32s-14.3-32-32-32H32c-17.7 0-32 14.3-32 32zM448 448c0-17.7-14.3-32-32-32H32c-17.7 0-32 14.3-32 32s14.3 32 32 32H416c17.7 0 32-14.3 32-32z"/></svg>`,
|
|
1425
1522
|
};
|
|
1426
1523
|
|
|
1427
|
-
var __decorate$
|
|
1524
|
+
var __decorate$i = (undefined && undefined.__decorate) || function (decorators, target, key, desc) {
|
|
1428
1525
|
var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
|
|
1429
1526
|
if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
|
|
1430
1527
|
else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
|
|
1431
1528
|
return c > 3 && r && Object.defineProperty(target, key, r), r;
|
|
1432
1529
|
};
|
|
1433
|
-
class JustifyAlignToolbarButtonSlimmer extends
|
|
1530
|
+
class JustifyAlignToolbarButtonSlimmer extends VisualModeToolbarButtonSlimmer {
|
|
1434
1531
|
constructor() {
|
|
1435
1532
|
super({
|
|
1436
1533
|
icon: 'align-justify',
|
|
@@ -1459,20 +1556,20 @@ class JustifyAlignToolbarButtonSlimmer extends ToolbarButtonSlimmer {
|
|
|
1459
1556
|
'align-justify': AlignJustify,
|
|
1460
1557
|
});
|
|
1461
1558
|
})();
|
|
1462
|
-
__decorate$
|
|
1559
|
+
__decorate$i([
|
|
1463
1560
|
MapToComponentField()
|
|
1464
1561
|
], JustifyAlignToolbarButtonSlimmer.prototype, "selectionController", void 0);
|
|
1465
|
-
__decorate$
|
|
1562
|
+
__decorate$i([
|
|
1466
1563
|
MapToComponentField()
|
|
1467
1564
|
], JustifyAlignToolbarButtonSlimmer.prototype, "popoverRef", void 0);
|
|
1468
1565
|
|
|
1469
|
-
var __decorate$
|
|
1566
|
+
var __decorate$h = (undefined && undefined.__decorate) || function (decorators, target, key, desc) {
|
|
1470
1567
|
var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
|
|
1471
1568
|
if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
|
|
1472
1569
|
else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
|
|
1473
1570
|
return c > 3 && r && Object.defineProperty(target, key, r), r;
|
|
1474
1571
|
};
|
|
1475
|
-
class HorizontalAlignmentToolbarButtonSlimmer extends
|
|
1572
|
+
class HorizontalAlignmentToolbarButtonSlimmer extends VisualModeToolbarButtonSlimmer {
|
|
1476
1573
|
constructor() {
|
|
1477
1574
|
super({
|
|
1478
1575
|
icon: 'align-left',
|
|
@@ -1524,22 +1621,22 @@ class HorizontalAlignmentToolbarButtonSlimmer extends ToolbarButtonSlimmer {
|
|
|
1524
1621
|
.some((block) => block.type === 'code-block'));
|
|
1525
1622
|
}
|
|
1526
1623
|
}
|
|
1527
|
-
__decorate$
|
|
1624
|
+
__decorate$h([
|
|
1528
1625
|
MapToComponentField()
|
|
1529
1626
|
], HorizontalAlignmentToolbarButtonSlimmer.prototype, "selectionController", void 0);
|
|
1530
|
-
__decorate$
|
|
1627
|
+
__decorate$h([
|
|
1531
1628
|
InjectVegaSlimmer()
|
|
1532
1629
|
], HorizontalAlignmentToolbarButtonSlimmer.prototype, "leftAlignToolbarButtonSlimmer", void 0);
|
|
1533
|
-
__decorate$
|
|
1630
|
+
__decorate$h([
|
|
1534
1631
|
InjectVegaSlimmer()
|
|
1535
1632
|
], HorizontalAlignmentToolbarButtonSlimmer.prototype, "centerAlignToolbarButtonSlimmer", void 0);
|
|
1536
|
-
__decorate$
|
|
1633
|
+
__decorate$h([
|
|
1537
1634
|
InjectVegaSlimmer()
|
|
1538
1635
|
], HorizontalAlignmentToolbarButtonSlimmer.prototype, "rightAlignToolbarButtonSlimmer", void 0);
|
|
1539
|
-
__decorate$
|
|
1636
|
+
__decorate$h([
|
|
1540
1637
|
InjectVegaSlimmer()
|
|
1541
1638
|
], HorizontalAlignmentToolbarButtonSlimmer.prototype, "justifiedToolbarButtonSlimmer", void 0);
|
|
1542
|
-
__decorate$
|
|
1639
|
+
__decorate$h([
|
|
1543
1640
|
MapToComponentMethod('componentWillRender')
|
|
1544
1641
|
], HorizontalAlignmentToolbarButtonSlimmer.prototype, "componentWillRender", null);
|
|
1545
1642
|
|
|
@@ -1580,7 +1677,7 @@ class RTEEditorState {
|
|
|
1580
1677
|
}
|
|
1581
1678
|
}
|
|
1582
1679
|
|
|
1583
|
-
var __decorate$
|
|
1680
|
+
var __decorate$g = (undefined && undefined.__decorate) || function (decorators, target, key, desc) {
|
|
1584
1681
|
var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
|
|
1585
1682
|
if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
|
|
1586
1683
|
else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
|
|
@@ -1613,6 +1710,7 @@ class ValueController extends VegaSlimmer {
|
|
|
1613
1710
|
if (this.value && !(this.value instanceof VegaRTEContent)) {
|
|
1614
1711
|
this.value = VegaRTEContent.fromJSON(this.value);
|
|
1615
1712
|
}
|
|
1713
|
+
this.registerEditorRefAndContent();
|
|
1616
1714
|
}
|
|
1617
1715
|
/**
|
|
1618
1716
|
* Watches the value of the editor and updates the internal value.
|
|
@@ -1631,6 +1729,7 @@ class ValueController extends VegaSlimmer {
|
|
|
1631
1729
|
detail: this.value,
|
|
1632
1730
|
});
|
|
1633
1731
|
}
|
|
1732
|
+
this.registerEditorRefAndContent();
|
|
1634
1733
|
}
|
|
1635
1734
|
/**
|
|
1636
1735
|
* Updates the value of the editor and restore the selection.
|
|
@@ -1653,36 +1752,44 @@ class ValueController extends VegaSlimmer {
|
|
|
1653
1752
|
isAcceptableFlushChange() {
|
|
1654
1753
|
return true;
|
|
1655
1754
|
}
|
|
1755
|
+
/**
|
|
1756
|
+
* Register the host element and the current content.
|
|
1757
|
+
*/
|
|
1758
|
+
registerEditorRefAndContent() {
|
|
1759
|
+
if (this.host && this.host.value) {
|
|
1760
|
+
stateEntityRenderingRegistry.register(this.host, this.host.value);
|
|
1761
|
+
}
|
|
1762
|
+
}
|
|
1656
1763
|
}
|
|
1657
1764
|
ValueController.VALUE_CHANGE_DEBOUNCE_TIME = 50;
|
|
1658
|
-
__decorate$
|
|
1765
|
+
__decorate$g([
|
|
1659
1766
|
MapToComponentField()
|
|
1660
1767
|
], ValueController.prototype, "host", void 0);
|
|
1661
|
-
__decorate$
|
|
1768
|
+
__decorate$g([
|
|
1662
1769
|
MapToComponentField({ writable: true })
|
|
1663
1770
|
], ValueController.prototype, "value", void 0);
|
|
1664
|
-
__decorate$
|
|
1771
|
+
__decorate$g([
|
|
1665
1772
|
MapToComponentField()
|
|
1666
1773
|
], ValueController.prototype, "changeEventEmitter", void 0);
|
|
1667
|
-
__decorate$
|
|
1774
|
+
__decorate$g([
|
|
1668
1775
|
MapToComponentField()
|
|
1669
1776
|
], ValueController.prototype, "valueController", void 0);
|
|
1670
|
-
__decorate$
|
|
1777
|
+
__decorate$g([
|
|
1671
1778
|
MapToComponentField()
|
|
1672
1779
|
], ValueController.prototype, "historyController", void 0);
|
|
1673
|
-
__decorate$
|
|
1780
|
+
__decorate$g([
|
|
1674
1781
|
MapToComponentField()
|
|
1675
1782
|
], ValueController.prototype, "selectionController", void 0);
|
|
1676
|
-
__decorate$
|
|
1783
|
+
__decorate$g([
|
|
1677
1784
|
MapToComponentMethod('connectedCallback')
|
|
1678
1785
|
], ValueController.prototype, "connectedCallback", null);
|
|
1679
|
-
__decorate$
|
|
1786
|
+
__decorate$g([
|
|
1680
1787
|
MapToComponentMethod('disconnectedCallback')
|
|
1681
1788
|
], ValueController.prototype, "disconnectedCallback", null);
|
|
1682
|
-
__decorate$
|
|
1789
|
+
__decorate$g([
|
|
1683
1790
|
MapToComponentMethod('componentWillLoad')
|
|
1684
1791
|
], ValueController.prototype, "componentWillLoad", null);
|
|
1685
|
-
__decorate$
|
|
1792
|
+
__decorate$g([
|
|
1686
1793
|
MapToComponentMethod('watchValueUpdate')
|
|
1687
1794
|
], ValueController.prototype, "watchValueUpdate", null);
|
|
1688
1795
|
|
|
@@ -1759,7 +1866,7 @@ class BaseHandler {
|
|
|
1759
1866
|
createEmptyParagraph() {
|
|
1760
1867
|
const paragraph = new RTETextBlock(generateUUID(), 'paragraph');
|
|
1761
1868
|
const textNode = new RTETextNode(`${paragraph.id}1`, '', paragraph);
|
|
1762
|
-
paragraph.apply(new
|
|
1869
|
+
paragraph.apply(new AppendChildrenAction([textNode]));
|
|
1763
1870
|
return paragraph;
|
|
1764
1871
|
}
|
|
1765
1872
|
/**
|
|
@@ -1782,20 +1889,6 @@ class BaseHandler {
|
|
|
1782
1889
|
}
|
|
1783
1890
|
}
|
|
1784
1891
|
|
|
1785
|
-
/**
|
|
1786
|
-
* Insert a new node before a existing node
|
|
1787
|
-
*
|
|
1788
|
-
* @example currentNode.parentBlock.apply(new InsertNodesBeforeAction(currentNode, newNode, ...))
|
|
1789
|
-
*/
|
|
1790
|
-
class InsertNodesBeforeAction extends ModifyContentAction {
|
|
1791
|
-
constructor(referNode, ...nodesToBeInserted) {
|
|
1792
|
-
super();
|
|
1793
|
-
this.type = ModifyContentActionType.INSERT_NODES_BEFORE;
|
|
1794
|
-
this.referNode = referNode;
|
|
1795
|
-
this.nodesToBeInserted = nodesToBeInserted;
|
|
1796
|
-
}
|
|
1797
|
-
}
|
|
1798
|
-
|
|
1799
1892
|
/**
|
|
1800
1893
|
* Replace the text node selected content to new text
|
|
1801
1894
|
*
|
|
@@ -1811,6 +1904,23 @@ class ReplaceSelectedTextAction extends ModifyContentAction {
|
|
|
1811
1904
|
}
|
|
1812
1905
|
}
|
|
1813
1906
|
|
|
1907
|
+
/**
|
|
1908
|
+
* Action to type character into a decorator node
|
|
1909
|
+
*
|
|
1910
|
+
* @example decoratorNode.parent.apply(new InsertTextToDecoratorNodeAction(decoratorNode, '', 0 | 1))
|
|
1911
|
+
*/
|
|
1912
|
+
class InsertTextToDecoratorNodeAction extends ModifyContentAction {
|
|
1913
|
+
constructor(decoratorNode, text, offset) {
|
|
1914
|
+
super();
|
|
1915
|
+
this.type = ModifyContentActionType.INSERT_TEXT_TO_DECORATOR_NODE;
|
|
1916
|
+
this.text = '';
|
|
1917
|
+
this.offset = 0;
|
|
1918
|
+
this.decoratorNode = decoratorNode;
|
|
1919
|
+
this.text = text;
|
|
1920
|
+
this.offset = offset;
|
|
1921
|
+
}
|
|
1922
|
+
}
|
|
1923
|
+
|
|
1814
1924
|
/** Handles inserting text into a VegaRTEContent based on the current selection and input event. User input character will trigger this callback */
|
|
1815
1925
|
class InsertTextHandler extends BaseHandler {
|
|
1816
1926
|
/**
|
|
@@ -1829,27 +1939,32 @@ class InsertTextHandler extends BaseHandler {
|
|
|
1829
1939
|
this.selectionController.enqueueSelectionRangeFutureState(cursorNode, text.length);
|
|
1830
1940
|
}
|
|
1831
1941
|
else if (selectedNodes[0] instanceof RTETextNode) {
|
|
1832
|
-
|
|
1833
|
-
|
|
1834
|
-
|
|
1835
|
-
|
|
1836
|
-
|
|
1837
|
-
|
|
1838
|
-
}
|
|
1839
|
-
else {
|
|
1840
|
-
if (startContainer.nodeValue === ZERO_WIDTH_SPACE &&
|
|
1841
|
-
startOffset === ZERO_WIDTH_SPACE.length &&
|
|
1842
|
-
cursorNode.isEmpty()) {
|
|
1843
|
-
startContainer.nodeValue = '';
|
|
1844
|
-
nextOffset = nextOffset - ZERO_WIDTH_SPACE.length;
|
|
1845
|
-
}
|
|
1846
|
-
if (cursorNode instanceof RTETextNode) {
|
|
1942
|
+
if (selectedNodes[0].isContentEditable()) {
|
|
1943
|
+
let nextOffset = startOffset + text.length;
|
|
1944
|
+
let updateFlag = false;
|
|
1945
|
+
let cursorNode = selectedNodes[0];
|
|
1946
|
+
if (cursorNode.text === '\n') {
|
|
1947
|
+
cursorNode = this.insertTextToLineBreakNode(cursorNode, text);
|
|
1847
1948
|
updateFlag = true;
|
|
1848
|
-
cursorNode.apply(new ReplaceSelectedTextAction(text, currentRange));
|
|
1849
1949
|
}
|
|
1950
|
+
else {
|
|
1951
|
+
if (startContainer.nodeValue === ZERO_WIDTH_SPACE &&
|
|
1952
|
+
startOffset === ZERO_WIDTH_SPACE.length &&
|
|
1953
|
+
cursorNode.isEmpty()) {
|
|
1954
|
+
startContainer.nodeValue = '';
|
|
1955
|
+
nextOffset = nextOffset - ZERO_WIDTH_SPACE.length;
|
|
1956
|
+
}
|
|
1957
|
+
if (cursorNode instanceof RTETextNode) {
|
|
1958
|
+
updateFlag = true;
|
|
1959
|
+
cursorNode.apply(new ReplaceSelectedTextAction(text, currentRange));
|
|
1960
|
+
}
|
|
1961
|
+
}
|
|
1962
|
+
updateFlag &&
|
|
1963
|
+
this.selectionController.enqueueSelectionRangeFutureState(cursorNode, Math.min(nextOffset, cursorNode['text'].length));
|
|
1964
|
+
}
|
|
1965
|
+
else {
|
|
1966
|
+
selectedNodes[0].parent.apply(new InsertTextToDecoratorNodeAction(selectedNodes[0], text, startOffset));
|
|
1850
1967
|
}
|
|
1851
|
-
updateFlag &&
|
|
1852
|
-
this.selectionController.enqueueSelectionRangeFutureState(cursorNode, Math.min(nextOffset, cursorNode['text'].length));
|
|
1853
1968
|
}
|
|
1854
1969
|
}
|
|
1855
1970
|
else {
|
|
@@ -1886,15 +2001,17 @@ class InsertTextHandler extends BaseHandler {
|
|
|
1886
2001
|
insertTextToLineBreakNode(lineBreakNode, text) {
|
|
1887
2002
|
const { startOffset, endOffset } = this.selectionController.getCurrentRange();
|
|
1888
2003
|
const textBlock = lineBreakNode.parent;
|
|
1889
|
-
|
|
1890
|
-
|
|
1891
|
-
|
|
1892
|
-
|
|
1893
|
-
|
|
1894
|
-
|
|
1895
|
-
|
|
1896
|
-
|
|
1897
|
-
|
|
2004
|
+
if (textBlock instanceof RTETextBlock) {
|
|
2005
|
+
const index = textBlock.children.indexOf(lineBreakNode);
|
|
2006
|
+
if (startOffset === 0 && startOffset === endOffset && textBlock.children[index + 1]) {
|
|
2007
|
+
const newTextNode = lineBreakNode.cloneWithText(text);
|
|
2008
|
+
textBlock.apply(new InsertChildrenBeforeAction(lineBreakNode, newTextNode));
|
|
2009
|
+
return newTextNode;
|
|
2010
|
+
}
|
|
2011
|
+
else {
|
|
2012
|
+
lineBreakNode.apply(new UpdateTextAction(text));
|
|
2013
|
+
return lineBreakNode;
|
|
2014
|
+
}
|
|
1898
2015
|
}
|
|
1899
2016
|
}
|
|
1900
2017
|
}
|
|
@@ -1971,7 +2088,7 @@ class InsertParagraphHandler extends BaseHandler {
|
|
|
1971
2088
|
const currentBlock = cursorNode.parent;
|
|
1972
2089
|
const { startOffset } = this.selectionController.getCurrentRange();
|
|
1973
2090
|
if (currentBlock) {
|
|
1974
|
-
const breakAction = new
|
|
2091
|
+
const breakAction = new InsertNewParagraphAction(cursorNode, startOffset);
|
|
1975
2092
|
currentBlock.apply(breakAction);
|
|
1976
2093
|
this.switchCaretPositionToNextElement(breakAction.newBlock);
|
|
1977
2094
|
}
|
|
@@ -2121,1114 +2238,85 @@ class DeleteBlockContentAction extends ModifyContentAction {
|
|
|
2121
2238
|
/** Handles the deletion of content within a VegaRTE editor. User press backspace or delete will trigger this method */
|
|
2122
2239
|
class DeleteContentHandler extends BaseHandler {
|
|
2123
2240
|
/**
|
|
2124
|
-
* Delete the selected node from the current state.
|
|
2125
|
-
*/
|
|
2126
|
-
handleEvent() {
|
|
2127
|
-
const selectedBlocks = this.selectionController.getSelectedBlocks();
|
|
2128
|
-
if (selectedBlocks.length < 2) {
|
|
2129
|
-
this.deleteContentWithSingleBlock();
|
|
2130
|
-
}
|
|
2131
|
-
else {
|
|
2132
|
-
this.deleteContentWithMultipleNodes();
|
|
2133
|
-
}
|
|
2134
|
-
}
|
|
2135
|
-
/**
|
|
2136
|
-
* Handles the deletion of content within a single block in an RTE editor.
|
|
2137
|
-
*/
|
|
2138
|
-
deleteContentWithSingleBlock() {
|
|
2139
|
-
const range = this.selectionController.getCurrentRange();
|
|
2140
|
-
const { startOffset, endOffset, startContainer, endContainer } = range;
|
|
2141
|
-
const selectedBlocks = this.selectionController.getSelectedBlocks();
|
|
2142
|
-
const selectedNodes = this.selectionController.getSelectedNodes();
|
|
2143
|
-
if (startOffset !== endOffset || startContainer !== endContainer) {
|
|
2144
|
-
this.deleteContentWithMultipleNodes();
|
|
2145
|
-
}
|
|
2146
|
-
else if (selectedBlocks[0]) {
|
|
2147
|
-
const deleteAction = new DeleteBlockContentAction(selectedNodes[0], startOffset);
|
|
2148
|
-
selectedBlocks[0].apply(deleteAction);
|
|
2149
|
-
if (deleteAction.previousNode) {
|
|
2150
|
-
const nextOffset = deleteAction.previousNode === selectedNodes[0]
|
|
2151
|
-
? Math.max(0, startOffset - 1)
|
|
2152
|
-
: this.getNodeEndOffset(deleteAction.previousNode);
|
|
2153
|
-
this.selectionController.enqueueSelectionRangeFutureState(deleteAction.previousNode, nextOffset);
|
|
2154
|
-
}
|
|
2155
|
-
else if (deleteAction.nextNode) {
|
|
2156
|
-
this.selectionController.enqueueSelectionRangeFutureState(deleteAction.nextNode, 0);
|
|
2157
|
-
}
|
|
2158
|
-
else if (this.currentState.children.length === 0) {
|
|
2159
|
-
// Add a empty paragraph if delete all content to make sure the caret position
|
|
2160
|
-
this.insertDefaultParagraph();
|
|
2161
|
-
}
|
|
2162
|
-
}
|
|
2163
|
-
}
|
|
2164
|
-
/**
|
|
2165
|
-
* Deletes the content within multiple nodes selected by the user.
|
|
2166
|
-
*/
|
|
2167
|
-
deleteContentWithMultipleNodes() {
|
|
2168
|
-
const selectedNodes = this.selectionController.getSelectedNodes();
|
|
2169
|
-
const cursorNode = this.removeSelectionRange(true);
|
|
2170
|
-
const lastSelectedNode = selectedNodes[selectedNodes.length - 1];
|
|
2171
|
-
if (selectedNodes.length > 1 &&
|
|
2172
|
-
lastSelectedNode instanceof RTETextNode &&
|
|
2173
|
-
lastSelectedNode.isEmpty()) {
|
|
2174
|
-
lastSelectedNode.parent.apply(new RemoveChildAction(lastSelectedNode));
|
|
2175
|
-
}
|
|
2176
|
-
this.convertFirstBlockToParagraph(cursorNode.parent);
|
|
2177
|
-
}
|
|
2178
|
-
/**
|
|
2179
|
-
* If the first block is not paragraph, convert the block to paragraph after delete all text
|
|
2180
|
-
*
|
|
2181
|
-
* @param {RTEBlock} block - The first block instance
|
|
2182
|
-
*/
|
|
2183
|
-
convertFirstBlockToParagraph(block) {
|
|
2184
|
-
const firstBlock = this.currentState.children[0];
|
|
2185
|
-
if (firstBlock === block &&
|
|
2186
|
-
block instanceof RTETextBlock &&
|
|
2187
|
-
block.children.length === 1 &&
|
|
2188
|
-
block.children[0].isEmpty() &&
|
|
2189
|
-
block.type !== 'paragraph') {
|
|
2190
|
-
const paragraph = this.createEmptyParagraph();
|
|
2191
|
-
paragraph.apply(new ReplaceChildNodesAction(block.children));
|
|
2192
|
-
block.parent.apply(new InsertBlocksBeforeAction(block, paragraph));
|
|
2193
|
-
block.parent.apply(new RemoveChildAction(block));
|
|
2194
|
-
}
|
|
2195
|
-
}
|
|
2196
|
-
/**
|
|
2197
|
-
* Creates a new paragraph element with a text node and appends it to the current state.
|
|
2198
|
-
*/
|
|
2199
|
-
insertDefaultParagraph() {
|
|
2200
|
-
const paragraph = this.createEmptyParagraph();
|
|
2201
|
-
this.currentState.apply(new AppendChildNodesAction([paragraph]));
|
|
2202
|
-
this.selectionController.enqueueSelectionRangeFutureState(paragraph.children[0], 1);
|
|
2203
|
-
}
|
|
2204
|
-
/**
|
|
2205
|
-
* Returns the end offset of a given node in a Rich Text Editor based on its type and text content.
|
|
2206
|
-
*
|
|
2207
|
-
* @param {RTENode} node - text node or image node
|
|
2208
|
-
* @returns {number} Returns a number value.
|
|
2209
|
-
*/
|
|
2210
|
-
getNodeEndOffset(node) {
|
|
2211
|
-
if (node.type === 'IMAGE') {
|
|
2212
|
-
return 1;
|
|
2213
|
-
}
|
|
2214
|
-
else if (node.type === 'TEXT') {
|
|
2215
|
-
return node['text'] === '\n' ? 0 : node['text'].length;
|
|
2216
|
-
}
|
|
2217
|
-
}
|
|
2218
|
-
}
|
|
2219
|
-
|
|
2220
|
-
/**
|
|
2221
|
-
* Abstract class to define strategies for processing HTML elements
|
|
2222
|
-
*/
|
|
2223
|
-
class ElementToDTOStrategy {
|
|
2224
|
-
}
|
|
2225
|
-
/**
|
|
2226
|
-
* Class to represent the output of a strategy applied to HTML elements
|
|
2227
|
-
*/
|
|
2228
|
-
class ElementToDTOStrategyOutput {
|
|
2229
|
-
constructor(currentStrategy, currentElements) {
|
|
2230
|
-
this.childrenOutput = [];
|
|
2231
|
-
this.currentStrategy = currentStrategy;
|
|
2232
|
-
this.currentElements = currentElements;
|
|
2233
|
-
}
|
|
2234
|
-
/**
|
|
2235
|
-
* Set children output.
|
|
2236
|
-
*
|
|
2237
|
-
* @param {ElementToDTOStrategyOutput[]} childrenOutput - children outputs.
|
|
2238
|
-
*/
|
|
2239
|
-
setChildrenOutput(childrenOutput) {
|
|
2240
|
-
this.childrenOutput = childrenOutput;
|
|
2241
|
-
}
|
|
2242
|
-
/**
|
|
2243
|
-
* Transform current output and children output to DTO
|
|
2244
|
-
*
|
|
2245
|
-
* @returns {Nullable<RTEContentBlock>} - DTO.
|
|
2246
|
-
*/
|
|
2247
|
-
toDto() {
|
|
2248
|
-
const currentBlock = this.currentStrategy.handle(this.currentElements);
|
|
2249
|
-
if (this.childrenOutput.length > 0 && currentBlock) {
|
|
2250
|
-
this.currentStrategy.appendChildBlocks(currentBlock, this.childrenOutput
|
|
2251
|
-
.map((childOutput) => childOutput.toDto())
|
|
2252
|
-
.filter(isNonNullable));
|
|
2253
|
-
}
|
|
2254
|
-
return currentBlock;
|
|
2255
|
-
}
|
|
2256
|
-
}
|
|
2257
|
-
|
|
2258
|
-
/** Abstract class for block html element to RTE block dto */
|
|
2259
|
-
class BlockToRTEBlockStrategyAbstract extends ElementToDTOStrategy {
|
|
2260
|
-
/**
|
|
2261
|
-
* Generate child nodes of block element, this will inherit all annotations from parent to text node and
|
|
2262
|
-
* flat the child nodes.
|
|
2263
|
-
*
|
|
2264
|
-
* Example:
|
|
2265
|
-
* <li>
|
|
2266
|
-
* <u><i>text1</i></u>
|
|
2267
|
-
* <span style='font-weight: bold;'><span>text2</span></span>
|
|
2268
|
-
* text3
|
|
2269
|
-
* </li>
|
|
2270
|
-
* will tranform to:
|
|
2271
|
-
* <li>
|
|
2272
|
-
* <span>text1</span> // with underline and italic annotations
|
|
2273
|
-
* <span>text2</span> // with bold annotations
|
|
2274
|
-
* <span>text3</span> // no annotations
|
|
2275
|
-
* </li>
|
|
2276
|
-
*
|
|
2277
|
-
* @param {HTMLElement[]} elements - Child elements.
|
|
2278
|
-
* @param {VegaRTETextAnnotations | VegaRTECodeAnnotations} annotations - Parent annotations.
|
|
2279
|
-
* @returns {VegaRTETextNode[]} - Text node DTO.
|
|
2280
|
-
*/
|
|
2281
|
-
generateChildNodes(elements, annotations = {}) {
|
|
2282
|
-
const childNodes = [];
|
|
2283
|
-
elements.forEach((child) => {
|
|
2284
|
-
if (child.nodeType === Node.TEXT_NODE) {
|
|
2285
|
-
if (this.isInvalidTextNode(child))
|
|
2286
|
-
return;
|
|
2287
|
-
childNodes.push({
|
|
2288
|
-
id: generateUUID(),
|
|
2289
|
-
type: 'text',
|
|
2290
|
-
text: String(child.textContent),
|
|
2291
|
-
annotations: annotations,
|
|
2292
|
-
});
|
|
2293
|
-
}
|
|
2294
|
-
else {
|
|
2295
|
-
childNodes.push(...this.generateChildNodes(Array.from(child.childNodes), Object.assign({}, annotations, this.generateTextNodeAnnotations(child, annotations))));
|
|
2296
|
-
}
|
|
2297
|
-
});
|
|
2298
|
-
return childNodes;
|
|
2299
|
-
}
|
|
2300
|
-
/**
|
|
2301
|
-
* Generate annotations map for block element.
|
|
2302
|
-
*
|
|
2303
|
-
* @param {HTMLElement} element - current element.
|
|
2304
|
-
* @returns {VegaRTEBlockAnnotations} - Text block annotations.
|
|
2305
|
-
*/
|
|
2306
|
-
generateBlockAnnotations(element) {
|
|
2307
|
-
const annotations = {};
|
|
2308
|
-
const textAlign = this.getTextAlign(element);
|
|
2309
|
-
const indent = this.getIndent(element);
|
|
2310
|
-
if (textAlign)
|
|
2311
|
-
annotations.textAlign = textAlign;
|
|
2312
|
-
if (indent)
|
|
2313
|
-
annotations.indent = indent;
|
|
2314
|
-
return annotations;
|
|
2315
|
-
}
|
|
2316
|
-
/**
|
|
2317
|
-
* Generate annotations map for text node element.
|
|
2318
|
-
*
|
|
2319
|
-
* @param {HTMLElement} element - current element.
|
|
2320
|
-
* @param {VegaRTETextAnnotations | VegaRTECodeAnnotations} parentAnnotations - parent annotations
|
|
2321
|
-
* @returns {VegaRTETextAnnotations | VegaRTECodeAnnotations} - Text node annotations.
|
|
2322
|
-
*/
|
|
2323
|
-
generateTextNodeAnnotations(element, parentAnnotations = {}) {
|
|
2324
|
-
if (this.isCode(element))
|
|
2325
|
-
return { code: true };
|
|
2326
|
-
const annotations = {
|
|
2327
|
-
bold: this.isBold(element),
|
|
2328
|
-
italic: this.isItalic(element),
|
|
2329
|
-
underline: this.isUnderline(element),
|
|
2330
|
-
strikethrough: this.isStrikethrough(element),
|
|
2331
|
-
};
|
|
2332
|
-
parentAnnotations.bold && (annotations.bold = true);
|
|
2333
|
-
parentAnnotations.underline && (annotations.underline = true);
|
|
2334
|
-
parentAnnotations.italic && (annotations.italic = true);
|
|
2335
|
-
parentAnnotations.strikethrough && (annotations.strikethrough = true);
|
|
2336
|
-
const color = this.getColor(element);
|
|
2337
|
-
const link = this.getLink(element);
|
|
2338
|
-
if (color)
|
|
2339
|
-
annotations.textColor = color;
|
|
2340
|
-
if (link)
|
|
2341
|
-
annotations.link = link;
|
|
2342
|
-
return annotations;
|
|
2343
|
-
}
|
|
2344
|
-
/**
|
|
2345
|
-
* Check is a invalid text node.
|
|
2346
|
-
*
|
|
2347
|
-
* @param {HTMLElement} element - Current node element.
|
|
2348
|
-
* @returns {boolean} - boolean.
|
|
2349
|
-
*/
|
|
2350
|
-
isInvalidTextNode(element) {
|
|
2351
|
-
if (element.nodeValue && element.nodeValue.includes('\t')) {
|
|
2352
|
-
const value = element.nodeValue.replace(/\n|\t/gm, '');
|
|
2353
|
-
if (value.length === 0)
|
|
2354
|
-
return true;
|
|
2355
|
-
}
|
|
2356
|
-
return false;
|
|
2357
|
-
}
|
|
2358
|
-
/**
|
|
2359
|
-
* Is code element.
|
|
2360
|
-
*
|
|
2361
|
-
* @param {HTMLElement} element - current element.
|
|
2362
|
-
* @returns {boolean} - boolean.
|
|
2363
|
-
*/
|
|
2364
|
-
isCode(element) {
|
|
2365
|
-
return (element.classList.contains('v-rte--code') ||
|
|
2366
|
-
element.nodeName === 'CODE' ||
|
|
2367
|
-
element.style.fontFamily === 'monospace');
|
|
2368
|
-
}
|
|
2369
|
-
/**
|
|
2370
|
-
* Is bold element.
|
|
2371
|
-
*
|
|
2372
|
-
* @param {HTMLElement} element - current element.
|
|
2373
|
-
* @returns {boolean} - boolean.
|
|
2374
|
-
*/
|
|
2375
|
-
isBold(element) {
|
|
2376
|
-
return (element.nodeName === 'STRONG' ||
|
|
2377
|
-
element.nodeName === 'B' ||
|
|
2378
|
-
element.style.fontWeight === 'bold' ||
|
|
2379
|
-
element.style.fontWeight === '700');
|
|
2380
|
-
}
|
|
2381
|
-
/**
|
|
2382
|
-
* Is italic element.
|
|
2383
|
-
*
|
|
2384
|
-
* @param {HTMLElement} element - current element.
|
|
2385
|
-
* @returns {boolean} - boolean.
|
|
2386
|
-
*/
|
|
2387
|
-
isItalic(element) {
|
|
2388
|
-
return element.nodeName === 'I' || element.style.fontStyle === 'italic' || element.nodeName === 'EM';
|
|
2389
|
-
}
|
|
2390
|
-
/**
|
|
2391
|
-
* Is underline element.
|
|
2392
|
-
*
|
|
2393
|
-
* @param {HTMLElement} element - current element.
|
|
2394
|
-
* @returns {boolean} - boolean.
|
|
2395
|
-
*/
|
|
2396
|
-
isUnderline(element) {
|
|
2397
|
-
return (element.style.textDecoration.includes('underline') ||
|
|
2398
|
-
element.nodeName === 'U' ||
|
|
2399
|
-
element.nodeName === 'INS' ||
|
|
2400
|
-
element.classList.contains('v-rte--underline'));
|
|
2401
|
-
}
|
|
2402
|
-
/**
|
|
2403
|
-
* Is strikethrough element.
|
|
2404
|
-
*
|
|
2405
|
-
* @param {HTMLElement} element - current element.
|
|
2406
|
-
* @returns {boolean} - boolean.
|
|
2407
|
-
*/
|
|
2408
|
-
isStrikethrough(element) {
|
|
2409
|
-
return (element.style.textDecoration.includes('line-through') ||
|
|
2410
|
-
element.nodeName === 'S' ||
|
|
2411
|
-
element.nodeName === 'DEL' ||
|
|
2412
|
-
element.classList.contains('v-rte--strikethrough'));
|
|
2413
|
-
}
|
|
2414
|
-
/**
|
|
2415
|
-
* Get current color of element.
|
|
2416
|
-
*
|
|
2417
|
-
* @param {HTMLElement} element - current element.
|
|
2418
|
-
* @returns {Nullable<string>} - color.
|
|
2419
|
-
*/
|
|
2420
|
-
getColor(element) {
|
|
2421
|
-
var _a;
|
|
2422
|
-
const color = element.style.color;
|
|
2423
|
-
const hexColor = (_a = rgbToHex(color)) === null || _a === void 0 ? void 0 : _a.toUpperCase();
|
|
2424
|
-
if (hexColor) {
|
|
2425
|
-
const colorSchema = RTE_TEXT_COLORS.find((schema) => schema.light === hexColor || schema.dark === hexColor);
|
|
2426
|
-
if (colorSchema)
|
|
2427
|
-
return colorSchema.key;
|
|
2428
|
-
return null;
|
|
2429
|
-
}
|
|
2430
|
-
else {
|
|
2431
|
-
for (const color of RTE_TEXT_COLORS) {
|
|
2432
|
-
if (element.style.color.includes(color.key)) {
|
|
2433
|
-
return color.key;
|
|
2434
|
-
}
|
|
2435
|
-
}
|
|
2436
|
-
return null;
|
|
2437
|
-
}
|
|
2438
|
-
}
|
|
2439
|
-
/**
|
|
2440
|
-
* Get current link of element.
|
|
2441
|
-
*
|
|
2442
|
-
* @param {HTMLElement} element - current element.
|
|
2443
|
-
* @returns {Nullable<VegaRTELink>} - link.
|
|
2444
|
-
*/
|
|
2445
|
-
getLink(element) {
|
|
2446
|
-
if (element.nodeName === 'A') {
|
|
2447
|
-
return {
|
|
2448
|
-
href: element.href,
|
|
2449
|
-
groupKey: generateUUID(),
|
|
2450
|
-
};
|
|
2451
|
-
}
|
|
2452
|
-
return null;
|
|
2453
|
-
}
|
|
2454
|
-
/**
|
|
2455
|
-
* Get text align of current element.
|
|
2456
|
-
*
|
|
2457
|
-
* @param {HTMLElement} element - current element.
|
|
2458
|
-
* @returns {Nullable<VegaRTEBlockAlignment>} - Text align.
|
|
2459
|
-
*/
|
|
2460
|
-
getTextAlign(element) {
|
|
2461
|
-
const classList = element.classList;
|
|
2462
|
-
if (classList.contains(`v-rte--horizontal-alignment-left`)) {
|
|
2463
|
-
return 'left';
|
|
2464
|
-
}
|
|
2465
|
-
else if (classList.contains(`v-rte--horizontal-alignment-center`)) {
|
|
2466
|
-
return 'center';
|
|
2467
|
-
}
|
|
2468
|
-
else if (classList.contains(`v-rte--horizontal-alignment-right`)) {
|
|
2469
|
-
return 'right';
|
|
2470
|
-
}
|
|
2471
|
-
else if (classList.contains(`v-rte--horizontal-alignment-justify`)) {
|
|
2472
|
-
return 'justify';
|
|
2473
|
-
}
|
|
2474
|
-
const style = element.style;
|
|
2475
|
-
switch (style.textAlign) {
|
|
2476
|
-
case 'center':
|
|
2477
|
-
return 'center';
|
|
2478
|
-
case 'right':
|
|
2479
|
-
return 'right';
|
|
2480
|
-
case 'justify':
|
|
2481
|
-
return 'justify';
|
|
2482
|
-
case 'left':
|
|
2483
|
-
return 'left';
|
|
2484
|
-
default:
|
|
2485
|
-
return null;
|
|
2486
|
-
}
|
|
2487
|
-
}
|
|
2488
|
-
/**
|
|
2489
|
-
* Get indent of current element.
|
|
2490
|
-
*
|
|
2491
|
-
* @param {HTMLElement} element - current element.
|
|
2492
|
-
* @returns {Nullable<number>} - Indent.
|
|
2493
|
-
*/
|
|
2494
|
-
getIndent(element) {
|
|
2495
|
-
const style = element.style;
|
|
2496
|
-
let marginLeft;
|
|
2497
|
-
if (style.marginLeft) {
|
|
2498
|
-
marginLeft = style.marginLeft;
|
|
2499
|
-
}
|
|
2500
|
-
else if (style.margin) {
|
|
2501
|
-
const margins = style.margin.split(' ');
|
|
2502
|
-
switch (margins.length) {
|
|
2503
|
-
case 4:
|
|
2504
|
-
marginLeft = margins[3];
|
|
2505
|
-
break;
|
|
2506
|
-
case 2:
|
|
2507
|
-
case 3:
|
|
2508
|
-
marginLeft = margins[1];
|
|
2509
|
-
break;
|
|
2510
|
-
default:
|
|
2511
|
-
marginLeft = margins[0];
|
|
2512
|
-
break;
|
|
2513
|
-
}
|
|
2514
|
-
}
|
|
2515
|
-
else {
|
|
2516
|
-
return null;
|
|
2517
|
-
}
|
|
2518
|
-
const marginLeftNumber = Number(marginLeft.replace('px', ''));
|
|
2519
|
-
return marginLeftNumber && marginLeftNumber >= 0 ? Math.floor(marginLeftNumber / 16) : null;
|
|
2520
|
-
}
|
|
2521
|
-
}
|
|
2522
|
-
|
|
2523
|
-
/** Transform continue inline block elements to text block DTO */
|
|
2524
|
-
class ContinueInlineToRTETextBlockStrategy extends BlockToRTEBlockStrategyAbstract {
|
|
2525
|
-
/**
|
|
2526
|
-
* Can be handle.
|
|
2527
|
-
*
|
|
2528
|
-
* @param {HTMLElement[]} elementsArray - Current elements.
|
|
2529
|
-
* @param {number} currentIndex - Current element index.
|
|
2530
|
-
* @returns {number} - can be handled element count.
|
|
2531
|
-
*/
|
|
2532
|
-
canHandle(elementsArray, currentIndex) {
|
|
2533
|
-
let count = 0;
|
|
2534
|
-
for (let i = currentIndex; i < elementsArray.length; i++) {
|
|
2535
|
-
const element = elementsArray[i];
|
|
2536
|
-
if (element.nodeType === Node.TEXT_NODE ||
|
|
2537
|
-
(ContinueInlineToRTETextBlockStrategy.canHandleTags.includes(element.nodeName) &&
|
|
2538
|
-
!(element.textContent === '' && element.querySelector('IMG')))) {
|
|
2539
|
-
count++;
|
|
2540
|
-
}
|
|
2541
|
-
else {
|
|
2542
|
-
break;
|
|
2543
|
-
}
|
|
2544
|
-
}
|
|
2545
|
-
return count;
|
|
2546
|
-
}
|
|
2547
|
-
/**
|
|
2548
|
-
* Parse to a text block.
|
|
2549
|
-
*
|
|
2550
|
-
* @param {HTMLElement[]} elementsArray - Current elements.
|
|
2551
|
-
* @returns {Nullable<RTEContentBlock>} - Text block.
|
|
2552
|
-
*/
|
|
2553
|
-
handle(elementsArray) {
|
|
2554
|
-
const parent = elementsArray[0].parentElement;
|
|
2555
|
-
const nodes = this.generateChildNodes(elementsArray, this.generateTextNodeAnnotations(parent));
|
|
2556
|
-
if (nodes.length === 0)
|
|
2557
|
-
return null;
|
|
2558
|
-
return RTETextBlock.from({
|
|
2559
|
-
id: generateUUID(),
|
|
2560
|
-
type: 'paragraph',
|
|
2561
|
-
nodes: nodes,
|
|
2562
|
-
annotations: this.generateBlockAnnotations(parent),
|
|
2563
|
-
});
|
|
2564
|
-
}
|
|
2565
|
-
/* istanbul ignore next */
|
|
2566
|
-
/**
|
|
2567
|
-
* Append child blocks.
|
|
2568
|
-
*/
|
|
2569
|
-
// eslint-disable-next-line @typescript-eslint/no-empty-function
|
|
2570
|
-
appendChildBlocks() { }
|
|
2571
|
-
/**
|
|
2572
|
-
* Should continue process to child elements.
|
|
2573
|
-
*
|
|
2574
|
-
* @returns {boolean} - boolean.
|
|
2575
|
-
*/
|
|
2576
|
-
shouldProceedToElementChildren() {
|
|
2577
|
-
return false;
|
|
2578
|
-
}
|
|
2579
|
-
}
|
|
2580
|
-
ContinueInlineToRTETextBlockStrategy.canHandleTags = [
|
|
2581
|
-
'SPAN',
|
|
2582
|
-
'STRONG',
|
|
2583
|
-
'CODE',
|
|
2584
|
-
'I',
|
|
2585
|
-
'EM',
|
|
2586
|
-
'S',
|
|
2587
|
-
'U',
|
|
2588
|
-
'A',
|
|
2589
|
-
'VEGA-RICH-TEXT-LINK-EDITOR',
|
|
2590
|
-
'B',
|
|
2591
|
-
'INS',
|
|
2592
|
-
'DEL',
|
|
2593
|
-
];
|
|
2594
|
-
|
|
2595
|
-
/** Transform ul element to list block DTO */
|
|
2596
|
-
class UlToRTEListBlockStrategy extends BlockToRTEBlockStrategyAbstract {
|
|
2597
|
-
/**
|
|
2598
|
-
* Can be handle.
|
|
2599
|
-
*
|
|
2600
|
-
* @param {HTMLElement[]} elementsArray - Current elements.
|
|
2601
|
-
* @param {number} currentIndex - Current element index.
|
|
2602
|
-
* @returns {number} - can be handled element count.
|
|
2603
|
-
*/
|
|
2604
|
-
canHandle(elementsArray, currentIndex) {
|
|
2605
|
-
return elementsArray[currentIndex].tagName === 'UL' ? 1 : 0;
|
|
2606
|
-
}
|
|
2607
|
-
/**
|
|
2608
|
-
* Parse to a block.
|
|
2609
|
-
*
|
|
2610
|
-
* @param {HTMLElement[]} elementsArray - Current elements.
|
|
2611
|
-
* @returns {Nullable<RTEContentBlock>} - Bullet list block.
|
|
2612
|
-
*/
|
|
2613
|
-
handle(elementsArray) {
|
|
2614
|
-
if (elementsArray[0].childNodes.length === 0)
|
|
2615
|
-
return null;
|
|
2616
|
-
return RTEListBlock.from({
|
|
2617
|
-
id: generateUUID(),
|
|
2618
|
-
type: 'bullet-list',
|
|
2619
|
-
blocks: [],
|
|
2620
|
-
annotations: this.generateBlockAnnotations(elementsArray[0]),
|
|
2621
|
-
});
|
|
2622
|
-
}
|
|
2623
|
-
/**
|
|
2624
|
-
* Append child list item blocks to current list block.
|
|
2625
|
-
*
|
|
2626
|
-
* @param {RTEListBlock} currentBlock - Current list block.
|
|
2627
|
-
* @param {RTEListItemBlock[]} childBlocks - Current list item blocks.
|
|
2628
|
-
*/
|
|
2629
|
-
appendChildBlocks(currentBlock, childBlocks) {
|
|
2630
|
-
currentBlock.children = childBlocks;
|
|
2631
|
-
childBlocks.forEach((block) => (block.parent = currentBlock));
|
|
2632
|
-
}
|
|
2633
|
-
/**
|
|
2634
|
-
* Should continue process to child elements.
|
|
2635
|
-
*
|
|
2636
|
-
* @returns {boolean} - boolean.
|
|
2637
|
-
*/
|
|
2638
|
-
shouldProceedToElementChildren() {
|
|
2639
|
-
return true;
|
|
2640
|
-
}
|
|
2641
|
-
}
|
|
2642
|
-
|
|
2643
|
-
/** Transform li element to list item block DTO */
|
|
2644
|
-
class LiToRTEListItemBlockStrategy extends BlockToRTEBlockStrategyAbstract {
|
|
2645
|
-
/**
|
|
2646
|
-
* Can be handle.
|
|
2647
|
-
*
|
|
2648
|
-
* @param {HTMLElement[]} elementsArray - Current elements.
|
|
2649
|
-
* @param {number} currentIndex - Current element index.
|
|
2650
|
-
* @returns {number} - can be handled element count.
|
|
2651
|
-
*/
|
|
2652
|
-
canHandle(elementsArray, currentIndex) {
|
|
2653
|
-
return elementsArray[currentIndex].tagName === 'LI' ? 1 : 0;
|
|
2654
|
-
}
|
|
2655
|
-
/**
|
|
2656
|
-
* Parse to a list item block.
|
|
2657
|
-
*
|
|
2658
|
-
* @param {HTMLElement[]} elementsArray - Current elements.
|
|
2659
|
-
* @returns {Nullable<RTEContentBlock>} - List item block.
|
|
2660
|
-
*/
|
|
2661
|
-
handle(elementsArray) {
|
|
2662
|
-
if (elementsArray[0].childNodes.length === 0)
|
|
2663
|
-
return null;
|
|
2664
|
-
return RTEListItemBlock.from({
|
|
2665
|
-
id: generateUUID(),
|
|
2666
|
-
type: 'list-item',
|
|
2667
|
-
nodes: this.generateChildNodes(Array.from(elementsArray[0].childNodes).filter((item) => !['UL', 'OL'].includes(item.nodeName)), this.generateTextNodeAnnotations(elementsArray[0])),
|
|
2668
|
-
annotations: this.generateBlockAnnotations(elementsArray[0]),
|
|
2669
|
-
});
|
|
2670
|
-
}
|
|
2671
|
-
/**
|
|
2672
|
-
* Append child list blocks to current list item block.
|
|
2673
|
-
*
|
|
2674
|
-
* @param {RTEListBlock} currentBlock - Current list item block.
|
|
2675
|
-
* @param {RTEListItemBlock[]} childBlocks - Current list blocks.
|
|
2676
|
-
*/
|
|
2677
|
-
appendChildBlocks(currentBlock, childBlocks) {
|
|
2678
|
-
currentBlock.nestList = childBlocks.filter((block) => ['bullet-list', 'number-list'].includes(block.type));
|
|
2679
|
-
}
|
|
2680
|
-
/**
|
|
2681
|
-
* Should continue process to child elements.
|
|
2682
|
-
*
|
|
2683
|
-
* @returns {boolean} - boolean.
|
|
2684
|
-
*/
|
|
2685
|
-
shouldProceedToElementChildren() {
|
|
2686
|
-
return true;
|
|
2687
|
-
}
|
|
2688
|
-
}
|
|
2689
|
-
|
|
2690
|
-
/** Transform inline block element to text block DTO */
|
|
2691
|
-
class InlineBlockToRTETextBlockStrategy extends BlockToRTEBlockStrategyAbstract {
|
|
2692
|
-
/**
|
|
2693
|
-
* Can be handle.
|
|
2694
|
-
*
|
|
2695
|
-
* @param {HTMLElement[]} elementsArray - Current elements.
|
|
2696
|
-
* @param {number} currentIndex - Current element index.
|
|
2697
|
-
* @returns {number} - can be handled element count.
|
|
2698
|
-
*/
|
|
2699
|
-
canHandle(elementsArray, currentIndex) {
|
|
2700
|
-
return [
|
|
2701
|
-
'heading-1',
|
|
2702
|
-
'heading-2',
|
|
2703
|
-
'heading-3',
|
|
2704
|
-
'heading-4',
|
|
2705
|
-
'heading-5',
|
|
2706
|
-
'heading-6',
|
|
2707
|
-
'title',
|
|
2708
|
-
'subtitle',
|
|
2709
|
-
].includes(this.getElementType(elementsArray[currentIndex]))
|
|
2710
|
-
? 1
|
|
2711
|
-
: 0;
|
|
2712
|
-
}
|
|
2713
|
-
/**
|
|
2714
|
-
* Parse to a text block.
|
|
2715
|
-
*
|
|
2716
|
-
* @param {HTMLElement[]} elementsArray - Current elements.
|
|
2717
|
-
* @returns {Nullable<RTEContentBlock>} - Text block.
|
|
2718
|
-
*/
|
|
2719
|
-
handle(elementsArray) {
|
|
2720
|
-
const nodes = this.generateChildNodes(elementsArray);
|
|
2721
|
-
if (nodes.length === 0)
|
|
2722
|
-
return null;
|
|
2723
|
-
return RTETextBlock.from({
|
|
2724
|
-
id: generateUUID(),
|
|
2725
|
-
type: this.getElementType(elementsArray[0]),
|
|
2726
|
-
nodes: nodes,
|
|
2727
|
-
annotations: Object.assign(Object.assign({}, this.generateBlockAnnotations(elementsArray[0])), { textStyle: this.getElementType(elementsArray[0]) }),
|
|
2728
|
-
});
|
|
2729
|
-
}
|
|
2730
|
-
/* istanbul ignore next */
|
|
2731
|
-
/**
|
|
2732
|
-
* Append child blocks.
|
|
2733
|
-
*/
|
|
2734
|
-
// eslint-disable-next-line @typescript-eslint/no-empty-function
|
|
2735
|
-
appendChildBlocks() { }
|
|
2736
|
-
/**
|
|
2737
|
-
* Should continue process to child elements.
|
|
2738
|
-
*
|
|
2739
|
-
* @returns {boolean} - boolean.
|
|
2740
|
-
*/
|
|
2741
|
-
shouldProceedToElementChildren() {
|
|
2742
|
-
return false;
|
|
2743
|
-
}
|
|
2744
|
-
/**
|
|
2745
|
-
* Get node type of element.
|
|
2746
|
-
*
|
|
2747
|
-
* @param {HTMLElement} element - element.
|
|
2748
|
-
* @returns {string} - node type.
|
|
2749
|
-
*/
|
|
2750
|
-
getElementType(element) {
|
|
2751
|
-
var _a;
|
|
2752
|
-
if (element.nodeType !== Node.TEXT_NODE && element.hasAttribute('data-type')) {
|
|
2753
|
-
return element.getAttribute('data-type');
|
|
2754
|
-
}
|
|
2755
|
-
switch ((_a = element.style) === null || _a === void 0 ? void 0 : _a.fontSize) {
|
|
2756
|
-
case '36px':
|
|
2757
|
-
return 'title';
|
|
2758
|
-
case '28px':
|
|
2759
|
-
return 'subtitle';
|
|
2760
|
-
case '22px':
|
|
2761
|
-
return 'heading-1';
|
|
2762
|
-
case '20px':
|
|
2763
|
-
return 'heading-2';
|
|
2764
|
-
case '18px':
|
|
2765
|
-
return 'heading-3';
|
|
2766
|
-
}
|
|
2767
|
-
switch (element.nodeName) {
|
|
2768
|
-
case 'H1':
|
|
2769
|
-
return 'heading-1';
|
|
2770
|
-
case 'H2':
|
|
2771
|
-
return 'heading-2';
|
|
2772
|
-
case 'H3':
|
|
2773
|
-
return 'heading-3';
|
|
2774
|
-
case 'H4':
|
|
2775
|
-
return 'heading-4';
|
|
2776
|
-
case 'H5':
|
|
2777
|
-
return 'heading-5';
|
|
2778
|
-
case 'H6':
|
|
2779
|
-
return 'heading-6';
|
|
2780
|
-
default:
|
|
2781
|
-
return '';
|
|
2782
|
-
}
|
|
2783
|
-
}
|
|
2784
|
-
}
|
|
2785
|
-
|
|
2786
|
-
/** Transform img element to image block DTO */
|
|
2787
|
-
class ImgToRTEImageBlockStrategy extends BlockToRTEBlockStrategyAbstract {
|
|
2788
|
-
/**
|
|
2789
|
-
* Can be handle.
|
|
2790
|
-
*
|
|
2791
|
-
* @param {HTMLElement[]} elementsArray - Current elements.
|
|
2792
|
-
* @param {number} currentIndex - Current element index.
|
|
2793
|
-
* @returns {number} - can be handled element count.
|
|
2794
|
-
*/
|
|
2795
|
-
canHandle(elementsArray, currentIndex) {
|
|
2796
|
-
return elementsArray[currentIndex].tagName === 'IMG' ? 1 : 0;
|
|
2797
|
-
}
|
|
2798
|
-
/**
|
|
2799
|
-
* Parse to a image block.
|
|
2800
|
-
*
|
|
2801
|
-
* @param {HTMLElement[]} elementsArray - Current elements.
|
|
2802
|
-
* @returns {Nullable<RTEContentBlock>} - Image block.
|
|
2803
|
-
*/
|
|
2804
|
-
handle(elementsArray) {
|
|
2805
|
-
const element = elementsArray[0];
|
|
2806
|
-
return RTEImageBlock.from({
|
|
2807
|
-
id: generateUUID(),
|
|
2808
|
-
type: 'image',
|
|
2809
|
-
nodes: [
|
|
2810
|
-
{
|
|
2811
|
-
id: generateUUID(),
|
|
2812
|
-
type: 'image',
|
|
2813
|
-
url: element.src,
|
|
2814
|
-
annotations: {
|
|
2815
|
-
size: 'md',
|
|
2816
|
-
alt: element.alt,
|
|
2817
|
-
},
|
|
2818
|
-
},
|
|
2819
|
-
],
|
|
2820
|
-
annotations: this.generateBlockAnnotations(element),
|
|
2821
|
-
});
|
|
2822
|
-
}
|
|
2823
|
-
/* istanbul ignore next */
|
|
2824
|
-
/**
|
|
2825
|
-
* Append child blocks.
|
|
2826
|
-
*/
|
|
2827
|
-
// eslint-disable-next-line @typescript-eslint/no-empty-function
|
|
2828
|
-
appendChildBlocks() { }
|
|
2829
|
-
/**
|
|
2830
|
-
* Should continue process to child elements.
|
|
2831
|
-
*
|
|
2832
|
-
* @returns {boolean} - boolean.
|
|
2833
|
-
*/
|
|
2834
|
-
shouldProceedToElementChildren() {
|
|
2835
|
-
return false;
|
|
2836
|
-
}
|
|
2837
|
-
}
|
|
2838
|
-
|
|
2839
|
-
/** Transform vega-rich-text-image-editor element to image block DTO */
|
|
2840
|
-
class VegaImageToRTEImageBlockStrategy extends BlockToRTEBlockStrategyAbstract {
|
|
2841
|
-
/**
|
|
2842
|
-
* Can be handle.
|
|
2843
|
-
*
|
|
2844
|
-
* @param {HTMLElement[]} elementsArray - Current elements.
|
|
2845
|
-
* @param {number} currentIndex - Current element index.
|
|
2846
|
-
* @returns {number} - can be handled element count.
|
|
2847
|
-
*/
|
|
2848
|
-
canHandle(elementsArray, currentIndex) {
|
|
2849
|
-
return elementsArray[currentIndex].tagName === 'VEGA-RICH-TEXT-IMAGE-EDITOR' ? 1 : 0;
|
|
2850
|
-
}
|
|
2851
|
-
/**
|
|
2852
|
-
* Parse to a image block.
|
|
2853
|
-
*
|
|
2854
|
-
* @param {HTMLElement[]} elementsArray - Current elements.
|
|
2855
|
-
* @returns {Nullable<RTEContentBlock>} - Image block.
|
|
2856
|
-
*/
|
|
2857
|
-
handle(elementsArray) {
|
|
2858
|
-
const element = elementsArray[0];
|
|
2859
|
-
const image = element.querySelector('img');
|
|
2860
|
-
if (isNonNullable(image)) {
|
|
2861
|
-
return RTEImageBlock.from({
|
|
2862
|
-
id: generateUUID(),
|
|
2863
|
-
type: 'image',
|
|
2864
|
-
nodes: [
|
|
2865
|
-
{
|
|
2866
|
-
id: generateUUID(),
|
|
2867
|
-
type: 'image',
|
|
2868
|
-
url: image.src,
|
|
2869
|
-
annotations: {
|
|
2870
|
-
size: element.size || 'md',
|
|
2871
|
-
alt: element.alt,
|
|
2872
|
-
},
|
|
2873
|
-
},
|
|
2874
|
-
],
|
|
2875
|
-
annotations: this.generateBlockAnnotations(element),
|
|
2876
|
-
});
|
|
2877
|
-
}
|
|
2878
|
-
}
|
|
2879
|
-
/* istanbul ignore next */
|
|
2880
|
-
/**
|
|
2881
|
-
* Append child blocks.
|
|
2882
|
-
*/
|
|
2883
|
-
// eslint-disable-next-line @typescript-eslint/no-empty-function
|
|
2884
|
-
appendChildBlocks() { }
|
|
2885
|
-
/**
|
|
2886
|
-
* Should continue process to child elements.
|
|
2887
|
-
*
|
|
2888
|
-
* @returns {boolean} - boolean.
|
|
2889
|
-
*/
|
|
2890
|
-
shouldProceedToElementChildren() {
|
|
2891
|
-
return false;
|
|
2892
|
-
}
|
|
2893
|
-
}
|
|
2894
|
-
|
|
2895
|
-
/** Transform ol element to list block DTO */
|
|
2896
|
-
class OlToRTEListBlockStrategy extends BlockToRTEBlockStrategyAbstract {
|
|
2897
|
-
/**
|
|
2898
|
-
* Can be handle.
|
|
2899
|
-
*
|
|
2900
|
-
* @param {HTMLElement[]} elementsArray - Current elements.
|
|
2901
|
-
* @param {number} currentIndex - Current element index.
|
|
2902
|
-
* @returns {number} - can be handled element count.
|
|
2903
|
-
*/
|
|
2904
|
-
canHandle(elementsArray, currentIndex) {
|
|
2905
|
-
return elementsArray[currentIndex].tagName === 'OL' ? 1 : 0;
|
|
2906
|
-
}
|
|
2907
|
-
/**
|
|
2908
|
-
* Parse to a number list block.
|
|
2909
|
-
*
|
|
2910
|
-
* @param {HTMLElement[]} elementsArray - Current elements.
|
|
2911
|
-
* @returns {Nullable<RTEContentBlock>} - Number list block.
|
|
2912
|
-
*/
|
|
2913
|
-
handle(elementsArray) {
|
|
2914
|
-
if (elementsArray[0].childNodes.length === 0)
|
|
2915
|
-
return null;
|
|
2916
|
-
return RTEListBlock.from({
|
|
2917
|
-
id: generateUUID(),
|
|
2918
|
-
type: 'number-list',
|
|
2919
|
-
blocks: [],
|
|
2920
|
-
annotations: this.generateBlockAnnotations(elementsArray[0]),
|
|
2921
|
-
});
|
|
2922
|
-
}
|
|
2923
|
-
/**
|
|
2924
|
-
* Append child list item blocks to current list block.
|
|
2925
|
-
*
|
|
2926
|
-
* @param {RTEListBlock} currentBlock - Current list block.
|
|
2927
|
-
* @param {RTEListItemBlock[]} childBlocks - Current list item blocks.
|
|
2928
|
-
*/
|
|
2929
|
-
appendChildBlocks(currentBlock, childBlocks) {
|
|
2930
|
-
currentBlock.children = childBlocks;
|
|
2931
|
-
childBlocks.forEach((block) => (block.parent = currentBlock));
|
|
2932
|
-
}
|
|
2933
|
-
/**
|
|
2934
|
-
* Should continue process to child elements.
|
|
2935
|
-
*
|
|
2936
|
-
* @returns {boolean} - boolean.
|
|
2937
|
-
*/
|
|
2938
|
-
shouldProceedToElementChildren() {
|
|
2939
|
-
return true;
|
|
2940
|
-
}
|
|
2941
|
-
}
|
|
2942
|
-
|
|
2943
|
-
/** Transform img in span or other inline element to image block DTO */
|
|
2944
|
-
class SpanImageToRTEImageBlockStrategy extends BlockToRTEBlockStrategyAbstract {
|
|
2945
|
-
/**
|
|
2946
|
-
* Can be handle.
|
|
2947
|
-
*
|
|
2948
|
-
* @param {HTMLElement[]} elementsArray - Current elements.
|
|
2949
|
-
* @param {number} currentIndex - Current element index.
|
|
2950
|
-
* @returns {number} - can be handled element count.
|
|
2951
|
-
*/
|
|
2952
|
-
canHandle(elementsArray, currentIndex) {
|
|
2953
|
-
const element = elementsArray[currentIndex];
|
|
2954
|
-
return element.nodeType === Node.ELEMENT_NODE &&
|
|
2955
|
-
element.textContent === '' &&
|
|
2956
|
-
element.querySelector('img')
|
|
2957
|
-
? 1
|
|
2958
|
-
: 0;
|
|
2959
|
-
}
|
|
2960
|
-
/**
|
|
2961
|
-
* Parse to a image block.
|
|
2962
|
-
*
|
|
2963
|
-
* @param {HTMLElement[]} elementsArray - Current elements.
|
|
2964
|
-
* @returns {Nullable<RTEContentBlock>} - Image block.
|
|
2965
|
-
*/
|
|
2966
|
-
handle(elementsArray) {
|
|
2967
|
-
const element = elementsArray[0].querySelector('img');
|
|
2968
|
-
return RTEImageBlock.from({
|
|
2969
|
-
id: generateUUID(),
|
|
2970
|
-
type: 'image',
|
|
2971
|
-
nodes: [
|
|
2972
|
-
{
|
|
2973
|
-
id: generateUUID(),
|
|
2974
|
-
type: 'image',
|
|
2975
|
-
url: element.src,
|
|
2976
|
-
annotations: {
|
|
2977
|
-
size: 'md',
|
|
2978
|
-
alt: element.alt,
|
|
2979
|
-
},
|
|
2980
|
-
},
|
|
2981
|
-
],
|
|
2982
|
-
annotations: this.generateBlockAnnotations(element),
|
|
2983
|
-
});
|
|
2984
|
-
}
|
|
2985
|
-
/* istanbul ignore next */
|
|
2986
|
-
/**
|
|
2987
|
-
* Append child blocks.
|
|
2988
|
-
*/
|
|
2989
|
-
// eslint-disable-next-line @typescript-eslint/no-empty-function
|
|
2990
|
-
appendChildBlocks() { }
|
|
2991
|
-
/**
|
|
2992
|
-
* Should continue process to child elements.
|
|
2993
|
-
*
|
|
2994
|
-
* @returns {boolean} - boolean.
|
|
2995
|
-
*/
|
|
2996
|
-
shouldProceedToElementChildren() {
|
|
2997
|
-
return false;
|
|
2998
|
-
}
|
|
2999
|
-
}
|
|
3000
|
-
|
|
3001
|
-
/** Transform child element of UL element which are not LI element to list item block DTO */
|
|
3002
|
-
class ULNotLiChildToRTEListItemBlockStrategy extends BlockToRTEBlockStrategyAbstract {
|
|
3003
|
-
/**
|
|
3004
|
-
* Can be handle.
|
|
3005
|
-
*
|
|
3006
|
-
* @param {HTMLElement[]} elementsArray - Current elements.
|
|
3007
|
-
* @param {number} currentIndex - Current element index.
|
|
3008
|
-
* @returns {number} - can be handled element count.
|
|
3009
|
-
*/
|
|
3010
|
-
canHandle(elementsArray, currentIndex) {
|
|
3011
|
-
const element = elementsArray[currentIndex];
|
|
3012
|
-
const parent = element.parentElement;
|
|
3013
|
-
return element.nodeName !== 'LI' && parent && ['UL', 'OL'].includes(parent.nodeName) ? 1 : 0;
|
|
3014
|
-
}
|
|
3015
|
-
/**
|
|
3016
|
-
* Parse to a list item block.
|
|
3017
|
-
*
|
|
3018
|
-
* @param {HTMLElement[]} elementsArray - Current elements.
|
|
3019
|
-
* @returns {Nullable<RTEContentBlock>} - List item block.
|
|
3020
|
-
*/
|
|
3021
|
-
handle(elementsArray) {
|
|
3022
|
-
const nodes = this.generateChildNodes(elementsArray);
|
|
3023
|
-
if (nodes.length === 0)
|
|
3024
|
-
return null;
|
|
3025
|
-
return RTEListItemBlock.from({
|
|
3026
|
-
id: generateUUID(),
|
|
3027
|
-
type: 'list-item',
|
|
3028
|
-
nodes: nodes,
|
|
3029
|
-
annotations: {},
|
|
3030
|
-
});
|
|
3031
|
-
}
|
|
3032
|
-
/* istanbul ignore next */
|
|
3033
|
-
/**
|
|
3034
|
-
* Append child blocks.
|
|
3035
|
-
*/
|
|
3036
|
-
// eslint-disable-next-line @typescript-eslint/no-empty-function
|
|
3037
|
-
appendChildBlocks() { }
|
|
3038
|
-
/**
|
|
3039
|
-
* Should continue process to child elements.
|
|
3040
|
-
*
|
|
3041
|
-
* @returns {boolean} - boolean.
|
|
3042
|
-
*/
|
|
3043
|
-
shouldProceedToElementChildren() {
|
|
3044
|
-
return false;
|
|
3045
|
-
}
|
|
3046
|
-
}
|
|
3047
|
-
|
|
3048
|
-
/** Transform other editor code element which has attribute data-language to RTE code block DTO */
|
|
3049
|
-
class JiraCodeToRTECodeBlockStrategy extends BlockToRTEBlockStrategyAbstract {
|
|
3050
|
-
/**
|
|
3051
|
-
* Can be handle.
|
|
3052
|
-
*
|
|
3053
|
-
* @param {HTMLElement[]} elementsArray - Current elements.
|
|
3054
|
-
* @param {number} currentIndex - Current element index.
|
|
3055
|
-
* @returns {number} - can be handled element count.
|
|
3056
|
-
*/
|
|
3057
|
-
canHandle(elementsArray, currentIndex) {
|
|
3058
|
-
return (elementsArray[currentIndex].tagName === 'PRE' ||
|
|
3059
|
-
elementsArray[currentIndex].tagName === 'CODE') &&
|
|
3060
|
-
elementsArray[currentIndex].hasAttribute('data-language')
|
|
3061
|
-
? 1
|
|
3062
|
-
: 0;
|
|
3063
|
-
}
|
|
3064
|
-
/**
|
|
3065
|
-
* Parse to a code block.
|
|
3066
|
-
*
|
|
3067
|
-
* @param {HTMLElement[]} elementsArray - Current elements.
|
|
3068
|
-
* @returns {Nullable<RTECodeBlock>} - Code block.
|
|
3069
|
-
*/
|
|
3070
|
-
handle(elementsArray) {
|
|
3071
|
-
const codeRef = elementsArray[0];
|
|
3072
|
-
if (codeRef) {
|
|
3073
|
-
const content = codeRef.textContent;
|
|
3074
|
-
const language = codeRef.dataset
|
|
3075
|
-
.language;
|
|
3076
|
-
return RTECodeBlock.from({
|
|
3077
|
-
id: generateUUID(),
|
|
3078
|
-
type: 'code-block',
|
|
3079
|
-
content,
|
|
3080
|
-
language,
|
|
3081
|
-
});
|
|
3082
|
-
}
|
|
3083
|
-
}
|
|
3084
|
-
/* istanbul ignore next */
|
|
3085
|
-
/**
|
|
3086
|
-
* Append child blocks.
|
|
3087
|
-
*/
|
|
3088
|
-
// eslint-disable-next-line @typescript-eslint/no-empty-function
|
|
3089
|
-
appendChildBlocks() { }
|
|
3090
|
-
/**
|
|
3091
|
-
* Should continue process to child elements.
|
|
3092
|
-
*
|
|
3093
|
-
* @returns {boolean} - boolean.
|
|
3094
|
-
*/
|
|
3095
|
-
shouldProceedToElementChildren() {
|
|
3096
|
-
return false;
|
|
3097
|
-
}
|
|
3098
|
-
}
|
|
3099
|
-
|
|
3100
|
-
/** Transform vega-code-block element to code block DTO */
|
|
3101
|
-
class VegaCodeBlockToRTECodeBlockStrategy extends JiraCodeToRTECodeBlockStrategy {
|
|
3102
|
-
/**
|
|
3103
|
-
* Can be handle.
|
|
3104
|
-
*
|
|
3105
|
-
* TODO: Update the browser clipboard data to fix the issue with nested vega-code-block elements.
|
|
3106
|
-
* In safari the html snippet will be like: <vega-code-block><p><span>paragraph</span></p><vega-code-block></vega-code-block></vega-code-block>
|
|
3107
|
-
* The vega-code-block nested inside the vega-code-block, so we need to check the child element.
|
|
3108
|
-
*
|
|
3109
|
-
* @param {HTMLElement[]} elementsArray - Current elements.
|
|
3110
|
-
* @param {number} currentIndex - Current element index.
|
|
3111
|
-
* @returns {number} - can be handled element count.
|
|
3112
|
-
*/
|
|
3113
|
-
canHandle(elementsArray, currentIndex) {
|
|
3114
|
-
return (elementsArray[currentIndex].tagName === 'VEGA-CODE-BLOCK' &&
|
|
3115
|
-
!!elementsArray[currentIndex].querySelector('vega-code-block') === false) ||
|
|
3116
|
-
this.isCodeBlockContainer(elementsArray[currentIndex])
|
|
3117
|
-
? 1
|
|
3118
|
-
: 0;
|
|
3119
|
-
}
|
|
3120
|
-
/**
|
|
3121
|
-
* Parse to a code block.
|
|
3122
|
-
*
|
|
3123
|
-
* @param {HTMLElement[]} elementsArray - Current elements.
|
|
3124
|
-
* @returns {Nullable<RTECodeBlock>} - Code block.
|
|
2241
|
+
* Delete the selected node from the current state.
|
|
3125
2242
|
*/
|
|
3126
|
-
|
|
3127
|
-
const
|
|
3128
|
-
|
|
3129
|
-
|
|
3130
|
-
const code = codeBlockElement.querySelector('code');
|
|
3131
|
-
if (code) {
|
|
3132
|
-
return super.handle([code]); // Call the parent method to handle the code element
|
|
2243
|
+
handleEvent() {
|
|
2244
|
+
const selectedBlocks = this.selectionController.getSelectedBlocks();
|
|
2245
|
+
if (selectedBlocks.length < 2) {
|
|
2246
|
+
this.deleteContentWithSingleBlock();
|
|
3133
2247
|
}
|
|
3134
|
-
else
|
|
3135
|
-
|
|
3136
|
-
// eslint-disable-next-line no-restricted-globals
|
|
3137
|
-
const code = document.createElement('code');
|
|
3138
|
-
code.textContent = codeBlockElement.dataset.content;
|
|
3139
|
-
code.dataset.language = codeBlockElement.dataset.language;
|
|
3140
|
-
return super.handle([code]); // Call the parent method to handle the code element
|
|
2248
|
+
else {
|
|
2249
|
+
this.deleteContentWithMultipleNodes();
|
|
3141
2250
|
}
|
|
3142
2251
|
}
|
|
3143
|
-
/* istanbul ignore next */
|
|
3144
2252
|
/**
|
|
3145
|
-
*
|
|
3146
|
-
*/
|
|
3147
|
-
// eslint-disable-next-line @typescript-eslint/no-empty-function
|
|
3148
|
-
appendChildBlocks() { }
|
|
3149
|
-
/**
|
|
3150
|
-
* Should continue process to child elements.
|
|
3151
|
-
*
|
|
3152
|
-
* @returns {boolean} - boolean.
|
|
2253
|
+
* Handles the deletion of content within a single block in an RTE editor.
|
|
3153
2254
|
*/
|
|
3154
|
-
|
|
3155
|
-
|
|
2255
|
+
deleteContentWithSingleBlock() {
|
|
2256
|
+
const range = this.selectionController.getCurrentRange();
|
|
2257
|
+
const { startOffset, endOffset, startContainer, endContainer } = range;
|
|
2258
|
+
const selectedBlocks = this.selectionController.getSelectedBlocks();
|
|
2259
|
+
const selectedNodes = this.selectionController.getSelectedNodes();
|
|
2260
|
+
if (startOffset !== endOffset || startContainer !== endContainer) {
|
|
2261
|
+
this.deleteContentWithMultipleNodes();
|
|
2262
|
+
}
|
|
2263
|
+
else if (selectedBlocks[0]) {
|
|
2264
|
+
const deleteAction = new DeleteBlockContentAction(selectedNodes[0], startOffset);
|
|
2265
|
+
selectedBlocks[0].apply(deleteAction);
|
|
2266
|
+
if (deleteAction.previousNode) {
|
|
2267
|
+
const nextOffset = deleteAction.previousNode === selectedNodes[0]
|
|
2268
|
+
? Math.max(0, startOffset - 1)
|
|
2269
|
+
: deleteAction.previousNode.getRangeEndOffset();
|
|
2270
|
+
this.selectionController.enqueueSelectionRangeFutureState(deleteAction.previousNode, nextOffset);
|
|
2271
|
+
}
|
|
2272
|
+
else if (deleteAction.nextNode) {
|
|
2273
|
+
this.selectionController.enqueueSelectionRangeFutureState(deleteAction.nextNode, 0);
|
|
2274
|
+
}
|
|
2275
|
+
else if (this.currentState.children.length === 0) {
|
|
2276
|
+
// Add a empty paragraph if delete all content to make sure the caret position
|
|
2277
|
+
this.insertDefaultParagraph();
|
|
2278
|
+
}
|
|
2279
|
+
}
|
|
3156
2280
|
}
|
|
3157
2281
|
/**
|
|
3158
|
-
*
|
|
3159
|
-
*
|
|
3160
|
-
* @param {HTMLElement} element - The element to check.
|
|
3161
|
-
* @returns {boolean} - Boolean result.
|
|
2282
|
+
* Deletes the content within multiple nodes selected by the user.
|
|
3162
2283
|
*/
|
|
3163
|
-
|
|
3164
|
-
|
|
3165
|
-
|
|
3166
|
-
|
|
3167
|
-
|
|
3168
|
-
|
|
3169
|
-
|
|
3170
|
-
|
|
3171
|
-
|
|
3172
|
-
|
|
3173
|
-
this.elementStrategies = [
|
|
3174
|
-
new UlToRTEListBlockStrategy(),
|
|
3175
|
-
new OlToRTEListBlockStrategy(),
|
|
3176
|
-
new ULNotLiChildToRTEListItemBlockStrategy(),
|
|
3177
|
-
new LiToRTEListItemBlockStrategy(),
|
|
3178
|
-
new VegaCodeBlockToRTECodeBlockStrategy(),
|
|
3179
|
-
new JiraCodeToRTECodeBlockStrategy(),
|
|
3180
|
-
new InlineBlockToRTETextBlockStrategy(),
|
|
3181
|
-
new ImgToRTEImageBlockStrategy(),
|
|
3182
|
-
new VegaImageToRTEImageBlockStrategy(),
|
|
3183
|
-
new SpanImageToRTEImageBlockStrategy(),
|
|
3184
|
-
new ContinueInlineToRTETextBlockStrategy(),
|
|
3185
|
-
];
|
|
2284
|
+
deleteContentWithMultipleNodes() {
|
|
2285
|
+
const selectedNodes = this.selectionController.getSelectedNodes();
|
|
2286
|
+
const cursorNode = this.removeSelectionRange(true);
|
|
2287
|
+
const lastSelectedNode = selectedNodes[selectedNodes.length - 1];
|
|
2288
|
+
if (selectedNodes.length > 1 &&
|
|
2289
|
+
lastSelectedNode instanceof RTETextNode &&
|
|
2290
|
+
lastSelectedNode.isEmpty()) {
|
|
2291
|
+
lastSelectedNode.parent.apply(new RemoveChildrenAction(lastSelectedNode));
|
|
2292
|
+
}
|
|
2293
|
+
this.convertFirstBlockToParagraph(cursorNode.parent);
|
|
3186
2294
|
}
|
|
3187
2295
|
/**
|
|
3188
|
-
*
|
|
2296
|
+
* If the first block is not paragraph, convert the block to paragraph after delete all text
|
|
3189
2297
|
*
|
|
3190
|
-
* @param {
|
|
3191
|
-
* @returns {ElementToDTOStrategyOutput[]} - outputs.
|
|
2298
|
+
* @param {RTEBlock} block - The first block instance
|
|
3192
2299
|
*/
|
|
3193
|
-
|
|
3194
|
-
const
|
|
3195
|
-
|
|
3196
|
-
|
|
3197
|
-
|
|
3198
|
-
|
|
3199
|
-
|
|
3200
|
-
|
|
3201
|
-
|
|
3202
|
-
|
|
3203
|
-
|
|
3204
|
-
if (canHandledCount === 1 && strategy.shouldProceedToElementChildren()) {
|
|
3205
|
-
output.setChildrenOutput(this.process(Array.from(handledElements[0].childNodes)));
|
|
3206
|
-
}
|
|
3207
|
-
outputs.push(output);
|
|
3208
|
-
i += canHandledCount - 1;
|
|
3209
|
-
break;
|
|
3210
|
-
}
|
|
3211
|
-
}
|
|
3212
|
-
if (canHandledCount === 0 && i < elements.length) {
|
|
3213
|
-
const elementChildren = Array.from(elements[i].childNodes);
|
|
3214
|
-
const childrenOutputs = this.process(Array.from(elementChildren));
|
|
3215
|
-
if (childrenOutputs.length > 0) {
|
|
3216
|
-
outputs.push(...childrenOutputs);
|
|
3217
|
-
}
|
|
3218
|
-
}
|
|
2300
|
+
convertFirstBlockToParagraph(block) {
|
|
2301
|
+
const firstBlock = this.currentState.children[0];
|
|
2302
|
+
if (firstBlock === block &&
|
|
2303
|
+
block instanceof RTETextBlock &&
|
|
2304
|
+
block.children.length === 1 &&
|
|
2305
|
+
block.children[0].isEmpty() &&
|
|
2306
|
+
block.type !== 'paragraph') {
|
|
2307
|
+
const paragraph = this.createEmptyParagraph();
|
|
2308
|
+
paragraph.apply(new ReplaceChildNodesAction(block.children));
|
|
2309
|
+
block.parent.apply(new InsertChildrenBeforeAction(block, paragraph));
|
|
2310
|
+
block.parent.apply(new RemoveChildrenAction(block));
|
|
3219
2311
|
}
|
|
3220
|
-
return outputs;
|
|
3221
2312
|
}
|
|
3222
2313
|
/**
|
|
3223
|
-
*
|
|
3224
|
-
*
|
|
3225
|
-
* @param {HTMLElement} element - The pasted element.
|
|
3226
|
-
* @returns {boolean} Is valid
|
|
2314
|
+
* Creates a new paragraph element with a text node and appends it to the current state.
|
|
3227
2315
|
*/
|
|
3228
|
-
|
|
3229
|
-
|
|
3230
|
-
|
|
3231
|
-
|
|
2316
|
+
insertDefaultParagraph() {
|
|
2317
|
+
const paragraph = this.createEmptyParagraph();
|
|
2318
|
+
this.currentState.apply(new AppendChildrenAction([paragraph]));
|
|
2319
|
+
this.selectionController.enqueueSelectionRangeFutureState(paragraph.children[0], 1);
|
|
3232
2320
|
}
|
|
3233
2321
|
}
|
|
3234
2322
|
|
|
@@ -3236,10 +2324,6 @@ class ElementToDtoStrategyProcessor {
|
|
|
3236
2324
|
* Handle user paste
|
|
3237
2325
|
*/
|
|
3238
2326
|
class InsertPasteHandler extends BaseHandler {
|
|
3239
|
-
constructor() {
|
|
3240
|
-
super(...arguments);
|
|
3241
|
-
this.elementToDTOProcessor = new ElementToDtoStrategyProcessor();
|
|
3242
|
-
}
|
|
3243
2327
|
/**
|
|
3244
2328
|
* Update the state value when user paste html elements.
|
|
3245
2329
|
*
|
|
@@ -3264,7 +2348,7 @@ class InsertPasteHandler extends BaseHandler {
|
|
|
3264
2348
|
* @param { RTEContentBlock[]} blocks - blocks
|
|
3265
2349
|
*/
|
|
3266
2350
|
insertBlocksToRoot(blocks) {
|
|
3267
|
-
this.currentState.apply(new
|
|
2351
|
+
this.currentState.apply(new AppendChildrenAction(blocks));
|
|
3268
2352
|
}
|
|
3269
2353
|
/**
|
|
3270
2354
|
* Insert the blocks to content
|
|
@@ -3278,7 +2362,7 @@ class InsertPasteHandler extends BaseHandler {
|
|
|
3278
2362
|
const { startOffset } = this.selectionController.getCurrentRange();
|
|
3279
2363
|
const breakAction = new SplitBlockWithNodeAction(cursorNode, startOffset);
|
|
3280
2364
|
currentBlock.apply(breakAction);
|
|
3281
|
-
currentBlock.parent.apply(new
|
|
2365
|
+
currentBlock.parent.apply(new InsertChildrenAfterAction(currentBlock, ...blocks));
|
|
3282
2366
|
this.switchCaretPositionToNextElement(breakAction.newBlock);
|
|
3283
2367
|
}
|
|
3284
2368
|
}
|
|
@@ -3292,7 +2376,7 @@ class InsertPasteHandler extends BaseHandler {
|
|
|
3292
2376
|
/* istanbul ignore next */
|
|
3293
2377
|
const currentBlock = cursorNode === null || cursorNode === void 0 ? void 0 : cursorNode.parent;
|
|
3294
2378
|
if (currentBlock) {
|
|
3295
|
-
currentBlock.parent.apply(new
|
|
2379
|
+
currentBlock.parent.apply(new InsertChildrenBeforeAction(currentBlock, ...blocks));
|
|
3296
2380
|
this.switchCaretPositionToNextElement(currentBlock);
|
|
3297
2381
|
}
|
|
3298
2382
|
}
|
|
@@ -3311,8 +2395,7 @@ class InsertPasteHandler extends BaseHandler {
|
|
|
3311
2395
|
// eslint-disable-next-line no-restricted-globals
|
|
3312
2396
|
const tempContainer = document.createElement('div');
|
|
3313
2397
|
tempContainer.innerHTML = pastedHTML;
|
|
3314
|
-
return
|
|
3315
|
-
.process(Array.from(tempContainer.childNodes))
|
|
2398
|
+
return ElementToDtoStrategyProcessor.process(Array.from(tempContainer.childNodes))
|
|
3316
2399
|
.filter(Boolean)
|
|
3317
2400
|
.map((output) => output.toDto())
|
|
3318
2401
|
.filter(Boolean);
|
|
@@ -3337,13 +2420,16 @@ class InsertPasteHandler extends BaseHandler {
|
|
|
3337
2420
|
const lines = content.split('\n');
|
|
3338
2421
|
return lines
|
|
3339
2422
|
.map((line) => {
|
|
3340
|
-
|
|
2423
|
+
if (line === '') {
|
|
2424
|
+
return '<p>\n</p>';
|
|
2425
|
+
}
|
|
2426
|
+
return `<p>${line}</p>`;
|
|
3341
2427
|
})
|
|
3342
|
-
.join('
|
|
2428
|
+
.join('');
|
|
3343
2429
|
}
|
|
3344
2430
|
}
|
|
3345
2431
|
|
|
3346
|
-
var __decorate$
|
|
2432
|
+
var __decorate$f = (undefined && undefined.__decorate) || function (decorators, target, key, desc) {
|
|
3347
2433
|
var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
|
|
3348
2434
|
if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
|
|
3349
2435
|
else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
|
|
@@ -3470,28 +2556,28 @@ class UserInputController extends VegaSlimmer {
|
|
|
3470
2556
|
return false;
|
|
3471
2557
|
}
|
|
3472
2558
|
}
|
|
3473
|
-
__decorate$
|
|
2559
|
+
__decorate$f([
|
|
3474
2560
|
MapToComponentField()
|
|
3475
2561
|
], UserInputController.prototype, "host", void 0);
|
|
3476
|
-
__decorate$
|
|
2562
|
+
__decorate$f([
|
|
3477
2563
|
MapToComponentField()
|
|
3478
2564
|
], UserInputController.prototype, "value", void 0);
|
|
3479
|
-
__decorate$
|
|
2565
|
+
__decorate$f([
|
|
3480
2566
|
MapToComponentField()
|
|
3481
2567
|
], UserInputController.prototype, "valueController", void 0);
|
|
3482
|
-
__decorate$
|
|
2568
|
+
__decorate$f([
|
|
3483
2569
|
MapToComponentField()
|
|
3484
2570
|
], UserInputController.prototype, "vegaRichTextEditorRenderer", void 0);
|
|
3485
|
-
__decorate$
|
|
2571
|
+
__decorate$f([
|
|
3486
2572
|
MapToComponentField()
|
|
3487
2573
|
], UserInputController.prototype, "selectionController", void 0);
|
|
3488
|
-
__decorate$
|
|
2574
|
+
__decorate$f([
|
|
3489
2575
|
MapToComponentField()
|
|
3490
2576
|
], UserInputController.prototype, "insertCompositionTextController", void 0);
|
|
3491
|
-
__decorate$
|
|
2577
|
+
__decorate$f([
|
|
3492
2578
|
MapToComponentMethod('componentDidLoad')
|
|
3493
2579
|
], UserInputController.prototype, "addActionListener", null);
|
|
3494
|
-
__decorate$
|
|
2580
|
+
__decorate$f([
|
|
3495
2581
|
MapToComponentMethod('disconnectedCallback')
|
|
3496
2582
|
], UserInputController.prototype, "removeActionListener", null);
|
|
3497
2583
|
|
|
@@ -3511,7 +2597,7 @@ class InsertImageToBlockAction extends ModifyContentAction {
|
|
|
3511
2597
|
}
|
|
3512
2598
|
}
|
|
3513
2599
|
|
|
3514
|
-
var __decorate$
|
|
2600
|
+
var __decorate$e = (undefined && undefined.__decorate) || function (decorators, target, key, desc) {
|
|
3515
2601
|
var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
|
|
3516
2602
|
if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
|
|
3517
2603
|
else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
|
|
@@ -3530,9 +2616,9 @@ class InsertImageController extends VegaSlimmer {
|
|
|
3530
2616
|
const imageBlock = new RTEImageBlock(generateUUID());
|
|
3531
2617
|
const newImageNode = new RTEImageNode(generateUUID(), imageUrl, imageBlock);
|
|
3532
2618
|
newImageNode.apply(new ImageAnnotationAction('md', ''));
|
|
3533
|
-
imageBlock.apply(new
|
|
2619
|
+
imageBlock.apply(new AppendChildrenAction([newImageNode]));
|
|
3534
2620
|
if (selectedBlocks.length < 1 || this.value.children.length < 1) {
|
|
3535
|
-
this.value.apply(new
|
|
2621
|
+
this.value.apply(new AppendChildrenAction([imageBlock]));
|
|
3536
2622
|
void this.valueController.flushChanges(this.value);
|
|
3537
2623
|
}
|
|
3538
2624
|
else {
|
|
@@ -3600,26 +2686,26 @@ class InsertImageController extends VegaSlimmer {
|
|
|
3600
2686
|
}
|
|
3601
2687
|
}
|
|
3602
2688
|
}
|
|
3603
|
-
__decorate$
|
|
2689
|
+
__decorate$e([
|
|
3604
2690
|
MapToComponentField()
|
|
3605
2691
|
], InsertImageController.prototype, "selectionController", void 0);
|
|
3606
|
-
__decorate$
|
|
2692
|
+
__decorate$e([
|
|
3607
2693
|
MapToComponentField()
|
|
3608
2694
|
], InsertImageController.prototype, "value", void 0);
|
|
3609
|
-
__decorate$
|
|
2695
|
+
__decorate$e([
|
|
3610
2696
|
MapToComponentField()
|
|
3611
2697
|
], InsertImageController.prototype, "valueController", void 0);
|
|
3612
|
-
__decorate$
|
|
2698
|
+
__decorate$e([
|
|
3613
2699
|
MapToComponentField()
|
|
3614
2700
|
], InsertImageController.prototype, "vegaRichTextEditorRenderer", void 0);
|
|
3615
|
-
__decorate$
|
|
2701
|
+
__decorate$e([
|
|
3616
2702
|
MapToComponentMethod('componentDidLoad')
|
|
3617
2703
|
], InsertImageController.prototype, "registerObserver", null);
|
|
3618
|
-
__decorate$
|
|
2704
|
+
__decorate$e([
|
|
3619
2705
|
MapToComponentMethod('disconnectedCallback')
|
|
3620
2706
|
], InsertImageController.prototype, "unRegisterObserver", null);
|
|
3621
2707
|
|
|
3622
|
-
var __decorate$
|
|
2708
|
+
var __decorate$d = (undefined && undefined.__decorate) || function (decorators, target, key, desc) {
|
|
3623
2709
|
var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
|
|
3624
2710
|
if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
|
|
3625
2711
|
else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
|
|
@@ -3637,7 +2723,14 @@ class FocusController extends VegaSlimmer {
|
|
|
3637
2723
|
* @param {RTEContentBlock} lastBlock - The last block of the content
|
|
3638
2724
|
*/
|
|
3639
2725
|
this.doFocusOnLastTextNode = async (lastBlock) => {
|
|
3640
|
-
|
|
2726
|
+
const lastNode = lastBlock.getLastNode();
|
|
2727
|
+
const dom = stateEntityRenderingRegistry.getDOMByEntity(lastNode);
|
|
2728
|
+
if (!lastNode.isContentEditable()) {
|
|
2729
|
+
this.setCaretRangeToNodeEnd(dom.parentElement, lastNode.getRangeEndOffset());
|
|
2730
|
+
}
|
|
2731
|
+
else {
|
|
2732
|
+
this.setCaretRangeToNodeEnd(dom.firstChild, dom.firstChild.nodeValue.length);
|
|
2733
|
+
}
|
|
3641
2734
|
await this.vegaRichTextEditorRenderer.getRichTextContentRef().vegaFocus();
|
|
3642
2735
|
};
|
|
3643
2736
|
}
|
|
@@ -3656,7 +2749,7 @@ class FocusController extends VegaSlimmer {
|
|
|
3656
2749
|
type: 'paragraph',
|
|
3657
2750
|
nodes: [{ id: generateUUID(), type: 'text', text: '' }],
|
|
3658
2751
|
});
|
|
3659
|
-
lastBlock.parent.apply(new
|
|
2752
|
+
lastBlock.parent.apply(new InsertChildrenAfterAction(lastBlock, newTextBlock));
|
|
3660
2753
|
await this.valueController.flushChanges(this.value);
|
|
3661
2754
|
await this.doFocusOnLastTextNode(newTextBlock);
|
|
3662
2755
|
}
|
|
@@ -3668,27 +2761,28 @@ class FocusController extends VegaSlimmer {
|
|
|
3668
2761
|
* Move the caret to the end of the node
|
|
3669
2762
|
*
|
|
3670
2763
|
* @param {Node} targetNode - The node to move the caret to
|
|
2764
|
+
* @param {number} offset - The offset to move the caret to
|
|
3671
2765
|
*/
|
|
3672
|
-
setCaretRangeToNodeEnd(targetNode) {
|
|
2766
|
+
setCaretRangeToNodeEnd(targetNode, offset) {
|
|
3673
2767
|
const range = new Range();
|
|
3674
|
-
range.setStart(targetNode,
|
|
2768
|
+
range.setStart(targetNode, offset);
|
|
3675
2769
|
this.selectionController.setSelectionRange(range);
|
|
3676
2770
|
}
|
|
3677
2771
|
}
|
|
3678
|
-
__decorate$
|
|
2772
|
+
__decorate$d([
|
|
3679
2773
|
MapToComponentField()
|
|
3680
2774
|
], FocusController.prototype, "vegaRichTextEditorRenderer", void 0);
|
|
3681
|
-
__decorate$
|
|
2775
|
+
__decorate$d([
|
|
3682
2776
|
MapToComponentField()
|
|
3683
2777
|
], FocusController.prototype, "selectionController", void 0);
|
|
3684
|
-
__decorate$
|
|
2778
|
+
__decorate$d([
|
|
3685
2779
|
MapToComponentField()
|
|
3686
2780
|
], FocusController.prototype, "valueController", void 0);
|
|
3687
|
-
__decorate$
|
|
2781
|
+
__decorate$d([
|
|
3688
2782
|
MapToComponentField()
|
|
3689
2783
|
], FocusController.prototype, "value", void 0);
|
|
3690
2784
|
|
|
3691
|
-
var __decorate$
|
|
2785
|
+
var __decorate$c = (undefined && undefined.__decorate) || function (decorators, target, key, desc) {
|
|
3692
2786
|
var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
|
|
3693
2787
|
if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
|
|
3694
2788
|
else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
|
|
@@ -3728,14 +2822,14 @@ class TextNodeColorController extends VegaSlimmer {
|
|
|
3728
2822
|
return true;
|
|
3729
2823
|
}
|
|
3730
2824
|
}
|
|
3731
|
-
__decorate$
|
|
2825
|
+
__decorate$c([
|
|
3732
2826
|
MapToComponentMethod('connectedCallback')
|
|
3733
2827
|
], TextNodeColorController.prototype, "connectedCallback", null);
|
|
3734
|
-
__decorate$
|
|
2828
|
+
__decorate$c([
|
|
3735
2829
|
MapToComponentMethod('disconnectedCallback')
|
|
3736
2830
|
], TextNodeColorController.prototype, "disconnectResizeObserver", null);
|
|
3737
2831
|
|
|
3738
|
-
var __decorate$
|
|
2832
|
+
var __decorate$b = (undefined && undefined.__decorate) || function (decorators, target, key, desc) {
|
|
3739
2833
|
var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
|
|
3740
2834
|
if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
|
|
3741
2835
|
else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
|
|
@@ -3765,7 +2859,9 @@ class InsertCompositionTextController extends VegaSlimmer {
|
|
|
3765
2859
|
if (target.nodeType === Node.TEXT_NODE && target.parentElement) {
|
|
3766
2860
|
const richTextNode = stateEntityRenderingRegistry.getEntityByDOM(target.parentElement);
|
|
3767
2861
|
const newValue = target.textContent;
|
|
3768
|
-
if (richTextNode instanceof RTETextNode
|
|
2862
|
+
if (richTextNode instanceof RTETextNode &&
|
|
2863
|
+
richTextNode.isContentEditable() &&
|
|
2864
|
+
richTextNode.parent instanceof RTETextBlock) {
|
|
3769
2865
|
updateFlag = this.updateCurrentNodeText(richTextNode, newValue, oldValue);
|
|
3770
2866
|
}
|
|
3771
2867
|
else if (newValue) {
|
|
@@ -3879,7 +2975,7 @@ class InsertCompositionTextController extends VegaSlimmer {
|
|
|
3879
2975
|
const index = textBlock.children.indexOf(currentNode);
|
|
3880
2976
|
if (textBlock.children[index + 1]) {
|
|
3881
2977
|
const newTextNode = currentNode.cloneWithText('\n');
|
|
3882
|
-
textBlock.apply(new
|
|
2978
|
+
textBlock.apply(new InsertChildrenBeforeAction(textBlock.children[index + 1], newTextNode));
|
|
3883
2979
|
}
|
|
3884
2980
|
}
|
|
3885
2981
|
/**
|
|
@@ -3943,35 +3039,35 @@ class InsertCompositionTextController extends VegaSlimmer {
|
|
|
3943
3039
|
this.editableElementRef.dispatchEvent(inputEvent);
|
|
3944
3040
|
}
|
|
3945
3041
|
}
|
|
3946
|
-
__decorate$
|
|
3042
|
+
__decorate$b([
|
|
3947
3043
|
MapToComponentField()
|
|
3948
3044
|
], InsertCompositionTextController.prototype, "selectionController", void 0);
|
|
3949
|
-
__decorate$
|
|
3045
|
+
__decorate$b([
|
|
3950
3046
|
MapToComponentField()
|
|
3951
3047
|
], InsertCompositionTextController.prototype, "host", void 0);
|
|
3952
|
-
__decorate$
|
|
3048
|
+
__decorate$b([
|
|
3953
3049
|
MapToComponentField()
|
|
3954
3050
|
], InsertCompositionTextController.prototype, "value", void 0);
|
|
3955
|
-
__decorate$
|
|
3051
|
+
__decorate$b([
|
|
3956
3052
|
MapToComponentField()
|
|
3957
3053
|
], InsertCompositionTextController.prototype, "valueController", void 0);
|
|
3958
|
-
__decorate$
|
|
3054
|
+
__decorate$b([
|
|
3959
3055
|
MapToComponentField()
|
|
3960
3056
|
], InsertCompositionTextController.prototype, "userInputController", void 0);
|
|
3961
|
-
__decorate$
|
|
3057
|
+
__decorate$b([
|
|
3962
3058
|
MapToComponentField()
|
|
3963
3059
|
], InsertCompositionTextController.prototype, "vegaRichTextEditorRenderer", void 0);
|
|
3964
|
-
__decorate$
|
|
3060
|
+
__decorate$b([
|
|
3965
3061
|
MapToComponentMethod('componentDidLoad')
|
|
3966
3062
|
], InsertCompositionTextController.prototype, "addCompositionTextEventListener", null);
|
|
3967
|
-
__decorate$
|
|
3063
|
+
__decorate$b([
|
|
3968
3064
|
MapToComponentMethod('disconnectedCallback')
|
|
3969
3065
|
], InsertCompositionTextController.prototype, "removeCompositionTextEventListener", null);
|
|
3970
|
-
__decorate$
|
|
3066
|
+
__decorate$b([
|
|
3971
3067
|
MapToComponentMethod('componentDidRender')
|
|
3972
3068
|
], InsertCompositionTextController.prototype, "reConnectObserver", null);
|
|
3973
3069
|
|
|
3974
|
-
var __decorate$
|
|
3070
|
+
var __decorate$a = (undefined && undefined.__decorate) || function (decorators, target, key, desc) {
|
|
3975
3071
|
var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
|
|
3976
3072
|
if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
|
|
3977
3073
|
else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
|
|
@@ -4029,18 +3125,16 @@ class DeleteSelectedNodesController extends VegaSlimmer {
|
|
|
4029
3125
|
if (selectedNodes.length > 1) {
|
|
4030
3126
|
// Remove all selected nodes except start node and end node(the end image node will be removed), the start node need to get the index of the block
|
|
4031
3127
|
const shouldRemovedItems = selectedNodes.filter((item) => {
|
|
4032
|
-
if (item
|
|
4033
|
-
return item !== startNode;
|
|
4034
|
-
}
|
|
4035
|
-
else if (item.type !== 'IMAGE') {
|
|
3128
|
+
if (item.isContentEditable()) {
|
|
4036
3129
|
return item !== startNode && item !== endNode;
|
|
4037
3130
|
}
|
|
4038
3131
|
else {
|
|
4039
|
-
return item !== startNode &&
|
|
3132
|
+
return (item !== startNode &&
|
|
3133
|
+
(item !== endNode || this.isEndNodeFullyInTheRange(endNode, endOffset, item)));
|
|
4040
3134
|
}
|
|
4041
3135
|
});
|
|
4042
3136
|
shouldRemovedItems.forEach((item) => {
|
|
4043
|
-
item.parent.apply(new
|
|
3137
|
+
item.parent.apply(new RemoveChildrenAction(item));
|
|
4044
3138
|
});
|
|
4045
3139
|
}
|
|
4046
3140
|
this.removeRangeStartAndEndSelectedText();
|
|
@@ -4049,28 +3143,21 @@ class DeleteSelectedNodesController extends VegaSlimmer {
|
|
|
4049
3143
|
* but before remove the image block, we need insert a paragraph to make sure the start block and start node could be get correct before insert text or break paragraph action.
|
|
4050
3144
|
* the code block node should do the same logic.
|
|
4051
3145
|
*/
|
|
4052
|
-
if (startNode
|
|
4053
|
-
startOffset
|
|
4054
|
-
(endNode !== startNode || endOffset !== 0)) {
|
|
3146
|
+
if (!startNode.isContentEditable() &&
|
|
3147
|
+
this.isStartNodeFullyInTheRange(startNode, endNode, startOffset, endOffset)) {
|
|
4055
3148
|
// the image block will be deleted when the image is the only item
|
|
4056
3149
|
if (startNode.parent.children.length === 1) {
|
|
4057
3150
|
const paragraph = this.createEmptyParagraph();
|
|
4058
|
-
startNode.parent.parent.apply(new
|
|
4059
|
-
startNode.parent.apply(new
|
|
3151
|
+
startNode.parent.parent.apply(new InsertChildrenBeforeAction(startNode.parent, paragraph));
|
|
3152
|
+
startNode.parent.apply(new RemoveChildrenAction(startNode));
|
|
4060
3153
|
return paragraph.children[0];
|
|
4061
3154
|
}
|
|
4062
3155
|
else if (startNode === startNode.parent.children[0]) {
|
|
4063
3156
|
// the start node should be the next image item if the image is first item
|
|
4064
|
-
startNode.parent.apply(new
|
|
3157
|
+
startNode.parent.apply(new RemoveChildrenAction(startNode));
|
|
4065
3158
|
return startNode.parent.children[0];
|
|
4066
3159
|
}
|
|
4067
3160
|
}
|
|
4068
|
-
else if (startNode instanceof RTECodeBlockNode) {
|
|
4069
|
-
const paragraph = this.createEmptyParagraph();
|
|
4070
|
-
startNode.parent.parent.apply(new InsertBlocksBeforeAction(startNode.parent, paragraph));
|
|
4071
|
-
startNode.parent.apply(new RemoveChildAction(startNode));
|
|
4072
|
-
return paragraph.children[0];
|
|
4073
|
-
}
|
|
4074
3161
|
return startNode;
|
|
4075
3162
|
}
|
|
4076
3163
|
/**
|
|
@@ -4079,10 +3166,11 @@ class DeleteSelectedNodesController extends VegaSlimmer {
|
|
|
4079
3166
|
removeRangeStartAndEndSelectedText() {
|
|
4080
3167
|
const selectedNodes = this.selectionController.getSelectedNodes();
|
|
4081
3168
|
const currentRange = this.selectionController.getCurrentRange();
|
|
4082
|
-
if (selectedNodes[0] instanceof RTETextNode) {
|
|
3169
|
+
if (selectedNodes[0] instanceof RTETextNode && selectedNodes[0].isContentEditable()) {
|
|
4083
3170
|
selectedNodes[0].apply(new ReplaceSelectedTextAction('', currentRange));
|
|
4084
3171
|
}
|
|
4085
|
-
|
|
3172
|
+
const endNode = selectedNodes[selectedNodes.length - 1];
|
|
3173
|
+
if (selectedNodes.length > 1 && endNode instanceof RTETextNode && endNode.isContentEditable()) {
|
|
4086
3174
|
selectedNodes[selectedNodes.length - 1].apply(new ReplaceSelectedTextAction('', currentRange));
|
|
4087
3175
|
}
|
|
4088
3176
|
}
|
|
@@ -4094,7 +3182,7 @@ class DeleteSelectedNodesController extends VegaSlimmer {
|
|
|
4094
3182
|
createEmptyParagraph() {
|
|
4095
3183
|
const paragraph = new RTETextBlock(generateUUID(), 'paragraph');
|
|
4096
3184
|
const textNode = new RTETextNode(`${paragraph.id}1`, '', paragraph);
|
|
4097
|
-
paragraph.apply(new
|
|
3185
|
+
paragraph.apply(new AppendChildrenAction([textNode]));
|
|
4098
3186
|
return paragraph;
|
|
4099
3187
|
}
|
|
4100
3188
|
/**
|
|
@@ -4114,20 +3202,20 @@ class DeleteSelectedNodesController extends VegaSlimmer {
|
|
|
4114
3202
|
if (this.shouldMergeTextNode(startRTENode, endRTENode)) {
|
|
4115
3203
|
startRTENode.apply(new UpdateTextAction(startRTENode.text + endRTENode.text));
|
|
4116
3204
|
if (startRTENode.parent === endRTENode.parent) {
|
|
4117
|
-
startRTENode.parent.apply(new
|
|
3205
|
+
startRTENode.parent.apply(new RemoveChildrenAction(endRTENode));
|
|
4118
3206
|
}
|
|
4119
3207
|
else {
|
|
4120
|
-
endRTENode.parent.apply(new
|
|
3208
|
+
endRTENode.parent.apply(new RemoveChildrenAction(endRTENode.parent.children[0]));
|
|
4121
3209
|
}
|
|
4122
3210
|
}
|
|
4123
3211
|
if (startRTENode instanceof RTETextNode &&
|
|
4124
3212
|
endRTENode instanceof RTETextNode &&
|
|
4125
3213
|
startRTENode.parent !== endRTENode.parent) {
|
|
4126
|
-
startRTENode.parent.apply(new
|
|
3214
|
+
startRTENode.parent.apply(new AppendChildrenAction(endBlock.children));
|
|
4127
3215
|
endBlock.children = [];
|
|
4128
3216
|
}
|
|
4129
3217
|
if (endBlock.children.length < 1) {
|
|
4130
|
-
endBlock.parent.apply(new
|
|
3218
|
+
endBlock.parent.apply(new RemoveChildrenAction(endBlock));
|
|
4131
3219
|
}
|
|
4132
3220
|
}
|
|
4133
3221
|
}
|
|
@@ -4147,24 +3235,57 @@ class DeleteSelectedNodesController extends VegaSlimmer {
|
|
|
4147
3235
|
nodeB instanceof RTETextNode &&
|
|
4148
3236
|
JSON.stringify(annotationsA) === JSON.stringify(annotationsB));
|
|
4149
3237
|
}
|
|
3238
|
+
/**
|
|
3239
|
+
* Check the decorator node is fully in the range end.
|
|
3240
|
+
*
|
|
3241
|
+
* @param {RTENode} rangeEndNode - The end node of the range
|
|
3242
|
+
* @param {number} endOffset - The end offset of the range
|
|
3243
|
+
* @param {RTENode<RTEBlock>} checkedNode - The checked decorator node
|
|
3244
|
+
* @returns {boolean} - Whether the end node is fully within the range
|
|
3245
|
+
*/
|
|
3246
|
+
isEndNodeFullyInTheRange(rangeEndNode, endOffset, checkedNode) {
|
|
3247
|
+
if (checkedNode instanceof RTECodeBlockNode) {
|
|
3248
|
+
return true;
|
|
3249
|
+
}
|
|
3250
|
+
else {
|
|
3251
|
+
return checkedNode === rangeEndNode && endOffset !== 0;
|
|
3252
|
+
}
|
|
3253
|
+
}
|
|
3254
|
+
/**
|
|
3255
|
+
* Check if the start decorator node is fully in the range.
|
|
3256
|
+
*
|
|
3257
|
+
* @param {RTENode<RTEBlock>} rangeStartNode - The start node of the range
|
|
3258
|
+
* @param {RTENode} rangeEndNode - The end node of the range
|
|
3259
|
+
* @param {number} startOffset - The start offset of the range
|
|
3260
|
+
* @param {number} endOffset - The end offset of the range
|
|
3261
|
+
* @returns {boolean} - Whether the start node is fully within the range
|
|
3262
|
+
*/
|
|
3263
|
+
isStartNodeFullyInTheRange(rangeStartNode, rangeEndNode, startOffset, endOffset) {
|
|
3264
|
+
if (rangeStartNode instanceof RTECodeBlockNode) {
|
|
3265
|
+
return true;
|
|
3266
|
+
}
|
|
3267
|
+
else {
|
|
3268
|
+
return startOffset === 0 && (rangeEndNode !== rangeStartNode || endOffset !== 0);
|
|
3269
|
+
}
|
|
3270
|
+
}
|
|
4150
3271
|
}
|
|
4151
|
-
__decorate$
|
|
3272
|
+
__decorate$a([
|
|
4152
3273
|
MapToComponentField()
|
|
4153
3274
|
], DeleteSelectedNodesController.prototype, "host", void 0);
|
|
4154
|
-
__decorate$
|
|
3275
|
+
__decorate$a([
|
|
4155
3276
|
MapToComponentField()
|
|
4156
3277
|
], DeleteSelectedNodesController.prototype, "selectionController", void 0);
|
|
4157
|
-
__decorate$
|
|
3278
|
+
__decorate$a([
|
|
4158
3279
|
MapToComponentField()
|
|
4159
3280
|
], DeleteSelectedNodesController.prototype, "value", void 0);
|
|
4160
|
-
__decorate$
|
|
3281
|
+
__decorate$a([
|
|
4161
3282
|
MapToComponentMethod('connectedCallback')
|
|
4162
3283
|
], DeleteSelectedNodesController.prototype, "addDeleteObserver", null);
|
|
4163
|
-
__decorate$
|
|
3284
|
+
__decorate$a([
|
|
4164
3285
|
MapToComponentMethod('disconnectedCallback')
|
|
4165
3286
|
], DeleteSelectedNodesController.prototype, "removeDeleteObserver", null);
|
|
4166
3287
|
|
|
4167
|
-
var __decorate$
|
|
3288
|
+
var __decorate$9 = (undefined && undefined.__decorate) || function (decorators, target, key, desc) {
|
|
4168
3289
|
var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
|
|
4169
3290
|
if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
|
|
4170
3291
|
else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
|
|
@@ -4240,22 +3361,22 @@ class HistoryController extends ComponentValueHistoryControllerSlimmer {
|
|
|
4240
3361
|
await this.valueController.flushChanges(content, false);
|
|
4241
3362
|
}
|
|
4242
3363
|
}
|
|
4243
|
-
__decorate$
|
|
3364
|
+
__decorate$9([
|
|
4244
3365
|
MapToComponentField()
|
|
4245
3366
|
], HistoryController.prototype, "host", void 0);
|
|
4246
|
-
__decorate$
|
|
3367
|
+
__decorate$9([
|
|
4247
3368
|
MapToComponentField()
|
|
4248
3369
|
], HistoryController.prototype, "vegaRichTextEditorRenderer", void 0);
|
|
4249
|
-
__decorate$
|
|
3370
|
+
__decorate$9([
|
|
4250
3371
|
MapToComponentField()
|
|
4251
3372
|
], HistoryController.prototype, "valueController", void 0);
|
|
4252
|
-
__decorate$
|
|
3373
|
+
__decorate$9([
|
|
4253
3374
|
MapToComponentField()
|
|
4254
3375
|
], HistoryController.prototype, "value", void 0);
|
|
4255
|
-
__decorate$
|
|
3376
|
+
__decorate$9([
|
|
4256
3377
|
MapToComponentField()
|
|
4257
3378
|
], HistoryController.prototype, "selectionController", void 0);
|
|
4258
|
-
__decorate$
|
|
3379
|
+
__decorate$9([
|
|
4259
3380
|
MapToComponentMethod('componentDidLoad')
|
|
4260
3381
|
], HistoryController.prototype, "registerInitState", null);
|
|
4261
3382
|
|
|
@@ -4276,7 +3397,7 @@ class TransformToCodeBlockAction extends ModifyContentAction {
|
|
|
4276
3397
|
}
|
|
4277
3398
|
}
|
|
4278
3399
|
|
|
4279
|
-
var __decorate$
|
|
3400
|
+
var __decorate$8 = (undefined && undefined.__decorate) || function (decorators, target, key, desc) {
|
|
4280
3401
|
var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
|
|
4281
3402
|
if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
|
|
4282
3403
|
else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
|
|
@@ -4285,7 +3406,7 @@ var __decorate$7 = (undefined && undefined.__decorate) || function (decorators,
|
|
|
4285
3406
|
/**
|
|
4286
3407
|
* The code block toolbar button slimmer.
|
|
4287
3408
|
*/
|
|
4288
|
-
class CodeBlockToolbarButtonSlimmer extends
|
|
3409
|
+
class CodeBlockToolbarButtonSlimmer extends VisualModeToolbarButtonSlimmer {
|
|
4289
3410
|
constructor() {
|
|
4290
3411
|
super({
|
|
4291
3412
|
icon: 'rectangle-code',
|
|
@@ -4327,13 +3448,13 @@ class CodeBlockToolbarButtonSlimmer extends ToolbarButtonSlimmer {
|
|
|
4327
3448
|
(() => {
|
|
4328
3449
|
VegaInternalIconManager.register({ 'rectangle-code': rectangleCode });
|
|
4329
3450
|
})();
|
|
4330
|
-
__decorate$
|
|
3451
|
+
__decorate$8([
|
|
4331
3452
|
MapToComponentField()
|
|
4332
3453
|
], CodeBlockToolbarButtonSlimmer.prototype, "selectionController", void 0);
|
|
4333
|
-
__decorate$
|
|
3454
|
+
__decorate$8([
|
|
4334
3455
|
MapToComponentField()
|
|
4335
3456
|
], CodeBlockToolbarButtonSlimmer.prototype, "valueController", void 0);
|
|
4336
|
-
__decorate$
|
|
3457
|
+
__decorate$8([
|
|
4337
3458
|
MapToComponentField()
|
|
4338
3459
|
], CodeBlockToolbarButtonSlimmer.prototype, "value", void 0);
|
|
4339
3460
|
|
|
@@ -4400,7 +3521,71 @@ class InternalCodeBlockSelectionController extends AutoRunWhenReRenderTaskQueueS
|
|
|
4400
3521
|
}
|
|
4401
3522
|
}
|
|
4402
3523
|
|
|
4403
|
-
const
|
|
3524
|
+
const displayCode = {
|
|
3525
|
+
icon: `<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 576 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="M512 48c8.8 0 16 7.2 16 16V352c0 8.8-7.2 16-16 16H336.5c-.3 0-.6 0-.8 0H240.4c-.3 0-.6 0-.8 0H64c-8.8 0-16-7.2-16-16V64c0-8.8 7.2-16 16-16H512zM64 416H211.7l-8 48H152c-13.3 0-24 10.7-24 24s10.7 24 24 24h72H352h72c13.3 0 24-10.7 24-24s-10.7-24-24-24H372.3l-8-48H512c35.3 0 64-28.7 64-64V64c0-35.3-28.7-64-64-64H64C28.7 0 0 28.7 0 64V352c0 35.3 28.7 64 64 64zm188.3 48l8-48h55.3l8 48H252.3zM249 177c9.4-9.4 9.4-24.6 0-33.9s-24.6-9.4-33.9 0l-48 48c-9.4 9.4-9.4 24.6 0 33.9l48 48c9.4 9.4 24.6 9.4 33.9 0s9.4-24.6 0-33.9l-31-31 31-31zM361 143c-9.4-9.4-24.6-9.4-33.9 0s-9.4 24.6 0 33.9l31 31-31 31c-9.4 9.4-9.4 24.6 0 33.9s24.6 9.4 33.9 0l48-48c9.4-9.4 9.4-24.6 0-33.9l-48-48z"/></svg>`,
|
|
3526
|
+
};
|
|
3527
|
+
|
|
3528
|
+
var __decorate$7 = (undefined && undefined.__decorate) || function (decorators, target, key, desc) {
|
|
3529
|
+
var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
|
|
3530
|
+
if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
|
|
3531
|
+
else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
|
|
3532
|
+
return c > 3 && r && Object.defineProperty(target, key, r), r;
|
|
3533
|
+
};
|
|
3534
|
+
class SourceEditToolbarButtonSlimmer extends ToolbarButtonSlimmer {
|
|
3535
|
+
constructor() {
|
|
3536
|
+
super({
|
|
3537
|
+
icon: 'display-code',
|
|
3538
|
+
tooltip: {
|
|
3539
|
+
text: 'Edit Source',
|
|
3540
|
+
},
|
|
3541
|
+
autoFocusOnClick: false,
|
|
3542
|
+
});
|
|
3543
|
+
}
|
|
3544
|
+
async onClick() {
|
|
3545
|
+
const isSelected = this.sourceView;
|
|
3546
|
+
if (isSelected) {
|
|
3547
|
+
await this.saveSourceCode();
|
|
3548
|
+
}
|
|
3549
|
+
else {
|
|
3550
|
+
this.selectionController.setSelectionRange(new Range());
|
|
3551
|
+
}
|
|
3552
|
+
this.sourceView = !isSelected;
|
|
3553
|
+
}
|
|
3554
|
+
isSelected() {
|
|
3555
|
+
return this.sourceView;
|
|
3556
|
+
}
|
|
3557
|
+
isDisabled() {
|
|
3558
|
+
return super.isDisabled();
|
|
3559
|
+
}
|
|
3560
|
+
async saveSourceCode() {
|
|
3561
|
+
const sourceViewValue = this.vegaRichTextEditorRenderer.getSourceCode();
|
|
3562
|
+
if (typeof sourceViewValue === 'string') {
|
|
3563
|
+
await this.valueController.flushChanges(VegaRTEContent.fromHtml(sourceViewValue, {
|
|
3564
|
+
autoMatchFormat: this.sourceEditConfig.autoMatchFormat,
|
|
3565
|
+
}));
|
|
3566
|
+
}
|
|
3567
|
+
}
|
|
3568
|
+
}
|
|
3569
|
+
(() => {
|
|
3570
|
+
VegaInternalIconManager.register({ 'display-code': displayCode });
|
|
3571
|
+
})();
|
|
3572
|
+
__decorate$7([
|
|
3573
|
+
MapToComponentField({ writable: true })
|
|
3574
|
+
], SourceEditToolbarButtonSlimmer.prototype, "sourceView", void 0);
|
|
3575
|
+
__decorate$7([
|
|
3576
|
+
MapToComponentField()
|
|
3577
|
+
], SourceEditToolbarButtonSlimmer.prototype, "selectionController", void 0);
|
|
3578
|
+
__decorate$7([
|
|
3579
|
+
MapToComponentField()
|
|
3580
|
+
], SourceEditToolbarButtonSlimmer.prototype, "valueController", void 0);
|
|
3581
|
+
__decorate$7([
|
|
3582
|
+
MapToComponentField()
|
|
3583
|
+
], SourceEditToolbarButtonSlimmer.prototype, "vegaRichTextEditorRenderer", void 0);
|
|
3584
|
+
__decorate$7([
|
|
3585
|
+
MapToComponentField()
|
|
3586
|
+
], SourceEditToolbarButtonSlimmer.prototype, "sourceEditConfig", void 0);
|
|
3587
|
+
|
|
3588
|
+
const vegaRichTextEditorCss = ":host{display:block}:host vega-field-label{margin-bottom:8px}:host vega-text{margin-bottom:16px;font-family:\"Inter\", sans-serif;font-size:14px;font-weight:400;line-height:18px;letter-spacing:0px;color:rgba(var(--v-text-secondary, 107, 116, 125, 1))}@media screen and (min-width: 768px) and (max-width: 1023px){:host vega-text{font-family:\"Inter\", sans-serif;font-size:14px;font-weight:400;line-height:18px;letter-spacing:0px}}@media screen and (min-width: 1024px) and (max-width: 1439px){:host vega-text{font-family:\"Inter\", sans-serif;font-size:14px;font-weight:400;line-height:18px;letter-spacing:0px}}@media screen and (min-width: 1440px) and (max-width: 9999px){:host vega-text{font-family:\"Inter\", sans-serif;font-size:14px;font-weight:400;line-height:18px;letter-spacing:0px}}:host .rich-text-editor-container{display:flex;box-sizing:content-box;position:relative;box-sizing:content-box;background-color:rgba(var(--v-bg-primary, 252, 252, 252, 1));border:1px solid rgba(var(--v-border-input-field, 171, 198, 216, 1));border-radius:8px;color:rgba(var(--v-text-primary, 32, 54, 69, 1));margin-top:12px;overflow:auto;resize:vertical;padding-top:12px;padding-right:16px;padding-bottom:32px;padding-left:16px}:host .rich-text-editor-container:hover{border:1px solid rgba(var(--v-border-input-field-hover, 115, 160, 190, 1))}:host .rich-text-editor-container:focus-within{border:1px solid rgba(var(--v-border-input-field-focus, 19, 98, 226, 1));outline:2px solid rgba(var(--v-border-color-action, 19, 98, 226, 1));outline-offset:3px;border:1px solid rgba(var(--v-border-color-input-field-focus, 19, 98, 226, 1))}:host .rich-text-editor-container.disabled{background-color:rgba(var(--v-bg-secondary, 245, 247, 247, 1));border:1px solid rgba(var(--v-border-input-field-disabled, 222, 225, 227, 1));cursor:not-allowed}:host .rich-text-editor-container.disabled:hover,:host .rich-text-editor-container.disabled:focus-within{border:1px solid rgba(var(--v-border-input-field-disabled, 222, 225, 227, 1))}:host .rich-text-editor-container.disabled:focus-within{outline:none}:host .rich-text-editor-container.disabled vega-rich-text-content{pointer-events:none;opacity:0.35}:host .rich-text-editor-container.error{border:1px solid rgba(var(--v-border-input-field-danger, 230, 50, 87, 1))}:host .rich-text-editor-container.error:hover{border:1px solid rgba(var(--v-border-input-field-danger-hover, 255, 87, 114, 1))}:host .rich-text-editor-container.error:focus-within{outline:2px solid rgba(var(--v-border-color-danger, 230, 50, 87, 1));outline-offset:3px;border:1px solid rgba(var(--v-border-color-input-field-danger-focus, 233, 71, 104, 1))}:host .rich-text-editor-container .text-editor-counter{position:absolute;bottom:8px;right:8px;display:flex;padding-left:4px;padding-right:4px;padding-top:2px;padding-bottom:2px;border-radius:4px;font-family:\"Inter\", sans-serif;font-size:14px;font-weight:400;line-height:18px;letter-spacing:0px;color:rgba(var(--v-text-inverted-primary, 252, 252, 252, 1));background-color:rgba(var(--v-bg-textarea-count, 4, 4, 28, 0.6))}@media screen and (min-width: 768px) and (max-width: 1023px){:host .rich-text-editor-container .text-editor-counter{font-family:\"Inter\", sans-serif;font-size:14px;font-weight:400;line-height:18px;letter-spacing:0px}}@media screen and (min-width: 1024px) and (max-width: 1439px){:host .rich-text-editor-container .text-editor-counter{font-family:\"Inter\", sans-serif;font-size:14px;font-weight:400;line-height:18px;letter-spacing:0px}}@media screen and (min-width: 1440px) and (max-width: 9999px){:host .rich-text-editor-container .text-editor-counter{font-family:\"Inter\", sans-serif;font-size:14px;font-weight:400;line-height:18px;letter-spacing:0px}}:host .rich-text-editor-container .text-editor-counter.counter-exceed-max-length{background-color:rgba(var(--v-bg-textarea-counter-exceed-max-length, 214, 46, 81))}.toolbar-btn-group{display:flex;justify-content:center;align-items:center}.toolbar-btn-group>*:not(:first-child):not(:last-child) ::part(rich-text-editor-toolbar-button){border-radius:0px}.toolbar-btn-group>*:first-child:not(:last-child) ::part(rich-text-editor-toolbar-button){border-top-left-radius:4px;border-bottom-left-radius:4px;border-top-right-radius:0px;border-bottom-right-radius:0px}.toolbar-btn-group>*:last-child:not(:first-child) ::part(rich-text-editor-toolbar-button){border-top-left-radius:0px;border-bottom-left-radius:0px;border-top-right-radius:4px;border-bottom-right-radius:4px}.toolbar-btn-group>*:not(:first-child) ::part(rich-text-editor-toolbar-button){margin-left:-1px}.toolbar-btn-group .toolbar-btn-color-preview-box{display:flex;border:1px solid rgba(var(--v-border-chip, 205, 209, 211, 1));box-sizing:border-box;border-radius:4px;width:16px;height:16px;justify-content:center;align-items:center;margin-left:6px}.toolbar-btn-group .toolbar-btn-color-preview-box.disabled{opacity:0.35}.toolbar-btn-group .toolbar-btn-link-wrapper{position:relative}.toolbar-btn-group .toolbar-btn-link-wrapper vega-rich-text-link-editor{position:absolute;bottom:0;left:0;right:0}.vega-error{font-family:\"Inter\", sans-serif;font-size:14px;font-weight:400;line-height:18px;letter-spacing:0px;color:rgba(var(--v-text-error, 189, 41, 71, 1));display:block;margin-top:12px}@media screen and (min-width: 768px) and (max-width: 1023px){.vega-error{font-family:\"Inter\", sans-serif;font-size:14px;font-weight:400;line-height:18px;letter-spacing:0px}}@media screen and (min-width: 1024px) and (max-width: 1439px){.vega-error{font-family:\"Inter\", sans-serif;font-size:14px;font-weight:400;line-height:18px;letter-spacing:0px}}@media screen and (min-width: 1440px) and (max-width: 9999px){.vega-error{font-family:\"Inter\", sans-serif;font-size:14px;font-weight:400;line-height:18px;letter-spacing:0px}}.vega-hidden{display:none !important}.source-view-container{margin-top:12px}.source-view-container vega-code-block::part(editor-toolbar){display:none}";
|
|
4404
3589
|
|
|
4405
3590
|
var __decorate$6 = (undefined && undefined.__decorate) || function (decorators, target, key, desc) {
|
|
4406
3591
|
var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
|
|
@@ -4457,6 +3642,7 @@ const VegaRichTextEditor = class {
|
|
|
4457
3642
|
this.bulletsNumbersToolbarButtonSlimmer = new BulletsNumbersToolbarButtonSlimmer();
|
|
4458
3643
|
this.horizontalAlignmentToolbarButtonSlimmer = new HorizontalAlignmentToolbarButtonSlimmer();
|
|
4459
3644
|
this.codeBlockToolbarButtonSlimmer = new CodeBlockToolbarButtonSlimmer();
|
|
3645
|
+
this.sourceEditToolbarButtonSlimmer = new SourceEditToolbarButtonSlimmer();
|
|
4460
3646
|
this.placeholderNotifySlimmer = createSubStateNotifySlimmer(VegaRichTextEditor, 'placeholder', 'watchPlaceholder');
|
|
4461
3647
|
this.disabledNotifySlimmer = createSubStateNotifySlimmer(VegaRichTextEditor, 'richTextContentEditable', 'watchRichTextContentEditable');
|
|
4462
3648
|
this.richTextContentController = new RichTextContentController(this);
|
|
@@ -4472,6 +3658,7 @@ const VegaRichTextEditor = class {
|
|
|
4472
3658
|
this.richTextContentEditable = true;
|
|
4473
3659
|
this.selectionMap = new Map();
|
|
4474
3660
|
this.isInDarkMode = VegaInternalThemeManager.isDarkMode();
|
|
3661
|
+
this.sourceView = false;
|
|
4475
3662
|
/**
|
|
4476
3663
|
* Specifies the label for the rich text editor.
|
|
4477
3664
|
*
|
|
@@ -4541,6 +3728,19 @@ const VegaRichTextEditor = class {
|
|
|
4541
3728
|
['image'],
|
|
4542
3729
|
['clearStyle'],
|
|
4543
3730
|
];
|
|
3731
|
+
/**
|
|
3732
|
+
* Determines whether to allow source edit mode in the rich text editor.
|
|
3733
|
+
*
|
|
3734
|
+
* @vegaVersion 2.59.0
|
|
3735
|
+
*/
|
|
3736
|
+
this.allowSourceEdit = false;
|
|
3737
|
+
/**
|
|
3738
|
+
* Specifies the configuration options for source edit mode.
|
|
3739
|
+
* It includes settings such as autoMatchFormat, which controls whether the editor automatically matches formatting when switching to source edit mode.
|
|
3740
|
+
*
|
|
3741
|
+
* @vegaVersion 2.59.0
|
|
3742
|
+
*/
|
|
3743
|
+
this.sourceEditConfig = { autoMatchFormat: true };
|
|
4544
3744
|
/**
|
|
4545
3745
|
* Specifies the validation status of the rich text editor component.
|
|
4546
3746
|
*
|
|
@@ -4666,6 +3866,9 @@ __decorate$6([
|
|
|
4666
3866
|
__decorate$6([
|
|
4667
3867
|
InjectVegaSlimmer()
|
|
4668
3868
|
], VegaRichTextEditor.prototype, "codeBlockToolbarButtonSlimmer", void 0);
|
|
3869
|
+
__decorate$6([
|
|
3870
|
+
InjectVegaSlimmer()
|
|
3871
|
+
], VegaRichTextEditor.prototype, "sourceEditToolbarButtonSlimmer", void 0);
|
|
4669
3872
|
__decorate$6([
|
|
4670
3873
|
InjectVegaSlimmer()
|
|
4671
3874
|
], VegaRichTextEditor.prototype, "placeholderNotifySlimmer", void 0);
|
|
@@ -4726,10 +3929,11 @@ class VegaRichTextEditorToolbarButtonRenderer extends VegaSlimmer {
|
|
|
4726
3929
|
return (h("button", { part: "rich-text-editor-toolbar-button", class: {
|
|
4727
3930
|
'rich-text-editor-toolbar-btn': true,
|
|
4728
3931
|
'rich-text-editor-toolbar-button-disabled': this.disabled,
|
|
3932
|
+
'rich-text-editor-toolbar-button-hidden': this.hidden,
|
|
4729
3933
|
'rich-text-editor-toolbar-button-selected': this.selected,
|
|
4730
|
-
}, onClick: this.handleClick, disabled: this.disabled },
|
|
3934
|
+
}, onClick: this.handleClick, disabled: this.disabled, hidden: this.hidden },
|
|
4731
3935
|
h("vega-flex", { gap: "size-8", justifyContent: "center", alignItems: "center" },
|
|
4732
|
-
h("vega-icon", { size: "size-16", color: this.iconColor, icon: VegaInternalIconManager.getIconKey(this.icon) }),
|
|
3936
|
+
this.icon && (h("vega-icon", { size: "size-16", color: this.iconColor, icon: VegaInternalIconManager.getIconKey(this.icon) })),
|
|
4733
3937
|
this.showArrowIcon && (h("vega-icon", { size: "size-8", color: "text-secondary", icon: VegaInternalIconManager.getIconKey('chevron-down') }))),
|
|
4734
3938
|
h("slot", null)));
|
|
4735
3939
|
}
|
|
@@ -4742,6 +3946,9 @@ class VegaRichTextEditorToolbarButtonRenderer extends VegaSlimmer {
|
|
|
4742
3946
|
__decorate$5([
|
|
4743
3947
|
MapToComponentField()
|
|
4744
3948
|
], VegaRichTextEditorToolbarButtonRenderer.prototype, "disabled", void 0);
|
|
3949
|
+
__decorate$5([
|
|
3950
|
+
MapToComponentField()
|
|
3951
|
+
], VegaRichTextEditorToolbarButtonRenderer.prototype, "hidden", void 0);
|
|
4745
3952
|
__decorate$5([
|
|
4746
3953
|
MapToComponentField()
|
|
4747
3954
|
], VegaRichTextEditorToolbarButtonRenderer.prototype, "selected", void 0);
|
|
@@ -4758,7 +3965,7 @@ __decorate$5([
|
|
|
4758
3965
|
MapToComponentField()
|
|
4759
3966
|
], VegaRichTextEditorToolbarButtonRenderer.prototype, "clickEventEmitter", void 0);
|
|
4760
3967
|
|
|
4761
|
-
const vegaRichTextEditorToolbarButtonCss = ":host{display:inline-block}.rich-text-editor-toolbar-btn{display:flex;justify-content:center;align-items:center;border-radius:4px;border:1px solid rgba(var(--v-border-input-field, 171, 198, 216, 1));padding-top:8px;padding-bottom:8px;padding-left:12px;padding-right:12px;cursor:pointer;position:relative;background-color:rgba(var(--v-bg-primary, 252, 252, 252, 1))}.rich-text-editor-toolbar-btn:hover{background-color:rgba(var(--v-bg-quaternary, 241, 248, 251, 1));border:1px solid rgba(var(--v-border-input-field-hover, 115, 160, 190, 1));z-index:1}.rich-text-editor-toolbar-btn:active{border:1px solid rgba(var(--v-border-input-field-focus, 19, 98, 226, 1));background-color:rgba(var(--v-bg-quaternary, 241, 248, 251, 1));z-index:1}.rich-text-editor-toolbar-btn:focus-visible{outline:2px solid rgba(var(--v-border-color-action, 19, 98, 226, 1));outline-offset:-1px;z-index:2}.rich-text-editor-toolbar-btn.rich-text-editor-toolbar-button-selected{border:1px solid rgba(var(--v-border-input-field-focus, 19, 98, 226, 1));background-color:rgba(var(--v-bg-quaternary, 241, 248, 251, 1));z-index:1}.rich-text-editor-toolbar-btn.rich-text-editor-toolbar-button-disabled{background-color:rgba(var(--v-bg-secondary, 245, 247, 247, 1));border:1px solid rgba(var(--v-border-input-field-disabled, 222, 225, 227, 1));cursor:not-allowed}.rich-text-editor-toolbar-btn.rich-text-editor-toolbar-button-disabled vega-icon{color:rgba(var(--v-text-disabled, 176, 180, 181, 1))}";
|
|
3968
|
+
const vegaRichTextEditorToolbarButtonCss = ":host{display:inline-block}.rich-text-editor-toolbar-btn{display:flex;justify-content:center;align-items:center;border-radius:4px;border:1px solid rgba(var(--v-border-input-field, 171, 198, 216, 1));padding-top:8px;padding-bottom:8px;padding-left:12px;padding-right:12px;cursor:pointer;position:relative;background-color:rgba(var(--v-bg-primary, 252, 252, 252, 1))}.rich-text-editor-toolbar-btn:hover{background-color:rgba(var(--v-bg-quaternary, 241, 248, 251, 1));border:1px solid rgba(var(--v-border-input-field-hover, 115, 160, 190, 1));z-index:1}.rich-text-editor-toolbar-btn:active{border:1px solid rgba(var(--v-border-input-field-focus, 19, 98, 226, 1));background-color:rgba(var(--v-bg-quaternary, 241, 248, 251, 1));z-index:1}.rich-text-editor-toolbar-btn:focus-visible{outline:2px solid rgba(var(--v-border-color-action, 19, 98, 226, 1));outline-offset:-1px;z-index:2}.rich-text-editor-toolbar-btn.rich-text-editor-toolbar-button-selected{border:1px solid rgba(var(--v-border-input-field-focus, 19, 98, 226, 1));background-color:rgba(var(--v-bg-quaternary, 241, 248, 251, 1));z-index:1}.rich-text-editor-toolbar-btn.rich-text-editor-toolbar-button-disabled{background-color:rgba(var(--v-bg-secondary, 245, 247, 247, 1));border:1px solid rgba(var(--v-border-input-field-disabled, 222, 225, 227, 1));cursor:not-allowed}.rich-text-editor-toolbar-btn.rich-text-editor-toolbar-button-disabled vega-icon{color:rgba(var(--v-text-disabled, 176, 180, 181, 1))}.rich-text-editor-toolbar-btn.rich-text-editor-toolbar-button-hidden{display:none}";
|
|
4762
3969
|
|
|
4763
3970
|
var __decorate$4 = (undefined && undefined.__decorate) || function (decorators, target, key, desc) {
|
|
4764
3971
|
var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
|
|
@@ -4793,6 +4000,12 @@ const VegaRichTextEditorToolbarButton = class {
|
|
|
4793
4000
|
* @vegaVersion 2.34.0
|
|
4794
4001
|
*/
|
|
4795
4002
|
this.disabled = false;
|
|
4003
|
+
/**
|
|
4004
|
+
* Specifies whether the rich text editor toolbar button element is hidden.
|
|
4005
|
+
*
|
|
4006
|
+
* @vegaVersion 2.59.0
|
|
4007
|
+
*/
|
|
4008
|
+
this.hidden = false;
|
|
4796
4009
|
/**
|
|
4797
4010
|
* Specifies whether the rich text editor toolbar button element is selected.
|
|
4798
4011
|
*
|