@globalpayments/vega 2.73.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-cc162173.js → app-globals-12b7d808.js} +28 -32
- package/dist/cjs/breakpoints-751d433a.js +56 -0
- package/dist/cjs/{child-nodes-event-prevent-slimmer-536d29fc.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/click-outside-only-to-dismiss-strategy-407f6d1e.js +32 -0
- package/dist/cjs/{code-block-823cd481.js → code-block-f1480ec3.js} +18 -18
- 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-e2e0c6f3.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-99cca681.js → date-required-rule-912469e0.js} +1 -1
- package/dist/cjs/{design-token-11656685.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-bd2bd447.js → dto-renderer-manager-809c947b.js} +248 -57
- package/dist/cjs/{element-appender-slimmer-12f40b8b.js → element-appender-slimmer-34e4eb56.js} +505 -198
- package/dist/cjs/{event-emit-slimmer-6a591353.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-6e3e14fd.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-7408a4b3.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-a6101379.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-d587a33c.js → internal-vega-event-manager-f7ecf3d4.js} +86 -75
- package/dist/cjs/internal-vega-z-index-manager-f03ddb37.js +180 -0
- package/dist/cjs/{keyboard-manager-d8adb0ed.js → keyboard-manager-055e9f67.js} +2 -2
- package/dist/cjs/{keyboard-manager-slimmer-15e65357.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-706c5477.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-2950f1fc.js → public-rules-922849f3.js} +12 -13
- package/dist/cjs/{range-c3c48132.js → range-8aa49b08.js} +2 -2
- package/dist/cjs/{responsive-format-facade-96c5f598.js → responsive-format-facade-ea59bdcd.js} +13 -22
- package/dist/cjs/{rich-text-editor-required-rule-4aab05a3.js → rich-text-editor-required-rule-22225840.js} +1 -1
- package/dist/cjs/{string-format-strategy.abstract-a8264fca.js → string-format-strategy.abstract-f2575647.js} +1 -1
- package/dist/cjs/{string-input-formatter-slimmer-338bbd73.js → string-input-formatter-slimmer-0a334fc6.js} +5 -5
- package/dist/cjs/{string-mask-strategy-4e7d3780.js → string-mask-strategy-dda58395.js} +2 -2
- package/dist/cjs/{style-formatter-9c42d41b.js → style-formatter-0c3ced39.js} +2 -2
- package/dist/cjs/{sub-state-notify-slimmer-1efa69c4.js → sub-state-notify-slimmer-58121111.js} +1 -1
- package/dist/cjs/{sub-state-observer-slimmer-6afa62f5.js → sub-state-observer-slimmer-1dfbc4c3.js} +2 -2
- package/dist/cjs/{time-required-rule-9d39a620.js → time-required-rule-d6fa7aa8.js} +1 -1
- package/dist/cjs/{function-extension-78ec27e0.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-69d2cf01.js → type-guard-407ba0b8.js} +15 -3
- package/dist/cjs/{ui-9e181079.js → ui-234ea151.js} +12 -0
- package/dist/cjs/{valid-credit-card-number-rule-9f40d1d9.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 -27
- package/dist/cjs/vega-counter-badge.cjs.entry.js +1 -1
- package/dist/cjs/vega-date-picker_2.cjs.entry.js +419 -375
- 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 +80 -58
- package/dist/cjs/vega-env-manager-23b8b23c.js +2 -2
- package/dist/cjs/{dom-node-subject-observer-factory-1c8f7880.js → vega-event-id-ee01d8dd.js} +4 -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 +215 -87
- package/dist/cjs/vega-input.cjs.entry.js +369 -116
- 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 +128 -65
- 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 +38 -43
- 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-638a0f0d.js → wait-for-component-did-render-70a01bf9.js} +1 -12
- package/dist/collection/components/vega-app-header-button/vega-app-header-button.js +18 -3
- 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-group/vega-button-group-item/vega-button-group-item.js +1 -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-calendar/vega-calendar.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 -1
- package/dist/collection/components/vega-date-picker/assets/icons.js +4 -1
- package/dist/collection/components/vega-date-picker/slimmers/controllers/vega-date-picker-calendar-open-state-controller.js +3 -2
- package/dist/collection/components/vega-date-picker/slimmers/renderers/vega-date-picker-calendar-renderer.js +3 -3
- package/dist/collection/components/vega-date-picker/vega-date-picker-calendar/slimmers/renderers/vega-date-picker-calendar-header-render.js +109 -0
- package/dist/collection/components/vega-date-picker/vega-date-picker-calendar/slimmers/renderers/vega-date-picker-calendar-renderer.js +4 -0
- package/dist/collection/components/vega-date-picker/vega-date-picker-calendar/slimmers/renderers/vega-date-picker-calendar-year-month-switcher-renderer.js +42 -70
- package/dist/collection/components/vega-date-picker/vega-date-picker-calendar/slimmers/renderers/vega-date-picker-month-item-renderer.js +12 -56
- package/dist/collection/components/vega-date-picker/vega-date-picker-calendar/vega-date-picker-calendar.css +435 -108
- package/dist/collection/components/vega-date-picker/vega-date-picker-calendar/vega-date-picker-calendar.js +5 -0
- package/dist/collection/components/vega-dropdown/slimmers/controllers/vega-dropdown-search-controller.js +5 -1
- package/dist/collection/components/vega-dropdown/slimmers/controllers/vega-dropdown-source-controller.js +7 -0
- package/dist/collection/components/vega-dropdown/slimmers/renderers/vega-dropdown-list-renderer.js +8 -5
- 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 -3
- package/dist/collection/components/vega-dropdown/vega-dropdown.js +50 -4
- package/dist/collection/components/vega-field-label/vega-field-label.js +1 -1
- package/dist/collection/components/vega-icon/vega-icon.js +2 -1
- package/dist/collection/components/vega-input/slimmers/controllers/vega-input-render-mode-controller.js +51 -0
- package/dist/collection/components/vega-input/slimmers/renderers/vega-input-input-container-renderer.js +10 -2
- package/dist/collection/components/vega-input/slimmers/renderers/vega-input-input-renderer.js +6 -0
- package/dist/collection/components/vega-input/slimmers/renderers/vega-input-input-suggestions-renderer.js +142 -0
- package/dist/collection/components/vega-input/slimmers/renderers/vega-input-renderer.js +12 -1
- package/dist/collection/components/vega-input/vega-input.js +200 -3
- package/dist/collection/components/vega-input-phone-number/slimmers/renderers/country-select-renderer.js +1 -1
- package/dist/collection/components/vega-input-select/slimmers/controllers/vega-input-select-item-controller.js +89 -0
- package/dist/collection/components/vega-input-select/slimmers/controllers/vega-input-select-source-controller.js +4 -0
- package/dist/collection/components/vega-input-select/slimmers/controllers/vega-input-select-value-controller.js +4 -0
- package/dist/collection/components/vega-input-select/slimmers/renderers/vega-input-select-dropdown-renderer.js +38 -13
- package/dist/collection/components/vega-input-select/vega-input-select.js +27 -7
- 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/annotations/plain-text-annotation.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 +21 -24
- package/dist/collection/components/vega-rich-text-editor/slimmers/controllers/extension-controller.js +1 -1
- package/dist/collection/components/vega-rich-text-editor/slimmers/controllers/html-cleaner/html-content-cleaner-processor.interface.js +1 -0
- 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 +7 -3
- 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/slimmers/renderers/tools/source-edit-toolbar-button-slimmer.js +6 -0
- 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 +171 -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-selection-chip/vega-selection-chip.js +1 -1
- 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/components/vega-time-picker/slimmers/controllers/vega-time-picker-range-dropdown-controller.js +2 -1
- package/dist/collection/components/vega-time-picker/slimmers/controllers/vega-time-picker-single-dropdown-controller.js +2 -1
- package/dist/collection/constants/ui.js +2 -0
- 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/event-manager/event-id/component-event-id-map.js +13 -2
- package/dist/collection/helpers/event-manager/event-id/vega-event-id.js +2 -0
- package/dist/collection/helpers/event-manager/test/component-event-id-map.test.js +3 -1
- package/dist/collection/helpers/event-manager/test/vega-event-manager.test.js +3 -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/element-appender/element-appender-slimmer.js +60 -32
- package/dist/collection/helpers/slimmers/element-appender/test/element-appender-slimmer.test.js +3 -2
- package/dist/collection/helpers/slimmers/element-appender/trigger-strategies/click-outside-only-to-dismiss-strategy.js +28 -0
- package/dist/collection/helpers/slimmers/element-appender/trigger-strategies/click-trigger-strategy.js +33 -0
- package/dist/collection/helpers/slimmers/element-appender/trigger-strategies/hover-trigger-strategy.js +42 -0
- package/dist/collection/helpers/slimmers/element-appender/trigger-strategies/none-trigger-strategy.js +22 -0
- package/dist/collection/helpers/slimmers/element-appender/trigger-strategies/trigger-strategy.interface.js +1 -0
- 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/test/type-guard.test.js +8 -1
- package/dist/collection/types/type-guard.js +11 -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-949d2e18.js → app-globals-c0676920.js} +12 -16
- package/dist/esm/breakpoints-56e5407b.js +53 -0
- package/dist/esm/{child-nodes-event-prevent-slimmer-e6f98de5.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/click-outside-only-to-dismiss-strategy-3d286c1b.js +30 -0
- package/dist/esm/{code-block-666674d7.js → code-block-b6247a45.js} +8 -8
- 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-171dda08.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-a9980386.js → date-required-rule-e771e7d9.js} +1 -1
- package/dist/esm/{design-token-9b510e59.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-49ae5d56.js → dto-renderer-manager-6fd22ab7.js} +222 -31
- package/dist/esm/{element-appender-slimmer-b9890dcb.js → element-appender-slimmer-e4713a72.js} +504 -197
- package/dist/esm/{event-emit-slimmer-2d791d0e.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-257928c1.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-b3eea6a2.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-9241968c.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-fdee2a0a.js → internal-vega-event-manager-32a3d848.js} +13 -2
- package/dist/esm/internal-vega-z-index-manager-7d2b54c3.js +178 -0
- package/dist/esm/{keyboard-manager-89acac79.js → keyboard-manager-38934f94.js} +2 -2
- package/dist/esm/{keyboard-manager-slimmer-e303cb7d.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-4bec99fd.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-b164e40e.js → public-rules-25cc3a39.js} +13 -14
- package/dist/esm/{range-9cc1422b.js → range-663f44dc.js} +2 -2
- package/dist/esm/{responsive-format-facade-94897ae8.js → responsive-format-facade-7a071174.js} +3 -12
- package/dist/esm/{rich-text-editor-required-rule-2131f21c.js → rich-text-editor-required-rule-a238b862.js} +1 -1
- package/dist/esm/{string-format-strategy.abstract-75540c16.js → string-format-strategy.abstract-713fba36.js} +1 -1
- package/dist/esm/{string-input-formatter-slimmer-3a42d9b8.js → string-input-formatter-slimmer-5b413ff9.js} +4 -4
- package/dist/esm/{string-mask-strategy-4a18ed1a.js → string-mask-strategy-6beaf664.js} +2 -2
- package/dist/esm/{style-formatter-bb5aec96.js → style-formatter-3d06b72d.js} +2 -2
- package/dist/esm/{sub-state-notify-slimmer-71b9bbd5.js → sub-state-notify-slimmer-5133f1a8.js} +2 -2
- package/dist/esm/{sub-state-observer-slimmer-41a1b380.js → sub-state-observer-slimmer-478c9f41.js} +3 -3
- package/dist/esm/{time-required-rule-8ec1faf5.js → time-required-rule-e4138a76.js} +1 -1
- package/dist/esm/{function-extension-8b06c6f8.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-b48aec98.js → type-guard-f50e34d6.js} +13 -2
- package/dist/esm/{ui-bb99c0c2.js → ui-ee31416b.js} +12 -0
- package/dist/esm/{valid-credit-card-number-rule-96eaf9b1.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 -20
- package/dist/esm/vega-counter-badge.entry.js +1 -1
- package/dist/esm/vega-date-picker_2.entry.js +403 -359
- 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 +70 -48
- 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 +201 -73
- package/dist/esm/vega-input.entry.js +362 -109
- 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 +103 -40
- 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 +29 -34
- 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-0d487fae.js → wait-for-component-did-render-b08ef07b.js} +3 -13
- package/dist/sri/vega-sri-manifest.json +419 -399
- 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/assets/icons.d.ts +1 -1
- package/dist/types/components/vega-date-picker/types.d.ts +39 -0
- package/dist/types/components/vega-date-picker/vega-date-picker-calendar/slimmers/renderers/vega-date-picker-calendar-header-render.d.ts +20 -0
- package/dist/types/components/vega-date-picker/vega-date-picker-calendar/slimmers/renderers/vega-date-picker-calendar-renderer.d.ts +1 -0
- package/dist/types/components/vega-date-picker/vega-date-picker-calendar/slimmers/renderers/vega-date-picker-calendar-year-month-switcher-renderer.d.ts +4 -11
- package/dist/types/components/vega-date-picker/vega-date-picker-calendar/slimmers/renderers/vega-date-picker-month-item-renderer.d.ts +4 -9
- package/dist/types/components/vega-date-picker/vega-date-picker-calendar/vega-date-picker-calendar.d.ts +2 -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/slimmers/controllers/vega-dropdown-source-controller.d.ts +2 -0
- package/dist/types/components/vega-dropdown/slimmers/renderers/vega-dropdown-list-renderer.d.ts +1 -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-dropdown/vega-dropdown.d.ts +14 -2
- 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/slimmers/controllers/vega-input-render-mode-controller.d.ts +27 -0
- package/dist/types/components/vega-input/slimmers/renderers/vega-input-input-renderer.d.ts +1 -0
- package/dist/types/components/vega-input/slimmers/renderers/vega-input-input-suggestions-renderer.d.ts +40 -0
- package/dist/types/components/vega-input/slimmers/renderers/vega-input-renderer.d.ts +3 -0
- package/dist/types/components/vega-input/types.d.ts +35 -0
- package/dist/types/components/vega-input/vega-input.d.ts +55 -1
- 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/slimmers/controllers/vega-input-select-item-controller.d.ts +29 -0
- package/dist/types/components/vega-input-select/slimmers/controllers/vega-input-select-source-controller.d.ts +1 -0
- package/dist/types/components/vega-input-select/slimmers/controllers/vega-input-select-value-controller.d.ts +1 -0
- package/dist/types/components/vega-input-select/slimmers/renderers/vega-input-select-dropdown-renderer.d.ts +1 -1
- package/dist/types/components/vega-input-select/types.d.ts +50 -0
- package/dist/types/components/vega-input-select/vega-input-select.d.ts +12 -4
- 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/dto/content-state.d.ts +8 -1
- 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/slimmers/controllers/value-controller.d.ts +1 -0
- package/dist/types/components/vega-rich-text-editor/slimmers/renderers/tools/source-edit-toolbar-button-slimmer.d.ts +1 -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 +78 -14
- package/dist/types/constants/ui.d.ts +1 -1
- 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/event-manager/event-id/vega-event-id.d.ts +2 -0
- 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/element-appender/element-appender-slimmer.d.ts +4 -9
- package/dist/types/helpers/slimmers/element-appender/trigger-strategies/click-outside-only-to-dismiss-strategy.d.ts +21 -0
- package/dist/types/helpers/slimmers/element-appender/trigger-strategies/click-trigger-strategy.d.ts +21 -0
- package/dist/types/helpers/slimmers/element-appender/trigger-strategies/hover-trigger-strategy.d.ts +22 -0
- package/dist/types/helpers/slimmers/element-appender/trigger-strategies/none-trigger-strategy.d.ts +18 -0
- package/dist/types/helpers/slimmers/element-appender/trigger-strategies/trigger-strategy.interface.d.ts +37 -0
- 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 +7 -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/type-guard.d.ts +8 -0
- package/dist/types/types/ui.type.d.ts +381 -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-f2c8c363.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-a8dad05d.js → p-0e679d8c.js} +1 -1
- package/dist/vega/{p-184d8443.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-9a83a6b0.js → p-2a10e2e5.js} +1 -1
- 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-161b9c5b.js → p-415ffa35.js} +1 -1
- package/dist/vega/{p-d849e0f5.js → p-4415ad28.js} +1 -1
- package/dist/vega/{p-74a77cad.js → p-464559e3.js} +1 -1
- package/dist/vega/p-49845a91.js +1 -0
- package/dist/vega/{p-3d85411d.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-a4ec6575.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-2971b17a.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-8187878e.js +1 -0
- package/dist/vega/{p-d991fb11.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-6c1ef2ed.js → p-9339c6c4.js} +1 -1
- package/dist/vega/p-94a77fbe.entry.js +1 -0
- package/dist/vega/{p-207cfa6a.js → p-95528b47.js} +1 -1
- package/dist/vega/p-9a137bab.entry.js +1 -0
- package/dist/vega/{p-bf61d136.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-d1d0f08a.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-de70aac1.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-8fba7f9a.js → p-e632475e.js} +1 -1
- package/dist/vega/p-e6adf829.js +1 -0
- package/dist/vega/{p-5be29f14.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-716015a5.js +0 -210
- package/dist/cjs/wait-for-vega-handler-5469ff80.js +0 -63
- package/dist/esm/_commonjsHelpers-9943807e.js +0 -17
- package/dist/esm/dom-node-subject-observer-factory-1aaa1159.js +0 -248
- package/dist/esm/language-extension-b3f836d4.js +0 -207
- package/dist/esm/wait-for-vega-handler-c2c07ac3.js +0 -61
- package/dist/vega/p-03e16a05.entry.js +0 -1
- package/dist/vega/p-0ad59141.entry.js +0 -1
- package/dist/vega/p-0ba0f83d.entry.js +0 -1
- package/dist/vega/p-10ac8b57.js +0 -1
- package/dist/vega/p-112455b1.js +0 -1
- package/dist/vega/p-114c6df8.entry.js +0 -1
- package/dist/vega/p-1e019406.js +0 -1
- package/dist/vega/p-1e0d8228.entry.js +0 -1
- package/dist/vega/p-1faef917.entry.js +0 -1
- package/dist/vega/p-21cba83b.entry.js +0 -1
- package/dist/vega/p-21e7808a.entry.js +0 -1
- package/dist/vega/p-2409a475.entry.js +0 -1
- package/dist/vega/p-2ae5ad30.entry.js +0 -1
- package/dist/vega/p-2b20a215.entry.js +0 -1
- package/dist/vega/p-2bc4f7d9.entry.js +0 -1
- package/dist/vega/p-2e0deef6.js +0 -1
- package/dist/vega/p-2f592078.entry.js +0 -1
- package/dist/vega/p-30e7544c.js +0 -1
- package/dist/vega/p-3162a7fd.entry.js +0 -1
- package/dist/vega/p-3566ad76.js +0 -1
- package/dist/vega/p-38ed3d59.entry.js +0 -1
- package/dist/vega/p-3938880f.entry.js +0 -1
- package/dist/vega/p-398220f5.entry.js +0 -1
- package/dist/vega/p-40561fa0.entry.js +0 -1
- package/dist/vega/p-42a283b5.entry.js +0 -1
- package/dist/vega/p-44bc9ea9.entry.js +0 -1
- package/dist/vega/p-4957f07a.entry.js +0 -1
- package/dist/vega/p-524ffc12.entry.js +0 -1
- package/dist/vega/p-59fa3f68.js +0 -1
- package/dist/vega/p-5d676a94.js +0 -1
- package/dist/vega/p-5f09868d.entry.js +0 -1
- package/dist/vega/p-623c3911.entry.js +0 -9
- package/dist/vega/p-676eaf3f.entry.js +0 -1
- package/dist/vega/p-697eb0e1.js +0 -1
- package/dist/vega/p-6b9d2996.entry.js +0 -1
- package/dist/vega/p-6e701542.entry.js +0 -1
- package/dist/vega/p-6e84e451.entry.js +0 -1
- package/dist/vega/p-70b2906a.entry.js +0 -1
- package/dist/vega/p-721b2981.entry.js +0 -1
- package/dist/vega/p-75d91ee9.entry.js +0 -1
- package/dist/vega/p-76e6c13a.js +0 -1
- package/dist/vega/p-79a544d6.js +0 -1
- package/dist/vega/p-7a8c4cf8.entry.js +0 -1
- package/dist/vega/p-7b337fd4.entry.js +0 -1
- package/dist/vega/p-7be3aefc.entry.js +0 -1
- package/dist/vega/p-7f86b3c8.js +0 -1
- package/dist/vega/p-7f9acdf7.entry.js +0 -1
- package/dist/vega/p-82dbff54.entry.js +0 -1
- package/dist/vega/p-8bd496b4.js +0 -1
- package/dist/vega/p-8c9ea6f4.js +0 -1
- package/dist/vega/p-94cf46ca.entry.js +0 -1
- package/dist/vega/p-96797fee.entry.js +0 -1
- package/dist/vega/p-9b673fd4.entry.js +0 -1
- package/dist/vega/p-9d8e2939.entry.js +0 -1
- package/dist/vega/p-9dfe2bbc.js +0 -1
- package/dist/vega/p-9fb71d8c.entry.js +0 -1
- package/dist/vega/p-9fd503e9.entry.js +0 -1
- package/dist/vega/p-a125cfec.entry.js +0 -1
- package/dist/vega/p-a3c4fa30.entry.js +0 -1
- package/dist/vega/p-a4670e23.js +0 -1
- package/dist/vega/p-a58bdbad.entry.js +0 -1
- package/dist/vega/p-a5d4d168.entry.js +0 -1
- package/dist/vega/p-aab0deab.js +0 -1
- package/dist/vega/p-adc615a4.entry.js +0 -1
- package/dist/vega/p-b007d0d5.entry.js +0 -1
- package/dist/vega/p-b406a846.entry.js +0 -1
- package/dist/vega/p-bd60c72e.entry.js +0 -1
- package/dist/vega/p-be0b67b8.entry.js +0 -1
- package/dist/vega/p-c0036e71.js +0 -1
- package/dist/vega/p-c2ac6b47.entry.js +0 -1
- package/dist/vega/p-c4700277.entry.js +0 -1
- package/dist/vega/p-c616c592.js +0 -1
- package/dist/vega/p-c7194674.entry.js +0 -1
- package/dist/vega/p-c7f292dd.entry.js +0 -1
- package/dist/vega/p-ce2ffff7.js +0 -1
- package/dist/vega/p-d01fe83d.entry.js +0 -1
- package/dist/vega/p-db62b038.entry.js +0 -1
- package/dist/vega/p-db8cdba6.js +0 -1
- package/dist/vega/p-dd72ad9e.js +0 -1
- package/dist/vega/p-e39aa2ea.entry.js +0 -1
- package/dist/vega/p-e88f2dc3.js +0 -1
- package/dist/vega/p-ead1da57.entry.js +0 -1
- package/dist/vega/p-ef9cbad1.js +0 -1
- package/dist/vega/p-f3831dc9.entry.js +0 -1
- package/dist/vega/p-f38a4be2.entry.js +0 -1
- package/dist/vega/p-f427d88c.entry.js +0 -1
- package/dist/vega/p-f69f84a7.js +0 -1
- package/dist/vega/p-f6cd7a08.entry.js +0 -1
- /package/dist/vega/{p-d9671d27.js → p-6c170474.js} +0 -0
|
@@ -13,23 +13,29 @@ export class InternalProgressTrackerStep {
|
|
|
13
13
|
* @param {string} title - The title of the step.
|
|
14
14
|
* @param {ProgressStepStatus} progressStatus - The progress status of the step.
|
|
15
15
|
* @param {boolean} isCurrent - Indicates if this step is the current step.
|
|
16
|
+
* @param {boolean} clickable - Indicates if this step is clickable.
|
|
16
17
|
*/
|
|
17
|
-
constructor(stepKey, title, progressStatus, isCurrent) {
|
|
18
|
+
constructor(stepKey, title, progressStatus, isCurrent, clickable) {
|
|
18
19
|
this.stepKey = stepKey;
|
|
19
20
|
this.title = title;
|
|
20
21
|
this.progressStatus = progressStatus;
|
|
21
22
|
this.isCurrent = isCurrent;
|
|
23
|
+
this.clickable = clickable;
|
|
22
24
|
}
|
|
23
25
|
/**
|
|
24
26
|
* Create InternalProgressTrackerStep array from steps property
|
|
25
27
|
*
|
|
26
|
-
* @param {
|
|
28
|
+
* @param {HTMLElement} host - The host element.
|
|
29
|
+
* @param {string[] | VegaProgressTrackerStepItem[]} steps - An array of step keys.
|
|
27
30
|
* @param {number} current - The current step index.
|
|
28
31
|
* @param {string[]} completedSteps - An array of completed step keys.
|
|
29
32
|
* @returns {InternalProgressTrackerStep[]} An array of InternalProgressTrackerStep instances.
|
|
30
33
|
*/
|
|
31
|
-
static fromSteps(steps, current, completedSteps) {
|
|
32
|
-
return steps.map((step, index) =>
|
|
34
|
+
static fromSteps(host, steps, current, completedSteps) {
|
|
35
|
+
return steps.map((step, index) => {
|
|
36
|
+
const stepKey = typeof step === 'string' ? step : step.title;
|
|
37
|
+
return new InternalProgressTrackerStep(stepKey, stepKey, this.getStepStatus(stepKey, index, current, completedSteps), index === current, this.getIsStepClickable(host, step));
|
|
38
|
+
});
|
|
33
39
|
}
|
|
34
40
|
/**
|
|
35
41
|
* Create InternalProgressTrackerStep array from host slot elements
|
|
@@ -41,9 +47,27 @@ export class InternalProgressTrackerStep {
|
|
|
41
47
|
*/
|
|
42
48
|
static fromHostSlot(host, current, completedSteps) {
|
|
43
49
|
return Array.from(host.querySelectorAll('vega-progress-tracker-step')).map((step, index) => {
|
|
44
|
-
|
|
50
|
+
const stepKey = step.stepKey;
|
|
51
|
+
return new InternalProgressTrackerStep(stepKey, '', this.getStepStatus(stepKey, index, current, completedSteps), index === current, this.getIsStepClickable(host, step));
|
|
45
52
|
});
|
|
46
53
|
}
|
|
54
|
+
/**
|
|
55
|
+
* Gets the clickable mode of the step.
|
|
56
|
+
*
|
|
57
|
+
* @param {HTMLElement} host - The host element.
|
|
58
|
+
* @param {string | VegaProgressTrackerStepItem} step - The step element.
|
|
59
|
+
* @returns { boolean } The clickable mode of the step.
|
|
60
|
+
*/
|
|
61
|
+
static getIsStepClickable(host, step) {
|
|
62
|
+
//For the legacy string type steps, the clickable mode is determined by the canClickStep property on the host
|
|
63
|
+
if (typeof step === 'string')
|
|
64
|
+
return host.canClickStep;
|
|
65
|
+
//If host has disabled click step, return false regardless of individual step setting
|
|
66
|
+
if (!host.canClickStep)
|
|
67
|
+
return false;
|
|
68
|
+
//Return default VegaProgressTrackerStepItem clickable value
|
|
69
|
+
return typeof step.clickable === 'boolean' ? step.clickable : host.canClickStep;
|
|
70
|
+
}
|
|
47
71
|
/**
|
|
48
72
|
* Checks if the step is completed.
|
|
49
73
|
*
|
|
@@ -59,7 +83,7 @@ export class InternalProgressTrackerStep {
|
|
|
59
83
|
* @param {string} stepKey - The unique key for the step.
|
|
60
84
|
* @param {number} stepIndex - The index of the step.
|
|
61
85
|
* @param {number} current - The current step index.
|
|
62
|
-
* @param {string[]} completedSteps - An array of completed step keys.
|
|
86
|
+
* @param {string[]} completedSteps - An array of completed step keys. TODO: In the future, this will be derived from the step's own status rather than relying on an external array.
|
|
63
87
|
* @returns {ProgressStepStatus} The progress status of the step.
|
|
64
88
|
*/
|
|
65
89
|
InternalProgressTrackerStep.getStepStatus = (stepKey, stepIndex, current, completedSteps) => {
|
|
@@ -64,7 +64,7 @@ export class VegaProgressTrackerCurrentStepsController extends VegaSlimmer {
|
|
|
64
64
|
*/
|
|
65
65
|
syncUpCurrentSteps() {
|
|
66
66
|
this.currentSteps = this.renderModeController.isSourceRenderMode()
|
|
67
|
-
? InternalProgressTrackerStep.fromSteps(this.steps, this.current, this.deprecatedPropertySlimmer.getValue())
|
|
67
|
+
? InternalProgressTrackerStep.fromSteps(this.host, this.steps, this.current, this.deprecatedPropertySlimmer.getValue())
|
|
68
68
|
: InternalProgressTrackerStep.fromHostSlot(this.host, this.current, this.deprecatedPropertySlimmer.getValue());
|
|
69
69
|
}
|
|
70
70
|
/**
|
|
@@ -22,7 +22,14 @@ export class VegaProgressTrackerRenderer extends VegaSlimmer {
|
|
|
22
22
|
};
|
|
23
23
|
this.renderStep = (step, stepIndex) => {
|
|
24
24
|
var _a;
|
|
25
|
-
return (h("div", { role: !
|
|
25
|
+
return (h("div", { role: !step.clickable ? null : 'button', class: [
|
|
26
|
+
'vega-progress-step',
|
|
27
|
+
step.progressStatus,
|
|
28
|
+
step.isCurrent ? 'current' : '',
|
|
29
|
+
!step.clickable ? 'disabled' : '',
|
|
30
|
+
]
|
|
31
|
+
.filter(Boolean)
|
|
32
|
+
.join(' '), "data-index": stepIndex, tabIndex: !step.clickable ? null : 0, onClick: !step.clickable ? null : this.onStepIconClick, onKeyDown: !step.clickable ? null : createEnterKeyHandlerToTriggerClick(), "aria-label": step.title },
|
|
26
33
|
h("div", { class: "vega-progress-step-icon-divider" },
|
|
27
34
|
h("div", { class: `vega-progress-step__divider left ${((_a = this.currentSteps[stepIndex - 1]) === null || _a === void 0 ? void 0 : _a.isCompleted()) ? 'background' : ''}` }),
|
|
28
35
|
this.renderStepIcon(step, stepIndex),
|
|
@@ -26,6 +26,12 @@ export class VegaProgressTrackerStep {
|
|
|
26
26
|
* @vegaVersion 2.73.0
|
|
27
27
|
*/
|
|
28
28
|
this.stepKey = '';
|
|
29
|
+
/**
|
|
30
|
+
* If step is clickable.
|
|
31
|
+
*
|
|
32
|
+
* @vegaVersion 2.76.0
|
|
33
|
+
*/
|
|
34
|
+
this.clickable = true;
|
|
29
35
|
}
|
|
30
36
|
render() {
|
|
31
37
|
return sanitizeVegaComponent(h(Host, null,
|
|
@@ -65,6 +71,27 @@ export class VegaProgressTrackerStep {
|
|
|
65
71
|
"attribute": "step-key",
|
|
66
72
|
"reflect": true,
|
|
67
73
|
"defaultValue": "''"
|
|
74
|
+
},
|
|
75
|
+
"clickable": {
|
|
76
|
+
"type": "boolean",
|
|
77
|
+
"mutable": false,
|
|
78
|
+
"complexType": {
|
|
79
|
+
"original": "boolean",
|
|
80
|
+
"resolved": "boolean",
|
|
81
|
+
"references": {}
|
|
82
|
+
},
|
|
83
|
+
"required": false,
|
|
84
|
+
"optional": false,
|
|
85
|
+
"docs": {
|
|
86
|
+
"tags": [{
|
|
87
|
+
"name": "vegaVersion",
|
|
88
|
+
"text": "2.76.0"
|
|
89
|
+
}],
|
|
90
|
+
"text": "If step is clickable."
|
|
91
|
+
},
|
|
92
|
+
"attribute": "clickable",
|
|
93
|
+
"reflect": true,
|
|
94
|
+
"defaultValue": "true"
|
|
68
95
|
}
|
|
69
96
|
}; }
|
|
70
97
|
static get states() { return {
|
|
@@ -61,6 +61,18 @@
|
|
|
61
61
|
:host(:not(.click-step-disabled)) .vega-progress-step.complete.current:hover .vega-progress-step__icon vega-icon {
|
|
62
62
|
color: rgba(var(--v-text-inverted-primary, 252, 252, 252, 1));
|
|
63
63
|
}
|
|
64
|
+
:host(:not(.click-step-disabled)) .vega-progress-step.disabled {
|
|
65
|
+
cursor: initial;
|
|
66
|
+
}
|
|
67
|
+
:host(:not(.click-step-disabled)) .vega-progress-step.disabled.default:hover .vega-progress-step__icon {
|
|
68
|
+
background-color: rgba(var(--v-bg-action-quaternary, 222, 225, 227, 1));
|
|
69
|
+
}
|
|
70
|
+
:host(:not(.click-step-disabled)) .vega-progress-step.disabled.default:active .vega-progress-step__icon {
|
|
71
|
+
background-color: rgba(var(--v-bg-action-quaternary, 222, 225, 227, 1));
|
|
72
|
+
}
|
|
73
|
+
:host(:not(.click-step-disabled)) .vega-progress-step.disabled.inProgress:hover .vega-progress-step__icon, :host(:not(.click-step-disabled)) .vega-progress-step.disabled.current:hover .vega-progress-step__icon {
|
|
74
|
+
background-color: rgba(var(--v-bg-action, 19, 98, 226, 1));
|
|
75
|
+
}
|
|
64
76
|
|
|
65
77
|
:host .vega-progress-step:focus-visible {
|
|
66
78
|
outline-width: 0px;
|
|
@@ -220,9 +220,14 @@ export class VegaProgressTracker {
|
|
|
220
220
|
"type": "unknown",
|
|
221
221
|
"mutable": false,
|
|
222
222
|
"complexType": {
|
|
223
|
-
"original": "string[]",
|
|
224
|
-
"resolved": "string[]",
|
|
225
|
-
"references": {
|
|
223
|
+
"original": "string[] | VegaProgressTrackerStepItem[]",
|
|
224
|
+
"resolved": "VegaProgressTrackerStepItem[] | string[]",
|
|
225
|
+
"references": {
|
|
226
|
+
"VegaProgressTrackerStepItem": {
|
|
227
|
+
"location": "import",
|
|
228
|
+
"path": "./type"
|
|
229
|
+
}
|
|
230
|
+
}
|
|
226
231
|
},
|
|
227
232
|
"required": false,
|
|
228
233
|
"optional": false,
|
|
@@ -11,7 +11,7 @@ import { VegaComponentUsageRuntimeMetricsSlimmer } from '../../helpers/slimmers/
|
|
|
11
11
|
import { VegaRichTextContentRenderer } from './slimmers/renderers/vega-rich-text-content-renderer';
|
|
12
12
|
import { VegaRichTextContentStateController } from './slimmers/controllers/vega-rich-text-content-state-controller';
|
|
13
13
|
import { findParent } from '../../utils/ui';
|
|
14
|
-
import { waitForComponentDidRender } from '../../helpers/common';
|
|
14
|
+
import { waitForComponentDidRender } from '../../helpers/common/wait-for-component-did-render';
|
|
15
15
|
import { RTEExtensionStylesController } from './slimmers/controllers/vega-rich-text-content-extensions-styles-controller';
|
|
16
16
|
/**
|
|
17
17
|
* @vegaVersion 2.34.0
|
|
@@ -53,6 +53,12 @@ export class RTEHtmlBlock extends RTEBlock {
|
|
|
53
53
|
toHtml() {
|
|
54
54
|
const BlockTag = this.htmlTag;
|
|
55
55
|
const attrStr = super.generateAttributeString();
|
|
56
|
+
// Handle void/self-closing tags (hr, input, col, etc.)
|
|
57
|
+
// Uses HTML5 syntax without self-closing slash for consistency with img and br tags
|
|
58
|
+
if (RTEHtmlBlock.VOID_TAGS.has(this.htmlTag)) {
|
|
59
|
+
return `<${BlockTag}${attrStr}>`;
|
|
60
|
+
}
|
|
61
|
+
// Handle normal tags with children
|
|
56
62
|
return [
|
|
57
63
|
`<${BlockTag}${attrStr}>`,
|
|
58
64
|
this.children.map((block) => block.toHtml()).join(''),
|
|
@@ -66,3 +72,13 @@ export class RTEHtmlBlock extends RTEBlock {
|
|
|
66
72
|
return Object.assign(Object.assign({}, super.toJSON()), { id: this.id, type: this.type, htmlTag: this.htmlTag, children: this.children.map((child) => child.toJSON()) });
|
|
67
73
|
}
|
|
68
74
|
}
|
|
75
|
+
/**
|
|
76
|
+
* Void/self-closing tags that don't have closing tags and don't contain children.
|
|
77
|
+
* These tags should be rendered as <tag> or <tag/> instead of <tag></tag>.
|
|
78
|
+
*
|
|
79
|
+
* Based on canHandleTags from html-block-strategy.ts, the following are void tags:
|
|
80
|
+
* - HR: horizontal rule
|
|
81
|
+
* - INPUT: form input
|
|
82
|
+
* - COL: table column
|
|
83
|
+
*/
|
|
84
|
+
RTEHtmlBlock.VOID_TAGS = new Set(['hr', 'input', 'col']);
|
|
@@ -21,6 +21,7 @@ import { VegaInternalRichTextEditorFlushChanges } from '../../../helpers/event-m
|
|
|
21
21
|
import './setup';
|
|
22
22
|
import { StylePreservator } from '../../../helpers/csp/styles-preservator';
|
|
23
23
|
import { LogUtility } from '../../../utils/log';
|
|
24
|
+
import { HTMLContentCleaner } from '../slimmers/controllers/html-cleaner';
|
|
24
25
|
/**
|
|
25
26
|
* Class representing the content state of the rich text editor.
|
|
26
27
|
*/
|
|
@@ -53,22 +54,27 @@ export class VegaRTEContent {
|
|
|
53
54
|
/**
|
|
54
55
|
* Create an empty content state
|
|
55
56
|
*
|
|
57
|
+
* @param {VegaRTETransformOptions} options - Optional transformation options.
|
|
56
58
|
* @returns {VegaRTEContent} An empty content state
|
|
57
59
|
*/
|
|
58
|
-
static createEmptyContent() {
|
|
60
|
+
static createEmptyContent(options = { autoMatchFormat: true }) {
|
|
59
61
|
return VegaRTEContent.fromJSON([
|
|
60
62
|
{
|
|
61
63
|
id: generateUUID(),
|
|
62
64
|
type: 'paragraph',
|
|
65
|
+
annotations: {
|
|
66
|
+
internalWrapper: !options.autoMatchFormat,
|
|
67
|
+
},
|
|
63
68
|
nodes: [
|
|
64
69
|
{
|
|
65
70
|
id: generateUUID(),
|
|
71
|
+
annotations: { plainText: !options.autoMatchFormat },
|
|
66
72
|
type: 'text',
|
|
67
73
|
text: '',
|
|
68
74
|
},
|
|
69
75
|
],
|
|
70
76
|
},
|
|
71
|
-
]);
|
|
77
|
+
], options);
|
|
72
78
|
}
|
|
73
79
|
/**
|
|
74
80
|
* Converts HTML content to a VegaRTEContent instance.
|
|
@@ -78,28 +84,8 @@ export class VegaRTEContent {
|
|
|
78
84
|
* @returns {VegaRTEContent} The converted content state.
|
|
79
85
|
*/
|
|
80
86
|
static fromHtml(html, options = { autoMatchFormat: true, skipCustomAnnotations: false }) {
|
|
81
|
-
|
|
82
|
-
|
|
83
|
-
* case1:
|
|
84
|
-
* '<p>\n\t <span>test</span>\n\t </p>' will be formatted into '<p><span>test</span></p>'
|
|
85
|
-
* '<p>
|
|
86
|
-
* test
|
|
87
|
-
* </p>' will be formatted into '<p>test</p>'
|
|
88
|
-
*
|
|
89
|
-
* case2:
|
|
90
|
-
* <h1>
|
|
91
|
-
* _test&*....
|
|
92
|
-
* </h1> will be formatted into <h1>_test&*....</h1>
|
|
93
|
-
*
|
|
94
|
-
* The blank space between individual tags should be preserved:
|
|
95
|
-
* <span> </span>
|
|
96
|
-
*/
|
|
97
|
-
const formattedHtml = html
|
|
98
|
-
.replace(/>\s+<\/?/g, (match) => {
|
|
99
|
-
return match.endsWith('</') ? match : '><';
|
|
100
|
-
})
|
|
101
|
-
.replace(/(>)[\n\t]+(?=[a-zA-Z0-9_\W])/g, '$1')
|
|
102
|
-
.replace(/([a-zA-Z0-9_\W])[\n\t]+(?=<)/g, '$1');
|
|
87
|
+
const cleaner = new HTMLContentCleaner();
|
|
88
|
+
const formattedHtml = cleaner.clean(html);
|
|
103
89
|
const context = StylePreservator.preserve(formattedHtml);
|
|
104
90
|
const safeHtml = context.getProcessedHtml();
|
|
105
91
|
const body = new DOMParser().parseFromString(safeHtml, 'text/html').body;
|
|
@@ -141,8 +127,19 @@ export class VegaRTEContent {
|
|
|
141
127
|
if (options) {
|
|
142
128
|
LogUtility.warn(`The 'options' parameter in toHtml method is deprecated and will be removed in the future.`);
|
|
143
129
|
}
|
|
130
|
+
if (this.isEmpty()) {
|
|
131
|
+
return '';
|
|
132
|
+
}
|
|
144
133
|
return this.children.map((block) => block.toHtml()).join('');
|
|
145
134
|
}
|
|
135
|
+
/**
|
|
136
|
+
* Checks if the content state is empty.
|
|
137
|
+
*
|
|
138
|
+
* @returns {boolean} True if the content state is empty, false otherwise.
|
|
139
|
+
*/
|
|
140
|
+
isEmpty() {
|
|
141
|
+
return this.children.length === 0 || (this.children.length === 1 && !this.children[0].isNotEmpty());
|
|
142
|
+
}
|
|
146
143
|
/**
|
|
147
144
|
* Internal method to add the block item, remove the block item
|
|
148
145
|
*
|
|
@@ -90,7 +90,7 @@ __decorate([
|
|
|
90
90
|
MapToComponentField()
|
|
91
91
|
], RTEExtensionController.prototype, "selectionController", void 0);
|
|
92
92
|
__decorate([
|
|
93
|
-
MapToComponentMethod('
|
|
93
|
+
MapToComponentMethod('componentDidLoad')
|
|
94
94
|
], RTEExtensionController.prototype, "initialExtensionContext", null);
|
|
95
95
|
__decorate([
|
|
96
96
|
MapToComponentMethod('watchExtensions')
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export {};
|
|
@@ -0,0 +1,59 @@
|
|
|
1
|
+
import { RemoveWhitespaceBetweenTagsProcessor } from './processors/remove-whitespace-between-tags-processor';
|
|
2
|
+
import { RemoveWhitespaceAfterOpeningTagProcessor } from './processors/remove-whitespace-after-opening-tag-processor';
|
|
3
|
+
import { RemoveWhitespaceBeforeClosingTagProcessor } from './processors/remove-whitespace-before-closing-tag-processor';
|
|
4
|
+
/**
|
|
5
|
+
* Main HTML content cleaner that orchestrates multiple cleaning processors.
|
|
6
|
+
*
|
|
7
|
+
* This class implements a chain of responsibility pattern where each processor
|
|
8
|
+
* handles a specific aspect of HTML cleaning. The processors are applied in sequence
|
|
9
|
+
* and the entire chain is repeated until no more changes occur.
|
|
10
|
+
*
|
|
11
|
+
* Processors (in order):
|
|
12
|
+
* 1. RemoveWhitespaceBetweenTagsProcessor - Removes whitespace between non-matching tags
|
|
13
|
+
* 2. RemoveWhitespaceAfterOpeningTagProcessor - Removes \n and \t after opening tags
|
|
14
|
+
* 3. RemoveWhitespaceBeforeClosingTagProcessor - Removes \n and \t before closing tags
|
|
15
|
+
*/
|
|
16
|
+
export class HTMLContentCleaner {
|
|
17
|
+
constructor() {
|
|
18
|
+
this.processors = [
|
|
19
|
+
new RemoveWhitespaceBetweenTagsProcessor(),
|
|
20
|
+
new RemoveWhitespaceAfterOpeningTagProcessor(),
|
|
21
|
+
new RemoveWhitespaceBeforeClosingTagProcessor(),
|
|
22
|
+
];
|
|
23
|
+
}
|
|
24
|
+
/**
|
|
25
|
+
* Cleans HTML by applying all processors in the chain repeatedly until no changes occur.
|
|
26
|
+
*
|
|
27
|
+
* The cleaning process:
|
|
28
|
+
* 1. Applies each processor in sequence
|
|
29
|
+
* 2. Compares the result with the input
|
|
30
|
+
* 3. If changes were made, repeats the process
|
|
31
|
+
* 4. Returns the final cleaned HTML
|
|
32
|
+
*
|
|
33
|
+
* Examples of transformations:
|
|
34
|
+
* - `<p>\n\t <span>test</span>\n\t </p>` → `<p><span>test</span></p>`
|
|
35
|
+
* - `<p>\n\tHello</p>` → `<p>Hello</p>`
|
|
36
|
+
* - `<p>Hello\n\t</p>` → `<p>Hello</p>`
|
|
37
|
+
* - `<span> </span>` → `<span> </span>` (preserved - matching tags)
|
|
38
|
+
* - `<p>Hello World</p>` → `<p>Hello World</p>` (preserved - regular spaces)
|
|
39
|
+
*
|
|
40
|
+
* @param {string} html - The HTML string to clean.
|
|
41
|
+
* @returns {string} The cleaned HTML string.
|
|
42
|
+
*/
|
|
43
|
+
clean(html) {
|
|
44
|
+
if (!html || html.trim().length === 0) {
|
|
45
|
+
return html;
|
|
46
|
+
}
|
|
47
|
+
let result = html;
|
|
48
|
+
let previousResult;
|
|
49
|
+
// Keep processing until no more changes occur
|
|
50
|
+
do {
|
|
51
|
+
previousResult = result;
|
|
52
|
+
// Apply each processor in the chain
|
|
53
|
+
for (const processor of this.processors) {
|
|
54
|
+
result = processor.process(result);
|
|
55
|
+
}
|
|
56
|
+
} while (result !== previousResult);
|
|
57
|
+
return result;
|
|
58
|
+
}
|
|
59
|
+
}
|
package/dist/collection/components/vega-rich-text-editor/slimmers/controllers/html-cleaner/index.js
ADDED
|
@@ -0,0 +1,4 @@
|
|
|
1
|
+
export { HTMLContentCleaner } from './html-content-cleaner';
|
|
2
|
+
export { RemoveWhitespaceBetweenTagsProcessor } from './processors/remove-whitespace-between-tags-processor';
|
|
3
|
+
export { RemoveWhitespaceAfterOpeningTagProcessor } from './processors/remove-whitespace-after-opening-tag-processor';
|
|
4
|
+
export { RemoveWhitespaceBeforeClosingTagProcessor } from './processors/remove-whitespace-before-closing-tag-processor';
|
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Removes `\n` and `\t` characters after opening tags (before text content).
|
|
3
|
+
*
|
|
4
|
+
* Transforms patterns like `>[\n\t]+(text)` to `>(text)`.
|
|
5
|
+
*
|
|
6
|
+
* Examples:
|
|
7
|
+
* - `<p>\n\tHello` → `<p>Hello`
|
|
8
|
+
* - `<div>\n\n\tWorld` → `<div>World`
|
|
9
|
+
*/
|
|
10
|
+
export class RemoveWhitespaceAfterOpeningTagProcessor {
|
|
11
|
+
/**
|
|
12
|
+
* Process the HTML string to remove `\n` and `\t` after opening tags.
|
|
13
|
+
*
|
|
14
|
+
* @param {string} html - The HTML string to process.
|
|
15
|
+
* @returns {string} The processed HTML string.
|
|
16
|
+
*/
|
|
17
|
+
process(html) {
|
|
18
|
+
// Pattern: `>[\n\t]+(text)` → `>(text)`
|
|
19
|
+
return html.replace(/(>)[\n\t]+(?=.)/g, '$1');
|
|
20
|
+
}
|
|
21
|
+
}
|
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Removes `\n` and `\t` characters before closing tags (after text content).
|
|
3
|
+
*
|
|
4
|
+
* Transforms patterns like `(text)[\n\t]+<` to `(text)<`.
|
|
5
|
+
*
|
|
6
|
+
* Examples:
|
|
7
|
+
* - `World\n\t</p>` → `World</p>`
|
|
8
|
+
* - `Hello\n</div>` → `Hello</div>`
|
|
9
|
+
*/
|
|
10
|
+
export class RemoveWhitespaceBeforeClosingTagProcessor {
|
|
11
|
+
/**
|
|
12
|
+
* Process the HTML string to remove `\n` and `\t` before closing tags.
|
|
13
|
+
*
|
|
14
|
+
* @param {string} html - The HTML string to process.
|
|
15
|
+
* @returns {string} The processed HTML string.
|
|
16
|
+
*/
|
|
17
|
+
process(html) {
|
|
18
|
+
// Pattern: `(text)[\n\t]+<` → `(text)<`
|
|
19
|
+
return html.replace(/(.?)[\n\t]+(?=<)/g, '$1');
|
|
20
|
+
}
|
|
21
|
+
}
|
|
@@ -0,0 +1,77 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Removes whitespace between tags, except preserves ALL whitespace between matching opening/closing tag pairs.
|
|
3
|
+
*
|
|
4
|
+
* This processor scans for patterns of `<tag>(whitespace)<tag>` and:
|
|
5
|
+
* - If the first tag is an opening tag and the second tag is its matching closing tag (e.g., `<span> </span>`),
|
|
6
|
+
* preserves ALL the whitespace between them (including spaces, tabs, newlines)
|
|
7
|
+
* - Otherwise, removes all the whitespace between the tags
|
|
8
|
+
*
|
|
9
|
+
* Examples:
|
|
10
|
+
* - `</p>\n\t<div>` → `</p><div>` (different tags: closing p, opening div - whitespace removed)
|
|
11
|
+
* - `<div>\n\t<span>` → `<div><span>` (different tags: opening div, opening span - whitespace removed)
|
|
12
|
+
* - `<span> </span>` → `<span> </span>` (matching tags: opening span, closing span - space preserved)
|
|
13
|
+
* - `<span> </span>` → `<span> </span>` (matching tags - multiple spaces preserved)
|
|
14
|
+
* - `<span>\n\t</span>` → `<span>\n\t</span>` (matching tags - \n\t preserved)
|
|
15
|
+
* - `<code> </code>` → `<code> </code>` (matching tags - space preserved)
|
|
16
|
+
* - `</div> <p>` → `</div><p>` (different tags: closing div, opening p - whitespace removed)
|
|
17
|
+
*/
|
|
18
|
+
export class RemoveWhitespaceBetweenTagsProcessor {
|
|
19
|
+
/**
|
|
20
|
+
* Process the HTML string to remove whitespace between non-matching tags.
|
|
21
|
+
*
|
|
22
|
+
* @param {string} html - The HTML string to process.
|
|
23
|
+
* @returns {string} The processed HTML string.
|
|
24
|
+
*/
|
|
25
|
+
process(html) {
|
|
26
|
+
return html.replace(/(<[^>]+>)(\s+)(<[^>]+>)/g, (_match, tag1, whitespace, tag2) => {
|
|
27
|
+
const openingTagName = this.extractOpeningTagName(tag1);
|
|
28
|
+
const closingTagName = this.extractClosingTagName(tag2);
|
|
29
|
+
// Preserve all whitespace if tags match (e.g., <span> </span>)
|
|
30
|
+
if (openingTagName && closingTagName && openingTagName === closingTagName) {
|
|
31
|
+
return `${tag1}${whitespace}${tag2}`;
|
|
32
|
+
}
|
|
33
|
+
// Remove whitespace for non-matching tags
|
|
34
|
+
return `${tag1}${tag2}`;
|
|
35
|
+
});
|
|
36
|
+
}
|
|
37
|
+
/**
|
|
38
|
+
* Extracts the tag name from an opening HTML tag.
|
|
39
|
+
*
|
|
40
|
+
* Supports standard HTML tags (div, span, h1, etc.) and custom elements with hyphens (my-component).
|
|
41
|
+
*
|
|
42
|
+
* Examples:
|
|
43
|
+
* - `<span>` → `span`
|
|
44
|
+
* - `<div class="test">` → `div`
|
|
45
|
+
* - `<my-component id="123">` → `my-component`
|
|
46
|
+
* - `</span>` → `null` (not an opening tag)
|
|
47
|
+
*
|
|
48
|
+
* @param {string} tag - The tag string to extract from (e.g., '<span>', '<div class="test">').
|
|
49
|
+
* @returns {string | null} The tag name or null if not an opening tag.
|
|
50
|
+
* @private
|
|
51
|
+
*/
|
|
52
|
+
extractOpeningTagName(tag) {
|
|
53
|
+
// Pattern: <(tag name) where tag name starts with letter, followed by letters/numbers/hyphens
|
|
54
|
+
const match = tag.match(/<(\w[\w-]*)/);
|
|
55
|
+
return match ? match[1] : null;
|
|
56
|
+
}
|
|
57
|
+
/**
|
|
58
|
+
* Extracts the tag name from a closing HTML tag.
|
|
59
|
+
*
|
|
60
|
+
* Supports standard HTML tags (div, span, h1, etc.) and custom elements with hyphens (my-component).
|
|
61
|
+
*
|
|
62
|
+
* Examples:
|
|
63
|
+
* - `</span>` → `span`
|
|
64
|
+
* - `</div>` → `div`
|
|
65
|
+
* - `</my-component>` → `my-component`
|
|
66
|
+
* - `<span>` → `null` (not a closing tag)
|
|
67
|
+
*
|
|
68
|
+
* @param {string} tag - The tag string to extract from (e.g., '</span>', '</div>').
|
|
69
|
+
* @returns {string | null} The tag name or null if not a closing tag.
|
|
70
|
+
* @private
|
|
71
|
+
*/
|
|
72
|
+
extractClosingTagName(tag) {
|
|
73
|
+
// Pattern: </(tag name) where tag name starts with letter, followed by letters/numbers/hyphens
|
|
74
|
+
const match = tag.match(/<\/(\w[\w-]*)/);
|
|
75
|
+
return match ? match[1] : null;
|
|
76
|
+
}
|
|
77
|
+
}
|
package/dist/collection/components/vega-rich-text-editor/slimmers/controllers/value-controller.js
CHANGED
|
@@ -13,7 +13,7 @@ import { VegaInternalRichTextEditorFlushChanges } from '../../../../helpers/even
|
|
|
13
13
|
import { Observer } from '../../../../helpers/change-manager/observer/observer';
|
|
14
14
|
import { debounce } from '../../../../utils/timer';
|
|
15
15
|
import { VegaRTEContent } from '../../dto/content-state';
|
|
16
|
-
import { waitForComponentDidRender } from '../../../../helpers/common';
|
|
16
|
+
import { waitForComponentDidRender } from '../../../../helpers/common/wait-for-component-did-render';
|
|
17
17
|
import { RTEEditorState } from '../../dto/editor-state';
|
|
18
18
|
import { RTESelectionState } from '../../dto/selection-state';
|
|
19
19
|
import stateEntityRenderingRegistry from './state-entity-rendering-registry';
|
|
@@ -50,11 +50,12 @@ export class ValueController extends VegaSlimmer {
|
|
|
50
50
|
* Watches the value of the editor and updates the internal value.
|
|
51
51
|
*/
|
|
52
52
|
watchValueUpdate() {
|
|
53
|
+
const autoMatchFormat = this.sourceEditConfig.autoMatchFormat;
|
|
53
54
|
if (this.value && !(this.value instanceof VegaRTEContent)) {
|
|
54
|
-
this.value = VegaRTEContent.fromJSON(this.value);
|
|
55
|
+
this.value = VegaRTEContent.fromJSON(this.value, { autoMatchFormat });
|
|
55
56
|
}
|
|
56
57
|
else if (!this.value || this.value.children.length === 0) {
|
|
57
|
-
this.value = VegaRTEContent.createEmptyContent();
|
|
58
|
+
this.value = VegaRTEContent.createEmptyContent({ autoMatchFormat });
|
|
58
59
|
}
|
|
59
60
|
else {
|
|
60
61
|
this.changeEventEmitter.emit(this.value);
|
|
@@ -114,6 +115,9 @@ __decorate([
|
|
|
114
115
|
__decorate([
|
|
115
116
|
MapToComponentField()
|
|
116
117
|
], ValueController.prototype, "selectionController", void 0);
|
|
118
|
+
__decorate([
|
|
119
|
+
MapToComponentField()
|
|
120
|
+
], ValueController.prototype, "sourceEditConfig", void 0);
|
|
117
121
|
__decorate([
|
|
118
122
|
MapToComponentMethod('connectedCallback')
|
|
119
123
|
], ValueController.prototype, "connectedCallback", null);
|
|
@@ -14,7 +14,7 @@ import { LinkAnnotationAction } from '../../../dto/actions/link-annotation-actio
|
|
|
14
14
|
import { NodeAnnotationTypeEnum } from '../../../dto/annotations/node-annotation.abstract';
|
|
15
15
|
import { SelectionChangeAction } from '../../../dto/actions/selection-change-action';
|
|
16
16
|
import { generateUUID } from '../../../../../utils/misc';
|
|
17
|
-
import { waitForComponentDidRender } from '../../../../../helpers/common';
|
|
17
|
+
import { waitForComponentDidRender } from '../../../../../helpers/common/wait-for-component-did-render';
|
|
18
18
|
import { VisualModeToolbarButtonSlimmer } from './visual-mode-toolbar-button-slimmer.abstract';
|
|
19
19
|
export class LinkToolbarButtonSlimmer extends VisualModeToolbarButtonSlimmer {
|
|
20
20
|
constructor() {
|
|
@@ -37,6 +37,9 @@ export class SourceEditToolbarButtonSlimmer extends ToolbarButtonSlimmer {
|
|
|
37
37
|
}
|
|
38
38
|
async saveSourceCode() {
|
|
39
39
|
const sourceViewValue = this.vegaRichTextEditorRenderer.getSourceCode();
|
|
40
|
+
if (!sourceViewValue && this.value.isEmpty()) {
|
|
41
|
+
return;
|
|
42
|
+
}
|
|
40
43
|
if (typeof sourceViewValue === 'string') {
|
|
41
44
|
await this.valueController.flushChanges(VegaRTEContent.fromHtml(sourceViewValue, {
|
|
42
45
|
autoMatchFormat: this.sourceEditConfig.autoMatchFormat,
|
|
@@ -62,3 +65,6 @@ __decorate([
|
|
|
62
65
|
__decorate([
|
|
63
66
|
MapToComponentField()
|
|
64
67
|
], SourceEditToolbarButtonSlimmer.prototype, "sourceEditConfig", void 0);
|
|
68
|
+
__decorate([
|
|
69
|
+
MapToComponentField()
|
|
70
|
+
], SourceEditToolbarButtonSlimmer.prototype, "value", void 0);
|
|
@@ -39,6 +39,45 @@ describe('HTMLBlock', () => {
|
|
|
39
39
|
],
|
|
40
40
|
}, { autoMatchFormat: false }).toHtml()).toMatchSnapshot();
|
|
41
41
|
});
|
|
42
|
+
it('toHtml should handle self-closing hr tag correctly', () => {
|
|
43
|
+
const hrBlock = RTEHtmlBlock.from({
|
|
44
|
+
id: 'hr-1',
|
|
45
|
+
type: 'html-block',
|
|
46
|
+
htmlTag: 'hr',
|
|
47
|
+
children: [],
|
|
48
|
+
}, { autoMatchFormat: false });
|
|
49
|
+
expect(hrBlock.toHtml()).toBe('<hr>');
|
|
50
|
+
});
|
|
51
|
+
it('toHtml should handle self-closing hr tag with attributes correctly', () => {
|
|
52
|
+
const hrBlock = RTEHtmlBlock.from({
|
|
53
|
+
id: 'hr-1',
|
|
54
|
+
type: 'html-block',
|
|
55
|
+
htmlTag: 'hr',
|
|
56
|
+
annotations: { customClass: ['divider'] },
|
|
57
|
+
children: [],
|
|
58
|
+
}, { autoMatchFormat: false });
|
|
59
|
+
expect(hrBlock.toHtml()).toBe('<hr class="divider">');
|
|
60
|
+
});
|
|
61
|
+
it('toHtml should handle self-closing input tag correctly', () => {
|
|
62
|
+
const inputBlock = RTEHtmlBlock.from({
|
|
63
|
+
id: 'input-1',
|
|
64
|
+
type: 'html-block',
|
|
65
|
+
htmlTag: 'input',
|
|
66
|
+
annotations: { customAttribute: { type: 'text', placeholder: 'Enter text' } },
|
|
67
|
+
children: [],
|
|
68
|
+
}, { autoMatchFormat: false });
|
|
69
|
+
expect(inputBlock.toHtml()).toBe('<input type="text" placeholder="Enter text">');
|
|
70
|
+
});
|
|
71
|
+
it('toHtml should handle self-closing col tag correctly', () => {
|
|
72
|
+
const colBlock = RTEHtmlBlock.from({
|
|
73
|
+
id: 'col-1',
|
|
74
|
+
type: 'html-block',
|
|
75
|
+
htmlTag: 'col',
|
|
76
|
+
annotations: { customAttribute: { span: '2' } },
|
|
77
|
+
children: [],
|
|
78
|
+
}, { autoMatchFormat: false });
|
|
79
|
+
expect(colBlock.toHtml()).toBe('<col span="2">');
|
|
80
|
+
});
|
|
42
81
|
});
|
|
43
82
|
describe('public methods', () => {
|
|
44
83
|
let htmlBlock;
|