@heartlandone/vega 2.75.0 → 2.76.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/cjs/{app-globals-bf183914.js → app-globals-12b7d808.js} +28 -32
- package/dist/cjs/breakpoints-751d433a.js +56 -0
- package/dist/cjs/{child-nodes-event-prevent-slimmer-aca87dac.js → child-nodes-event-prevent-slimmer-84435957.js} +2 -2
- package/dist/cjs/{child-nodes-notify-observer-slimmer-257fedb3.js → child-nodes-notify-observer-slimmer-ed39283b.js} +1 -1
- package/dist/cjs/{code-block-c1d2e6a8.js → code-block-f1480ec3.js} +17 -17
- package/dist/cjs/{component-global-style-slimmer-adfa2e59.js → component-global-style-slimmer-93c5fb50.js} +2 -1
- package/dist/cjs/{component-usage-runtime-metrics-d10ace87.js → component-usage-runtime-metrics-4572c5b7.js} +1 -1
- package/dist/cjs/{component-value-history-controller-slimmer.abstract-787c67dc.js → component-value-history-controller-slimmer.abstract-a9264cc8.js} +5 -5
- package/dist/cjs/{create-public-api-runtime-metrics-slimmer-e2e274e1.js → create-public-api-runtime-metrics-slimmer-9cb09fb2.js} +3 -41
- package/dist/cjs/{dark-mode-style-controller-c21172aa.js → dark-mode-style-controller-3a04af3d.js} +292 -1254
- package/dist/cjs/{date-required-rule-30ee62d0.js → date-required-rule-912469e0.js} +1 -1
- package/dist/cjs/{design-token-cbc01283.js → design-token-41baf118.js} +2 -2
- package/dist/cjs/dom-node-subject-observer-factory-c62823de.js +141 -0
- package/dist/cjs/{dto-renderer-manager-2fc24151.js → dto-renderer-manager-809c947b.js} +230 -55
- package/dist/cjs/{element-appender-slimmer-318d29c7.js → element-appender-slimmer-34e4eb56.js} +349 -166
- package/dist/cjs/{event-emit-slimmer-2dacabbd.js → event-emit-slimmer-062cdcb8.js} +2 -2
- package/dist/cjs/{feature-flag-controller-ce2162c8.js → feature-flag-controller-04cb1e69.js} +7 -1
- package/dist/cjs/{form-field-controller-slimmer-aef2fb1e.js → form-field-controller-slimmer-102f37c7.js} +13 -14
- package/dist/cjs/{internal-icon-manager-32f9ed63.js → icon-manager-c12c6ea9.js} +1 -52
- package/dist/cjs/{image-annotation-action-e4a35325.js → image-annotation-action-8d9fa20c.js} +10 -9
- package/dist/cjs/index-592b4052.js +220 -0
- package/dist/cjs/{index-4d7bce1a.js → index-f054eb5d.js} +15 -3
- package/dist/cjs/index.cjs.js +68 -65
- package/dist/cjs/{inject-keyboard-manager-d21b4387.js → inject-keyboard-manager-0f5bd568.js} +1 -1
- package/dist/cjs/internal-icon-manager-c989189a.js +55 -0
- package/dist/cjs/{translation-5f9f9c0c.js → internal-translation-controller-053eb0f1.js} +0 -93
- package/dist/cjs/{internal-vega-event-manager-6befeb34.js → internal-vega-event-manager-f7ecf3d4.js} +81 -81
- package/dist/cjs/internal-vega-z-index-manager-f03ddb37.js +180 -0
- package/dist/cjs/{keyboard-manager-3dea6b28.js → keyboard-manager-055e9f67.js} +2 -2
- package/dist/cjs/{keyboard-manager-slimmer-0d45f944.js → keyboard-manager-slimmer-0cc0c1c7.js} +1 -1
- package/dist/cjs/loader.cjs.js +26 -23
- package/dist/cjs/misc-3d30df91.js +41 -0
- package/dist/cjs/{month-view-generator-49cc5fc2.js → month-view-generator-6a6dd527.js} +1 -1
- package/dist/cjs/{page-resize-observer-slimmer-11937d6f.js → page-resize-observer-slimmer-7f065ee1.js} +2 -54
- package/dist/cjs/{public-rules-661823fa.js → public-rules-922849f3.js} +12 -13
- package/dist/cjs/{range-79b668e7.js → range-8aa49b08.js} +2 -2
- package/dist/cjs/{responsive-format-facade-f71d399c.js → responsive-format-facade-ea59bdcd.js} +13 -22
- package/dist/cjs/{rich-text-editor-required-rule-d5feeffd.js → rich-text-editor-required-rule-22225840.js} +1 -1
- package/dist/cjs/{string-format-strategy.abstract-63514c60.js → string-format-strategy.abstract-f2575647.js} +1 -1
- package/dist/cjs/{string-input-formatter-slimmer-f3e0bbc7.js → string-input-formatter-slimmer-0a334fc6.js} +5 -5
- package/dist/cjs/{string-mask-strategy-d23ac21a.js → string-mask-strategy-dda58395.js} +2 -2
- package/dist/cjs/{style-formatter-566df206.js → style-formatter-0c3ced39.js} +2 -2
- package/dist/cjs/{sub-state-notify-slimmer-468e19aa.js → sub-state-notify-slimmer-58121111.js} +1 -1
- package/dist/cjs/{sub-state-observer-slimmer-5d0b8ac3.js → sub-state-observer-slimmer-1dfbc4c3.js} +2 -2
- package/dist/cjs/{time-required-rule-c96ecdc9.js → time-required-rule-d6fa7aa8.js} +1 -1
- package/dist/cjs/{function-extension-ca9aa115.js → token-extension-07cac85d.js} +501 -387
- package/dist/cjs/{translation-slimmer-f0ebe710.js → translation-slimmer-4533bd67.js} +4 -4
- package/dist/cjs/{type-guard-a0f026d8.js → type-guard-407ba0b8.js} +3 -3
- package/dist/cjs/{ui-9e181079.js → ui-234ea151.js} +12 -0
- package/dist/cjs/{valid-credit-card-number-rule-c854bed9.js → valid-credit-card-number-rule-41a8b51b.js} +1 -1
- package/dist/cjs/vega-accordion.cjs.entry.js +21 -30
- package/dist/cjs/vega-app-footer.cjs.entry.js +3 -3
- package/dist/cjs/vega-app-header-button.cjs.entry.js +183 -49
- package/dist/cjs/vega-backdrop.cjs.entry.js +2 -2
- package/dist/cjs/vega-banner.cjs.entry.js +15 -13
- package/dist/cjs/vega-bar-chart.cjs.entry.js +1 -1
- package/dist/cjs/vega-box.cjs.entry.js +18 -33
- package/dist/cjs/vega-brand-logo.cjs.entry.js +7 -5
- package/dist/cjs/vega-breadcrumb.cjs.entry.js +14 -13
- package/dist/cjs/vega-button-circle.cjs.entry.js +20 -30
- package/dist/cjs/vega-button-group_2.cjs.entry.js +15 -15
- package/dist/cjs/vega-button-link.cjs.entry.js +15 -14
- package/dist/cjs/vega-button.cjs.entry.js +21 -30
- package/dist/cjs/vega-calendar_4.cjs.entry.js +48 -45
- package/dist/cjs/vega-card.cjs.entry.js +9 -28
- package/dist/cjs/vega-carousel.cjs.entry.js +15 -26
- package/dist/cjs/vega-checkbox_2.cjs.entry.js +22 -20
- package/dist/cjs/vega-chip.cjs.entry.js +22 -33
- package/dist/cjs/vega-code-block.cjs.entry.js +658 -2709
- package/dist/cjs/vega-color-picker.cjs.entry.js +15 -12
- package/dist/cjs/vega-combo-box.cjs.entry.js +29 -28
- package/dist/cjs/vega-counter-badge.cjs.entry.js +1 -1
- package/dist/cjs/vega-date-picker_2.cjs.entry.js +53 -56
- package/dist/cjs/vega-dialog-controller-03ef4d9a.js +84 -0
- package/dist/cjs/vega-dialog_2.cjs.entry.js +37 -44
- package/dist/cjs/vega-divider.cjs.entry.js +12 -30
- package/dist/cjs/vega-dropdown_5.cjs.entry.js +49 -55
- package/dist/cjs/vega-env-manager-23b8b23c.js +2 -2
- package/dist/cjs/{dom-node-subject-observer-factory-b5e71bf6.js → vega-event-id-ee01d8dd.js} +0 -139
- package/dist/cjs/vega-field-error.cjs.entry.js +1 -1
- package/dist/cjs/vega-field-label.cjs.entry.js +9 -8
- package/dist/cjs/vega-file-uploader.cjs.entry.js +28 -23
- package/dist/cjs/vega-flag-icon.cjs.entry.js +13 -27
- package/dist/cjs/vega-flex.cjs.entry.js +11 -28
- package/dist/cjs/vega-font.cjs.entry.js +12 -29
- package/dist/cjs/vega-form.cjs.entry.js +24 -22
- package/dist/cjs/vega-grid.cjs.entry.js +9 -28
- package/dist/cjs/vega-hint.cjs.entry.js +1 -1
- package/dist/cjs/vega-icon.cjs.entry.js +18 -31
- package/dist/cjs/vega-image-uploader.cjs.entry.js +34 -37
- package/dist/cjs/vega-input-credit-card.cjs.entry.js +31 -27
- package/dist/cjs/vega-input-numeric.cjs.entry.js +24 -22
- package/dist/cjs/vega-input-passcode.cjs.entry.js +26 -24
- package/dist/cjs/vega-input-phone-number.cjs.entry.js +31 -35
- package/dist/cjs/vega-input-range.cjs.entry.js +22 -20
- package/dist/cjs/vega-input-select.cjs.entry.js +41 -46
- package/dist/cjs/vega-input.cjs.entry.js +43 -31
- package/dist/cjs/vega-item-toggle.cjs.entry.js +8 -7
- package/dist/cjs/vega-left-nav_5.cjs.entry.js +38 -40
- package/dist/cjs/vega-line-chart.cjs.entry.js +1 -1
- package/dist/cjs/vega-loader-wrapper_2.cjs.entry.js +16 -32
- package/dist/cjs/vega-page-notification_2.cjs.entry.js +5 -4
- package/dist/cjs/vega-pagination-page-selector-mobile.cjs.entry.js +12 -12
- package/dist/cjs/vega-pagination-page-size-selector-mobile.cjs.entry.js +9 -10
- package/dist/cjs/vega-pagination.cjs.entry.js +28 -38
- package/dist/cjs/vega-pie-chart.cjs.entry.js +1 -1
- package/dist/cjs/vega-popover_2.cjs.entry.js +21 -31
- package/dist/cjs/vega-progress-tracker_2.cjs.entry.js +66 -39
- package/dist/cjs/vega-radio_2.cjs.entry.js +25 -23
- package/dist/cjs/vega-rich-text-content.cjs.entry.js +22 -20
- package/dist/cjs/vega-rich-text-editor_4.cjs.entry.js +115 -62
- package/dist/cjs/vega-section-title.cjs.entry.js +1 -1
- package/dist/cjs/vega-segment-control.cjs.entry.js +10 -8
- package/dist/cjs/vega-selection-chip_2.cjs.entry.js +25 -32
- package/dist/cjs/vega-selection-tile_2.cjs.entry.js +22 -20
- package/dist/cjs/vega-sidenav_3.cjs.entry.js +34 -40
- package/dist/cjs/vega-signature-capture.cjs.entry.js +27 -31
- package/dist/cjs/vega-skeleton.cjs.entry.js +1 -1
- package/dist/cjs/vega-slot-container.cjs.entry.js +1 -1
- package/dist/cjs/vega-stepper.cjs.entry.js +23 -21
- package/dist/cjs/vega-tab-group_2.cjs.entry.js +15 -14
- package/dist/cjs/vega-table_11.cjs.entry.js +67 -68
- package/dist/cjs/vega-text.cjs.entry.js +4 -3
- package/dist/cjs/vega-textarea.cjs.entry.js +22 -20
- package/dist/cjs/vega-time-picker_2.cjs.entry.js +35 -41
- package/dist/cjs/vega-toggle-switch.cjs.entry.js +15 -12
- package/dist/cjs/vega-tooltip_2.cjs.entry.js +17 -28
- package/dist/cjs/vega.cjs.js +26 -23
- package/dist/cjs/{index-95fca64f.js → wait-for-component-did-render-70a01bf9.js} +1 -12
- package/dist/collection/components/vega-app-header-button/vega-app-header-button.js +17 -2
- package/dist/collection/components/vega-box/slimmers/controllers/vega-box-responsive-style-controller.js +2 -1
- package/dist/collection/components/vega-box/slimmers/controllers/vega-box-state-styles-controller.js +2 -1
- package/dist/collection/components/vega-button/vega-button.js +2 -1
- package/dist/collection/components/vega-button-circle/vega-button-circle.js +2 -1
- package/dist/collection/components/vega-button-link/vega-button-link.css +1 -1
- package/dist/collection/components/vega-button-link/vega-button-link.js +2 -1
- package/dist/collection/components/vega-calendar/slimmers/common/helpers/repeat-pattern/base-repeat-pattern.js +1 -1
- package/dist/collection/components/vega-calendar/slimmers/common/helpers/repeat-pattern/calendar-event-daily-repeat-pattern.js +1 -1
- package/dist/collection/components/vega-calendar/slimmers/common/helpers/repeat-pattern/calendar-event-monthly-repeat-pattern.js +1 -1
- package/dist/collection/components/vega-calendar/slimmers/common/helpers/repeat-pattern/calendar-event-weekly-repeat-pattern.js +1 -1
- package/dist/collection/components/vega-calendar/slimmers/common/helpers/repeat-pattern/calendar-event-yearly-repeat-pattern.js +1 -1
- package/dist/collection/components/vega-code-block/slimmers/controllers/prism-code-highlight-parse-controller.js +5 -14
- package/dist/collection/components/vega-combo-box/slimmers/renderers/vega-combo-box-dropdown-renderer.js +2 -2
- package/dist/collection/components/vega-date-picker/slimmers/controllers/vega-date-picker-calendar-open-state-controller.js +1 -1
- package/dist/collection/components/vega-date-picker/slimmers/renderers/vega-date-picker-calendar-renderer.js +1 -1
- package/dist/collection/components/vega-dropdown/slimmers/controllers/vega-dropdown-search-controller.js +2 -2
- package/dist/collection/components/vega-dropdown/slimmers/renderers/vega-dropdown-list-renderer.js +2 -2
- package/dist/collection/components/vega-dropdown/vega-dropdown-group/slimmers/renderers/vega-dropdown-group-renderer.js +3 -3
- package/dist/collection/components/vega-dropdown/vega-dropdown-item/slimmers/renderers/vega-dropdown-item-renderer.js +6 -4
- package/dist/collection/components/vega-icon/vega-icon.js +2 -1
- package/dist/collection/components/vega-input/slimmers/renderers/vega-input-input-container-renderer.js +10 -2
- package/dist/collection/components/vega-input-phone-number/slimmers/renderers/country-select-renderer.js +1 -1
- package/dist/collection/components/vega-input-select/slimmers/renderers/vega-input-select-dropdown-renderer.js +2 -2
- package/dist/collection/components/vega-pagination/vega-pagination.js +1 -1
- package/dist/collection/components/vega-progress-tracker/slimmers/controllers/dto/internal-progress-tracker-step.js +30 -6
- package/dist/collection/components/vega-progress-tracker/slimmers/controllers/vega-progress-tracker-current-steps-controller.js +1 -1
- package/dist/collection/components/vega-progress-tracker/slimmers/renderers/vega-progress-tracker-renderer.js +8 -1
- package/dist/collection/components/vega-progress-tracker/vega-progress-tracker-step/vega-progress-tracker-step.js +27 -0
- package/dist/collection/components/vega-progress-tracker/vega-progress-tracker.css +12 -0
- package/dist/collection/components/vega-progress-tracker/vega-progress-tracker.js +8 -3
- package/dist/collection/components/vega-rich-text-content/vega-rich-text-content.js +1 -1
- package/dist/collection/components/vega-rich-text-editor/dto/blocks/html-block.js +16 -0
- package/dist/collection/components/vega-rich-text-editor/dto/content-state.js +3 -22
- package/dist/collection/components/vega-rich-text-editor/slimmers/controllers/html-cleaner/html-content-cleaner.js +59 -0
- package/dist/collection/components/vega-rich-text-editor/slimmers/controllers/html-cleaner/index.js +4 -0
- package/dist/collection/components/vega-rich-text-editor/slimmers/controllers/html-cleaner/processors/remove-whitespace-after-opening-tag-processor.js +21 -0
- package/dist/collection/components/vega-rich-text-editor/slimmers/controllers/html-cleaner/processors/remove-whitespace-before-closing-tag-processor.js +21 -0
- package/dist/collection/components/vega-rich-text-editor/slimmers/controllers/html-cleaner/processors/remove-whitespace-between-tags-processor.js +77 -0
- package/dist/collection/components/vega-rich-text-editor/slimmers/controllers/value-controller.js +1 -1
- package/dist/collection/components/vega-rich-text-editor/slimmers/renderers/tools/link-toolbar-button-slimmer.js +1 -1
- package/dist/collection/components/vega-rich-text-editor/test/dto/blocks/html-block.test.js +39 -0
- package/dist/collection/components/vega-rich-text-editor/test/dto/content-state.test.js +166 -1
- package/dist/collection/components/vega-rich-text-editor/test/html-cleaner/html-content-cleaner.test.js +186 -0
- package/dist/collection/components/vega-rich-text-editor/test/html-cleaner/remove-whitespace-after-opening-tag-processor.test.js +22 -0
- package/dist/collection/components/vega-rich-text-editor/test/html-cleaner/remove-whitespace-before-closing-tag-processor.test.js +22 -0
- package/dist/collection/components/vega-rich-text-editor/test/html-cleaner/remove-whitespace-between-tags-processor.test.js +26 -0
- package/dist/collection/components/vega-signature-capture/slimmers/written-mode/controllers/written-mode-svg-controller.js +2 -1
- package/dist/collection/components/vega-table/interface.js +3 -0
- package/dist/collection/components/vega-table/vega-table-foot-cell/slimmers/renderers/vega-table-foot-cell-renderer.js +1 -1
- package/dist/collection/global/scripts/before-vega-load.js +4 -3
- package/dist/collection/helpers/calendar/calendar-date.js +1 -1
- package/dist/collection/helpers/calendar/calendar-event.js +1 -1
- package/dist/collection/helpers/calendar/calendar-time.js +1 -1
- package/dist/collection/helpers/code-format/code-formatter.js +57 -7
- package/dist/collection/helpers/code-format/test/code-formatter.test.js +49 -1
- package/dist/collection/helpers/common/index.js +2 -37
- package/dist/collection/helpers/common/test/wait-for-vega-handler.test.js +2 -2
- package/dist/collection/helpers/common/wait-for-component-did-render.js +27 -0
- package/dist/collection/helpers/common/wait-for-vega-handler.js +12 -1
- package/dist/collection/helpers/feature-control/feature-flags-map.js +6 -0
- package/dist/collection/helpers/formatter/responsive-map-formatter/responsive-border-radius-style-formatter.js +1 -1
- package/dist/collection/helpers/public-api.js +0 -2
- package/dist/collection/helpers/slimmers/component-global-style-slimmer.js +2 -1
- package/dist/collection/helpers/slimmers/field-error-ui-controller-slimmer.js +3 -4
- package/dist/collection/helpers/slimmers/form-field-message-translator.js +1 -1
- package/dist/collection/helpers/slimmers/global/vega-translate-observer-slimmer.js +1 -1
- package/dist/collection/helpers/slimmers/global/vega-watch-method-cancel-slimmer.js +1 -1
- package/dist/collection/helpers/slimmers/mutation-observer/aria-attributes-value-mapper.js +128 -0
- package/dist/collection/helpers/slimmers/mutation-observer/test/aria-attributes-value-mapper.test.js +196 -0
- package/dist/collection/helpers/slimmers/position-calculation/base-position-calculation-strategy.js +162 -151
- package/dist/collection/helpers/slimmers/position-calculation/position-calculation-controller.js +9 -0
- package/dist/collection/helpers/slimmers/position-calculation/screen-position-calculation-strategy.js +112 -1
- package/dist/collection/helpers/slimmers/position-calculation/screen-scroll-position-update.js +53 -0
- package/dist/collection/helpers/slimmers/position-calculation/test/screen-position-calculation-strategy.test.js +103 -6
- package/dist/collection/helpers/slimmers/string-input-formatter-slimmer.js +1 -1
- package/dist/collection/helpers/slimmers/translation/translation-slimmer.js +1 -1
- package/dist/collection/helpers/theme/controllers/brand-style-controller.js +3 -1
- package/dist/collection/helpers/theme/controllers/color-schema-overriding-controller.js +8 -6
- package/dist/collection/helpers/theme/controllers/dark-mode-style-controller.js +3 -1
- package/dist/collection/helpers/theme/internal-theme-manager.js +2 -1
- package/dist/collection/helpers/theme/tests/theme-manager-controller.test.js +1 -2
- package/dist/collection/helpers/ui/element-appender.js +4 -5
- package/dist/collection/helpers/ui/test/element-appender.test.js +66 -17
- package/dist/collection/index.js +2 -0
- package/dist/collection/polyfill/prism/index.js +2 -0
- package/dist/collection/polyfill/prism/languages/css.js +86 -0
- package/dist/collection/polyfill/prism/languages/javascript.js +96 -0
- package/dist/collection/polyfill/prism/languages/jsx.js +46 -0
- package/dist/collection/polyfill/prism/languages/language-registry.js +41 -0
- package/dist/collection/polyfill/prism/languages/markup.js +71 -0
- package/dist/collection/polyfill/prism/languages/tsx.js +10 -0
- package/dist/collection/polyfill/prism/languages/typescript.js +64 -0
- package/dist/collection/polyfill/prism/test/css.test.js +61 -0
- package/dist/collection/polyfill/prism/test/javascript.test.js +113 -0
- package/dist/collection/polyfill/prism/test/jsx.test.js +48 -0
- package/dist/collection/polyfill/prism/test/language-registry.test.js +77 -0
- package/dist/collection/polyfill/prism/test/markup.test.js +57 -0
- package/dist/collection/polyfill/prism/test/test-utils.js +22 -0
- package/dist/collection/polyfill/prism/test/tokenizer.test.js +180 -0
- package/dist/collection/polyfill/prism/test/tsx.test.js +87 -0
- package/dist/collection/polyfill/prism/test/typescript.test.js +86 -0
- package/dist/collection/polyfill/prism/tokenizer.js +242 -0
- package/dist/collection/polyfill/prism/types.js +1 -0
- package/dist/collection/polyfill/tinycolor/tinycolor-polyfill.js +320 -0
- package/dist/collection/polyfill/tinycolor/tinycolor-polyfill.test.js +361 -0
- package/dist/collection/types/ui.type.js +12 -0
- package/dist/collection/utils/e2e-utils.js +10 -3
- package/dist/collection/utils/sanitize/constants/tag-sets.js +5 -0
- package/dist/collection/utils/sanitize/core/html-sanitizer.js +39 -0
- package/dist/collection/utils/sanitize/core/sanitize-strategy.js +62 -0
- package/dist/collection/utils/sanitize/core/types.js +4 -0
- package/dist/collection/utils/sanitize/index.js +12 -0
- package/dist/collection/utils/sanitize/strategies/empty-sanitize-strategy.js +17 -0
- package/dist/collection/utils/sanitize/strategies/index.js +3 -0
- package/dist/collection/utils/sanitize/strategies/label-sanitize-strategy.js +13 -0
- package/dist/collection/utils/sanitize/strategies/style-sanitize-strategy.js +50 -0
- package/dist/collection/utils/sanitize/test/empty-strategy.test.js +12 -0
- package/dist/collection/utils/sanitize/test/html-sanitizer.test.js +57 -0
- package/dist/collection/utils/sanitize/test/label-strategy.test.js +56 -0
- package/dist/collection/utils/sanitize/test/sanitize-strategy.test.js +85 -0
- package/dist/collection/utils/sanitize/test/sanitize.test.js +22 -0
- package/dist/collection/utils/sanitize/test/serialize-fragment.test.js +25 -0
- package/dist/collection/utils/sanitize/test/style-strategy.test.js +45 -0
- package/dist/collection/utils/sanitize/utils/serialize-fragment.js +17 -0
- package/dist/esm/{app-globals-f3414aca.js → app-globals-c0676920.js} +12 -16
- package/dist/esm/breakpoints-56e5407b.js +53 -0
- package/dist/esm/{child-nodes-event-prevent-slimmer-e662bee2.js → child-nodes-event-prevent-slimmer-649b9d30.js} +2 -2
- package/dist/esm/{child-nodes-notify-observer-slimmer-b676cd2b.js → child-nodes-notify-observer-slimmer-541dd6a4.js} +1 -1
- package/dist/esm/{code-block-8ee34ab6.js → code-block-b6247a45.js} +7 -7
- package/dist/esm/{component-global-style-slimmer-08046b38.js → component-global-style-slimmer-ac703085.js} +2 -1
- package/dist/esm/{component-usage-runtime-metrics-a84cc93e.js → component-usage-runtime-metrics-46020a03.js} +1 -1
- package/dist/esm/{component-value-history-controller-slimmer.abstract-a61bf821.js → component-value-history-controller-slimmer.abstract-2bb8533d.js} +6 -6
- package/dist/esm/{create-public-api-runtime-metrics-slimmer-bedf3a1e.js → create-public-api-runtime-metrics-slimmer-aaadaa08.js} +3 -38
- package/dist/esm/{dark-mode-style-controller-de88a117.js → dark-mode-style-controller-82e5c1c6.js} +292 -1254
- package/dist/esm/{date-required-rule-47ecc28f.js → date-required-rule-e771e7d9.js} +1 -1
- package/dist/esm/{design-token-9b299589.js → design-token-4aee1c56.js} +2 -2
- package/dist/esm/dom-node-subject-observer-factory-82f346e3.js +138 -0
- package/dist/esm/{dto-renderer-manager-f07cf2d9.js → dto-renderer-manager-6fd22ab7.js} +204 -29
- package/dist/esm/{element-appender-slimmer-7cb08343.js → element-appender-slimmer-e4713a72.js} +348 -165
- package/dist/esm/{event-emit-slimmer-09827cec.js → event-emit-slimmer-ffaecb9a.js} +2 -2
- package/dist/esm/{feature-flag-controller-51659753.js → feature-flag-controller-09ea7e87.js} +7 -1
- package/dist/esm/{form-field-controller-slimmer-5d9dc384.js → form-field-controller-slimmer-5817d14d.js} +10 -11
- package/dist/esm/{internal-icon-manager-f0486245.js → icon-manager-539d7cf7.js} +2 -52
- package/dist/esm/{image-annotation-action-53529cd9.js → image-annotation-action-6701b4c9.js} +6 -5
- package/dist/esm/index-3b327f29.js +215 -0
- package/dist/esm/{index-e9da316f.js → index-bfc6dfa2.js} +13 -1
- package/dist/esm/index.js +32 -29
- package/dist/esm/{inject-keyboard-manager-83d76ff5.js → inject-keyboard-manager-78730062.js} +1 -1
- package/dist/esm/internal-icon-manager-bd80b3bb.js +53 -0
- package/dist/esm/{translation-96e5debd.js → internal-translation-controller-911515f9.js} +1 -93
- package/dist/esm/{internal-vega-event-manager-efb6786e.js → internal-vega-event-manager-32a3d848.js} +1 -1
- package/dist/esm/internal-vega-z-index-manager-7d2b54c3.js +178 -0
- package/dist/esm/{keyboard-manager-c92808d8.js → keyboard-manager-38934f94.js} +2 -2
- package/dist/esm/{keyboard-manager-slimmer-79c78ce8.js → keyboard-manager-slimmer-9984d922.js} +1 -1
- package/dist/esm/loader.js +27 -24
- package/dist/esm/misc-9fdbcfbb.js +37 -0
- package/dist/esm/{month-view-generator-16192182.js → month-view-generator-eaf9029c.js} +1 -1
- package/dist/esm/{page-resize-observer-slimmer-8744cb44.js → page-resize-observer-slimmer-d6af0d86.js} +2 -52
- package/dist/esm/{public-rules-6ebdfcf5.js → public-rules-25cc3a39.js} +13 -14
- package/dist/esm/{range-5257c062.js → range-663f44dc.js} +2 -2
- package/dist/esm/{responsive-format-facade-05e53016.js → responsive-format-facade-7a071174.js} +3 -12
- package/dist/esm/{rich-text-editor-required-rule-f63a37d1.js → rich-text-editor-required-rule-a238b862.js} +1 -1
- package/dist/esm/{string-format-strategy.abstract-fc60db79.js → string-format-strategy.abstract-713fba36.js} +1 -1
- package/dist/esm/{string-input-formatter-slimmer-ee32b1fd.js → string-input-formatter-slimmer-5b413ff9.js} +4 -4
- package/dist/esm/{string-mask-strategy-0b0accaa.js → string-mask-strategy-6beaf664.js} +2 -2
- package/dist/esm/{style-formatter-5f5bd714.js → style-formatter-3d06b72d.js} +2 -2
- package/dist/esm/{sub-state-notify-slimmer-4453047a.js → sub-state-notify-slimmer-5133f1a8.js} +2 -2
- package/dist/esm/{sub-state-observer-slimmer-202ec7dc.js → sub-state-observer-slimmer-478c9f41.js} +3 -3
- package/dist/esm/{time-required-rule-5fa43804.js → time-required-rule-e4138a76.js} +1 -1
- package/dist/esm/{function-extension-63028f20.js → token-extension-e33fd151.js} +488 -376
- package/dist/esm/{translation-slimmer-c936cb1b.js → translation-slimmer-2394b173.js} +1 -1
- package/dist/esm/{type-guard-c65a227d.js → type-guard-f50e34d6.js} +1 -1
- package/dist/esm/{ui-bb99c0c2.js → ui-ee31416b.js} +12 -0
- package/dist/esm/{valid-credit-card-number-rule-666c415d.js → valid-credit-card-number-rule-22ce81db.js} +1 -1
- package/dist/esm/vega-accordion.entry.js +19 -28
- package/dist/esm/vega-app-footer.entry.js +3 -3
- package/dist/esm/vega-app-header-button.entry.js +174 -40
- package/dist/esm/vega-backdrop.entry.js +2 -2
- package/dist/esm/vega-banner.entry.js +12 -10
- package/dist/esm/vega-bar-chart.entry.js +1 -1
- package/dist/esm/vega-box.entry.js +14 -29
- package/dist/esm/vega-brand-logo.entry.js +7 -5
- package/dist/esm/vega-breadcrumb.entry.js +11 -10
- package/dist/esm/vega-button-circle.entry.js +19 -29
- package/dist/esm/vega-button-group_2.entry.js +12 -12
- package/dist/esm/vega-button-link.entry.js +13 -12
- package/dist/esm/vega-button.entry.js +19 -28
- package/dist/esm/vega-calendar_4.entry.js +23 -20
- package/dist/esm/vega-card.entry.js +9 -28
- package/dist/esm/vega-carousel.entry.js +14 -25
- package/dist/esm/vega-checkbox_2.entry.js +19 -17
- package/dist/esm/vega-chip.entry.js +18 -29
- package/dist/esm/vega-code-block.entry.js +653 -2704
- package/dist/esm/vega-color-picker.entry.js +15 -12
- package/dist/esm/vega-combo-box.entry.js +22 -21
- package/dist/esm/vega-counter-badge.entry.js +1 -1
- package/dist/esm/vega-date-picker_2.entry.js +34 -37
- package/dist/esm/vega-dialog-controller-bbb2fc52.js +82 -0
- package/dist/esm/vega-dialog_2.entry.js +23 -30
- package/dist/esm/vega-divider.entry.js +11 -29
- package/dist/esm/vega-dropdown_5.entry.js +39 -45
- package/dist/esm/vega-env-manager-8f8dc473.js +2 -2
- package/dist/esm/vega-event-id-38aa77a0.js +113 -0
- package/dist/esm/vega-field-error.entry.js +1 -1
- package/dist/esm/vega-field-label.entry.js +7 -6
- package/dist/esm/vega-file-uploader.entry.js +19 -14
- package/dist/esm/vega-flag-icon.entry.js +12 -26
- package/dist/esm/vega-flex.entry.js +11 -28
- package/dist/esm/vega-font.entry.js +11 -28
- package/dist/esm/vega-form.entry.js +20 -18
- package/dist/esm/vega-grid.entry.js +9 -28
- package/dist/esm/vega-hint.entry.js +1 -1
- package/dist/esm/vega-icon.entry.js +15 -28
- package/dist/esm/vega-image-uploader.entry.js +28 -31
- package/dist/esm/vega-input-credit-card.entry.js +25 -21
- package/dist/esm/vega-input-numeric.entry.js +21 -19
- package/dist/esm/vega-input-passcode.entry.js +20 -18
- package/dist/esm/vega-input-phone-number.entry.js +27 -31
- package/dist/esm/vega-input-range.entry.js +19 -17
- package/dist/esm/vega-input-select.entry.js +27 -32
- package/dist/esm/vega-input.entry.js +33 -21
- package/dist/esm/{vega-internal-event-id-4a06d705.js → vega-internal-event-id-799d012e.js} +1 -1
- package/dist/esm/vega-item-toggle.entry.js +6 -5
- package/dist/esm/vega-left-nav_5.entry.js +29 -31
- package/dist/esm/vega-line-chart.entry.js +1 -1
- package/dist/esm/vega-loader-wrapper_2.entry.js +13 -29
- package/dist/esm/vega-page-notification_2.entry.js +4 -3
- package/dist/esm/vega-pagination-page-selector-mobile.entry.js +9 -9
- package/dist/esm/vega-pagination-page-size-selector-mobile.entry.js +7 -8
- package/dist/esm/vega-pagination.entry.js +20 -30
- package/dist/esm/vega-pie-chart.entry.js +1 -1
- package/dist/esm/vega-popover_2.entry.js +20 -30
- package/dist/esm/vega-progress-tracker_2.entry.js +64 -37
- package/dist/esm/vega-radio_2.entry.js +21 -19
- package/dist/esm/vega-rich-text-content.entry.js +18 -16
- package/dist/esm/vega-rich-text-editor_4.entry.js +90 -37
- package/dist/esm/vega-section-title.entry.js +1 -1
- package/dist/esm/vega-segment-control.entry.js +9 -7
- package/dist/esm/vega-selection-chip_2.entry.js +22 -29
- package/dist/esm/vega-selection-tile_2.entry.js +19 -17
- package/dist/esm/vega-sidenav_3.entry.js +24 -30
- package/dist/esm/vega-signature-capture.entry.js +24 -28
- package/dist/esm/vega-skeleton.entry.js +1 -1
- package/dist/esm/vega-slot-container.entry.js +1 -1
- package/dist/esm/vega-stepper.entry.js +18 -16
- package/dist/esm/vega-tab-group_2.entry.js +11 -10
- package/dist/esm/vega-table_11.entry.js +28 -29
- package/dist/esm/vega-text.entry.js +4 -3
- package/dist/esm/vega-textarea.entry.js +18 -16
- package/dist/esm/vega-time-picker_2.entry.js +26 -32
- package/dist/esm/vega-toggle-switch.entry.js +15 -12
- package/dist/esm/vega-tooltip_2.entry.js +18 -29
- package/dist/esm/vega.js +27 -24
- package/dist/esm/{index-51a7da7f.js → wait-for-component-did-render-b08ef07b.js} +3 -13
- package/dist/sri/vega-sri-manifest.json +415 -403
- package/dist/types/components/vega-app-footer/types.d.ts +18 -0
- package/dist/types/components/vega-app-header-button/types.d.ts +31 -0
- package/dist/types/components/vega-app-header-button/vega-app-header-button.d.ts +2 -0
- package/dist/types/components/vega-banner/types.d.ts +9 -0
- package/dist/types/components/vega-box/interface.d.ts +46 -0
- package/dist/types/components/vega-breadcrumb/types.d.ts +28 -0
- package/dist/types/components/vega-button/types.d.ts +12 -0
- package/dist/types/components/vega-button-circle/types.d.ts +9 -0
- package/dist/types/components/vega-button-group/types.d.ts +48 -0
- package/dist/types/components/vega-button-link/types.d.ts +3 -0
- package/dist/types/components/vega-calendar/types.d.ts +189 -0
- package/dist/types/components/vega-calendar/vega-calendar-event-preview/types.d.ts +6 -0
- package/dist/types/components/vega-chart/vega-bar-chart/types.d.ts +3 -0
- package/dist/types/components/vega-chip/types.d.ts +12 -0
- package/dist/types/components/vega-code-block/slimmers/controllers/prism-code-highlight-parse-controller.d.ts +2 -10
- package/dist/types/components/vega-combo-box/types.d.ts +6 -0
- package/dist/types/components/vega-date-picker/types.d.ts +39 -0
- package/dist/types/components/vega-dialog/types.d.ts +5 -0
- package/dist/types/components/vega-divider/interface.d.ts +18 -0
- package/dist/types/components/vega-dropdown/types.d.ts +30 -0
- package/dist/types/components/vega-dropdown/vega-dropdown-item/types.d.ts +9 -1
- package/dist/types/components/vega-field-error/types.d.ts +12 -0
- package/dist/types/components/vega-field-label/types.d.ts +16 -0
- package/dist/types/components/vega-file-uploader/types.d.ts +12 -0
- package/dist/types/components/vega-font/types.d.ts +3 -0
- package/dist/types/components/vega-form/types.d.ts +45 -0
- package/dist/types/components/vega-image-uploader/types.d.ts +33 -1
- package/dist/types/components/vega-input/types.d.ts +31 -0
- package/dist/types/components/vega-input-phone-number/types.d.ts +15 -0
- package/dist/types/components/vega-input-range/types.d.ts +9 -0
- package/dist/types/components/vega-input-select/types.d.ts +45 -0
- package/dist/types/components/vega-item-toggle/types.d.ts +21 -0
- package/dist/types/components/vega-loading-indicator/types.d.ts +3 -0
- package/dist/types/components/vega-modal/types.d.ts +9 -0
- package/dist/types/components/vega-nav/interface.d.ts +108 -0
- package/dist/types/components/vega-page-notification/types.d.ts +15 -0
- package/dist/types/components/vega-pagination/types.d.ts +11 -0
- package/dist/types/components/vega-progress-tracker/slimmers/controllers/dto/internal-progress-tracker-step.d.ts +16 -4
- package/dist/types/components/vega-progress-tracker/type.d.ts +8 -0
- package/dist/types/components/vega-progress-tracker/vega-progress-tracker-step/vega-progress-tracker-step.d.ts +6 -0
- package/dist/types/components/vega-progress-tracker/vega-progress-tracker.d.ts +2 -2
- package/dist/types/components/vega-rich-text-editor/dto/blocks/html-block.d.ts +10 -0
- package/dist/types/components/vega-rich-text-editor/interface.d.ts +473 -2
- package/dist/types/components/vega-rich-text-editor/slimmers/controllers/html-cleaner/html-content-cleaner-processor.interface.d.ts +13 -0
- package/dist/types/components/vega-rich-text-editor/slimmers/controllers/html-cleaner/html-content-cleaner.d.ts +35 -0
- package/dist/types/components/vega-rich-text-editor/slimmers/controllers/html-cleaner/index.d.ts +4 -0
- package/dist/types/components/vega-rich-text-editor/slimmers/controllers/html-cleaner/processors/remove-whitespace-after-opening-tag-processor.d.ts +19 -0
- package/dist/types/components/vega-rich-text-editor/slimmers/controllers/html-cleaner/processors/remove-whitespace-before-closing-tag-processor.d.ts +19 -0
- package/dist/types/components/vega-rich-text-editor/slimmers/controllers/html-cleaner/processors/remove-whitespace-between-tags-processor.d.ts +59 -0
- package/dist/types/components/vega-rich-text-editor/test/html-cleaner/html-content-cleaner.test.d.ts +1 -0
- package/dist/types/components/vega-rich-text-editor/test/html-cleaner/remove-whitespace-after-opening-tag-processor.test.d.ts +1 -0
- package/dist/types/components/vega-rich-text-editor/test/html-cleaner/remove-whitespace-before-closing-tag-processor.test.d.ts +1 -0
- package/dist/types/components/vega-rich-text-editor/test/html-cleaner/remove-whitespace-between-tags-processor.test.d.ts +1 -0
- package/dist/types/components/vega-rich-text-editor/vega-rich-text-image-editor/types.d.ts +24 -0
- package/dist/types/components/vega-rich-text-editor/vega-rich-text-link-editor/types.d.ts +24 -0
- package/dist/types/components/vega-segment-control/types.d.ts +18 -0
- package/dist/types/components/vega-selection-chip/interface.d.ts +12 -0
- package/dist/types/components/vega-selection-chip/vega-selection-chip-group/interface.d.ts +4 -0
- package/dist/types/components/vega-selection-tile/interface.d.ts +9 -0
- package/dist/types/components/vega-sidenav/types.d.ts +51 -0
- package/dist/types/components/vega-signature-capture/types.d.ts +29 -2
- package/dist/types/components/vega-skeleton/interface.d.ts +6 -0
- package/dist/types/components/vega-tab-group/types.d.ts +36 -0
- package/dist/types/components/vega-table/interface.d.ts +237 -20
- package/dist/types/components/vega-table/vega-table-expand-row/types.d.ts +6 -0
- package/dist/types/components/vega-table/vega-table-foot/types.d.ts +9 -0
- package/dist/types/components/vega-table/vega-table-foot-row/types.d.ts +9 -0
- package/dist/types/components/vega-table/vega-table-head/types.d.ts +9 -0
- package/dist/types/components/vega-table/vega-table-head-row/types.d.ts +12 -0
- package/dist/types/components/vega-table/vega-table-row/types.d.ts +18 -0
- package/dist/types/components/vega-text/types.d.ts +6 -0
- package/dist/types/components/vega-time-picker/types.d.ts +33 -0
- package/dist/types/components/vega-virtual-scroll/types.d.ts +30 -1
- package/dist/types/components.d.ts +13 -3
- package/dist/types/helpers/code-format/code-formatter.d.ts +14 -0
- package/dist/types/helpers/common/index.d.ts +2 -15
- package/dist/types/helpers/common/wait-for-component-did-render.d.ts +8 -0
- package/dist/types/helpers/common/wait-for-vega-handler.d.ts +6 -15
- package/dist/types/helpers/feature-control/feature-flag.d.ts +2 -1
- package/dist/types/helpers/public-api.d.ts +0 -2
- package/dist/types/helpers/slimmers/mutation-observer/aria-attributes-value-mapper.d.ts +44 -0
- package/dist/types/helpers/slimmers/mutation-observer/test/aria-attributes-value-mapper.test.d.ts +1 -0
- package/dist/types/helpers/slimmers/position-calculation/base-position-calculation-strategy.d.ts +57 -48
- package/dist/types/helpers/slimmers/position-calculation/position-calculation-controller.d.ts +5 -0
- package/dist/types/helpers/slimmers/position-calculation/screen-position-calculation-strategy.d.ts +41 -1
- package/dist/types/helpers/slimmers/position-calculation/screen-scroll-position-update.d.ts +39 -0
- package/dist/types/helpers/ui/element-appender.d.ts +0 -1
- package/dist/types/index.d.ts +2 -0
- package/dist/types/polyfill/prism/index.d.ts +3 -0
- package/dist/types/polyfill/prism/languages/css.d.ts +6 -0
- package/dist/types/polyfill/prism/languages/javascript.d.ts +7 -0
- package/dist/types/polyfill/prism/languages/jsx.d.ts +7 -0
- package/dist/types/polyfill/prism/languages/language-registry.d.ts +8 -0
- package/dist/types/polyfill/prism/languages/markup.d.ts +6 -0
- package/dist/types/polyfill/prism/languages/tsx.d.ts +7 -0
- package/dist/types/polyfill/prism/languages/typescript.d.ts +2 -0
- package/dist/types/polyfill/prism/test/css.test.d.ts +1 -0
- package/dist/types/polyfill/prism/test/javascript.test.d.ts +1 -0
- package/dist/types/polyfill/prism/test/jsx.test.d.ts +1 -0
- package/dist/types/polyfill/prism/test/language-registry.test.d.ts +1 -0
- package/dist/types/polyfill/prism/test/markup.test.d.ts +1 -0
- package/dist/types/polyfill/prism/test/test-utils.d.ts +10 -0
- package/dist/types/polyfill/prism/test/tokenizer.test.d.ts +1 -0
- package/dist/types/polyfill/prism/test/tsx.test.d.ts +1 -0
- package/dist/types/polyfill/prism/test/typescript.test.d.ts +1 -0
- package/dist/types/polyfill/prism/tokenizer.d.ts +17 -0
- package/dist/types/polyfill/prism/types.d.ts +25 -0
- package/dist/types/polyfill/tinycolor/tinycolor-polyfill.d.ts +149 -0
- package/dist/types/polyfill/tinycolor/tinycolor-polyfill.test.d.ts +1 -0
- package/dist/types/types/components.type.d.ts +4 -1
- package/dist/types/types/design-token.type.d.ts +36 -0
- package/dist/types/types/flag.type.d.ts +3 -0
- package/dist/types/types/general.d.ts +12 -0
- package/dist/types/types/ui.type.d.ts +372 -0
- package/dist/types/types/vega-chart.d.ts +281 -2
- package/dist/types/utils/e2e-utils.d.ts +2 -0
- package/dist/types/utils/sanitize/constants/tag-sets.d.ts +6 -0
- package/dist/types/utils/sanitize/core/html-sanitizer.d.ts +22 -0
- package/dist/types/utils/sanitize/core/sanitize-strategy.d.ts +27 -0
- package/dist/types/utils/sanitize/core/types.d.ts +13 -0
- package/dist/types/utils/sanitize/index.d.ts +12 -0
- package/dist/types/utils/sanitize/strategies/empty-sanitize-strategy.d.ts +14 -0
- package/dist/types/utils/sanitize/strategies/index.d.ts +3 -0
- package/dist/types/utils/sanitize/strategies/label-sanitize-strategy.d.ts +10 -0
- package/dist/types/utils/sanitize/strategies/style-sanitize-strategy.d.ts +24 -0
- package/dist/types/utils/sanitize/test/empty-strategy.test.d.ts +1 -0
- package/dist/types/utils/sanitize/test/html-sanitizer.test.d.ts +1 -0
- package/dist/types/utils/sanitize/test/label-strategy.test.d.ts +1 -0
- package/dist/types/utils/sanitize/test/sanitize-strategy.test.d.ts +1 -0
- package/dist/types/utils/sanitize/test/sanitize.test.d.ts +1 -0
- package/dist/types/utils/sanitize/test/serialize-fragment.test.d.ts +1 -0
- package/dist/types/utils/sanitize/test/style-strategy.test.d.ts +1 -0
- package/dist/types/utils/sanitize/utils/serialize-fragment.d.ts +12 -0
- package/dist/vega/index.esm.js +1 -1
- package/dist/vega/p-01d58eb8.entry.js +1 -0
- package/dist/vega/p-021d4ae4.js +1 -0
- package/dist/vega/p-02a7d60c.entry.js +1 -0
- package/dist/vega/{p-66fa700b.js → p-02c9796a.js} +1 -1
- package/dist/vega/p-033c31d8.entry.js +1 -0
- package/dist/vega/{p-e77a83e4.js → p-07cb0243.js} +1 -1
- package/dist/vega/p-087ea379.entry.js +1 -0
- package/dist/vega/{p-e5af5a4d.entry.js → p-0b4880bd.entry.js} +1 -1
- package/dist/vega/{p-920719ad.js → p-0e679d8c.js} +1 -1
- package/dist/vega/{p-c9b6b5a9.js → p-10734a00.js} +1 -1
- package/dist/vega/p-154f9cf7.entry.js +1 -0
- package/dist/vega/p-179aad4f.entry.js +1 -0
- package/dist/vega/p-1a3236e7.entry.js +1 -0
- package/dist/vega/p-1f3cd061.entry.js +1 -0
- package/dist/vega/p-1f5e35dc.entry.js +1 -0
- package/dist/vega/p-242fbcad.entry.js +1 -0
- package/dist/vega/p-249df6d2.entry.js +1 -0
- package/dist/vega/p-28ad1864.entry.js +1 -0
- package/dist/vega/p-2a10e2e5.js +1 -0
- package/dist/vega/p-2b49686d.entry.js +1 -0
- package/dist/vega/p-2ba78982.entry.js +1 -0
- package/dist/vega/p-2bb5a232.js +1 -0
- package/dist/vega/{p-e9b86dac.entry.js → p-2c1a85dd.entry.js} +1 -1
- package/dist/vega/p-2cc9d126.entry.js +1 -0
- package/dist/vega/p-2d69632d.js +1 -0
- package/dist/vega/p-2e91295d.entry.js +1 -0
- package/dist/vega/p-31ac7386.js +1 -0
- package/dist/vega/p-32033e7a.js +1 -0
- package/dist/vega/p-32183637.entry.js +1 -0
- package/dist/vega/p-3244c605.entry.js +1 -0
- package/dist/vega/p-32faa460.entry.js +1 -0
- package/dist/vega/p-33f9ad94.entry.js +1 -0
- package/dist/vega/{p-4897bedd.entry.js → p-358b4a06.entry.js} +1 -1
- package/dist/vega/p-3afc025e.entry.js +1 -0
- package/dist/vega/p-3d8122ab.entry.js +1 -0
- package/dist/vega/{p-ea04a387.entry.js → p-3f3c771a.entry.js} +1 -1
- package/dist/vega/{p-1f83cebf.js → p-415ffa35.js} +1 -1
- package/dist/vega/{p-d849e0f5.js → p-4415ad28.js} +1 -1
- package/dist/vega/{p-ce1a2982.js → p-464559e3.js} +1 -1
- package/dist/vega/p-49845a91.js +1 -0
- package/dist/vega/{p-e16b3adf.js → p-4bffdb28.js} +1 -1
- package/dist/vega/p-4e017458.entry.js +1 -0
- package/dist/vega/p-4e4a0228.entry.js +1 -0
- package/dist/vega/{p-a2aeb646.js → p-4ea30592.js} +1 -1
- package/dist/vega/{p-0b38a01f.entry.js → p-51fcb07f.entry.js} +1 -1
- package/dist/vega/p-57927b10.entry.js +1 -0
- package/dist/vega/p-5831d6d3.entry.js +1 -0
- package/dist/vega/p-593e0f80.js +1 -0
- package/dist/vega/p-5a25014f.js +1 -0
- package/dist/vega/p-5eb7f382.js +1 -0
- package/dist/vega/p-5f377954.js +1 -1
- package/dist/vega/p-644f701a.js +1 -0
- package/dist/vega/p-6a62e476.entry.js +1 -0
- package/dist/vega/{p-75f981ce.js → p-6b6f0fb4.js} +1 -1
- package/dist/vega/p-6d219c44.entry.js +1 -0
- package/dist/vega/p-6d60b66a.entry.js +1 -0
- package/dist/vega/{p-ad2055f4.entry.js → p-6dcdb580.entry.js} +1 -1
- package/dist/vega/{p-c8f1b9d5.js → p-7181861a.js} +1 -1
- package/dist/vega/p-76181a70.entry.js +1 -0
- package/dist/vega/p-781fd6e0.js +1 -0
- package/dist/vega/p-7958614a.entry.js +1 -0
- package/dist/vega/{p-5b71c85e.js → p-7c39ce96.js} +1 -1
- package/dist/vega/p-7d7aaff9.entry.js +1 -0
- package/dist/vega/{p-4dd6554e.entry.js → p-7f46cc1e.entry.js} +1 -1
- package/dist/vega/{p-badad9ed.js → p-81b044b9.js} +1 -1
- package/dist/vega/p-8950987b.entry.js +1 -0
- package/dist/vega/p-89f2e16d.entry.js +1 -0
- package/dist/vega/p-8ac2d165.js +1 -0
- package/dist/vega/p-8b153acd.entry.js +1 -0
- package/dist/vega/p-8b5d3a52.js +1 -0
- package/dist/vega/{p-fff13ed1.entry.js → p-8b891f36.entry.js} +1 -1
- package/dist/vega/p-8dbdd609.entry.js +1 -0
- package/dist/vega/{p-dd11f735.js → p-9339c6c4.js} +1 -1
- package/dist/vega/p-94a77fbe.entry.js +1 -0
- package/dist/vega/p-95528b47.js +1 -0
- package/dist/vega/p-9a137bab.entry.js +1 -0
- package/dist/vega/{p-6f8be8ea.js → p-a0b66c25.js} +1 -1
- package/dist/vega/{p-0bb3be0b.entry.js → p-a13a73fa.entry.js} +1 -1
- package/dist/vega/p-a560d8c5.entry.js +1 -0
- package/dist/vega/{p-d0e31633.js → p-a786259a.js} +1 -1
- package/dist/vega/p-a7a8a4eb.entry.js +1 -0
- package/dist/vega/p-a8792e3d.js +1 -0
- package/dist/vega/{p-60851f9d.js → p-aa1174dc.js} +1 -1
- package/dist/vega/p-ab834f06.js +1 -0
- package/dist/vega/p-b136ebba.entry.js +1 -0
- package/dist/vega/p-b201f379.js +1 -0
- package/dist/vega/p-b256b7a4.js +1 -0
- package/dist/vega/p-b366deff.entry.js +1 -0
- package/dist/vega/p-b597393b.entry.js +1 -0
- package/dist/vega/p-b7f3221f.js +1 -0
- package/dist/vega/p-bb5e0192.entry.js +1 -0
- package/dist/vega/p-be1a210b.js +1 -0
- package/dist/vega/p-bebfbe95.entry.js +1 -0
- package/dist/vega/p-bf6fc19f.entry.js +1 -0
- package/dist/vega/p-c1d13eec.entry.js +1 -0
- package/dist/vega/p-c29068fb.entry.js +1 -0
- package/dist/vega/p-c3d2f316.js +1 -0
- package/dist/vega/{p-671afda4.entry.js → p-c72e08c6.entry.js} +1 -1
- package/dist/vega/p-c801c85d.js +1 -0
- package/dist/vega/p-c8feb644.entry.js +1 -0
- package/dist/vega/p-ca5898dc.entry.js +1 -0
- package/dist/vega/p-d555f677.entry.js +1 -0
- package/dist/vega/p-d64fab3d.js +1 -0
- package/dist/vega/p-d6dbbe61.entry.js +1 -0
- package/dist/vega/p-d7a78c5e.entry.js +1 -0
- package/dist/vega/p-d8fadcdc.entry.js +1 -0
- package/dist/vega/p-dad3ba5f.js +1 -0
- package/dist/vega/p-dd3a94f4.entry.js +1 -0
- package/dist/vega/p-e1431c14.entry.js +1 -0
- package/dist/vega/p-e1fbfd20.js +1 -0
- package/dist/vega/p-e2af0e24.entry.js +1 -0
- package/dist/vega/{p-521d1d07.js → p-e52890db.js} +1 -1
- package/dist/vega/{p-1298b126.js → p-e632475e.js} +1 -1
- package/dist/vega/p-e6adf829.js +1 -0
- package/dist/vega/{p-77edf50c.js → p-e827d56d.js} +1 -1
- package/dist/vega/p-e8775a56.entry.js +1 -0
- package/dist/vega/p-e89e3ede.entry.js +1 -0
- package/dist/vega/p-eda988d5.entry.js +1 -0
- package/dist/vega/p-f05b8f76.entry.js +1 -0
- package/dist/vega/p-f0e828d8.js +1 -0
- package/dist/vega/p-f14a5eae.entry.js +1 -0
- package/dist/vega/p-f2b0b58a.js +1 -0
- package/dist/vega/p-f3d0f2dc.js +1 -0
- package/dist/vega/{p-5910be31.entry.js → p-f5bafc45.entry.js} +1 -1
- package/dist/vega/p-fc1fa345.js +1 -0
- package/dist/vega/p-fd7ddd64.entry.js +1 -0
- package/dist/vega/vega.esm.js +1 -1
- package/package.json +3 -5
- package/dist/cjs/_commonjsHelpers-537d719a.js +0 -20
- package/dist/cjs/language-extension-38e4905e.js +0 -210
- package/dist/cjs/sanitize-fb222510.js +0 -131
- package/dist/cjs/wait-for-vega-handler-5469ff80.js +0 -63
- package/dist/collection/utils/sanitize.js +0 -126
- package/dist/collection/utils/test/sanitize.test.js +0 -65
- package/dist/esm/_commonjsHelpers-9943807e.js +0 -17
- package/dist/esm/dom-node-subject-observer-factory-064ee2b2.js +0 -250
- package/dist/esm/language-extension-c4ff21dd.js +0 -207
- package/dist/esm/sanitize-fd0cb40d.js +0 -129
- package/dist/esm/wait-for-vega-handler-c2c07ac3.js +0 -61
- package/dist/types/utils/sanitize.d.ts +0 -71
- package/dist/vega/p-011b94b1.entry.js +0 -1
- package/dist/vega/p-06aaced4.js +0 -1
- package/dist/vega/p-07d3df01.entry.js +0 -1
- package/dist/vega/p-08f18b22.entry.js +0 -1
- package/dist/vega/p-10ac8b57.js +0 -1
- package/dist/vega/p-112455b1.js +0 -1
- package/dist/vega/p-17c55205.entry.js +0 -1
- package/dist/vega/p-1e0d8228.entry.js +0 -1
- package/dist/vega/p-20ad42be.js +0 -1
- package/dist/vega/p-22b2841f.entry.js +0 -1
- package/dist/vega/p-22c5d83b.js +0 -1
- package/dist/vega/p-34246870.entry.js +0 -1
- package/dist/vega/p-35bf5789.entry.js +0 -1
- package/dist/vega/p-3bbc0c7d.entry.js +0 -1
- package/dist/vega/p-3bf66be2.js +0 -1
- package/dist/vega/p-3c5a28e4.entry.js +0 -1
- package/dist/vega/p-3cfd8616.entry.js +0 -1
- package/dist/vega/p-3e5f362f.js +0 -1
- package/dist/vega/p-43f585f7.entry.js +0 -1
- package/dist/vega/p-476a173a.js +0 -1
- package/dist/vega/p-4a537391.entry.js +0 -1
- package/dist/vega/p-509eb52e.entry.js +0 -1
- package/dist/vega/p-50ab977c.entry.js +0 -1
- package/dist/vega/p-53a694d1.entry.js +0 -1
- package/dist/vega/p-56e97df8.js +0 -1
- package/dist/vega/p-5a27084e.entry.js +0 -1
- package/dist/vega/p-5d676a94.js +0 -1
- package/dist/vega/p-5df9a856.entry.js +0 -1
- package/dist/vega/p-5ea2e43c.entry.js +0 -1
- package/dist/vega/p-60274fb1.js +0 -1
- package/dist/vega/p-60da99c6.entry.js +0 -1
- package/dist/vega/p-67f18b9e.entry.js +0 -1
- package/dist/vega/p-67fcf6f2.entry.js +0 -9
- package/dist/vega/p-6a2205a1.entry.js +0 -1
- package/dist/vega/p-6a4277df.entry.js +0 -1
- package/dist/vega/p-6e136980.js +0 -1
- package/dist/vega/p-6f239144.entry.js +0 -1
- package/dist/vega/p-7045e84c.entry.js +0 -1
- package/dist/vega/p-7288f8c4.js +0 -1
- package/dist/vega/p-747d6afc.entry.js +0 -1
- package/dist/vega/p-75651f32.entry.js +0 -1
- package/dist/vega/p-7ae55fd5.js +0 -1
- package/dist/vega/p-81134e9e.entry.js +0 -1
- package/dist/vega/p-87238c4c.entry.js +0 -1
- package/dist/vega/p-8a887843.entry.js +0 -1
- package/dist/vega/p-8c0eb12f.entry.js +0 -1
- package/dist/vega/p-8c9ea6f4.js +0 -1
- package/dist/vega/p-8d0ca805.js +0 -1
- package/dist/vega/p-8e42a14c.entry.js +0 -1
- package/dist/vega/p-91ec2e30.js +0 -1
- package/dist/vega/p-94394df7.entry.js +0 -1
- package/dist/vega/p-991008a8.entry.js +0 -1
- package/dist/vega/p-9fd503e9.entry.js +0 -1
- package/dist/vega/p-a20854d6.entry.js +0 -1
- package/dist/vega/p-a4670e23.js +0 -1
- package/dist/vega/p-a530797f.entry.js +0 -1
- package/dist/vega/p-a5bd3c15.entry.js +0 -1
- package/dist/vega/p-a65941d0.entry.js +0 -1
- package/dist/vega/p-a85ad369.entry.js +0 -1
- package/dist/vega/p-a86010f7.entry.js +0 -1
- package/dist/vega/p-aa10eeb3.entry.js +0 -1
- package/dist/vega/p-ab2f35af.entry.js +0 -1
- package/dist/vega/p-ac4563d7.js +0 -1
- package/dist/vega/p-aedf7146.js +0 -1
- package/dist/vega/p-b4ea3fad.js +0 -1
- package/dist/vega/p-bb4a558d.entry.js +0 -1
- package/dist/vega/p-bb8339ed.entry.js +0 -1
- package/dist/vega/p-be930e85.entry.js +0 -1
- package/dist/vega/p-bf2bd6d0.entry.js +0 -1
- package/dist/vega/p-c379a5a5.entry.js +0 -1
- package/dist/vega/p-c616c592.js +0 -1
- package/dist/vega/p-ca3472c1.entry.js +0 -1
- package/dist/vega/p-cc43bffb.js +0 -1
- package/dist/vega/p-d6ed3d76.entry.js +0 -1
- package/dist/vega/p-db8cdba6.js +0 -1
- package/dist/vega/p-e1610196.entry.js +0 -1
- package/dist/vega/p-e87b0b4a.entry.js +0 -1
- package/dist/vega/p-e9c4fd24.entry.js +0 -1
- package/dist/vega/p-eb60cfe1.entry.js +0 -1
- package/dist/vega/p-ef001c70.entry.js +0 -1
- package/dist/vega/p-ef9cbad1.js +0 -1
- package/dist/vega/p-f383c856.js +0 -1
- package/dist/vega/p-f3c3ff26.entry.js +0 -1
- package/dist/vega/p-f52a0155.entry.js +0 -1
- package/dist/vega/p-f69f84a7.js +0 -1
- package/dist/vega/p-f8f7cf48.entry.js +0 -1
- package/dist/vega/p-fba14ad2.entry.js +0 -1
- package/dist/vega/p-fbd64f9c.entry.js +0 -1
- package/dist/vega/p-fdc270b8.entry.js +0 -1
- package/dist/vega/p-fe12eff6.js +0 -1
- package/dist/vega/p-ffbff9b5.entry.js +0 -1
- /package/dist/{types/utils/test/sanitize.test.d.ts → collection/components/vega-rich-text-editor/slimmers/controllers/html-cleaner/html-content-cleaner-processor.interface.js} +0 -0
- /package/dist/vega/{p-d9671d27.js → p-6c170474.js} +0 -0
package/dist/collection/helpers/slimmers/position-calculation/base-position-calculation-strategy.js
CHANGED
|
@@ -7,6 +7,17 @@ import ResponsiveFormatFacade from '../../formatter/responsive-map-formatter/res
|
|
|
7
7
|
* calculate position
|
|
8
8
|
*/
|
|
9
9
|
export class BasePositionCalculationStrategy extends VegaSlimmer {
|
|
10
|
+
/**
|
|
11
|
+
* Whether the controller should adjust/recompute position at this time.
|
|
12
|
+
*
|
|
13
|
+
* This hook allows strategies to avoid unnecessary work (for example, on scroll) by deciding
|
|
14
|
+
* whether a re-position is required.
|
|
15
|
+
*
|
|
16
|
+
* @returns {boolean} True when the controller should proceed with width/height/position adjustments.
|
|
17
|
+
*/
|
|
18
|
+
shouldAdjustPosition() {
|
|
19
|
+
return true;
|
|
20
|
+
}
|
|
10
21
|
/**
|
|
11
22
|
* Get the position box.
|
|
12
23
|
*
|
|
@@ -32,121 +43,46 @@ export class BasePositionCalculationStrategy extends VegaSlimmer {
|
|
|
32
43
|
return positionBox;
|
|
33
44
|
}
|
|
34
45
|
/**
|
|
35
|
-
*
|
|
36
|
-
*
|
|
37
|
-
* The function takes an element as an argument and returns an object with three properties: width,
|
|
38
|
-
* height, and top.
|
|
39
|
-
*
|
|
40
|
-
* Note: If element is hide, we should temporary change it to `block` to get the bounding client rect of element,
|
|
41
|
-
* After do that, this element will change to origin `hide`, if not, it will be contained in the calculate of `document.documentElement.scrollHeight`
|
|
42
|
-
*
|
|
43
|
-
* @returns {ElementBoundBox} An object with the width, height, and top properties of the element.
|
|
44
|
-
*/
|
|
45
|
-
getElementBoundBox() {
|
|
46
|
-
const element = this.showConfig.appendableElement;
|
|
47
|
-
const isElementHide = element.classList.contains('vega-force-hidden');
|
|
48
|
-
if (isElementHide)
|
|
49
|
-
element.classList.remove('vega-force-hidden');
|
|
50
|
-
const elementRect = element.getBoundingClientRect();
|
|
51
|
-
if (isElementHide)
|
|
52
|
-
element.classList.add('vega-force-hidden');
|
|
53
|
-
return {
|
|
54
|
-
width: elementRect.width,
|
|
55
|
-
height: elementRect.height,
|
|
56
|
-
left: elementRect.left,
|
|
57
|
-
top: elementRect.top,
|
|
58
|
-
};
|
|
59
|
-
}
|
|
60
|
-
/**
|
|
61
|
-
* It takes a placement string or array of placements and returns an array of placements
|
|
62
|
-
* if given placement is single, we should completion the placements with the default {@link Placements}
|
|
63
|
-
* and make given placement as default.
|
|
64
|
-
* if given placement is array, we should use it directly, even it partial of {@link Placements}.
|
|
65
|
-
* if not placement give. we should use {@link Placements}.
|
|
66
|
-
*
|
|
67
|
-
* @returns {PlacementType[]} ordered placements.
|
|
68
|
-
*/
|
|
69
|
-
getPlacements() {
|
|
70
|
-
const placement = this.showConfig.placement;
|
|
71
|
-
if (typeof placement === 'string') {
|
|
72
|
-
const partial = Placements.filter((direction) => direction !== placement);
|
|
73
|
-
return [placement, ...partial];
|
|
74
|
-
}
|
|
75
|
-
else if (Array.isArray(placement)) {
|
|
76
|
-
return placement;
|
|
77
|
-
}
|
|
78
|
-
else {
|
|
79
|
-
return [...Placements];
|
|
80
|
-
}
|
|
81
|
-
}
|
|
82
|
-
/**
|
|
83
|
-
* It returns acceptable alignments.
|
|
84
|
-
*
|
|
85
|
-
* @returns {PositionAlignmentType[]} acceptable alignments
|
|
86
|
-
*/
|
|
87
|
-
getAlignments() {
|
|
88
|
-
const alignment = this.showConfig.alignment;
|
|
89
|
-
if (typeof alignment === 'string') {
|
|
90
|
-
const partial = Alignments.filter((item) => item !== alignment);
|
|
91
|
-
return [alignment, ...partial];
|
|
92
|
-
}
|
|
93
|
-
else if (Array.isArray(alignment)) {
|
|
94
|
-
return alignment;
|
|
95
|
-
}
|
|
96
|
-
else {
|
|
97
|
-
return [...Alignments];
|
|
98
|
-
}
|
|
99
|
-
}
|
|
100
|
-
/**
|
|
101
|
-
* It takes a placement, a target box, and a element box, and returns an element box
|
|
46
|
+
* Whether the alignment space is enough
|
|
102
47
|
*
|
|
103
|
-
* @param {
|
|
48
|
+
* @param {ElementScrollDimension} containerBox - The bounding box of the container element.
|
|
104
49
|
* @param {ElementBoundBox} targetBox - The position of the target element.
|
|
105
|
-
* @param {
|
|
106
|
-
* @param {
|
|
107
|
-
* @
|
|
108
|
-
|
|
109
|
-
calculatePosition(elementBox, targetBox, placement, alignment) {
|
|
110
|
-
return {
|
|
111
|
-
top: this.calculateTop(elementBox, targetBox, placement, alignment),
|
|
112
|
-
left: this.calculateLeft(elementBox, targetBox, placement, alignment),
|
|
113
|
-
};
|
|
114
|
-
}
|
|
115
|
-
/**
|
|
116
|
-
* It returns the translocation of the element relative to the target element
|
|
117
|
-
*
|
|
118
|
-
* @param {PlacementType} placement - The suitable placement of the element.
|
|
119
|
-
* @returns {TranslocationType} A translocation object with X and Y properties.
|
|
50
|
+
* @param {ElementBoundBox} elementBox - The box of the element that we're trying to position.
|
|
51
|
+
* @param {PlacementType} placement - The placement of the element relative to the target.
|
|
52
|
+
* @param {PlacementType} alignment - The alignment of the element relative to the target.
|
|
53
|
+
* @returns {boolean} return true if it has enough space, otherwise false
|
|
120
54
|
*/
|
|
121
|
-
|
|
122
|
-
|
|
123
|
-
|
|
124
|
-
|
|
125
|
-
|
|
126
|
-
|
|
127
|
-
|
|
128
|
-
|
|
129
|
-
|
|
130
|
-
|
|
131
|
-
|
|
132
|
-
|
|
133
|
-
|
|
134
|
-
(originPlacement &&
|
|
135
|
-
['top', 'bottom'].includes(originPlacement) &&
|
|
136
|
-
['left', 'right'].includes(placement))) {
|
|
137
|
-
xValue = translocation.Y;
|
|
138
|
-
yValue = translocation.X;
|
|
139
|
-
}
|
|
140
|
-
if (['bottom', 'top'].includes(placement)) {
|
|
141
|
-
result.Y = placement === 'top' ? -yValue : yValue;
|
|
142
|
-
result.X = xValue;
|
|
55
|
+
hasEnoughAlignmentSpace(containerBox, targetBox, elementBox, placement, alignment) {
|
|
56
|
+
if (['top', 'bottom'].includes(placement)) {
|
|
57
|
+
switch (alignment) {
|
|
58
|
+
case 'start': {
|
|
59
|
+
return targetBox.left + elementBox.width <= containerBox.width;
|
|
60
|
+
}
|
|
61
|
+
case 'center': {
|
|
62
|
+
return (targetBox.left >= (elementBox.width - targetBox.width) / 2 &&
|
|
63
|
+
targetBox.left + targetBox.width / 2 + elementBox.width / 2 <= containerBox.width);
|
|
64
|
+
}
|
|
65
|
+
case 'end': {
|
|
66
|
+
return targetBox.left + targetBox.width >= elementBox.width;
|
|
67
|
+
}
|
|
143
68
|
}
|
|
144
|
-
|
|
145
|
-
|
|
146
|
-
|
|
69
|
+
}
|
|
70
|
+
if (['right', 'left'].includes(placement)) {
|
|
71
|
+
switch (alignment) {
|
|
72
|
+
case 'start': {
|
|
73
|
+
return targetBox.top + elementBox.height <= containerBox.height;
|
|
74
|
+
}
|
|
75
|
+
case 'center': {
|
|
76
|
+
return (targetBox.top >= (elementBox.height - targetBox.height) / 2 &&
|
|
77
|
+
targetBox.top + targetBox.height / 2 + elementBox.height / 2 <= containerBox.height);
|
|
78
|
+
}
|
|
79
|
+
case 'end': {
|
|
80
|
+
return targetBox.top + targetBox.height >= elementBox.height;
|
|
81
|
+
}
|
|
147
82
|
}
|
|
148
83
|
}
|
|
149
|
-
|
|
84
|
+
/* istanbul ignore next */
|
|
85
|
+
return false;
|
|
150
86
|
}
|
|
151
87
|
/**
|
|
152
88
|
* Calculate the left position of the element
|
|
@@ -216,6 +152,24 @@ export class BasePositionCalculationStrategy extends VegaSlimmer {
|
|
|
216
152
|
throw new Error(`Unexpected placement: ${placement}. Expected values are top, bottom, left, or right.`);
|
|
217
153
|
}
|
|
218
154
|
}
|
|
155
|
+
/**
|
|
156
|
+
* It returns acceptable alignments.
|
|
157
|
+
*
|
|
158
|
+
* @returns {PositionAlignmentType[]} acceptable alignments
|
|
159
|
+
*/
|
|
160
|
+
getAlignments() {
|
|
161
|
+
const alignment = this.showConfig.alignment;
|
|
162
|
+
if (typeof alignment === 'string') {
|
|
163
|
+
const partial = Alignments.filter((item) => item !== alignment);
|
|
164
|
+
return [alignment, ...partial];
|
|
165
|
+
}
|
|
166
|
+
else if (Array.isArray(alignment)) {
|
|
167
|
+
return alignment;
|
|
168
|
+
}
|
|
169
|
+
else {
|
|
170
|
+
return [...Alignments];
|
|
171
|
+
}
|
|
172
|
+
}
|
|
219
173
|
/**
|
|
220
174
|
* It takes a list of placements and returns the first placement that has enough space to place the
|
|
221
175
|
* element
|
|
@@ -240,6 +194,105 @@ export class BasePositionCalculationStrategy extends VegaSlimmer {
|
|
|
240
194
|
return defaultPlacement;
|
|
241
195
|
}
|
|
242
196
|
}
|
|
197
|
+
/**
|
|
198
|
+
* "Get the width, height, and top position of an element."
|
|
199
|
+
*
|
|
200
|
+
* The function takes an element as an argument and returns an object with three properties: width,
|
|
201
|
+
* height, and top.
|
|
202
|
+
*
|
|
203
|
+
* Note: If element is hide, we should temporary change it to `block` to get the bounding client rect of element,
|
|
204
|
+
* After do that, this element will change to origin `hide`, if not, it will be contained in the calculate of `document.documentElement.scrollHeight`
|
|
205
|
+
*
|
|
206
|
+
* @returns {ElementBoundBox} An object with the width, height, and top properties of the element.
|
|
207
|
+
*/
|
|
208
|
+
getElementBoundBox() {
|
|
209
|
+
const element = this.showConfig.appendableElement;
|
|
210
|
+
const isElementHide = element.classList.contains('vega-force-hidden');
|
|
211
|
+
if (isElementHide)
|
|
212
|
+
element.classList.remove('vega-force-hidden');
|
|
213
|
+
const elementRect = element.getBoundingClientRect();
|
|
214
|
+
if (isElementHide)
|
|
215
|
+
element.classList.add('vega-force-hidden');
|
|
216
|
+
return {
|
|
217
|
+
width: elementRect.width,
|
|
218
|
+
height: elementRect.height,
|
|
219
|
+
left: elementRect.left,
|
|
220
|
+
top: elementRect.top,
|
|
221
|
+
};
|
|
222
|
+
}
|
|
223
|
+
/**
|
|
224
|
+
* It takes a placement string or array of placements and returns an array of placements
|
|
225
|
+
* if given placement is single, we should completion the placements with the default {@link Placements}
|
|
226
|
+
* and make given placement as default.
|
|
227
|
+
* if given placement is array, we should use it directly, even it partial of {@link Placements}.
|
|
228
|
+
* if not placement give. we should use {@link Placements}.
|
|
229
|
+
*
|
|
230
|
+
* @returns {PlacementType[]} ordered placements.
|
|
231
|
+
*/
|
|
232
|
+
getPlacements() {
|
|
233
|
+
const placement = this.showConfig.placement;
|
|
234
|
+
if (typeof placement === 'string') {
|
|
235
|
+
const partial = Placements.filter((direction) => direction !== placement);
|
|
236
|
+
return [placement, ...partial];
|
|
237
|
+
}
|
|
238
|
+
else if (Array.isArray(placement)) {
|
|
239
|
+
return placement;
|
|
240
|
+
}
|
|
241
|
+
else {
|
|
242
|
+
return [...Placements];
|
|
243
|
+
}
|
|
244
|
+
}
|
|
245
|
+
/**
|
|
246
|
+
* It takes a placement, a target box, and a element box, and returns an element box
|
|
247
|
+
*
|
|
248
|
+
* @param {ElementBoundBox} elementBox - The position of the element element.
|
|
249
|
+
* @param {ElementBoundBox} targetBox - The position of the target element.
|
|
250
|
+
* @param {PlacementType} placement - The placement of the element.
|
|
251
|
+
* @param {PositionAlignmentType} alignment - The alignment of the element
|
|
252
|
+
* @returns {ElementPositionBox} An object with top and left properties.
|
|
253
|
+
*/
|
|
254
|
+
calculatePosition(elementBox, targetBox, placement, alignment) {
|
|
255
|
+
return {
|
|
256
|
+
top: this.calculateTop(elementBox, targetBox, placement, alignment),
|
|
257
|
+
left: this.calculateLeft(elementBox, targetBox, placement, alignment),
|
|
258
|
+
};
|
|
259
|
+
}
|
|
260
|
+
/**
|
|
261
|
+
* It returns the translocation of the element relative to the target element
|
|
262
|
+
*
|
|
263
|
+
* @param {PlacementType} placement - The suitable placement of the element.
|
|
264
|
+
* @returns {TranslocationType} A translocation object with X and Y properties.
|
|
265
|
+
*/
|
|
266
|
+
getTranslocationBox(placement) {
|
|
267
|
+
const originPlacement = Array.isArray(this.showConfig.placement)
|
|
268
|
+
? this.showConfig.placement[0]
|
|
269
|
+
: this.showConfig.placement;
|
|
270
|
+
const translocation = this.getTranslocation();
|
|
271
|
+
const result = { X: 0, Y: 0 };
|
|
272
|
+
if (isTranslocationType(translocation)) {
|
|
273
|
+
let xValue = translocation.X;
|
|
274
|
+
let yValue = translocation.Y;
|
|
275
|
+
// If originPlacement and placement is not in same axis, it should reverse axis.
|
|
276
|
+
if ((originPlacement &&
|
|
277
|
+
['left', 'right'].includes(originPlacement) &&
|
|
278
|
+
['top', 'bottom'].includes(placement)) ||
|
|
279
|
+
(originPlacement &&
|
|
280
|
+
['top', 'bottom'].includes(originPlacement) &&
|
|
281
|
+
['left', 'right'].includes(placement))) {
|
|
282
|
+
xValue = translocation.Y;
|
|
283
|
+
yValue = translocation.X;
|
|
284
|
+
}
|
|
285
|
+
if (['bottom', 'top'].includes(placement)) {
|
|
286
|
+
result.Y = placement === 'top' ? -yValue : yValue;
|
|
287
|
+
result.X = xValue;
|
|
288
|
+
}
|
|
289
|
+
if (['left', 'right'].includes(placement)) {
|
|
290
|
+
result.X = placement === 'left' ? -xValue : xValue;
|
|
291
|
+
result.Y = yValue;
|
|
292
|
+
}
|
|
293
|
+
}
|
|
294
|
+
return result;
|
|
295
|
+
}
|
|
243
296
|
/**
|
|
244
297
|
* It takes a list of alignments and returns the suitable one that has enough space to fit the element
|
|
245
298
|
*
|
|
@@ -264,48 +317,6 @@ export class BasePositionCalculationStrategy extends VegaSlimmer {
|
|
|
264
317
|
return defaultAlignment;
|
|
265
318
|
}
|
|
266
319
|
}
|
|
267
|
-
/**
|
|
268
|
-
* Whether the alignment space is enough
|
|
269
|
-
*
|
|
270
|
-
* @param {ElementScrollDimension} containerBox - The bounding box of the container element.
|
|
271
|
-
* @param {ElementBoundBox} targetBox - The position of the target element.
|
|
272
|
-
* @param {ElementBoundBox} elementBox - The box of the element that we're trying to position.
|
|
273
|
-
* @param {PlacementType} placement - The placement of the element relative to the target.
|
|
274
|
-
* @param {PlacementType} alignment - The alignment of the element relative to the target.
|
|
275
|
-
* @returns {boolean} return true if it has enough space, otherwise false
|
|
276
|
-
*/
|
|
277
|
-
hasEnoughAlignmentSpace(containerBox, targetBox, elementBox, placement, alignment) {
|
|
278
|
-
if (['top', 'bottom'].includes(placement)) {
|
|
279
|
-
switch (alignment) {
|
|
280
|
-
case 'start': {
|
|
281
|
-
return targetBox.left + elementBox.width <= containerBox.width;
|
|
282
|
-
}
|
|
283
|
-
case 'center': {
|
|
284
|
-
return (targetBox.left >= (elementBox.width - targetBox.width) / 2 &&
|
|
285
|
-
targetBox.left + targetBox.width / 2 + elementBox.width / 2 <= containerBox.width);
|
|
286
|
-
}
|
|
287
|
-
case 'end': {
|
|
288
|
-
return targetBox.left + targetBox.width >= elementBox.width;
|
|
289
|
-
}
|
|
290
|
-
}
|
|
291
|
-
}
|
|
292
|
-
if (['right', 'left'].includes(placement)) {
|
|
293
|
-
switch (alignment) {
|
|
294
|
-
case 'start': {
|
|
295
|
-
return targetBox.top + elementBox.height <= containerBox.height;
|
|
296
|
-
}
|
|
297
|
-
case 'center': {
|
|
298
|
-
return (targetBox.top >= (elementBox.height - targetBox.height) / 2 &&
|
|
299
|
-
targetBox.top + targetBox.height / 2 + elementBox.height / 2 <= containerBox.height);
|
|
300
|
-
}
|
|
301
|
-
case 'end': {
|
|
302
|
-
return targetBox.top + targetBox.height >= elementBox.height;
|
|
303
|
-
}
|
|
304
|
-
}
|
|
305
|
-
}
|
|
306
|
-
/* istanbul ignore next */
|
|
307
|
-
return false;
|
|
308
|
-
}
|
|
309
320
|
/**
|
|
310
321
|
* If the placement is top or left, then the target's top or left position must be greater than or
|
|
311
322
|
* equal to the element's height or width. If the placement is bottom or right, then the container's
|
package/dist/collection/helpers/slimmers/position-calculation/position-calculation-controller.js
CHANGED
|
@@ -17,6 +17,13 @@ export class PositionCalculationController extends VegaSlimmer {
|
|
|
17
17
|
this.bodyPositionStrategy = new BodyPositionCalculationStrategy();
|
|
18
18
|
this.screenPositionStrategy = new ScreenPositionCalculationStrategy();
|
|
19
19
|
}
|
|
20
|
+
/**
|
|
21
|
+
* Clears any pending screen-position scroll animation frame callback.
|
|
22
|
+
* Call this when the appendable is hidden/destroyed.
|
|
23
|
+
*/
|
|
24
|
+
clearScreenPositionScrollFrame() {
|
|
25
|
+
this.screenPositionStrategy.clearScrollFrame();
|
|
26
|
+
}
|
|
20
27
|
/**
|
|
21
28
|
* Sets the calculate postion strategy.
|
|
22
29
|
*/
|
|
@@ -31,6 +38,8 @@ export class PositionCalculationController extends VegaSlimmer {
|
|
|
31
38
|
* @param {boolean} [usePreviousPlacement] - Should keep use previous placement and alignment.
|
|
32
39
|
*/
|
|
33
40
|
adjustPosition(usePreviousPlacement) {
|
|
41
|
+
if (!this.positionStrategy.shouldAdjustPosition())
|
|
42
|
+
return;
|
|
34
43
|
this.adjustWidth();
|
|
35
44
|
this.adjustHeight();
|
|
36
45
|
this.applyPosition(this.positionStrategy.getPosition(usePreviousPlacement));
|
|
@@ -6,10 +6,83 @@ var __decorate = (this && this.__decorate) || function (decorators, target, key,
|
|
|
6
6
|
};
|
|
7
7
|
import { MapToComponentField } from 'vega-slimmer/core';
|
|
8
8
|
import { BasePositionCalculationStrategy } from './base-position-calculation-strategy';
|
|
9
|
+
import { ScreenScrollPositionUpdate } from './screen-scroll-position-update';
|
|
10
|
+
import { tryGetDocument } from '../../../utils/try-get-document';
|
|
11
|
+
import { FeatureFlag } from '../../feature-control/feature-flag-controller';
|
|
9
12
|
/**
|
|
10
13
|
* calculate position by screen container
|
|
11
14
|
*/
|
|
12
15
|
export class ScreenPositionCalculationStrategy extends BasePositionCalculationStrategy {
|
|
16
|
+
constructor() {
|
|
17
|
+
super(...arguments);
|
|
18
|
+
this.scrollFrameRequestId = null;
|
|
19
|
+
this.usePreviousPlacement = false;
|
|
20
|
+
this.scrollPositionUpdateStrategy = new ScreenScrollPositionUpdate();
|
|
21
|
+
}
|
|
22
|
+
/**
|
|
23
|
+
* For screen-positioned appendable we may get a lot of scroll events.
|
|
24
|
+
* This hook throttles the check with requestAnimationFrame and only allows an adjust when
|
|
25
|
+
* the strategy determines we should update.
|
|
26
|
+
*
|
|
27
|
+
* @returns {boolean} True when controller should perform a position adjustment.
|
|
28
|
+
*/
|
|
29
|
+
shouldAdjustPosition() {
|
|
30
|
+
if (this.scrollFrameRequestId !== null) {
|
|
31
|
+
return false;
|
|
32
|
+
}
|
|
33
|
+
if (!FeatureFlag.isEnabled('VEGA_ELEMENT_APPENDER.AUTO_PLACEMENT')) {
|
|
34
|
+
this.usePreviousPlacement = true;
|
|
35
|
+
return true;
|
|
36
|
+
}
|
|
37
|
+
if (!this.previousTargetRect) {
|
|
38
|
+
this.previousTargetRect = this.showConfig.target.getBoundingClientRect();
|
|
39
|
+
this.usePreviousPlacement = false;
|
|
40
|
+
return true;
|
|
41
|
+
}
|
|
42
|
+
/**
|
|
43
|
+
* This avoids doing expensive DOM reads on every scroll event, while still
|
|
44
|
+
* updating placement/alignment when the trigger moves and the appendable
|
|
45
|
+
* would be clipped by the viewport (auto placement).
|
|
46
|
+
*
|
|
47
|
+
* The below method is e2e-test covered in @see{module:the-screen-position-scroll-RAFCallback-trigger-as-expected}
|
|
48
|
+
*/
|
|
49
|
+
/* istanbul ignore next */
|
|
50
|
+
this.scrollFrameRequestId = requestAnimationFrame(() => {
|
|
51
|
+
var _a;
|
|
52
|
+
this.scrollFrameRequestId = null;
|
|
53
|
+
let viewportWidth = window.innerWidth;
|
|
54
|
+
let viewportHeight = window.innerHeight;
|
|
55
|
+
if (this.showConfig.positionRelativeTo) {
|
|
56
|
+
const containerDom = (_a = tryGetDocument()) === null || _a === void 0 ? void 0 : _a.querySelector(this.showConfig.positionRelativeTo);
|
|
57
|
+
if (containerDom) {
|
|
58
|
+
viewportWidth = containerDom.getBoundingClientRect().width;
|
|
59
|
+
viewportHeight = containerDom.getBoundingClientRect().height;
|
|
60
|
+
}
|
|
61
|
+
}
|
|
62
|
+
const currentTargetRect = this.showConfig.target.getBoundingClientRect();
|
|
63
|
+
const appendableRect = this.showConfig.appendableElement.getBoundingClientRect();
|
|
64
|
+
const { shouldUpdate } = this.scrollPositionUpdateStrategy.shouldUpdatePosition({
|
|
65
|
+
currentTargetRect,
|
|
66
|
+
previousTargetRect: this.previousTargetRect,
|
|
67
|
+
appendableRect,
|
|
68
|
+
viewportWidth,
|
|
69
|
+
viewportHeight,
|
|
70
|
+
});
|
|
71
|
+
this.usePreviousPlacement = !shouldUpdate;
|
|
72
|
+
this.previousTargetRect = currentTargetRect;
|
|
73
|
+
});
|
|
74
|
+
return true;
|
|
75
|
+
}
|
|
76
|
+
/**
|
|
77
|
+
* Clears any pending scroll animation frame callback.
|
|
78
|
+
* Call this when popover is hidden/destroyed to avoid leaks and stale callbacks.
|
|
79
|
+
*/
|
|
80
|
+
clearScrollFrame() {
|
|
81
|
+
if (this.scrollFrameRequestId !== null) {
|
|
82
|
+
cancelAnimationFrame(this.scrollFrameRequestId);
|
|
83
|
+
this.scrollFrameRequestId = null;
|
|
84
|
+
}
|
|
85
|
+
}
|
|
13
86
|
/**
|
|
14
87
|
* Get the position of the element in the container according to the target element and the placement
|
|
15
88
|
* If give a translocation, it will apply the translocation to the result.
|
|
@@ -19,7 +92,8 @@ export class ScreenPositionCalculationStrategy extends BasePositionCalculationSt
|
|
|
19
92
|
* returns an ElementPositionBox.
|
|
20
93
|
*/
|
|
21
94
|
getPosition(usePreviousPlacement) {
|
|
22
|
-
const
|
|
95
|
+
const stayPlacement = usePreviousPlacement ? this.usePreviousPlacement : false;
|
|
96
|
+
const positionBox = stayPlacement
|
|
23
97
|
? this.getPositionBox([this.previousPositionBox.placement], [this.previousPositionBox.alignment])
|
|
24
98
|
: this.getPositionBox();
|
|
25
99
|
this.previousPositionBox = positionBox;
|
|
@@ -53,6 +127,43 @@ export class ScreenPositionCalculationStrategy extends BasePositionCalculationSt
|
|
|
53
127
|
height: window.innerHeight,
|
|
54
128
|
};
|
|
55
129
|
}
|
|
130
|
+
/**
|
|
131
|
+
* Whether the alignment space is enough
|
|
132
|
+
*
|
|
133
|
+
* @param {ElementScrollDimension} containerBox - The bounding box of the container element.
|
|
134
|
+
* @param {ElementBoundBox} targetBox - The position of the target element.
|
|
135
|
+
* @param {ElementBoundBox} elementBox - The box of the element that we're trying to position.
|
|
136
|
+
* @param {PlacementType} placement - The placement of the element relative to the target.
|
|
137
|
+
* @param {PlacementType} alignment - The alignment of the element relative to the target.
|
|
138
|
+
* @returns {boolean} return true if it has enough space, otherwise false
|
|
139
|
+
*/
|
|
140
|
+
hasEnoughAlignmentSpace(containerBox, targetBox, elementBox, placement, alignment) {
|
|
141
|
+
const left = this.calculateLeft(elementBox, targetBox, placement, alignment);
|
|
142
|
+
const top = this.calculateTop(elementBox, targetBox, placement, alignment);
|
|
143
|
+
return (left >= 0 &&
|
|
144
|
+
top >= 0 &&
|
|
145
|
+
left + elementBox.width <= containerBox.width &&
|
|
146
|
+
top + elementBox.height <= containerBox.height);
|
|
147
|
+
}
|
|
148
|
+
/**
|
|
149
|
+
* Screen-specific suitable placement selection.
|
|
150
|
+
* Tries to find a placement that has enough alignment space within the viewport first,
|
|
151
|
+
* otherwise falls back to the base strategy.
|
|
152
|
+
*
|
|
153
|
+
* @param {ElementScrollDimension} containerBox - The bounding box of the container.
|
|
154
|
+
* @param {ElementBoundBox} elementBox - The box of the element to place.
|
|
155
|
+
* @param {ElementBoundBox} targetBox - The box of the target element.
|
|
156
|
+
* @param {PlacementType[]} placements - Ordered list of placements to try.
|
|
157
|
+
* @returns {PlacementType} The chosen placement.
|
|
158
|
+
*/
|
|
159
|
+
getSuitablePlacement(containerBox, elementBox, targetBox, placements) {
|
|
160
|
+
const alignments = this.getAlignments();
|
|
161
|
+
const suitablePlacement = placements.find((placement) => alignments.some((alignment) => this.hasEnoughAlignmentSpace(containerBox, targetBox, elementBox, placement, alignment)));
|
|
162
|
+
if (suitablePlacement) {
|
|
163
|
+
return suitablePlacement;
|
|
164
|
+
}
|
|
165
|
+
return super.getSuitablePlacement(containerBox, elementBox, targetBox, placements);
|
|
166
|
+
}
|
|
56
167
|
}
|
|
57
168
|
__decorate([
|
|
58
169
|
MapToComponentField()
|
package/dist/collection/helpers/slimmers/position-calculation/screen-scroll-position-update.js
ADDED
|
@@ -0,0 +1,53 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Updates position on scroll When the target rect changes, we recompute placement/alignment.
|
|
3
|
+
*/
|
|
4
|
+
export class ScreenScrollPositionUpdate {
|
|
5
|
+
constructor() {
|
|
6
|
+
this.viewportWidth = window.innerWidth;
|
|
7
|
+
this.viewportHeight = window.innerHeight;
|
|
8
|
+
}
|
|
9
|
+
/**
|
|
10
|
+
* Determines whether the appendable element's position should update on scroll.
|
|
11
|
+
*
|
|
12
|
+
* @param {ScrollPositionUpdateStrategyContext} context - Current/previous rectangles plus viewport size.
|
|
13
|
+
* @returns {ScrollPositionUpdateDecision} Decision that indicates whether to recompute position.
|
|
14
|
+
*/
|
|
15
|
+
shouldUpdatePosition(context) {
|
|
16
|
+
const { previousTargetRect, currentTargetRect, appendableRect, viewportWidth, viewportHeight, } = context;
|
|
17
|
+
this.viewportWidth = viewportWidth;
|
|
18
|
+
this.viewportHeight = viewportHeight;
|
|
19
|
+
const targetChanged = !previousTargetRect ||
|
|
20
|
+
currentTargetRect.left !== previousTargetRect.left ||
|
|
21
|
+
currentTargetRect.top !== previousTargetRect.top;
|
|
22
|
+
const isTargetWithinViewport = !this.isRectOutsideViewport(currentTargetRect);
|
|
23
|
+
const isAppendableNotEntirelyInViewport = !this.isRectEntirelyWithinViewport(appendableRect);
|
|
24
|
+
return {
|
|
25
|
+
shouldUpdate: targetChanged && isTargetWithinViewport && isAppendableNotEntirelyInViewport,
|
|
26
|
+
};
|
|
27
|
+
}
|
|
28
|
+
/**
|
|
29
|
+
* Whether the rect is fully within the viewport bounds.
|
|
30
|
+
*
|
|
31
|
+
* @param {DOMRect} rect - The DOMRect to check.
|
|
32
|
+
* @returns {boolean} True when rect is fully within the viewport.
|
|
33
|
+
*/
|
|
34
|
+
isRectEntirelyWithinViewport(rect) {
|
|
35
|
+
return (rect.left >= 0 &&
|
|
36
|
+
rect.top >= 0 &&
|
|
37
|
+
rect.right <= this.viewportWidth &&
|
|
38
|
+
rect.bottom <= this.viewportHeight);
|
|
39
|
+
}
|
|
40
|
+
/**
|
|
41
|
+
* Whether the element is fully outside the viewport.
|
|
42
|
+
* If true, the rect has "disappeared" from the viewport.
|
|
43
|
+
*
|
|
44
|
+
* @param {DOMRect} rect - The DOMRect to check.
|
|
45
|
+
* @returns {boolean} True when rect is completely outside viewport bounds.
|
|
46
|
+
*/
|
|
47
|
+
isRectOutsideViewport(rect) {
|
|
48
|
+
return (rect.right <= 0 ||
|
|
49
|
+
rect.bottom <= 0 ||
|
|
50
|
+
rect.left >= this.viewportWidth ||
|
|
51
|
+
rect.top >= this.viewportHeight);
|
|
52
|
+
}
|
|
53
|
+
}
|