@heartlandone/vega 2.80.0 → 2.82.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/cjs/{app-globals-7a48292d.js → app-globals-3350d580.js} +7 -7
- package/dist/cjs/{aria-dialog-focusable-trap-slimmer-5a0a78fe.js → aria-dialog-focusable-trap-slimmer-5507f917.js} +15 -70
- package/dist/cjs/{child-nodes-event-prevent-slimmer-dd0bb8b6.js → child-nodes-event-prevent-slimmer-9b7095a4.js} +1 -1
- package/dist/cjs/{child-nodes-notify-observer-slimmer-a8d13f4c.js → child-nodes-notify-observer-slimmer-2631c381.js} +1 -1
- package/dist/cjs/{code-block-71a330a1.js → code-block-b1f8aded.js} +804 -63
- package/dist/cjs/{component-value-history-controller-slimmer.abstract-fd077a6c.js → component-value-history-controller-slimmer.abstract-99fbd1f2.js} +6 -6
- package/dist/cjs/{content-state-afa26456.js → content-state-648652b4.js} +970 -467
- package/dist/cjs/{dark-mode-style-controller-3a04af3d.js → dark-mode-style-controller-bd765afb.js} +2 -322
- package/dist/cjs/{date-required-rule-9f0e3e99.js → date-required-rule-6addf5dd.js} +1 -1
- package/dist/cjs/{design-token-3f9589eb.js → design-token-93070bb8.js} +6 -130
- package/dist/cjs/{dom-node-subject-observer-factory-a3a60da4.js → dom-node-subject-observer-factory-9110cb94.js} +1 -1
- package/dist/cjs/drop-file-accept-filter-slimmer-cd619cc7.js +64 -0
- package/dist/cjs/{element-appender-slimmer-7a66229b.js → element-appender-slimmer-dedd3a34.js} +5 -5
- package/dist/cjs/{event-emit-slimmer-024e26bb.js → event-emit-slimmer-bcb458b2.js} +2 -2
- package/dist/cjs/{form-field-controller-slimmer-c487cf2b.js → form-field-controller-slimmer-0f3a028e.js} +5 -5
- package/dist/cjs/{image-annotation-action-4e72af4b.js → image-annotation-action-0339e983.js} +4 -4
- package/dist/cjs/index-58ea899e.js +4 -0
- package/dist/cjs/index.cjs.js +21 -18
- package/dist/cjs/{inject-keyboard-manager-d1a82089.js → inject-keyboard-manager-2d9c4f92.js} +1 -1
- package/dist/cjs/{internal-translation-controller-9f58a4e4.js → internal-translation-controller-fb1532f4.js} +3 -0
- package/dist/cjs/{internal-vega-event-manager-cc0f511c.js → internal-vega-event-manager-fef893bf.js} +1 -0
- package/dist/cjs/{keyboard-manager-9dbbb0d4.js → keyboard-manager-5ed6c472.js} +2 -2
- package/dist/cjs/{keyboard-manager-slimmer-68cff676.js → keyboard-manager-slimmer-879ff4f3.js} +1 -1
- package/dist/cjs/loader.cjs.js +15 -14
- package/dist/cjs/{month-view-generator-65a2f883.js → month-view-generator-d262e6ce.js} +1 -1
- package/dist/cjs/page-size-option-utils-d038dd3a.js +68 -0
- package/dist/cjs/{public-rules-36f202b3.js → public-rules-bce88d4e.js} +12 -11
- package/dist/cjs/{range-fa15d524.js → range-5bd6d72b.js} +2 -2
- package/dist/cjs/{responsive-format-facade-4419b4ae.js → responsive-format-facade-2cab7344.js} +3 -3
- package/dist/cjs/{rich-text-editor-required-rule-7d4c2973.js → rich-text-editor-required-rule-e8a922be.js} +1 -1
- package/dist/cjs/{split-cell-operation-19f98afb.js → split-cell-operation-bb388de6.js} +59 -24
- package/dist/cjs/state-border-formatter-4e5e4ed0.js +133 -0
- package/dist/cjs/{string-format-strategy.abstract-c65d9861.js → string-format-strategy.abstract-9a35e3b4.js} +1 -1
- package/dist/cjs/{string-input-formatter-slimmer-c2e04acc.js → string-input-formatter-slimmer-1018ddec.js} +4 -4
- package/dist/cjs/{string-mask-strategy-418fc0b8.js → string-mask-strategy-3aa17744.js} +2 -2
- package/dist/cjs/{style-formatter-3c9ce0e5.js → style-formatter-2226c869.js} +2 -2
- package/dist/cjs/{sub-state-notify-slimmer-7a4c6061.js → sub-state-notify-slimmer-b33171b0.js} +2 -2
- package/dist/cjs/{sub-state-observer-slimmer-f728e068.js → sub-state-observer-slimmer-b8f6f27b.js} +3 -3
- package/dist/cjs/{time-required-rule-ad091302.js → time-required-rule-970dfdca.js} +1 -1
- package/dist/cjs/tinycolor-polyfill-502efaa8.js +325 -0
- package/dist/cjs/{token-extension-90396de7.js → token-extension-9b213b6b.js} +212 -38
- package/dist/cjs/{translation-slimmer-c069ca84.js → translation-slimmer-d0c77ad2.js} +1 -1
- package/dist/cjs/{type-guard-d760850a.js → type-guard-3ec852d7.js} +51 -1
- package/dist/cjs/{ui-9e8c9732.js → ui-ae4ee13d.js} +69 -0
- package/dist/cjs/{valid-credit-card-number-rule-5ce8e973.js → valid-credit-card-number-rule-99d1bb34.js} +1 -1
- package/dist/cjs/vega-accordion.cjs.entry.js +9 -8
- package/dist/cjs/vega-app-footer.cjs.entry.js +2 -1
- package/dist/cjs/vega-app-header-button.cjs.entry.js +10 -9
- package/dist/cjs/vega-backdrop.cjs.entry.js +1 -1
- package/dist/cjs/vega-banner.cjs.entry.js +6 -5
- package/dist/cjs/vega-box.cjs.entry.js +7 -6
- package/dist/cjs/vega-brand-logo.cjs.entry.js +2 -1
- package/dist/cjs/vega-breadcrumb.cjs.entry.js +29 -12
- package/dist/cjs/vega-button-circle.cjs.entry.js +11 -10
- package/dist/cjs/vega-button-group_2.cjs.entry.js +104 -15
- package/dist/cjs/vega-button-link.cjs.entry.js +5 -5
- package/dist/cjs/vega-button.cjs.entry.js +10 -10
- package/dist/cjs/vega-calendar_4.cjs.entry.js +12 -12
- package/dist/cjs/vega-card.cjs.entry.js +7 -6
- package/dist/cjs/vega-carousel.cjs.entry.js +7 -7
- package/dist/cjs/vega-checkbox_2.cjs.entry.js +10 -10
- package/dist/cjs/vega-chip.cjs.entry.js +11 -10
- package/dist/cjs/vega-code-block.cjs.entry.js +16 -15
- package/dist/cjs/vega-color-picker.cjs.entry.js +28 -10
- package/dist/cjs/vega-color-swatch.cjs.entry.js +245 -0
- package/dist/cjs/vega-combo-box.cjs.entry.js +12 -12
- package/dist/cjs/vega-date-picker_2.cjs.entry.js +342 -284
- package/dist/cjs/vega-dialog_2.cjs.entry.js +76 -202
- package/dist/cjs/vega-divider.cjs.entry.js +7 -6
- package/dist/cjs/vega-dropdown_5.cjs.entry.js +75 -19
- package/dist/cjs/vega-env-manager-23b8b23c.js +2 -2
- package/dist/cjs/vega-field-label.cjs.entry.js +4 -4
- package/dist/cjs/vega-file-uploader.cjs.entry.js +42 -92
- package/dist/cjs/vega-flag-icon.cjs.entry.js +5 -4
- package/dist/cjs/vega-flex.cjs.entry.js +8 -7
- package/dist/cjs/vega-font.cjs.entry.js +6 -5
- package/dist/cjs/vega-form.cjs.entry.js +12 -12
- package/dist/cjs/vega-grid.cjs.entry.js +6 -5
- package/dist/cjs/vega-icon.cjs.entry.js +6 -5
- package/dist/cjs/vega-image-uploader.cjs.entry.js +80 -15
- package/dist/cjs/vega-input-credit-card.cjs.entry.js +13 -13
- package/dist/cjs/vega-input-numeric.cjs.entry.js +13 -13
- package/dist/cjs/vega-input-passcode.cjs.entry.js +12 -12
- package/dist/cjs/vega-input-phone-number.cjs.entry.js +11 -11
- package/dist/cjs/vega-input-range.cjs.entry.js +10 -10
- package/dist/cjs/vega-input-select.cjs.entry.js +52 -17
- package/dist/cjs/vega-input.cjs.entry.js +17 -14
- package/dist/cjs/{vega-internal-event-id-a1837fa2.js → vega-internal-event-id-87014e4f.js} +2 -0
- package/dist/cjs/vega-item-toggle.cjs.entry.js +4 -4
- package/dist/cjs/vega-left-nav_5.cjs.entry.js +122 -15
- package/dist/cjs/vega-loader-wrapper_2.cjs.entry.js +4 -4
- package/dist/cjs/vega-page-notification_2.cjs.entry.js +2 -2
- package/dist/cjs/vega-pagination-page-selector-mobile.cjs.entry.js +5 -5
- package/dist/cjs/vega-pagination-page-size-selector-mobile.cjs.entry.js +26 -10
- package/dist/cjs/vega-pagination.cjs.entry.js +48 -24
- package/dist/cjs/vega-popover_2.cjs.entry.js +14 -13
- package/dist/cjs/vega-progress-tracker_2.cjs.entry.js +72 -17
- package/dist/cjs/vega-radio_2.cjs.entry.js +13 -13
- package/dist/cjs/vega-rich-text-content.cjs.entry.js +104 -22
- package/dist/cjs/vega-rich-text-editor_4.cjs.entry.js +36 -24
- package/dist/cjs/vega-rich-text-table-properties_3.cjs.entry.js +15 -14
- package/dist/cjs/vega-section-title.cjs.entry.js +21 -3
- package/dist/cjs/vega-segment-control.cjs.entry.js +4 -4
- package/dist/cjs/vega-selection-chip_2.cjs.entry.js +12 -12
- package/dist/cjs/vega-selection-tile_2.cjs.entry.js +11 -11
- package/dist/cjs/vega-sidenav_3.cjs.entry.js +10 -10
- package/dist/cjs/vega-signature-capture.cjs.entry.js +13 -12
- package/dist/cjs/vega-stepper.cjs.entry.js +11 -11
- package/dist/cjs/vega-tab-group_2.cjs.entry.js +5 -5
- package/dist/cjs/vega-table_11.cjs.entry.js +436 -289
- package/dist/cjs/vega-text.cjs.entry.js +7 -3
- package/dist/cjs/vega-textarea.cjs.entry.js +9 -9
- package/dist/cjs/vega-time-picker_2.cjs.entry.js +16 -16
- package/dist/cjs/vega-toggle-switch.cjs.entry.js +8 -8
- package/dist/cjs/vega-tooltip_2.cjs.entry.js +11 -10
- package/dist/cjs/vega.cjs.js +15 -14
- package/dist/cjs/{wait-for-component-did-render-b6aba2de.js → wait-for-component-did-render-16863a21.js} +2 -2
- package/dist/collection/collection-manifest.json +6 -0
- package/dist/collection/components/vega-banner/slimmers/renderers/vega-banner-renderer.js +1 -0
- package/dist/collection/components/vega-banner/vega-banner.css +36 -0
- package/dist/collection/components/vega-box/vega-box.js +1 -1
- package/dist/collection/components/vega-breadcrumb/slimmers/renderers/vega-breadcrumb-item-renderer.js +9 -6
- package/dist/collection/components/vega-breadcrumb/slimmers/renderers/vega-breadcrumb-renderer.js +4 -0
- package/dist/collection/components/vega-breadcrumb/vega-breadcrumb.css +6 -0
- package/dist/collection/components/vega-breadcrumb/vega-breadcrumb.js +31 -0
- package/dist/collection/components/vega-button/vega-button.css +4 -0
- package/dist/collection/components/vega-button-group/slimmers/controllers/vega-button-group-all-items-disabled-controller.js +64 -0
- package/dist/collection/components/vega-button-group/vega-button-group-item/slimmers/controllers/vega-button-group-item-sub-state-controller.js +7 -0
- package/dist/collection/components/vega-button-group/vega-button-group-item/slimmers/renderers/vega-button-group-item-renderer.js +6 -2
- package/dist/collection/components/vega-button-group/vega-button-group-item/vega-button-group-item.js +4 -2
- package/dist/collection/components/vega-button-group/vega-button-group.js +20 -1
- package/dist/collection/components/vega-card/vega-card.css +157 -0
- package/dist/collection/components/vega-card/vega-card.js +1 -1
- package/dist/collection/components/vega-chip/vega-chip.js +26 -1
- package/dist/collection/components/vega-color-picker/vega-color-picker.css +0 -1
- package/dist/collection/components/vega-color-picker/vega-color-picker.js +40 -1
- package/dist/collection/components/vega-color-swatch/slimmers/renderers/vega-color-swatch-renderer.js +127 -0
- package/dist/collection/components/vega-color-swatch/vega-color-swatch.css +155 -0
- package/dist/collection/components/vega-color-swatch/vega-color-swatch.js +314 -0
- package/dist/collection/components/vega-date-picker/vega-date-picker-calendar/slimmers/controllers/vega-date-picker-calendar-current-period-controller.js +5 -10
- package/dist/collection/components/vega-date-picker/vega-date-picker-calendar/slimmers/controllers/vega-date-picker-calendar-is-dual-months-controller.js +64 -0
- package/dist/collection/components/vega-date-picker/vega-date-picker-calendar/slimmers/renderers/vega-date-picker-calendar-header-render.js +3 -6
- package/dist/collection/components/vega-date-picker/vega-date-picker-calendar/slimmers/renderers/vega-date-picker-calendar-renderer.js +3 -11
- package/dist/collection/components/vega-date-picker/vega-date-picker-calendar/slimmers/renderers/vega-date-picker-calendar-year-month-switcher-renderer.js +2 -2
- package/dist/collection/components/vega-date-picker/vega-date-picker-calendar/slimmers/renderers/vega-date-picker-month-item-renderer.js +4 -5
- package/dist/collection/components/vega-date-picker/vega-date-picker-calendar/vega-date-picker-calendar.css +13 -15
- package/dist/collection/components/vega-date-picker/vega-date-picker-calendar/vega-date-picker-calendar.js +41 -2
- package/dist/collection/components/vega-dialog/vega-dialog.js +1 -1
- package/dist/collection/components/vega-divider/slimmers/controllers/vega-divider-size-controller.js +1 -1
- package/dist/collection/components/vega-divider/vega-divider.css +157 -0
- package/dist/collection/components/vega-divider/vega-divider.js +1 -1
- package/dist/collection/components/vega-dropdown/slimmers/controllers/vega-dropdown-appender-controller.js +37 -1
- package/dist/collection/components/vega-dropdown/slimmers/renderers/vega-dropdown-renderer.js +4 -1
- package/dist/collection/components/vega-dropdown/vega-dropdown-item/slimmers/controllers/vega-dropdown-item-state-controller.js +7 -0
- package/dist/collection/components/vega-dropdown/vega-dropdown-item/slimmers/renderers/vega-dropdown-item-renderer.js +5 -1
- package/dist/collection/components/vega-dropdown/vega-dropdown-item/vega-dropdown-item.js +2 -1
- package/dist/collection/components/vega-dropdown/vega-dropdown.js +38 -0
- package/dist/collection/components/vega-file-uploader/vega-file-uploader.js +2 -2
- package/dist/collection/components/vega-flex/vega-flex.css +157 -0
- package/dist/collection/components/vega-flex/vega-flex.js +1 -1
- package/dist/collection/components/vega-image-uploader/slimmers/renderers/vega-image-uploader-default-content-renderer.js +45 -1
- package/dist/collection/components/vega-image-uploader/slimmers/renderers/vega-image-uploader-preview-content-renderer.js +16 -1
- package/dist/collection/components/vega-image-uploader/vega-image-uploader.js +5 -0
- package/dist/collection/components/vega-input/slimmers/renderers/vega-input-input-renderer.js +4 -1
- package/dist/collection/components/vega-input/vega-input.js +25 -0
- package/dist/collection/components/vega-input-select/slimmers/renderers/vega-input-select-dropdown-renderer.js +17 -4
- package/dist/collection/components/vega-input-select/vega-input-select.js +76 -0
- package/dist/collection/components/vega-modal/slimmers/controllers/vega-modal-open-state-controller.js +0 -4
- package/dist/collection/components/vega-modal/slimmers/renderers/vega-modal-renderer.js +31 -21
- package/dist/collection/components/vega-modal/vega-modal.css +2685 -9
- package/dist/collection/components/vega-modal/vega-modal.js +75 -5
- package/dist/collection/components/vega-nav/vega-left-nav/slimmers/controllers/vega-left-nav-open-state-controller.js +85 -2
- package/dist/collection/components/vega-nav/vega-left-nav/vega-left-nav.js +23 -0
- package/dist/collection/components/vega-pagination/constants/page-size.js +2 -0
- package/dist/collection/components/vega-pagination/internal/vega-pagination-page-size-selector.js +11 -7
- package/dist/collection/components/vega-pagination/slimmers/controllers/vega-pagination-page-size-observer-controller.js +11 -1
- package/dist/collection/components/vega-pagination/utils/page-size-option-utils.js +57 -0
- package/dist/collection/components/vega-pagination/vega-pagination-page-size-selector-mobile/slimmers/renderers/page-size-selector-mobile-dropdown-renderer.js +15 -5
- package/dist/collection/components/vega-pagination/vega-pagination-page-size-selector-mobile/vega-pagination-page-size-selector-mobile.js +39 -3
- package/dist/collection/components/vega-pagination/vega-pagination.js +32 -11
- package/dist/collection/components/vega-progress-tracker/slimmers/controllers/vega-progress-tracker-current-direction-controller.js +34 -3
- package/dist/collection/components/vega-progress-tracker/slimmers/controllers/vega-progress-tracker-current-step-controller.js +10 -2
- package/dist/collection/components/vega-progress-tracker/slimmers/renderers/vega-progress-tracker-renderer.js +4 -3
- package/dist/collection/components/vega-progress-tracker/vega-progress-tracker.js +37 -0
- package/dist/collection/components/vega-rich-text-editor/constants/constant.js +20 -0
- package/dist/collection/components/vega-rich-text-editor/dto/annotations/image-annotation.js +1 -0
- package/dist/collection/components/vega-rich-text-editor/dto/annotations/inline-html-annotation.js +12 -0
- package/dist/collection/components/vega-rich-text-editor/dto/annotations/link-group-annotation.js +8 -2
- package/dist/collection/components/vega-rich-text-editor/dto/blocks/block.abstract.js +15 -4
- package/dist/collection/components/vega-rich-text-editor/dto/blocks/code-block.js +6 -2
- package/dist/collection/components/vega-rich-text-editor/dto/blocks/html-block.js +9 -15
- package/dist/collection/components/vega-rich-text-editor/dto/blocks/image-block.js +3 -3
- package/dist/collection/components/vega-rich-text-editor/dto/blocks/list-block.js +3 -3
- package/dist/collection/components/vega-rich-text-editor/dto/blocks/list-item-block.js +3 -7
- package/dist/collection/components/vega-rich-text-editor/dto/blocks/text-block.js +50 -9
- package/dist/collection/components/vega-rich-text-editor/dto/content-state.js +25 -6
- package/dist/collection/components/vega-rich-text-editor/dto/filter-styles-strategies/code-block/code-block-filter-styles-strategy.js +39 -0
- package/dist/collection/components/vega-rich-text-editor/dto/filter-styles-strategies/code-block/code-node-filter-styles-strategy.js +47 -0
- package/dist/collection/components/vega-rich-text-editor/dto/filter-styles-strategies/filter-styles-strategy-registry.js +64 -0
- package/dist/collection/components/vega-rich-text-editor/dto/filter-styles-strategies/filter-styles-strategy.abstract.js +147 -14
- package/dist/collection/components/vega-rich-text-editor/dto/filter-styles-strategies/image-node/image-filter-styles-strategy.js +26 -3
- package/dist/collection/components/vega-rich-text-editor/dto/filter-styles-strategies/list-block/list-block-filter-styles-strategy.js +24 -0
- package/dist/collection/components/vega-rich-text-editor/dto/filter-styles-strategies/list-block/list-heading-item-block-filter-styles-strategy.js +29 -0
- package/dist/collection/components/vega-rich-text-editor/dto/filter-styles-strategies/list-block/list-item-block-filter-styles-strategy.js +39 -1
- package/dist/collection/components/vega-rich-text-editor/dto/filter-styles-strategies/list-block/list-title-item-block-filter-styles-strategy.js +29 -0
- package/dist/collection/components/vega-rich-text-editor/dto/filter-styles-strategies/predicate.js +94 -0
- package/dist/collection/components/vega-rich-text-editor/dto/filter-styles-strategies/text-block/heading-filter-styles-strategy.js +15 -0
- package/dist/collection/components/vega-rich-text-editor/dto/filter-styles-strategies/text-block/paragraph-filter-styles-strategy.js +48 -0
- package/dist/collection/components/vega-rich-text-editor/dto/filter-styles-strategies/text-block/title-filter-styles-strategy.js +16 -0
- package/dist/collection/components/vega-rich-text-editor/dto/filter-styles-strategies/text-node/code-filter-styles-strategy.js +32 -3
- package/dist/collection/components/vega-rich-text-editor/dto/filter-styles-strategies/text-node/link-filter-styles-strategy.js +42 -3
- package/dist/collection/components/vega-rich-text-editor/dto/filter-styles-strategies/text-node/title-heading-node-filter-styles-strategy.js +108 -0
- package/dist/collection/components/vega-rich-text-editor/dto/nodes/code-block-node.js +7 -2
- package/dist/collection/components/vega-rich-text-editor/dto/nodes/image-node.js +2 -2
- package/dist/collection/components/vega-rich-text-editor/dto/nodes/node.abstract.js +15 -4
- package/dist/collection/components/vega-rich-text-editor/dto/nodes/text-node.js +84 -14
- package/dist/collection/components/vega-rich-text-editor/dto/renderers/blocks/block-text-nodes-renderer.abstract.js +61 -6
- package/dist/collection/components/vega-rich-text-editor/dto/renderers/blocks/text-block-renderer.js +16 -0
- package/dist/collection/components/vega-rich-text-editor/dto/renderers/nodes/text-node-renderer.js +14 -3
- package/dist/collection/components/vega-rich-text-editor/dto/setup.js +36 -6
- package/dist/collection/components/vega-rich-text-editor/extensions/extension.abstract.js +10 -0
- package/dist/collection/components/vega-rich-text-editor/extensions/languages/language-extension.js +9 -3
- package/dist/collection/components/vega-rich-text-editor/extensions/table/annotations/table-annotation.js +17 -1
- package/dist/collection/components/vega-rich-text-editor/extensions/table/annotations/table-caption-annotation.js +17 -18
- package/dist/collection/components/vega-rich-text-editor/extensions/table/annotations/table-cell-annotation.js +19 -0
- package/dist/collection/components/vega-rich-text-editor/extensions/table/dto/table-block.js +3 -3
- package/dist/collection/components/vega-rich-text-editor/extensions/table/dto/table-body-block.js +3 -3
- package/dist/collection/components/vega-rich-text-editor/extensions/table/dto/table-caption-block.js +21 -4
- package/dist/collection/components/vega-rich-text-editor/extensions/table/dto/table-cell-block.js +3 -3
- package/dist/collection/components/vega-rich-text-editor/extensions/table/dto/table-head-block.js +3 -3
- package/dist/collection/components/vega-rich-text-editor/extensions/table/dto/table-head-cell-block.js +3 -3
- package/dist/collection/components/vega-rich-text-editor/extensions/table/dto/table-row-block.js +3 -3
- package/dist/collection/components/vega-rich-text-editor/extensions/table/element-to-dto-strategies/caption-to-caption-block-strategy.js +2 -1
- package/dist/collection/components/vega-rich-text-editor/extensions/table/element-to-dto-strategies/td-to-table-cell-block-strategy.js +2 -2
- package/dist/collection/components/vega-rich-text-editor/extensions/table/filter-styles-strategies/table-block/table-block-filter-styles-strategy.js +39 -0
- package/dist/collection/components/vega-rich-text-editor/extensions/table/filter-styles-strategies/table-caption/table-caption-filter-styles-strategy.js +39 -0
- package/dist/collection/components/vega-rich-text-editor/extensions/table/filter-styles-strategies/table-cell/table-cell-filter-styles-strategy.js +63 -0
- package/dist/collection/components/vega-rich-text-editor/extensions/table/table-extension.js +7 -0
- package/dist/collection/components/vega-rich-text-editor/helpers/utils.js +24 -0
- package/dist/collection/components/vega-rich-text-editor/public-api.js +2 -0
- package/dist/collection/components/vega-rich-text-editor/slimmers/controllers/helper/element-to-dto-strategy/annotation-handler/custom-style-annotation-handler.js +2 -25
- package/dist/collection/components/vega-rich-text-editor/slimmers/controllers/helper/element-to-dto-strategy/annotation-handler/html-element-to-annotation-generator.js +8 -2
- package/dist/collection/components/vega-rich-text-editor/slimmers/controllers/helper/element-to-dto-strategy/annotation-handler/inline-html-annotation-handler.js +30 -53
- package/dist/collection/components/vega-rich-text-editor/slimmers/controllers/helper/element-to-dto-strategy/annotation-handler/link-annotation-handler.js +2 -1
- package/dist/collection/components/vega-rich-text-editor/slimmers/controllers/helper/element-to-dto-strategy/annotation-handler/text-style-annotation-handler.js +2 -1
- package/dist/collection/components/vega-rich-text-editor/slimmers/controllers/helper/element-to-dto-strategy/continue-inline-to-rte-text-block-strategy.js +85 -17
- package/dist/collection/components/vega-rich-text-editor/slimmers/controllers/helper/element-to-dto-strategy/element-to-dto-strategy-processor.js +12 -5
- package/dist/collection/components/vega-rich-text-editor/slimmers/controllers/helper/element-to-dto-strategy/html-block-strategy.js +95 -43
- package/dist/collection/components/vega-rich-text-editor/slimmers/controllers/helper/element-to-dto-strategy/inline-element-to-text-node-strategy.js +1 -2
- package/dist/collection/components/vega-rich-text-editor/slimmers/controllers/helper/element-to-dto-strategy/predicate.js +29 -0
- package/dist/collection/components/vega-rich-text-editor/slimmers/controllers/helper/element-to-dto-strategy/strategy-tags.js +142 -0
- package/dist/collection/components/vega-rich-text-editor/slimmers/renderers/tools/source-edit-toolbar-button-slimmer.js +1 -0
- package/dist/collection/components/vega-rich-text-editor/slimmers/renderers/vega-rich-text-editor-source-view-renderer.js +12 -2
- package/dist/collection/components/vega-rich-text-editor/vega-rich-text-editor.js +1 -1
- package/dist/collection/components/vega-section-title/slimmers/renderers/vega-section-title-renderer.js +8 -2
- package/dist/collection/components/vega-section-title/vega-section-title.css +35 -0
- package/dist/collection/components/vega-section-title/vega-section-title.js +64 -0
- package/dist/collection/components/vega-stepper/vega-stepper.css +15 -0
- package/dist/collection/components/vega-stepper/vega-stepper.js +2 -1
- package/dist/collection/components/vega-table/slimmers/controllers/vega-table-render-input-controller.js +25 -2
- package/dist/collection/components/vega-table/slimmers/renderers/vega-table-pinned-renderer.js +28 -1
- package/dist/collection/components/vega-table/vega-table-cell/vega-table-cell.js +12 -10
- package/dist/collection/components/vega-table/vega-table-head-cell/vega-table-head-cell.js +14 -12
- package/dist/collection/components/vega-table/vega-table-head-row/slimmers/renderers/vega-table-head-row-renderer.js +5 -4
- package/dist/collection/components/vega-table/vega-table-head-row/vega-table-head-row.js +8 -1
- package/dist/collection/components/vega-text/slimmers/renderers/vega-text-tooltip-renderer.js +6 -2
- package/dist/collection/components/vega-text/vega-text.js +1 -1
- package/dist/collection/components/vega-tooltip/slimmers/controllers/vega-tooltip-element-appender-controller.js +1 -0
- package/dist/collection/components/vega-tooltip/vega-tooltip-content-box/vega-tooltip-content-box.css +1 -0
- package/dist/collection/components/vega-tooltip/vega-tooltip-content-box/vega-tooltip-content-box.js +1 -1
- package/dist/collection/components/vega-tooltip/vega-tooltip.js +1 -1
- package/dist/collection/helpers/event-manager/event-id/component-event-id-map.js +1 -0
- package/dist/collection/helpers/event-manager/event-id/vega-internal-event-id.js +1 -0
- package/dist/collection/helpers/formatter/responsive-map-formatter/responsive-margin-formatter.js +3 -3
- package/dist/collection/helpers/slimmers/aria-dialog-focusable-trap-slimmer.js +13 -68
- package/dist/collection/{components/vega-file-uploader/slimmers/controllers/vega-file-uploader-drop-file-filter-controller.js → helpers/slimmers/drop-file-accept-filter-slimmer.js} +13 -5
- package/dist/collection/helpers/slimmers/vega-table-child-render-input-consumer-slimmer.js +96 -0
- package/dist/collection/helpers/translation/locales/en.js +3 -0
- package/dist/collection/types/type-guard.js +47 -0
- package/dist/collection/utils/ui.js +68 -0
- package/dist/esm/{app-globals-e77015e3.js → app-globals-0b7e8b50.js} +7 -7
- package/dist/esm/{aria-dialog-focusable-trap-slimmer-5a2f92be.js → aria-dialog-focusable-trap-slimmer-853a91de.js} +15 -70
- package/dist/esm/{child-nodes-event-prevent-slimmer-2ecc3e1f.js → child-nodes-event-prevent-slimmer-9c24d4fc.js} +1 -1
- package/dist/esm/{child-nodes-notify-observer-slimmer-b7f0e419.js → child-nodes-notify-observer-slimmer-a8cb19cf.js} +1 -1
- package/dist/esm/{code-block-7d6f231b.js → code-block-b8be290a.js} +798 -64
- package/dist/esm/{component-value-history-controller-slimmer.abstract-acf65b17.js → component-value-history-controller-slimmer.abstract-10ccf8e6.js} +6 -6
- package/dist/esm/{content-state-084cd705.js → content-state-72b513d1.js} +959 -456
- package/dist/esm/{dark-mode-style-controller-82e5c1c6.js → dark-mode-style-controller-e9a6b097.js} +1 -321
- package/dist/esm/{date-required-rule-29608215.js → date-required-rule-891a6a57.js} +1 -1
- package/dist/esm/{design-token-edcd787b.js → design-token-59d07aa2.js} +6 -130
- package/dist/esm/{dom-node-subject-observer-factory-cea9248d.js → dom-node-subject-observer-factory-aca0116e.js} +1 -1
- package/dist/esm/drop-file-accept-filter-slimmer-ad759e4a.js +62 -0
- package/dist/esm/{element-appender-slimmer-08ec429b.js → element-appender-slimmer-5aca1bca.js} +5 -5
- package/dist/esm/{event-emit-slimmer-4fba1b35.js → event-emit-slimmer-32da9d90.js} +2 -2
- package/dist/esm/{form-field-controller-slimmer-8dd39707.js → form-field-controller-slimmer-899864a8.js} +5 -5
- package/dist/esm/{image-annotation-action-a6b33a81.js → image-annotation-action-ebd6c421.js} +4 -4
- package/dist/esm/index-090d31ca.js +4 -0
- package/dist/esm/index.js +20 -18
- package/dist/esm/{inject-keyboard-manager-7557816f.js → inject-keyboard-manager-dc1d7135.js} +1 -1
- package/dist/esm/{internal-translation-controller-b08aa9ab.js → internal-translation-controller-4fb104b2.js} +3 -0
- package/dist/esm/{internal-vega-event-manager-59f5bd47.js → internal-vega-event-manager-8a657bac.js} +1 -0
- package/dist/esm/{keyboard-manager-1846c6a5.js → keyboard-manager-6ea9968b.js} +2 -2
- package/dist/esm/{keyboard-manager-slimmer-1ae0aa4d.js → keyboard-manager-slimmer-7eed4734.js} +1 -1
- package/dist/esm/loader.js +15 -14
- package/dist/esm/{month-view-generator-b700ed08.js → month-view-generator-aaa27fce.js} +1 -1
- package/dist/esm/page-size-option-utils-50afc81a.js +61 -0
- package/dist/esm/{public-rules-fe2c7934.js → public-rules-f2005e11.js} +12 -11
- package/dist/esm/{range-00afe462.js → range-ed532278.js} +2 -2
- package/dist/esm/{responsive-format-facade-37d4d850.js → responsive-format-facade-e9926018.js} +3 -3
- package/dist/esm/{rich-text-editor-required-rule-6487ec94.js → rich-text-editor-required-rule-b559cf1a.js} +1 -1
- package/dist/esm/{split-cell-operation-9445e642.js → split-cell-operation-5587f594.js} +59 -24
- package/dist/esm/state-border-formatter-be51463d.js +129 -0
- package/dist/esm/{string-format-strategy.abstract-ec6d627b.js → string-format-strategy.abstract-0157b3c5.js} +1 -1
- package/dist/esm/{string-input-formatter-slimmer-959dff7a.js → string-input-formatter-slimmer-33ed3478.js} +4 -4
- package/dist/esm/{string-mask-strategy-49be41f0.js → string-mask-strategy-b58891b5.js} +2 -2
- package/dist/esm/{style-formatter-ad0b2bac.js → style-formatter-9662ae88.js} +2 -2
- package/dist/esm/{sub-state-notify-slimmer-ee8c417b.js → sub-state-notify-slimmer-1f907173.js} +2 -2
- package/dist/esm/{sub-state-observer-slimmer-4d30fa5c.js → sub-state-observer-slimmer-090c500a.js} +3 -3
- package/dist/esm/{time-required-rule-414b1590.js → time-required-rule-a9dc8473.js} +1 -1
- package/dist/esm/tinycolor-polyfill-7be0eb93.js +322 -0
- package/dist/esm/{token-extension-600b1c88.js → token-extension-9d717a35.js} +212 -38
- package/dist/esm/{translation-slimmer-35b1d0fa.js → translation-slimmer-4faae5a3.js} +1 -1
- package/dist/esm/{type-guard-23a08026.js → type-guard-152070e9.js} +49 -2
- package/dist/esm/{ui-ba5a4758.js → ui-b7600a48.js} +69 -1
- package/dist/esm/{valid-credit-card-number-rule-60abddac.js → valid-credit-card-number-rule-a7907cb7.js} +1 -1
- package/dist/esm/vega-accordion.entry.js +9 -8
- package/dist/esm/vega-app-footer.entry.js +2 -1
- package/dist/esm/vega-app-header-button.entry.js +10 -9
- package/dist/esm/vega-backdrop.entry.js +1 -1
- package/dist/esm/vega-banner.entry.js +6 -5
- package/dist/esm/vega-box.entry.js +7 -6
- package/dist/esm/vega-brand-logo.entry.js +2 -1
- package/dist/esm/vega-breadcrumb.entry.js +29 -12
- package/dist/esm/vega-button-circle.entry.js +11 -10
- package/dist/esm/vega-button-group_2.entry.js +104 -15
- package/dist/esm/vega-button-link.entry.js +5 -5
- package/dist/esm/vega-button.entry.js +10 -10
- package/dist/esm/vega-calendar_4.entry.js +12 -12
- package/dist/esm/vega-card.entry.js +7 -6
- package/dist/esm/vega-carousel.entry.js +7 -7
- package/dist/esm/vega-checkbox_2.entry.js +10 -10
- package/dist/esm/vega-chip.entry.js +11 -10
- package/dist/esm/vega-code-block.entry.js +16 -15
- package/dist/esm/vega-color-picker.entry.js +28 -10
- package/dist/esm/vega-color-swatch.entry.js +241 -0
- package/dist/esm/vega-combo-box.entry.js +12 -12
- package/dist/esm/vega-date-picker_2.entry.js +342 -284
- package/dist/esm/vega-dialog_2.entry.js +76 -202
- package/dist/esm/vega-divider.entry.js +7 -6
- package/dist/esm/vega-dropdown_5.entry.js +76 -20
- package/dist/esm/vega-env-manager-8f8dc473.js +2 -2
- package/dist/esm/vega-field-label.entry.js +4 -4
- package/dist/esm/vega-file-uploader.entry.js +42 -92
- package/dist/esm/vega-flag-icon.entry.js +5 -4
- package/dist/esm/vega-flex.entry.js +8 -7
- package/dist/esm/vega-font.entry.js +6 -5
- package/dist/esm/vega-form.entry.js +12 -12
- package/dist/esm/vega-grid.entry.js +6 -5
- package/dist/esm/vega-icon.entry.js +6 -5
- package/dist/esm/vega-image-uploader.entry.js +80 -15
- package/dist/esm/vega-input-credit-card.entry.js +13 -13
- package/dist/esm/vega-input-numeric.entry.js +13 -13
- package/dist/esm/vega-input-passcode.entry.js +12 -12
- package/dist/esm/vega-input-phone-number.entry.js +11 -11
- package/dist/esm/vega-input-range.entry.js +10 -10
- package/dist/esm/vega-input-select.entry.js +52 -17
- package/dist/esm/vega-input.entry.js +17 -14
- package/dist/esm/{vega-internal-event-id-70bd893d.js → vega-internal-event-id-194bac82.js} +2 -1
- package/dist/esm/vega-item-toggle.entry.js +4 -4
- package/dist/esm/vega-left-nav_5.entry.js +122 -15
- package/dist/esm/vega-loader-wrapper_2.entry.js +4 -4
- package/dist/esm/vega-page-notification_2.entry.js +2 -2
- package/dist/esm/vega-pagination-page-selector-mobile.entry.js +5 -5
- package/dist/esm/vega-pagination-page-size-selector-mobile.entry.js +26 -10
- package/dist/esm/vega-pagination.entry.js +48 -24
- package/dist/esm/vega-popover_2.entry.js +14 -13
- package/dist/esm/vega-progress-tracker_2.entry.js +72 -17
- package/dist/esm/vega-radio_2.entry.js +13 -13
- package/dist/esm/vega-rich-text-content.entry.js +104 -22
- package/dist/esm/vega-rich-text-editor_4.entry.js +36 -24
- package/dist/esm/vega-rich-text-table-properties_3.entry.js +15 -14
- package/dist/esm/vega-section-title.entry.js +21 -3
- package/dist/esm/vega-segment-control.entry.js +4 -4
- package/dist/esm/vega-selection-chip_2.entry.js +12 -12
- package/dist/esm/vega-selection-tile_2.entry.js +11 -11
- package/dist/esm/vega-sidenav_3.entry.js +10 -10
- package/dist/esm/vega-signature-capture.entry.js +13 -12
- package/dist/esm/vega-stepper.entry.js +11 -11
- package/dist/esm/vega-tab-group_2.entry.js +5 -5
- package/dist/esm/vega-table_11.entry.js +436 -289
- package/dist/esm/vega-text.entry.js +7 -3
- package/dist/esm/vega-textarea.entry.js +9 -9
- package/dist/esm/vega-time-picker_2.entry.js +16 -16
- package/dist/esm/vega-toggle-switch.entry.js +8 -8
- package/dist/esm/vega-tooltip_2.entry.js +11 -10
- package/dist/esm/vega.js +15 -14
- package/dist/esm/{wait-for-component-did-render-03e7ccb2.js → wait-for-component-did-render-30cde59c.js} +2 -2
- package/dist/sri/vega-sri-manifest.json +389 -369
- package/dist/types/components/vega-breadcrumb/slimmers/renderers/vega-breadcrumb-item-renderer.d.ts +1 -0
- package/dist/types/components/vega-breadcrumb/slimmers/renderers/vega-breadcrumb-renderer.d.ts +1 -0
- package/dist/types/components/vega-breadcrumb/vega-breadcrumb.d.ts +10 -0
- package/dist/types/components/vega-button-group/slimmers/controllers/vega-button-group-all-items-disabled-controller.d.ts +21 -0
- package/dist/types/components/vega-button-group/vega-button-group-item/slimmers/controllers/vega-button-group-item-sub-state-controller.d.ts +1 -0
- package/dist/types/components/vega-button-group/vega-button-group-item/slimmers/renderers/vega-button-group-item-renderer.d.ts +1 -0
- package/dist/types/components/vega-button-group/vega-button-group-item/vega-button-group-item.d.ts +1 -0
- package/dist/types/components/vega-button-group/vega-button-group.d.ts +5 -0
- package/dist/types/components/vega-chip/vega-chip.d.ts +9 -0
- package/dist/types/components/vega-color-picker/vega-color-picker.d.ts +14 -0
- package/dist/types/components/vega-color-swatch/slimmers/renderers/vega-color-swatch-renderer.d.ts +48 -0
- package/dist/types/components/vega-color-swatch/types.d.ts +5 -0
- package/dist/types/components/vega-color-swatch/vega-color-swatch.d.ts +86 -0
- package/dist/types/components/vega-date-picker/vega-date-picker-calendar/slimmers/controllers/vega-date-picker-calendar-current-period-controller.d.ts +1 -6
- package/dist/types/components/vega-date-picker/vega-date-picker-calendar/slimmers/controllers/vega-date-picker-calendar-is-dual-months-controller.d.ts +28 -0
- package/dist/types/components/vega-date-picker/vega-date-picker-calendar/slimmers/renderers/vega-date-picker-calendar-header-render.d.ts +1 -2
- package/dist/types/components/vega-date-picker/vega-date-picker-calendar/slimmers/renderers/vega-date-picker-calendar-renderer.d.ts +1 -2
- package/dist/types/components/vega-date-picker/vega-date-picker-calendar/slimmers/renderers/vega-date-picker-calendar-year-month-switcher-renderer.d.ts +1 -1
- package/dist/types/components/vega-date-picker/vega-date-picker-calendar/slimmers/renderers/vega-date-picker-month-item-renderer.d.ts +1 -1
- package/dist/types/components/vega-date-picker/vega-date-picker-calendar/vega-date-picker-calendar.d.ts +12 -0
- package/dist/types/components/vega-dropdown/slimmers/controllers/vega-dropdown-appender-controller.d.ts +12 -0
- package/dist/types/components/vega-dropdown/slimmers/renderers/vega-dropdown-renderer.d.ts +1 -0
- package/dist/types/components/vega-dropdown/vega-dropdown-item/slimmers/controllers/vega-dropdown-item-state-controller.d.ts +1 -0
- package/dist/types/components/vega-dropdown/vega-dropdown-item/slimmers/renderers/vega-dropdown-item-renderer.d.ts +1 -0
- package/dist/types/components/vega-dropdown/vega-dropdown-item/vega-dropdown-item.d.ts +4 -0
- package/dist/types/components/vega-dropdown/vega-dropdown.d.ts +10 -0
- package/dist/types/components/vega-file-uploader/vega-file-uploader.d.ts +2 -2
- package/dist/types/components/vega-image-uploader/slimmers/renderers/vega-image-uploader-default-content-renderer.d.ts +25 -0
- package/dist/types/components/vega-image-uploader/slimmers/renderers/vega-image-uploader-preview-content-renderer.d.ts +10 -0
- package/dist/types/components/vega-image-uploader/vega-image-uploader.d.ts +2 -0
- package/dist/types/components/vega-input/slimmers/renderers/vega-input-input-renderer.d.ts +1 -0
- package/dist/types/components/vega-input/types.d.ts +5 -0
- package/dist/types/components/vega-input/vega-input.d.ts +17 -1
- package/dist/types/components/vega-input-select/slimmers/renderers/vega-input-select-dropdown-renderer.d.ts +3 -0
- package/dist/types/components/vega-input-select/types.d.ts +14 -0
- package/dist/types/components/vega-input-select/vega-input-select.d.ts +19 -1
- package/dist/types/components/vega-modal/slimmers/controllers/vega-modal-open-state-controller.d.ts +0 -1
- package/dist/types/components/vega-modal/slimmers/renderers/vega-modal-renderer.d.ts +4 -0
- package/dist/types/components/vega-modal/vega-modal.d.ts +24 -3
- package/dist/types/components/vega-nav/vega-left-nav/slimmers/controllers/vega-left-nav-open-state-controller.d.ts +17 -0
- package/dist/types/components/vega-pagination/constants/page-size.d.ts +2 -0
- package/dist/types/components/vega-pagination/internal/vega-pagination-page-size-selector.d.ts +3 -2
- package/dist/types/components/vega-pagination/slimmers/controllers/vega-pagination-page-size-observer-controller.d.ts +2 -0
- package/dist/types/components/vega-pagination/types.d.ts +15 -0
- package/dist/types/components/vega-pagination/utils/page-size-option-utils.d.ts +42 -0
- package/dist/types/components/vega-pagination/vega-pagination-page-size-selector-mobile/slimmers/renderers/page-size-selector-mobile-dropdown-renderer.d.ts +2 -0
- package/dist/types/components/vega-pagination/vega-pagination-page-size-selector-mobile/vega-pagination-page-size-selector-mobile.d.ts +9 -2
- package/dist/types/components/vega-pagination/vega-pagination.d.ts +8 -3
- package/dist/types/components/vega-progress-tracker/slimmers/controllers/vega-progress-tracker-current-direction-controller.d.ts +14 -2
- package/dist/types/components/vega-progress-tracker/slimmers/controllers/vega-progress-tracker-current-step-controller.d.ts +1 -0
- package/dist/types/components/vega-progress-tracker/slimmers/renderers/vega-progress-tracker-renderer.d.ts +1 -1
- package/dist/types/components/vega-progress-tracker/vega-progress-tracker.d.ts +16 -0
- package/dist/types/components/vega-rich-text-editor/constants/constant.d.ts +5 -0
- package/dist/types/components/vega-rich-text-editor/dto/annotations/image-annotation.d.ts +1 -0
- package/dist/types/components/vega-rich-text-editor/dto/annotations/inline-html-annotation.d.ts +14 -0
- package/dist/types/components/vega-rich-text-editor/dto/annotations/link-group-annotation.d.ts +8 -2
- package/dist/types/components/vega-rich-text-editor/dto/blocks/block.abstract.d.ts +4 -2
- package/dist/types/components/vega-rich-text-editor/dto/blocks/code-block.d.ts +2 -2
- package/dist/types/components/vega-rich-text-editor/dto/blocks/html-block.d.ts +1 -11
- package/dist/types/components/vega-rich-text-editor/dto/blocks/image-block.d.ts +1 -1
- package/dist/types/components/vega-rich-text-editor/dto/blocks/list-block.d.ts +1 -1
- package/dist/types/components/vega-rich-text-editor/dto/blocks/list-item-block.d.ts +1 -1
- package/dist/types/components/vega-rich-text-editor/dto/blocks/text-block.d.ts +15 -2
- package/dist/types/components/vega-rich-text-editor/dto/content-state.d.ts +9 -3
- package/dist/types/components/vega-rich-text-editor/dto/filter-styles-strategies/code-block/code-block-filter-styles-strategy.d.ts +27 -0
- package/dist/types/components/vega-rich-text-editor/dto/filter-styles-strategies/code-block/code-node-filter-styles-strategy.d.ts +27 -0
- package/dist/types/components/vega-rich-text-editor/dto/filter-styles-strategies/filter-styles-strategy-registry.d.ts +27 -1
- package/dist/types/components/vega-rich-text-editor/dto/filter-styles-strategies/filter-styles-strategy.abstract.d.ts +92 -8
- package/dist/types/components/vega-rich-text-editor/dto/filter-styles-strategies/image-node/image-filter-styles-strategy.d.ts +21 -3
- package/dist/types/components/vega-rich-text-editor/dto/filter-styles-strategies/list-block/list-block-filter-styles-strategy.d.ts +15 -0
- package/dist/types/components/vega-rich-text-editor/dto/filter-styles-strategies/list-block/list-heading-item-block-filter-styles-strategy.d.ts +19 -0
- package/dist/types/components/vega-rich-text-editor/dto/filter-styles-strategies/list-block/list-item-block-filter-styles-strategy.d.ts +25 -0
- package/dist/types/components/vega-rich-text-editor/dto/filter-styles-strategies/list-block/list-title-item-block-filter-styles-strategy.d.ts +19 -0
- package/dist/types/components/vega-rich-text-editor/dto/filter-styles-strategies/predicate.d.ts +72 -0
- package/dist/types/components/vega-rich-text-editor/dto/filter-styles-strategies/text-block/heading-filter-styles-strategy.d.ts +10 -0
- package/dist/types/components/vega-rich-text-editor/dto/filter-styles-strategies/text-block/paragraph-filter-styles-strategy.d.ts +34 -0
- package/dist/types/components/vega-rich-text-editor/dto/filter-styles-strategies/text-block/title-filter-styles-strategy.d.ts +11 -0
- package/dist/types/components/vega-rich-text-editor/dto/filter-styles-strategies/text-node/code-filter-styles-strategy.d.ts +25 -2
- package/dist/types/components/vega-rich-text-editor/dto/filter-styles-strategies/text-node/link-filter-styles-strategy.d.ts +24 -4
- package/dist/types/components/vega-rich-text-editor/dto/filter-styles-strategies/text-node/title-heading-node-filter-styles-strategy.d.ts +62 -0
- package/dist/types/components/vega-rich-text-editor/dto/nodes/code-block-node.d.ts +7 -3
- package/dist/types/components/vega-rich-text-editor/dto/nodes/image-node.d.ts +1 -1
- package/dist/types/components/vega-rich-text-editor/dto/nodes/node.abstract.d.ts +5 -3
- package/dist/types/components/vega-rich-text-editor/dto/nodes/text-node.d.ts +43 -4
- package/dist/types/components/vega-rich-text-editor/dto/renderers/blocks/block-text-nodes-renderer.abstract.d.ts +25 -0
- package/dist/types/components/vega-rich-text-editor/dto/renderers/blocks/text-block-renderer.d.ts +5 -0
- package/dist/types/components/vega-rich-text-editor/dto/renderers/nodes/text-node-renderer.d.ts +12 -0
- package/dist/types/components/vega-rich-text-editor/extensions/extension.abstract.d.ts +8 -0
- package/dist/types/components/vega-rich-text-editor/extensions/table/annotations/table-annotation.d.ts +8 -0
- package/dist/types/components/vega-rich-text-editor/extensions/table/annotations/table-caption-annotation.d.ts +7 -1
- package/dist/types/components/vega-rich-text-editor/extensions/table/annotations/table-cell-annotation.d.ts +9 -1
- package/dist/types/components/vega-rich-text-editor/extensions/table/dto/table-block.d.ts +1 -1
- package/dist/types/components/vega-rich-text-editor/extensions/table/dto/table-body-block.d.ts +1 -1
- package/dist/types/components/vega-rich-text-editor/extensions/table/dto/table-caption-block.d.ts +5 -2
- package/dist/types/components/vega-rich-text-editor/extensions/table/dto/table-cell-block.d.ts +1 -1
- package/dist/types/components/vega-rich-text-editor/extensions/table/dto/table-head-block.d.ts +1 -1
- package/dist/types/components/vega-rich-text-editor/extensions/table/dto/table-head-cell-block.d.ts +1 -1
- package/dist/types/components/vega-rich-text-editor/extensions/table/dto/table-row-block.d.ts +1 -1
- package/dist/types/components/vega-rich-text-editor/extensions/table/filter-styles-strategies/table-block/table-block-filter-styles-strategy.d.ts +29 -0
- package/dist/types/components/vega-rich-text-editor/extensions/table/filter-styles-strategies/table-caption/table-caption-filter-styles-strategy.d.ts +29 -0
- package/dist/types/components/vega-rich-text-editor/extensions/table/filter-styles-strategies/table-cell/table-cell-filter-styles-strategy.d.ts +46 -0
- package/dist/types/components/vega-rich-text-editor/helpers/utils.d.ts +8 -0
- package/dist/types/components/vega-rich-text-editor/interface.d.ts +27 -5
- package/dist/types/components/vega-rich-text-editor/public-api.d.ts +1 -0
- package/dist/types/components/vega-rich-text-editor/slimmers/controllers/helper/element-to-dto-strategy/annotation-handler/custom-style-annotation-handler.d.ts +0 -7
- package/dist/types/components/vega-rich-text-editor/slimmers/controllers/helper/element-to-dto-strategy/annotation-handler/html-element-to-annotation-generator.d.ts +1 -1
- package/dist/types/components/vega-rich-text-editor/slimmers/controllers/helper/element-to-dto-strategy/annotation-handler/inline-html-annotation-handler.d.ts +11 -1
- package/dist/types/components/vega-rich-text-editor/slimmers/controllers/helper/element-to-dto-strategy/continue-inline-to-rte-text-block-strategy.d.ts +43 -7
- package/dist/types/components/vega-rich-text-editor/slimmers/controllers/helper/element-to-dto-strategy/element-to-dto-strategy-processor.d.ts +8 -3
- package/dist/types/components/vega-rich-text-editor/slimmers/controllers/helper/element-to-dto-strategy/html-block-strategy.d.ts +34 -1
- package/dist/types/components/vega-rich-text-editor/slimmers/controllers/helper/element-to-dto-strategy/predicate.d.ts +21 -0
- package/dist/types/components/vega-rich-text-editor/slimmers/controllers/helper/element-to-dto-strategy/strategy-tags.d.ts +83 -0
- package/dist/types/components/vega-rich-text-editor/slimmers/renderers/vega-rich-text-editor-source-view-renderer.d.ts +6 -0
- package/dist/types/components/vega-section-title/slimmers/renderers/vega-section-title-renderer.d.ts +2 -0
- package/dist/types/components/vega-section-title/types.d.ts +1 -0
- package/dist/types/components/vega-section-title/vega-section-title.d.ts +14 -0
- package/dist/types/components/vega-table/slimmers/controllers/vega-table-render-input-controller.d.ts +8 -1
- package/dist/types/components/vega-table/slimmers/renderers/vega-table-pinned-renderer.d.ts +5 -1
- package/dist/types/components/vega-table/vega-table-cell/vega-table-cell.d.ts +5 -0
- package/dist/types/components/vega-table/vega-table-head-cell/vega-table-head-cell.d.ts +5 -0
- package/dist/types/components/vega-table/vega-table-head-row/slimmers/renderers/vega-table-head-row-renderer.d.ts +1 -0
- package/dist/types/components/vega-table/vega-table-head-row/vega-table-head-row.d.ts +4 -0
- package/dist/types/components/vega-text/types.d.ts +5 -3
- package/dist/types/components/vega-tooltip/vega-tooltip-content-box/vega-tooltip-content-box.d.ts +4 -0
- package/dist/types/components/vega-tooltip/vega-tooltip.d.ts +4 -0
- package/dist/types/components.d.ts +247 -13
- package/dist/types/helpers/event-manager/event-id/vega-internal-event-id.d.ts +1 -0
- package/dist/types/helpers/formatter/string-formatter/string-mask-strategy.d.ts +56 -3
- package/dist/types/helpers/slimmers/aria-dialog-focusable-trap-slimmer.d.ts +4 -12
- package/dist/types/helpers/slimmers/drop-file-accept-filter-slimmer.d.ts +29 -0
- package/dist/types/helpers/slimmers/vega-table-child-render-input-consumer-slimmer.d.ts +48 -0
- package/dist/types/helpers/translation/interface.d.ts +4 -1
- package/dist/types/types/components.type.d.ts +10 -0
- package/dist/types/types/public-api.d.ts +3 -1
- package/dist/types/types/type-guard.d.ts +29 -1
- package/dist/types/types/ui.type.d.ts +11 -1
- package/dist/types/utils/ui.d.ts +14 -0
- package/dist/vega/index.esm.js +1 -1
- package/dist/vega/{p-7618dde4.js → p-02467b61.js} +1 -1
- package/dist/vega/p-075bb809.entry.js +1 -0
- package/dist/vega/p-085de8fc.js +1 -0
- package/dist/vega/p-0915a8d3.entry.js +1 -0
- package/dist/vega/p-0caf52e0.js +1 -0
- package/dist/vega/{p-19ad4f15.entry.js → p-0dbd7723.entry.js} +1 -1
- package/dist/vega/{p-cf70c57d.js → p-103d20f5.js} +1 -1
- package/dist/vega/p-115d6053.entry.js +1 -0
- package/dist/vega/p-116e3963.js +1 -0
- package/dist/vega/p-14de7ba0.entry.js +1 -0
- package/dist/vega/p-19a30f98.entry.js +1 -0
- package/dist/vega/{p-90137c68.entry.js → p-1ca95601.entry.js} +1 -1
- package/dist/vega/p-1dd6ba67.js +1 -0
- package/dist/vega/p-1efb47fe.entry.js +1 -0
- package/dist/vega/p-23c840dc.entry.js +1 -0
- package/dist/vega/p-246eb001.entry.js +1 -0
- package/dist/vega/p-25ab7a33.entry.js +1 -0
- package/dist/vega/p-264b3309.entry.js +1 -0
- package/dist/vega/{p-c045e4c1.entry.js → p-280f63fa.entry.js} +1 -1
- package/dist/vega/p-295326ca.entry.js +1 -0
- package/dist/vega/p-29d31c98.entry.js +1 -0
- package/dist/vega/{p-382b71a3.entry.js → p-29f42c27.entry.js} +1 -1
- package/dist/vega/p-2b5cf2b3.js +1 -0
- package/dist/vega/{p-0313393d.entry.js → p-30445cd9.entry.js} +1 -1
- package/dist/vega/p-318f0df5.js +1 -0
- package/dist/vega/p-337a5e76.js +1 -0
- package/dist/vega/p-3505f7cc.entry.js +1 -0
- package/dist/vega/p-38af89b9.js +1 -0
- package/dist/vega/p-3fae8d3f.entry.js +1 -0
- package/dist/vega/{p-b696a861.js → p-42141782.js} +1 -1
- package/dist/vega/{p-d1ca70a1.js → p-44044ed7.js} +1 -1
- package/dist/vega/p-475bd8bf.entry.js +1 -0
- package/dist/vega/{p-df5bfbc4.entry.js → p-47611a83.entry.js} +1 -1
- package/dist/vega/p-4e95248c.entry.js +1 -0
- package/dist/vega/p-4f938ee4.entry.js +1 -0
- package/dist/vega/{p-f3456993.entry.js → p-513f51ec.entry.js} +1 -1
- package/dist/vega/{p-ba415db6.entry.js → p-51d2e0ab.entry.js} +1 -1
- package/dist/vega/{p-ab21fdf6.entry.js → p-58b6ac33.entry.js} +1 -1
- package/dist/vega/{p-7362723e.entry.js → p-596bc4f6.entry.js} +1 -1
- package/dist/vega/{p-70f1cf4e.entry.js → p-597588d0.entry.js} +1 -1
- package/dist/vega/p-5f377954.js +1 -1
- package/dist/vega/p-5ffdea8e.js +1 -0
- package/dist/vega/{p-3224e47c.js → p-6572e038.js} +1 -1
- package/dist/vega/{p-b5c2fff3.entry.js → p-6d95390b.entry.js} +1 -1
- package/dist/vega/p-6e70d3cc.js +1 -0
- package/dist/vega/p-6e9f832f.js +1 -0
- package/dist/vega/{p-c9201bf4.js → p-76063dcb.js} +1 -1
- package/dist/vega/p-783531cf.entry.js +1 -0
- package/dist/vega/{p-35386999.entry.js → p-7d85cc74.entry.js} +1 -1
- package/dist/vega/p-7df43192.entry.js +1 -0
- package/dist/vega/p-7faaa5e1.entry.js +1 -0
- package/dist/vega/{p-517434d4.entry.js → p-8583dd34.entry.js} +1 -1
- package/dist/vega/p-85abe824.entry.js +1 -0
- package/dist/vega/p-874bf8b2.js +1 -0
- package/dist/vega/p-88b6184c.entry.js +1 -0
- package/dist/vega/p-8aee6b74.js +1 -0
- package/dist/vega/{p-1557ed92.entry.js → p-8b217c7e.entry.js} +1 -1
- package/dist/vega/p-8da66d41.entry.js +1 -0
- package/dist/vega/{p-b3e40faf.js → p-956b170c.js} +1 -1
- package/dist/vega/{p-1c45565d.js → p-9751c801.js} +1 -1
- package/dist/vega/{p-7ceab8c7.entry.js → p-97f36f4e.entry.js} +1 -1
- package/dist/vega/p-988401c3.entry.js +1 -0
- package/dist/vega/{p-47ca1f69.entry.js → p-9c1a48b9.entry.js} +1 -1
- package/dist/vega/p-9d854d43.js +1 -0
- package/dist/vega/p-9dcecdd3.js +1 -0
- package/dist/vega/{p-612e3ded.js → p-a07c0f8c.js} +1 -1
- package/dist/vega/{p-576fe408.js → p-a0c3968b.js} +1 -1
- package/dist/vega/p-a30ae8a1.js +1 -0
- package/dist/vega/p-a5bd3ecd.entry.js +1 -0
- package/dist/vega/p-a6dbc63d.entry.js +1 -0
- package/dist/vega/p-aa985d73.js +1 -0
- package/dist/vega/{p-44c5cbb7.js → p-ab829745.js} +1 -1
- package/dist/vega/p-b08a70e6.entry.js +1 -0
- package/dist/vega/p-b19b1c08.js +1 -0
- package/dist/vega/p-b5497af2.entry.js +1 -0
- package/dist/vega/p-b7624ce4.js +1 -0
- package/dist/vega/p-b9386dd0.js +1 -0
- package/dist/vega/{p-e84b95d4.js → p-b9947846.js} +1 -1
- package/dist/vega/p-b9a95aca.entry.js +1 -0
- package/dist/vega/{p-dc9b5063.entry.js → p-bb46d8e6.entry.js} +1 -1
- package/dist/vega/{p-ec1d76c6.entry.js → p-c366e7f7.entry.js} +1 -1
- package/dist/vega/p-c36afa21.entry.js +1 -0
- package/dist/vega/{p-60cf2a68.js → p-c8435185.js} +1 -1
- package/dist/vega/{p-04e56b0c.entry.js → p-c8d41cdc.entry.js} +1 -1
- package/dist/vega/p-cab70b95.entry.js +1 -0
- package/dist/vega/p-cc18970f.entry.js +1 -0
- package/dist/vega/p-d320496e.entry.js +1 -0
- package/dist/vega/{p-89e56502.js → p-d32e83e7.js} +1 -1
- package/dist/vega/{p-65900dbf.entry.js → p-d456386a.entry.js} +1 -1
- package/dist/vega/p-d4f1f007.js +3 -0
- package/dist/vega/{p-82016096.js → p-d5531d3c.js} +1 -1
- package/dist/vega/{p-4eb282ef.entry.js → p-d7bd2470.entry.js} +1 -1
- package/dist/vega/p-d872beb1.entry.js +1 -0
- package/dist/vega/p-d9d5c693.entry.js +1 -0
- package/dist/vega/{p-be3517be.entry.js → p-da742a7f.entry.js} +1 -1
- package/dist/vega/{p-204c7d41.js → p-dd6211cd.js} +1 -1
- package/dist/vega/{p-f48c43f4.entry.js → p-e340d58c.entry.js} +1 -1
- package/dist/vega/p-e71864ff.js +1 -0
- package/dist/vega/{p-7912741f.entry.js → p-e7a4b760.entry.js} +1 -1
- package/dist/vega/{p-ffa2e3a6.entry.js → p-ea564928.entry.js} +1 -1
- package/dist/vega/p-eb0ebf50.entry.js +1 -0
- package/dist/vega/p-ebdb489c.entry.js +1 -0
- package/dist/vega/{p-7c2fecfd.entry.js → p-ed01657b.entry.js} +1 -1
- package/dist/vega/p-eda7cd76.entry.js +1 -0
- package/dist/vega/{p-68a531cf.js → p-edda10f7.js} +1 -1
- package/dist/vega/{p-2c2df248.js → p-ef59f6f0.js} +1 -1
- package/dist/vega/{p-1a2f92a3.entry.js → p-efc8c09e.entry.js} +1 -1
- package/dist/vega/p-f020738c.entry.js +1 -0
- package/dist/vega/{p-878851f6.js → p-f28a6074.js} +1 -1
- package/dist/vega/{p-07a2b42a.js → p-f7a5746b.js} +1 -1
- package/dist/vega/{p-9dc23325.entry.js → p-f89cf75a.entry.js} +1 -1
- package/dist/vega/p-fb5ea4b2.js +1 -0
- package/dist/vega/p-fc7ab79d.js +1 -0
- package/dist/vega/vega.esm.js +1 -1
- package/package.json +1 -1
- package/dist/collection/components/vega-modal/slimmers/controllers/vega-modal-layout-controller.js +0 -146
- package/dist/types/components/vega-file-uploader/slimmers/controllers/vega-file-uploader-drop-file-filter-controller.d.ts +0 -22
- package/dist/types/components/vega-modal/slimmers/controllers/vega-modal-layout-controller.d.ts +0 -42
- package/dist/vega/p-010b5e74.js +0 -1
- package/dist/vega/p-01883ffc.entry.js +0 -1
- package/dist/vega/p-02578a59.js +0 -1
- package/dist/vega/p-043e685a.entry.js +0 -1
- package/dist/vega/p-08780df0.entry.js +0 -1
- package/dist/vega/p-10fa4eac.js +0 -1
- package/dist/vega/p-18619467.js +0 -1
- package/dist/vega/p-1feb4f2a.entry.js +0 -1
- package/dist/vega/p-203bc4db.entry.js +0 -1
- package/dist/vega/p-21c9e1ca.entry.js +0 -1
- package/dist/vega/p-22336063.js +0 -1
- package/dist/vega/p-224b67ff.entry.js +0 -1
- package/dist/vega/p-2d917e2d.entry.js +0 -1
- package/dist/vega/p-2e73582d.entry.js +0 -1
- package/dist/vega/p-334e3b02.entry.js +0 -1
- package/dist/vega/p-33860e54.js +0 -1
- package/dist/vega/p-365d21ac.entry.js +0 -1
- package/dist/vega/p-367d44d9.entry.js +0 -1
- package/dist/vega/p-3d2d267d.js +0 -1
- package/dist/vega/p-3f3c771a.entry.js +0 -1
- package/dist/vega/p-434fc427.entry.js +0 -1
- package/dist/vega/p-559197f8.js +0 -1
- package/dist/vega/p-5ae4ea20.entry.js +0 -1
- package/dist/vega/p-68124bc5.js +0 -1
- package/dist/vega/p-6af55f1c.entry.js +0 -1
- package/dist/vega/p-6c5250b3.js +0 -1
- package/dist/vega/p-6f2e5bc6.js +0 -1
- package/dist/vega/p-716c71e6.js +0 -1
- package/dist/vega/p-76b80a0c.js +0 -1
- package/dist/vega/p-7942c042.entry.js +0 -1
- package/dist/vega/p-8327635d.js +0 -1
- package/dist/vega/p-840ad046.entry.js +0 -1
- package/dist/vega/p-8ac2d165.js +0 -1
- package/dist/vega/p-8adf9732.entry.js +0 -1
- package/dist/vega/p-8b891f36.entry.js +0 -1
- package/dist/vega/p-9341c1a9.js +0 -1
- package/dist/vega/p-9390a94b.entry.js +0 -1
- package/dist/vega/p-9551da9c.entry.js +0 -1
- package/dist/vega/p-9862d1a8.entry.js +0 -1
- package/dist/vega/p-a4dbf2cc.js +0 -1
- package/dist/vega/p-a99e75a1.entry.js +0 -1
- package/dist/vega/p-b5a6bd0f.entry.js +0 -1
- package/dist/vega/p-c4e32125.entry.js +0 -1
- package/dist/vega/p-c5b698f6.entry.js +0 -1
- package/dist/vega/p-c61279a7.entry.js +0 -1
- package/dist/vega/p-c6d62f0d.js +0 -1
- package/dist/vega/p-c8feb644.entry.js +0 -1
- package/dist/vega/p-cc055723.entry.js +0 -1
- package/dist/vega/p-cca5042b.entry.js +0 -1
- package/dist/vega/p-cda45d2a.entry.js +0 -1
- package/dist/vega/p-cdf5b2f0.entry.js +0 -1
- package/dist/vega/p-d1494c7c.entry.js +0 -1
- package/dist/vega/p-d202e69d.entry.js +0 -1
- package/dist/vega/p-dcd18ab1.js +0 -1
- package/dist/vega/p-e4726dcd.entry.js +0 -1
- package/dist/vega/p-ea21462f.js +0 -1
- package/dist/vega/p-f4190826.entry.js +0 -1
- package/dist/vega/p-fdac91c4.entry.js +0 -1
|
@@ -0,0 +1,47 @@
|
|
|
1
|
+
import { RTEFilterStylesStrategy } from '../filter-styles-strategy.abstract';
|
|
2
|
+
import { Predicate } from '../predicate';
|
|
3
|
+
/**
|
|
4
|
+
* Filter styles strategy for code block node, which defines the styles to be filtered and the conditions for filtering and refilling styles for code block nodes.
|
|
5
|
+
*/
|
|
6
|
+
export class CodeBlockNodeFilterStylesStrategy extends RTEFilterStylesStrategy {
|
|
7
|
+
constructor() {
|
|
8
|
+
super(...arguments);
|
|
9
|
+
this.stylesToBeFiltered = CodeBlockNodeFilterStylesStrategy.STYLES;
|
|
10
|
+
this.elementTagName = 'pre code';
|
|
11
|
+
}
|
|
12
|
+
/**
|
|
13
|
+
* @inheritDoc
|
|
14
|
+
*/
|
|
15
|
+
canFilter(blockOrNodeInstance) {
|
|
16
|
+
return Predicate.isCodeBlockNode(blockOrNodeInstance);
|
|
17
|
+
}
|
|
18
|
+
/**
|
|
19
|
+
* The code node styles is preset and will convert to vega-code-block element so we don't need to to refill styles back to element.
|
|
20
|
+
*
|
|
21
|
+
* @param {string} _blockOrNodeClassName The class name of the block or node.
|
|
22
|
+
* @param {HTMLElement} _element The HTML element to check.
|
|
23
|
+
* @returns {boolean} False, as we don't need to refill styles for code nodes.
|
|
24
|
+
*/
|
|
25
|
+
// eslint-disable-next-line @typescript-eslint/no-unused-vars
|
|
26
|
+
canRefill(_blockOrNodeClassName, _element) {
|
|
27
|
+
return false;
|
|
28
|
+
}
|
|
29
|
+
/**
|
|
30
|
+
* @inheritDoc
|
|
31
|
+
*/
|
|
32
|
+
toCssText() {
|
|
33
|
+
return this.buildCssTextForStyles(this.elementTagName, this.classNameToBeAdded);
|
|
34
|
+
}
|
|
35
|
+
}
|
|
36
|
+
CodeBlockNodeFilterStylesStrategy.STYLES = {
|
|
37
|
+
boxSizing: 'border-box',
|
|
38
|
+
color: 'rgba(var(--v-text-primary, 32, 54, 69, 1))',
|
|
39
|
+
textAlign: 'left',
|
|
40
|
+
fontFamily: '"Roboto Mono"',
|
|
41
|
+
fontWeight: '400',
|
|
42
|
+
lineHeight: '22px',
|
|
43
|
+
fontSize: '16px',
|
|
44
|
+
whiteSpace: 'pre-wrap',
|
|
45
|
+
minHeight: '22px',
|
|
46
|
+
tabSize: '2px',
|
|
47
|
+
};
|
|
@@ -1,3 +1,4 @@
|
|
|
1
|
+
import { TypographyUrls } from '../../../../constants/tokens/typography';
|
|
1
2
|
/**
|
|
2
3
|
* Registry for managing filter styles strategies keyed by DTO class name.
|
|
3
4
|
*
|
|
@@ -31,5 +32,68 @@ export class RTEFilterStylesStrategyRegistry {
|
|
|
31
32
|
var _a;
|
|
32
33
|
return Array.from((_a = this.registry.get(dtoClassName)) !== null && _a !== void 0 ? _a : []);
|
|
33
34
|
}
|
|
35
|
+
/**
|
|
36
|
+
* Executes the appropriate filter styles strategy for a given block or node instance.
|
|
37
|
+
*
|
|
38
|
+
* @param {RTEBlock | RTENode} blockOrNodeInstance - The block or node instance to filter styles for.
|
|
39
|
+
* @param {RTEFilterStyles} styles - The full set of styles to filter.
|
|
40
|
+
* @param {string[]} classNames - The class names to consider.
|
|
41
|
+
* @returns {RTEFilterInlineStylesResult} The result of filtering, including the remaining styles and class names.
|
|
42
|
+
*/
|
|
43
|
+
static executeTheStrategyFilterAction(blockOrNodeInstance, styles, classNames) {
|
|
44
|
+
const dtoClassName = blockOrNodeInstance.constructor.name;
|
|
45
|
+
const strategies = this.getStrategies(dtoClassName);
|
|
46
|
+
const matchedStrategies = strategies.filter((strategy) => {
|
|
47
|
+
return strategy.canFilter(blockOrNodeInstance);
|
|
48
|
+
});
|
|
49
|
+
return matchedStrategies.reduce((result, strategy) => {
|
|
50
|
+
return strategy.filterAndDeleteStyles(result.styles, result.classNames);
|
|
51
|
+
}, {
|
|
52
|
+
styles,
|
|
53
|
+
classNames,
|
|
54
|
+
});
|
|
55
|
+
}
|
|
56
|
+
/**
|
|
57
|
+
* Executes the appropriate filter styles strategy for refilling styles on a given element.
|
|
58
|
+
*
|
|
59
|
+
* @param {string} dtoClassName The class name of the DTO.
|
|
60
|
+
* @param {HTMLElement} element The HTML element to refill styles on.
|
|
61
|
+
*/
|
|
62
|
+
static executeTheStrategyRefillAction(dtoClassName, element) {
|
|
63
|
+
const strategies = this.getStrategies(dtoClassName);
|
|
64
|
+
const matchedStrategies = strategies.filter((strategy) => {
|
|
65
|
+
return strategy.canRefill(dtoClassName, element);
|
|
66
|
+
});
|
|
67
|
+
matchedStrategies.forEach((strategy) => {
|
|
68
|
+
strategy.refillStyles(element);
|
|
69
|
+
});
|
|
70
|
+
}
|
|
71
|
+
/**
|
|
72
|
+
* Based on the registered strategies, generates the CSS text for all strategies in the registry. The generated CSS text is grouped by DTO class names for better organization.
|
|
73
|
+
*
|
|
74
|
+
* @param {boolean} enableFontFaceImports - A flag indicating whether to include font-face declarations for typography styles.
|
|
75
|
+
* @returns {string} The content of style file.
|
|
76
|
+
*/
|
|
77
|
+
static generateAllStylesContent(enableFontFaceImports = false) {
|
|
78
|
+
const styleBlocks = [];
|
|
79
|
+
if (enableFontFaceImports) {
|
|
80
|
+
styleBlocks.push('/* Font-face imports begin */\n');
|
|
81
|
+
styleBlocks.push(Object.keys(TypographyUrls)
|
|
82
|
+
.map((key) => {
|
|
83
|
+
return `@import url('${TypographyUrls[key].url}');\n`;
|
|
84
|
+
})
|
|
85
|
+
.join(' '));
|
|
86
|
+
styleBlocks.push('/* Font-face imports end */\n');
|
|
87
|
+
}
|
|
88
|
+
this.registry.forEach((strategies) => {
|
|
89
|
+
strategies.forEach((strategy) => {
|
|
90
|
+
const cssText = strategy.toCssText();
|
|
91
|
+
if (cssText && !styleBlocks.includes(cssText)) {
|
|
92
|
+
styleBlocks.push(cssText);
|
|
93
|
+
}
|
|
94
|
+
});
|
|
95
|
+
});
|
|
96
|
+
return styleBlocks.join(' ');
|
|
97
|
+
}
|
|
34
98
|
}
|
|
35
99
|
RTEFilterStylesStrategyRegistry.registry = new Map();
|
|
@@ -1,3 +1,5 @@
|
|
|
1
|
+
import { camelToDashCase } from '../../../../utils/string';
|
|
2
|
+
import { createStyleMapFromElement } from '../../helpers/utils';
|
|
1
3
|
/**
|
|
2
4
|
* Abstract strategy class for filtering default styles in the rich text editor.
|
|
3
5
|
* Concrete strategies define which styles to strip via `stylesToBeFiltered`.
|
|
@@ -7,18 +9,13 @@
|
|
|
7
9
|
* 2. Annotation parsing strategies – strip redundant defaults when converting HTML → DTO.
|
|
8
10
|
*/
|
|
9
11
|
export class RTEFilterStylesStrategy {
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
*
|
|
18
|
-
* @returns {boolean} Whether filtering should always apply.
|
|
19
|
-
*/
|
|
20
|
-
get alwaysFilter() {
|
|
21
|
-
return false;
|
|
12
|
+
constructor() {
|
|
13
|
+
/**
|
|
14
|
+
* The class name to be added to the element if the styles are successfully filtered. This should be defined in the concrete implementation of the strategy if needed.
|
|
15
|
+
* After the class name is added to the element, it will be removed in the next refill process to avoid redundant class names.
|
|
16
|
+
* The class name will only be added when the styles are successfully extracted, which means the expected styles are present in the full styles object and have been deleted from it.
|
|
17
|
+
*/
|
|
18
|
+
this.classNameToBeAdded = '';
|
|
22
19
|
}
|
|
23
20
|
/**
|
|
24
21
|
* Removes matched default styles from the `customStyle` property of the given annotations object.
|
|
@@ -38,6 +35,86 @@ export class RTEFilterStylesStrategy {
|
|
|
38
35
|
}
|
|
39
36
|
return annotations;
|
|
40
37
|
}
|
|
38
|
+
/**
|
|
39
|
+
* Filters and deletes the matched styles from the full styles object, add the corresponding class name if necessary, and returns the result.
|
|
40
|
+
*
|
|
41
|
+
* @param {RTEFilterStyles} fullStyles - The full set of styles to filter.
|
|
42
|
+
* @param {string[]} classNames - The class names to consider.
|
|
43
|
+
* @returns {RTEFilterInlineStylesResult} The filtered styles and class names.
|
|
44
|
+
*/
|
|
45
|
+
filterAndDeleteStyles(fullStyles, classNames) {
|
|
46
|
+
const classSet = new Set(classNames);
|
|
47
|
+
const shouldAddClass = this.extractAndDeleteMatchedStyles(fullStyles);
|
|
48
|
+
if (shouldAddClass && this.classNameToBeAdded) {
|
|
49
|
+
classSet.add(this.classNameToBeAdded);
|
|
50
|
+
}
|
|
51
|
+
return {
|
|
52
|
+
styles: fullStyles,
|
|
53
|
+
classNames: Array.from(classSet),
|
|
54
|
+
};
|
|
55
|
+
}
|
|
56
|
+
/**
|
|
57
|
+
* Refills the external styles for a given HTML element based on a matched external style rule.
|
|
58
|
+
*
|
|
59
|
+
* @param {HTMLElement} element - The HTML element to apply the styles to. The element's existing styles will be merged with the matched rule's styles, and the matched class name will be removed from the element.
|
|
60
|
+
*/
|
|
61
|
+
refillStyles(element) {
|
|
62
|
+
if (this.classNameToBeAdded) {
|
|
63
|
+
element.classList.remove(this.classNameToBeAdded);
|
|
64
|
+
}
|
|
65
|
+
const existingStyles = createStyleMapFromElement(element);
|
|
66
|
+
const mergedStyles = Object.assign(Object.assign({}, this.stylesToBeFiltered), existingStyles);
|
|
67
|
+
const cssText = Object.entries(Object.assign({}, mergedStyles))
|
|
68
|
+
.map(([key, value]) => `${camelToDashCase(key)}: ${value};`)
|
|
69
|
+
.join('');
|
|
70
|
+
element.setAttribute('style', cssText);
|
|
71
|
+
}
|
|
72
|
+
/**
|
|
73
|
+
* Determines if the strategy can filter the given block or node instance.
|
|
74
|
+
* Return false by default, concrete strategies should override this method to specify the filtering logic based on the block or node instance's properties, such as its type or annotations.
|
|
75
|
+
*
|
|
76
|
+
* @param {RTEBlock | RTENode} _blockOrNodeInstance - The block or node instance to check.
|
|
77
|
+
* @returns {boolean} True if the strategy can filter the instance, false otherwise.
|
|
78
|
+
*/
|
|
79
|
+
// eslint-disable-next-line @typescript-eslint/no-unused-vars
|
|
80
|
+
canFilter(_blockOrNodeInstance) {
|
|
81
|
+
return false;
|
|
82
|
+
}
|
|
83
|
+
/**
|
|
84
|
+
* Determines if the strategy can refill styles for the given block or node class name and element.
|
|
85
|
+
* Return false by default to avoid unnecessary refill attempts, concrete strategies should override this method to specify the refilling logic based on the class name and element properties, such as the presence of certain attributes or existing styles.
|
|
86
|
+
*
|
|
87
|
+
* @param {string} _blockOrNodeClassName - The class name of the block or node.
|
|
88
|
+
* @param {HTMLElement} _element - The HTML element to apply the styles to.
|
|
89
|
+
* @returns {boolean} True if the strategy can refill styles, false otherwise.
|
|
90
|
+
*/
|
|
91
|
+
// eslint-disable-next-line @typescript-eslint/no-unused-vars
|
|
92
|
+
canRefill(_blockOrNodeClassName, _element) {
|
|
93
|
+
return false;
|
|
94
|
+
}
|
|
95
|
+
/**
|
|
96
|
+
* Generates the CSS text to be applied to the element based on the strategy's styles to filter. This method should be implemented in the concrete strategy class to return the appropriate CSS text for the styles it handles.
|
|
97
|
+
* Return an empty string by default to avoid applying any styles when the method is not implemented in a concrete strategy.
|
|
98
|
+
*
|
|
99
|
+
* @returns {string} The CSS text to be applied to the element.
|
|
100
|
+
*/
|
|
101
|
+
toCssText() {
|
|
102
|
+
return '';
|
|
103
|
+
}
|
|
104
|
+
/**
|
|
105
|
+
* Whether this strategy should always filter, regardless of `autoMatchFormat`.
|
|
106
|
+
* Override to `true` when the filtered styles are always emitted as inline
|
|
107
|
+
* styles by the DTO (e.g. image `vertical-align`), so stripping them from
|
|
108
|
+
* `customStyle` is always safe.
|
|
109
|
+
*
|
|
110
|
+
* Defaults to `false` – the strategy only runs when `autoMatchFormat` is enabled.
|
|
111
|
+
* Used before invoke the filterAnnotations method.
|
|
112
|
+
*
|
|
113
|
+
* @returns {boolean} Whether filtering should always apply.
|
|
114
|
+
*/
|
|
115
|
+
get alwaysFilter() {
|
|
116
|
+
return false;
|
|
117
|
+
}
|
|
41
118
|
/**
|
|
42
119
|
* Removes configured default style properties from the target styles object.
|
|
43
120
|
* Only properties whose value matches the configured default exactly are deleted.
|
|
@@ -47,8 +124,8 @@ export class RTEFilterStylesStrategy {
|
|
|
47
124
|
*/
|
|
48
125
|
extractAndDeleteMatchedStyles(styles) {
|
|
49
126
|
let wasExtracted = false;
|
|
50
|
-
|
|
51
|
-
|
|
127
|
+
const defaults = this.stylesToBeFiltered;
|
|
128
|
+
if (styles && defaults) {
|
|
52
129
|
const styleKeys = Object.keys(defaults);
|
|
53
130
|
for (const key of styleKeys) {
|
|
54
131
|
if (styles[key] === defaults[key]) {
|
|
@@ -59,4 +136,60 @@ export class RTEFilterStylesStrategy {
|
|
|
59
136
|
}
|
|
60
137
|
return wasExtracted;
|
|
61
138
|
}
|
|
139
|
+
/**
|
|
140
|
+
* Converts the styles map to a CSS text string.
|
|
141
|
+
*
|
|
142
|
+
* @param {string} tagName The HTML tag name.
|
|
143
|
+
* @param {string} [className] The optional class name.
|
|
144
|
+
* @returns {string} The CSS text string.
|
|
145
|
+
*/
|
|
146
|
+
buildCssTextForStyles(tagName, className) {
|
|
147
|
+
const selector = `.${RTEFilterStylesStrategy.RTE_CONTENT_CONTAINER_CLASS_NAME}` +
|
|
148
|
+
(className ? ` .${className}` : ` ${tagName}`);
|
|
149
|
+
const styles = Object.entries(this.stylesToBeFiltered)
|
|
150
|
+
.map(([key, value]) => `${camelToDashCase(key)}: ${value};`)
|
|
151
|
+
.join(' ');
|
|
152
|
+
return `${selector} { ${styles} }`;
|
|
153
|
+
}
|
|
154
|
+
/**
|
|
155
|
+
* Converts the styles map to a CSS text string.
|
|
156
|
+
*
|
|
157
|
+
* @param {RTEFilterStyles} [styles] The styles to convert. If not provided, the strategy's stylesToBeFiltered will be used.
|
|
158
|
+
* @returns {string} The CSS text string.
|
|
159
|
+
*/
|
|
160
|
+
convertStylesMapToCssText(styles) {
|
|
161
|
+
const stylesToConvert = styles || this.stylesToBeFiltered;
|
|
162
|
+
return Object.entries(stylesToConvert)
|
|
163
|
+
.map(([key, value]) => `${camelToDashCase(key)}: ${value};`)
|
|
164
|
+
.join(' ');
|
|
165
|
+
}
|
|
166
|
+
/**
|
|
167
|
+
* Check if the styles of the block or node instance match the default paragraph styles.
|
|
168
|
+
*
|
|
169
|
+
* @param {RTEBlock | RTENode} blockOrNodeInstance - The block or node instance to check.
|
|
170
|
+
* @param {string[]} [checkedKeys] - Optional array of style keys to check. If not provided, all keys in stylesToBeFiltered will be checked.
|
|
171
|
+
* @returns {boolean} - True if the styles match the default paragraph styles, false otherwise.
|
|
172
|
+
*/
|
|
173
|
+
isBlockOrNodeStylesMatchFilterStyles(blockOrNodeInstance, checkedKeys) {
|
|
174
|
+
const styles = blockOrNodeInstance.getStyles({ standalone: true });
|
|
175
|
+
return this.isMatchFilterStyles(styles, checkedKeys);
|
|
176
|
+
}
|
|
177
|
+
/**
|
|
178
|
+
* Checks if the given itemStyles match the default paragraph styles.
|
|
179
|
+
*
|
|
180
|
+
* @param {RTEFilterStyles} itemStyles - The styles to check against the default paragraph styles.
|
|
181
|
+
* @param {string[]} [checkedKeys] - Optional array of style keys to check. If not provided, all keys in stylesToBeFiltered will be checked.
|
|
182
|
+
* @returns {boolean} - True if the itemStyles match the default paragraph styles, false otherwise.
|
|
183
|
+
*/
|
|
184
|
+
isMatchFilterStyles(itemStyles, checkedKeys) {
|
|
185
|
+
const keysToCheck = checkedKeys && checkedKeys.length > 0 ? checkedKeys : Object.keys(this.stylesToBeFiltered);
|
|
186
|
+
return keysToCheck.every((key) => {
|
|
187
|
+
return itemStyles[key] === this.stylesToBeFiltered[key];
|
|
188
|
+
});
|
|
189
|
+
}
|
|
62
190
|
}
|
|
191
|
+
/**
|
|
192
|
+
* Used for generate the style text, all styles should inside the content container.
|
|
193
|
+
* For example, if the style text is .v-rte-title {font-size: 24px;} the final generated style text should be .vega-rte-content .v-rte-title {font-size: 24px;} to make sure the styles are only applied to the elements inside the content container.
|
|
194
|
+
*/
|
|
195
|
+
RTEFilterStylesStrategy.RTE_CONTENT_CONTAINER_CLASS_NAME = 'vega-rte-content';
|
|
@@ -1,16 +1,39 @@
|
|
|
1
1
|
import { ImageAnnotation } from '../../annotations/image-annotation';
|
|
2
2
|
import { RTEFilterStylesStrategy } from '../filter-styles-strategy.abstract';
|
|
3
|
+
import { Predicate } from '../predicate';
|
|
3
4
|
/**
|
|
4
|
-
*
|
|
5
|
-
* customStyle when parsing an RTEImageNode.
|
|
5
|
+
* Filter styles strategy for image node, which defines the styles to be filtered and the conditions for filtering and refilling styles for image nodes.
|
|
6
6
|
*/
|
|
7
7
|
export class ImageFilterStylesStrategy extends RTEFilterStylesStrategy {
|
|
8
8
|
constructor() {
|
|
9
9
|
super(...arguments);
|
|
10
10
|
this.stylesToBeFiltered = ImageAnnotation.getDefaultStyles();
|
|
11
|
+
this.elementTagName = 'img';
|
|
11
12
|
}
|
|
12
|
-
/**
|
|
13
|
+
/**
|
|
14
|
+
* Used for the filterAnnotations method.
|
|
15
|
+
*
|
|
16
|
+
* @returns {boolean} Always `true` — image defaults are emitted as inline styles.
|
|
17
|
+
*/
|
|
13
18
|
get alwaysFilter() {
|
|
14
19
|
return true;
|
|
15
20
|
}
|
|
21
|
+
/**
|
|
22
|
+
* @inheritDoc
|
|
23
|
+
*/
|
|
24
|
+
canFilter(blockOrNodeInstance) {
|
|
25
|
+
return Predicate.isImageNode(blockOrNodeInstance);
|
|
26
|
+
}
|
|
27
|
+
/**
|
|
28
|
+
* @inheritDoc
|
|
29
|
+
*/
|
|
30
|
+
canRefill(_blockOrNodeClassName, element) {
|
|
31
|
+
return element.tagName.toLowerCase() === this.elementTagName;
|
|
32
|
+
}
|
|
33
|
+
/**
|
|
34
|
+
* @inheritDoc
|
|
35
|
+
*/
|
|
36
|
+
toCssText() {
|
|
37
|
+
return this.buildCssTextForStyles(this.elementTagName, this.classNameToBeAdded);
|
|
38
|
+
}
|
|
16
39
|
}
|
|
@@ -1,5 +1,6 @@
|
|
|
1
1
|
import { ListAnnotation } from '../../annotations/list-annotation';
|
|
2
2
|
import { RTEFilterStylesStrategy } from '../filter-styles-strategy.abstract';
|
|
3
|
+
import { Predicate } from '../predicate';
|
|
3
4
|
/**
|
|
4
5
|
* Filters the default ListAnnotation styles (paddingLeft, marginLeft) from
|
|
5
6
|
* customStyle when parsing an RTEListBlock.
|
|
@@ -8,5 +9,28 @@ export class ListBlockFilterStylesStrategy extends RTEFilterStylesStrategy {
|
|
|
8
9
|
constructor() {
|
|
9
10
|
super(...arguments);
|
|
10
11
|
this.stylesToBeFiltered = ListAnnotation.getDefaultStyles();
|
|
12
|
+
this.elementTagName = 'ol,ul';
|
|
13
|
+
}
|
|
14
|
+
/**
|
|
15
|
+
* @inheritDoc
|
|
16
|
+
*/
|
|
17
|
+
canFilter(blockOrNodeInstance) {
|
|
18
|
+
return Predicate.isListBlock(blockOrNodeInstance.constructor.name);
|
|
19
|
+
}
|
|
20
|
+
/**
|
|
21
|
+
* @inheritDoc
|
|
22
|
+
*/
|
|
23
|
+
canRefill(blockOrNodeClassName, element) {
|
|
24
|
+
return Predicate.isListBlock(blockOrNodeClassName) && element.matches(this.elementTagName);
|
|
25
|
+
}
|
|
26
|
+
/**
|
|
27
|
+
* @inheritDoc
|
|
28
|
+
*/
|
|
29
|
+
toCssText() {
|
|
30
|
+
const selector = this.elementTagName
|
|
31
|
+
.split(',')
|
|
32
|
+
.map((tag) => `.${RTEFilterStylesStrategy.RTE_CONTENT_CONTAINER_CLASS_NAME} ${tag.trim()}`)
|
|
33
|
+
.join(', ');
|
|
34
|
+
return `${selector} { ${this.convertStylesMapToCssText(this.stylesToBeFiltered)} }`;
|
|
11
35
|
}
|
|
12
36
|
}
|
|
@@ -0,0 +1,29 @@
|
|
|
1
|
+
import { Predicate } from '../predicate';
|
|
2
|
+
import { HeadingFilterStylesStrategy } from '../text-block/heading-filter-styles-strategy';
|
|
3
|
+
/**
|
|
4
|
+
* Filters the default heading styles from customStyle when parsing an RTEListItemBlock that is supposed to be a heading.
|
|
5
|
+
*/
|
|
6
|
+
export class ListHeadingItemBlockFilterStylesStrategy extends HeadingFilterStylesStrategy {
|
|
7
|
+
constructor(level) {
|
|
8
|
+
super(level);
|
|
9
|
+
this.classNameToBeAdded = `v-rte-h${level}`;
|
|
10
|
+
this.elementTagName = 'li';
|
|
11
|
+
}
|
|
12
|
+
/**
|
|
13
|
+
* Check the important font-size and line-height for list item block are default styles, and the block is a list item block.
|
|
14
|
+
*
|
|
15
|
+
* @inheritDoc
|
|
16
|
+
*/
|
|
17
|
+
canFilter(blockOrNodeInstance) {
|
|
18
|
+
return (Predicate.isListItemBlock(blockOrNodeInstance.constructor.name) &&
|
|
19
|
+
this.isBlockOrNodeStylesMatchFilterStyles(blockOrNodeInstance, ['fontSize', 'lineHeight']));
|
|
20
|
+
}
|
|
21
|
+
/**
|
|
22
|
+
* @inheritDoc
|
|
23
|
+
*/
|
|
24
|
+
canRefill(blockOrNodeClassName, element) {
|
|
25
|
+
return (Predicate.isListItemBlock(blockOrNodeClassName) &&
|
|
26
|
+
element.matches(this.elementTagName) &&
|
|
27
|
+
element.classList.contains(this.classNameToBeAdded));
|
|
28
|
+
}
|
|
29
|
+
}
|
|
@@ -1,5 +1,6 @@
|
|
|
1
1
|
import { TextStyleAnnotation } from '../../annotations/text-style-annotation';
|
|
2
2
|
import { RTEFilterStylesStrategy } from '../filter-styles-strategy.abstract';
|
|
3
|
+
import { Predicate } from '../predicate';
|
|
3
4
|
/**
|
|
4
5
|
* Filters the default paragraph styles from customStyle when parsing an
|
|
5
6
|
* RTEListItemBlock. List-item blocks implicitly use paragraph styling,
|
|
@@ -8,6 +9,43 @@ import { RTEFilterStylesStrategy } from '../filter-styles-strategy.abstract';
|
|
|
8
9
|
export class ListItemBlockFilterStylesStrategy extends RTEFilterStylesStrategy {
|
|
9
10
|
constructor() {
|
|
10
11
|
super(...arguments);
|
|
11
|
-
this.stylesToBeFiltered = TextStyleAnnotation.getDefaultStyles('paragraph')
|
|
12
|
+
this.stylesToBeFiltered = TextStyleAnnotation.getDefaultStyles('paragraph');
|
|
13
|
+
this.elementTagName = 'li';
|
|
14
|
+
this.headingOrTitleClassNamePattern = /^v-rte-(h[1-6]|title|subtitle)$/;
|
|
15
|
+
}
|
|
16
|
+
/**
|
|
17
|
+
* Check the important font-size for list item block are default styles, and the block is a list item block.
|
|
18
|
+
*
|
|
19
|
+
* @inheritDoc
|
|
20
|
+
*/
|
|
21
|
+
canFilter(blockOrNodeInstance) {
|
|
22
|
+
const styles = blockOrNodeInstance.getStyles();
|
|
23
|
+
const isDefaultStyles = !styles.fontSize ||
|
|
24
|
+
this.isBlockOrNodeStylesMatchFilterStyles(blockOrNodeInstance, ['fontSize', 'lineHeight']);
|
|
25
|
+
return Predicate.isListItemBlock(blockOrNodeInstance.constructor.name) && isDefaultStyles;
|
|
26
|
+
}
|
|
27
|
+
/**
|
|
28
|
+
* @inheritDoc
|
|
29
|
+
*/
|
|
30
|
+
canRefill(blockOrNodeClassName, element) {
|
|
31
|
+
return (Predicate.isListItemBlock(blockOrNodeClassName) &&
|
|
32
|
+
element.matches(this.elementTagName) &&
|
|
33
|
+
this.isElementNotHeadingOrTitle(element));
|
|
34
|
+
}
|
|
35
|
+
/**
|
|
36
|
+
* @inheritDoc
|
|
37
|
+
*/
|
|
38
|
+
toCssText() {
|
|
39
|
+
return this.buildCssTextForStyles(this.elementTagName);
|
|
40
|
+
}
|
|
41
|
+
/**
|
|
42
|
+
* Check the list item element does not have heading or title class names.
|
|
43
|
+
*
|
|
44
|
+
* @param {HTMLElement} element - The list item element to check.
|
|
45
|
+
* @returns {boolean} - True if the element does not have heading or title class names, false otherwise.
|
|
46
|
+
*/
|
|
47
|
+
isElementNotHeadingOrTitle(element) {
|
|
48
|
+
const classNames = element.className.split(' ');
|
|
49
|
+
return !classNames.some((className) => this.headingOrTitleClassNamePattern.test(className.trim()));
|
|
12
50
|
}
|
|
13
51
|
}
|
|
@@ -0,0 +1,29 @@
|
|
|
1
|
+
import { Predicate } from '../predicate';
|
|
2
|
+
import { TitleFilterStylesStrategy } from '../text-block/title-filter-styles-strategy';
|
|
3
|
+
/**
|
|
4
|
+
* Filters the default title/subtitle styles from customStyle when parsing an RTEListItemBlock that is supposed to be a title/subtitle.
|
|
5
|
+
*/
|
|
6
|
+
export class ListTitleItemBlockFilterStylesStrategy extends TitleFilterStylesStrategy {
|
|
7
|
+
constructor(type) {
|
|
8
|
+
super(type);
|
|
9
|
+
this.classNameToBeAdded = `v-rte-${type}`;
|
|
10
|
+
this.elementTagName = 'li';
|
|
11
|
+
}
|
|
12
|
+
/**
|
|
13
|
+
* Check the important font-size and line-height for list item block are default styles, and the block is a list item block.
|
|
14
|
+
*
|
|
15
|
+
* @inheritDoc
|
|
16
|
+
*/
|
|
17
|
+
canFilter(blockOrNodeInstance) {
|
|
18
|
+
return (Predicate.isListItemBlock(blockOrNodeInstance.constructor.name) &&
|
|
19
|
+
this.isBlockOrNodeStylesMatchFilterStyles(blockOrNodeInstance, ['fontSize', 'lineHeight']));
|
|
20
|
+
}
|
|
21
|
+
/**
|
|
22
|
+
* @inheritDoc
|
|
23
|
+
*/
|
|
24
|
+
canRefill(blockOrNodeClassName, element) {
|
|
25
|
+
return (Predicate.isListItemBlock(blockOrNodeClassName) &&
|
|
26
|
+
element.matches(this.elementTagName) &&
|
|
27
|
+
element.classList.contains(this.classNameToBeAdded));
|
|
28
|
+
}
|
|
29
|
+
}
|
package/dist/collection/components/vega-rich-text-editor/dto/filter-styles-strategies/predicate.js
ADDED
|
@@ -0,0 +1,94 @@
|
|
|
1
|
+
import { NodeAnnotationTypeEnum } from '../annotations/node-annotation.abstract';
|
|
2
|
+
/**
|
|
3
|
+
* Predicate class provides static methods to check specific conditions on HTML elements or dto instances.
|
|
4
|
+
*/
|
|
5
|
+
export class Predicate {
|
|
6
|
+
/**
|
|
7
|
+
* Checks if the given class name corresponds to a text block.
|
|
8
|
+
*
|
|
9
|
+
* @param {string} className The class name to check.
|
|
10
|
+
* @returns {boolean} True if the class name corresponds to a text block, false otherwise.
|
|
11
|
+
*/
|
|
12
|
+
static isTextBlock(className) {
|
|
13
|
+
return className === this.RTE_TEXT_BLOCK_CLASS_NAME;
|
|
14
|
+
}
|
|
15
|
+
/**
|
|
16
|
+
* Checks if the given class name corresponds to a code block.
|
|
17
|
+
*
|
|
18
|
+
* @param {string} className The class name to check.
|
|
19
|
+
* @returns {boolean} True if the class name corresponds to a code block, false otherwise.
|
|
20
|
+
*/
|
|
21
|
+
static isCodeBlock(className) {
|
|
22
|
+
return className === 'RTECodeBlock';
|
|
23
|
+
}
|
|
24
|
+
/**
|
|
25
|
+
* Checks if the given class name corresponds to a list block.
|
|
26
|
+
*
|
|
27
|
+
* @param {string} className The class name to check.
|
|
28
|
+
* @returns {boolean} True if the class name corresponds to a list block, false otherwise.
|
|
29
|
+
*/
|
|
30
|
+
static isListBlock(className) {
|
|
31
|
+
return className === 'RTEListBlock';
|
|
32
|
+
}
|
|
33
|
+
/**
|
|
34
|
+
* Checks if the given class name corresponds to a list item block.
|
|
35
|
+
*
|
|
36
|
+
* @param {string} className The class name to check.
|
|
37
|
+
* @returns {boolean} True if the class name corresponds to a list item block, false otherwise.
|
|
38
|
+
*/
|
|
39
|
+
static isListItemBlock(className) {
|
|
40
|
+
return className === 'RTEListItemBlock';
|
|
41
|
+
}
|
|
42
|
+
/**
|
|
43
|
+
* Checks if the given class name corresponds to a text node.
|
|
44
|
+
*
|
|
45
|
+
* @param {string} className The class name to check.
|
|
46
|
+
* @returns {boolean} True if the class name corresponds to a text node, false otherwise.
|
|
47
|
+
*/
|
|
48
|
+
static isTextNode(className) {
|
|
49
|
+
return className === this.RTE_TEXT_NODE_CLASS_NAME;
|
|
50
|
+
}
|
|
51
|
+
/**
|
|
52
|
+
* Checks if the given block or node instance is a text node and has a link annotation.
|
|
53
|
+
*
|
|
54
|
+
* @param {RTEBlock | RTENode} blockOrNodeInstance The block or node instance to check.
|
|
55
|
+
* @returns {boolean} True if the block or node instance is a text node and has a link annotation, false otherwise.
|
|
56
|
+
*/
|
|
57
|
+
static isLinkNode(blockOrNodeInstance) {
|
|
58
|
+
return (this.isTextNode(blockOrNodeInstance.constructor.name) &&
|
|
59
|
+
!!blockOrNodeInstance.getAnnotationByType(NodeAnnotationTypeEnum.LINK));
|
|
60
|
+
}
|
|
61
|
+
/**
|
|
62
|
+
* Checks if the given block or node instance is a code node, which is defined as a text node that has a code annotation.
|
|
63
|
+
*
|
|
64
|
+
* @param {RTEBlock | RTENode} blockOrNodeInstance The block or node instance to check.
|
|
65
|
+
* @returns {boolean} True if the block or node instance is a code node, false otherwise.
|
|
66
|
+
*/
|
|
67
|
+
static isCodeNode(blockOrNodeInstance) {
|
|
68
|
+
if (this.isTextNode(blockOrNodeInstance.constructor.name)) {
|
|
69
|
+
const codeAnnotation = blockOrNodeInstance.getAnnotationByType(NodeAnnotationTypeEnum.CODE);
|
|
70
|
+
return !!codeAnnotation && codeAnnotation.code;
|
|
71
|
+
}
|
|
72
|
+
return false;
|
|
73
|
+
}
|
|
74
|
+
/**
|
|
75
|
+
* Check if the given block or node instance is an image node, which is defined as an instance of RTEImageNode.
|
|
76
|
+
*
|
|
77
|
+
* @param {RTEBlock | RTENode} blockOrNodeInstance The block or node instance to check.
|
|
78
|
+
* @returns {boolean} True if the block or node instance is an image node, false otherwise.
|
|
79
|
+
*/
|
|
80
|
+
static isImageNode(blockOrNodeInstance) {
|
|
81
|
+
return blockOrNodeInstance.constructor.name === 'RTEImageNode';
|
|
82
|
+
}
|
|
83
|
+
/**
|
|
84
|
+
* Check if the given block or node instance is a code block node, which is defined as an instance of RTECodeBlockNode.
|
|
85
|
+
*
|
|
86
|
+
* @param {RTEBlock | RTENode} blockOrNodeInstance The block or node instance to check.
|
|
87
|
+
* @returns {boolean} True if the block or node instance is a code block node, false otherwise.
|
|
88
|
+
*/
|
|
89
|
+
static isCodeBlockNode(blockOrNodeInstance) {
|
|
90
|
+
return blockOrNodeInstance.constructor.name === 'RTECodeBlockNode';
|
|
91
|
+
}
|
|
92
|
+
}
|
|
93
|
+
Predicate.RTE_TEXT_NODE_CLASS_NAME = 'RTETextNode';
|
|
94
|
+
Predicate.RTE_TEXT_BLOCK_CLASS_NAME = 'RTETextBlock';
|
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
import { TextStyleAnnotation } from '../../annotations/text-style-annotation';
|
|
2
|
+
import { ParagraphFilterStylesStrategy } from './paragraph-filter-styles-strategy';
|
|
3
|
+
/**
|
|
4
|
+
* The HeadingFilterStylesStrategy class is responsible for filtering and refilling styles for heading text blocks (h1 to h6) in the rich text editor.
|
|
5
|
+
*/
|
|
6
|
+
export class HeadingFilterStylesStrategy extends ParagraphFilterStylesStrategy {
|
|
7
|
+
constructor(level) {
|
|
8
|
+
super();
|
|
9
|
+
this.type = 'heading-1';
|
|
10
|
+
this.elementTagName = 'h1';
|
|
11
|
+
this.type = `heading-${level}`;
|
|
12
|
+
this.elementTagName = `h${level}`;
|
|
13
|
+
this.stylesToBeFiltered = TextStyleAnnotation.getDefaultStyles(this.type);
|
|
14
|
+
}
|
|
15
|
+
}
|
|
@@ -0,0 +1,48 @@
|
|
|
1
|
+
import { TextStyleAnnotation } from '../../annotations/text-style-annotation';
|
|
2
|
+
import { RTEFilterStylesStrategy } from '../filter-styles-strategy.abstract';
|
|
3
|
+
import { Predicate } from '../predicate';
|
|
4
|
+
/**
|
|
5
|
+
*
|
|
6
|
+
*/
|
|
7
|
+
export class ParagraphFilterStylesStrategy extends RTEFilterStylesStrategy {
|
|
8
|
+
constructor() {
|
|
9
|
+
super(...arguments);
|
|
10
|
+
this.stylesToBeFiltered = TextStyleAnnotation.getDefaultStyles('paragraph');
|
|
11
|
+
this.type = 'paragraph';
|
|
12
|
+
this.elementTagName = 'p';
|
|
13
|
+
}
|
|
14
|
+
/**
|
|
15
|
+
* Don't run the filterAnnotations for paragraph heading, title, subtitle, list heading item, list title item, list subtitle item.
|
|
16
|
+
* Already handle it in html-element-to-annotation-generator.ts#removeTextStyleDefaultsFromCustomStyle
|
|
17
|
+
*
|
|
18
|
+
* @inheritDoc
|
|
19
|
+
*/
|
|
20
|
+
filterAnnotations(annotations) {
|
|
21
|
+
return annotations;
|
|
22
|
+
}
|
|
23
|
+
/**
|
|
24
|
+
* Determines whether the dto instance is text block and has the same type as the strategy's configured type.
|
|
25
|
+
*
|
|
26
|
+
* @param {RTEBlock | RTENode} blockOrNodeInstance - The block or node instance to check.
|
|
27
|
+
* @returns {boolean} - True if the instance is a text block with the same type as the strategy, false otherwise.
|
|
28
|
+
*/
|
|
29
|
+
canFilter(blockOrNodeInstance) {
|
|
30
|
+
return (Predicate.isTextBlock(blockOrNodeInstance.constructor.name) &&
|
|
31
|
+
blockOrNodeInstance.type === this.type);
|
|
32
|
+
}
|
|
33
|
+
/**
|
|
34
|
+
* @inheritDoc
|
|
35
|
+
*/
|
|
36
|
+
canRefill(blockOrNodeClassName, element) {
|
|
37
|
+
const selector = this.classNameToBeAdded
|
|
38
|
+
? `.${this.classNameToBeAdded}`
|
|
39
|
+
: this.elementTagName;
|
|
40
|
+
return Predicate.isTextBlock(blockOrNodeClassName) && element.matches(selector);
|
|
41
|
+
}
|
|
42
|
+
/**
|
|
43
|
+
* @inheritDoc
|
|
44
|
+
*/
|
|
45
|
+
toCssText() {
|
|
46
|
+
return this.buildCssTextForStyles(this.elementTagName, this.classNameToBeAdded);
|
|
47
|
+
}
|
|
48
|
+
}
|