@globalpayments/vega 2.70.0 → 2.75.1
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-837be7a6.js → app-globals-35614ce8.js} +8 -7
- package/dist/cjs/{child-nodes-event-prevent-slimmer-f8840f1b.js → child-nodes-event-prevent-slimmer-aca87dac.js} +1 -1
- package/dist/cjs/click-outside-only-to-dismiss-strategy-407f6d1e.js +32 -0
- package/dist/cjs/{code-block-bb4cbafa.js → code-block-c1d2e6a8.js} +15 -67
- package/dist/cjs/{component-value-history-controller-slimmer.abstract-cf7b4bda.js → component-value-history-controller-slimmer.abstract-787c67dc.js} +5 -5
- package/dist/cjs/{date-required-rule-4e1f84fd.js → date-required-rule-30ee62d0.js} +3 -3
- package/dist/cjs/{design-token-00fe8d2f.js → design-token-bb39e07e.js} +6 -7
- package/dist/cjs/{dom-node-subject-observer-factory-f040608b.js → dom-node-subject-observer-factory-b5e71bf6.js} +9 -1
- package/dist/cjs/{dto-renderer-manager-c917dade.js → dto-renderer-manager-03e1a038.js} +219 -28
- package/dist/cjs/{element-appender-slimmer-f8e89f37.js → element-appender-slimmer-daa8b9f5.js} +205 -43
- package/dist/cjs/{event-emit-slimmer-7afe8d78.js → event-emit-slimmer-2dacabbd.js} +2 -2
- package/dist/cjs/{form-field-controller-slimmer-f865d397.js → form-field-controller-slimmer-aef2fb1e.js} +3 -3
- package/dist/cjs/{function-extension-28a4d781.js → function-extension-cfbbc57e.js} +40 -19
- package/dist/cjs/{image-annotation-action-8843adbf.js → image-annotation-action-3fa501b7.js} +3 -3
- package/dist/cjs/index-58ea899e.js +4 -4
- package/dist/cjs/{index-4b896e76.js → index-95fca64f.js} +2 -2
- package/dist/cjs/index.cjs.js +17 -19
- package/dist/cjs/{inject-keyboard-manager-13c66257.js → inject-keyboard-manager-d21b4387.js} +1 -1
- package/dist/cjs/{internal-vega-event-manager-45d451de.js → internal-vega-event-manager-6befeb34.js} +16 -4
- package/dist/cjs/{keyboard-manager-af0d08a6.js → keyboard-manager-3dea6b28.js} +1 -1
- package/dist/cjs/{keyboard-manager-slimmer-62f072cd.js → keyboard-manager-slimmer-0d45f944.js} +1 -1
- package/dist/cjs/{language-extension-99c6fb40.js → language-extension-8c4a56ff.js} +2 -2
- package/dist/cjs/loader.cjs.js +13 -13
- package/dist/cjs/month-view-generator-49cc5fc2.js +102 -0
- package/dist/cjs/{public-rules-759c745b.js → public-rules-dc2a8d62.js} +15 -15
- package/dist/cjs/{range-0b597850.js → range-79b668e7.js} +1 -1
- package/dist/cjs/{responsive-format-facade-1d9c13a9.js → responsive-format-facade-d5dba942.js} +4 -4
- package/dist/cjs/{rich-text-editor-required-rule-92d0640e.js → rich-text-editor-required-rule-ba312af9.js} +1 -1
- package/dist/cjs/sanitize-fb222510.js +131 -0
- package/dist/cjs/{string-format-strategy.abstract-07a95352.js → string-format-strategy.abstract-63514c60.js} +1 -1
- package/dist/cjs/{string-input-formatter-slimmer-8236b5e1.js → string-input-formatter-slimmer-f3e0bbc7.js} +4 -4
- package/dist/cjs/{string-mask-strategy-6bdad95e.js → string-mask-strategy-d23ac21a.js} +2 -2
- package/dist/cjs/{style-formatter-1daa8371.js → style-formatter-49693da7.js} +2 -2
- package/dist/cjs/{sub-state-notify-slimmer-78682046.js → sub-state-notify-slimmer-468e19aa.js} +2 -2
- package/dist/cjs/{sub-state-observer-slimmer-73aecfff.js → sub-state-observer-slimmer-5d0b8ac3.js} +2 -2
- package/dist/cjs/{time-required-rule-ccf178e7.js → time-required-rule-c96ecdc9.js} +3 -3
- package/dist/cjs/{type-guard-f12b5bae.js → type-guard-a0f026d8.js} +1236 -1
- package/dist/cjs/{valid-credit-card-number-rule-ce5c9147.js → valid-credit-card-number-rule-c854bed9.js} +1 -1
- package/dist/cjs/vega-accordion.cjs.entry.js +11 -12
- package/dist/cjs/vega-app-header-button.cjs.entry.js +35 -18
- package/dist/cjs/vega-banner.cjs.entry.js +3 -3
- package/dist/cjs/vega-box.cjs.entry.js +15 -16
- package/dist/cjs/vega-breadcrumb.cjs.entry.js +4 -4
- package/dist/cjs/vega-button-circle.cjs.entry.js +15 -16
- package/dist/cjs/vega-button-group_2.cjs.entry.js +60 -10
- package/dist/cjs/vega-button-link.cjs.entry.js +5 -5
- package/dist/cjs/vega-button.cjs.entry.js +15 -15
- package/dist/cjs/vega-calendar_4.cjs.entry.js +87 -909
- package/dist/cjs/vega-card.cjs.entry.js +14 -15
- package/dist/cjs/vega-carousel.cjs.entry.js +14 -14
- package/dist/cjs/vega-checkbox_2.cjs.entry.js +7 -7
- package/dist/cjs/vega-chip.cjs.entry.js +16 -17
- package/dist/cjs/vega-code-block.cjs.entry.js +13 -13
- package/dist/cjs/vega-color-picker.cjs.entry.js +6 -6
- package/dist/cjs/vega-combo-box.cjs.entry.js +15 -14
- package/dist/cjs/vega-date-picker_2.cjs.entry.js +1795 -1559
- package/dist/cjs/vega-dialog_2.cjs.entry.js +17 -18
- package/dist/cjs/vega-divider.cjs.entry.js +10 -11
- package/dist/cjs/vega-dropdown_5.cjs.entry.js +53 -36
- package/dist/cjs/vega-env-manager-23b8b23c.js +2 -2
- package/dist/cjs/vega-field-label.cjs.entry.js +3 -3
- package/dist/cjs/vega-file-uploader.cjs.entry.js +6 -6
- package/dist/cjs/vega-flag-icon.cjs.entry.js +10 -11
- package/dist/cjs/vega-flex.cjs.entry.js +15 -16
- package/dist/cjs/vega-font.cjs.entry.js +14 -15
- package/dist/cjs/vega-form.cjs.entry.js +9 -9
- package/dist/cjs/vega-grid.cjs.entry.js +14 -15
- package/dist/cjs/vega-icon.cjs.entry.js +14 -15
- package/dist/cjs/vega-image-uploader.cjs.entry.js +15 -15
- package/dist/cjs/vega-input-credit-card.cjs.entry.js +14 -14
- package/dist/cjs/vega-input-numeric.cjs.entry.js +13 -13
- package/dist/cjs/vega-input-passcode.cjs.entry.js +16 -13
- package/dist/cjs/vega-input-phone-number.cjs.entry.js +14 -14
- package/dist/cjs/vega-input-range.cjs.entry.js +7 -7
- package/dist/cjs/vega-input-select.cjs.entry.js +189 -56
- package/dist/cjs/vega-input.cjs.entry.js +877 -283
- package/dist/cjs/{vega-internal-event-id-6d4a2c53.js → vega-internal-event-id-f2465f1b.js} +12 -4
- package/dist/cjs/vega-item-toggle.cjs.entry.js +3 -3
- package/dist/cjs/vega-left-nav_5.cjs.entry.js +14 -15
- package/dist/cjs/vega-loader-wrapper_2.cjs.entry.js +9 -9
- package/dist/cjs/vega-page-notification_2.cjs.entry.js +1 -1
- package/dist/cjs/vega-pagination-page-selector-mobile.cjs.entry.js +4 -4
- package/dist/cjs/vega-pagination-page-size-selector-mobile.cjs.entry.js +2 -2
- package/dist/cjs/vega-pagination.cjs.entry.js +13 -13
- package/dist/cjs/vega-popover_2.cjs.entry.js +20 -20
- package/dist/cjs/vega-progress-tracker_2.cjs.entry.js +903 -0
- package/dist/cjs/vega-radio_2.cjs.entry.js +10 -10
- package/dist/cjs/vega-rich-text-content.cjs.entry.js +9 -8
- package/dist/cjs/vega-rich-text-editor_4.cjs.entry.js +89 -29
- package/dist/cjs/vega-segment-control.cjs.entry.js +3 -3
- package/dist/cjs/vega-selection-chip_2.cjs.entry.js +16 -16
- package/dist/cjs/vega-selection-tile_2.cjs.entry.js +8 -8
- package/dist/cjs/vega-sidenav_3.cjs.entry.js +12 -12
- package/dist/cjs/vega-signature-capture.cjs.entry.js +13 -14
- package/dist/cjs/vega-stepper.cjs.entry.js +7 -7
- package/dist/cjs/vega-tab-group_2.cjs.entry.js +4 -4
- package/dist/cjs/vega-table_11.cjs.entry.js +12 -12
- package/dist/cjs/vega-textarea.cjs.entry.js +7 -7
- package/dist/cjs/vega-time-picker_2.cjs.entry.js +41 -41
- package/dist/cjs/vega-toggle-switch.cjs.entry.js +6 -6
- package/dist/cjs/vega-tooltip_2.cjs.entry.js +14 -14
- package/dist/cjs/vega.cjs.js +13 -13
- package/dist/collection/collection-manifest.json +7 -5
- package/dist/collection/components/vega-app-header-button/slimmers/renderers/vega-app-header-button-dropdown-renderer.js +13 -1
- package/dist/collection/components/vega-app-header-button/vega-app-header-button.js +46 -3
- package/dist/collection/components/vega-button/vega-button.css +4 -0
- package/dist/collection/components/vega-button-group/vega-button-group-item/slimmers/controllers/vega-button-group-item-sub-state-controller.js +7 -0
- package/dist/collection/components/vega-button-group/vega-button-group-item/slimmers/renderers/vega-button-group-item-renderer.js +25 -2
- package/dist/collection/components/vega-button-group/vega-button-group-item/vega-button-group-item.js +31 -2
- package/dist/collection/components/vega-button-group/vega-button-group.js +37 -0
- package/dist/collection/components/vega-button-link/vega-button-link.css +4 -0
- package/dist/collection/components/vega-calendar/vega-calendar.js +1 -1
- 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 +150 -0
- package/dist/collection/components/vega-date-picker/slimmers/controllers/vega-date-picker-format-controller.js +3 -1
- package/dist/collection/components/vega-date-picker/slimmers/controllers/vega-date-picker-keyboard-controller.js +1 -1
- package/dist/collection/components/vega-date-picker/slimmers/controllers/vega-date-picker-value-controller.js +10 -26
- package/dist/collection/components/vega-date-picker/slimmers/renderers/vega-date-picker-calendar-renderer.js +107 -445
- package/dist/collection/components/vega-date-picker/slimmers/renderers/vega-date-picker-input-renderer-base.abstract.js +5 -1
- package/dist/collection/components/vega-date-picker/slimmers/renderers/vega-date-picker-range-input-renderer.js +24 -17
- package/dist/collection/components/vega-date-picker/slimmers/renderers/vega-date-picker-renderer.js +15 -20
- package/dist/collection/components/vega-date-picker/slimmers/renderers/vega-date-picker-single-input-renderer.js +6 -17
- package/dist/collection/components/vega-date-picker/vega-date-picker-calendar/constants.js +14 -0
- package/dist/collection/components/vega-date-picker/vega-date-picker-calendar/dto/calendar-selection.js +126 -0
- package/dist/collection/components/vega-date-picker/vega-date-picker-calendar/slimmers/controllers/vega-date-picker-calendar-allow-repick-controller.js +70 -0
- package/dist/collection/components/vega-date-picker/vega-date-picker-calendar/slimmers/controllers/vega-date-picker-calendar-current-period-controller.js +204 -0
- package/dist/collection/components/vega-date-picker/vega-date-picker-calendar/slimmers/controllers/vega-date-picker-calendar-min-max-date-controller.js +56 -0
- package/dist/collection/components/vega-date-picker/vega-date-picker-calendar/slimmers/controllers/vega-date-picker-calendar-selection-controller.js +191 -0
- package/dist/collection/components/vega-date-picker/vega-date-picker-calendar/slimmers/controllers/vega-date-picker-calendar-state-base.abstract.js +54 -0
- package/dist/collection/components/vega-date-picker/vega-date-picker-calendar/slimmers/controllers/vega-date-picker-calendar-today-controller.js +37 -0
- 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 +80 -0
- package/dist/collection/components/vega-date-picker/vega-date-picker-calendar/slimmers/renderers/vega-date-picker-calendar-year-month-switcher-renderer.js +164 -0
- package/dist/collection/components/vega-date-picker/vega-date-picker-calendar/slimmers/renderers/vega-date-picker-month-item-renderer.js +124 -0
- package/dist/collection/components/vega-date-picker/vega-date-picker-calendar/vega-date-picker-calendar.css +996 -278
- package/dist/collection/components/vega-date-picker/vega-date-picker-calendar/vega-date-picker-calendar.js +672 -3
- package/dist/collection/components/vega-date-picker/vega-date-picker.css +0 -11
- package/dist/collection/components/vega-date-picker/vega-date-picker.js +23 -40
- package/dist/collection/components/vega-dialog/vega-dialog.js +1 -1
- package/dist/collection/components/vega-dropdown/slimmers/controllers/vega-dropdown-appender-controller.js +3 -15
- 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 +6 -3
- package/dist/collection/components/vega-dropdown/vega-dropdown-item/slimmers/renderers/vega-dropdown-item-renderer.js +3 -2
- 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-input/slimmers/controllers/vega-input-mask-config-controller.js +77 -7
- package/dist/collection/components/vega-input/slimmers/controllers/vega-input-render-mode-controller.js +51 -0
- package/dist/collection/components/vega-input/slimmers/controllers/vega-input-value-controller.js +79 -0
- package/dist/collection/components/vega-input/slimmers/renderers/vega-input-input-container-renderer.js +100 -0
- package/dist/collection/components/vega-input/slimmers/renderers/vega-input-input-renderer.js +184 -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 +83 -0
- package/dist/collection/components/vega-input/vega-input.css +8 -0
- package/dist/collection/components/vega-input/vega-input.js +247 -160
- package/dist/collection/components/vega-input-passcode/slimmers/renderers/vega-input-passcode-renderer.js +4 -1
- package/dist/collection/components/vega-input-phone-number/slimmers/renderers/phone-number-input-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 +28 -8
- package/dist/collection/components/vega-modal/slimmers/controllers/vega-modal-layout-controller.js +3 -2
- package/dist/collection/components/vega-modal/vega-modal.js +4 -4
- package/dist/collection/components/vega-popover/vega-popover.js +14 -4
- package/dist/collection/components/vega-progress-tracker/slimmers/controllers/dto/internal-progress-tracker-step.js +75 -0
- package/dist/collection/components/vega-progress-tracker/slimmers/controllers/vega-progress-tracker-current-direction-controller.js +88 -0
- package/dist/collection/components/vega-progress-tracker/slimmers/controllers/vega-progress-tracker-current-step-controller.js +153 -0
- package/dist/collection/components/vega-progress-tracker/slimmers/controllers/vega-progress-tracker-current-steps-controller.js +125 -0
- package/dist/collection/components/vega-progress-tracker/slimmers/controllers/vega-progress-tracker-render-mode-controller.js +40 -0
- package/dist/collection/components/vega-progress-tracker/slimmers/renderers/vega-progress-tracker-renderer.js +94 -0
- package/dist/collection/components/vega-progress-tracker/vega-progress-tracker-step/slimmers/controllers/vega-progress-tracker-step-state-controller.js +43 -0
- package/dist/collection/components/vega-progress-tracker/vega-progress-tracker-step/vega-progress-tracker-step.css +79 -0
- package/dist/collection/components/vega-progress-tracker/vega-progress-tracker-step/vega-progress-tracker-step.js +84 -0
- package/dist/collection/components/vega-progress-tracker/vega-progress-tracker.css +69 -153
- package/dist/collection/components/vega-progress-tracker/vega-progress-tracker.js +88 -85
- 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/annotations/text-style-annotation.js +11 -63
- 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/extensions/tokens/insert-token-node-strategy.js +5 -1
- package/dist/collection/components/vega-rich-text-editor/extensions/tokens/span-to-token-node-strategy.js +12 -1
- package/dist/collection/components/vega-rich-text-editor/extensions/tokens/token-node-renderer.js +16 -10
- package/dist/collection/components/vega-rich-text-editor/extensions/tokens/token-node.js +1 -1
- 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 +6 -2
- 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/annotation-style.test.js +2 -1
- package/dist/collection/components/vega-rich-text-editor/test/dto/annotations.test.js +9 -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/blocks/text-block.test.js +1 -1
- package/dist/collection/components/vega-rich-text-editor/test/dto/content-state.test.js +186 -16
- 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-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/regex.js +1 -0
- package/dist/collection/constants/ui.js +5 -0
- package/dist/collection/helpers/calendar/calendar-date.js +273 -1
- package/dist/collection/helpers/calendar/calendar-period/calendar-period.abstract.js +9 -0
- package/dist/collection/helpers/calendar/calendar-period/month-period.js +16 -4
- package/dist/collection/helpers/calendar/test/calendar-date.test.js +73 -0
- package/dist/collection/helpers/calendar/test/calendar-period/day-period.test.js +9 -0
- package/dist/collection/helpers/calendar/test/calendar-period/month-period.test.js +41 -0
- package/dist/collection/helpers/calendar/test/calendar-period/week-period.test.js +11 -0
- package/dist/collection/helpers/code-format/code-formatter.js +57 -7
- package/dist/collection/helpers/code-format/test/code-formatter.test.js +48 -0
- package/dist/collection/helpers/event-manager/event-id/component-event-id-map.js +16 -4
- package/dist/collection/helpers/event-manager/event-id/vega-event-id.js +5 -1
- package/dist/collection/helpers/event-manager/event-id/vega-internal-event-id.js +8 -2
- 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/slimmers/element-appender/element-appender-slimmer.js +62 -33
- 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/position-calculation/position-calculation-controller.js +7 -0
- package/dist/collection/helpers/ui/element-appender.js +35 -5
- package/dist/collection/types/test/type-guard.test.js +8 -1
- package/dist/collection/types/type-guard.js +21 -0
- package/dist/collection/utils/date.js +14 -3
- package/dist/collection/utils/e2e-utils.js +8 -2
- package/dist/collection/utils/sanitize.js +126 -0
- package/dist/collection/utils/test/date.test.js +2 -0
- package/dist/collection/utils/test/sanitize.test.js +65 -0
- package/dist/esm/{app-globals-fd4b7d97.js → app-globals-2ac60ff5.js} +8 -7
- package/dist/esm/{child-nodes-event-prevent-slimmer-76331524.js → child-nodes-event-prevent-slimmer-e662bee2.js} +1 -1
- package/dist/esm/click-outside-only-to-dismiss-strategy-3d286c1b.js +30 -0
- package/dist/esm/{code-block-ecb4491b.js → code-block-8ee34ab6.js} +16 -68
- package/dist/esm/{component-value-history-controller-slimmer.abstract-5d618b88.js → component-value-history-controller-slimmer.abstract-a61bf821.js} +5 -5
- package/dist/esm/{date-required-rule-8944f3bf.js → date-required-rule-47ecc28f.js} +1 -1
- package/dist/esm/{design-token-2d77e8f5.js → design-token-007efbaa.js} +4 -5
- package/dist/esm/{dom-node-subject-observer-factory-dca87b70.js → dom-node-subject-observer-factory-064ee2b2.js} +6 -2
- package/dist/esm/{dto-renderer-manager-d862ae78.js → dto-renderer-manager-ee1a5864.js} +219 -28
- package/dist/esm/{element-appender-slimmer-6791c332.js → element-appender-slimmer-35e26b5a.js} +207 -45
- package/dist/esm/{event-emit-slimmer-4e28e9f8.js → event-emit-slimmer-09827cec.js} +2 -2
- package/dist/esm/{form-field-controller-slimmer-bf071b75.js → form-field-controller-slimmer-5d9dc384.js} +4 -4
- package/dist/esm/{function-extension-8d39db56.js → function-extension-e8c0e43e.js} +41 -20
- package/dist/esm/{image-annotation-action-d0af138c.js → image-annotation-action-285d432e.js} +3 -3
- package/dist/esm/index-090d31ca.js +4 -4
- package/dist/esm/{index-c943d263.js → index-51a7da7f.js} +2 -2
- package/dist/esm/index.js +19 -21
- package/dist/esm/{inject-keyboard-manager-ffd351b9.js → inject-keyboard-manager-83d76ff5.js} +1 -1
- package/dist/esm/{internal-vega-event-manager-516aa721.js → internal-vega-event-manager-efb6786e.js} +16 -4
- package/dist/esm/{keyboard-manager-5d8f3582.js → keyboard-manager-c92808d8.js} +1 -1
- package/dist/esm/{keyboard-manager-slimmer-f39214e4.js → keyboard-manager-slimmer-79c78ce8.js} +1 -1
- package/dist/esm/{language-extension-8f51f5ff.js → language-extension-29bf8acd.js} +2 -2
- package/dist/esm/loader.js +15 -15
- package/dist/esm/month-view-generator-16192182.js +98 -0
- package/dist/esm/{page-resize-observer-slimmer-0bf7fbf3.js → page-resize-observer-slimmer-8744cb44.js} +1 -1
- package/dist/esm/{public-rules-d10e76f4.js → public-rules-724873f5.js} +15 -15
- package/dist/esm/{range-f7b9e2fb.js → range-5257c062.js} +1 -1
- package/dist/esm/{responsive-format-facade-267935ae.js → responsive-format-facade-28ee2dbd.js} +6 -6
- package/dist/esm/{rich-text-editor-required-rule-774b822b.js → rich-text-editor-required-rule-873e2e67.js} +1 -1
- package/dist/esm/sanitize-fd0cb40d.js +129 -0
- package/dist/esm/{string-format-strategy.abstract-452f4398.js → string-format-strategy.abstract-fc60db79.js} +1 -1
- package/dist/esm/{string-input-formatter-slimmer-3acd240c.js → string-input-formatter-slimmer-ee32b1fd.js} +4 -4
- package/dist/esm/{string-mask-strategy-6232a1c1.js → string-mask-strategy-0b0accaa.js} +2 -2
- package/dist/esm/{style-formatter-3f88c491.js → style-formatter-314b37f3.js} +2 -2
- package/dist/esm/{sub-state-notify-slimmer-56380f02.js → sub-state-notify-slimmer-4453047a.js} +2 -2
- package/dist/esm/{sub-state-observer-slimmer-3504e2f2.js → sub-state-observer-slimmer-202ec7dc.js} +2 -2
- package/dist/esm/{time-required-rule-a01163b5.js → time-required-rule-5fa43804.js} +1 -1
- package/dist/esm/{type-guard-12f7654b.js → type-guard-c65a227d.js} +1215 -2
- package/dist/esm/{ui-8424715a.js → ui-28fd4193.js} +1 -1
- package/dist/esm/{valid-credit-card-number-rule-81443274.js → valid-credit-card-number-rule-666c415d.js} +1 -1
- package/dist/esm/vega-accordion.entry.js +13 -14
- package/dist/esm/vega-app-header-button.entry.js +37 -20
- package/dist/esm/vega-banner.entry.js +3 -3
- package/dist/esm/vega-box.entry.js +17 -18
- package/dist/esm/vega-breadcrumb.entry.js +4 -4
- package/dist/esm/vega-button-circle.entry.js +17 -18
- package/dist/esm/vega-button-group_2.entry.js +60 -10
- package/dist/esm/vega-button-link.entry.js +5 -5
- package/dist/esm/vega-button.entry.js +17 -17
- package/dist/esm/vega-calendar_4.entry.js +46 -868
- package/dist/esm/vega-card.entry.js +16 -17
- package/dist/esm/vega-carousel.entry.js +16 -16
- package/dist/esm/vega-checkbox_2.entry.js +9 -9
- package/dist/esm/vega-chip.entry.js +18 -19
- package/dist/esm/vega-code-block.entry.js +14 -14
- package/dist/esm/vega-color-picker.entry.js +8 -8
- package/dist/esm/vega-combo-box.entry.js +17 -16
- package/dist/esm/vega-date-picker_2.entry.js +1786 -1550
- package/dist/esm/vega-dialog_2.entry.js +19 -20
- package/dist/esm/vega-divider.entry.js +12 -13
- package/dist/esm/vega-dropdown_5.entry.js +55 -38
- package/dist/esm/vega-env-manager-8f8dc473.js +2 -2
- package/dist/esm/vega-field-label.entry.js +3 -3
- package/dist/esm/vega-file-uploader.entry.js +8 -8
- package/dist/esm/vega-flag-icon.entry.js +12 -13
- package/dist/esm/vega-flex.entry.js +17 -18
- package/dist/esm/vega-font.entry.js +16 -17
- package/dist/esm/vega-form.entry.js +11 -11
- package/dist/esm/vega-grid.entry.js +16 -17
- package/dist/esm/vega-icon.entry.js +16 -17
- package/dist/esm/vega-image-uploader.entry.js +17 -17
- package/dist/esm/vega-input-credit-card.entry.js +16 -16
- package/dist/esm/vega-input-numeric.entry.js +15 -15
- package/dist/esm/vega-input-passcode.entry.js +18 -15
- package/dist/esm/vega-input-phone-number.entry.js +16 -16
- package/dist/esm/vega-input-range.entry.js +9 -9
- package/dist/esm/vega-input-select.entry.js +191 -58
- package/dist/esm/vega-input.entry.js +880 -286
- package/dist/esm/{vega-internal-event-id-5c3e5f7f.js → vega-internal-event-id-4a06d705.js} +7 -3
- package/dist/esm/vega-item-toggle.entry.js +4 -4
- package/dist/esm/vega-left-nav_5.entry.js +16 -17
- package/dist/esm/vega-loader-wrapper_2.entry.js +11 -11
- package/dist/esm/vega-page-notification_2.entry.js +1 -1
- package/dist/esm/vega-pagination-page-selector-mobile.entry.js +4 -4
- package/dist/esm/vega-pagination-page-size-selector-mobile.entry.js +2 -2
- package/dist/esm/vega-pagination.entry.js +15 -15
- package/dist/esm/vega-popover_2.entry.js +22 -22
- package/dist/esm/vega-progress-tracker_2.entry.js +898 -0
- package/dist/esm/vega-radio_2.entry.js +12 -12
- package/dist/esm/vega-rich-text-content.entry.js +10 -9
- package/dist/esm/vega-rich-text-editor_4.entry.js +91 -31
- package/dist/esm/vega-segment-control.entry.js +5 -5
- package/dist/esm/vega-selection-chip_2.entry.js +18 -18
- package/dist/esm/vega-selection-tile_2.entry.js +10 -10
- package/dist/esm/vega-sidenav_3.entry.js +14 -14
- package/dist/esm/vega-signature-capture.entry.js +15 -16
- package/dist/esm/vega-stepper.entry.js +9 -9
- package/dist/esm/vega-tab-group_2.entry.js +6 -6
- package/dist/esm/vega-table_11.entry.js +14 -14
- package/dist/esm/vega-text.entry.js +2 -2
- package/dist/esm/vega-textarea.entry.js +9 -9
- package/dist/esm/vega-time-picker_2.entry.js +22 -22
- package/dist/esm/vega-toggle-switch.entry.js +8 -8
- package/dist/esm/vega-tooltip_2.entry.js +16 -16
- package/dist/esm/vega.js +15 -15
- package/dist/sri/vega-sri-manifest.json +337 -337
- package/dist/types/components/vega-app-header-button/slimmers/renderers/vega-app-header-button-dropdown-renderer.d.ts +7 -0
- package/dist/types/components/vega-app-header-button/types.d.ts +2 -0
- package/dist/types/components/vega-app-header-button/vega-app-header-button.d.ts +14 -0
- package/dist/types/components/vega-button-group/types.d.ts +2 -1
- package/dist/types/components/vega-button-group/vega-button-group-item/slimmers/controllers/vega-button-group-item-sub-state-controller.d.ts +1 -0
- package/dist/types/components/vega-button-group/vega-button-group-item/slimmers/renderers/vega-button-group-item-renderer.d.ts +11 -0
- package/dist/types/components/vega-button-group/vega-button-group-item/vega-button-group-item.d.ts +7 -0
- package/dist/types/components/vega-button-group/vega-button-group.d.ts +8 -0
- package/dist/types/components/vega-date-picker/assets/icons.d.ts +1 -1
- package/dist/types/components/vega-date-picker/slimmers/controllers/vega-date-picker-calendar-open-state-controller.d.ts +60 -0
- package/dist/types/components/vega-date-picker/slimmers/controllers/vega-date-picker-value-controller.d.ts +3 -4
- package/dist/types/components/vega-date-picker/slimmers/renderers/vega-date-picker-calendar-renderer.d.ts +29 -124
- package/dist/types/components/vega-date-picker/slimmers/renderers/vega-date-picker-input-renderer-base.abstract.d.ts +1 -0
- package/dist/types/components/vega-date-picker/slimmers/renderers/vega-date-picker-range-input-renderer.d.ts +5 -5
- package/dist/types/components/vega-date-picker/slimmers/renderers/vega-date-picker-renderer.d.ts +2 -3
- package/dist/types/components/vega-date-picker/slimmers/renderers/vega-date-picker-single-input-renderer.d.ts +1 -4
- package/dist/types/components/vega-date-picker/types.d.ts +9 -0
- package/dist/types/components/vega-date-picker/vega-date-picker-calendar/constants.d.ts +1 -0
- package/dist/types/components/vega-date-picker/vega-date-picker-calendar/dto/calendar-selection.d.ts +62 -0
- package/dist/types/components/vega-date-picker/vega-date-picker-calendar/slimmers/controllers/vega-date-picker-calendar-allow-repick-controller.d.ts +31 -0
- package/dist/types/components/vega-date-picker/vega-date-picker-calendar/slimmers/controllers/vega-date-picker-calendar-current-period-controller.d.ts +78 -0
- package/dist/types/components/vega-date-picker/vega-date-picker-calendar/slimmers/controllers/vega-date-picker-calendar-min-max-date-controller.d.ts +20 -0
- package/dist/types/components/vega-date-picker/vega-date-picker-calendar/slimmers/controllers/vega-date-picker-calendar-selection-controller.d.ts +75 -0
- package/dist/types/components/vega-date-picker/vega-date-picker-calendar/slimmers/controllers/vega-date-picker-calendar-state-base.abstract.d.ts +29 -0
- package/dist/types/components/vega-date-picker/vega-date-picker-calendar/slimmers/controllers/vega-date-picker-calendar-today-controller.d.ts +15 -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 +19 -0
- package/dist/types/components/vega-date-picker/vega-date-picker-calendar/slimmers/renderers/vega-date-picker-calendar-year-month-switcher-renderer.d.ts +33 -0
- package/dist/types/components/vega-date-picker/vega-date-picker-calendar/slimmers/renderers/vega-date-picker-month-item-renderer.d.ts +27 -0
- package/dist/types/components/vega-date-picker/vega-date-picker-calendar/vega-date-picker-calendar.d.ts +184 -0
- package/dist/types/components/vega-date-picker/vega-date-picker.d.ts +6 -14
- package/dist/types/components/vega-dropdown/slimmers/controllers/vega-dropdown-appender-controller.d.ts +0 -4
- 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/vega-dropdown.d.ts +14 -2
- package/dist/types/components/vega-input/slimmers/controllers/vega-input-mask-config-controller.d.ts +33 -6
- package/dist/types/components/vega-input/slimmers/controllers/vega-input-render-mode-controller.d.ts +27 -0
- package/dist/types/components/vega-input/slimmers/controllers/vega-input-value-controller.d.ts +32 -0
- package/dist/types/components/vega-input/slimmers/renderers/vega-input-input-container-renderer.d.ts +27 -0
- package/dist/types/components/vega-input/slimmers/renderers/vega-input-input-renderer.d.ts +58 -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 +21 -0
- package/dist/types/components/vega-input/types.d.ts +4 -0
- package/dist/types/components/vega-input/vega-input.d.ts +67 -34
- package/dist/types/components/vega-input-passcode/slimmers/renderers/vega-input-passcode-renderer.d.ts +1 -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 +5 -0
- package/dist/types/components/vega-input-select/vega-input-select.d.ts +12 -4
- package/dist/types/components/vega-modal/vega-modal.d.ts +7 -1
- package/dist/types/components/vega-popover/vega-popover.d.ts +2 -1
- package/dist/types/components/vega-progress-tracker/slimmers/controllers/dto/internal-progress-tracker-step.d.ts +55 -0
- package/dist/types/components/vega-progress-tracker/slimmers/controllers/vega-progress-tracker-current-direction-controller.d.ts +27 -0
- package/dist/types/components/vega-progress-tracker/slimmers/controllers/vega-progress-tracker-current-step-controller.d.ts +63 -0
- package/dist/types/components/vega-progress-tracker/slimmers/controllers/vega-progress-tracker-current-steps-controller.d.ts +39 -0
- package/dist/types/components/vega-progress-tracker/slimmers/controllers/vega-progress-tracker-render-mode-controller.d.ts +21 -0
- package/dist/types/components/vega-progress-tracker/slimmers/renderers/vega-progress-tracker-renderer.d.ts +21 -0
- package/dist/types/components/vega-progress-tracker/type.d.ts +1 -0
- package/dist/types/components/vega-progress-tracker/vega-progress-tracker-step/slimmers/controllers/vega-progress-tracker-step-state-controller.d.ts +12 -0
- package/dist/types/components/vega-progress-tracker/vega-progress-tracker-step/vega-progress-tracker-step.d.ts +22 -0
- package/dist/types/components/vega-progress-tracker/vega-progress-tracker.d.ts +24 -10
- package/dist/types/components/vega-rich-text-editor/dto/annotations/text-style-annotation.d.ts +7 -0
- 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/extensions/tokens/span-to-token-node-strategy.d.ts +7 -0
- package/dist/types/components/vega-rich-text-editor/extensions/tokens/token-extension.d.ts +1 -1
- package/dist/types/components/vega-rich-text-editor/extensions/tokens/token-node-renderer.d.ts +7 -0
- package/dist/types/components/vega-rich-text-editor/extensions/tokens/token-toolbar-button-renderer.d.ts +2 -2
- package/dist/types/components/vega-rich-text-editor/interface.d.ts +6 -1
- 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.d.ts +312 -21
- package/dist/types/constants/regex.d.ts +1 -0
- package/dist/types/constants/ui.d.ts +1 -1
- package/dist/types/helpers/calendar/calendar-date.d.ts +86 -2
- package/dist/types/helpers/calendar/calendar-period/calendar-period.abstract.d.ts +7 -0
- package/dist/types/helpers/code-format/code-formatter.d.ts +14 -0
- package/dist/types/helpers/event-manager/event-id/vega-event-id.d.ts +5 -1
- package/dist/types/helpers/event-manager/event-id/vega-internal-event-id.d.ts +8 -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/ui/element-appender.d.ts +14 -0
- package/dist/types/types/components.type.d.ts +7 -0
- package/dist/types/types/type-guard.d.ts +16 -0
- package/dist/types/types/ui.type.d.ts +9 -0
- package/dist/types/utils/date.d.ts +11 -2
- package/dist/types/utils/e2e-utils.d.ts +7 -0
- package/dist/types/utils/sanitize.d.ts +71 -0
- package/dist/types/utils/test/sanitize.test.d.ts +1 -0
- package/dist/vega/index.esm.js +1 -1
- package/dist/vega/{p-7b42da4f.entry.js → p-011b94b1.entry.js} +1 -1
- package/dist/vega/p-012753b5.entry.js +1 -0
- package/dist/vega/p-024331ce.entry.js +1 -0
- package/dist/vega/{p-4a467973.js → p-0575d22e.js} +1 -1
- package/dist/vega/{p-9e59345f.entry.js → p-08a90cc6.entry.js} +1 -1
- package/dist/vega/p-0ede1fea.entry.js +1 -0
- package/dist/vega/{p-7d9cd9c8.js → p-10ac8b57.js} +1 -1
- package/dist/vega/{p-b9798158.js → p-1298b126.js} +1 -1
- package/dist/vega/{p-3c865f86.entry.js → p-17c55205.entry.js} +1 -1
- package/dist/vega/{p-a6010b93.entry.js → p-1e0d8228.entry.js} +1 -1
- package/dist/vega/p-1f83cebf.js +1 -0
- package/dist/vega/p-3353b3d7.js +1 -0
- package/dist/vega/p-365b1b35.entry.js +1 -0
- package/dist/vega/p-3ae9ee3d.entry.js +1 -0
- package/dist/vega/p-3af92370.entry.js +1 -0
- package/dist/vega/{p-fde50319.js → p-3bf66be2.js} +1 -1
- package/dist/vega/{p-235bf01b.entry.js → p-3c5a28e4.entry.js} +1 -1
- package/dist/vega/p-3e5f362f.js +1 -0
- package/dist/vega/{p-74168615.js → p-40f39194.js} +1 -1
- package/dist/vega/{p-1bb0c934.js → p-430be941.js} +1 -1
- package/dist/vega/p-43f585f7.entry.js +1 -0
- package/dist/vega/p-45296fd4.entry.js +1 -0
- package/dist/vega/{p-67f159c3.js → p-476a173a.js} +1 -1
- package/dist/vega/p-491618a6.entry.js +1 -0
- package/dist/vega/p-4a537391.entry.js +1 -0
- package/dist/vega/p-4aa893ef.entry.js +1 -0
- package/dist/vega/{p-cbabb07a.entry.js → p-4c47e8bb.entry.js} +1 -1
- package/dist/vega/p-4da75f2b.js +1 -0
- package/dist/vega/p-509eb52e.entry.js +1 -0
- package/dist/vega/p-5110ba73.entry.js +1 -0
- package/dist/vega/p-556f9a21.entry.js +1 -0
- package/dist/vega/p-55b54ba0.entry.js +1 -0
- package/dist/vega/p-5b71c85e.js +1 -0
- package/dist/vega/p-5ea2e43c.entry.js +1 -0
- package/dist/vega/p-5efc6fe1.entry.js +1 -0
- package/dist/vega/p-5f377954.js +1 -1
- package/dist/vega/{p-9ce249a9.js → p-60851f9d.js} +1 -1
- package/dist/vega/{p-54e56f0d.entry.js → p-64cd1931.entry.js} +1 -1
- package/dist/vega/{p-de97c6d9.js → p-66fa700b.js} +1 -1
- package/dist/vega/{p-8c6b6ad7.entry.js → p-67fcf6f2.entry.js} +1 -1
- package/dist/vega/p-68df4288.js +1 -0
- package/dist/vega/p-691ba1ae.js +1 -0
- package/dist/vega/{p-61d9cdf9.entry.js → p-6a2205a1.entry.js} +1 -1
- package/dist/vega/{p-35cd469a.entry.js → p-6a4277df.entry.js} +1 -1
- package/dist/vega/{p-1f26de89.js → p-6e136980.js} +1 -1
- package/dist/vega/p-6f8be8ea.js +1 -0
- package/dist/vega/p-6fa8e231.entry.js +1 -0
- package/dist/vega/p-7045e84c.entry.js +1 -0
- package/dist/vega/{p-85f9a980.js → p-7288f8c4.js} +1 -1
- package/dist/vega/{p-2f09c6aa.js → p-749f96a4.js} +1 -1
- package/dist/vega/{p-a0467b83.js → p-77edf50c.js} +1 -1
- package/dist/vega/p-7aaece55.entry.js +1 -0
- package/dist/vega/p-7ec6a104.entry.js +1 -0
- package/dist/vega/{p-52efaadb.entry.js → p-81134e9e.entry.js} +1 -1
- package/dist/vega/p-8187878e.js +1 -0
- package/dist/vega/p-89d685a8.js +1 -0
- package/dist/vega/{p-c0223a17.entry.js → p-8c0eb12f.entry.js} +1 -1
- package/dist/vega/p-8d0ca805.js +1 -0
- package/dist/vega/p-8d701832.entry.js +1 -0
- package/dist/vega/{p-3e040167.entry.js → p-8e42a14c.entry.js} +1 -1
- package/dist/vega/p-8ed0faa2.entry.js +1 -0
- package/dist/vega/{p-3925c16b.js → p-920719ad.js} +1 -1
- package/dist/vega/{p-18e8c54a.entry.js → p-94394df7.entry.js} +1 -1
- package/dist/vega/p-99aa554b.entry.js +1 -0
- package/dist/vega/{p-69aec6af.entry.js → p-9a2446f1.entry.js} +1 -1
- package/dist/vega/{p-924b4e24.js → p-a2aeb646.js} +1 -1
- package/dist/vega/p-a475d525.entry.js +1 -0
- package/dist/vega/{p-c2f21426.entry.js → p-a530797f.entry.js} +1 -1
- package/dist/vega/{p-652626b6.entry.js → p-a85ad369.entry.js} +1 -1
- package/dist/vega/p-ac5e9955.entry.js +1 -0
- package/dist/vega/p-aedf7146.js +1 -0
- package/dist/vega/p-b1f869fb.js +1 -0
- package/dist/vega/p-b4ea3fad.js +1 -0
- package/dist/vega/p-badad9ed.js +1 -0
- package/dist/vega/{p-98fb9eaa.entry.js → p-bb4a558d.entry.js} +1 -1
- package/dist/vega/p-bb8339ed.entry.js +1 -0
- package/dist/vega/{p-75b5894f.entry.js → p-be930e85.entry.js} +1 -1
- package/dist/vega/p-bf2bd6d0.entry.js +1 -0
- package/dist/vega/p-c2488ed6.js +1 -0
- package/dist/vega/{p-0f7dec29.entry.js → p-c379a5a5.entry.js} +1 -1
- package/dist/vega/{p-db57dddc.js → p-c9b6b5a9.js} +1 -1
- package/dist/vega/{p-7c1d08db.entry.js → p-ca3472c1.entry.js} +1 -1
- package/dist/vega/{p-35252108.js → p-cc43bffb.js} +1 -1
- package/dist/vega/p-cf5b80f9.entry.js +1 -0
- package/dist/vega/{p-8fae8f9e.js → p-d0e31633.js} +1 -1
- package/dist/vega/{p-bfb86c3e.entry.js → p-db60a38e.entry.js} +1 -1
- package/dist/vega/{p-71f9c4d4.js → p-dd11f735.js} +1 -1
- package/dist/vega/{p-19522949.js → p-e16b3adf.js} +1 -1
- package/dist/vega/p-e93545fd.js +1 -0
- package/dist/vega/{p-e6351dab.entry.js → p-e9c4fd24.entry.js} +1 -1
- package/dist/vega/{p-91d71ae9.entry.js → p-eb60cfe1.entry.js} +1 -1
- package/dist/vega/p-ec192283.entry.js +1 -0
- package/dist/vega/{p-c6ae78f2.entry.js → p-f2a3a1ec.entry.js} +1 -1
- package/dist/vega/p-f2cdd212.entry.js +1 -0
- package/dist/vega/p-f3c3ff26.entry.js +1 -0
- package/dist/vega/{p-b27fcac4.entry.js → p-f4c05b4a.entry.js} +1 -1
- package/dist/vega/{p-dde03224.entry.js → p-f52a0155.entry.js} +1 -1
- package/dist/vega/p-f8641214.entry.js +1 -0
- package/dist/vega/{p-330c224f.entry.js → p-f89443aa.entry.js} +1 -1
- package/dist/vega/{p-58769a72.entry.js → p-f8f7cf48.entry.js} +1 -1
- package/dist/vega/p-fe12eff6.js +1 -0
- package/dist/vega/vega.esm.js +1 -1
- package/package.json +2 -3
- package/dist/cjs/date-0a6bb035.js +0 -95
- package/dist/cjs/mobilefriendly-aa2e50e9.js +0 -13
- package/dist/cjs/state-background-color-formatter-aa5570f6.js +0 -85
- package/dist/cjs/vega-progress-tracker.cjs.entry.js +0 -252
- package/dist/collection/components/vega-date-picker/slimmers/controllers/vega-date-picker-calendar-controller.js +0 -282
- package/dist/collection/components/vega-date-picker/slimmers/controllers/vega-date-picker-element-appender-controller.js +0 -35
- package/dist/collection/components/vega-date-picker/slimmers/controllers/vega-date-picker-mobile-controller.js +0 -53
- package/dist/collection/components/vega-date-picker/slimmers/controllers/vega-date-picker-month-year-change-event-controller.js +0 -139
- package/dist/collection/components/vega-date-picker/slimmers/controllers/vega-date-picker-zindex-controller.js +0 -49
- package/dist/collection/components/vega-date-picker/slimmers/renderers/vega-date-picker-calendar-month-year-dropdown-renderer.js +0 -341
- package/dist/esm/date-c55b97f0.js +0 -87
- package/dist/esm/mobilefriendly-c5d0573d.js +0 -11
- package/dist/esm/state-background-color-formatter-0f01d27a.js +0 -82
- package/dist/esm/vega-progress-tracker.entry.js +0 -248
- package/dist/types/components/vega-date-picker/slimmers/controllers/vega-date-picker-calendar-controller.d.ts +0 -96
- package/dist/types/components/vega-date-picker/slimmers/controllers/vega-date-picker-element-appender-controller.d.ts +0 -12
- package/dist/types/components/vega-date-picker/slimmers/controllers/vega-date-picker-mobile-controller.d.ts +0 -18
- package/dist/types/components/vega-date-picker/slimmers/controllers/vega-date-picker-month-year-change-event-controller.d.ts +0 -46
- package/dist/types/components/vega-date-picker/slimmers/controllers/vega-date-picker-zindex-controller.d.ts +0 -15
- package/dist/types/components/vega-date-picker/slimmers/renderers/vega-date-picker-calendar-month-year-dropdown-renderer.d.ts +0 -97
- package/dist/vega/p-08835909.js +0 -1
- package/dist/vega/p-0cdb38d3.js +0 -1
- package/dist/vega/p-0e5297b9.entry.js +0 -1
- package/dist/vega/p-0feceaac.entry.js +0 -1
- package/dist/vega/p-115b42e6.entry.js +0 -1
- package/dist/vega/p-1372b984.js +0 -1
- package/dist/vega/p-1739a877.entry.js +0 -1
- package/dist/vega/p-1a59703b.entry.js +0 -1
- package/dist/vega/p-1e92737c.entry.js +0 -1
- package/dist/vega/p-257ff60b.entry.js +0 -1
- package/dist/vega/p-25a3fad7.entry.js +0 -1
- package/dist/vega/p-2622f0a8.entry.js +0 -1
- package/dist/vega/p-26c4f07c.entry.js +0 -1
- package/dist/vega/p-2e6ce1e9.entry.js +0 -1
- package/dist/vega/p-2ec7e020.entry.js +0 -1
- package/dist/vega/p-308aa2e3.js +0 -1
- package/dist/vega/p-33f3f306.js +0 -1
- package/dist/vega/p-366825fa.entry.js +0 -1
- package/dist/vega/p-37020002.entry.js +0 -1
- package/dist/vega/p-379f1b40.entry.js +0 -1
- package/dist/vega/p-38cb2b40.js +0 -1
- package/dist/vega/p-447c7590.js +0 -1
- package/dist/vega/p-4e13a26f.js +0 -1
- package/dist/vega/p-5972c101.entry.js +0 -1
- package/dist/vega/p-5d827fe5.js +0 -1
- package/dist/vega/p-5e708ad5.entry.js +0 -1
- package/dist/vega/p-65a9af84.entry.js +0 -1
- package/dist/vega/p-67eb405d.entry.js +0 -1
- package/dist/vega/p-71ddccf2.entry.js +0 -1
- package/dist/vega/p-785d9ac3.entry.js +0 -1
- package/dist/vega/p-796d840c.entry.js +0 -1
- package/dist/vega/p-7a590741.entry.js +0 -1
- package/dist/vega/p-824a06ba.js +0 -1
- package/dist/vega/p-8350506e.js +0 -1
- package/dist/vega/p-867a4970.js +0 -1
- package/dist/vega/p-880569ec.entry.js +0 -1
- package/dist/vega/p-8ac2f43f.entry.js +0 -1
- package/dist/vega/p-8ff96b8c.entry.js +0 -13
- package/dist/vega/p-9794fd88.entry.js +0 -1
- package/dist/vega/p-a10b9f2e.js +0 -12
- package/dist/vega/p-a630ce73.entry.js +0 -1
- package/dist/vega/p-b1faebe0.js +0 -1
- package/dist/vega/p-b5ba0c11.js +0 -1
- package/dist/vega/p-b8b9ed2c.js +0 -1
- package/dist/vega/p-bcc396c2.entry.js +0 -1
- package/dist/vega/p-bccee21e.js +0 -1
- package/dist/vega/p-c224b44c.js +0 -1
- package/dist/vega/p-ea96635b.entry.js +0 -1
- package/dist/vega/p-f21b893b.entry.js +0 -1
- package/dist/vega/p-fb320b50.entry.js +0 -1
- package/dist/vega/p-ff470366.entry.js +0 -1
|
@@ -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
|
*
|
|
@@ -1,6 +1,7 @@
|
|
|
1
1
|
import { generateUUID } from '../../../../utils/misc';
|
|
2
2
|
import { ActionHandleStrategy } from '../../dto/action-handle-strategies/action-handle-strategy.abstract';
|
|
3
3
|
import { InsertNodeToNearestRootAction } from '../../dto/actions/insert-node-to-nearest-root-action';
|
|
4
|
+
import { CustomAttributeAnnotation } from '../../dto/annotations/custom-attribute-annotation';
|
|
4
5
|
import { RTETokenNode } from './token-node';
|
|
5
6
|
/**
|
|
6
7
|
* Strategy to handle the insertion of a token node into the nearest root block.
|
|
@@ -12,7 +13,10 @@ export class InsertTokenNodeStrategy extends ActionHandleStrategy {
|
|
|
12
13
|
handleAction(action, block) {
|
|
13
14
|
const { rteRange, token } = action;
|
|
14
15
|
if (rteRange && rteRange.startNode) {
|
|
15
|
-
|
|
16
|
+
// eslint-disable-next-line @typescript-eslint/no-unused-vars
|
|
17
|
+
const { key, label, customAttrs = { wrapped: 'true' } } = token;
|
|
18
|
+
const tokenNode = new RTETokenNode(generateUUID(), key, label, block);
|
|
19
|
+
tokenNode.annotationMap.set('CUSTOM_ATTRIBUTE', new CustomAttributeAnnotation(customAttrs));
|
|
16
20
|
block.apply(new InsertNodeToNearestRootAction(rteRange, tokenNode));
|
|
17
21
|
action.actionHandleResult = true;
|
|
18
22
|
}
|
|
@@ -10,6 +10,7 @@ var __rest = (this && this.__rest) || function (s, e) {
|
|
|
10
10
|
return t;
|
|
11
11
|
};
|
|
12
12
|
import { generateUUID } from '../../../../utils/misc';
|
|
13
|
+
import { cleanObject } from '../../../../utils/object';
|
|
13
14
|
import { RTETextNode } from '../../dto/nodes/text-node';
|
|
14
15
|
import htmlElementToAnnotationGenerator from '../../slimmers/controllers/helper/element-to-dto-strategy/annotation-handler/html-element-to-annotation-generator';
|
|
15
16
|
import { ElementToDTOStrategy } from '../../slimmers/controllers/helper/element-to-dto-strategy/element-to-dto-strategy.abstract';
|
|
@@ -45,7 +46,7 @@ export class SpanToTokenNodeStrategy extends ElementToDTOStrategy {
|
|
|
45
46
|
type: 'token',
|
|
46
47
|
token: tokenKey,
|
|
47
48
|
text,
|
|
48
|
-
annotations: Object.assign({}, restAnnotations),
|
|
49
|
+
annotations: Object.assign(Object.assign({}, restAnnotations), { customAttribute: this.createCustomAttrs(customAttribute) }),
|
|
49
50
|
};
|
|
50
51
|
}
|
|
51
52
|
/**
|
|
@@ -59,4 +60,14 @@ export class SpanToTokenNodeStrategy extends ElementToDTOStrategy {
|
|
|
59
60
|
shouldProceedToElementChildren() {
|
|
60
61
|
return false;
|
|
61
62
|
}
|
|
63
|
+
/**
|
|
64
|
+
* Creates custom attributes record from the given custom attribute object, clean some fixed attributes.
|
|
65
|
+
*
|
|
66
|
+
* @param {Record<string, string>} customAttribute - The custom attribute object
|
|
67
|
+
* @returns {Record<string, string>} The processed custom attributes
|
|
68
|
+
*/
|
|
69
|
+
createCustomAttrs(customAttribute) {
|
|
70
|
+
const result = Object.assign(Object.assign({}, customAttribute), { 'contenteditable': null, 'template-token-key': null, 'token-key': null, 'wrapped': customAttribute.wrapped === 'false' ? 'false' : 'true' });
|
|
71
|
+
return cleanObject(result);
|
|
72
|
+
}
|
|
62
73
|
}
|
package/dist/collection/components/vega-rich-text-editor/extensions/tokens/token-node-renderer.js
CHANGED
|
@@ -18,22 +18,14 @@ export class RTETokenNodeRenderer extends VegaRTEExtensionRenderer {
|
|
|
18
18
|
*/
|
|
19
19
|
doRender(createElement, node, editorContent) {
|
|
20
20
|
const { id, token } = node;
|
|
21
|
-
return createElement('span', {
|
|
22
|
-
'key': id,
|
|
23
|
-
'template-token-key': token,
|
|
24
|
-
'token-key': token,
|
|
25
|
-
'contenteditable': 'false',
|
|
26
|
-
'style': node.getStyles(),
|
|
27
|
-
'class': `token ${node.getClasses()}`,
|
|
28
|
-
'ref': this.useRef(node),
|
|
21
|
+
return createElement('span', Object.assign(Object.assign({ 'key': id, 'template-token-key': token, 'token-key': token, 'contenteditable': 'false', 'style': node.getStyles(), 'class': `token ${node.getClasses()}` }, this.additionalAttributes(node)), { 'ref': this.useRef(node),
|
|
29
22
|
// eslint-disable-next-line jsdoc/require-jsdoc
|
|
30
23
|
'onClick': (event) => {
|
|
31
24
|
event.preventDefault();
|
|
32
25
|
if (editorContent && editorContent.editable !== false) {
|
|
33
26
|
this.handleTokenElementClick(event, node);
|
|
34
27
|
}
|
|
35
|
-
},
|
|
36
|
-
}, node.text);
|
|
28
|
+
} }), node.text);
|
|
37
29
|
}
|
|
38
30
|
/**
|
|
39
31
|
* Sets the RTE extension context.
|
|
@@ -63,4 +55,18 @@ export class RTETokenNodeRenderer extends VegaRTEExtensionRenderer {
|
|
|
63
55
|
this.extensionContext.host.value.apply(new UpdateCursorPositionAction(node, undefined, true));
|
|
64
56
|
}
|
|
65
57
|
}
|
|
58
|
+
/**
|
|
59
|
+
* Additional attributes for the token node.
|
|
60
|
+
*
|
|
61
|
+
* @param {RTETokenNode} node - The token node.
|
|
62
|
+
* @returns {Record<string, string>} Additional attributes
|
|
63
|
+
*/
|
|
64
|
+
additionalAttributes(node) {
|
|
65
|
+
const annotation = node.getCustomAttributesAnnotation();
|
|
66
|
+
let result = { wrapped: 'true' };
|
|
67
|
+
if (annotation) {
|
|
68
|
+
result = Object.assign(Object.assign({}, result), annotation.render());
|
|
69
|
+
}
|
|
70
|
+
return result;
|
|
71
|
+
}
|
|
66
72
|
}
|
|
@@ -51,6 +51,6 @@ export class RTETokenNode extends RTETextNode {
|
|
|
51
51
|
* @returns {string} - The HTML representation of the token node.
|
|
52
52
|
*/
|
|
53
53
|
toHtml() {
|
|
54
|
-
return `<span class="token" contenteditable="false" template-token-key="${this.token}" token-key="${this.token}"
|
|
54
|
+
return `<span class="token" contenteditable="false" template-token-key="${this.token}" token-key="${this.token}"${super.generateAttributeString()}>${this.text}</span>`;
|
|
55
55
|
}
|
|
56
56
|
}
|
|
@@ -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
|
@@ -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);
|
|
@@ -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);
|
|
@@ -17,7 +17,7 @@ describe('annotation-style', () => {
|
|
|
17
17
|
});
|
|
18
18
|
const blockAnnotationStyle = new RTEAnnotationStyle(textBlock);
|
|
19
19
|
expect(blockAnnotationStyle.toCssText()).toEqual('color: red;font-size: 16px;');
|
|
20
|
-
expect(blockAnnotationStyle.toCssText({ standalone: true })).toEqual('font-family: Inter;font-size: 16px;line-height: 22px;font-weight: 500;margin-top: 0px;margin-bottom: 0px;text-align: center;color: red;');
|
|
20
|
+
expect(blockAnnotationStyle.toCssText({ standalone: true })).toEqual('font-family: Inter;font-size: 16px;line-height: 22px;min-height: 22px;font-weight: 500;margin-top: 0px;margin-bottom: 0px;text-align: center;color: red;');
|
|
21
21
|
expect(blockAnnotationStyle.toCssText(null, null, {})).toEqual('');
|
|
22
22
|
expect(blockAnnotationStyle.toCssText(null, null, { color: 'red' })).toEqual('color: red;');
|
|
23
23
|
expect(blockAnnotationStyle.toCssText(null, null, { backgroundColor: 'blue', fontWeight: 'bold' })).toEqual('background-color: blue;font-weight: bold;');
|
|
@@ -56,6 +56,7 @@ describe('annotation-style', () => {
|
|
|
56
56
|
fontSize: '16px',
|
|
57
57
|
fontWeight: '500',
|
|
58
58
|
lineHeight: '22px',
|
|
59
|
+
minHeight: '22px',
|
|
59
60
|
marginBottom: '0px',
|
|
60
61
|
marginTop: '0px',
|
|
61
62
|
textAlign: 'center',
|
|
@@ -47,6 +47,7 @@ describe('annotations', () => {
|
|
|
47
47
|
fontSize: '16px',
|
|
48
48
|
fontWeight: '500',
|
|
49
49
|
lineHeight: '22px',
|
|
50
|
+
minHeight: '22px',
|
|
50
51
|
marginBottom: '0px',
|
|
51
52
|
marginTop: '0px',
|
|
52
53
|
});
|
|
@@ -55,18 +56,21 @@ describe('annotations', () => {
|
|
|
55
56
|
fontSize: '36px',
|
|
56
57
|
fontWeight: '500',
|
|
57
58
|
lineHeight: '40px',
|
|
59
|
+
minHeight: '40px',
|
|
58
60
|
});
|
|
59
61
|
expect(new TextStyleAnnotation('subtitle').renderStyle({ standalone: true })).toEqual({
|
|
60
62
|
fontFamily: 'Inter',
|
|
61
63
|
fontSize: '28px',
|
|
62
64
|
fontWeight: '500',
|
|
63
65
|
lineHeight: '32px',
|
|
66
|
+
minHeight: '32px',
|
|
64
67
|
});
|
|
65
68
|
expect(new TextStyleAnnotation('heading-1').renderStyle({ standalone: true })).toEqual({
|
|
66
69
|
fontFamily: 'Inter',
|
|
67
70
|
fontSize: '22px',
|
|
68
71
|
fontWeight: '500',
|
|
69
72
|
lineHeight: '24px',
|
|
73
|
+
minHeight: '24px',
|
|
70
74
|
marginBottom: '0px',
|
|
71
75
|
marginTop: '0px',
|
|
72
76
|
});
|
|
@@ -75,6 +79,7 @@ describe('annotations', () => {
|
|
|
75
79
|
fontSize: '20px',
|
|
76
80
|
fontWeight: '500',
|
|
77
81
|
lineHeight: '24px',
|
|
82
|
+
minHeight: '24px',
|
|
78
83
|
marginBottom: '0px',
|
|
79
84
|
marginTop: '0px',
|
|
80
85
|
});
|
|
@@ -83,6 +88,7 @@ describe('annotations', () => {
|
|
|
83
88
|
fontSize: '18px',
|
|
84
89
|
fontWeight: '500',
|
|
85
90
|
lineHeight: '22px',
|
|
91
|
+
minHeight: '22px',
|
|
86
92
|
marginBottom: '0px',
|
|
87
93
|
marginTop: '0px',
|
|
88
94
|
});
|
|
@@ -91,6 +97,7 @@ describe('annotations', () => {
|
|
|
91
97
|
fontSize: '16px',
|
|
92
98
|
fontWeight: '500',
|
|
93
99
|
lineHeight: '22px',
|
|
100
|
+
minHeight: '22px',
|
|
94
101
|
marginBottom: '0px',
|
|
95
102
|
marginTop: '0px',
|
|
96
103
|
});
|
|
@@ -99,6 +106,7 @@ describe('annotations', () => {
|
|
|
99
106
|
fontSize: '14px',
|
|
100
107
|
fontWeight: '500',
|
|
101
108
|
lineHeight: '22px',
|
|
109
|
+
minHeight: '22px',
|
|
102
110
|
marginBottom: '0px',
|
|
103
111
|
marginTop: '0px',
|
|
104
112
|
});
|
|
@@ -107,6 +115,7 @@ describe('annotations', () => {
|
|
|
107
115
|
fontSize: '12px',
|
|
108
116
|
fontWeight: '500',
|
|
109
117
|
lineHeight: '22px',
|
|
118
|
+
minHeight: '22px',
|
|
110
119
|
marginBottom: '0px',
|
|
111
120
|
marginTop: '0px',
|
|
112
121
|
});
|
|
@@ -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;
|
|
@@ -187,7 +187,7 @@ describe('text block', () => {
|
|
|
187
187
|
},
|
|
188
188
|
],
|
|
189
189
|
};
|
|
190
|
-
expect(RTETextBlock.from(textBlock).toHtml()).toEqual(`<p style="font-family: Inter;font-size: 16px;line-height: 22px;font-weight: 500;margin-top: 0px;margin-bottom: 0px;"><a href="www.google.com" target="_blank" style="color: rgba(var(--v-text-link, 19, 98, 226, 1));"><span>This is a text.</span></a></p>`);
|
|
190
|
+
expect(RTETextBlock.from(textBlock).toHtml()).toEqual(`<p style="font-family: Inter;font-size: 16px;line-height: 22px;min-height: 22px;font-weight: 500;margin-top: 0px;margin-bottom: 0px;"><a href="www.google.com" target="_blank" style="color: rgba(var(--v-text-link, 19, 98, 226, 1));"><span>This is a text.</span></a></p>`);
|
|
191
191
|
expect(RTETextBlock.from(textBlock, { autoMatchFormat: false }).toHtml()).toEqual(`<p><a href="www.google.com"><span>This is a text.</span></a></p>`);
|
|
192
192
|
});
|
|
193
193
|
});
|