@heartlandone/vega 2.75.0 → 2.76.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-bf183914.js → app-globals-12b7d808.js} +28 -32
- package/dist/cjs/breakpoints-751d433a.js +56 -0
- package/dist/cjs/{child-nodes-event-prevent-slimmer-aca87dac.js → child-nodes-event-prevent-slimmer-84435957.js} +2 -2
- package/dist/cjs/{child-nodes-notify-observer-slimmer-257fedb3.js → child-nodes-notify-observer-slimmer-ed39283b.js} +1 -1
- package/dist/cjs/{code-block-c1d2e6a8.js → code-block-f1480ec3.js} +17 -17
- package/dist/cjs/{component-global-style-slimmer-adfa2e59.js → component-global-style-slimmer-93c5fb50.js} +2 -1
- package/dist/cjs/{component-usage-runtime-metrics-d10ace87.js → component-usage-runtime-metrics-4572c5b7.js} +1 -1
- package/dist/cjs/{component-value-history-controller-slimmer.abstract-787c67dc.js → component-value-history-controller-slimmer.abstract-a9264cc8.js} +5 -5
- package/dist/cjs/{create-public-api-runtime-metrics-slimmer-e2e274e1.js → create-public-api-runtime-metrics-slimmer-9cb09fb2.js} +3 -41
- package/dist/cjs/{dark-mode-style-controller-c21172aa.js → dark-mode-style-controller-3a04af3d.js} +292 -1254
- package/dist/cjs/{date-required-rule-30ee62d0.js → date-required-rule-912469e0.js} +1 -1
- package/dist/cjs/{design-token-cbc01283.js → design-token-41baf118.js} +2 -2
- package/dist/cjs/dom-node-subject-observer-factory-c62823de.js +141 -0
- package/dist/cjs/{dto-renderer-manager-2fc24151.js → dto-renderer-manager-809c947b.js} +230 -55
- package/dist/cjs/{element-appender-slimmer-318d29c7.js → element-appender-slimmer-34e4eb56.js} +349 -166
- package/dist/cjs/{event-emit-slimmer-2dacabbd.js → event-emit-slimmer-062cdcb8.js} +2 -2
- package/dist/cjs/{feature-flag-controller-ce2162c8.js → feature-flag-controller-04cb1e69.js} +7 -1
- package/dist/cjs/{form-field-controller-slimmer-aef2fb1e.js → form-field-controller-slimmer-102f37c7.js} +13 -14
- package/dist/cjs/{internal-icon-manager-32f9ed63.js → icon-manager-c12c6ea9.js} +1 -52
- package/dist/cjs/{image-annotation-action-e4a35325.js → image-annotation-action-8d9fa20c.js} +10 -9
- package/dist/cjs/index-592b4052.js +220 -0
- package/dist/cjs/{index-4d7bce1a.js → index-f054eb5d.js} +15 -3
- package/dist/cjs/index.cjs.js +68 -65
- package/dist/cjs/{inject-keyboard-manager-d21b4387.js → inject-keyboard-manager-0f5bd568.js} +1 -1
- package/dist/cjs/internal-icon-manager-c989189a.js +55 -0
- package/dist/cjs/{translation-5f9f9c0c.js → internal-translation-controller-053eb0f1.js} +0 -93
- package/dist/cjs/{internal-vega-event-manager-6befeb34.js → internal-vega-event-manager-f7ecf3d4.js} +81 -81
- package/dist/cjs/internal-vega-z-index-manager-f03ddb37.js +180 -0
- package/dist/cjs/{keyboard-manager-3dea6b28.js → keyboard-manager-055e9f67.js} +2 -2
- package/dist/cjs/{keyboard-manager-slimmer-0d45f944.js → keyboard-manager-slimmer-0cc0c1c7.js} +1 -1
- package/dist/cjs/loader.cjs.js +26 -23
- package/dist/cjs/misc-3d30df91.js +41 -0
- package/dist/cjs/{month-view-generator-49cc5fc2.js → month-view-generator-6a6dd527.js} +1 -1
- package/dist/cjs/{page-resize-observer-slimmer-11937d6f.js → page-resize-observer-slimmer-7f065ee1.js} +2 -54
- package/dist/cjs/{public-rules-661823fa.js → public-rules-922849f3.js} +12 -13
- package/dist/cjs/{range-79b668e7.js → range-8aa49b08.js} +2 -2
- package/dist/cjs/{responsive-format-facade-f71d399c.js → responsive-format-facade-ea59bdcd.js} +13 -22
- package/dist/cjs/{rich-text-editor-required-rule-d5feeffd.js → rich-text-editor-required-rule-22225840.js} +1 -1
- package/dist/cjs/{string-format-strategy.abstract-63514c60.js → string-format-strategy.abstract-f2575647.js} +1 -1
- package/dist/cjs/{string-input-formatter-slimmer-f3e0bbc7.js → string-input-formatter-slimmer-0a334fc6.js} +5 -5
- package/dist/cjs/{string-mask-strategy-d23ac21a.js → string-mask-strategy-dda58395.js} +2 -2
- package/dist/cjs/{style-formatter-566df206.js → style-formatter-0c3ced39.js} +2 -2
- package/dist/cjs/{sub-state-notify-slimmer-468e19aa.js → sub-state-notify-slimmer-58121111.js} +1 -1
- package/dist/cjs/{sub-state-observer-slimmer-5d0b8ac3.js → sub-state-observer-slimmer-1dfbc4c3.js} +2 -2
- package/dist/cjs/{time-required-rule-c96ecdc9.js → time-required-rule-d6fa7aa8.js} +1 -1
- package/dist/cjs/{function-extension-ca9aa115.js → token-extension-07cac85d.js} +501 -387
- package/dist/cjs/{translation-slimmer-f0ebe710.js → translation-slimmer-4533bd67.js} +4 -4
- package/dist/cjs/{type-guard-a0f026d8.js → type-guard-407ba0b8.js} +3 -3
- package/dist/cjs/{ui-9e181079.js → ui-234ea151.js} +12 -0
- package/dist/cjs/{valid-credit-card-number-rule-c854bed9.js → valid-credit-card-number-rule-41a8b51b.js} +1 -1
- package/dist/cjs/vega-accordion.cjs.entry.js +21 -30
- package/dist/cjs/vega-app-footer.cjs.entry.js +3 -3
- package/dist/cjs/vega-app-header-button.cjs.entry.js +183 -49
- package/dist/cjs/vega-backdrop.cjs.entry.js +2 -2
- package/dist/cjs/vega-banner.cjs.entry.js +15 -13
- package/dist/cjs/vega-bar-chart.cjs.entry.js +1 -1
- package/dist/cjs/vega-box.cjs.entry.js +18 -33
- package/dist/cjs/vega-brand-logo.cjs.entry.js +7 -5
- package/dist/cjs/vega-breadcrumb.cjs.entry.js +14 -13
- package/dist/cjs/vega-button-circle.cjs.entry.js +20 -30
- package/dist/cjs/vega-button-group_2.cjs.entry.js +15 -15
- package/dist/cjs/vega-button-link.cjs.entry.js +15 -14
- package/dist/cjs/vega-button.cjs.entry.js +21 -30
- package/dist/cjs/vega-calendar_4.cjs.entry.js +48 -45
- package/dist/cjs/vega-card.cjs.entry.js +9 -28
- package/dist/cjs/vega-carousel.cjs.entry.js +15 -26
- package/dist/cjs/vega-checkbox_2.cjs.entry.js +22 -20
- package/dist/cjs/vega-chip.cjs.entry.js +22 -33
- package/dist/cjs/vega-code-block.cjs.entry.js +658 -2709
- package/dist/cjs/vega-color-picker.cjs.entry.js +15 -12
- package/dist/cjs/vega-combo-box.cjs.entry.js +29 -28
- package/dist/cjs/vega-counter-badge.cjs.entry.js +1 -1
- package/dist/cjs/vega-date-picker_2.cjs.entry.js +53 -56
- package/dist/cjs/vega-dialog-controller-03ef4d9a.js +84 -0
- package/dist/cjs/vega-dialog_2.cjs.entry.js +37 -44
- package/dist/cjs/vega-divider.cjs.entry.js +12 -30
- package/dist/cjs/vega-dropdown_5.cjs.entry.js +49 -55
- package/dist/cjs/vega-env-manager-23b8b23c.js +2 -2
- package/dist/cjs/{dom-node-subject-observer-factory-b5e71bf6.js → vega-event-id-ee01d8dd.js} +0 -139
- package/dist/cjs/vega-field-error.cjs.entry.js +1 -1
- package/dist/cjs/vega-field-label.cjs.entry.js +9 -8
- package/dist/cjs/vega-file-uploader.cjs.entry.js +28 -23
- package/dist/cjs/vega-flag-icon.cjs.entry.js +13 -27
- package/dist/cjs/vega-flex.cjs.entry.js +11 -28
- package/dist/cjs/vega-font.cjs.entry.js +12 -29
- package/dist/cjs/vega-form.cjs.entry.js +24 -22
- package/dist/cjs/vega-grid.cjs.entry.js +9 -28
- package/dist/cjs/vega-hint.cjs.entry.js +1 -1
- package/dist/cjs/vega-icon.cjs.entry.js +18 -31
- package/dist/cjs/vega-image-uploader.cjs.entry.js +34 -37
- package/dist/cjs/vega-input-credit-card.cjs.entry.js +31 -27
- package/dist/cjs/vega-input-numeric.cjs.entry.js +24 -22
- package/dist/cjs/vega-input-passcode.cjs.entry.js +26 -24
- package/dist/cjs/vega-input-phone-number.cjs.entry.js +31 -35
- package/dist/cjs/vega-input-range.cjs.entry.js +22 -20
- package/dist/cjs/vega-input-select.cjs.entry.js +41 -46
- package/dist/cjs/vega-input.cjs.entry.js +43 -31
- package/dist/cjs/vega-item-toggle.cjs.entry.js +8 -7
- package/dist/cjs/vega-left-nav_5.cjs.entry.js +38 -40
- package/dist/cjs/vega-line-chart.cjs.entry.js +1 -1
- package/dist/cjs/vega-loader-wrapper_2.cjs.entry.js +16 -32
- package/dist/cjs/vega-page-notification_2.cjs.entry.js +5 -4
- package/dist/cjs/vega-pagination-page-selector-mobile.cjs.entry.js +12 -12
- package/dist/cjs/vega-pagination-page-size-selector-mobile.cjs.entry.js +9 -10
- package/dist/cjs/vega-pagination.cjs.entry.js +28 -38
- package/dist/cjs/vega-pie-chart.cjs.entry.js +1 -1
- package/dist/cjs/vega-popover_2.cjs.entry.js +21 -31
- package/dist/cjs/vega-progress-tracker_2.cjs.entry.js +66 -39
- package/dist/cjs/vega-radio_2.cjs.entry.js +25 -23
- package/dist/cjs/vega-rich-text-content.cjs.entry.js +22 -20
- package/dist/cjs/vega-rich-text-editor_4.cjs.entry.js +115 -62
- package/dist/cjs/vega-section-title.cjs.entry.js +1 -1
- package/dist/cjs/vega-segment-control.cjs.entry.js +10 -8
- package/dist/cjs/vega-selection-chip_2.cjs.entry.js +25 -32
- package/dist/cjs/vega-selection-tile_2.cjs.entry.js +22 -20
- package/dist/cjs/vega-sidenav_3.cjs.entry.js +34 -40
- package/dist/cjs/vega-signature-capture.cjs.entry.js +27 -31
- 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 +23 -21
- package/dist/cjs/vega-tab-group_2.cjs.entry.js +15 -14
- package/dist/cjs/vega-table_11.cjs.entry.js +67 -68
- package/dist/cjs/vega-text.cjs.entry.js +4 -3
- package/dist/cjs/vega-textarea.cjs.entry.js +22 -20
- package/dist/cjs/vega-time-picker_2.cjs.entry.js +35 -41
- package/dist/cjs/vega-toggle-switch.cjs.entry.js +15 -12
- package/dist/cjs/vega-tooltip_2.cjs.entry.js +17 -28
- package/dist/cjs/vega.cjs.js +26 -23
- package/dist/cjs/{index-95fca64f.js → wait-for-component-did-render-70a01bf9.js} +1 -12
- package/dist/collection/components/vega-app-header-button/vega-app-header-button.js +17 -2
- package/dist/collection/components/vega-box/slimmers/controllers/vega-box-responsive-style-controller.js +2 -1
- package/dist/collection/components/vega-box/slimmers/controllers/vega-box-state-styles-controller.js +2 -1
- package/dist/collection/components/vega-button/vega-button.js +2 -1
- package/dist/collection/components/vega-button-circle/vega-button-circle.js +2 -1
- package/dist/collection/components/vega-button-link/vega-button-link.css +1 -1
- package/dist/collection/components/vega-button-link/vega-button-link.js +2 -1
- package/dist/collection/components/vega-calendar/slimmers/common/helpers/repeat-pattern/base-repeat-pattern.js +1 -1
- package/dist/collection/components/vega-calendar/slimmers/common/helpers/repeat-pattern/calendar-event-daily-repeat-pattern.js +1 -1
- package/dist/collection/components/vega-calendar/slimmers/common/helpers/repeat-pattern/calendar-event-monthly-repeat-pattern.js +1 -1
- package/dist/collection/components/vega-calendar/slimmers/common/helpers/repeat-pattern/calendar-event-weekly-repeat-pattern.js +1 -1
- package/dist/collection/components/vega-calendar/slimmers/common/helpers/repeat-pattern/calendar-event-yearly-repeat-pattern.js +1 -1
- package/dist/collection/components/vega-code-block/slimmers/controllers/prism-code-highlight-parse-controller.js +5 -14
- package/dist/collection/components/vega-combo-box/slimmers/renderers/vega-combo-box-dropdown-renderer.js +2 -2
- package/dist/collection/components/vega-date-picker/slimmers/controllers/vega-date-picker-calendar-open-state-controller.js +1 -1
- package/dist/collection/components/vega-date-picker/slimmers/renderers/vega-date-picker-calendar-renderer.js +1 -1
- package/dist/collection/components/vega-dropdown/slimmers/controllers/vega-dropdown-search-controller.js +2 -2
- package/dist/collection/components/vega-dropdown/slimmers/renderers/vega-dropdown-list-renderer.js +2 -2
- package/dist/collection/components/vega-dropdown/vega-dropdown-group/slimmers/renderers/vega-dropdown-group-renderer.js +3 -3
- package/dist/collection/components/vega-dropdown/vega-dropdown-item/slimmers/renderers/vega-dropdown-item-renderer.js +6 -4
- package/dist/collection/components/vega-icon/vega-icon.js +2 -1
- package/dist/collection/components/vega-input/slimmers/renderers/vega-input-input-container-renderer.js +10 -2
- package/dist/collection/components/vega-input-phone-number/slimmers/renderers/country-select-renderer.js +1 -1
- package/dist/collection/components/vega-input-select/slimmers/renderers/vega-input-select-dropdown-renderer.js +2 -2
- package/dist/collection/components/vega-pagination/vega-pagination.js +1 -1
- package/dist/collection/components/vega-progress-tracker/slimmers/controllers/dto/internal-progress-tracker-step.js +30 -6
- package/dist/collection/components/vega-progress-tracker/slimmers/controllers/vega-progress-tracker-current-steps-controller.js +1 -1
- package/dist/collection/components/vega-progress-tracker/slimmers/renderers/vega-progress-tracker-renderer.js +8 -1
- package/dist/collection/components/vega-progress-tracker/vega-progress-tracker-step/vega-progress-tracker-step.js +27 -0
- package/dist/collection/components/vega-progress-tracker/vega-progress-tracker.css +12 -0
- package/dist/collection/components/vega-progress-tracker/vega-progress-tracker.js +8 -3
- package/dist/collection/components/vega-rich-text-content/vega-rich-text-content.js +1 -1
- package/dist/collection/components/vega-rich-text-editor/dto/blocks/html-block.js +16 -0
- package/dist/collection/components/vega-rich-text-editor/dto/content-state.js +3 -22
- package/dist/collection/components/vega-rich-text-editor/slimmers/controllers/html-cleaner/html-content-cleaner.js +59 -0
- package/dist/collection/components/vega-rich-text-editor/slimmers/controllers/html-cleaner/index.js +4 -0
- package/dist/collection/components/vega-rich-text-editor/slimmers/controllers/html-cleaner/processors/remove-whitespace-after-opening-tag-processor.js +21 -0
- package/dist/collection/components/vega-rich-text-editor/slimmers/controllers/html-cleaner/processors/remove-whitespace-before-closing-tag-processor.js +21 -0
- package/dist/collection/components/vega-rich-text-editor/slimmers/controllers/html-cleaner/processors/remove-whitespace-between-tags-processor.js +77 -0
- package/dist/collection/components/vega-rich-text-editor/slimmers/controllers/value-controller.js +1 -1
- package/dist/collection/components/vega-rich-text-editor/slimmers/renderers/tools/link-toolbar-button-slimmer.js +1 -1
- package/dist/collection/components/vega-rich-text-editor/test/dto/blocks/html-block.test.js +39 -0
- package/dist/collection/components/vega-rich-text-editor/test/dto/content-state.test.js +166 -1
- package/dist/collection/components/vega-rich-text-editor/test/html-cleaner/html-content-cleaner.test.js +186 -0
- package/dist/collection/components/vega-rich-text-editor/test/html-cleaner/remove-whitespace-after-opening-tag-processor.test.js +22 -0
- package/dist/collection/components/vega-rich-text-editor/test/html-cleaner/remove-whitespace-before-closing-tag-processor.test.js +22 -0
- package/dist/collection/components/vega-rich-text-editor/test/html-cleaner/remove-whitespace-between-tags-processor.test.js +26 -0
- package/dist/collection/components/vega-signature-capture/slimmers/written-mode/controllers/written-mode-svg-controller.js +2 -1
- package/dist/collection/components/vega-table/interface.js +3 -0
- package/dist/collection/components/vega-table/vega-table-foot-cell/slimmers/renderers/vega-table-foot-cell-renderer.js +1 -1
- package/dist/collection/global/scripts/before-vega-load.js +4 -3
- package/dist/collection/helpers/calendar/calendar-date.js +1 -1
- package/dist/collection/helpers/calendar/calendar-event.js +1 -1
- package/dist/collection/helpers/calendar/calendar-time.js +1 -1
- package/dist/collection/helpers/code-format/code-formatter.js +57 -7
- package/dist/collection/helpers/code-format/test/code-formatter.test.js +49 -1
- package/dist/collection/helpers/common/index.js +2 -37
- package/dist/collection/helpers/common/test/wait-for-vega-handler.test.js +2 -2
- package/dist/collection/helpers/common/wait-for-component-did-render.js +27 -0
- package/dist/collection/helpers/common/wait-for-vega-handler.js +12 -1
- package/dist/collection/helpers/feature-control/feature-flags-map.js +6 -0
- package/dist/collection/helpers/formatter/responsive-map-formatter/responsive-border-radius-style-formatter.js +1 -1
- package/dist/collection/helpers/public-api.js +0 -2
- package/dist/collection/helpers/slimmers/component-global-style-slimmer.js +2 -1
- package/dist/collection/helpers/slimmers/field-error-ui-controller-slimmer.js +3 -4
- package/dist/collection/helpers/slimmers/form-field-message-translator.js +1 -1
- package/dist/collection/helpers/slimmers/global/vega-translate-observer-slimmer.js +1 -1
- package/dist/collection/helpers/slimmers/global/vega-watch-method-cancel-slimmer.js +1 -1
- package/dist/collection/helpers/slimmers/mutation-observer/aria-attributes-value-mapper.js +128 -0
- package/dist/collection/helpers/slimmers/mutation-observer/test/aria-attributes-value-mapper.test.js +196 -0
- package/dist/collection/helpers/slimmers/position-calculation/base-position-calculation-strategy.js +162 -151
- package/dist/collection/helpers/slimmers/position-calculation/position-calculation-controller.js +9 -0
- package/dist/collection/helpers/slimmers/position-calculation/screen-position-calculation-strategy.js +112 -1
- package/dist/collection/helpers/slimmers/position-calculation/screen-scroll-position-update.js +53 -0
- package/dist/collection/helpers/slimmers/position-calculation/test/screen-position-calculation-strategy.test.js +103 -6
- package/dist/collection/helpers/slimmers/string-input-formatter-slimmer.js +1 -1
- package/dist/collection/helpers/slimmers/translation/translation-slimmer.js +1 -1
- package/dist/collection/helpers/theme/controllers/brand-style-controller.js +3 -1
- package/dist/collection/helpers/theme/controllers/color-schema-overriding-controller.js +8 -6
- package/dist/collection/helpers/theme/controllers/dark-mode-style-controller.js +3 -1
- package/dist/collection/helpers/theme/internal-theme-manager.js +2 -1
- package/dist/collection/helpers/theme/tests/theme-manager-controller.test.js +1 -2
- package/dist/collection/helpers/ui/element-appender.js +4 -5
- package/dist/collection/helpers/ui/test/element-appender.test.js +66 -17
- package/dist/collection/index.js +2 -0
- package/dist/collection/polyfill/prism/index.js +2 -0
- package/dist/collection/polyfill/prism/languages/css.js +86 -0
- package/dist/collection/polyfill/prism/languages/javascript.js +96 -0
- package/dist/collection/polyfill/prism/languages/jsx.js +46 -0
- package/dist/collection/polyfill/prism/languages/language-registry.js +41 -0
- package/dist/collection/polyfill/prism/languages/markup.js +71 -0
- package/dist/collection/polyfill/prism/languages/tsx.js +10 -0
- package/dist/collection/polyfill/prism/languages/typescript.js +64 -0
- package/dist/collection/polyfill/prism/test/css.test.js +61 -0
- package/dist/collection/polyfill/prism/test/javascript.test.js +113 -0
- package/dist/collection/polyfill/prism/test/jsx.test.js +48 -0
- package/dist/collection/polyfill/prism/test/language-registry.test.js +77 -0
- package/dist/collection/polyfill/prism/test/markup.test.js +57 -0
- package/dist/collection/polyfill/prism/test/test-utils.js +22 -0
- package/dist/collection/polyfill/prism/test/tokenizer.test.js +180 -0
- package/dist/collection/polyfill/prism/test/tsx.test.js +87 -0
- package/dist/collection/polyfill/prism/test/typescript.test.js +86 -0
- package/dist/collection/polyfill/prism/tokenizer.js +242 -0
- package/dist/collection/polyfill/prism/types.js +1 -0
- package/dist/collection/polyfill/tinycolor/tinycolor-polyfill.js +320 -0
- package/dist/collection/polyfill/tinycolor/tinycolor-polyfill.test.js +361 -0
- package/dist/collection/types/ui.type.js +12 -0
- package/dist/collection/utils/e2e-utils.js +10 -3
- package/dist/collection/utils/sanitize/constants/tag-sets.js +5 -0
- package/dist/collection/utils/sanitize/core/html-sanitizer.js +39 -0
- package/dist/collection/utils/sanitize/core/sanitize-strategy.js +62 -0
- package/dist/collection/utils/sanitize/core/types.js +4 -0
- package/dist/collection/utils/sanitize/index.js +12 -0
- package/dist/collection/utils/sanitize/strategies/empty-sanitize-strategy.js +17 -0
- package/dist/collection/utils/sanitize/strategies/index.js +3 -0
- package/dist/collection/utils/sanitize/strategies/label-sanitize-strategy.js +13 -0
- package/dist/collection/utils/sanitize/strategies/style-sanitize-strategy.js +50 -0
- package/dist/collection/utils/sanitize/test/empty-strategy.test.js +12 -0
- package/dist/collection/utils/sanitize/test/html-sanitizer.test.js +57 -0
- package/dist/collection/utils/sanitize/test/label-strategy.test.js +56 -0
- package/dist/collection/utils/sanitize/test/sanitize-strategy.test.js +85 -0
- package/dist/collection/utils/sanitize/test/sanitize.test.js +22 -0
- package/dist/collection/utils/sanitize/test/serialize-fragment.test.js +25 -0
- package/dist/collection/utils/sanitize/test/style-strategy.test.js +45 -0
- package/dist/collection/utils/sanitize/utils/serialize-fragment.js +17 -0
- package/dist/esm/{app-globals-f3414aca.js → app-globals-c0676920.js} +12 -16
- package/dist/esm/breakpoints-56e5407b.js +53 -0
- package/dist/esm/{child-nodes-event-prevent-slimmer-e662bee2.js → child-nodes-event-prevent-slimmer-649b9d30.js} +2 -2
- package/dist/esm/{child-nodes-notify-observer-slimmer-b676cd2b.js → child-nodes-notify-observer-slimmer-541dd6a4.js} +1 -1
- package/dist/esm/{code-block-8ee34ab6.js → code-block-b6247a45.js} +7 -7
- package/dist/esm/{component-global-style-slimmer-08046b38.js → component-global-style-slimmer-ac703085.js} +2 -1
- package/dist/esm/{component-usage-runtime-metrics-a84cc93e.js → component-usage-runtime-metrics-46020a03.js} +1 -1
- package/dist/esm/{component-value-history-controller-slimmer.abstract-a61bf821.js → component-value-history-controller-slimmer.abstract-2bb8533d.js} +6 -6
- package/dist/esm/{create-public-api-runtime-metrics-slimmer-bedf3a1e.js → create-public-api-runtime-metrics-slimmer-aaadaa08.js} +3 -38
- package/dist/esm/{dark-mode-style-controller-de88a117.js → dark-mode-style-controller-82e5c1c6.js} +292 -1254
- package/dist/esm/{date-required-rule-47ecc28f.js → date-required-rule-e771e7d9.js} +1 -1
- package/dist/esm/{design-token-9b299589.js → design-token-4aee1c56.js} +2 -2
- package/dist/esm/dom-node-subject-observer-factory-82f346e3.js +138 -0
- package/dist/esm/{dto-renderer-manager-f07cf2d9.js → dto-renderer-manager-6fd22ab7.js} +204 -29
- package/dist/esm/{element-appender-slimmer-7cb08343.js → element-appender-slimmer-e4713a72.js} +348 -165
- package/dist/esm/{event-emit-slimmer-09827cec.js → event-emit-slimmer-ffaecb9a.js} +2 -2
- package/dist/esm/{feature-flag-controller-51659753.js → feature-flag-controller-09ea7e87.js} +7 -1
- package/dist/esm/{form-field-controller-slimmer-5d9dc384.js → form-field-controller-slimmer-5817d14d.js} +10 -11
- package/dist/esm/{internal-icon-manager-f0486245.js → icon-manager-539d7cf7.js} +2 -52
- package/dist/esm/{image-annotation-action-53529cd9.js → image-annotation-action-6701b4c9.js} +6 -5
- package/dist/esm/index-3b327f29.js +215 -0
- package/dist/esm/{index-e9da316f.js → index-bfc6dfa2.js} +13 -1
- package/dist/esm/index.js +32 -29
- package/dist/esm/{inject-keyboard-manager-83d76ff5.js → inject-keyboard-manager-78730062.js} +1 -1
- package/dist/esm/internal-icon-manager-bd80b3bb.js +53 -0
- package/dist/esm/{translation-96e5debd.js → internal-translation-controller-911515f9.js} +1 -93
- package/dist/esm/{internal-vega-event-manager-efb6786e.js → internal-vega-event-manager-32a3d848.js} +1 -1
- package/dist/esm/internal-vega-z-index-manager-7d2b54c3.js +178 -0
- package/dist/esm/{keyboard-manager-c92808d8.js → keyboard-manager-38934f94.js} +2 -2
- package/dist/esm/{keyboard-manager-slimmer-79c78ce8.js → keyboard-manager-slimmer-9984d922.js} +1 -1
- package/dist/esm/loader.js +27 -24
- package/dist/esm/misc-9fdbcfbb.js +37 -0
- package/dist/esm/{month-view-generator-16192182.js → month-view-generator-eaf9029c.js} +1 -1
- package/dist/esm/{page-resize-observer-slimmer-8744cb44.js → page-resize-observer-slimmer-d6af0d86.js} +2 -52
- package/dist/esm/{public-rules-6ebdfcf5.js → public-rules-25cc3a39.js} +13 -14
- package/dist/esm/{range-5257c062.js → range-663f44dc.js} +2 -2
- package/dist/esm/{responsive-format-facade-05e53016.js → responsive-format-facade-7a071174.js} +3 -12
- package/dist/esm/{rich-text-editor-required-rule-f63a37d1.js → rich-text-editor-required-rule-a238b862.js} +1 -1
- package/dist/esm/{string-format-strategy.abstract-fc60db79.js → string-format-strategy.abstract-713fba36.js} +1 -1
- package/dist/esm/{string-input-formatter-slimmer-ee32b1fd.js → string-input-formatter-slimmer-5b413ff9.js} +4 -4
- package/dist/esm/{string-mask-strategy-0b0accaa.js → string-mask-strategy-6beaf664.js} +2 -2
- package/dist/esm/{style-formatter-5f5bd714.js → style-formatter-3d06b72d.js} +2 -2
- package/dist/esm/{sub-state-notify-slimmer-4453047a.js → sub-state-notify-slimmer-5133f1a8.js} +2 -2
- package/dist/esm/{sub-state-observer-slimmer-202ec7dc.js → sub-state-observer-slimmer-478c9f41.js} +3 -3
- package/dist/esm/{time-required-rule-5fa43804.js → time-required-rule-e4138a76.js} +1 -1
- package/dist/esm/{function-extension-63028f20.js → token-extension-e33fd151.js} +488 -376
- package/dist/esm/{translation-slimmer-c936cb1b.js → translation-slimmer-2394b173.js} +1 -1
- package/dist/esm/{type-guard-c65a227d.js → type-guard-f50e34d6.js} +1 -1
- package/dist/esm/{ui-bb99c0c2.js → ui-ee31416b.js} +12 -0
- package/dist/esm/{valid-credit-card-number-rule-666c415d.js → valid-credit-card-number-rule-22ce81db.js} +1 -1
- package/dist/esm/vega-accordion.entry.js +19 -28
- package/dist/esm/vega-app-footer.entry.js +3 -3
- package/dist/esm/vega-app-header-button.entry.js +174 -40
- package/dist/esm/vega-backdrop.entry.js +2 -2
- package/dist/esm/vega-banner.entry.js +12 -10
- package/dist/esm/vega-bar-chart.entry.js +1 -1
- package/dist/esm/vega-box.entry.js +14 -29
- package/dist/esm/vega-brand-logo.entry.js +7 -5
- package/dist/esm/vega-breadcrumb.entry.js +11 -10
- package/dist/esm/vega-button-circle.entry.js +19 -29
- package/dist/esm/vega-button-group_2.entry.js +12 -12
- package/dist/esm/vega-button-link.entry.js +13 -12
- package/dist/esm/vega-button.entry.js +19 -28
- package/dist/esm/vega-calendar_4.entry.js +23 -20
- package/dist/esm/vega-card.entry.js +9 -28
- package/dist/esm/vega-carousel.entry.js +14 -25
- package/dist/esm/vega-checkbox_2.entry.js +19 -17
- package/dist/esm/vega-chip.entry.js +18 -29
- package/dist/esm/vega-code-block.entry.js +653 -2704
- package/dist/esm/vega-color-picker.entry.js +15 -12
- package/dist/esm/vega-combo-box.entry.js +22 -21
- package/dist/esm/vega-counter-badge.entry.js +1 -1
- package/dist/esm/vega-date-picker_2.entry.js +34 -37
- package/dist/esm/vega-dialog-controller-bbb2fc52.js +82 -0
- package/dist/esm/vega-dialog_2.entry.js +23 -30
- package/dist/esm/vega-divider.entry.js +11 -29
- package/dist/esm/vega-dropdown_5.entry.js +39 -45
- package/dist/esm/vega-env-manager-8f8dc473.js +2 -2
- package/dist/esm/vega-event-id-38aa77a0.js +113 -0
- package/dist/esm/vega-field-error.entry.js +1 -1
- package/dist/esm/vega-field-label.entry.js +7 -6
- package/dist/esm/vega-file-uploader.entry.js +19 -14
- package/dist/esm/vega-flag-icon.entry.js +12 -26
- package/dist/esm/vega-flex.entry.js +11 -28
- package/dist/esm/vega-font.entry.js +11 -28
- package/dist/esm/vega-form.entry.js +20 -18
- package/dist/esm/vega-grid.entry.js +9 -28
- package/dist/esm/vega-hint.entry.js +1 -1
- package/dist/esm/vega-icon.entry.js +15 -28
- package/dist/esm/vega-image-uploader.entry.js +28 -31
- package/dist/esm/vega-input-credit-card.entry.js +25 -21
- package/dist/esm/vega-input-numeric.entry.js +21 -19
- package/dist/esm/vega-input-passcode.entry.js +20 -18
- package/dist/esm/vega-input-phone-number.entry.js +27 -31
- package/dist/esm/vega-input-range.entry.js +19 -17
- package/dist/esm/vega-input-select.entry.js +27 -32
- package/dist/esm/vega-input.entry.js +33 -21
- package/dist/esm/{vega-internal-event-id-4a06d705.js → vega-internal-event-id-799d012e.js} +1 -1
- package/dist/esm/vega-item-toggle.entry.js +6 -5
- package/dist/esm/vega-left-nav_5.entry.js +29 -31
- package/dist/esm/vega-line-chart.entry.js +1 -1
- package/dist/esm/vega-loader-wrapper_2.entry.js +13 -29
- package/dist/esm/vega-page-notification_2.entry.js +4 -3
- package/dist/esm/vega-pagination-page-selector-mobile.entry.js +9 -9
- package/dist/esm/vega-pagination-page-size-selector-mobile.entry.js +7 -8
- package/dist/esm/vega-pagination.entry.js +20 -30
- package/dist/esm/vega-pie-chart.entry.js +1 -1
- package/dist/esm/vega-popover_2.entry.js +20 -30
- package/dist/esm/vega-progress-tracker_2.entry.js +64 -37
- package/dist/esm/vega-radio_2.entry.js +21 -19
- package/dist/esm/vega-rich-text-content.entry.js +18 -16
- package/dist/esm/vega-rich-text-editor_4.entry.js +90 -37
- package/dist/esm/vega-section-title.entry.js +1 -1
- package/dist/esm/vega-segment-control.entry.js +9 -7
- package/dist/esm/vega-selection-chip_2.entry.js +22 -29
- package/dist/esm/vega-selection-tile_2.entry.js +19 -17
- package/dist/esm/vega-sidenav_3.entry.js +24 -30
- package/dist/esm/vega-signature-capture.entry.js +24 -28
- 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 +18 -16
- package/dist/esm/vega-tab-group_2.entry.js +11 -10
- package/dist/esm/vega-table_11.entry.js +28 -29
- package/dist/esm/vega-text.entry.js +4 -3
- package/dist/esm/vega-textarea.entry.js +18 -16
- package/dist/esm/vega-time-picker_2.entry.js +26 -32
- package/dist/esm/vega-toggle-switch.entry.js +15 -12
- package/dist/esm/vega-tooltip_2.entry.js +18 -29
- package/dist/esm/vega.js +27 -24
- package/dist/esm/{index-51a7da7f.js → wait-for-component-did-render-b08ef07b.js} +3 -13
- package/dist/sri/vega-sri-manifest.json +415 -403
- package/dist/types/components/vega-app-footer/types.d.ts +18 -0
- package/dist/types/components/vega-app-header-button/types.d.ts +31 -0
- package/dist/types/components/vega-app-header-button/vega-app-header-button.d.ts +2 -0
- package/dist/types/components/vega-banner/types.d.ts +9 -0
- package/dist/types/components/vega-box/interface.d.ts +46 -0
- package/dist/types/components/vega-breadcrumb/types.d.ts +28 -0
- package/dist/types/components/vega-button/types.d.ts +12 -0
- package/dist/types/components/vega-button-circle/types.d.ts +9 -0
- package/dist/types/components/vega-button-group/types.d.ts +48 -0
- package/dist/types/components/vega-button-link/types.d.ts +3 -0
- package/dist/types/components/vega-calendar/types.d.ts +189 -0
- package/dist/types/components/vega-calendar/vega-calendar-event-preview/types.d.ts +6 -0
- package/dist/types/components/vega-chart/vega-bar-chart/types.d.ts +3 -0
- package/dist/types/components/vega-chip/types.d.ts +12 -0
- package/dist/types/components/vega-code-block/slimmers/controllers/prism-code-highlight-parse-controller.d.ts +2 -10
- package/dist/types/components/vega-combo-box/types.d.ts +6 -0
- package/dist/types/components/vega-date-picker/types.d.ts +39 -0
- package/dist/types/components/vega-dialog/types.d.ts +5 -0
- package/dist/types/components/vega-divider/interface.d.ts +18 -0
- package/dist/types/components/vega-dropdown/types.d.ts +30 -0
- package/dist/types/components/vega-dropdown/vega-dropdown-item/types.d.ts +9 -1
- package/dist/types/components/vega-field-error/types.d.ts +12 -0
- package/dist/types/components/vega-field-label/types.d.ts +16 -0
- package/dist/types/components/vega-file-uploader/types.d.ts +12 -0
- package/dist/types/components/vega-font/types.d.ts +3 -0
- package/dist/types/components/vega-form/types.d.ts +45 -0
- package/dist/types/components/vega-image-uploader/types.d.ts +33 -1
- package/dist/types/components/vega-input/types.d.ts +31 -0
- package/dist/types/components/vega-input-phone-number/types.d.ts +15 -0
- package/dist/types/components/vega-input-range/types.d.ts +9 -0
- package/dist/types/components/vega-input-select/types.d.ts +45 -0
- package/dist/types/components/vega-item-toggle/types.d.ts +21 -0
- package/dist/types/components/vega-loading-indicator/types.d.ts +3 -0
- package/dist/types/components/vega-modal/types.d.ts +9 -0
- package/dist/types/components/vega-nav/interface.d.ts +108 -0
- package/dist/types/components/vega-page-notification/types.d.ts +15 -0
- package/dist/types/components/vega-pagination/types.d.ts +11 -0
- package/dist/types/components/vega-progress-tracker/slimmers/controllers/dto/internal-progress-tracker-step.d.ts +16 -4
- package/dist/types/components/vega-progress-tracker/type.d.ts +8 -0
- package/dist/types/components/vega-progress-tracker/vega-progress-tracker-step/vega-progress-tracker-step.d.ts +6 -0
- package/dist/types/components/vega-progress-tracker/vega-progress-tracker.d.ts +2 -2
- package/dist/types/components/vega-rich-text-editor/dto/blocks/html-block.d.ts +10 -0
- package/dist/types/components/vega-rich-text-editor/interface.d.ts +473 -2
- package/dist/types/components/vega-rich-text-editor/slimmers/controllers/html-cleaner/html-content-cleaner-processor.interface.d.ts +13 -0
- package/dist/types/components/vega-rich-text-editor/slimmers/controllers/html-cleaner/html-content-cleaner.d.ts +35 -0
- package/dist/types/components/vega-rich-text-editor/slimmers/controllers/html-cleaner/index.d.ts +4 -0
- package/dist/types/components/vega-rich-text-editor/slimmers/controllers/html-cleaner/processors/remove-whitespace-after-opening-tag-processor.d.ts +19 -0
- package/dist/types/components/vega-rich-text-editor/slimmers/controllers/html-cleaner/processors/remove-whitespace-before-closing-tag-processor.d.ts +19 -0
- package/dist/types/components/vega-rich-text-editor/slimmers/controllers/html-cleaner/processors/remove-whitespace-between-tags-processor.d.ts +59 -0
- package/dist/types/components/vega-rich-text-editor/test/html-cleaner/html-content-cleaner.test.d.ts +1 -0
- package/dist/types/components/vega-rich-text-editor/test/html-cleaner/remove-whitespace-after-opening-tag-processor.test.d.ts +1 -0
- package/dist/types/components/vega-rich-text-editor/test/html-cleaner/remove-whitespace-before-closing-tag-processor.test.d.ts +1 -0
- package/dist/types/components/vega-rich-text-editor/test/html-cleaner/remove-whitespace-between-tags-processor.test.d.ts +1 -0
- package/dist/types/components/vega-rich-text-editor/vega-rich-text-image-editor/types.d.ts +24 -0
- package/dist/types/components/vega-rich-text-editor/vega-rich-text-link-editor/types.d.ts +24 -0
- package/dist/types/components/vega-segment-control/types.d.ts +18 -0
- package/dist/types/components/vega-selection-chip/interface.d.ts +12 -0
- package/dist/types/components/vega-selection-chip/vega-selection-chip-group/interface.d.ts +4 -0
- package/dist/types/components/vega-selection-tile/interface.d.ts +9 -0
- package/dist/types/components/vega-sidenav/types.d.ts +51 -0
- package/dist/types/components/vega-signature-capture/types.d.ts +29 -2
- package/dist/types/components/vega-skeleton/interface.d.ts +6 -0
- package/dist/types/components/vega-tab-group/types.d.ts +36 -0
- package/dist/types/components/vega-table/interface.d.ts +237 -20
- package/dist/types/components/vega-table/vega-table-expand-row/types.d.ts +6 -0
- package/dist/types/components/vega-table/vega-table-foot/types.d.ts +9 -0
- package/dist/types/components/vega-table/vega-table-foot-row/types.d.ts +9 -0
- package/dist/types/components/vega-table/vega-table-head/types.d.ts +9 -0
- package/dist/types/components/vega-table/vega-table-head-row/types.d.ts +12 -0
- package/dist/types/components/vega-table/vega-table-row/types.d.ts +18 -0
- package/dist/types/components/vega-text/types.d.ts +6 -0
- package/dist/types/components/vega-time-picker/types.d.ts +33 -0
- package/dist/types/components/vega-virtual-scroll/types.d.ts +30 -1
- package/dist/types/components.d.ts +13 -3
- package/dist/types/helpers/code-format/code-formatter.d.ts +14 -0
- package/dist/types/helpers/common/index.d.ts +2 -15
- package/dist/types/helpers/common/wait-for-component-did-render.d.ts +8 -0
- package/dist/types/helpers/common/wait-for-vega-handler.d.ts +6 -15
- package/dist/types/helpers/feature-control/feature-flag.d.ts +2 -1
- package/dist/types/helpers/public-api.d.ts +0 -2
- package/dist/types/helpers/slimmers/mutation-observer/aria-attributes-value-mapper.d.ts +44 -0
- package/dist/types/helpers/slimmers/mutation-observer/test/aria-attributes-value-mapper.test.d.ts +1 -0
- package/dist/types/helpers/slimmers/position-calculation/base-position-calculation-strategy.d.ts +57 -48
- package/dist/types/helpers/slimmers/position-calculation/position-calculation-controller.d.ts +5 -0
- package/dist/types/helpers/slimmers/position-calculation/screen-position-calculation-strategy.d.ts +41 -1
- package/dist/types/helpers/slimmers/position-calculation/screen-scroll-position-update.d.ts +39 -0
- package/dist/types/helpers/ui/element-appender.d.ts +0 -1
- package/dist/types/index.d.ts +2 -0
- package/dist/types/polyfill/prism/index.d.ts +3 -0
- package/dist/types/polyfill/prism/languages/css.d.ts +6 -0
- package/dist/types/polyfill/prism/languages/javascript.d.ts +7 -0
- package/dist/types/polyfill/prism/languages/jsx.d.ts +7 -0
- package/dist/types/polyfill/prism/languages/language-registry.d.ts +8 -0
- package/dist/types/polyfill/prism/languages/markup.d.ts +6 -0
- package/dist/types/polyfill/prism/languages/tsx.d.ts +7 -0
- package/dist/types/polyfill/prism/languages/typescript.d.ts +2 -0
- package/dist/types/polyfill/prism/test/css.test.d.ts +1 -0
- package/dist/types/polyfill/prism/test/javascript.test.d.ts +1 -0
- package/dist/types/polyfill/prism/test/jsx.test.d.ts +1 -0
- package/dist/types/polyfill/prism/test/language-registry.test.d.ts +1 -0
- package/dist/types/polyfill/prism/test/markup.test.d.ts +1 -0
- package/dist/types/polyfill/prism/test/test-utils.d.ts +10 -0
- package/dist/types/polyfill/prism/test/tokenizer.test.d.ts +1 -0
- package/dist/types/polyfill/prism/test/tsx.test.d.ts +1 -0
- package/dist/types/polyfill/prism/test/typescript.test.d.ts +1 -0
- package/dist/types/polyfill/prism/tokenizer.d.ts +17 -0
- package/dist/types/polyfill/prism/types.d.ts +25 -0
- package/dist/types/polyfill/tinycolor/tinycolor-polyfill.d.ts +149 -0
- package/dist/types/polyfill/tinycolor/tinycolor-polyfill.test.d.ts +1 -0
- package/dist/types/types/components.type.d.ts +4 -1
- package/dist/types/types/design-token.type.d.ts +36 -0
- package/dist/types/types/flag.type.d.ts +3 -0
- package/dist/types/types/general.d.ts +12 -0
- package/dist/types/types/ui.type.d.ts +372 -0
- package/dist/types/types/vega-chart.d.ts +281 -2
- package/dist/types/utils/e2e-utils.d.ts +2 -0
- package/dist/types/utils/sanitize/constants/tag-sets.d.ts +6 -0
- package/dist/types/utils/sanitize/core/html-sanitizer.d.ts +22 -0
- package/dist/types/utils/sanitize/core/sanitize-strategy.d.ts +27 -0
- package/dist/types/utils/sanitize/core/types.d.ts +13 -0
- package/dist/types/utils/sanitize/index.d.ts +12 -0
- package/dist/types/utils/sanitize/strategies/empty-sanitize-strategy.d.ts +14 -0
- package/dist/types/utils/sanitize/strategies/index.d.ts +3 -0
- package/dist/types/utils/sanitize/strategies/label-sanitize-strategy.d.ts +10 -0
- package/dist/types/utils/sanitize/strategies/style-sanitize-strategy.d.ts +24 -0
- package/dist/types/utils/sanitize/test/empty-strategy.test.d.ts +1 -0
- package/dist/types/utils/sanitize/test/html-sanitizer.test.d.ts +1 -0
- package/dist/types/utils/sanitize/test/label-strategy.test.d.ts +1 -0
- package/dist/types/utils/sanitize/test/sanitize-strategy.test.d.ts +1 -0
- package/dist/types/utils/sanitize/test/sanitize.test.d.ts +1 -0
- package/dist/types/utils/sanitize/test/serialize-fragment.test.d.ts +1 -0
- package/dist/types/utils/sanitize/test/style-strategy.test.d.ts +1 -0
- package/dist/types/utils/sanitize/utils/serialize-fragment.d.ts +12 -0
- package/dist/vega/index.esm.js +1 -1
- package/dist/vega/p-01d58eb8.entry.js +1 -0
- package/dist/vega/p-021d4ae4.js +1 -0
- package/dist/vega/p-02a7d60c.entry.js +1 -0
- package/dist/vega/{p-66fa700b.js → p-02c9796a.js} +1 -1
- package/dist/vega/p-033c31d8.entry.js +1 -0
- package/dist/vega/{p-e77a83e4.js → p-07cb0243.js} +1 -1
- package/dist/vega/p-087ea379.entry.js +1 -0
- package/dist/vega/{p-e5af5a4d.entry.js → p-0b4880bd.entry.js} +1 -1
- package/dist/vega/{p-920719ad.js → p-0e679d8c.js} +1 -1
- package/dist/vega/{p-c9b6b5a9.js → p-10734a00.js} +1 -1
- package/dist/vega/p-154f9cf7.entry.js +1 -0
- package/dist/vega/p-179aad4f.entry.js +1 -0
- package/dist/vega/p-1a3236e7.entry.js +1 -0
- package/dist/vega/p-1f3cd061.entry.js +1 -0
- package/dist/vega/p-1f5e35dc.entry.js +1 -0
- package/dist/vega/p-242fbcad.entry.js +1 -0
- package/dist/vega/p-249df6d2.entry.js +1 -0
- package/dist/vega/p-28ad1864.entry.js +1 -0
- package/dist/vega/p-2a10e2e5.js +1 -0
- package/dist/vega/p-2b49686d.entry.js +1 -0
- package/dist/vega/p-2ba78982.entry.js +1 -0
- package/dist/vega/p-2bb5a232.js +1 -0
- package/dist/vega/{p-e9b86dac.entry.js → p-2c1a85dd.entry.js} +1 -1
- package/dist/vega/p-2cc9d126.entry.js +1 -0
- package/dist/vega/p-2d69632d.js +1 -0
- package/dist/vega/p-2e91295d.entry.js +1 -0
- package/dist/vega/p-31ac7386.js +1 -0
- package/dist/vega/p-32033e7a.js +1 -0
- package/dist/vega/p-32183637.entry.js +1 -0
- package/dist/vega/p-3244c605.entry.js +1 -0
- package/dist/vega/p-32faa460.entry.js +1 -0
- package/dist/vega/p-33f9ad94.entry.js +1 -0
- package/dist/vega/{p-4897bedd.entry.js → p-358b4a06.entry.js} +1 -1
- package/dist/vega/p-3afc025e.entry.js +1 -0
- package/dist/vega/p-3d8122ab.entry.js +1 -0
- package/dist/vega/{p-ea04a387.entry.js → p-3f3c771a.entry.js} +1 -1
- package/dist/vega/{p-1f83cebf.js → p-415ffa35.js} +1 -1
- package/dist/vega/{p-d849e0f5.js → p-4415ad28.js} +1 -1
- package/dist/vega/{p-ce1a2982.js → p-464559e3.js} +1 -1
- package/dist/vega/p-49845a91.js +1 -0
- package/dist/vega/{p-e16b3adf.js → p-4bffdb28.js} +1 -1
- package/dist/vega/p-4e017458.entry.js +1 -0
- package/dist/vega/p-4e4a0228.entry.js +1 -0
- package/dist/vega/{p-a2aeb646.js → p-4ea30592.js} +1 -1
- package/dist/vega/{p-0b38a01f.entry.js → p-51fcb07f.entry.js} +1 -1
- package/dist/vega/p-57927b10.entry.js +1 -0
- package/dist/vega/p-5831d6d3.entry.js +1 -0
- package/dist/vega/p-593e0f80.js +1 -0
- package/dist/vega/p-5a25014f.js +1 -0
- package/dist/vega/p-5eb7f382.js +1 -0
- package/dist/vega/p-5f377954.js +1 -1
- package/dist/vega/p-644f701a.js +1 -0
- package/dist/vega/p-6a62e476.entry.js +1 -0
- package/dist/vega/{p-75f981ce.js → p-6b6f0fb4.js} +1 -1
- package/dist/vega/p-6d219c44.entry.js +1 -0
- package/dist/vega/p-6d60b66a.entry.js +1 -0
- package/dist/vega/{p-ad2055f4.entry.js → p-6dcdb580.entry.js} +1 -1
- package/dist/vega/{p-c8f1b9d5.js → p-7181861a.js} +1 -1
- package/dist/vega/p-76181a70.entry.js +1 -0
- package/dist/vega/p-781fd6e0.js +1 -0
- package/dist/vega/p-7958614a.entry.js +1 -0
- package/dist/vega/{p-5b71c85e.js → p-7c39ce96.js} +1 -1
- package/dist/vega/p-7d7aaff9.entry.js +1 -0
- package/dist/vega/{p-4dd6554e.entry.js → p-7f46cc1e.entry.js} +1 -1
- package/dist/vega/{p-badad9ed.js → p-81b044b9.js} +1 -1
- package/dist/vega/p-8950987b.entry.js +1 -0
- package/dist/vega/p-89f2e16d.entry.js +1 -0
- package/dist/vega/p-8ac2d165.js +1 -0
- package/dist/vega/p-8b153acd.entry.js +1 -0
- package/dist/vega/p-8b5d3a52.js +1 -0
- package/dist/vega/{p-fff13ed1.entry.js → p-8b891f36.entry.js} +1 -1
- package/dist/vega/p-8dbdd609.entry.js +1 -0
- package/dist/vega/{p-dd11f735.js → p-9339c6c4.js} +1 -1
- package/dist/vega/p-94a77fbe.entry.js +1 -0
- package/dist/vega/p-95528b47.js +1 -0
- package/dist/vega/p-9a137bab.entry.js +1 -0
- package/dist/vega/{p-6f8be8ea.js → p-a0b66c25.js} +1 -1
- package/dist/vega/{p-0bb3be0b.entry.js → p-a13a73fa.entry.js} +1 -1
- package/dist/vega/p-a560d8c5.entry.js +1 -0
- package/dist/vega/{p-d0e31633.js → p-a786259a.js} +1 -1
- package/dist/vega/p-a7a8a4eb.entry.js +1 -0
- package/dist/vega/p-a8792e3d.js +1 -0
- package/dist/vega/{p-60851f9d.js → p-aa1174dc.js} +1 -1
- package/dist/vega/p-ab834f06.js +1 -0
- package/dist/vega/p-b136ebba.entry.js +1 -0
- package/dist/vega/p-b201f379.js +1 -0
- package/dist/vega/p-b256b7a4.js +1 -0
- package/dist/vega/p-b366deff.entry.js +1 -0
- package/dist/vega/p-b597393b.entry.js +1 -0
- package/dist/vega/p-b7f3221f.js +1 -0
- package/dist/vega/p-bb5e0192.entry.js +1 -0
- package/dist/vega/p-be1a210b.js +1 -0
- package/dist/vega/p-bebfbe95.entry.js +1 -0
- package/dist/vega/p-bf6fc19f.entry.js +1 -0
- package/dist/vega/p-c1d13eec.entry.js +1 -0
- package/dist/vega/p-c29068fb.entry.js +1 -0
- package/dist/vega/p-c3d2f316.js +1 -0
- package/dist/vega/{p-671afda4.entry.js → p-c72e08c6.entry.js} +1 -1
- package/dist/vega/p-c801c85d.js +1 -0
- package/dist/vega/p-c8feb644.entry.js +1 -0
- package/dist/vega/p-ca5898dc.entry.js +1 -0
- package/dist/vega/p-d555f677.entry.js +1 -0
- package/dist/vega/p-d64fab3d.js +1 -0
- package/dist/vega/p-d6dbbe61.entry.js +1 -0
- package/dist/vega/p-d7a78c5e.entry.js +1 -0
- package/dist/vega/p-d8fadcdc.entry.js +1 -0
- package/dist/vega/p-dad3ba5f.js +1 -0
- package/dist/vega/p-dd3a94f4.entry.js +1 -0
- package/dist/vega/p-e1431c14.entry.js +1 -0
- package/dist/vega/p-e1fbfd20.js +1 -0
- package/dist/vega/p-e2af0e24.entry.js +1 -0
- package/dist/vega/{p-521d1d07.js → p-e52890db.js} +1 -1
- package/dist/vega/{p-1298b126.js → p-e632475e.js} +1 -1
- package/dist/vega/p-e6adf829.js +1 -0
- package/dist/vega/{p-77edf50c.js → p-e827d56d.js} +1 -1
- package/dist/vega/p-e8775a56.entry.js +1 -0
- package/dist/vega/p-e89e3ede.entry.js +1 -0
- package/dist/vega/p-eda988d5.entry.js +1 -0
- package/dist/vega/p-f05b8f76.entry.js +1 -0
- package/dist/vega/p-f0e828d8.js +1 -0
- package/dist/vega/p-f14a5eae.entry.js +1 -0
- package/dist/vega/p-f2b0b58a.js +1 -0
- package/dist/vega/p-f3d0f2dc.js +1 -0
- package/dist/vega/{p-5910be31.entry.js → p-f5bafc45.entry.js} +1 -1
- package/dist/vega/p-fc1fa345.js +1 -0
- package/dist/vega/p-fd7ddd64.entry.js +1 -0
- package/dist/vega/vega.esm.js +1 -1
- package/package.json +3 -5
- package/dist/cjs/_commonjsHelpers-537d719a.js +0 -20
- package/dist/cjs/language-extension-38e4905e.js +0 -210
- package/dist/cjs/sanitize-fb222510.js +0 -131
- package/dist/cjs/wait-for-vega-handler-5469ff80.js +0 -63
- package/dist/collection/utils/sanitize.js +0 -126
- package/dist/collection/utils/test/sanitize.test.js +0 -65
- package/dist/esm/_commonjsHelpers-9943807e.js +0 -17
- package/dist/esm/dom-node-subject-observer-factory-064ee2b2.js +0 -250
- package/dist/esm/language-extension-c4ff21dd.js +0 -207
- package/dist/esm/sanitize-fd0cb40d.js +0 -129
- package/dist/esm/wait-for-vega-handler-c2c07ac3.js +0 -61
- package/dist/types/utils/sanitize.d.ts +0 -71
- package/dist/vega/p-011b94b1.entry.js +0 -1
- package/dist/vega/p-06aaced4.js +0 -1
- package/dist/vega/p-07d3df01.entry.js +0 -1
- package/dist/vega/p-08f18b22.entry.js +0 -1
- package/dist/vega/p-10ac8b57.js +0 -1
- package/dist/vega/p-112455b1.js +0 -1
- package/dist/vega/p-17c55205.entry.js +0 -1
- package/dist/vega/p-1e0d8228.entry.js +0 -1
- package/dist/vega/p-20ad42be.js +0 -1
- package/dist/vega/p-22b2841f.entry.js +0 -1
- package/dist/vega/p-22c5d83b.js +0 -1
- package/dist/vega/p-34246870.entry.js +0 -1
- package/dist/vega/p-35bf5789.entry.js +0 -1
- package/dist/vega/p-3bbc0c7d.entry.js +0 -1
- package/dist/vega/p-3bf66be2.js +0 -1
- package/dist/vega/p-3c5a28e4.entry.js +0 -1
- package/dist/vega/p-3cfd8616.entry.js +0 -1
- package/dist/vega/p-3e5f362f.js +0 -1
- package/dist/vega/p-43f585f7.entry.js +0 -1
- package/dist/vega/p-476a173a.js +0 -1
- package/dist/vega/p-4a537391.entry.js +0 -1
- package/dist/vega/p-509eb52e.entry.js +0 -1
- package/dist/vega/p-50ab977c.entry.js +0 -1
- package/dist/vega/p-53a694d1.entry.js +0 -1
- package/dist/vega/p-56e97df8.js +0 -1
- package/dist/vega/p-5a27084e.entry.js +0 -1
- package/dist/vega/p-5d676a94.js +0 -1
- package/dist/vega/p-5df9a856.entry.js +0 -1
- package/dist/vega/p-5ea2e43c.entry.js +0 -1
- package/dist/vega/p-60274fb1.js +0 -1
- package/dist/vega/p-60da99c6.entry.js +0 -1
- package/dist/vega/p-67f18b9e.entry.js +0 -1
- package/dist/vega/p-67fcf6f2.entry.js +0 -9
- package/dist/vega/p-6a2205a1.entry.js +0 -1
- package/dist/vega/p-6a4277df.entry.js +0 -1
- package/dist/vega/p-6e136980.js +0 -1
- package/dist/vega/p-6f239144.entry.js +0 -1
- package/dist/vega/p-7045e84c.entry.js +0 -1
- package/dist/vega/p-7288f8c4.js +0 -1
- package/dist/vega/p-747d6afc.entry.js +0 -1
- package/dist/vega/p-75651f32.entry.js +0 -1
- package/dist/vega/p-7ae55fd5.js +0 -1
- package/dist/vega/p-81134e9e.entry.js +0 -1
- package/dist/vega/p-87238c4c.entry.js +0 -1
- package/dist/vega/p-8a887843.entry.js +0 -1
- package/dist/vega/p-8c0eb12f.entry.js +0 -1
- package/dist/vega/p-8c9ea6f4.js +0 -1
- package/dist/vega/p-8d0ca805.js +0 -1
- package/dist/vega/p-8e42a14c.entry.js +0 -1
- package/dist/vega/p-91ec2e30.js +0 -1
- package/dist/vega/p-94394df7.entry.js +0 -1
- package/dist/vega/p-991008a8.entry.js +0 -1
- package/dist/vega/p-9fd503e9.entry.js +0 -1
- package/dist/vega/p-a20854d6.entry.js +0 -1
- package/dist/vega/p-a4670e23.js +0 -1
- package/dist/vega/p-a530797f.entry.js +0 -1
- package/dist/vega/p-a5bd3c15.entry.js +0 -1
- package/dist/vega/p-a65941d0.entry.js +0 -1
- package/dist/vega/p-a85ad369.entry.js +0 -1
- package/dist/vega/p-a86010f7.entry.js +0 -1
- package/dist/vega/p-aa10eeb3.entry.js +0 -1
- package/dist/vega/p-ab2f35af.entry.js +0 -1
- package/dist/vega/p-ac4563d7.js +0 -1
- package/dist/vega/p-aedf7146.js +0 -1
- package/dist/vega/p-b4ea3fad.js +0 -1
- package/dist/vega/p-bb4a558d.entry.js +0 -1
- package/dist/vega/p-bb8339ed.entry.js +0 -1
- package/dist/vega/p-be930e85.entry.js +0 -1
- package/dist/vega/p-bf2bd6d0.entry.js +0 -1
- package/dist/vega/p-c379a5a5.entry.js +0 -1
- package/dist/vega/p-c616c592.js +0 -1
- package/dist/vega/p-ca3472c1.entry.js +0 -1
- package/dist/vega/p-cc43bffb.js +0 -1
- package/dist/vega/p-d6ed3d76.entry.js +0 -1
- package/dist/vega/p-db8cdba6.js +0 -1
- package/dist/vega/p-e1610196.entry.js +0 -1
- package/dist/vega/p-e87b0b4a.entry.js +0 -1
- package/dist/vega/p-e9c4fd24.entry.js +0 -1
- package/dist/vega/p-eb60cfe1.entry.js +0 -1
- package/dist/vega/p-ef001c70.entry.js +0 -1
- package/dist/vega/p-ef9cbad1.js +0 -1
- package/dist/vega/p-f383c856.js +0 -1
- package/dist/vega/p-f3c3ff26.entry.js +0 -1
- package/dist/vega/p-f52a0155.entry.js +0 -1
- package/dist/vega/p-f69f84a7.js +0 -1
- package/dist/vega/p-f8f7cf48.entry.js +0 -1
- package/dist/vega/p-fba14ad2.entry.js +0 -1
- package/dist/vega/p-fbd64f9c.entry.js +0 -1
- package/dist/vega/p-fdc270b8.entry.js +0 -1
- package/dist/vega/p-fe12eff6.js +0 -1
- package/dist/vega/p-ffbff9b5.entry.js +0 -1
- /package/dist/{types/utils/test/sanitize.test.d.ts → collection/components/vega-rich-text-editor/slimmers/controllers/html-cleaner/html-content-cleaner-processor.interface.js} +0 -0
- /package/dist/vega/{p-d9671d27.js → p-6c170474.js} +0 -0
|
@@ -1,9 +1,9 @@
|
|
|
1
1
|
'use strict';
|
|
2
2
|
|
|
3
|
-
const typeGuard = require('./type-guard-
|
|
3
|
+
const typeGuard = require('./type-guard-407ba0b8.js');
|
|
4
4
|
const breakpoints = require('./breakpoints-ebde4837.js');
|
|
5
5
|
const globalSlimmerRegistry = require('./global-slimmer-registry-b3bce7e0.js');
|
|
6
|
-
const responsiveFormatFacade = require('./responsive-format-facade-
|
|
6
|
+
const responsiveFormatFacade = require('./responsive-format-facade-ea59bdcd.js');
|
|
7
7
|
const typography = require('./typography-4560e7f1.js');
|
|
8
8
|
const ui = require('./ui-32e69595.js');
|
|
9
9
|
|
|
@@ -0,0 +1,141 @@
|
|
|
1
|
+
'use strict';
|
|
2
|
+
|
|
3
|
+
const changeManager = require('./change-manager-a297e4d2.js');
|
|
4
|
+
const observer = require('./observer-f49483e8.js');
|
|
5
|
+
const ui = require('./ui-234ea151.js');
|
|
6
|
+
|
|
7
|
+
/** The DomNodeSubject class represents a subject related to DOM nodes. */
|
|
8
|
+
class DomNodeSubject {
|
|
9
|
+
/**
|
|
10
|
+
* The constructor function takes a SubjectTitle parameter and assigns it to the private title property.
|
|
11
|
+
*
|
|
12
|
+
* @param {SubjectTitle} title - The "title" parameter is a private property of the class that is of type "SubjectTitle".
|
|
13
|
+
* @param {HTMLElement} host - The `host` parameter is an HTMLElement that represents the container or
|
|
14
|
+
* parent element where the subject title will be displayed. It is used to specify the location where
|
|
15
|
+
* the title will be rendered on the web page.
|
|
16
|
+
*/
|
|
17
|
+
constructor(title, host) {
|
|
18
|
+
this.title = title;
|
|
19
|
+
this.host = host;
|
|
20
|
+
}
|
|
21
|
+
/**
|
|
22
|
+
* The getDescription function returns the title of an object as a string.
|
|
23
|
+
*
|
|
24
|
+
* @returns {string} The title of the object.
|
|
25
|
+
*/
|
|
26
|
+
getDescription() {
|
|
27
|
+
return `, this is a dom nodes subject of ${this.title}.(class name:${this.host.className}, id:${this.host.id})`;
|
|
28
|
+
}
|
|
29
|
+
}
|
|
30
|
+
|
|
31
|
+
/** The `DomNodesSubjectFactory` class is responsible for managing and caching `DomNodeSubject` objects associated with HTML elements. */
|
|
32
|
+
class DomNodeSubjectFactory {
|
|
33
|
+
constructor() {
|
|
34
|
+
this.cache = new Map();
|
|
35
|
+
}
|
|
36
|
+
/**
|
|
37
|
+
* The function `getSubject` returns the subject associated with a given node and event ID, either from the cache or by setting it if it doesn't exist.
|
|
38
|
+
*
|
|
39
|
+
* @param {HTMLElement} node - The `node` parameter is an HTMLElement, which represents an element in the HTML document.
|
|
40
|
+
* @param {VegaEventIDInterface} eventId - The `eventId` parameter is of type `VegaEventIDInterface`. It represents the ID of the event for which we want to get the subject.
|
|
41
|
+
* @returns {DomNodeSubject} a `DomNodeSubject` object.
|
|
42
|
+
*/
|
|
43
|
+
getSubject(node, eventId) {
|
|
44
|
+
if (this.isExist(node, eventId)) {
|
|
45
|
+
return this.cache.get(node).get(eventId);
|
|
46
|
+
}
|
|
47
|
+
else {
|
|
48
|
+
return this.setSubject(node, eventId);
|
|
49
|
+
}
|
|
50
|
+
}
|
|
51
|
+
/**
|
|
52
|
+
* The function checks if a given node exists in the cache and if it has a specific event ID.
|
|
53
|
+
*
|
|
54
|
+
* @param {HTMLElement} node - The "node" parameter is an HTMLElement, which represents an HTML element in the DOM (Document Object Model). It could be any HTML element such as a div, span, button, etc.
|
|
55
|
+
* @param {VegaEventIDInterface} eventId - The `eventId` parameter is of type `VegaEventIDInterface`. It represents an event ID that is used to identify a specific event.
|
|
56
|
+
* @returns {boolean} a boolean value.
|
|
57
|
+
*/
|
|
58
|
+
isExist(node, eventId) {
|
|
59
|
+
if (node) {
|
|
60
|
+
return (this.cache.has(node) &&
|
|
61
|
+
this.cache.get(node) !== undefined &&
|
|
62
|
+
this.cache.get(node).has(eventId));
|
|
63
|
+
}
|
|
64
|
+
return false;
|
|
65
|
+
}
|
|
66
|
+
/**
|
|
67
|
+
* The function find if the parent of a given node exists in the cache and if it has a specific event ID.
|
|
68
|
+
*
|
|
69
|
+
* @param {HTMLElement} childNode - Child node.
|
|
70
|
+
* @param {VegaEventIDInterface} eventId - eventId.
|
|
71
|
+
* @returns {Nullable<DomNodeSubject>} - Parent node subject.
|
|
72
|
+
*/
|
|
73
|
+
getSubjectFromParentNodeByEventId(childNode, eventId) {
|
|
74
|
+
let subject;
|
|
75
|
+
for (const entry of this.cache) {
|
|
76
|
+
if (ui.isParent(childNode, entry[0]) && entry[1].has(eventId)) {
|
|
77
|
+
subject = entry[1].get(eventId);
|
|
78
|
+
break;
|
|
79
|
+
}
|
|
80
|
+
}
|
|
81
|
+
return subject;
|
|
82
|
+
}
|
|
83
|
+
/**
|
|
84
|
+
* The function `setSubject` creates a new `DomNodeSubject` and associates it with a given `node` and `eventId`, and then returns the created subject.
|
|
85
|
+
*
|
|
86
|
+
* @param {HTMLElement} node - The `node` parameter is an HTMLElement object representing an HTML element in the DOM (Document Object Model).
|
|
87
|
+
* @param {VegaEventIDInterface} eventId - The `eventId` parameter is of type `VegaEventIDInterface`. It represents the ID of a Vega event.
|
|
88
|
+
* @returns {DomNodeSubject} dom node subject object
|
|
89
|
+
*/
|
|
90
|
+
setSubject(node, eventId) {
|
|
91
|
+
const subjectTitle = `${node.tagName}:${eventId.getName()}`;
|
|
92
|
+
const subject = new DomNodeSubject(subjectTitle, node);
|
|
93
|
+
if (!this.cache.get(node)) {
|
|
94
|
+
this.cache.set(node, new Map());
|
|
95
|
+
}
|
|
96
|
+
this.cache.get(node).set(eventId, subject);
|
|
97
|
+
return subject;
|
|
98
|
+
}
|
|
99
|
+
}
|
|
100
|
+
const domNodeSubjectFactory = new DomNodeSubjectFactory();
|
|
101
|
+
|
|
102
|
+
/**
|
|
103
|
+
* The function `domAcceptableHandle` always returns `true`.
|
|
104
|
+
*
|
|
105
|
+
* @returns {boolean} true
|
|
106
|
+
*/
|
|
107
|
+
const domAcceptableHandle = () => {
|
|
108
|
+
return true;
|
|
109
|
+
};
|
|
110
|
+
/** The `DomNodeSubjectObserverFactory` class provides methods to add and remove observers to HTML element nodes. */
|
|
111
|
+
class DomNodeSubjectObserverFactory {
|
|
112
|
+
/**
|
|
113
|
+
* add observer to a given HTML element node
|
|
114
|
+
*
|
|
115
|
+
* @param {HTMLElement} node the node ref
|
|
116
|
+
* @param {VegaEventIDInterface} eventId The `eventId` parameter is of type `VegaEventIDInterface`. It represents the ID of a Vega event.
|
|
117
|
+
* @param {(input?: unknown) => void} callback the callback handle
|
|
118
|
+
* @param {(input?: unknown) => boolean} acceptableHandle the acceptable handle
|
|
119
|
+
*/
|
|
120
|
+
static addUniqueObserverToNode(node, eventId, callback, acceptableHandle) {
|
|
121
|
+
if (node) {
|
|
122
|
+
const domNodesObserver = new observer.Observer(typeof acceptableHandle === 'function' ? acceptableHandle.bind(null) : domAcceptableHandle, callback);
|
|
123
|
+
DomNodeSubjectObserverFactory.removeUniqueObserverFromNode(node, eventId);
|
|
124
|
+
changeManager.ChangeManager.register(domNodeSubjectFactory.getSubject(node, eventId), domNodesObserver);
|
|
125
|
+
}
|
|
126
|
+
}
|
|
127
|
+
/**
|
|
128
|
+
* The function removes observers from a given HTML element node.
|
|
129
|
+
*
|
|
130
|
+
* @param {HTMLElement} node - The `node` parameter is an `HTMLElement` object representing an HTML element in the DOM (Document Object Model).
|
|
131
|
+
* @param {VegaEventIDInterface} eventId The `eventId` parameter is of type `VegaEventIDInterface`. It represents the ID of a Vega event.
|
|
132
|
+
*/
|
|
133
|
+
static removeUniqueObserverFromNode(node, eventId) {
|
|
134
|
+
if (domNodeSubjectFactory.isExist(node, eventId)) {
|
|
135
|
+
changeManager.ChangeManager.clearObserversBySubject(domNodeSubjectFactory.getSubject(node, eventId));
|
|
136
|
+
}
|
|
137
|
+
}
|
|
138
|
+
}
|
|
139
|
+
|
|
140
|
+
exports.DomNodeSubjectObserverFactory = DomNodeSubjectObserverFactory;
|
|
141
|
+
exports.domNodeSubjectFactory = domNodeSubjectFactory;
|
|
@@ -1,13 +1,13 @@
|
|
|
1
1
|
'use strict';
|
|
2
2
|
|
|
3
|
-
const codeBlock = require('./code-block-
|
|
4
|
-
const
|
|
5
|
-
const typeGuard = require('./type-guard-
|
|
3
|
+
const codeBlock = require('./code-block-f1480ec3.js');
|
|
4
|
+
const misc = require('./misc-3d30df91.js');
|
|
5
|
+
const typeGuard = require('./type-guard-407ba0b8.js');
|
|
6
6
|
const changeManager = require('./change-manager-a297e4d2.js');
|
|
7
|
-
const domNodeSubjectObserverFactory = require('./dom-node-subject-observer-factory-
|
|
7
|
+
const domNodeSubjectObserverFactory = require('./dom-node-subject-observer-factory-c62823de.js');
|
|
8
8
|
const vegaInternalEventId = require('./vega-internal-event-id-f2465f1b.js');
|
|
9
9
|
const string = require('./string-39438062.js');
|
|
10
|
-
const ui = require('./ui-
|
|
10
|
+
const ui = require('./ui-234ea151.js');
|
|
11
11
|
const object = require('./object-e2e28e3d.js');
|
|
12
12
|
const globalSlimmerRegistry = require('./global-slimmer-registry-b3bce7e0.js');
|
|
13
13
|
|
|
@@ -128,7 +128,7 @@ class RTEListItemBlock extends codeBlock.RTETextBlock {
|
|
|
128
128
|
* @inheritDoc
|
|
129
129
|
*/
|
|
130
130
|
cloneWithNodes(nodes) {
|
|
131
|
-
const block = new RTEListItemBlock(
|
|
131
|
+
const block = new RTEListItemBlock(misc.generateUUID());
|
|
132
132
|
block.children = [];
|
|
133
133
|
block.apply(new codeBlock.AppendChildrenAction(nodes));
|
|
134
134
|
return block;
|
|
@@ -149,7 +149,7 @@ class RTEListItemBlock extends codeBlock.RTETextBlock {
|
|
|
149
149
|
* @returns {RTEListItemBlock} - A list item block.
|
|
150
150
|
*/
|
|
151
151
|
createNewListItem() {
|
|
152
|
-
return new RTEListItemBlock(
|
|
152
|
+
return new RTEListItemBlock(misc.generateUUID());
|
|
153
153
|
}
|
|
154
154
|
/**
|
|
155
155
|
* @inheritDoc
|
|
@@ -258,7 +258,7 @@ class ListTransformToParagraphStrategy extends codeBlock.ActionHandleStrategy {
|
|
|
258
258
|
* @returns {RTETextBlock} Returns a `RTETextBlock`.
|
|
259
259
|
*/
|
|
260
260
|
toParagraph(block) {
|
|
261
|
-
const textBlock = new codeBlock.RTETextBlock(
|
|
261
|
+
const textBlock = new codeBlock.RTETextBlock(misc.generateUUID(), 'paragraph');
|
|
262
262
|
textBlock.apply(new codeBlock.AppendChildrenAction(block['children']));
|
|
263
263
|
textBlock['annotationMap'] = block['annotationMap'];
|
|
264
264
|
return textBlock;
|
|
@@ -455,7 +455,7 @@ class BlockTransformToCodeBlockStrategy extends codeBlock.ActionHandleStrategy {
|
|
|
455
455
|
*/
|
|
456
456
|
handleAction(action, target) {
|
|
457
457
|
const selectedBlocks = action.selectedBlocks;
|
|
458
|
-
const codeBlock$1 = new codeBlock.RTECodeBlock(
|
|
458
|
+
const codeBlock$1 = new codeBlock.RTECodeBlock(misc.generateUUID(), this.getCodeContent(selectedBlocks), 'plainText');
|
|
459
459
|
target.apply(new codeBlock.InsertChildrenBeforeAction(selectedBlocks[0], codeBlock$1));
|
|
460
460
|
action.newCodeBlock = codeBlock$1;
|
|
461
461
|
this.removeSelectBlocks(selectedBlocks, target);
|
|
@@ -1028,14 +1028,14 @@ class ImageInsertLineBreakWithBlocksStrategy extends codeBlock.ActionHandleStrat
|
|
|
1028
1028
|
*/
|
|
1029
1029
|
lineBreakMultipleBlocks(selectedBlocks, target) {
|
|
1030
1030
|
const newParagraph = codeBlock.RTETextBlock.from({
|
|
1031
|
-
id:
|
|
1031
|
+
id: misc.generateUUID(),
|
|
1032
1032
|
type: 'paragraph',
|
|
1033
|
-
nodes: [{ id:
|
|
1033
|
+
nodes: [{ id: misc.generateUUID(), type: 'text', text: '\n' }],
|
|
1034
1034
|
});
|
|
1035
1035
|
target.parent.apply(new codeBlock.InsertChildrenAfterAction(target, newParagraph));
|
|
1036
1036
|
const afterNodes = this.concatBlocksNodes(selectedBlocks.slice(1));
|
|
1037
1037
|
if (afterNodes.length === 0 || (afterNodes[0] && afterNodes[0].text === '')) {
|
|
1038
|
-
afterNodes.push(new codeBlock.RTETextNode(
|
|
1038
|
+
afterNodes.push(new codeBlock.RTETextNode(misc.generateUUID(), '\n', newParagraph));
|
|
1039
1039
|
}
|
|
1040
1040
|
newParagraph.apply(new codeBlock.AppendChildrenAction(afterNodes));
|
|
1041
1041
|
return newParagraph['children'][0];
|
|
@@ -1145,7 +1145,7 @@ class RTEImageBlock extends codeBlock.RTEBlock {
|
|
|
1145
1145
|
* @returns {RTEImageBlock} - The empty image block.
|
|
1146
1146
|
*/
|
|
1147
1147
|
createNewImageBlock() {
|
|
1148
|
-
return new RTEImageBlock(
|
|
1148
|
+
return new RTEImageBlock(misc.generateUUID());
|
|
1149
1149
|
}
|
|
1150
1150
|
/**
|
|
1151
1151
|
* @inheritDoc
|
|
@@ -1222,6 +1222,12 @@ class RTEHtmlBlock extends codeBlock.RTEBlock {
|
|
|
1222
1222
|
toHtml() {
|
|
1223
1223
|
const BlockTag = this.htmlTag;
|
|
1224
1224
|
const attrStr = super.generateAttributeString();
|
|
1225
|
+
// Handle void/self-closing tags (hr, input, col, etc.)
|
|
1226
|
+
// Uses HTML5 syntax without self-closing slash for consistency with img and br tags
|
|
1227
|
+
if (RTEHtmlBlock.VOID_TAGS.has(this.htmlTag)) {
|
|
1228
|
+
return `<${BlockTag}${attrStr}>`;
|
|
1229
|
+
}
|
|
1230
|
+
// Handle normal tags with children
|
|
1225
1231
|
return [
|
|
1226
1232
|
`<${BlockTag}${attrStr}>`,
|
|
1227
1233
|
this.children.map((block) => block.toHtml()).join(''),
|
|
@@ -1235,6 +1241,16 @@ class RTEHtmlBlock extends codeBlock.RTEBlock {
|
|
|
1235
1241
|
return Object.assign(Object.assign({}, super.toJSON()), { id: this.id, type: this.type, htmlTag: this.htmlTag, children: this.children.map((child) => child.toJSON()) });
|
|
1236
1242
|
}
|
|
1237
1243
|
}
|
|
1244
|
+
/**
|
|
1245
|
+
* Void/self-closing tags that don't have closing tags and don't contain children.
|
|
1246
|
+
* These tags should be rendered as <tag> or <tag/> instead of <tag></tag>.
|
|
1247
|
+
*
|
|
1248
|
+
* Based on canHandleTags from html-block-strategy.ts, the following are void tags:
|
|
1249
|
+
* - HR: horizontal rule
|
|
1250
|
+
* - INPUT: form input
|
|
1251
|
+
* - COL: table column
|
|
1252
|
+
*/
|
|
1253
|
+
RTEHtmlBlock.VOID_TAGS = new Set(['hr', 'input', 'col']);
|
|
1238
1254
|
|
|
1239
1255
|
/**
|
|
1240
1256
|
* Merge the two blocks node into first block if the two blocks nodes type is same(text node or image node)
|
|
@@ -1626,7 +1642,7 @@ class ListItemInsertNewParagraphStrategy extends codeBlock.ActionHandleStrategy
|
|
|
1626
1642
|
const parentParent = target.parent.parent;
|
|
1627
1643
|
if (parentParent['type'] !== 'list-item') {
|
|
1628
1644
|
const newParagraph = codeBlock.RTETextBlock.from({
|
|
1629
|
-
id:
|
|
1645
|
+
id: misc.generateUUID(),
|
|
1630
1646
|
type: 'paragraph',
|
|
1631
1647
|
nodes: [],
|
|
1632
1648
|
});
|
|
@@ -2181,7 +2197,7 @@ class LinkAnnotationHandler extends AnnotationGeneratorStrategyAbstract {
|
|
|
2181
2197
|
generateLinkAnnotations(element) {
|
|
2182
2198
|
const annotations = {
|
|
2183
2199
|
href: element.getAttribute('href') || '',
|
|
2184
|
-
groupKey:
|
|
2200
|
+
groupKey: misc.generateUUID(),
|
|
2185
2201
|
};
|
|
2186
2202
|
this.handlers.forEach((handler) => {
|
|
2187
2203
|
Object.assign(annotations, handler.handle(element));
|
|
@@ -2692,7 +2708,7 @@ class HtmlBlockStrategy extends BlockToRTEBlockStrategyAbstract {
|
|
|
2692
2708
|
*/
|
|
2693
2709
|
generateHtmlBlock(element, options) {
|
|
2694
2710
|
return {
|
|
2695
|
-
id:
|
|
2711
|
+
id: misc.generateUUID(),
|
|
2696
2712
|
type: 'html-block',
|
|
2697
2713
|
htmlTag: element.nodeName.toLowerCase(),
|
|
2698
2714
|
annotations: htmlElementToAnnotationGenerator.generate(RTEHtmlBlock, element, options),
|
|
@@ -2761,7 +2777,7 @@ class UlToRTEListBlockStrategy extends BlockToRTEBlockStrategyAbstract {
|
|
|
2761
2777
|
if (elementsArray[0].childNodes.length === 0)
|
|
2762
2778
|
return null;
|
|
2763
2779
|
return RTEListBlock.from({
|
|
2764
|
-
id:
|
|
2780
|
+
id: misc.generateUUID(),
|
|
2765
2781
|
type: 'bullet-list',
|
|
2766
2782
|
blocks: [],
|
|
2767
2783
|
annotations: htmlElementToAnnotationGenerator.generate(RTEListBlock, elementsArray[0], options),
|
|
@@ -2810,7 +2826,7 @@ class OlToRTEListBlockStrategy extends BlockToRTEBlockStrategyAbstract {
|
|
|
2810
2826
|
if (elementsArray[0].childNodes.length === 0)
|
|
2811
2827
|
return null;
|
|
2812
2828
|
return RTEListBlock.from({
|
|
2813
|
-
id:
|
|
2829
|
+
id: misc.generateUUID(),
|
|
2814
2830
|
type: 'number-list',
|
|
2815
2831
|
blocks: [],
|
|
2816
2832
|
annotations: htmlElementToAnnotationGenerator.generate(RTEListBlock, elementsArray[0], options),
|
|
@@ -2865,7 +2881,7 @@ class ULNotLiChildToRTEListItemBlockStrategy extends BlockToRTEBlockStrategyAbst
|
|
|
2865
2881
|
handle(elementsArray, options) {
|
|
2866
2882
|
const nodes = this.generateChildNodes(elementsArray, {}, options);
|
|
2867
2883
|
return RTEListItemBlock.from({
|
|
2868
|
-
id:
|
|
2884
|
+
id: misc.generateUUID(),
|
|
2869
2885
|
type: 'list-item',
|
|
2870
2886
|
nodes: nodes,
|
|
2871
2887
|
annotations: {},
|
|
@@ -2954,7 +2970,7 @@ class LiToRTEListItemBlockStrategy extends BlockToRTEBlockStrategyAbstract {
|
|
|
2954
2970
|
*/
|
|
2955
2971
|
generateWithListBlock(elements, options) {
|
|
2956
2972
|
return RTEListBlock.from({
|
|
2957
|
-
id:
|
|
2973
|
+
id: misc.generateUUID(),
|
|
2958
2974
|
type: 'bullet-list',
|
|
2959
2975
|
blocks: elements.map((item) => {
|
|
2960
2976
|
return this.generateListItemBlockDTO(item, options);
|
|
@@ -2970,7 +2986,7 @@ class LiToRTEListItemBlockStrategy extends BlockToRTEBlockStrategyAbstract {
|
|
|
2970
2986
|
*/
|
|
2971
2987
|
generateListItemBlockDTO(element, options) {
|
|
2972
2988
|
return {
|
|
2973
|
-
id:
|
|
2989
|
+
id: misc.generateUUID(),
|
|
2974
2990
|
type: 'list-item',
|
|
2975
2991
|
annotations: htmlElementToAnnotationGenerator.generate(RTEListItemBlock, element, options),
|
|
2976
2992
|
nodes: this.generateChildNodes(Array.from(element.childNodes.length ? element.childNodes : [element]).filter((item) => {
|
|
@@ -3009,7 +3025,7 @@ class JiraCodeToRTECodeBlockStrategy extends BlockToRTEBlockStrategyAbstract {
|
|
|
3009
3025
|
const language = codeRef.dataset
|
|
3010
3026
|
.language;
|
|
3011
3027
|
return codeBlock.RTECodeBlock.from({
|
|
3012
|
-
id:
|
|
3028
|
+
id: misc.generateUUID(),
|
|
3013
3029
|
type: 'code-block',
|
|
3014
3030
|
content,
|
|
3015
3031
|
language,
|
|
@@ -3137,7 +3153,7 @@ class InlineBlockToRTETextBlockStrategy extends BlockToRTEBlockStrategyAbstract
|
|
|
3137
3153
|
if (nodes.length === 0)
|
|
3138
3154
|
return null;
|
|
3139
3155
|
return codeBlock.RTETextBlock.from({
|
|
3140
|
-
id:
|
|
3156
|
+
id: misc.generateUUID(),
|
|
3141
3157
|
type: super.matchTextBlockType(elementsArray[0]),
|
|
3142
3158
|
nodes: nodes,
|
|
3143
3159
|
annotations: htmlElementToAnnotationGenerator.generate(codeBlock.RTETextBlock, elementsArray[0], options),
|
|
@@ -3173,11 +3189,11 @@ class ElementToRTEImageBlockStrategyAbstract extends BlockToRTEBlockStrategyAbst
|
|
|
3173
3189
|
const isInternalWrapper = !(options && options.autoMatchFormat) &&
|
|
3174
3190
|
!!(element.parentNode && element.parentNode.nodeName !== 'DIV');
|
|
3175
3191
|
return RTEImageBlock.from({
|
|
3176
|
-
id:
|
|
3192
|
+
id: misc.generateUUID(),
|
|
3177
3193
|
type: 'image',
|
|
3178
3194
|
nodes: [
|
|
3179
3195
|
{
|
|
3180
|
-
id:
|
|
3196
|
+
id: misc.generateUUID(),
|
|
3181
3197
|
type: 'image',
|
|
3182
3198
|
url: element.src,
|
|
3183
3199
|
annotations: htmlElementToAnnotationGenerator.generate(RTEImageNode, element, options),
|
|
@@ -3251,11 +3267,11 @@ class VegaImageToRTEImageBlockStrategy extends ElementToRTEImageBlockStrategyAbs
|
|
|
3251
3267
|
const image = element.querySelector('img');
|
|
3252
3268
|
if (typeGuard.isNonNullable(image)) {
|
|
3253
3269
|
return RTEImageBlock.from({
|
|
3254
|
-
id:
|
|
3270
|
+
id: misc.generateUUID(),
|
|
3255
3271
|
type: 'image',
|
|
3256
3272
|
nodes: [
|
|
3257
3273
|
{
|
|
3258
|
-
id:
|
|
3274
|
+
id: misc.generateUUID(),
|
|
3259
3275
|
type: 'image',
|
|
3260
3276
|
url: image.src,
|
|
3261
3277
|
annotations: htmlElementToAnnotationGenerator.generate(RTEImageNode, element, options),
|
|
@@ -3366,7 +3382,7 @@ class ContinueInlineToRTETextBlockStrategy extends BlockToRTEBlockStrategyAbstra
|
|
|
3366
3382
|
? super.matchTextBlockType(parent)
|
|
3367
3383
|
: this.matchTextBlockTypeByTagName(parent);
|
|
3368
3384
|
const internalWrapper = !autoMatchFormat && !blockType;
|
|
3369
|
-
return codeBlock.RTETextBlock.from(Object.assign({ id:
|
|
3385
|
+
return codeBlock.RTETextBlock.from(Object.assign({ id: misc.generateUUID(), type: blockType || 'paragraph', nodes: nodes }, (internalWrapper
|
|
3370
3386
|
? { annotations: { internalWrapper: internalWrapper } }
|
|
3371
3387
|
: {
|
|
3372
3388
|
annotations: htmlElementToAnnotationGenerator.generate(codeBlock.RTETextBlock, parent, options),
|
|
@@ -3433,7 +3449,7 @@ class ElementToTextNodeStrategy extends ElementToDTOStrategy {
|
|
|
3433
3449
|
*/
|
|
3434
3450
|
generateTextNode(text, annotations) {
|
|
3435
3451
|
return {
|
|
3436
|
-
id:
|
|
3452
|
+
id: misc.generateUUID(),
|
|
3437
3453
|
type: 'text',
|
|
3438
3454
|
text: text,
|
|
3439
3455
|
annotations: annotations,
|
|
@@ -3631,6 +3647,185 @@ class StylePreservationContext {
|
|
|
3631
3647
|
}
|
|
3632
3648
|
}
|
|
3633
3649
|
|
|
3650
|
+
/**
|
|
3651
|
+
* Removes whitespace between tags, except preserves ALL whitespace between matching opening/closing tag pairs.
|
|
3652
|
+
*
|
|
3653
|
+
* This processor scans for patterns of `<tag>(whitespace)<tag>` and:
|
|
3654
|
+
* - If the first tag is an opening tag and the second tag is its matching closing tag (e.g., `<span> </span>`),
|
|
3655
|
+
* preserves ALL the whitespace between them (including spaces, tabs, newlines)
|
|
3656
|
+
* - Otherwise, removes all the whitespace between the tags
|
|
3657
|
+
*
|
|
3658
|
+
* Examples:
|
|
3659
|
+
* - `</p>\n\t<div>` → `</p><div>` (different tags: closing p, opening div - whitespace removed)
|
|
3660
|
+
* - `<div>\n\t<span>` → `<div><span>` (different tags: opening div, opening span - whitespace removed)
|
|
3661
|
+
* - `<span> </span>` → `<span> </span>` (matching tags: opening span, closing span - space preserved)
|
|
3662
|
+
* - `<span> </span>` → `<span> </span>` (matching tags - multiple spaces preserved)
|
|
3663
|
+
* - `<span>\n\t</span>` → `<span>\n\t</span>` (matching tags - \n\t preserved)
|
|
3664
|
+
* - `<code> </code>` → `<code> </code>` (matching tags - space preserved)
|
|
3665
|
+
* - `</div> <p>` → `</div><p>` (different tags: closing div, opening p - whitespace removed)
|
|
3666
|
+
*/
|
|
3667
|
+
class RemoveWhitespaceBetweenTagsProcessor {
|
|
3668
|
+
/**
|
|
3669
|
+
* Process the HTML string to remove whitespace between non-matching tags.
|
|
3670
|
+
*
|
|
3671
|
+
* @param {string} html - The HTML string to process.
|
|
3672
|
+
* @returns {string} The processed HTML string.
|
|
3673
|
+
*/
|
|
3674
|
+
process(html) {
|
|
3675
|
+
return html.replace(/(<[^>]+>)(\s+)(<[^>]+>)/g, (_match, tag1, whitespace, tag2) => {
|
|
3676
|
+
const openingTagName = this.extractOpeningTagName(tag1);
|
|
3677
|
+
const closingTagName = this.extractClosingTagName(tag2);
|
|
3678
|
+
// Preserve all whitespace if tags match (e.g., <span> </span>)
|
|
3679
|
+
if (openingTagName && closingTagName && openingTagName === closingTagName) {
|
|
3680
|
+
return `${tag1}${whitespace}${tag2}`;
|
|
3681
|
+
}
|
|
3682
|
+
// Remove whitespace for non-matching tags
|
|
3683
|
+
return `${tag1}${tag2}`;
|
|
3684
|
+
});
|
|
3685
|
+
}
|
|
3686
|
+
/**
|
|
3687
|
+
* Extracts the tag name from an opening HTML tag.
|
|
3688
|
+
*
|
|
3689
|
+
* Supports standard HTML tags (div, span, h1, etc.) and custom elements with hyphens (my-component).
|
|
3690
|
+
*
|
|
3691
|
+
* Examples:
|
|
3692
|
+
* - `<span>` → `span`
|
|
3693
|
+
* - `<div class="test">` → `div`
|
|
3694
|
+
* - `<my-component id="123">` → `my-component`
|
|
3695
|
+
* - `</span>` → `null` (not an opening tag)
|
|
3696
|
+
*
|
|
3697
|
+
* @param {string} tag - The tag string to extract from (e.g., '<span>', '<div class="test">').
|
|
3698
|
+
* @returns {string | null} The tag name or null if not an opening tag.
|
|
3699
|
+
* @private
|
|
3700
|
+
*/
|
|
3701
|
+
extractOpeningTagName(tag) {
|
|
3702
|
+
// Pattern: <(tag name) where tag name starts with letter, followed by letters/numbers/hyphens
|
|
3703
|
+
const match = tag.match(/<(\w[\w-]*)/);
|
|
3704
|
+
return match ? match[1] : null;
|
|
3705
|
+
}
|
|
3706
|
+
/**
|
|
3707
|
+
* Extracts the tag name from a closing HTML tag.
|
|
3708
|
+
*
|
|
3709
|
+
* Supports standard HTML tags (div, span, h1, etc.) and custom elements with hyphens (my-component).
|
|
3710
|
+
*
|
|
3711
|
+
* Examples:
|
|
3712
|
+
* - `</span>` → `span`
|
|
3713
|
+
* - `</div>` → `div`
|
|
3714
|
+
* - `</my-component>` → `my-component`
|
|
3715
|
+
* - `<span>` → `null` (not a closing tag)
|
|
3716
|
+
*
|
|
3717
|
+
* @param {string} tag - The tag string to extract from (e.g., '</span>', '</div>').
|
|
3718
|
+
* @returns {string | null} The tag name or null if not a closing tag.
|
|
3719
|
+
* @private
|
|
3720
|
+
*/
|
|
3721
|
+
extractClosingTagName(tag) {
|
|
3722
|
+
// Pattern: </(tag name) where tag name starts with letter, followed by letters/numbers/hyphens
|
|
3723
|
+
const match = tag.match(/<\/(\w[\w-]*)/);
|
|
3724
|
+
return match ? match[1] : null;
|
|
3725
|
+
}
|
|
3726
|
+
}
|
|
3727
|
+
|
|
3728
|
+
/**
|
|
3729
|
+
* Removes `\n` and `\t` characters after opening tags (before text content).
|
|
3730
|
+
*
|
|
3731
|
+
* Transforms patterns like `>[\n\t]+(text)` to `>(text)`.
|
|
3732
|
+
*
|
|
3733
|
+
* Examples:
|
|
3734
|
+
* - `<p>\n\tHello` → `<p>Hello`
|
|
3735
|
+
* - `<div>\n\n\tWorld` → `<div>World`
|
|
3736
|
+
*/
|
|
3737
|
+
class RemoveWhitespaceAfterOpeningTagProcessor {
|
|
3738
|
+
/**
|
|
3739
|
+
* Process the HTML string to remove `\n` and `\t` after opening tags.
|
|
3740
|
+
*
|
|
3741
|
+
* @param {string} html - The HTML string to process.
|
|
3742
|
+
* @returns {string} The processed HTML string.
|
|
3743
|
+
*/
|
|
3744
|
+
process(html) {
|
|
3745
|
+
// Pattern: `>[\n\t]+(text)` → `>(text)`
|
|
3746
|
+
return html.replace(/(>)[\n\t]+(?=.)/g, '$1');
|
|
3747
|
+
}
|
|
3748
|
+
}
|
|
3749
|
+
|
|
3750
|
+
/**
|
|
3751
|
+
* Removes `\n` and `\t` characters before closing tags (after text content).
|
|
3752
|
+
*
|
|
3753
|
+
* Transforms patterns like `(text)[\n\t]+<` to `(text)<`.
|
|
3754
|
+
*
|
|
3755
|
+
* Examples:
|
|
3756
|
+
* - `World\n\t</p>` → `World</p>`
|
|
3757
|
+
* - `Hello\n</div>` → `Hello</div>`
|
|
3758
|
+
*/
|
|
3759
|
+
class RemoveWhitespaceBeforeClosingTagProcessor {
|
|
3760
|
+
/**
|
|
3761
|
+
* Process the HTML string to remove `\n` and `\t` before closing tags.
|
|
3762
|
+
*
|
|
3763
|
+
* @param {string} html - The HTML string to process.
|
|
3764
|
+
* @returns {string} The processed HTML string.
|
|
3765
|
+
*/
|
|
3766
|
+
process(html) {
|
|
3767
|
+
// Pattern: `(text)[\n\t]+<` → `(text)<`
|
|
3768
|
+
return html.replace(/(.?)[\n\t]+(?=<)/g, '$1');
|
|
3769
|
+
}
|
|
3770
|
+
}
|
|
3771
|
+
|
|
3772
|
+
/**
|
|
3773
|
+
* Main HTML content cleaner that orchestrates multiple cleaning processors.
|
|
3774
|
+
*
|
|
3775
|
+
* This class implements a chain of responsibility pattern where each processor
|
|
3776
|
+
* handles a specific aspect of HTML cleaning. The processors are applied in sequence
|
|
3777
|
+
* and the entire chain is repeated until no more changes occur.
|
|
3778
|
+
*
|
|
3779
|
+
* Processors (in order):
|
|
3780
|
+
* 1. RemoveWhitespaceBetweenTagsProcessor - Removes whitespace between non-matching tags
|
|
3781
|
+
* 2. RemoveWhitespaceAfterOpeningTagProcessor - Removes \n and \t after opening tags
|
|
3782
|
+
* 3. RemoveWhitespaceBeforeClosingTagProcessor - Removes \n and \t before closing tags
|
|
3783
|
+
*/
|
|
3784
|
+
class HTMLContentCleaner {
|
|
3785
|
+
constructor() {
|
|
3786
|
+
this.processors = [
|
|
3787
|
+
new RemoveWhitespaceBetweenTagsProcessor(),
|
|
3788
|
+
new RemoveWhitespaceAfterOpeningTagProcessor(),
|
|
3789
|
+
new RemoveWhitespaceBeforeClosingTagProcessor(),
|
|
3790
|
+
];
|
|
3791
|
+
}
|
|
3792
|
+
/**
|
|
3793
|
+
* Cleans HTML by applying all processors in the chain repeatedly until no changes occur.
|
|
3794
|
+
*
|
|
3795
|
+
* The cleaning process:
|
|
3796
|
+
* 1. Applies each processor in sequence
|
|
3797
|
+
* 2. Compares the result with the input
|
|
3798
|
+
* 3. If changes were made, repeats the process
|
|
3799
|
+
* 4. Returns the final cleaned HTML
|
|
3800
|
+
*
|
|
3801
|
+
* Examples of transformations:
|
|
3802
|
+
* - `<p>\n\t <span>test</span>\n\t </p>` → `<p><span>test</span></p>`
|
|
3803
|
+
* - `<p>\n\tHello</p>` → `<p>Hello</p>`
|
|
3804
|
+
* - `<p>Hello\n\t</p>` → `<p>Hello</p>`
|
|
3805
|
+
* - `<span> </span>` → `<span> </span>` (preserved - matching tags)
|
|
3806
|
+
* - `<p>Hello World</p>` → `<p>Hello World</p>` (preserved - regular spaces)
|
|
3807
|
+
*
|
|
3808
|
+
* @param {string} html - The HTML string to clean.
|
|
3809
|
+
* @returns {string} The cleaned HTML string.
|
|
3810
|
+
*/
|
|
3811
|
+
clean(html) {
|
|
3812
|
+
if (!html || html.trim().length === 0) {
|
|
3813
|
+
return html;
|
|
3814
|
+
}
|
|
3815
|
+
let result = html;
|
|
3816
|
+
let previousResult;
|
|
3817
|
+
// Keep processing until no more changes occur
|
|
3818
|
+
do {
|
|
3819
|
+
previousResult = result;
|
|
3820
|
+
// Apply each processor in the chain
|
|
3821
|
+
for (const processor of this.processors) {
|
|
3822
|
+
result = processor.process(result);
|
|
3823
|
+
}
|
|
3824
|
+
} while (result !== previousResult);
|
|
3825
|
+
return result;
|
|
3826
|
+
}
|
|
3827
|
+
}
|
|
3828
|
+
|
|
3634
3829
|
/**
|
|
3635
3830
|
* Class representing the content state of the rich text editor.
|
|
3636
3831
|
*/
|
|
@@ -3669,14 +3864,14 @@ class VegaRTEContent {
|
|
|
3669
3864
|
static createEmptyContent(options = { autoMatchFormat: true }) {
|
|
3670
3865
|
return VegaRTEContent.fromJSON([
|
|
3671
3866
|
{
|
|
3672
|
-
id:
|
|
3867
|
+
id: misc.generateUUID(),
|
|
3673
3868
|
type: 'paragraph',
|
|
3674
3869
|
annotations: {
|
|
3675
3870
|
internalWrapper: !options.autoMatchFormat,
|
|
3676
3871
|
},
|
|
3677
3872
|
nodes: [
|
|
3678
3873
|
{
|
|
3679
|
-
id:
|
|
3874
|
+
id: misc.generateUUID(),
|
|
3680
3875
|
annotations: { plainText: !options.autoMatchFormat },
|
|
3681
3876
|
type: 'text',
|
|
3682
3877
|
text: '',
|
|
@@ -3693,28 +3888,8 @@ class VegaRTEContent {
|
|
|
3693
3888
|
* @returns {VegaRTEContent} The converted content state.
|
|
3694
3889
|
*/
|
|
3695
3890
|
static fromHtml(html, options = { autoMatchFormat: true, skipCustomAnnotations: false }) {
|
|
3696
|
-
|
|
3697
|
-
|
|
3698
|
-
* case1:
|
|
3699
|
-
* '<p>\n\t <span>test</span>\n\t </p>' will be formatted into '<p><span>test</span></p>'
|
|
3700
|
-
* '<p>
|
|
3701
|
-
* test
|
|
3702
|
-
* </p>' will be formatted into '<p>test</p>'
|
|
3703
|
-
*
|
|
3704
|
-
* case2:
|
|
3705
|
-
* <h1>
|
|
3706
|
-
* _test&*....
|
|
3707
|
-
* </h1> will be formatted into <h1>_test&*....</h1>
|
|
3708
|
-
*
|
|
3709
|
-
* The blank space between individual tags should be preserved:
|
|
3710
|
-
* <span> </span>
|
|
3711
|
-
*/
|
|
3712
|
-
const formattedHtml = html
|
|
3713
|
-
.replace(/>\s+<\/?/g, (match) => {
|
|
3714
|
-
return match.endsWith('</') ? match : '><';
|
|
3715
|
-
})
|
|
3716
|
-
.replace(/(>)[\n\t]+(?=[a-zA-Z0-9_\W])/g, '$1')
|
|
3717
|
-
.replace(/([a-zA-Z0-9_\W])[\n\t]+(?=<)/g, '$1');
|
|
3891
|
+
const cleaner = new HTMLContentCleaner();
|
|
3892
|
+
const formattedHtml = cleaner.clean(html);
|
|
3718
3893
|
const context = StylePreservator.preserve(formattedHtml);
|
|
3719
3894
|
const safeHtml = context.getProcessedHtml();
|
|
3720
3895
|
const body = new DOMParser().parseFromString(safeHtml, 'text/html').body;
|
|
@@ -3804,7 +3979,7 @@ class VegaRTEContent {
|
|
|
3804
3979
|
*/
|
|
3805
3980
|
toListItem(block) {
|
|
3806
3981
|
block.children.map((node) => node.apply(new codeBlock.SyncUpSelectionAction()));
|
|
3807
|
-
const listItemBlock = new RTEListItemBlock(
|
|
3982
|
+
const listItemBlock = new RTEListItemBlock(misc.generateUUID());
|
|
3808
3983
|
listItemBlock.apply(new codeBlock.AppendChildrenAction(block['children']));
|
|
3809
3984
|
listItemBlock['annotationMap'] = block['annotationMap'];
|
|
3810
3985
|
return listItemBlock;
|
|
@@ -3816,7 +3991,7 @@ class VegaRTEContent {
|
|
|
3816
3991
|
* @returns {RTEListBlock} list block dto.
|
|
3817
3992
|
*/
|
|
3818
3993
|
createList(type) {
|
|
3819
|
-
return new RTEListBlock(
|
|
3994
|
+
return new RTEListBlock(misc.generateUUID(), type);
|
|
3820
3995
|
}
|
|
3821
3996
|
/**
|
|
3822
3997
|
* Finds a node by its ID in the content.
|