@heartlandone/vega 2.49.1 → 2.50.0-RTE-preview
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-65622aeb.js → app-globals-8e811cac.js} +6 -6
- package/dist/cjs/{child-nodes-event-prevent-slimmer-cc193ee1.js → child-nodes-event-prevent-slimmer-26ecfb15.js} +1 -1
- package/dist/cjs/{content-state-6a48bcb5.js → code-block-4cd8bccd.js} +1166 -1131
- package/dist/cjs/content-state-6cb98931.js +2496 -0
- package/dist/cjs/{design-token-cba4222e.js → design-token-8b48cb59.js} +1 -1
- package/dist/cjs/{element-appender-slimmer-4a26ecb2.js → element-appender-slimmer-d6b975e6.js} +3 -3
- package/dist/cjs/{event-emit-slimmer-8247249c.js → event-emit-slimmer-ee7a8c06.js} +1 -1
- package/dist/cjs/{form-field-controller-slimmer-4b0af5bc.js → form-field-controller-slimmer-88cbb139.js} +4 -4
- package/dist/cjs/{image-annotation-action-9c2b9c8e.js → image-annotation-action-f36b1a72.js} +65 -35
- package/dist/cjs/{index-c4dec3aa.js → index-4dd54e6b.js} +1 -1
- package/dist/cjs/{index-09acd3c9.js → index-7700600c.js} +9 -0
- package/dist/cjs/index.cjs.js +17 -16
- package/dist/cjs/{internal-vega-event-manager-c9948b59.js → internal-vega-event-manager-58afcde7.js} +1 -0
- package/dist/cjs/loader.cjs.js +11 -9
- package/dist/cjs/{public-rules-10ec636d.js → public-rules-555271e0.js} +8 -6
- package/dist/cjs/{responsive-format-facade-263d49f6.js → responsive-format-facade-8ce41c8a.js} +3 -3
- package/dist/cjs/{rich-text-editor-required-rule-5faded94.js → rich-text-editor-required-rule-d1b38bf7.js} +1 -1
- package/dist/cjs/selection-controller-828990cc.js +765 -0
- package/dist/cjs/string-39438062.js +24 -0
- package/dist/cjs/{string-input-formatter-slimmer-50322824.js → string-input-formatter-slimmer-9e7d7ce2.js} +2 -2
- package/dist/cjs/{style-formatter-ae0ef7fc.js → style-formatter-2294d77f.js} +1 -1
- package/dist/cjs/{sub-state-notify-slimmer-7f437b19.js → sub-state-notify-slimmer-f3ee01b7.js} +1 -1
- package/dist/cjs/{sub-state-observer-slimmer-e90362cd.js → sub-state-observer-slimmer-e1a00b74.js} +1 -1
- package/dist/cjs/{translation-212b1875.js → translation-e5003a00.js} +5 -0
- package/dist/cjs/{translation-slimmer-d1512c6d.js → translation-slimmer-127a0f83.js} +1 -1
- package/dist/cjs/vega-accordion.cjs.entry.js +11 -9
- package/dist/cjs/vega-app-footer.cjs.entry.js +1 -1
- package/dist/cjs/vega-app-header-button.cjs.entry.js +12 -10
- package/dist/cjs/vega-backdrop.cjs.entry.js +1 -1
- package/dist/cjs/vega-banner.cjs.entry.js +3 -3
- package/dist/cjs/vega-bar-chart.cjs.entry.js +1 -1
- package/dist/cjs/vega-box.cjs.entry.js +11 -9
- package/dist/cjs/vega-brand-logo.cjs.entry.js +1 -1
- package/dist/cjs/vega-breadcrumb.cjs.entry.js +4 -4
- package/dist/cjs/vega-button-circle.cjs.entry.js +12 -10
- package/dist/cjs/vega-button-group_2.cjs.entry.js +7 -7
- package/dist/cjs/vega-button-link.cjs.entry.js +4 -4
- package/dist/cjs/vega-button.cjs.entry.js +11 -9
- package/dist/cjs/vega-calendar_3.cjs.entry.js +9 -9
- package/dist/cjs/vega-card.cjs.entry.js +10 -8
- package/dist/cjs/vega-carousel.cjs.entry.js +10 -8
- package/dist/cjs/vega-checkbox_2.cjs.entry.js +9 -9
- package/dist/cjs/vega-chip.cjs.entry.js +12 -10
- package/dist/cjs/vega-code-block.cjs.entry.js +4073 -0
- package/dist/cjs/vega-color-picker.cjs.entry.js +8 -8
- package/dist/cjs/vega-combo-box.cjs.entry.js +9 -9
- package/dist/cjs/vega-counter-badge.cjs.entry.js +1 -1
- package/dist/cjs/vega-date-picker_2.cjs.entry.js +17 -16
- package/dist/cjs/vega-dialog_2.cjs.entry.js +12 -10
- package/dist/cjs/vega-divider.cjs.entry.js +10 -8
- package/dist/cjs/vega-dropdown_5.cjs.entry.js +15 -13
- package/dist/cjs/vega-env-manager-23b8b23c.js +2 -2
- package/dist/cjs/vega-field-error.cjs.entry.js +1 -1
- package/dist/cjs/vega-field-label.cjs.entry.js +3 -3
- package/dist/cjs/vega-file-uploader.cjs.entry.js +9 -9
- package/dist/cjs/vega-flag-icon.cjs.entry.js +10 -8
- package/dist/cjs/vega-flex.cjs.entry.js +11 -9
- package/dist/cjs/vega-font.cjs.entry.js +10 -8
- package/dist/cjs/vega-form.cjs.entry.js +10 -10
- package/dist/cjs/vega-grid.cjs.entry.js +10 -8
- package/dist/cjs/vega-hint.cjs.entry.js +1 -1
- package/dist/cjs/vega-icon.cjs.entry.js +10 -8
- package/dist/cjs/vega-image-uploader.cjs.entry.js +14 -13
- package/dist/cjs/vega-input-credit-card.cjs.entry.js +9 -9
- package/dist/cjs/vega-input-numeric.cjs.entry.js +10 -10
- package/dist/cjs/vega-input-phone-number.cjs.entry.js +12 -11
- package/dist/cjs/vega-input-range.cjs.entry.js +10 -10
- package/dist/cjs/vega-input-select.cjs.entry.js +19 -18
- package/dist/cjs/vega-input.cjs.entry.js +10 -10
- package/dist/cjs/{vega-internal-event-id-bfea9b93.js → vega-internal-event-id-62371952.js} +2 -0
- package/dist/cjs/vega-item-toggle.cjs.entry.js +3 -3
- package/dist/cjs/vega-left-nav_5.cjs.entry.js +13 -11
- package/dist/cjs/vega-line-chart.cjs.entry.js +1 -1
- package/dist/cjs/vega-loader-wrapper_2.cjs.entry.js +9 -7
- package/dist/cjs/vega-page-notification_2.cjs.entry.js +1 -1
- package/dist/cjs/vega-pagination-page-selector-mobile.cjs.entry.js +4 -4
- package/dist/cjs/vega-pagination-page-size-selector-mobile.cjs.entry.js +4 -4
- package/dist/cjs/vega-pagination.cjs.entry.js +12 -10
- package/dist/cjs/vega-pie-chart.cjs.entry.js +1 -1
- package/dist/cjs/vega-popover_2.cjs.entry.js +11 -9
- package/dist/cjs/vega-progress-tracker.cjs.entry.js +3 -3
- package/dist/cjs/vega-radio_2.cjs.entry.js +9 -9
- package/dist/cjs/vega-rich-text-content.cjs.entry.js +311 -137
- package/dist/cjs/vega-rich-text-editor_4.cjs.entry.js +1225 -2502
- package/dist/cjs/vega-section-title.cjs.entry.js +1 -1
- package/dist/cjs/vega-segment-control.cjs.entry.js +3 -3
- package/dist/cjs/vega-selection-chip_2.cjs.entry.js +14 -13
- package/dist/cjs/vega-selection-tile_2.cjs.entry.js +10 -10
- package/dist/cjs/vega-sidenav_3.cjs.entry.js +12 -10
- package/dist/cjs/vega-signature-capture.cjs.entry.js +14 -13
- package/dist/cjs/{vega-skeleton-loader-controller-db868c98.js → vega-skeleton-loader-controller-83e05b6c.js} +1 -1
- 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 +9 -9
- package/dist/cjs/vega-tab-group_2.cjs.entry.js +4 -4
- package/dist/cjs/vega-table_8.cjs.entry.js +14 -12
- package/dist/cjs/vega-text.cjs.entry.js +1 -1
- package/dist/cjs/vega-textarea.cjs.entry.js +9 -9
- package/dist/cjs/vega-time-picker_2.cjs.entry.js +15 -14
- package/dist/cjs/vega-toggle-switch.cjs.entry.js +8 -8
- package/dist/cjs/vega-tooltip_2.cjs.entry.js +10 -8
- package/dist/cjs/vega.cjs.js +11 -9
- package/dist/collection/collection-manifest.json +7 -1
- package/dist/collection/components/vega-code-block/assets/copy.js +3 -0
- package/dist/collection/components/vega-code-block/slimmers/controllers/code-highlight-parser.abstract.js +62 -0
- package/dist/collection/components/vega-code-block/slimmers/controllers/default-code-highlight-parse-controller.js +48 -0
- package/dist/collection/components/vega-code-block/slimmers/controllers/prism-code-highlight-parse-controller.js +99 -0
- package/dist/collection/components/vega-code-block/slimmers/controllers/vega-code-block-content-parse-controller.js +50 -0
- package/dist/collection/components/vega-code-block/slimmers/controllers/vega-code-block-focus-controller.js +57 -0
- package/dist/collection/components/vega-code-block/slimmers/controllers/vega-code-block-input-controller.js +255 -0
- package/dist/collection/components/vega-code-block/slimmers/controllers/vega-code-block-selection-controller.js +266 -0
- package/dist/collection/components/vega-code-block/slimmers/controllers/vega-code-block-value-controller.js +44 -0
- package/dist/collection/components/vega-code-block/slimmers/renderers/vega-code-block-content-renderer.js +123 -0
- package/dist/collection/components/vega-code-block/slimmers/renderers/vega-code-block-copy-button-renderer.js +67 -0
- package/dist/collection/components/vega-code-block/slimmers/renderers/vega-code-block-renderer.js +122 -0
- package/dist/collection/components/vega-code-block/types.js +10 -0
- package/dist/collection/components/vega-code-block/vega-code-block.css +158 -0
- package/dist/collection/components/vega-code-block/vega-code-block.js +399 -0
- package/dist/collection/components/vega-input-select/slimmers/renderers/vega-input-select-dropdown-renderer.js +5 -5
- package/dist/collection/components/vega-rich-text-content/slimmers/renderers/vega-rich-text-content-renderer.js +2 -0
- package/dist/collection/components/vega-rich-text-content/vega-rich-text-content.css +60 -5
- package/dist/collection/components/vega-rich-text-editor/assets/file-code.js +3 -0
- package/dist/collection/components/vega-rich-text-editor/assets/rectangle-code.js +3 -0
- package/dist/collection/components/vega-rich-text-editor/dto/action-handle-strategies/action-handle-strategy.abstract.js +24 -0
- 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-text-style-strategy.js +1 -0
- package/dist/collection/components/vega-rich-text-editor/dto/action-handle-strategies/apply-annotation-strategies/code-node-set-selection-range-strategy.js +13 -0
- package/dist/collection/components/vega-rich-text-editor/dto/action-handle-strategies/apply-annotation-strategies/node-update-annotation-map-strategy.js +14 -0
- package/dist/collection/components/vega-rich-text-editor/dto/action-handle-strategies/modify-content-strategies/block-delete-text-content-strategy.js +3 -1
- package/dist/collection/components/vega-rich-text-editor/dto/action-handle-strategies/modify-content-strategies/block-remove-node-strategy.js +1 -1
- package/dist/collection/components/vega-rich-text-editor/dto/action-handle-strategies/modify-content-strategies/block-transform-to-code-block-strategy.js +48 -0
- package/dist/collection/components/vega-rich-text-editor/dto/action-handle-strategies/modify-content-strategies/code-block-insert-image-strategy.js +17 -0
- package/dist/collection/components/vega-rich-text-editor/dto/action-handle-strategies/modify-content-strategies/code-block-remove-self-strategy.js +77 -0
- package/dist/collection/components/vega-rich-text-editor/dto/action-handle-strategies/modify-content-strategies/switch-out-from-code-block-strategy.js +38 -0
- package/dist/collection/components/vega-rich-text-editor/dto/action-handle-strategies/modify-content-strategies/update-code-block-strategy.js +14 -0
- 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/modify-content-action.abstract.js +4 -0
- package/dist/collection/components/vega-rich-text-editor/dto/actions/remove-code-block-action.js +13 -0
- package/dist/collection/components/vega-rich-text-editor/dto/actions/switch-out-from-code-block-action.js +15 -0
- package/dist/collection/components/vega-rich-text-editor/dto/actions/transform-to-code-block-action.js +13 -0
- package/dist/collection/components/vega-rich-text-editor/dto/actions/update-code-block-action.js +15 -0
- package/dist/collection/components/vega-rich-text-editor/dto/annotations/block-annotation.abstract.js +1 -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 +14 -9
- 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 +65 -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 +57 -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 +16 -7
- 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/italic-annotation.js +13 -5
- package/dist/collection/components/vega-rich-text-editor/dto/annotations/link-annotation.js +12 -9
- package/dist/collection/components/vega-rich-text-editor/dto/annotations/link-group-annotation.js +89 -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/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 +69 -2
- package/dist/collection/components/vega-rich-text-editor/dto/blocks/code-block.js +106 -0
- package/dist/collection/components/vega-rich-text-editor/dto/blocks/image-block.js +15 -1
- package/dist/collection/components/vega-rich-text-editor/dto/blocks/list-block.js +50 -0
- package/dist/collection/components/vega-rich-text-editor/dto/blocks/list-item-block.js +12 -1
- package/dist/collection/components/vega-rich-text-editor/dto/blocks/text-block.js +66 -2
- package/dist/collection/components/vega-rich-text-editor/dto/content-state.js +29 -0
- package/dist/collection/components/vega-rich-text-editor/dto/nodes/code-block-node.js +56 -0
- package/dist/collection/components/vega-rich-text-editor/dto/nodes/image-node.js +26 -9
- package/dist/collection/components/vega-rich-text-editor/dto/nodes/node.abstract.js +81 -0
- package/dist/collection/components/vega-rich-text-editor/dto/nodes/text-node.js +15 -2
- package/dist/collection/components/vega-rich-text-editor/dto/renderers/blocks/block-renderer.abstract.js +5 -22
- package/dist/collection/components/vega-rich-text-editor/dto/renderers/blocks/block-text-nodes-renderer.abstract.js +9 -93
- package/dist/collection/components/vega-rich-text-editor/dto/renderers/blocks/code-block-renderer.js +62 -0
- package/dist/collection/components/vega-rich-text-editor/dto/renderers/blocks/image-block-renderer.js +1 -1
- package/dist/collection/components/vega-rich-text-editor/dto/renderers/blocks/link-wrapper-renderer.js +121 -0
- package/dist/collection/components/vega-rich-text-editor/dto/renderers/blocks/list-block-renderer.js +1 -1
- package/dist/collection/components/vega-rich-text-editor/dto/renderers/blocks/list-item-block-renderer.js +1 -1
- package/dist/collection/components/vega-rich-text-editor/dto/renderers/blocks/text-block-renderer.js +2 -23
- package/dist/collection/components/vega-rich-text-editor/dto/renderers/nodes/code-block-node-renderer.js +81 -0
- package/dist/collection/components/vega-rich-text-editor/dto/renderers/nodes/image-node-renderer.js +47 -7
- package/dist/collection/components/vega-rich-text-editor/dto/renderers/nodes/node-renderer.abstract.js +0 -27
- package/dist/collection/components/vega-rich-text-editor/dto/renderers/nodes/text-node-renderer.js +3 -2
- package/dist/collection/components/vega-rich-text-editor/slimmers/controllers/delete-selected-nodes-controller.js +19 -4
- package/dist/collection/components/vega-rich-text-editor/slimmers/controllers/helper/element-to-dto-strategy/block-to-rte-block-strategy.abstract.js +155 -15
- package/dist/collection/components/vega-rich-text-editor/slimmers/controllers/helper/element-to-dto-strategy/continue-inline-to-rte-text-block-strategy.js +2 -1
- package/dist/collection/components/vega-rich-text-editor/slimmers/controllers/helper/element-to-dto-strategy/element-to-dto-strategy-processor.js +6 -1
- package/dist/collection/components/vega-rich-text-editor/slimmers/controllers/helper/element-to-dto-strategy/element-to-rte-image-block-strategy.abstract.js +38 -0
- package/dist/collection/components/vega-rich-text-editor/slimmers/controllers/helper/element-to-dto-strategy/img-to-rte-image-block-strategy.js +3 -20
- package/dist/collection/components/vega-rich-text-editor/slimmers/controllers/helper/element-to-dto-strategy/inline-block-to-rte-text-block-strategy.js +59 -5
- package/dist/collection/components/vega-rich-text-editor/slimmers/controllers/helper/element-to-dto-strategy/jira-code-to-rte-code-block-strategy.js +54 -0
- package/dist/collection/components/vega-rich-text-editor/slimmers/controllers/helper/element-to-dto-strategy/li-to-rte-list-item-block-strategy.js +1 -1
- package/dist/collection/components/vega-rich-text-editor/slimmers/controllers/helper/element-to-dto-strategy/ol-to-rte-list-block-strategy.js +3 -2
- package/dist/collection/components/vega-rich-text-editor/slimmers/controllers/helper/element-to-dto-strategy/span-img-to-rte-image-block-strategy.js +3 -20
- 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 +7 -3
- package/dist/collection/components/vega-rich-text-editor/slimmers/controllers/helper/element-to-dto-strategy/ul-to-rte-list-block-strategy.js +3 -2
- package/dist/collection/components/vega-rich-text-editor/slimmers/controllers/helper/element-to-dto-strategy/vega-code-block-to-rte-code-block-strategy.js +69 -0
- package/dist/collection/components/vega-rich-text-editor/slimmers/controllers/helper/element-to-dto-strategy/vega-image-to-rte-image-block-strategy.js +4 -7
- package/dist/collection/components/vega-rich-text-editor/slimmers/controllers/helper/input-event-handler/insert-line-break-handler.js +7 -5
- package/dist/collection/components/vega-rich-text-editor/slimmers/controllers/helper/input-event-handler/insert-paragraph-handler.js +7 -5
- package/dist/collection/components/vega-rich-text-editor/slimmers/controllers/helper/input-event-handler/insert-paste-handler.js +25 -10
- package/dist/collection/components/vega-rich-text-editor/slimmers/controllers/internal-code-block-selection-controller.js +64 -0
- package/dist/collection/components/vega-rich-text-editor/slimmers/controllers/selection-controller.js +59 -53
- package/dist/collection/components/vega-rich-text-editor/slimmers/controllers/user-input-controller.js +21 -8
- package/dist/collection/components/vega-rich-text-editor/slimmers/renderers/toolbar-renderer.js +10 -0
- package/dist/collection/components/vega-rich-text-editor/slimmers/renderers/tools/bold-toolbar-button-slimmer.js +5 -3
- package/dist/collection/components/vega-rich-text-editor/slimmers/renderers/tools/bullets-numbers/bullets-numbers-toolbar-button-slimmer.js +5 -3
- package/dist/collection/components/vega-rich-text-editor/slimmers/renderers/tools/bullets-numbers/bullets-toolbar-button-slimmer.js +5 -3
- package/dist/collection/components/vega-rich-text-editor/slimmers/renderers/tools/bullets-numbers/numbers-toolbar-button-slimmer.js +5 -3
- package/dist/collection/components/vega-rich-text-editor/slimmers/renderers/tools/clear-style-toolbar-button-slimmer.js +5 -3
- package/dist/collection/components/vega-rich-text-editor/slimmers/renderers/tools/code-block-toolbar-button-slimmer.js +65 -0
- package/dist/collection/components/vega-rich-text-editor/slimmers/renderers/tools/code-toolbar-button-slimmer.js +5 -3
- 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 +8 -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 +5 -3
- package/dist/collection/components/vega-rich-text-editor/slimmers/renderers/tools/less-indent-toolbar-button-slimmer.js +3 -3
- package/dist/collection/components/vega-rich-text-editor/slimmers/renderers/tools/link-toolbar-button-slimmer.js +2 -2
- package/dist/collection/components/vega-rich-text-editor/slimmers/renderers/tools/more-indent-toolbar-button-slimmer.js +3 -3
- package/dist/collection/components/vega-rich-text-editor/slimmers/renderers/tools/source-edit-toolbar-button-slimmer.js +60 -0
- package/dist/collection/components/vega-rich-text-editor/slimmers/renderers/tools/strikethrough-toolbar-button-slimmer.js +5 -3
- package/dist/collection/components/vega-rich-text-editor/slimmers/renderers/tools/text-color-toolbar-button-slimmer.js +5 -3
- package/dist/collection/components/vega-rich-text-editor/slimmers/renderers/tools/text-styles-toolbar-button-slimmer.js +6 -4
- package/dist/collection/components/vega-rich-text-editor/slimmers/renderers/tools/toolbar-button-slimmer.abstract.js +3 -2
- package/dist/collection/components/vega-rich-text-editor/slimmers/renderers/tools/underline-toolbar-button-slimmer.js +5 -3
- package/dist/collection/components/vega-rich-text-editor/slimmers/renderers/tools/visual-mode-toolbar-button-slimmer.abstract.js +28 -0
- package/dist/collection/components/vega-rich-text-editor/slimmers/renderers/vega-rich-text-editor-renderer.js +31 -3
- package/dist/collection/components/vega-rich-text-editor/test/dto/action-handle-strategies/code-block-strategy-registry.test.js +21 -0
- package/dist/collection/components/vega-rich-text-editor/test/dto/action-handle-strategies/content-state-strategy-registry.test.js +2 -0
- package/dist/collection/components/vega-rich-text-editor/test/dto/action-handle-strategies/image-block-strategy-register.test.js +3 -0
- package/dist/collection/components/vega-rich-text-editor/test/dto/action-handle-strategies/text-block-strategy-register.test.js +23 -1
- package/dist/collection/components/vega-rich-text-editor/test/dto/annotations.test.js +247 -27
- package/dist/collection/components/vega-rich-text-editor/test/dto/blocks/code-block.test.js +54 -0
- package/dist/collection/components/vega-rich-text-editor/test/dto/content-state.test.js +1793 -0
- package/dist/collection/components/vega-rich-text-editor/test/dto/nodes/image-node.test.js +12 -0
- package/dist/collection/components/vega-rich-text-editor/test/dto/nodes/text-node.test.js +41 -4
- package/dist/collection/components/vega-rich-text-editor/test/element-to-dto-strategy/jira-code-to-rte-code-block-strategy.test.js +32 -0
- package/dist/collection/components/vega-rich-text-editor/test/element-to-dto-strategy/vega-code-block-to-rte-code-block-strategy.test.js +61 -0
- package/dist/collection/components/vega-rich-text-editor/vega-rich-text-editor.css +7 -0
- package/dist/collection/components/vega-rich-text-editor/vega-rich-text-editor.js +18 -1
- package/dist/collection/helpers/code-format/code-formatter.js +108 -0
- package/dist/collection/helpers/code-format/test/code-formatter.test.js +362 -0
- package/dist/collection/helpers/event-manager/event-id/component-event-id-map.js +2 -1
- package/dist/collection/helpers/event-manager/event-id/vega-internal-event-id.js +1 -0
- package/dist/collection/helpers/slimmers/auto-run-when-re-render-task-queue-slimmer.abstract.js +47 -0
- package/dist/collection/helpers/slimmers/test/auto-run-when-re-render-task-queue-slimmer.test.js +46 -0
- package/dist/collection/helpers/translation/locales/en.js +5 -0
- package/dist/collection/helpers/translation/tests/internal-translation-controller.test.js +5 -0
- package/dist/collection/polyfill/shadow-selection/shadow-selection-polyfill.js +17 -15
- 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/string.js +10 -0
- package/dist/esm/{app-globals-1f8c30e9.js → app-globals-9058ac3b.js} +6 -6
- package/dist/esm/{child-nodes-event-prevent-slimmer-5d45361e.js → child-nodes-event-prevent-slimmer-1142fb79.js} +1 -1
- package/dist/esm/{content-state-dbc9f635.js → code-block-8b5bd928.js} +1141 -1122
- package/dist/esm/content-state-8c3f862b.js +2489 -0
- package/dist/esm/{design-token-0699f0ca.js → design-token-bd436e0d.js} +1 -1
- package/dist/esm/{dom-node-subject-factory-f77cf9cc.js → dom-node-subject-factory-eb6bba5d.js} +1 -1
- package/dist/esm/{dom-node-subject-observer-factory-715dccf9.js → dom-node-subject-observer-factory-6083d518.js} +1 -1
- package/dist/esm/{element-appender-slimmer-96cb54e2.js → element-appender-slimmer-baf5e249.js} +5 -5
- package/dist/esm/{event-emit-slimmer-b7d511f6.js → event-emit-slimmer-480d3b54.js} +3 -3
- package/dist/esm/{form-field-controller-slimmer-89a72ee7.js → form-field-controller-slimmer-bfb4034d.js} +6 -6
- package/dist/esm/{image-annotation-action-1aa938ab.js → image-annotation-action-a8b860ad.js} +57 -28
- package/dist/esm/{index-187f71d1.js → index-d0a47531.js} +9 -0
- package/dist/esm/{index-4aa167d6.js → index-db0ec3ee.js} +2 -2
- package/dist/esm/index.js +12 -11
- package/dist/esm/{internal-vega-event-manager-87dc436c.js → internal-vega-event-manager-56c6469a.js} +2 -1
- package/dist/esm/loader.js +12 -10
- package/dist/esm/polyfills/core-js.js +0 -0
- package/dist/esm/polyfills/dom.js +0 -0
- package/dist/esm/polyfills/es5-html-element.js +0 -0
- package/dist/esm/polyfills/index.js +0 -0
- package/dist/esm/polyfills/system.js +0 -0
- package/dist/esm/{public-rules-5cf6aa95.js → public-rules-90fbd41a.js} +8 -6
- package/dist/esm/{responsive-format-facade-42f3fcfa.js → responsive-format-facade-827de03a.js} +3 -3
- package/dist/esm/{rich-text-editor-required-rule-6a7cd3ee.js → rich-text-editor-required-rule-0d470d82.js} +1 -1
- package/dist/esm/selection-controller-dd4f4407.js +759 -0
- package/dist/esm/string-a953eafc.js +21 -0
- package/dist/esm/{string-input-formatter-slimmer-c61f82d6.js → string-input-formatter-slimmer-0d30b976.js} +3 -3
- package/dist/esm/{style-formatter-cb00c709.js → style-formatter-232842f5.js} +1 -1
- package/dist/esm/{sub-state-notify-slimmer-4e3cf09d.js → sub-state-notify-slimmer-04e06501.js} +2 -2
- package/dist/esm/{sub-state-observer-slimmer-be7a6ce3.js → sub-state-observer-slimmer-b4c2ddc3.js} +2 -2
- package/dist/esm/{translation-cf7f020a.js → translation-71e0711d.js} +5 -0
- package/dist/esm/{translation-slimmer-88966d5c.js → translation-slimmer-e6b130bf.js} +1 -1
- package/dist/esm/vega-accordion.entry.js +13 -11
- package/dist/esm/vega-app-footer.entry.js +1 -1
- package/dist/esm/vega-app-header-button.entry.js +14 -12
- package/dist/esm/vega-backdrop.entry.js +1 -1
- package/dist/esm/vega-banner.entry.js +5 -5
- package/dist/esm/vega-bar-chart.entry.js +1 -1
- package/dist/esm/vega-box.entry.js +12 -10
- package/dist/esm/vega-brand-logo.entry.js +1 -1
- package/dist/esm/vega-breadcrumb.entry.js +6 -6
- package/dist/esm/vega-button-circle.entry.js +14 -12
- package/dist/esm/vega-button-group_2.entry.js +9 -9
- package/dist/esm/vega-button-link.entry.js +6 -6
- package/dist/esm/vega-button.entry.js +13 -11
- package/dist/esm/vega-calendar_3.entry.js +11 -11
- package/dist/esm/vega-card.entry.js +11 -9
- package/dist/esm/vega-carousel.entry.js +12 -10
- package/dist/esm/vega-checkbox_2.entry.js +11 -11
- package/dist/esm/vega-chip.entry.js +14 -12
- package/dist/esm/vega-code-block.entry.js +4069 -0
- package/dist/esm/vega-color-picker.entry.js +10 -10
- package/dist/esm/vega-combo-box.entry.js +11 -11
- package/dist/esm/vega-counter-badge.entry.js +1 -1
- package/dist/esm/vega-date-picker_2.entry.js +19 -18
- package/dist/esm/vega-dialog_2.entry.js +14 -12
- package/dist/esm/vega-divider.entry.js +11 -9
- package/dist/esm/vega-dropdown_5.entry.js +17 -15
- package/dist/esm/vega-env-manager-8f8dc473.js +2 -2
- package/dist/esm/vega-field-error.entry.js +1 -1
- package/dist/esm/vega-field-label.entry.js +5 -5
- package/dist/esm/vega-file-uploader.entry.js +11 -11
- package/dist/esm/vega-flag-icon.entry.js +11 -9
- package/dist/esm/vega-flex.entry.js +12 -10
- package/dist/esm/vega-font.entry.js +11 -9
- package/dist/esm/vega-form.entry.js +12 -12
- package/dist/esm/vega-grid.entry.js +11 -9
- package/dist/esm/vega-hint.entry.js +1 -1
- package/dist/esm/vega-icon.entry.js +11 -9
- package/dist/esm/vega-image-uploader.entry.js +16 -15
- package/dist/esm/vega-input-credit-card.entry.js +11 -11
- package/dist/esm/vega-input-numeric.entry.js +12 -12
- package/dist/esm/vega-input-phone-number.entry.js +14 -13
- package/dist/esm/vega-input-range.entry.js +12 -12
- package/dist/esm/vega-input-select.entry.js +21 -20
- package/dist/esm/vega-input.entry.js +12 -12
- package/dist/esm/{vega-internal-event-id-85ad403f.js → vega-internal-event-id-820393ad.js} +2 -1
- package/dist/esm/vega-item-toggle.entry.js +5 -5
- package/dist/esm/vega-left-nav_5.entry.js +15 -13
- package/dist/esm/vega-line-chart.entry.js +1 -1
- package/dist/esm/vega-loader-wrapper_2.entry.js +10 -8
- package/dist/esm/vega-page-notification_2.entry.js +3 -3
- package/dist/esm/vega-pagination-page-selector-mobile.entry.js +6 -6
- package/dist/esm/vega-pagination-page-size-selector-mobile.entry.js +6 -6
- package/dist/esm/vega-pagination.entry.js +14 -12
- package/dist/esm/vega-pie-chart.entry.js +1 -1
- package/dist/esm/vega-popover_2.entry.js +13 -11
- package/dist/esm/vega-progress-tracker.entry.js +5 -5
- package/dist/esm/vega-radio_2.entry.js +11 -11
- package/dist/esm/vega-rich-text-content.entry.js +305 -131
- package/dist/esm/vega-rich-text-editor_4.entry.js +1132 -2409
- package/dist/esm/vega-section-title.entry.js +1 -1
- package/dist/esm/vega-segment-control.entry.js +5 -5
- package/dist/esm/vega-selection-chip_2.entry.js +16 -15
- package/dist/esm/vega-selection-tile_2.entry.js +12 -12
- package/dist/esm/vega-sidenav_3.entry.js +14 -12
- package/dist/esm/vega-signature-capture.entry.js +16 -15
- package/dist/esm/{vega-skeleton-loader-controller-c2a8bd27.js → vega-skeleton-loader-controller-878e1b28.js} +1 -1
- 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 +11 -11
- package/dist/esm/vega-tab-group_2.entry.js +6 -6
- package/dist/esm/vega-table_8.entry.js +16 -14
- package/dist/esm/vega-text.entry.js +1 -1
- package/dist/esm/vega-textarea.entry.js +11 -11
- package/dist/esm/vega-time-picker_2.entry.js +17 -16
- package/dist/esm/vega-toggle-switch.entry.js +10 -10
- package/dist/esm/vega-tooltip_2.entry.js +12 -10
- package/dist/esm/vega.js +12 -10
- package/dist/types/components/vega-code-block/assets/copy.d.ts +3 -0
- package/dist/types/components/vega-code-block/slimmers/controllers/code-highlight-parser.abstract.d.ts +40 -0
- package/dist/types/components/vega-code-block/slimmers/controllers/default-code-highlight-parse-controller.d.ts +19 -0
- package/dist/types/components/vega-code-block/slimmers/controllers/prism-code-highlight-parse-controller.d.ts +43 -0
- package/dist/types/components/vega-code-block/slimmers/controllers/vega-code-block-content-parse-controller.d.ts +23 -0
- package/dist/types/components/vega-code-block/slimmers/controllers/vega-code-block-focus-controller.d.ts +21 -0
- package/dist/types/components/vega-code-block/slimmers/controllers/vega-code-block-input-controller.d.ts +100 -0
- package/dist/types/components/vega-code-block/slimmers/controllers/vega-code-block-selection-controller.d.ts +93 -0
- package/dist/types/components/vega-code-block/slimmers/controllers/vega-code-block-value-controller.d.ts +21 -0
- package/dist/types/components/vega-code-block/slimmers/renderers/vega-code-block-content-renderer.d.ts +57 -0
- package/dist/types/components/vega-code-block/slimmers/renderers/vega-code-block-copy-button-renderer.d.ts +23 -0
- package/dist/types/components/vega-code-block/slimmers/renderers/vega-code-block-renderer.d.ts +50 -0
- package/dist/types/components/vega-code-block/types.d.ts +19 -0
- package/dist/types/components/vega-code-block/vega-code-block.d.ts +116 -0
- package/dist/types/components/vega-rich-text-editor/assets/file-code.d.ts +3 -0
- package/dist/types/components/vega-rich-text-editor/assets/rectangle-code.d.ts +3 -0
- package/dist/types/components/vega-rich-text-editor/dto/action-handle-strategies/action-handle-strategy.abstract.d.ts +15 -0
- 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/apply-annotation-strategies/code-node-set-selection-range-strategy.d.ts +12 -0
- package/dist/types/components/vega-rich-text-editor/dto/action-handle-strategies/modify-content-strategies/block-delete-node-content-strategy.d.ts +3 -3
- package/dist/types/components/vega-rich-text-editor/dto/action-handle-strategies/modify-content-strategies/block-remove-node-strategy.d.ts +4 -5
- package/dist/types/components/vega-rich-text-editor/dto/action-handle-strategies/modify-content-strategies/block-transform-to-code-block-strategy.d.ts +29 -0
- package/dist/types/components/vega-rich-text-editor/dto/action-handle-strategies/modify-content-strategies/code-block-insert-image-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 +28 -0
- package/dist/types/components/vega-rich-text-editor/dto/action-handle-strategies/modify-content-strategies/switch-out-from-code-block-strategy.d.ts +12 -0
- package/dist/types/components/vega-rich-text-editor/dto/action-handle-strategies/modify-content-strategies/update-code-block-strategy.d.ts +12 -0
- 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/modify-content-action.abstract.d.ts +5 -1
- package/dist/types/components/vega-rich-text-editor/dto/actions/remove-code-block-action.d.ts +10 -0
- package/dist/types/components/vega-rich-text-editor/dto/actions/switch-out-from-code-block-action.d.ts +14 -0
- package/dist/types/components/vega-rich-text-editor/dto/actions/transform-to-code-block-action.d.ts +14 -0
- package/dist/types/components/vega-rich-text-editor/dto/actions/update-code-block-action.d.ts +14 -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 +17 -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 +5 -9
- 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 +43 -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 +42 -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 +7 -5
- 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/italic-annotation.d.ts +7 -5
- package/dist/types/components/vega-rich-text-editor/dto/annotations/link-annotation.d.ts +6 -4
- package/dist/types/components/vega-rich-text-editor/dto/annotations/link-group-annotation.d.ts +48 -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 +15 -3
- 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 +7 -5
- 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 +39 -4
- package/dist/types/components/vega-rich-text-editor/dto/blocks/code-block.d.ts +56 -0
- package/dist/types/components/vega-rich-text-editor/dto/blocks/image-block.d.ts +4 -0
- package/dist/types/components/vega-rich-text-editor/dto/blocks/list-block.d.ts +20 -2
- package/dist/types/components/vega-rich-text-editor/dto/blocks/list-item-block.d.ts +4 -0
- package/dist/types/components/vega-rich-text-editor/dto/blocks/text-block.d.ts +14 -4
- package/dist/types/components/vega-rich-text-editor/dto/content-state.d.ts +13 -0
- package/dist/types/components/vega-rich-text-editor/dto/nodes/code-block-node.d.ts +45 -0
- package/dist/types/components/vega-rich-text-editor/dto/nodes/image-node.d.ts +4 -0
- package/dist/types/components/vega-rich-text-editor/dto/nodes/node.abstract.d.ts +46 -2
- package/dist/types/components/vega-rich-text-editor/dto/nodes/text-node.d.ts +7 -2
- package/dist/types/components/vega-rich-text-editor/dto/renderers/blocks/block-renderer.abstract.d.ts +4 -11
- package/dist/types/components/vega-rich-text-editor/dto/renderers/blocks/block-text-nodes-renderer.abstract.d.ts +7 -5
- package/dist/types/components/vega-rich-text-editor/dto/renderers/blocks/code-block-renderer.d.ts +39 -0
- 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/text-block-renderer.d.ts +0 -1
- package/dist/types/components/vega-rich-text-editor/dto/renderers/nodes/code-block-node-renderer.d.ts +37 -0
- package/dist/types/components/vega-rich-text-editor/dto/renderers/nodes/image-node-renderer.d.ts +22 -0
- package/dist/types/components/vega-rich-text-editor/dto/renderers/nodes/node-renderer.abstract.d.ts +1 -15
- package/dist/types/components/vega-rich-text-editor/interface.d.ts +65 -26
- package/dist/types/components/vega-rich-text-editor/slimmers/controllers/helper/element-to-dto-strategy/block-to-rte-block-strategy.abstract.d.ts +64 -6
- package/dist/types/components/vega-rich-text-editor/slimmers/controllers/helper/element-to-dto-strategy/element-to-dto-strategy-processor.d.ts +3 -1
- package/dist/types/components/vega-rich-text-editor/slimmers/controllers/helper/element-to-dto-strategy/element-to-rte-image-block-strategy.abstract.d.ts +20 -0
- package/dist/types/components/vega-rich-text-editor/slimmers/controllers/helper/element-to-dto-strategy/img-to-rte-image-block-strategy.d.ts +2 -2
- package/dist/types/components/vega-rich-text-editor/slimmers/controllers/helper/element-to-dto-strategy/inline-block-to-rte-text-block-strategy.d.ts +30 -1
- package/dist/types/components/vega-rich-text-editor/slimmers/controllers/helper/element-to-dto-strategy/jira-code-to-rte-code-block-strategy.d.ts +31 -0
- package/dist/types/components/vega-rich-text-editor/slimmers/controllers/helper/element-to-dto-strategy/ol-to-rte-list-block-strategy.d.ts +2 -3
- package/dist/types/components/vega-rich-text-editor/slimmers/controllers/helper/element-to-dto-strategy/span-img-to-rte-image-block-strategy.d.ts +2 -2
- package/dist/types/components/vega-rich-text-editor/slimmers/controllers/helper/element-to-dto-strategy/ul-to-rte-list-block-strategy.d.ts +2 -3
- package/dist/types/components/vega-rich-text-editor/slimmers/controllers/helper/element-to-dto-strategy/vega-code-block-to-rte-code-block-strategy.d.ts +42 -0
- package/dist/types/components/vega-rich-text-editor/slimmers/controllers/helper/element-to-dto-strategy/vega-image-to-rte-image-block-strategy.d.ts +2 -2
- package/dist/types/components/vega-rich-text-editor/slimmers/controllers/helper/input-event-handler/insert-paste-handler.d.ts +7 -1
- package/dist/types/components/vega-rich-text-editor/slimmers/controllers/internal-code-block-selection-controller.d.ts +45 -0
- package/dist/types/components/vega-rich-text-editor/slimmers/controllers/selection-controller.d.ts +17 -23
- package/dist/types/components/vega-rich-text-editor/slimmers/controllers/user-input-controller.d.ts +6 -4
- package/dist/types/components/vega-rich-text-editor/slimmers/renderers/toolbar-renderer.d.ts +2 -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 +22 -0
- 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 +4 -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 +13 -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 +3 -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 +17 -0
- package/dist/types/components/vega-rich-text-editor/slimmers/renderers/vega-rich-text-editor-renderer.d.ts +8 -2
- package/dist/types/components/vega-rich-text-editor/test/dto/action-handle-strategies/code-block-strategy-registry.test.d.ts +1 -0
- package/dist/types/components/vega-rich-text-editor/test/dto/blocks/code-block.test.d.ts +1 -0
- 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/element-to-dto-strategy/jira-code-to-rte-code-block-strategy.test.d.ts +1 -0
- package/dist/types/components/vega-rich-text-editor/test/element-to-dto-strategy/vega-code-block-to-rte-code-block-strategy.test.d.ts +1 -0
- package/dist/types/components/vega-rich-text-editor/vega-rich-text-editor.d.ts +7 -0
- package/dist/types/components.d.ts +95 -0
- 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 +1 -0
- package/dist/types/helpers/slimmers/auto-run-when-re-render-task-queue-slimmer.abstract.d.ts +20 -0
- package/dist/types/helpers/slimmers/test/auto-run-when-re-render-task-queue-slimmer.test.d.ts +1 -0
- package/dist/types/helpers/translation/interface.d.ts +6 -1
- package/dist/types/polyfill/shadow-selection/shadow-selection-polyfill.d.ts +26 -0
- package/dist/types/types/components.type.d.ts +1 -0
- package/dist/types/utils/string.d.ts +7 -0
- package/dist/vega/index.esm.js +1 -1
- package/dist/vega/p-0104207d.entry.js +1 -0
- package/dist/vega/p-010f1715.entry.js +1 -0
- package/dist/vega/p-01593f9d.js +1 -0
- package/dist/vega/p-020b04ed.js +1 -0
- package/dist/vega/p-02841589.js +1 -0
- package/dist/vega/p-03cfb331.entry.js +9 -0
- package/dist/vega/{p-b649e86e.entry.js → p-0bff8716.entry.js} +1 -1
- package/dist/vega/p-1056a049.entry.js +1 -0
- package/dist/vega/p-10e41bbe.js +1 -0
- package/dist/vega/{p-83ef9e7d.entry.js → p-12e6173c.entry.js} +1 -1
- package/dist/vega/{p-54add0d2.js → p-1397ba3f.js} +1 -1
- package/dist/vega/p-13d9a1fd.entry.js +1 -0
- package/dist/vega/p-13eae47f.entry.js +1 -0
- package/dist/vega/p-1630864e.entry.js +1 -0
- package/dist/vega/p-1b335e30.entry.js +1 -0
- package/dist/vega/{p-8ade44bf.js → p-1e194737.js} +1 -1
- package/dist/vega/{p-252e42c7.entry.js → p-1f346008.entry.js} +1 -1
- package/dist/vega/p-1f86ab76.entry.js +1 -0
- package/dist/vega/p-1fe746ab.entry.js +1 -0
- package/dist/vega/{p-8c388b58.entry.js → p-211c028f.entry.js} +1 -1
- package/dist/vega/p-21d26bb4.js +2 -0
- package/dist/vega/{p-b351ace3.entry.js → p-23e6f2b2.entry.js} +1 -1
- package/dist/vega/p-268aea63.js +1 -0
- package/dist/vega/{p-a01f149d.entry.js → p-27ccf34d.entry.js} +1 -1
- package/dist/vega/{p-913eb7f9.entry.js → p-29f9be26.entry.js} +1 -1
- package/dist/vega/{p-27003a81.entry.js → p-30dcf606.entry.js} +1 -1
- package/dist/vega/{p-89ab72e3.js → p-3c20ae84.js} +1 -1
- package/dist/vega/p-4172fb81.js +1 -0
- package/dist/vega/{p-45f696b4.js → p-419697c6.js} +1 -1
- package/dist/vega/p-427e4cee.entry.js +1 -0
- package/dist/vega/p-4604ed0e.entry.js +1 -0
- package/dist/vega/{p-8d283666.js → p-4ab3df00.js} +1 -1
- package/dist/vega/{p-72ecfd40.js → p-4e8fb53a.js} +1 -1
- package/dist/vega/p-50a3ae3d.js +1 -0
- package/dist/vega/{p-b847a143.entry.js → p-50b80d76.entry.js} +1 -1
- package/dist/vega/p-531ffb18.entry.js +1 -0
- package/dist/vega/p-53daeb45.entry.js +1 -0
- package/dist/vega/p-54fdd401.entry.js +1 -0
- package/dist/vega/{p-47ff95ba.entry.js → p-5741ecf0.entry.js} +1 -1
- package/dist/vega/{p-6cabdb36.js → p-58f8928a.js} +1 -1
- package/dist/vega/{p-4a32a6c0.entry.js → p-5c4cb804.entry.js} +1 -1
- package/dist/vega/{p-a46bc9f1.entry.js → p-5ce386c8.entry.js} +1 -1
- package/dist/vega/p-5f377954.js +1 -1
- package/dist/vega/{p-0079088b.entry.js → p-5fd5a538.entry.js} +1 -1
- package/dist/vega/{p-0969877b.entry.js → p-64f452fe.entry.js} +1 -1
- package/dist/vega/p-66759f4e.js +1 -0
- package/dist/vega/{p-bc2dd43d.js → p-6ea42854.js} +1 -1
- package/dist/vega/p-70f25341.entry.js +1 -0
- package/dist/vega/{p-ec1f2d21.entry.js → p-737bccb9.entry.js} +1 -1
- package/dist/vega/{p-bcb10ae3.entry.js → p-7503fe08.entry.js} +1 -1
- package/dist/vega/{p-46714da3.entry.js → p-7b0a4688.entry.js} +1 -1
- package/dist/vega/p-7def7b74.entry.js +1 -0
- package/dist/vega/{p-48517a5d.entry.js → p-7f5a85c6.entry.js} +1 -1
- package/dist/vega/p-825ae7c4.js +1 -0
- package/dist/vega/p-831c4144.entry.js +1 -0
- package/dist/vega/p-85dc08b4.entry.js +1 -0
- package/dist/vega/{p-a821bcf3.js → p-86782109.js} +1 -1
- package/dist/vega/p-87459914.js +1 -0
- package/dist/vega/{p-1971d980.entry.js → p-87a1fc77.entry.js} +1 -1
- package/dist/vega/p-89565247.entry.js +1 -0
- package/dist/vega/{p-7088ead9.entry.js → p-89e915e9.entry.js} +1 -1
- package/dist/vega/{p-81fbfb6d.entry.js → p-8aa7e56e.entry.js} +1 -1
- package/dist/vega/p-94263ece.entry.js +1 -0
- package/dist/vega/{p-d0007822.entry.js → p-9524e48a.entry.js} +1 -1
- package/dist/vega/{p-147e3cbd.entry.js → p-991b4717.entry.js} +1 -1
- package/dist/vega/{p-647025dd.entry.js → p-99b9b320.entry.js} +1 -1
- package/dist/vega/{p-aea89be5.entry.js → p-9ba14b7c.entry.js} +1 -1
- package/dist/vega/p-9cb79f8d.entry.js +1 -0
- package/dist/vega/p-9e3f52f0.entry.js +1 -0
- package/dist/vega/{p-6586e2a2.entry.js → p-a0e122a6.entry.js} +1 -1
- package/dist/vega/{p-9803042f.entry.js → p-b0fe6c0f.entry.js} +1 -1
- package/dist/vega/{p-b2bca332.entry.js → p-b518e1a0.entry.js} +1 -1
- package/dist/vega/p-b538e81a.entry.js +1 -0
- package/dist/vega/p-b824baf7.entry.js +1 -0
- package/dist/vega/{p-2fadef27.entry.js → p-b959b4d4.entry.js} +1 -1
- package/dist/vega/{p-54f17c2e.entry.js → p-bb4f0fa1.entry.js} +1 -1
- package/dist/vega/{p-2da83c2a.js → p-bbb39d6f.js} +1 -1
- package/dist/vega/{p-cfda64fd.entry.js → p-bc8fd0ee.entry.js} +1 -1
- package/dist/vega/p-bcaf8375.entry.js +1 -0
- package/dist/vega/{p-02d7d948.entry.js → p-bec90ff3.entry.js} +1 -1
- package/dist/vega/p-c6b94dde.entry.js +1 -0
- package/dist/vega/{p-c754b32c.js → p-ce6b62c4.js} +1 -1
- package/dist/vega/{p-5e34ea25.entry.js → p-d00fbc11.entry.js} +1 -1
- package/dist/vega/{p-10a40dfb.entry.js → p-d2a2af2c.entry.js} +1 -1
- package/dist/vega/p-d64b20c2.js +1 -0
- package/dist/vega/p-da779940.entry.js +1 -0
- package/dist/vega/{p-a7dcb2a3.js → p-db910162.js} +1 -1
- package/dist/vega/{p-6f81fe1e.js → p-e1a2a701.js} +1 -1
- package/dist/vega/p-e3694aa5.entry.js +1 -0
- package/dist/vega/p-e7318c4c.entry.js +1 -0
- package/dist/vega/{p-a5c39ba2.entry.js → p-e8fc027e.entry.js} +1 -1
- package/dist/vega/{p-6a830bc5.entry.js → p-e92ecb78.entry.js} +1 -1
- package/dist/vega/p-e969c3f4.entry.js +1 -0
- package/dist/vega/{p-61eb7f32.entry.js → p-ec8b7f01.entry.js} +1 -1
- package/dist/vega/p-eed9bda2.entry.js +1 -0
- package/dist/vega/p-f4c54c98.entry.js +1 -0
- package/dist/vega/{p-5160a6b9.entry.js → p-f5fc80bc.entry.js} +1 -1
- package/dist/vega/p-f67be7ef.js +1 -0
- package/dist/vega/{p-5e3a15a1.js → p-f9fafc55.js} +1 -1
- package/dist/vega/{p-27e56c67.entry.js → p-fc21fb2d.entry.js} +1 -1
- package/dist/vega/p-fed9220b.entry.js +1 -0
- package/dist/vega/vega.esm.js +1 -1
- package/package.json +2 -1
- package/dist/cjs/string-21427167.js +0 -13
- package/dist/esm/string-be824360.js +0 -11
- package/dist/vega/p-06adb37e.entry.js +0 -1
- package/dist/vega/p-06c5fe97.entry.js +0 -1
- package/dist/vega/p-0bb29d98.js +0 -1
- package/dist/vega/p-0ed7a098.entry.js +0 -1
- package/dist/vega/p-0f6b3a89.entry.js +0 -1
- package/dist/vega/p-136f665b.entry.js +0 -1
- package/dist/vega/p-1503f791.js +0 -1
- package/dist/vega/p-16fd7c32.js +0 -1
- package/dist/vega/p-1a263af1.entry.js +0 -1
- package/dist/vega/p-1af4771a.entry.js +0 -1
- package/dist/vega/p-1c298d5a.js +0 -2
- package/dist/vega/p-1c63afd2.entry.js +0 -1
- package/dist/vega/p-1e05b7b4.entry.js +0 -1
- package/dist/vega/p-1ea863a6.entry.js +0 -1
- package/dist/vega/p-271b30b9.entry.js +0 -1
- package/dist/vega/p-2d1d4f33.entry.js +0 -1
- package/dist/vega/p-353b3ded.entry.js +0 -1
- package/dist/vega/p-44b0a005.js +0 -1
- package/dist/vega/p-4e76904e.entry.js +0 -1
- package/dist/vega/p-4ec0d36f.entry.js +0 -1
- package/dist/vega/p-5c954088.entry.js +0 -1
- package/dist/vega/p-646a9198.entry.js +0 -1
- package/dist/vega/p-6d7d923b.js +0 -1
- package/dist/vega/p-6e898779.js +0 -1
- package/dist/vega/p-77492977.entry.js +0 -1
- package/dist/vega/p-804f71b3.js +0 -1
- package/dist/vega/p-8789d34d.entry.js +0 -1
- package/dist/vega/p-8813c0ac.entry.js +0 -1
- package/dist/vega/p-8a85c7af.entry.js +0 -1
- package/dist/vega/p-8ba43640.entry.js +0 -1
- package/dist/vega/p-98c64d77.entry.js +0 -1
- package/dist/vega/p-9f3539a4.entry.js +0 -1
- package/dist/vega/p-b42aea55.entry.js +0 -1
- package/dist/vega/p-b5d70ee0.entry.js +0 -1
- package/dist/vega/p-bf1894ec.js +0 -1
- package/dist/vega/p-bfb344e1.entry.js +0 -1
- package/dist/vega/p-c9a4e79a.entry.js +0 -1
- package/dist/vega/p-dbc82247.js +0 -1
- package/dist/vega/p-e2e36d2b.entry.js +0 -1
- package/dist/vega/p-ef8272b5.entry.js +0 -1
- package/dist/vega/p-f4c1d961.js +0 -1
- package/dist/vega/p-f5279deb.entry.js +0 -1
- package/dist/vega/p-f8033cd3.entry.js +0 -1
- package/dist/vega/p-fe63bd50.entry.js +0 -1
|
@@ -4,12 +4,13 @@ var __decorate = (this && this.__decorate) || function (decorators, target, key,
|
|
|
4
4
|
else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
|
|
5
5
|
return c > 3 && r && Object.defineProperty(target, key, r), r;
|
|
6
6
|
};
|
|
7
|
-
import { h, Host } from '@stencil/core';
|
|
7
|
+
import { Fragment, h, Host } from '@stencil/core';
|
|
8
8
|
import { VegaSlimmer, MapToComponentField, MapToComponentMethod } from 'vega-slimmer/core';
|
|
9
9
|
import { createEnterKeyHandlerToTriggerClick } from '../../../../utils/accessibility';
|
|
10
10
|
import ChangeManager from '../../../../helpers/change-manager/change-manager';
|
|
11
11
|
import domNodeSubjectFactory from '../../../../helpers/change-manager/subject/dom-node-subject/dom-node-subject-factory';
|
|
12
12
|
import { VegaInternalComponentDidRender } from '../../../../helpers/event-manager/event-id/vega-internal-event-id';
|
|
13
|
+
import CodeFormatter from '../../../../helpers/code-format/code-formatter';
|
|
13
14
|
export class VegaRichTextEditorRenderer extends VegaSlimmer {
|
|
14
15
|
constructor() {
|
|
15
16
|
super(...arguments);
|
|
@@ -20,6 +21,7 @@ export class VegaRichTextEditorRenderer extends VegaSlimmer {
|
|
|
20
21
|
return (h("div", { class: {
|
|
21
22
|
'rich-text-editor-container': true,
|
|
22
23
|
'disabled': this.disabled,
|
|
24
|
+
'vega-hidden': this.sourceView,
|
|
23
25
|
}, style: { minHeight: `${this.rows * 24}px` }, onClick: this.richTextContentFocus, role: "textbox", tabIndex: !this.disabled ? -1 : 0, onKeyDown: createEnterKeyHandlerToTriggerClick(), ref: (node) => (this.richTextContainerRef = node) },
|
|
24
26
|
h("vega-rich-text-content", { ref: (ref) => (this.richTextContentRef = ref), content: this.value }),
|
|
25
27
|
this.renderCharacterCounter()));
|
|
@@ -38,6 +40,16 @@ export class VegaRichTextEditorRenderer extends VegaSlimmer {
|
|
|
38
40
|
this.richTextContentFocus = () => {
|
|
39
41
|
void this.richTextContentRef.vegaFocus();
|
|
40
42
|
};
|
|
43
|
+
this.renderSourceViewContent = () => {
|
|
44
|
+
if (this.toolbarItems && !this.toolbarItems.flat().includes('sourceEdit'))
|
|
45
|
+
return;
|
|
46
|
+
const sourceViewValue = this.value.toHtml();
|
|
47
|
+
return (h("div", { class: {
|
|
48
|
+
'source-view-container': true,
|
|
49
|
+
'vega-hidden': !this.sourceView,
|
|
50
|
+
} },
|
|
51
|
+
h("vega-code-block", { ref: (ref) => (this.sourceCodeBlockRef = ref), disabled: this.disabled, value: { language: 'html', code: CodeFormatter.format(sourceViewValue) } })));
|
|
52
|
+
};
|
|
41
53
|
}
|
|
42
54
|
/**
|
|
43
55
|
* Component lifecycle - [componentDidRender]{@link VegaRichTextEditor.componentDidRender}
|
|
@@ -56,7 +68,7 @@ export class VegaRichTextEditorRenderer extends VegaSlimmer {
|
|
|
56
68
|
/**
|
|
57
69
|
* Returns the HTMLElement reference of the rich text content area.
|
|
58
70
|
*
|
|
59
|
-
* @returns {HTMLVegaRichTextContentElement} An HTMLVegaRichTextContentElement is being returned.
|
|
71
|
+
* @returns {Nullable<HTMLVegaRichTextContentElement>} An HTMLVegaRichTextContentElement is being returned.
|
|
60
72
|
*/
|
|
61
73
|
getRichTextContentRef() {
|
|
62
74
|
return this.richTextContentRef;
|
|
@@ -79,6 +91,11 @@ export class VegaRichTextEditorRenderer extends VegaSlimmer {
|
|
|
79
91
|
return this.richTextContentRef.shadowRoot.querySelector('.rich-text-content');
|
|
80
92
|
}
|
|
81
93
|
}
|
|
94
|
+
getSourceCode() {
|
|
95
|
+
if (this.sourceCodeBlockRef) {
|
|
96
|
+
return this.sourceCodeBlockRef.value.code;
|
|
97
|
+
}
|
|
98
|
+
}
|
|
82
99
|
render() {
|
|
83
100
|
return h(Host, null, this.renderRichTextEditor());
|
|
84
101
|
}
|
|
@@ -87,12 +104,17 @@ export class VegaRichTextEditorRenderer extends VegaSlimmer {
|
|
|
87
104
|
this.renderLabel(),
|
|
88
105
|
this.hint && this.renderHintMessage(),
|
|
89
106
|
this.toolbarRenderer.render(),
|
|
90
|
-
this.
|
|
107
|
+
this.renderContent(),
|
|
91
108
|
this.renderErrorMessage()));
|
|
92
109
|
}
|
|
93
110
|
renderLabel() {
|
|
94
111
|
return (this.label && (h("vega-field-label", { onClick: this.richTextContentFocus, isFieldRequired: this.required, disabled: this.disabled, label: this.label })));
|
|
95
112
|
}
|
|
113
|
+
renderContent() {
|
|
114
|
+
return (h(Fragment, null,
|
|
115
|
+
this.renderTextContent(),
|
|
116
|
+
this.renderSourceViewContent()));
|
|
117
|
+
}
|
|
96
118
|
}
|
|
97
119
|
__decorate([
|
|
98
120
|
MapToComponentField()
|
|
@@ -121,6 +143,12 @@ __decorate([
|
|
|
121
143
|
__decorate([
|
|
122
144
|
MapToComponentField()
|
|
123
145
|
], VegaRichTextEditorRenderer.prototype, "value", void 0);
|
|
146
|
+
__decorate([
|
|
147
|
+
MapToComponentField()
|
|
148
|
+
], VegaRichTextEditorRenderer.prototype, "sourceView", void 0);
|
|
149
|
+
__decorate([
|
|
150
|
+
MapToComponentField()
|
|
151
|
+
], VegaRichTextEditorRenderer.prototype, "toolbarItems", void 0);
|
|
124
152
|
__decorate([
|
|
125
153
|
MapToComponentMethod('componentDidRender')
|
|
126
154
|
], VegaRichTextEditorRenderer.prototype, "componentDidRender", null);
|
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
import { ActionHandleStrategyRegistry } from '../../../dto/action-handle-strategies/action-handle-strategy-registry';
|
|
2
|
+
import { CodeNodeSetSelectionRangeAnnotationStrategy } from '../../../dto/action-handle-strategies/apply-annotation-strategies/code-node-set-selection-range-strategy';
|
|
3
|
+
import { BlockRemoveNodeStrategy } from '../../../dto/action-handle-strategies/modify-content-strategies/block-remove-node-strategy';
|
|
4
|
+
import { CodeBlockRemoveSelfStrategy } from '../../../dto/action-handle-strategies/modify-content-strategies/code-block-remove-self-strategy';
|
|
5
|
+
import { SwitchOutFromCodeBlockStrategy } from '../../../dto/action-handle-strategies/modify-content-strategies/switch-out-from-code-block-strategy';
|
|
6
|
+
import { UpdateCodeBlockStrategy } from '../../../dto/action-handle-strategies/modify-content-strategies/update-code-block-strategy';
|
|
7
|
+
import { ModifyContentActionType } from '../../../dto/actions/modify-content-action.abstract';
|
|
8
|
+
import { SelectionChangeAction } from '../../../dto/actions/selection-change-action';
|
|
9
|
+
import { RTECodeBlock } from '../../../dto/blocks/code-block';
|
|
10
|
+
import { RTECodeBlockNode } from '../../../dto/nodes/code-block-node';
|
|
11
|
+
test('RTECodeBlock action strategy should register properly', () => {
|
|
12
|
+
expect(ActionHandleStrategyRegistry.get(ModifyContentActionType.DELETE_CODE_BLOCK, RTECodeBlock.name) instanceof CodeBlockRemoveSelfStrategy).toBeTruthy();
|
|
13
|
+
expect(ActionHandleStrategyRegistry.get(ModifyContentActionType.SWITCH_OUT_FROM_CODE_BLOCK, RTECodeBlock.name) instanceof SwitchOutFromCodeBlockStrategy).toBeTruthy();
|
|
14
|
+
expect(ActionHandleStrategyRegistry.get(ModifyContentActionType.DELETE_CHILD, RTECodeBlock.name) instanceof
|
|
15
|
+
BlockRemoveNodeStrategy).toBeTruthy();
|
|
16
|
+
});
|
|
17
|
+
test('RTECodeBlockNode action strategy should register properly', () => {
|
|
18
|
+
expect(ActionHandleStrategyRegistry.get(ModifyContentActionType.UPDATE_CODE_BLOCK, RTECodeBlockNode.name) instanceof UpdateCodeBlockStrategy).toBeTruthy();
|
|
19
|
+
expect(ActionHandleStrategyRegistry.get(SelectionChangeAction.name, RTECodeBlockNode.name) instanceof
|
|
20
|
+
CodeNodeSetSelectionRangeAnnotationStrategy).toBeTruthy();
|
|
21
|
+
});
|
|
@@ -3,6 +3,7 @@ import { BlockAppendBlocksStrategy } from '../../../dto/action-handle-strategies
|
|
|
3
3
|
import { BlockInsertBlocksAfterStrategy } from '../../../dto/action-handle-strategies/modify-content-strategies/block-insert-blocks-after-strategy';
|
|
4
4
|
import { BlockInsertBlocksBeforeStrategy } from '../../../dto/action-handle-strategies/modify-content-strategies/block-insert-blocks-before-strategy';
|
|
5
5
|
import { BlockRemoveChildBlockStrategy } from '../../../dto/action-handle-strategies/modify-content-strategies/block-remove-child-block-strategy';
|
|
6
|
+
import { BlockTransformToCodeBlockStrategy } from '../../../dto/action-handle-strategies/modify-content-strategies/block-transform-to-code-block-strategy';
|
|
6
7
|
import { ModifyContentActionType } from '../../../dto/actions/modify-content-action.abstract';
|
|
7
8
|
import { VegaRTEContent } from '../../../dto/content-state';
|
|
8
9
|
test('VegaRTEContent action strategy should register properly', () => {
|
|
@@ -11,4 +12,5 @@ test('VegaRTEContent action strategy should register properly', () => {
|
|
|
11
12
|
expect(ActionHandleStrategyRegistry.get(ModifyContentActionType.APPEND_CHILD_NODES, VegaRTEContent.name) instanceof BlockAppendBlocksStrategy).toBeTruthy();
|
|
12
13
|
expect(ActionHandleStrategyRegistry.get(ModifyContentActionType.INSERT_BLOCKS_BEFORE, VegaRTEContent.name) instanceof BlockInsertBlocksBeforeStrategy).toBeTruthy();
|
|
13
14
|
expect(ActionHandleStrategyRegistry.get(ModifyContentActionType.INSERT_BLOCKS_AFTER, VegaRTEContent.name) instanceof BlockInsertBlocksAfterStrategy).toBeTruthy();
|
|
15
|
+
expect(ActionHandleStrategyRegistry.get(ModifyContentActionType.TRANSFORM_TO_CODE_BLOCK, VegaRTEContent.name) instanceof BlockTransformToCodeBlockStrategy).toBeTruthy();
|
|
14
16
|
});
|
|
@@ -1,4 +1,5 @@
|
|
|
1
1
|
import { ActionHandleStrategyRegistry } from '../../../dto/action-handle-strategies/action-handle-strategy-registry';
|
|
2
|
+
import { BlockUpdateHorizontalAlignmentStrategy } from '../../../dto/action-handle-strategies/apply-annotation-strategies/block-update-horizontal-alignment-strategy';
|
|
2
3
|
import { BlockAppendNodesStrategy } from '../../../dto/action-handle-strategies/modify-content-strategies/block-append-nodes-strategy';
|
|
3
4
|
import { BlockDeleteImageStrategy } from '../../../dto/action-handle-strategies/modify-content-strategies/block-delete-image-strategy';
|
|
4
5
|
import { BlockInsertNodesAfterNodeStrategy } from '../../../dto/action-handle-strategies/modify-content-strategies/block-insert-nodes-after-node-strategy';
|
|
@@ -11,6 +12,7 @@ import { ImageBlockInsertImageStrategy } from '../../../dto/action-handle-strate
|
|
|
11
12
|
import { ImageInsertLineBreakStrategy } from '../../../dto/action-handle-strategies/modify-content-strategies/image-insert-line-break-strategy';
|
|
12
13
|
import { ImageInsertLineBreakWithBlocksStrategy } from '../../../dto/action-handle-strategies/modify-content-strategies/image-insert-line-break-with-blocks-strategy';
|
|
13
14
|
import { ImageInsertNewParagraphStrategy } from '../../../dto/action-handle-strategies/modify-content-strategies/image-insert-new-paragraph-strategy';
|
|
15
|
+
import { HorizontalAlignmentAnnotationAction } from '../../../dto/actions/horizontal-alignment-annotation-action';
|
|
14
16
|
import { ModifyContentActionType } from '../../../dto/actions/modify-content-action.abstract';
|
|
15
17
|
import { RTEImageBlock } from '../../../dto/blocks/image-block';
|
|
16
18
|
test('RTEImageBlock should register action handle strategy properly', () => {
|
|
@@ -27,4 +29,5 @@ test('RTEImageBlock should register action handle strategy properly', () => {
|
|
|
27
29
|
expect(ActionHandleStrategyRegistry.get(ModifyContentActionType.INSERT_IMAGE_TO_BLOCK, RTEImageBlock.name) instanceof ImageBlockInsertImageStrategy).toBeTruthy();
|
|
28
30
|
expect(ActionHandleStrategyRegistry.get(ModifyContentActionType.INSERT_NODES_BEFORE, RTEImageBlock.name) instanceof BlockInsertNodesBeforeNodeStrategy).toBeTruthy();
|
|
29
31
|
expect(ActionHandleStrategyRegistry.get(ModifyContentActionType.INSERT_NODES_AFTER, RTEImageBlock.name) instanceof BlockInsertNodesAfterNodeStrategy).toBeTruthy();
|
|
32
|
+
expect(ActionHandleStrategyRegistry.get(HorizontalAlignmentAnnotationAction.name, RTEImageBlock.name) instanceof BlockUpdateHorizontalAlignmentStrategy).toBeTruthy();
|
|
30
33
|
});
|
|
@@ -18,13 +18,22 @@ import { BlockUpdateTextStyleStrategy } from '../../../dto/action-handle-strateg
|
|
|
18
18
|
import { LinkGroupAnnotationAction } from '../../../dto/actions/link-group-annotation-action';
|
|
19
19
|
import { TextStyleAnnotationAction } from '../../../dto/actions/text-style-annotation-action';
|
|
20
20
|
import { InternalAnnotationTypeEnum } from '../../../dto/annotations/annotation.abstract';
|
|
21
|
+
import { HorizontalAlignmentAnnotationAction } from '../../../dto/actions/horizontal-alignment-annotation-action';
|
|
22
|
+
import { BlockUpdateHorizontalAlignmentStrategy } from '../../../dto/action-handle-strategies/apply-annotation-strategies/block-update-horizontal-alignment-strategy';
|
|
23
|
+
import { IndentAnnotationAction } from '../../../dto/actions/indent-annotation-action';
|
|
24
|
+
import { BlockUpdateIndentStrategy } from '../../../dto/action-handle-strategies/apply-annotation-strategies/block-update-indent-strategy';
|
|
25
|
+
import { CustomStyleAnnotationAction } from '../../../dto/actions/custom-style-annotation-action';
|
|
26
|
+
import { CommonAnnotationTypeEnum } from '../../../dto/annotations/common-annotation.abstract';
|
|
21
27
|
test('RTETextBlock annotation strategy should register properly', () => {
|
|
22
28
|
expect(ActionHandleStrategyRegistry.get(TextStyleAnnotationAction.name, RTETextBlock.name) instanceof
|
|
23
29
|
BlockUpdateTextStyleStrategy).toBeTruthy();
|
|
24
30
|
expect(ActionHandleStrategyRegistry.get(LinkGroupAnnotationAction.name, RTETextBlock.name) instanceof
|
|
25
31
|
BlockUpdateLinkGroupStrategy).toBeTruthy();
|
|
32
|
+
expect(ActionHandleStrategyRegistry.get(HorizontalAlignmentAnnotationAction.name, RTETextBlock.name) instanceof BlockUpdateHorizontalAlignmentStrategy).toBeTruthy();
|
|
33
|
+
expect(ActionHandleStrategyRegistry.get(IndentAnnotationAction.name, RTETextBlock.name) instanceof
|
|
34
|
+
BlockUpdateIndentStrategy).toBeTruthy();
|
|
26
35
|
});
|
|
27
|
-
test('RTETextBlock apply annotation action should work properly', () => {
|
|
36
|
+
test.only('RTETextBlock apply annotation action should work properly', () => {
|
|
28
37
|
const textBlock = RTETextBlock.from({
|
|
29
38
|
id: '1',
|
|
30
39
|
type: 'subtitle',
|
|
@@ -37,6 +46,19 @@ test('RTETextBlock apply annotation action should work properly', () => {
|
|
|
37
46
|
expect(textBlock.annotationMap.has(InternalAnnotationTypeEnum.LINK_GROUP)).toBeFalsy();
|
|
38
47
|
textBlock.apply(new LinkGroupAnnotationAction('1', textBlock.nodes));
|
|
39
48
|
expect(textBlock.annotationMap.has(InternalAnnotationTypeEnum.LINK_GROUP)).toBeTruthy();
|
|
49
|
+
expect(textBlock.annotationMap.has(CommonAnnotationTypeEnum.CUSTOM_STYLE)).toBeFalsy();
|
|
50
|
+
textBlock.apply(new CustomStyleAnnotationAction({ textAlign: 'center', marginLeft: '20px' }));
|
|
51
|
+
expect(textBlock.annotationMap.has(CommonAnnotationTypeEnum.CUSTOM_STYLE)).toBeTruthy();
|
|
52
|
+
textBlock.apply(new HorizontalAlignmentAnnotationAction('left'));
|
|
53
|
+
expect(textBlock.annotationMap.get(CommonAnnotationTypeEnum.CUSTOM_STYLE).toJSON()).toEqual({
|
|
54
|
+
customStyle: {
|
|
55
|
+
marginLeft: '20px',
|
|
56
|
+
},
|
|
57
|
+
});
|
|
58
|
+
textBlock.apply(new IndentAnnotationAction(1));
|
|
59
|
+
expect(textBlock.annotationMap.get(CommonAnnotationTypeEnum.CUSTOM_STYLE).toJSON()).toEqual({
|
|
60
|
+
customStyle: {},
|
|
61
|
+
});
|
|
40
62
|
});
|
|
41
63
|
test('RTETextBlock should register action handle strategy properly', () => {
|
|
42
64
|
expect(ActionHandleStrategyRegistry.get(ModifyContentActionType.DELETE_CHILD, RTETextBlock.name) instanceof
|
|
@@ -11,93 +11,223 @@ import { CodeAnnotation } from '../../dto/annotations/code-annotation';
|
|
|
11
11
|
import { TextColorAnnotation } from '../../dto/annotations/text-color-annotation';
|
|
12
12
|
import { IndentAnnotation } from '../../dto/annotations/indent-annotation';
|
|
13
13
|
import { LinkAnnotation } from '../../dto/annotations/link-annotation';
|
|
14
|
+
import { LinkGroupAnnotation } from '../../dto/annotations/link-group-annotation';
|
|
15
|
+
import { ListAnnotation } from '../../dto/annotations/list-annotation';
|
|
16
|
+
import { CustomAttributeAnnotation } from '../../dto/annotations/custom-attribute-annotation';
|
|
17
|
+
import { CustomClassAnnotation } from '../../dto/annotations/custom-class-annotation';
|
|
18
|
+
import { CustomStyleAnnotation } from '../../dto/annotations/custom-style-annotation';
|
|
14
19
|
describe('annotations', () => {
|
|
15
20
|
it('bold annotation', () => {
|
|
16
|
-
expect(new BoldAnnotation(true).
|
|
17
|
-
|
|
21
|
+
expect(new BoldAnnotation(true).renderStyle({ standalone: true })).toEqual({
|
|
22
|
+
fontWeight: '700',
|
|
18
23
|
});
|
|
19
|
-
expect(new BoldAnnotation(false).
|
|
24
|
+
expect(new BoldAnnotation(false).renderStyle({ standalone: true })).toEqual(null);
|
|
25
|
+
expect(new BoldAnnotation(true).renderStyle()).toEqual(null);
|
|
26
|
+
expect(new BoldAnnotation(false).renderStyle()).toEqual(null);
|
|
27
|
+
expect(new BoldAnnotation(true).renderClass({ standalone: true })).toEqual(null);
|
|
28
|
+
expect(new BoldAnnotation(false).renderClass({ standalone: true })).toEqual(null);
|
|
29
|
+
expect(new BoldAnnotation(true).renderClass()).toEqual('v-rte--bold');
|
|
30
|
+
expect(new BoldAnnotation(false).renderClass()).toEqual(null);
|
|
20
31
|
});
|
|
21
32
|
it('italic annotation', () => {
|
|
22
|
-
expect(new ItalicAnnotation(true).
|
|
23
|
-
|
|
33
|
+
expect(new ItalicAnnotation(true).renderStyle({ standalone: true })).toEqual({
|
|
34
|
+
fontStyle: 'italic',
|
|
24
35
|
});
|
|
25
|
-
expect(new ItalicAnnotation(false).
|
|
36
|
+
expect(new ItalicAnnotation(false).renderStyle({ standalone: true })).toEqual(null);
|
|
37
|
+
expect(new ItalicAnnotation(true).renderStyle()).toEqual(null);
|
|
38
|
+
expect(new ItalicAnnotation(false).renderStyle()).toEqual(null);
|
|
39
|
+
expect(new ItalicAnnotation(true).renderClass({ standalone: true })).toEqual(null);
|
|
40
|
+
expect(new ItalicAnnotation(false).renderClass({ standalone: true })).toEqual(null);
|
|
41
|
+
expect(new ItalicAnnotation(true).renderClass()).toEqual('v-rte--italic');
|
|
42
|
+
expect(new ItalicAnnotation(false).renderClass()).toEqual(null);
|
|
26
43
|
});
|
|
27
44
|
it('text style annotation', () => {
|
|
28
|
-
expect(new TextStyleAnnotation('paragraph').
|
|
45
|
+
expect(new TextStyleAnnotation('paragraph').renderStyle({ standalone: true })).toEqual({
|
|
29
46
|
fontFamily: 'Inter',
|
|
30
47
|
fontSize: '16px',
|
|
31
48
|
fontWeight: '500',
|
|
32
49
|
lineHeight: '22px',
|
|
50
|
+
marginBottom: '0px',
|
|
51
|
+
marginTop: '0px',
|
|
33
52
|
});
|
|
34
|
-
expect(new TextStyleAnnotation('title').
|
|
53
|
+
expect(new TextStyleAnnotation('title').renderStyle({ standalone: true })).toEqual({
|
|
35
54
|
fontFamily: 'Inter',
|
|
36
55
|
fontSize: '36px',
|
|
37
56
|
fontWeight: '500',
|
|
38
57
|
lineHeight: '40px',
|
|
39
58
|
});
|
|
40
|
-
expect(new TextStyleAnnotation('subtitle').
|
|
59
|
+
expect(new TextStyleAnnotation('subtitle').renderStyle({ standalone: true })).toEqual({
|
|
41
60
|
fontFamily: 'Inter',
|
|
42
61
|
fontSize: '28px',
|
|
43
62
|
fontWeight: '500',
|
|
44
63
|
lineHeight: '32px',
|
|
45
64
|
});
|
|
46
|
-
expect(new TextStyleAnnotation('heading-1').
|
|
65
|
+
expect(new TextStyleAnnotation('heading-1').renderStyle({ standalone: true })).toEqual({
|
|
47
66
|
fontFamily: 'Inter',
|
|
48
67
|
fontSize: '22px',
|
|
49
68
|
fontWeight: '500',
|
|
50
69
|
lineHeight: '24px',
|
|
70
|
+
marginBottom: '0px',
|
|
71
|
+
marginTop: '0px',
|
|
51
72
|
});
|
|
52
|
-
expect(new TextStyleAnnotation('heading-2').
|
|
73
|
+
expect(new TextStyleAnnotation('heading-2').renderStyle({ standalone: true })).toEqual({
|
|
53
74
|
fontFamily: 'Inter',
|
|
54
75
|
fontSize: '20px',
|
|
55
76
|
fontWeight: '500',
|
|
56
77
|
lineHeight: '24px',
|
|
78
|
+
marginBottom: '0px',
|
|
79
|
+
marginTop: '0px',
|
|
57
80
|
});
|
|
58
|
-
expect(new TextStyleAnnotation('heading-3').
|
|
81
|
+
expect(new TextStyleAnnotation('heading-3').renderStyle({ standalone: true })).toEqual({
|
|
59
82
|
fontFamily: 'Inter',
|
|
60
83
|
fontSize: '18px',
|
|
61
84
|
fontWeight: '500',
|
|
62
85
|
lineHeight: '22px',
|
|
86
|
+
marginBottom: '0px',
|
|
87
|
+
marginTop: '0px',
|
|
63
88
|
});
|
|
89
|
+
expect(new TextStyleAnnotation('heading-4').renderStyle({ standalone: true })).toEqual({
|
|
90
|
+
fontFamily: 'Inter',
|
|
91
|
+
fontSize: '16px',
|
|
92
|
+
fontWeight: '500',
|
|
93
|
+
lineHeight: '22px',
|
|
94
|
+
marginBottom: '0px',
|
|
95
|
+
marginTop: '0px',
|
|
96
|
+
});
|
|
97
|
+
expect(new TextStyleAnnotation('heading-5').renderStyle({ standalone: true })).toEqual({
|
|
98
|
+
fontFamily: 'Inter',
|
|
99
|
+
fontSize: '14px',
|
|
100
|
+
fontWeight: '500',
|
|
101
|
+
lineHeight: '22px',
|
|
102
|
+
marginBottom: '0px',
|
|
103
|
+
marginTop: '0px',
|
|
104
|
+
});
|
|
105
|
+
expect(new TextStyleAnnotation('heading-6').renderStyle({ standalone: true })).toEqual({
|
|
106
|
+
fontFamily: 'Inter',
|
|
107
|
+
fontSize: '12px',
|
|
108
|
+
fontWeight: '500',
|
|
109
|
+
lineHeight: '22px',
|
|
110
|
+
marginBottom: '0px',
|
|
111
|
+
marginTop: '0px',
|
|
112
|
+
});
|
|
113
|
+
expect(new TextStyleAnnotation('paragraph').renderStyle()).toEqual(null);
|
|
114
|
+
expect(new TextStyleAnnotation('title').renderStyle()).toEqual(null);
|
|
115
|
+
expect(new TextStyleAnnotation('subtitle').renderStyle()).toEqual(null);
|
|
116
|
+
expect(new TextStyleAnnotation('heading-1').renderStyle()).toEqual(null);
|
|
117
|
+
expect(new TextStyleAnnotation('heading-2').renderStyle()).toEqual(null);
|
|
118
|
+
expect(new TextStyleAnnotation('heading-3').renderStyle()).toEqual(null);
|
|
119
|
+
expect(new TextStyleAnnotation('heading-4').renderStyle()).toEqual(null);
|
|
120
|
+
expect(new TextStyleAnnotation('heading-5').renderStyle()).toEqual(null);
|
|
121
|
+
expect(new TextStyleAnnotation('heading-6').renderStyle()).toEqual(null);
|
|
122
|
+
expect(new TextStyleAnnotation('paragraph').renderClass({ standalone: true })).toEqual(null);
|
|
123
|
+
expect(new TextStyleAnnotation('title').renderClass({ standalone: true })).toEqual(null);
|
|
124
|
+
expect(new TextStyleAnnotation('subtitle').renderClass({ standalone: true })).toEqual(null);
|
|
125
|
+
expect(new TextStyleAnnotation('heading-1').renderClass({ standalone: true })).toEqual(null);
|
|
126
|
+
expect(new TextStyleAnnotation('heading-2').renderClass({ standalone: true })).toEqual(null);
|
|
127
|
+
expect(new TextStyleAnnotation('heading-3').renderClass({ standalone: true })).toEqual(null);
|
|
128
|
+
expect(new TextStyleAnnotation('heading-4').renderClass({ standalone: true })).toEqual(null);
|
|
129
|
+
expect(new TextStyleAnnotation('heading-5').renderClass({ standalone: true })).toEqual(null);
|
|
130
|
+
expect(new TextStyleAnnotation('heading-6').renderClass({ standalone: true })).toEqual(null);
|
|
131
|
+
expect(new TextStyleAnnotation('paragraph').renderClass()).toEqual('v-rte--text-style-paragraph');
|
|
132
|
+
expect(new TextStyleAnnotation('title').renderClass()).toEqual('v-rte--text-style-title');
|
|
133
|
+
expect(new TextStyleAnnotation('subtitle').renderClass()).toEqual('v-rte--text-style-subtitle');
|
|
134
|
+
expect(new TextStyleAnnotation('heading-1').renderClass()).toEqual('v-rte--text-style-heading-1');
|
|
135
|
+
expect(new TextStyleAnnotation('heading-2').renderClass()).toEqual('v-rte--text-style-heading-2');
|
|
136
|
+
expect(new TextStyleAnnotation('heading-3').renderClass()).toEqual('v-rte--text-style-heading-3');
|
|
137
|
+
expect(new TextStyleAnnotation('heading-4').renderClass()).toEqual('v-rte--text-style-heading-4');
|
|
138
|
+
expect(new TextStyleAnnotation('heading-5').renderClass()).toEqual('v-rte--text-style-heading-5');
|
|
139
|
+
expect(new TextStyleAnnotation('heading-6').renderClass()).toEqual('v-rte--text-style-heading-6');
|
|
64
140
|
});
|
|
65
141
|
it('selection range annotation', () => {
|
|
66
142
|
expect(new SelectionRangeAnnotation({})).toBeDefined();
|
|
67
143
|
});
|
|
68
144
|
it('image annotation', () => {
|
|
69
|
-
expect(new ImageAnnotation('sm', 'mock-alt').
|
|
70
|
-
|
|
71
|
-
|
|
145
|
+
expect(new ImageAnnotation('sm', 'mock-alt').renderStyle({ standalone: true })).toEqual({
|
|
146
|
+
verticalAlign: 'bottom',
|
|
147
|
+
width: '25%',
|
|
148
|
+
});
|
|
149
|
+
expect(new ImageAnnotation('md', 'mock-alt').renderStyle({ standalone: true })).toEqual({
|
|
150
|
+
verticalAlign: 'bottom',
|
|
151
|
+
width: '50%',
|
|
152
|
+
});
|
|
153
|
+
expect(new ImageAnnotation('lg', 'mock-alt').renderStyle({ standalone: true })).toEqual({
|
|
154
|
+
verticalAlign: 'bottom',
|
|
155
|
+
width: '100%',
|
|
156
|
+
});
|
|
157
|
+
expect(new ImageAnnotation('sm', 'mock-alt').renderStyle()).toEqual(null);
|
|
158
|
+
expect(new ImageAnnotation('md', 'mock-alt').renderStyle()).toEqual(null);
|
|
159
|
+
expect(new ImageAnnotation('lg', 'mock-alt').renderStyle()).toEqual(null);
|
|
160
|
+
expect(new ImageAnnotation('sm', 'mock-alt').renderClass({ standalone: true })).toEqual(null);
|
|
161
|
+
expect(new ImageAnnotation('md', 'mock-alt').renderClass({ standalone: true })).toEqual(null);
|
|
162
|
+
expect(new ImageAnnotation('lg', 'mock-alt').renderClass({ standalone: true })).toEqual(null);
|
|
163
|
+
expect(new ImageAnnotation('sm', 'mock-alt').renderClass()).toEqual('v-rte--image-size-sm');
|
|
164
|
+
expect(new ImageAnnotation('md', 'mock-alt').renderClass()).toEqual('v-rte--image-size-md');
|
|
165
|
+
expect(new ImageAnnotation('lg', 'mock-alt').renderClass()).toEqual('v-rte--image-size-lg');
|
|
72
166
|
expect(new ImageAnnotation('md', 'mock-alt').toJSON()).toEqual({ size: 'md', alt: 'mock-alt' });
|
|
73
167
|
expect(new ImageAnnotation(null, null).toJSON()).toEqual({ size: null });
|
|
74
168
|
expect(new ImageAnnotation(undefined, 'test').toJSON()).toEqual({ size: 'md', alt: 'test' });
|
|
75
169
|
});
|
|
76
170
|
it('underline annotation ', () => {
|
|
77
|
-
expect(new UnderlineAnnotation(true).
|
|
171
|
+
expect(new UnderlineAnnotation(true).renderStyle()).toEqual(null);
|
|
172
|
+
expect(new UnderlineAnnotation(false).renderStyle()).toEqual(null);
|
|
78
173
|
expect(new UnderlineAnnotation(true).renderClass()).toEqual('v-rte--underline');
|
|
79
174
|
expect(new UnderlineAnnotation(false).renderClass()).toEqual(null);
|
|
175
|
+
expect(new UnderlineAnnotation(true).renderStyle({ standalone: true })).toEqual({
|
|
176
|
+
textDecoration: 'underline',
|
|
177
|
+
});
|
|
178
|
+
expect(new UnderlineAnnotation(true).renderClass({ standalone: true })).toEqual(null);
|
|
179
|
+
expect(new UnderlineAnnotation(false).renderStyle({ standalone: true })).toEqual(null);
|
|
180
|
+
expect(new UnderlineAnnotation(false).renderClass({ standalone: true })).toEqual(null);
|
|
80
181
|
});
|
|
81
182
|
it('strikethrough annotation ', () => {
|
|
82
|
-
expect(new StrikethroughAnnotation(true).
|
|
183
|
+
expect(new StrikethroughAnnotation(true).renderStyle()).toEqual(null);
|
|
184
|
+
expect(new StrikethroughAnnotation(false).renderStyle()).toEqual(null);
|
|
83
185
|
expect(new StrikethroughAnnotation(true).renderClass()).toEqual('v-rte--strikethrough');
|
|
84
186
|
expect(new StrikethroughAnnotation(false).renderClass()).toEqual(null);
|
|
187
|
+
expect(new StrikethroughAnnotation(true).renderStyle({ standalone: true })).toEqual({
|
|
188
|
+
textDecoration: 'line-through',
|
|
189
|
+
});
|
|
190
|
+
expect(new StrikethroughAnnotation(false).renderStyle({ standalone: true })).toEqual(null);
|
|
191
|
+
expect(new StrikethroughAnnotation(true).renderClass({ standalone: true })).toEqual(null);
|
|
192
|
+
expect(new StrikethroughAnnotation(false).renderClass({ standalone: true })).toEqual(null);
|
|
85
193
|
});
|
|
86
194
|
it('text color annotation ', () => {
|
|
87
195
|
expect(new TextColorAnnotation('black').renderClass()).toEqual(null);
|
|
88
|
-
expect(new TextColorAnnotation('black').
|
|
196
|
+
expect(new TextColorAnnotation('black').renderStyle()).toEqual({
|
|
89
197
|
color: '#111128',
|
|
90
198
|
});
|
|
91
199
|
expect(new TextColorAnnotation('black').renderClass()).toEqual(null);
|
|
92
200
|
expect(new TextColorAnnotation('green').renderClass()).toEqual(null);
|
|
93
|
-
expect(new TextColorAnnotation('green').
|
|
201
|
+
expect(new TextColorAnnotation('green').renderStyle()).toEqual({
|
|
94
202
|
color: '#01801F',
|
|
95
203
|
});
|
|
96
204
|
expect(new TextColorAnnotation('green').renderClass()).toEqual(null);
|
|
97
205
|
});
|
|
98
206
|
it('horizontal alignment annotation', () => {
|
|
99
|
-
expect(new HorizontalAlignmentAnnotation('left').
|
|
207
|
+
expect(new HorizontalAlignmentAnnotation('left').renderStyle({ standalone: true })).toEqual({
|
|
208
|
+
textAlign: 'left',
|
|
209
|
+
});
|
|
210
|
+
expect(new HorizontalAlignmentAnnotation('left').renderStyle()).toEqual(null);
|
|
211
|
+
expect(new HorizontalAlignmentAnnotation('left').renderClass({ standalone: true })).toEqual(null);
|
|
100
212
|
expect(new HorizontalAlignmentAnnotation('left').renderClass()).toEqual('v-rte--horizontal-alignment-left');
|
|
213
|
+
expect(new HorizontalAlignmentAnnotation('right').renderStyle({ standalone: true })).toEqual({
|
|
214
|
+
textAlign: 'right',
|
|
215
|
+
});
|
|
216
|
+
expect(new HorizontalAlignmentAnnotation('right').renderStyle()).toEqual(null);
|
|
217
|
+
expect(new HorizontalAlignmentAnnotation('right').renderClass({ standalone: true })).toEqual(null);
|
|
218
|
+
expect(new HorizontalAlignmentAnnotation('right').renderClass()).toEqual('v-rte--horizontal-alignment-right');
|
|
219
|
+
expect(new HorizontalAlignmentAnnotation('center').renderStyle({ standalone: true })).toEqual({
|
|
220
|
+
textAlign: 'center',
|
|
221
|
+
});
|
|
222
|
+
expect(new HorizontalAlignmentAnnotation('center').renderStyle()).toEqual(null);
|
|
223
|
+
expect(new HorizontalAlignmentAnnotation('center').renderClass({ standalone: true })).toEqual(null);
|
|
224
|
+
expect(new HorizontalAlignmentAnnotation('center').renderClass()).toEqual('v-rte--horizontal-alignment-center');
|
|
225
|
+
expect(new HorizontalAlignmentAnnotation('justify').renderStyle({ standalone: true })).toEqual({
|
|
226
|
+
textAlign: 'justify',
|
|
227
|
+
});
|
|
228
|
+
expect(new HorizontalAlignmentAnnotation('justify').renderStyle()).toEqual(null);
|
|
229
|
+
expect(new HorizontalAlignmentAnnotation('justify').renderClass({ standalone: true })).toEqual(null);
|
|
230
|
+
expect(new HorizontalAlignmentAnnotation('justify').renderClass()).toEqual('v-rte--horizontal-alignment-justify');
|
|
101
231
|
});
|
|
102
232
|
it('clear formatting annotation', () => {
|
|
103
233
|
expect(new ClearFormattingAnnotation().items).toEqual([
|
|
@@ -107,22 +237,31 @@ describe('annotations', () => {
|
|
|
107
237
|
'STRIKETHROUGH',
|
|
108
238
|
'TEXT_COLOR',
|
|
109
239
|
'CODE',
|
|
240
|
+
'CUSTOM_STYLE',
|
|
110
241
|
]);
|
|
111
242
|
});
|
|
112
243
|
it('code annotation', () => {
|
|
113
|
-
expect(new CodeAnnotation(true).
|
|
244
|
+
expect(new CodeAnnotation(true).renderStyle({ standalone: true })).toEqual({
|
|
245
|
+
fontFamily: 'Roboto Mono',
|
|
246
|
+
whiteSpace: 'pre-wrap',
|
|
247
|
+
});
|
|
248
|
+
expect(new CodeAnnotation(false).renderStyle({ standalone: true })).toEqual(null);
|
|
249
|
+
expect(new CodeAnnotation(true).renderClass({ standalone: true })).toEqual(null);
|
|
250
|
+
expect(new CodeAnnotation(false).renderClass({ standalone: true })).toEqual(null);
|
|
251
|
+
expect(new CodeAnnotation(true).renderStyle()).toEqual(null);
|
|
252
|
+
expect(new CodeAnnotation(false).renderStyle()).toEqual(null);
|
|
114
253
|
expect(new CodeAnnotation(true).renderClass()).toEqual('v-rte--code');
|
|
115
254
|
expect(new CodeAnnotation(false).renderClass()).toEqual(null);
|
|
116
255
|
});
|
|
117
256
|
it('indent annotation', () => {
|
|
118
|
-
expect(new IndentAnnotation(0).
|
|
119
|
-
expect(new IndentAnnotation(1).
|
|
120
|
-
expect(new IndentAnnotation(2).
|
|
121
|
-
expect(new IndentAnnotation(-20).
|
|
122
|
-
expect(new IndentAnnotation(20).
|
|
257
|
+
expect(new IndentAnnotation(0).renderStyle()).toEqual(null);
|
|
258
|
+
expect(new IndentAnnotation(1).renderStyle()).toEqual({ marginLeft: `16px` });
|
|
259
|
+
expect(new IndentAnnotation(2).renderStyle()).toEqual({ marginLeft: `32px` });
|
|
260
|
+
expect(new IndentAnnotation(-20).renderStyle()).toEqual(null);
|
|
261
|
+
expect(new IndentAnnotation(20).renderStyle()).toEqual({ marginLeft: `320px` });
|
|
123
262
|
});
|
|
124
263
|
it('link annotation', () => {
|
|
125
|
-
expect(new LinkAnnotation({ href: 'www.google.com', groupKey: '123' }).
|
|
264
|
+
expect(new LinkAnnotation({ href: 'www.google.com', groupKey: '123' }).renderStyle()).toEqual(null);
|
|
126
265
|
expect(new LinkAnnotation({ href: 'www.google.com', groupKey: '123' }).toJSON()).toEqual({
|
|
127
266
|
link: { href: 'www.google.com', groupKey: '123' },
|
|
128
267
|
});
|
|
@@ -131,4 +270,85 @@ describe('annotations', () => {
|
|
|
131
270
|
});
|
|
132
271
|
expect(new LinkAnnotation({ href: 'www.google.com', groupKey: '123' }).toEqual(new LinkAnnotation({ href: 'www.google.com', groupKey: '123' }))).toEqual(true);
|
|
133
272
|
});
|
|
273
|
+
it('link group annotation', () => {
|
|
274
|
+
const linkGroupAnnotation = new LinkGroupAnnotation('123');
|
|
275
|
+
const linkAnnotation = new LinkAnnotation({
|
|
276
|
+
href: 'www.google.com',
|
|
277
|
+
groupKey: '123',
|
|
278
|
+
customAttribute: { id: 'a', dataLink: 'link' },
|
|
279
|
+
customClass: ['classA', 'classB'],
|
|
280
|
+
customStyle: { color: 'red', fontSize: '18px', display: 'block' },
|
|
281
|
+
});
|
|
282
|
+
expect(linkGroupAnnotation.toString(linkAnnotation)).toEqual('id="a" data-link="link" href="www.google.com" target="_blank" class="classA classB v-rte--link" style="color: red; font-size: 18px; display: block;"');
|
|
283
|
+
expect(linkGroupAnnotation.toString(linkAnnotation, { standalone: true })).toEqual('id="a" data-link="link" href="www.google.com" target="_blank" class="classA classB" style="color: rgba(var(--v-text-link, 19, 98, 226, 1)); font-size: 18px; display: block;"');
|
|
284
|
+
const emptyLinkAnnotation = new LinkAnnotation({
|
|
285
|
+
href: 'www.google.com',
|
|
286
|
+
groupKey: '123',
|
|
287
|
+
});
|
|
288
|
+
expect(linkGroupAnnotation.toString(emptyLinkAnnotation)).toEqual('href="www.google.com" target="_blank" class="v-rte--link"');
|
|
289
|
+
expect(linkGroupAnnotation.toString(emptyLinkAnnotation, { standalone: true })).toEqual('href="www.google.com" target="_blank" style="color: rgba(var(--v-text-link, 19, 98, 226, 1));"');
|
|
290
|
+
});
|
|
291
|
+
it('list annotation', () => {
|
|
292
|
+
expect(new ListAnnotation().renderStyle()).toEqual(null);
|
|
293
|
+
expect(new ListAnnotation().renderClass()).toEqual('v-rte--list');
|
|
294
|
+
expect(new ListAnnotation().renderStyle({ standalone: true })).toEqual({
|
|
295
|
+
marginLeft: '16px',
|
|
296
|
+
paddingLeft: '8px',
|
|
297
|
+
});
|
|
298
|
+
expect(new ListAnnotation().renderClass({ standalone: true })).toEqual(null);
|
|
299
|
+
expect(new ListAnnotation().toJSON()).toEqual(undefined);
|
|
300
|
+
const listAnnotation = new ListAnnotation();
|
|
301
|
+
expect(listAnnotation.clone()).toEqual(listAnnotation);
|
|
302
|
+
expect(listAnnotation.clone()).not.toBe(listAnnotation);
|
|
303
|
+
});
|
|
304
|
+
it('customize attributes annotation', () => {
|
|
305
|
+
const customizeAttributes = {
|
|
306
|
+
id: 'element-id',
|
|
307
|
+
dir: 'element-dir',
|
|
308
|
+
};
|
|
309
|
+
expect(new CustomAttributeAnnotation(customizeAttributes).toString()).toEqual([
|
|
310
|
+
'id="element-id"',
|
|
311
|
+
'dir="element-dir"',
|
|
312
|
+
]);
|
|
313
|
+
expect(new CustomAttributeAnnotation(customizeAttributes).toJSON()).toEqual({
|
|
314
|
+
customAttribute: {
|
|
315
|
+
id: 'element-id',
|
|
316
|
+
dir: 'element-dir',
|
|
317
|
+
},
|
|
318
|
+
});
|
|
319
|
+
expect(new CustomAttributeAnnotation(customizeAttributes).render()).toEqual({
|
|
320
|
+
id: 'element-id',
|
|
321
|
+
dir: 'element-dir',
|
|
322
|
+
});
|
|
323
|
+
});
|
|
324
|
+
it('custom class annotation', () => {
|
|
325
|
+
expect(new CustomClassAnnotation(['test-class']).toString()).toEqual('class="test-class"');
|
|
326
|
+
expect(new CustomClassAnnotation(['test-class']).toJSON()).toEqual({
|
|
327
|
+
customClass: ['test-class'],
|
|
328
|
+
});
|
|
329
|
+
expect(new CustomClassAnnotation(['test-class']).renderClass()).toEqual(['test-class']);
|
|
330
|
+
const customClassAnnotation = new CustomClassAnnotation(['test-class']);
|
|
331
|
+
expect(customClassAnnotation.clone()).not.toBe(customClassAnnotation);
|
|
332
|
+
});
|
|
333
|
+
it('customize style annotation', () => {
|
|
334
|
+
const customStyle = {
|
|
335
|
+
textAlign: 'center',
|
|
336
|
+
fontWeight: '700',
|
|
337
|
+
};
|
|
338
|
+
expect(new CustomStyleAnnotation(customStyle).toJSON()).toEqual({
|
|
339
|
+
customStyle: {
|
|
340
|
+
textAlign: 'center',
|
|
341
|
+
fontWeight: '700',
|
|
342
|
+
},
|
|
343
|
+
});
|
|
344
|
+
expect(new CustomStyleAnnotation(customStyle).renderStyle()).toEqual({
|
|
345
|
+
textAlign: 'center',
|
|
346
|
+
fontWeight: '700',
|
|
347
|
+
});
|
|
348
|
+
expect(new CustomStyleAnnotation(customStyle).removeStyles(['fontWeight'])).toEqual({
|
|
349
|
+
textAlign: 'center',
|
|
350
|
+
});
|
|
351
|
+
const customStyleAnnotation = new CustomStyleAnnotation(customStyle);
|
|
352
|
+
expect(new CustomStyleAnnotation(customStyle).clone()).not.toBe(customStyleAnnotation);
|
|
353
|
+
});
|
|
134
354
|
});
|
|
@@ -0,0 +1,54 @@
|
|
|
1
|
+
import { RTECodeBlock } from '../../../dto/blocks/code-block';
|
|
2
|
+
describe('RTECodeBlock', () => {
|
|
3
|
+
it('initial', () => {
|
|
4
|
+
const codeBlock = RTECodeBlock.from({
|
|
5
|
+
id: '1',
|
|
6
|
+
type: 'code-block',
|
|
7
|
+
language: 'js',
|
|
8
|
+
content: 'const',
|
|
9
|
+
});
|
|
10
|
+
expect(codeBlock.id).toEqual('1');
|
|
11
|
+
expect(codeBlock.type).toEqual('code-block');
|
|
12
|
+
expect(codeBlock.getLastNode()['language']).toEqual('js');
|
|
13
|
+
expect(codeBlock.getLastNode()['text']).toEqual('const');
|
|
14
|
+
});
|
|
15
|
+
it('toJSON', () => {
|
|
16
|
+
const codeBlock = RTECodeBlock.from({
|
|
17
|
+
id: '1',
|
|
18
|
+
type: 'code-block',
|
|
19
|
+
language: 'js',
|
|
20
|
+
content: 'const',
|
|
21
|
+
});
|
|
22
|
+
expect(codeBlock.nodes[0].toJSON()).toEqual({
|
|
23
|
+
id: '1-1',
|
|
24
|
+
type: 'text',
|
|
25
|
+
language: 'js',
|
|
26
|
+
text: 'const',
|
|
27
|
+
});
|
|
28
|
+
expect(codeBlock.toJSON()).toEqual({ id: '1', type: 'code-block', language: 'js', content: 'const' });
|
|
29
|
+
});
|
|
30
|
+
it('isNotEmpty', () => {
|
|
31
|
+
const codeBlock = RTECodeBlock.from({
|
|
32
|
+
id: '1',
|
|
33
|
+
type: 'code-block',
|
|
34
|
+
language: 'js',
|
|
35
|
+
content: 'const',
|
|
36
|
+
});
|
|
37
|
+
expect(codeBlock.isNotEmpty()).toBeTruthy();
|
|
38
|
+
});
|
|
39
|
+
it('clone', () => {
|
|
40
|
+
const codeBlock = RTECodeBlock.from({
|
|
41
|
+
id: '1',
|
|
42
|
+
type: 'code-block',
|
|
43
|
+
language: 'js',
|
|
44
|
+
content: 'const',
|
|
45
|
+
});
|
|
46
|
+
const cloneBlock = codeBlock.clone();
|
|
47
|
+
const cloneNode = codeBlock.nodes[0].clone();
|
|
48
|
+
expect(cloneBlock.id).toEqual(codeBlock.id);
|
|
49
|
+
expect(cloneBlock.type).toEqual(codeBlock.type);
|
|
50
|
+
expect(cloneNode.type).toEqual(codeBlock.nodes[0].type);
|
|
51
|
+
expect(cloneNode.text).toEqual(codeBlock.nodes[0].text);
|
|
52
|
+
expect(cloneNode.language).toEqual(codeBlock.nodes[0].language);
|
|
53
|
+
});
|
|
54
|
+
});
|