@globalpayments/vega 2.99.0 → 2.100.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/{accessibility-88f8af84.js → accessibility-6ca2a237.js} +21 -0
- package/dist/cjs/{app-globals-a306dce6.js → app-globals-48d067a7.js} +11 -10
- package/dist/cjs/{aria-attributes-value-mapper-9a41b9cf.js → aria-attributes-value-mapper-e8c6b0e0.js} +1 -1
- package/dist/cjs/{code-block-ea1f5eb3.js → code-block-3b42c364.js} +53 -1
- package/dist/cjs/{component-value-history-controller-slimmer.abstract-7071b064.js → component-value-history-controller-slimmer.abstract-bbe3bcaf.js} +3 -3
- package/dist/cjs/{content-state-8d07d530.js → content-state-87a06c1a.js} +46 -2
- package/dist/cjs/{date-required-rule-c0c498ad.js → date-required-rule-45c802d3.js} +1 -1
- package/dist/cjs/{design-token-58bf7fe8.js → design-token-9d762da0.js} +3 -3
- package/dist/cjs/{element-appender-slimmer-a0269315.js → element-appender-slimmer-f7ba5d9a.js} +2 -2
- package/dist/cjs/{form-field-controller-slimmer-f73f200e.js → form-field-controller-slimmer-fbaddc91.js} +1 -1
- package/dist/cjs/{image-annotation-action-2a28038e.js → image-annotation-action-03d3e01a.js} +6 -5
- package/dist/cjs/{image-extension-9659708b.js → image-extension-ccda26d3.js} +2 -2
- package/dist/cjs/index.cjs.js +18 -17
- package/dist/cjs/{inject-keyboard-manager-4fa45f9c.js → inject-keyboard-manager-540f0876.js} +1 -1
- package/dist/cjs/{internal-calendar-period-factory-6196bc80.js → internal-calendar-period-factory-b11918ee.js} +1 -1
- package/dist/cjs/{internal-translation-controller-51f7f865.js → internal-translation-controller-27bfc8c7.js} +15 -0
- package/dist/cjs/{keyboard-manager-482fe257.js → keyboard-manager-16e96b62.js} +12 -5
- package/dist/cjs/{keyboard-manager-slimmer-a19430dd.js → keyboard-manager-slimmer-0a4e556d.js} +1 -1
- package/dist/cjs/{link-extension-11340e1c.js → link-extension-71eeaa9f.js} +3 -3
- package/dist/cjs/loader.cjs.js +12 -12
- package/dist/cjs/{month-view-generator-1a534451.js → month-view-generator-0a3e04de.js} +1 -1
- package/dist/cjs/overlay-escape-coordination-901d8942.js +38 -0
- package/dist/cjs/{public-rules-6c77b545.js → public-rules-3dc5d02d.js} +7 -7
- package/dist/cjs/{range-22ddd452.js → range-d29751e3.js} +1 -1
- package/dist/cjs/{responsive-format-facade-74e6d791.js → responsive-format-facade-c6d7f0a1.js} +1 -1
- package/dist/cjs/{rich-text-editor-required-rule-09d1093a.js → rich-text-editor-required-rule-05de7f0c.js} +1 -1
- package/dist/cjs/{split-cell-operation-11bfb305.js → split-cell-operation-ef783850.js} +3 -3
- package/dist/cjs/{state-border-formatter-bf4f9f1c.js → state-border-formatter-dda9109a.js} +1 -1
- package/dist/cjs/{string-format-strategy.abstract-bf37b14c.js → string-format-strategy.abstract-3a968a59.js} +1 -1
- package/dist/cjs/{string-input-formatter-slimmer-ffeb18a6.js → string-input-formatter-slimmer-9747039f.js} +1 -1
- package/dist/cjs/{string-mask-strategy-7f394726.js → string-mask-strategy-d9f85c21.js} +2 -2
- package/dist/cjs/{style-formatter-4ac63910.js → style-formatter-d21a9784.js} +2 -2
- package/dist/cjs/{time-required-rule-e2a50003.js → time-required-rule-580cbd3d.js} +1 -1
- package/dist/cjs/{token-extension-4686cb3b.js → token-extension-8d7bd451.js} +807 -49
- package/dist/cjs/{translation-slimmer-e4997f8f.js → translation-slimmer-31cd5a57.js} +1 -1
- package/dist/cjs/{type-guard-b8d7bb3f.js → type-guard-00b8efc0.js} +1 -1
- package/dist/cjs/{valid-credit-card-number-rule-f5a6f009.js → valid-credit-card-number-rule-70885128.js} +1 -1
- package/dist/cjs/vega-accordion.cjs.entry.js +6 -6
- package/dist/cjs/vega-app-header-button.cjs.entry.js +6 -6
- package/dist/cjs/vega-banner.cjs.entry.js +1 -1
- package/dist/cjs/vega-box.cjs.entry.js +6 -6
- package/dist/cjs/vega-button-circle.cjs.entry.js +6 -6
- package/dist/cjs/vega-button-group_2.cjs.entry.js +13 -6
- package/dist/cjs/vega-button-link.cjs.entry.js +3 -3
- package/dist/cjs/vega-button.cjs.entry.js +21 -5
- package/dist/cjs/vega-calendar_5.cjs.entry.js +8 -8
- package/dist/cjs/vega-card.cjs.entry.js +5 -5
- package/dist/cjs/vega-carousel.cjs.entry.js +4 -4
- package/dist/cjs/vega-checkbox_2.cjs.entry.js +3 -3
- package/dist/cjs/vega-chip.cjs.entry.js +6 -6
- package/dist/cjs/vega-code-block.cjs.entry.js +9 -9
- package/dist/cjs/vega-color-picker.cjs.entry.js +3 -3
- package/dist/cjs/vega-color-swatch-picker.cjs.entry.js +3 -3
- package/dist/cjs/vega-color-swatch.cjs.entry.js +3 -3
- package/dist/cjs/vega-combo-box.cjs.entry.js +9 -9
- package/dist/cjs/vega-date-picker_2.cjs.entry.js +14 -14
- package/dist/cjs/vega-dialog_2.cjs.entry.js +70 -4
- package/dist/cjs/vega-divider.cjs.entry.js +5 -5
- package/dist/cjs/vega-dropdown_5.cjs.entry.js +100 -17
- package/dist/cjs/vega-env-manager-23b8b23c.js +2 -2
- package/dist/cjs/vega-field-label.cjs.entry.js +26 -33
- package/dist/cjs/vega-file-uploader.cjs.entry.js +4 -4
- package/dist/cjs/vega-flag-icon.cjs.entry.js +5 -5
- package/dist/cjs/vega-flex.cjs.entry.js +6 -6
- package/dist/cjs/vega-font.cjs.entry.js +5 -5
- package/dist/cjs/vega-form.cjs.entry.js +2 -2
- package/dist/cjs/vega-grid.cjs.entry.js +5 -5
- package/dist/cjs/vega-icon.cjs.entry.js +5 -5
- package/dist/cjs/vega-image-uploader.cjs.entry.js +6 -6
- package/dist/cjs/vega-input-credit-card.cjs.entry.js +6 -6
- package/dist/cjs/vega-input-numeric.cjs.entry.js +5 -5
- package/dist/cjs/vega-input-passcode.cjs.entry.js +5 -5
- package/dist/cjs/vega-input-phone-number.cjs.entry.js +41 -7
- package/dist/cjs/vega-input-range.cjs.entry.js +4 -4
- package/dist/cjs/vega-input-select.cjs.entry.js +24 -7
- package/dist/cjs/vega-input.cjs.entry.js +8 -8
- package/dist/cjs/vega-left-nav_5.cjs.entry.js +7 -7
- package/dist/cjs/vega-loader-wrapper_2.cjs.entry.js +3 -3
- package/dist/cjs/vega-page-notification_2.cjs.entry.js +1 -1
- package/dist/cjs/vega-pagination-page-size-selector-mobile.cjs.entry.js +2 -2
- package/dist/cjs/vega-pagination.cjs.entry.js +4 -4
- package/dist/cjs/vega-popover_2.cjs.entry.js +58 -9
- package/dist/cjs/vega-progress-tracker_2.cjs.entry.js +4 -4
- package/dist/cjs/vega-radio_2.cjs.entry.js +6 -6
- package/dist/cjs/vega-rich-text-content.cjs.entry.js +11 -8
- package/dist/cjs/vega-rich-text-editor_4.cjs.entry.js +703 -241
- package/dist/cjs/vega-rich-text-find-replace-panel.cjs.entry.js +3 -3
- package/dist/cjs/vega-rich-text-special-characters-panel.cjs.entry.js +5 -5
- package/dist/cjs/vega-rich-text-table-properties_3.cjs.entry.js +156 -103
- package/dist/cjs/vega-selection-chip_2.cjs.entry.js +5 -5
- package/dist/cjs/vega-selection-tile_2.cjs.entry.js +2 -2
- package/dist/cjs/vega-sidenav_3.cjs.entry.js +4 -4
- package/dist/cjs/vega-signature-capture.cjs.entry.js +7 -7
- package/dist/cjs/vega-stepper.cjs.entry.js +2 -2
- package/dist/cjs/vega-tab-group_2.cjs.entry.js +3 -3
- package/dist/cjs/vega-table_11.cjs.entry.js +5 -5
- package/dist/cjs/vega-textarea.cjs.entry.js +2 -2
- package/dist/cjs/vega-time-picker_2.cjs.entry.js +10 -10
- package/dist/cjs/vega-toggle-switch.cjs.entry.js +3 -3
- package/dist/cjs/vega-tooltip_2.cjs.entry.js +6 -6
- package/dist/cjs/vega.cjs.js +12 -12
- package/dist/collection/components/vega-button/vega-button.js +17 -2
- package/dist/collection/components/vega-button-group/vega-button-group-item/slimmers/renderers/vega-button-group-item-renderer.js +13 -6
- package/dist/collection/components/vega-button-link/vega-button-link.js +2 -2
- package/dist/collection/components/vega-code-block/vega-code-block.css +4 -4
- package/dist/collection/components/vega-dropdown/slimmers/controllers/vega-dropdown-keyboard-controller.js +148 -0
- package/dist/collection/components/vega-dropdown/slimmers/controllers/vega-dropdown-scrollable-controller.js +5 -2
- package/dist/collection/components/vega-dropdown/slimmers/renderers/vega-dropdown-renderer.js +17 -0
- package/dist/collection/components/vega-dropdown/vega-dropdown-item/slimmers/renderers/vega-dropdown-item-renderer.js +2 -2
- package/dist/collection/components/vega-dropdown/vega-dropdown-item/vega-dropdown-item.css +2 -1
- package/dist/collection/components/vega-dropdown/vega-dropdown.js +1 -1
- package/dist/collection/components/vega-field-label/slimmers/renderers/vega-field-label-label-announcement-renderer.js +21 -30
- package/dist/collection/components/vega-field-label/vega-field-label.js +7 -5
- package/dist/collection/components/vega-input-select/slimmers/renderers/vega-input-select-dropdown-renderer.js +19 -2
- package/dist/collection/components/vega-modal/slimmers/controllers/vega-modal-open-state-controller.js +66 -0
- package/dist/collection/components/vega-popover/slimmers/renderers/vega-popover-appender-renderer.js +17 -0
- package/dist/collection/components/vega-popover/vega-popover.js +33 -1
- package/dist/collection/components/vega-rich-text-content/slimmers/renderers/vega-rich-text-content-renderer.js +4 -1
- package/dist/collection/components/vega-rich-text-editor/constants/constant.js +9 -0
- package/dist/collection/components/vega-rich-text-editor/dto/action-handle-strategies/modify-content-strategies/commit-value-strategy.js +13 -0
- package/dist/collection/components/vega-rich-text-editor/dto/actions/commit-value-action.js +20 -0
- package/dist/collection/components/vega-rich-text-editor/dto/blocks/block.abstract.js +11 -0
- package/dist/collection/components/vega-rich-text-editor/dto/blocks/list-item-block.js +10 -0
- package/dist/collection/components/vega-rich-text-editor/dto/content-state.js +11 -0
- package/dist/collection/components/vega-rich-text-editor/dto/nodes/code-block-node.js +6 -0
- package/dist/collection/components/vega-rich-text-editor/dto/nodes/node.abstract.js +8 -0
- package/dist/collection/components/vega-rich-text-editor/dto/nodes/text-node.js +6 -0
- package/dist/collection/components/vega-rich-text-editor/extensions/base-toolbar-button-renderer.js +30 -18
- package/dist/collection/components/vega-rich-text-editor/extensions/blockquote/renderers/blockquote-toolbar-button-renderer.js +1 -0
- package/dist/collection/components/vega-rich-text-editor/extensions/copy/copy-toolbar-button-renderer.js +1 -0
- package/dist/collection/components/vega-rich-text-editor/extensions/cut/cut-toolbar-button-renderer.js +1 -0
- package/dist/collection/components/vega-rich-text-editor/extensions/find-replace/slimmer/renderers/find-replace-toolbar-button-renderer.js +51 -0
- package/dist/collection/components/vega-rich-text-editor/extensions/find-replace/vega-rich-text-find-replace-panel/slimmers/renderers/find-replace-panel-renderer.js +2 -2
- package/dist/collection/components/vega-rich-text-editor/extensions/fullscreen/fullscreen-toolbar-button-renderer.js +3 -0
- package/dist/collection/components/vega-rich-text-editor/extensions/functions/dto/logic-control-node.js +6 -0
- package/dist/collection/components/vega-rich-text-editor/extensions/functions/renderers/function-toolbar-button-renderer.js +1 -0
- package/dist/collection/components/vega-rich-text-editor/extensions/horizontal-line/renderers/horizontal-line-toolbar-button-renderer.js +1 -0
- package/dist/collection/components/vega-rich-text-editor/extensions/languages/language-toolbar-button-renderer.js +5 -3
- package/dist/collection/components/vega-rich-text-editor/extensions/line-height/line-height-toolbar-button-renderer.js +16 -0
- package/dist/collection/components/vega-rich-text-editor/extensions/special-characters/special-characters-toolbar-button-renderer.js +2 -0
- package/dist/collection/components/vega-rich-text-editor/extensions/table/renderers/table-caption-renderer.js +3 -9
- package/dist/collection/components/vega-rich-text-editor/extensions/table/renderers/table-cell-renderer.js +2 -2
- package/dist/collection/components/vega-rich-text-editor/extensions/table/renderers/table-dynamic-popover-renderer.js +81 -1
- package/dist/collection/components/vega-rich-text-editor/extensions/table/renderers/table-popover-base-renderer.js +148 -0
- package/dist/collection/components/vega-rich-text-editor/extensions/table/renderers/table-renderer.js +151 -5
- package/dist/collection/components/vega-rich-text-editor/extensions/table/renderers/table-setting-popover-renderer.js +144 -2
- package/dist/collection/components/vega-rich-text-editor/extensions/table/table-selection.js +26 -1
- package/dist/collection/components/vega-rich-text-editor/extensions/table/table-toolbar-button-renderer.js +1 -0
- package/dist/collection/components/vega-rich-text-editor/extensions/table/vega-rich-text-table-properties/slimmers/renderers/vega-rich-text-cell-properties-form-field-renderer.js +11 -2
- package/dist/collection/components/vega-rich-text-editor/extensions/table/vega-rich-text-table-properties/slimmers/renderers/vega-rich-text-table-properties-basic-form-field-renderer.abstract.js +5 -2
- package/dist/collection/components/vega-rich-text-editor/extensions/table/vega-rich-text-table-properties/slimmers/renderers/vega-rich-text-table-properties-form-field-renderer.js +5 -1
- package/dist/collection/components/vega-rich-text-editor/extensions/table/vega-rich-text-table-properties/vega-rich-text-table-properties.css +5 -0
- package/dist/collection/components/vega-rich-text-editor/extensions/table/vega-rich-text-table-properties/vega-rich-text-table-properties.js +16 -1
- package/dist/collection/components/vega-rich-text-editor/extensions/table/vega-rich-text-table-setting/slimmers/renderers/caption-button-slimmer.js +1 -0
- package/dist/collection/components/vega-rich-text-editor/extensions/table/vega-rich-text-table-setting/slimmers/renderers/cell-properties-button-slimmer.js +1 -0
- package/dist/collection/components/vega-rich-text-editor/extensions/table/vega-rich-text-table-setting/slimmers/renderers/column-button-slimmer.js +10 -9
- package/dist/collection/components/vega-rich-text-editor/extensions/table/vega-rich-text-table-setting/slimmers/renderers/merge-cells-button-slimmer.js +9 -8
- package/dist/collection/components/vega-rich-text-editor/extensions/table/vega-rich-text-table-setting/slimmers/renderers/row-button-slimmer.js +25 -10
- package/dist/collection/components/vega-rich-text-editor/extensions/table/vega-rich-text-table-setting/slimmers/renderers/table-properties-button-slimmer.js +1 -0
- package/dist/collection/components/vega-rich-text-editor/extensions/table/vega-rich-text-table-setting/slimmers/renderers/table-setting-button-slimmer.abstract.js +5 -4
- package/dist/collection/components/vega-rich-text-editor/extensions/table/vega-rich-text-table-setting/slimmers/renderers/vega-rich-text-table-setting-renderer.js +1 -1
- package/dist/collection/components/vega-rich-text-editor/extensions/table/vega-rich-text-table-setting/vega-rich-text-table-setting.css +10 -0
- package/dist/collection/components/vega-rich-text-editor/extensions/table/vega-rich-text-table-setting/vega-rich-text-table-setting.js +2 -0
- package/dist/collection/components/vega-rich-text-editor/extensions/tokens/token-toolbar-button-renderer.js +1 -0
- package/dist/collection/components/vega-rich-text-editor/extensions/word-count/action-handler-interceptors/prevent-hard-limit-exceed-interceptor.js +70 -0
- package/dist/collection/components/vega-rich-text-editor/extensions/word-count/type.js +1 -0
- package/dist/collection/components/vega-rich-text-editor/extensions/word-count/word-count-extension.js +62 -0
- package/dist/collection/components/vega-rich-text-editor/public-api.js +1 -0
- package/dist/collection/components/vega-rich-text-editor/slimmers/controllers/insert-composition-text-controller.js +2 -1
- package/dist/collection/components/vega-rich-text-editor/slimmers/controllers/user-input-controller.js +7 -1
- package/dist/collection/components/vega-rich-text-editor/slimmers/controllers/value-controller.js +52 -2
- package/dist/collection/components/vega-rich-text-editor/slimmers/controllers/word-count-controller.js +79 -0
- package/dist/collection/components/vega-rich-text-editor/slimmers/renderers/toolbar-renderer.js +6 -3
- package/dist/collection/components/vega-rich-text-editor/slimmers/renderers/tools/bullets-numbers/bullets-numbers-toolbar-button-slimmer.js +2 -1
- package/dist/collection/components/vega-rich-text-editor/slimmers/renderers/tools/horizontal-alignment/horizontal-alignment-toolbar-button-slimmer.js +2 -1
- package/dist/collection/components/vega-rich-text-editor/slimmers/renderers/tools/image-toolbar-button-slimmer.js +3 -2
- package/dist/collection/components/vega-rich-text-editor/slimmers/renderers/tools/link-toolbar-button-slimmer.js +111 -2
- package/dist/collection/components/vega-rich-text-editor/slimmers/renderers/tools/source-edit-toolbar-button-slimmer.js +17 -6
- package/dist/collection/components/vega-rich-text-editor/slimmers/renderers/tools/text-color-toolbar-button-slimmer.js +1 -1
- package/dist/collection/components/vega-rich-text-editor/slimmers/renderers/tools/text-styles-toolbar-button-slimmer.js +1 -1
- package/dist/collection/components/vega-rich-text-editor/slimmers/renderers/tools/toolbar-button-slimmer.abstract.js +3 -2
- package/dist/collection/components/vega-rich-text-editor/slimmers/renderers/vega-rich-text-editor-renderer.js +59 -8
- package/dist/collection/components/vega-rich-text-editor/vega-rich-text-editor-toolbar-button/slimmers/renderers/vega-rich-text-editor-toolbar-button-renderer.js +1 -1
- package/dist/collection/components/vega-rich-text-editor/vega-rich-text-editor-toolbar-button/vega-rich-text-editor-toolbar-button.js +13 -1
- package/dist/collection/components/vega-rich-text-editor/vega-rich-text-editor.js +16 -0
- package/dist/collection/components/vega-rich-text-editor/vega-rich-text-link-editor/slimmers/controllers/link-editor-controller.js +124 -0
- package/dist/collection/components/vega-rich-text-editor/vega-rich-text-link-editor/slimmers/renderers/vega-rich-text-link-editor-renderer.js +9 -1
- package/dist/collection/global/scripts/before-vega-load.js +2 -0
- package/dist/collection/helpers/keyboard/keyboard-manager.js +11 -4
- package/dist/collection/helpers/keyboard/overlay-escape-coordination.js +33 -0
- package/dist/collection/helpers/slimmers/mutation-observer/aria-attributes-value-mapper.js +1 -1
- package/dist/collection/helpers/translation/locales/en.js +15 -0
- package/dist/collection/polyfill/libphonenumber/as-you-type.js +21 -3
- package/dist/collection/polyfill/libphonenumber/metadata.js +16 -0
- package/dist/collection/utils/accessibility.js +20 -0
- package/dist/esm/{accessibility-6af5cf2e.js → accessibility-c899a968.js} +21 -1
- package/dist/esm/{app-globals-c59364c2.js → app-globals-1e1371d5.js} +11 -10
- package/dist/esm/{aria-attributes-value-mapper-2c632641.js → aria-attributes-value-mapper-a5c7478e.js} +1 -1
- package/dist/esm/{aria-dialog-focusable-trap-slimmer-f069f54d.js → aria-dialog-focusable-trap-slimmer-b2a24a45.js} +2 -2
- package/dist/esm/{child-nodes-notify-observer-slimmer-499a3aa7.js → child-nodes-notify-observer-slimmer-034bc78c.js} +1 -1
- package/dist/esm/{code-block-e6443949.js → code-block-741d6b8e.js} +54 -4
- package/dist/esm/{component-value-history-controller-slimmer.abstract-ee393213.js → component-value-history-controller-slimmer.abstract-2bcd749e.js} +5 -5
- package/dist/esm/{content-state-43cdacff.js → content-state-2f6f4204.js} +47 -5
- package/dist/esm/{date-required-rule-b5b67498.js → date-required-rule-2ea3aec8.js} +1 -1
- package/dist/esm/{design-token-8319bb59.js → design-token-82a4e107.js} +3 -3
- package/dist/esm/{dom-node-subject-observer-factory-ddff8662.js → dom-node-subject-observer-factory-bb7e68a0.js} +1 -1
- package/dist/esm/{element-appender-slimmer-c81d1fe3.js → element-appender-slimmer-c820c0bf.js} +4 -4
- package/dist/esm/{event-emit-slimmer-2452278f.js → event-emit-slimmer-e8bb2292.js} +1 -1
- package/dist/esm/{form-field-controller-slimmer-511b7ac5.js → form-field-controller-slimmer-02165dbe.js} +4 -4
- package/dist/esm/{image-annotation-action-d7cb80aa.js → image-annotation-action-972c1074.js} +7 -6
- package/dist/esm/{image-extension-9b8abd0d.js → image-extension-59484e9a.js} +2 -2
- package/dist/esm/index.js +19 -19
- package/dist/esm/{inject-keyboard-manager-dd368d56.js → inject-keyboard-manager-6a10c9b7.js} +1 -1
- package/dist/esm/{internal-calendar-period-factory-d58f35c6.js → internal-calendar-period-factory-d1a60f81.js} +1 -1
- package/dist/esm/{internal-translation-controller-b33430c6.js → internal-translation-controller-fff376d2.js} +15 -0
- package/dist/esm/{keyboard-manager-b4a0d97d.js → keyboard-manager-a58288df.js} +13 -6
- package/dist/esm/{keyboard-manager-slimmer-0517fc70.js → keyboard-manager-slimmer-133b86cd.js} +1 -1
- package/dist/esm/{link-extension-230bae8d.js → link-extension-e89acb5c.js} +3 -3
- package/dist/esm/loader.js +14 -14
- package/dist/esm/{month-view-generator-f470caac.js → month-view-generator-20e32b22.js} +1 -1
- package/dist/esm/overlay-escape-coordination-439f7d6f.js +35 -0
- package/dist/esm/{public-rules-28ef32d3.js → public-rules-c154201b.js} +9 -9
- package/dist/esm/{range-efad2578.js → range-c818a1eb.js} +2 -2
- package/dist/esm/{responsive-format-facade-dec87e46.js → responsive-format-facade-07843ec3.js} +1 -1
- package/dist/esm/{rich-text-editor-required-rule-a697e5bd.js → rich-text-editor-required-rule-878e91c6.js} +1 -1
- package/dist/esm/{split-cell-operation-89b91a38.js → split-cell-operation-cc0cdf90.js} +4 -4
- package/dist/esm/{state-border-formatter-1e900a2f.js → state-border-formatter-3b3dcfe8.js} +1 -1
- package/dist/esm/{string-format-strategy.abstract-d0ce3f65.js → string-format-strategy.abstract-44381dcb.js} +1 -1
- package/dist/esm/{string-input-formatter-slimmer-6546cfc7.js → string-input-formatter-slimmer-76fe52d3.js} +3 -3
- package/dist/esm/{string-mask-strategy-dd13ae21.js → string-mask-strategy-999fba4b.js} +2 -2
- package/dist/esm/{style-formatter-057d7120.js → style-formatter-c4192c99.js} +2 -2
- package/dist/esm/{sub-state-notify-slimmer-23b7d0e8.js → sub-state-notify-slimmer-e306c849.js} +1 -1
- package/dist/esm/{sub-state-observer-slimmer-722f6b92.js → sub-state-observer-slimmer-bd85f381.js} +2 -2
- package/dist/esm/{time-required-rule-73753a54.js → time-required-rule-0554b114.js} +1 -1
- package/dist/esm/{token-extension-74a0eeb1.js → token-extension-35c66684.js} +809 -52
- package/dist/esm/{translation-slimmer-ef970ffc.js → translation-slimmer-77022f2e.js} +1 -1
- package/dist/esm/{type-guard-6fc96870.js → type-guard-26d83e7e.js} +1 -1
- package/dist/esm/{ui-d73f756a.js → ui-80e610f4.js} +1 -1
- package/dist/esm/{valid-credit-card-number-rule-b54a31e7.js → valid-credit-card-number-rule-f60b6904.js} +1 -1
- package/dist/esm/vega-accordion.entry.js +9 -9
- package/dist/esm/vega-app-footer.entry.js +3 -3
- package/dist/esm/vega-app-header-button.entry.js +9 -9
- package/dist/esm/vega-backdrop.entry.js +1 -1
- package/dist/esm/vega-banner.entry.js +4 -4
- package/dist/esm/vega-box.entry.js +7 -7
- package/dist/esm/vega-breadcrumb.entry.js +3 -3
- package/dist/esm/vega-button-circle.entry.js +9 -9
- package/dist/esm/vega-button-group_2.entry.js +18 -11
- package/dist/esm/vega-button-link.entry.js +6 -6
- package/dist/esm/vega-button.entry.js +24 -8
- package/dist/esm/vega-calendar_5.entry.js +13 -13
- package/dist/esm/vega-card.entry.js +6 -6
- package/dist/esm/vega-carousel.entry.js +7 -7
- package/dist/esm/vega-checkbox_2.entry.js +8 -8
- package/dist/esm/vega-chip.entry.js +9 -9
- package/dist/esm/vega-code-block.entry.js +12 -12
- package/dist/esm/vega-color-picker.entry.js +7 -7
- package/dist/esm/vega-color-swatch-picker.entry.js +7 -7
- package/dist/esm/vega-color-swatch.entry.js +6 -6
- package/dist/esm/vega-combo-box.entry.js +13 -13
- package/dist/esm/vega-date-picker_2.entry.js +20 -20
- package/dist/esm/vega-dialog_2.entry.js +74 -8
- package/dist/esm/vega-divider.entry.js +5 -5
- package/dist/esm/vega-dropdown_5.entry.js +107 -24
- package/dist/esm/vega-env-manager-8f8dc473.js +2 -2
- package/dist/esm/vega-field-label.entry.js +29 -36
- package/dist/esm/vega-file-uploader.entry.js +8 -8
- package/dist/esm/vega-flag-icon.entry.js +5 -5
- package/dist/esm/vega-flex.entry.js +7 -7
- package/dist/esm/vega-font.entry.js +6 -6
- package/dist/esm/vega-form.entry.js +8 -8
- package/dist/esm/vega-grid.entry.js +6 -6
- package/dist/esm/vega-icon.entry.js +6 -6
- package/dist/esm/vega-image-uploader.entry.js +10 -10
- package/dist/esm/vega-input-credit-card.entry.js +10 -10
- package/dist/esm/vega-input-numeric.entry.js +10 -10
- package/dist/esm/vega-input-passcode.entry.js +9 -9
- package/dist/esm/vega-input-phone-number.entry.js +45 -11
- package/dist/esm/vega-input-range.entry.js +8 -8
- package/dist/esm/vega-input-select.entry.js +28 -11
- package/dist/esm/vega-input.entry.js +13 -13
- package/dist/esm/vega-item-toggle.entry.js +3 -3
- package/dist/esm/vega-left-nav_5.entry.js +12 -12
- package/dist/esm/vega-loader-wrapper_2.entry.js +4 -4
- package/dist/esm/vega-page-notification_2.entry.js +3 -3
- package/dist/esm/vega-pagination-page-selector-mobile.entry.js +2 -2
- package/dist/esm/vega-pagination-page-size-selector-mobile.entry.js +4 -4
- package/dist/esm/vega-pagination.entry.js +7 -7
- package/dist/esm/vega-popover_2.entry.js +62 -13
- package/dist/esm/vega-progress-tracker_2.entry.js +9 -9
- package/dist/esm/vega-radio_2.entry.js +11 -11
- package/dist/esm/vega-rich-text-content.entry.js +15 -12
- package/dist/esm/vega-rich-text-editor_4.entry.js +710 -248
- package/dist/esm/vega-rich-text-find-replace-panel.entry.js +6 -6
- package/dist/esm/vega-rich-text-special-characters-panel.entry.js +8 -8
- package/dist/esm/vega-rich-text-table-properties_3.entry.js +158 -105
- package/dist/esm/vega-segment-control.entry.js +3 -3
- package/dist/esm/vega-selection-chip_2.entry.js +10 -10
- package/dist/esm/vega-selection-tile_2.entry.js +8 -8
- package/dist/esm/vega-sidenav_3.entry.js +9 -9
- package/dist/esm/vega-signature-capture.entry.js +11 -11
- package/dist/esm/vega-stepper.entry.js +6 -6
- package/dist/esm/vega-tab-group_2.entry.js +6 -6
- package/dist/esm/vega-table_11.entry.js +10 -10
- package/dist/esm/vega-textarea.entry.js +6 -6
- package/dist/esm/vega-time-picker_2.entry.js +14 -14
- package/dist/esm/vega-toggle-switch.entry.js +7 -7
- package/dist/esm/vega-tooltip_2.entry.js +8 -8
- package/dist/esm/vega.js +14 -14
- package/dist/esm/{wait-for-component-did-render-ff7062aa.js → wait-for-component-did-render-9b91a826.js} +1 -1
- package/dist/sri/vega-sri-manifest.json +390 -386
- package/dist/types/components/vega-button/vega-button.d.ts +2 -0
- package/dist/types/components/vega-button-group/types.d.ts +12 -6
- package/dist/types/components/vega-dropdown/vega-dropdown.d.ts +1 -1
- package/dist/types/components/vega-field-label/slimmers/renderers/vega-field-label-label-announcement-renderer.d.ts +3 -10
- package/dist/types/components/vega-input-select/slimmers/renderers/vega-input-select-dropdown-renderer.d.ts +8 -0
- package/dist/types/components/vega-modal/slimmers/controllers/vega-modal-open-state-controller.d.ts +33 -0
- package/dist/types/components/vega-modal/types.d.ts +2 -1
- package/dist/types/components/vega-popover/slimmers/renderers/vega-popover-appender-renderer.d.ts +9 -0
- package/dist/types/components/vega-rich-text-editor/constants/constant.d.ts +6 -0
- package/dist/types/components/vega-rich-text-editor/dto/action-handle-strategies/modify-content-strategies/commit-value-strategy.d.ts +13 -0
- package/dist/types/components/vega-rich-text-editor/dto/actions/commit-value-action.d.ts +20 -0
- package/dist/types/components/vega-rich-text-editor/dto/blocks/block.abstract.d.ts +6 -0
- package/dist/types/components/vega-rich-text-editor/dto/blocks/list-item-block.d.ts +4 -0
- package/dist/types/components/vega-rich-text-editor/dto/content-state.d.ts +6 -0
- package/dist/types/components/vega-rich-text-editor/dto/nodes/code-block-node.d.ts +4 -0
- package/dist/types/components/vega-rich-text-editor/dto/nodes/node.abstract.d.ts +6 -0
- package/dist/types/components/vega-rich-text-editor/dto/nodes/text-node.d.ts +4 -0
- package/dist/types/components/vega-rich-text-editor/extensions/base-toolbar-button-renderer.d.ts +5 -0
- package/dist/types/components/vega-rich-text-editor/extensions/find-replace/slimmer/renderers/find-replace-toolbar-button-renderer.d.ts +19 -0
- package/dist/types/components/vega-rich-text-editor/extensions/functions/dto/logic-control-node.d.ts +4 -0
- package/dist/types/components/vega-rich-text-editor/extensions/line-height/line-height-toolbar-button-renderer.d.ts +14 -1
- package/dist/types/components/vega-rich-text-editor/extensions/table/renderers/table-caption-renderer.d.ts +2 -2
- package/dist/types/components/vega-rich-text-editor/extensions/table/renderers/table-dynamic-popover-renderer.d.ts +31 -1
- package/dist/types/components/vega-rich-text-editor/extensions/table/renderers/table-popover-base-renderer.d.ts +91 -0
- package/dist/types/components/vega-rich-text-editor/extensions/table/renderers/table-renderer.d.ts +46 -0
- package/dist/types/components/vega-rich-text-editor/extensions/table/renderers/table-setting-popover-renderer.d.ts +58 -0
- package/dist/types/components/vega-rich-text-editor/extensions/table/table-selection.d.ts +8 -0
- package/dist/types/components/vega-rich-text-editor/extensions/table/vega-rich-text-table-properties/slimmers/renderers/vega-rich-text-table-properties-basic-form-field-renderer.abstract.d.ts +2 -1
- package/dist/types/components/vega-rich-text-editor/extensions/table/vega-rich-text-table-properties/vega-rich-text-table-properties.d.ts +2 -0
- package/dist/types/components/vega-rich-text-editor/extensions/table/vega-rich-text-table-setting/slimmers/renderers/row-button-slimmer.d.ts +3 -0
- package/dist/types/components/vega-rich-text-editor/extensions/table/vega-rich-text-table-setting/slimmers/renderers/table-setting-button-slimmer.abstract.d.ts +3 -1
- package/dist/types/components/vega-rich-text-editor/extensions/table/vega-rich-text-table-setting/vega-rich-text-table-setting.d.ts +1 -0
- package/dist/types/components/vega-rich-text-editor/extensions/word-count/action-handler-interceptors/prevent-hard-limit-exceed-interceptor.d.ts +38 -0
- package/dist/types/components/vega-rich-text-editor/extensions/word-count/type.d.ts +46 -0
- package/dist/types/components/vega-rich-text-editor/extensions/word-count/word-count-extension.d.ts +38 -0
- package/dist/types/components/vega-rich-text-editor/interface.d.ts +12 -0
- package/dist/types/components/vega-rich-text-editor/public-api.d.ts +1 -0
- package/dist/types/components/vega-rich-text-editor/slimmers/controllers/value-controller.d.ts +11 -1
- package/dist/types/components/vega-rich-text-editor/slimmers/controllers/word-count-controller.d.ts +40 -0
- package/dist/types/components/vega-rich-text-editor/slimmers/renderers/tools/link-toolbar-button-slimmer.d.ts +14 -0
- package/dist/types/components/vega-rich-text-editor/slimmers/renderers/tools/source-edit-toolbar-button-slimmer.d.ts +3 -1
- package/dist/types/components/vega-rich-text-editor/slimmers/renderers/tools/toolbar-button-slimmer.abstract.d.ts +3 -2
- package/dist/types/components/vega-rich-text-editor/slimmers/renderers/vega-rich-text-editor-renderer.d.ts +12 -0
- package/dist/types/components/vega-rich-text-editor/vega-rich-text-editor-toolbar-button/vega-rich-text-editor-toolbar-button.d.ts +2 -0
- package/dist/types/components/vega-rich-text-editor/vega-rich-text-editor.d.ts +4 -0
- package/dist/types/components/vega-rich-text-editor/vega-rich-text-link-editor/slimmers/controllers/link-editor-controller.d.ts +68 -0
- package/dist/types/components/vega-rich-text-editor/vega-rich-text-link-editor/slimmers/renderers/vega-rich-text-link-editor-renderer.d.ts +3 -0
- package/dist/types/helpers/keyboard/keyboard-manager.d.ts +9 -0
- package/dist/types/helpers/keyboard/overlay-escape-coordination.d.ts +28 -0
- package/dist/types/helpers/slimmers/mutation-observer/aria-attributes-value-mapper.d.ts +1 -1
- package/dist/types/helpers/translation/interface.d.ts +16 -1
- package/dist/types/polyfill/libphonenumber/as-you-type.d.ts +1 -0
- package/dist/types/polyfill/libphonenumber/metadata.d.ts +10 -0
- package/dist/types/types/public-api.d.ts +1 -0
- package/dist/types/utils/accessibility.d.ts +9 -0
- package/dist/vega/index.esm.js +1 -1
- package/dist/vega/{p-1a37d63c.entry.js → p-01ca92e6.entry.js} +1 -1
- package/dist/vega/{p-840444c9.entry.js → p-02b5d4ac.entry.js} +1 -1
- package/dist/vega/{p-d35a31a5.entry.js → p-06a42a9f.entry.js} +1 -1
- package/dist/vega/{p-fd23c365.entry.js → p-0cd362f3.entry.js} +1 -1
- package/dist/vega/p-0e10798b.entry.js +1 -0
- package/dist/vega/{p-fcb6b499.js → p-0eea1ca8.js} +1 -1
- package/dist/vega/{p-ccbed811.entry.js → p-0f344e02.entry.js} +1 -1
- package/dist/vega/{p-66a785d0.entry.js → p-23db0a92.entry.js} +1 -1
- package/dist/vega/{p-c8ad7207.entry.js → p-284a8828.entry.js} +1 -1
- package/dist/vega/{p-d4d90ce2.entry.js → p-2b26e182.entry.js} +1 -1
- package/dist/vega/{p-6659c910.entry.js → p-2c8dc0d2.entry.js} +1 -1
- package/dist/vega/{p-526e3634.js → p-36a57431.js} +1 -1
- package/dist/vega/{p-9c9b0629.js → p-379736e2.js} +1 -1
- package/dist/vega/{p-df63c2fb.entry.js → p-3abb793c.entry.js} +1 -1
- package/dist/vega/{p-47a48329.entry.js → p-3d6a43df.entry.js} +1 -1
- package/dist/vega/{p-0ca3b4bf.entry.js → p-3f2a4b34.entry.js} +1 -1
- package/dist/vega/p-401c6764.js +1 -0
- package/dist/vega/{p-ce82d6bb.entry.js → p-411cadbc.entry.js} +1 -1
- package/dist/vega/{p-f0a0fc77.entry.js → p-46f22f6c.entry.js} +1 -1
- package/dist/vega/{p-f9a3805d.js → p-493108d5.js} +1 -1
- package/dist/vega/{p-77fb3971.entry.js → p-49de5559.entry.js} +1 -1
- package/dist/vega/p-4b35c748.js +1 -0
- package/dist/vega/{p-d62e618a.entry.js → p-4d1896e0.entry.js} +1 -1
- package/dist/vega/{p-55dc3053.entry.js → p-4e23e56c.entry.js} +1 -1
- package/dist/vega/{p-aa914dbd.entry.js → p-5006404e.entry.js} +1 -1
- package/dist/vega/{p-944e284d.entry.js → p-5789690b.entry.js} +1 -1
- package/dist/vega/{p-4f6aaac5.entry.js → p-594cb986.entry.js} +1 -1
- package/dist/vega/p-5a086e93.js +1 -0
- package/dist/vega/p-5b9b1631.entry.js +1 -0
- package/dist/vega/{p-c41a2d4a.js → p-5c3649f9.js} +1 -1
- package/dist/vega/{p-fb9475ab.entry.js → p-5d9be870.entry.js} +1 -1
- package/dist/vega/p-5f377954.js +1 -1
- package/dist/vega/{p-2044eba9.js → p-60a74fb7.js} +1 -1
- package/dist/vega/{p-5e9e04f3.entry.js → p-61ed7268.entry.js} +1 -1
- package/dist/vega/p-6336d446.entry.js +1 -0
- package/dist/vega/{p-b3c4943b.js → p-638b6a7d.js} +1 -1
- package/dist/vega/{p-bdb5180c.js → p-68744e7e.js} +1 -1
- package/dist/vega/p-6e9e7131.js +1 -0
- package/dist/vega/{p-014cd411.js → p-6eedbc4f.js} +1 -1
- package/dist/vega/{p-c348eaf5.js → p-6fd8f14b.js} +1 -1
- package/dist/vega/{p-49d7cfed.entry.js → p-7469d0d1.entry.js} +1 -1
- package/dist/vega/p-74b20563.entry.js +1 -0
- package/dist/vega/{p-2f89ee14.entry.js → p-76999ea1.entry.js} +1 -1
- package/dist/vega/p-77bcdd35.js +1 -0
- package/dist/vega/{p-a4360b7e.entry.js → p-79b49e8d.entry.js} +1 -1
- package/dist/vega/{p-2af1d8b8.entry.js → p-7a03ef96.entry.js} +1 -1
- package/dist/vega/{p-aa433430.entry.js → p-7ae4cf82.entry.js} +1 -1
- package/dist/vega/{p-f9bfee81.entry.js → p-7cc8855d.entry.js} +1 -1
- package/dist/vega/{p-3c8421d5.entry.js → p-7ddc0bec.entry.js} +1 -1
- package/dist/vega/{p-9c5289dc.entry.js → p-7e22610b.entry.js} +1 -1
- package/dist/vega/p-7f395622.entry.js +1 -0
- package/dist/vega/{p-860e76f5.entry.js → p-816b5fd2.entry.js} +1 -1
- package/dist/vega/p-8387896e.js +1 -0
- package/dist/vega/{p-7754b10f.entry.js → p-844ad6aa.entry.js} +1 -1
- package/dist/vega/p-853a05eb.js +1 -0
- package/dist/vega/p-85de755f.js +1 -0
- package/dist/vega/p-8663314e.js +1 -0
- package/dist/vega/{p-66728dd4.entry.js → p-86fb46d2.entry.js} +1 -1
- package/dist/vega/p-8cfdd0e8.entry.js +1 -0
- package/dist/vega/{p-444e24c6.js → p-8ebe30a8.js} +1 -1
- package/dist/vega/p-8f00dfe6.js +1 -0
- package/dist/vega/{p-66647244.js → p-8fc0a820.js} +1 -1
- package/dist/vega/{p-8f3b93db.js → p-9034f709.js} +1 -1
- package/dist/vega/{p-691bdc20.js → p-941a83db.js} +1 -1
- package/dist/vega/{p-5110c84f.js → p-96c090c4.js} +1 -1
- package/dist/vega/{p-50eda925.js → p-9ba2fdff.js} +1 -1
- package/dist/vega/p-9efa5d76.js +1 -0
- package/dist/vega/{p-cede3535.js → p-a306bb39.js} +1 -1
- package/dist/vega/{p-db11134b.entry.js → p-a48468b5.entry.js} +1 -1
- package/dist/vega/{p-22edd3cc.js → p-a488447f.js} +1 -1
- package/dist/vega/{p-6493f13a.entry.js → p-a647c856.entry.js} +1 -1
- package/dist/vega/{p-44999c88.entry.js → p-a6a89f09.entry.js} +1 -1
- package/dist/vega/p-a92cd703.js +1 -0
- package/dist/vega/p-a93b3aed.js +1 -0
- package/dist/vega/{p-528748fa.js → p-aa135628.js} +1 -1
- package/dist/vega/{p-3c152bad.entry.js → p-aaaf21eb.entry.js} +1 -1
- package/dist/vega/{p-66fe8b4e.entry.js → p-ab253867.entry.js} +1 -1
- package/dist/vega/{p-a1f220ca.js → p-ab9d53e9.js} +1 -1
- package/dist/vega/p-ad367b48.entry.js +1 -0
- package/dist/vega/{p-e18c0656.entry.js → p-af0cfea0.entry.js} +1 -1
- package/dist/vega/p-b07f587a.entry.js +1 -0
- package/dist/vega/{p-f13b39d8.js → p-b2a4314a.js} +1 -1
- package/dist/vega/p-b52d7724.js +3 -0
- package/dist/vega/{p-23c1f378.entry.js → p-b97ed9f7.entry.js} +1 -1
- package/dist/vega/{p-4022412e.entry.js → p-bc0e5598.entry.js} +1 -1
- package/dist/vega/p-bc119e75.entry.js +1 -0
- package/dist/vega/{p-024db952.entry.js → p-bedb575c.entry.js} +1 -1
- package/dist/vega/{p-d6023dc0.entry.js → p-bfe5dff7.entry.js} +1 -1
- package/dist/vega/{p-328ebbdb.entry.js → p-c032f626.entry.js} +1 -1
- package/dist/vega/{p-dd0bd78b.js → p-c34f4cbc.js} +1 -1
- package/dist/vega/{p-b12de1bf.entry.js → p-c422ee02.entry.js} +1 -1
- package/dist/vega/{p-e1c82ca9.js → p-c576e846.js} +1 -1
- package/dist/vega/{p-433b1395.entry.js → p-c7d46740.entry.js} +1 -1
- package/dist/vega/{p-f2384411.entry.js → p-cd04b149.entry.js} +1 -1
- package/dist/vega/{p-5147c30d.entry.js → p-cd0a108b.entry.js} +1 -1
- package/dist/vega/{p-3a230d4b.entry.js → p-d1bb6e7a.entry.js} +1 -1
- package/dist/vega/{p-200c8914.entry.js → p-d340ee3d.entry.js} +1 -1
- package/dist/vega/p-d897acd5.js +1 -0
- package/dist/vega/p-debf9e06.entry.js +1 -0
- package/dist/vega/{p-3c559c8b.js → p-e0a51e49.js} +1 -1
- package/dist/vega/{p-ba6881da.entry.js → p-e11c6ec4.entry.js} +1 -1
- package/dist/vega/{p-fa5cd8b1.js → p-e14323f3.js} +1 -1
- package/dist/vega/{p-a7517760.entry.js → p-e5abc288.entry.js} +1 -1
- package/dist/vega/{p-7977352b.entry.js → p-ea1a0046.entry.js} +1 -1
- package/dist/vega/{p-867cc602.entry.js → p-edd7aa92.entry.js} +1 -1
- package/dist/vega/p-ef1bbf14.js +1 -0
- package/dist/vega/{p-bd7725f7.entry.js → p-efc08027.entry.js} +1 -1
- package/dist/vega/{p-52878ea9.js → p-f485448a.js} +1 -1
- package/dist/vega/{p-4afd6715.entry.js → p-f8b2dbb9.entry.js} +1 -1
- package/dist/vega/{p-cf4b3d40.entry.js → p-f8bf379c.entry.js} +1 -1
- package/dist/vega/{p-4370b954.entry.js → p-f902305d.entry.js} +1 -1
- package/dist/vega/p-fe985b52.js +1 -0
- package/dist/vega/vega.esm.js +1 -1
- package/package.json +1 -1
- package/dist/collection/components/vega-dropdown/slimmers/controllers/vega-dropdown-keyboard-conttroller.js +0 -85
- package/dist/vega/p-0b2c4c0b.js +0 -1
- package/dist/vega/p-1fa22fda.js +0 -1
- package/dist/vega/p-2529820e.js +0 -1
- package/dist/vega/p-35628af4.js +0 -1
- package/dist/vega/p-3a620268.js +0 -1
- package/dist/vega/p-4473d8b1.js +0 -3
- package/dist/vega/p-5af312f8.js +0 -1
- package/dist/vega/p-67e88cd7.entry.js +0 -1
- package/dist/vega/p-67eaf77e.js +0 -1
- package/dist/vega/p-6d6b4495.entry.js +0 -1
- package/dist/vega/p-7b133734.entry.js +0 -1
- package/dist/vega/p-7b84a943.entry.js +0 -1
- package/dist/vega/p-83ad8988.js +0 -1
- package/dist/vega/p-8d2a9012.js +0 -1
- package/dist/vega/p-8d4be607.js +0 -1
- package/dist/vega/p-8d77c7cf.js +0 -1
- package/dist/vega/p-94b54a95.js +0 -1
- package/dist/vega/p-9c2b3279.js +0 -1
- package/dist/vega/p-9c9ff871.entry.js +0 -1
- package/dist/vega/p-9d90e271.entry.js +0 -1
- package/dist/vega/p-c8fb3aac.entry.js +0 -1
- package/dist/vega/p-daba4af1.js +0 -1
- package/dist/vega/p-ded1ecc1.entry.js +0 -1
- package/dist/vega/p-e1a65e06.entry.js +0 -1
- package/dist/vega/p-e469ba27.entry.js +0 -1
- package/dist/vega/p-e4c5cb4f.js +0 -1
- /package/dist/types/components/vega-dropdown/slimmers/controllers/{vega-dropdown-keyboard-conttroller.d.ts → vega-dropdown-keyboard-controller.d.ts} +0 -0
|
@@ -22,6 +22,7 @@ export class MergeCellsButtonSlimmer extends TableSettingButtonSlimmer {
|
|
|
22
22
|
icon: 'rte-table-merge-cells',
|
|
23
23
|
title: 'Merge cells',
|
|
24
24
|
showArrowIcon: true,
|
|
25
|
+
ariaLabel: 'Merge Cells',
|
|
25
26
|
});
|
|
26
27
|
this.handleDropdownItemClick = (input) => {
|
|
27
28
|
if (Object.values(SplitCellOperationType).includes(input.detail)) {
|
|
@@ -35,7 +36,7 @@ export class MergeCellsButtonSlimmer extends TableSettingButtonSlimmer {
|
|
|
35
36
|
};
|
|
36
37
|
}
|
|
37
38
|
renderBtnWrapper(renderBtn) {
|
|
38
|
-
return (h("vega-dropdown", { minWidth: 150, trigger: "click", ref: (el) => {
|
|
39
|
+
return (h("vega-dropdown", { role: "presentation", isScreenPosition: true, minWidth: 150, trigger: "click", ref: (el) => {
|
|
39
40
|
DomNodeSubjectObserverFactory.addUniqueObserverToNode(el, VegaDropdownClick, this.handleDropdownItemClick);
|
|
40
41
|
DomNodeSubjectObserverFactory.addUniqueObserverToNode(el, VegaDropdownShow, this.handleDropdownVisibilityChange);
|
|
41
42
|
DomNodeSubjectObserverFactory.addUniqueObserverToNode(el, VegaDropdownHide, this.handleDropdownVisibilityChange);
|
|
@@ -68,13 +69,13 @@ export class MergeCellsButtonSlimmer extends TableSettingButtonSlimmer {
|
|
|
68
69
|
renderActionList() {
|
|
69
70
|
const disabledMap = this.getMergeDirectionDisabledMap();
|
|
70
71
|
return (h("div", { tabIndex: 0, role: "menu", slot: "items", onMouseDown: this.preventDefaultEvent, onKeyDown: this.preventDefaultEvent },
|
|
71
|
-
h("vega-dropdown-item", { itemKey: MergeCellsOperationType.MERGE_CELLS }, "Merge cells"),
|
|
72
|
-
h("vega-dropdown-item", { itemKey: MergeCellsOperationType.MERGE_CELL_UP, disabled: disabledMap[MergeCellsOperationType.MERGE_CELL_UP] }, "Merge cell up"),
|
|
73
|
-
h("vega-dropdown-item", { itemKey: MergeCellsOperationType.MERGE_CELL_RIGHT, disabled: disabledMap[MergeCellsOperationType.MERGE_CELL_RIGHT] }, "Merge cell right"),
|
|
74
|
-
h("vega-dropdown-item", { itemKey: MergeCellsOperationType.MERGE_CELL_DOWN, disabled: disabledMap[MergeCellsOperationType.MERGE_CELL_DOWN] }, "Merge cell down"),
|
|
75
|
-
h("vega-dropdown-item", { itemKey: MergeCellsOperationType.MERGE_CELL_LEFT, disabled: disabledMap[MergeCellsOperationType.MERGE_CELL_LEFT] }, "Merge cell left"),
|
|
76
|
-
h("vega-dropdown-item", { itemKey: SplitCellOperationType.SPLIT_CELL_VERTICALLY, disabled: !this.selectSingleCell() }, "Split cell vertically"),
|
|
77
|
-
h("vega-dropdown-item", { itemKey: SplitCellOperationType.SPLIT_CELL_HORIZONTALLY, disabled: !this.selectSingleCell() }, "Split cell horizontally")));
|
|
72
|
+
h("vega-dropdown-item", { itemKey: MergeCellsOperationType.MERGE_CELLS, label: "Merge cells" }, "Merge cells"),
|
|
73
|
+
h("vega-dropdown-item", { itemKey: MergeCellsOperationType.MERGE_CELL_UP, label: "Merge cell up", disabled: disabledMap[MergeCellsOperationType.MERGE_CELL_UP] }, "Merge cell up"),
|
|
74
|
+
h("vega-dropdown-item", { itemKey: MergeCellsOperationType.MERGE_CELL_RIGHT, label: "Merge cell right", disabled: disabledMap[MergeCellsOperationType.MERGE_CELL_RIGHT] }, "Merge cell right"),
|
|
75
|
+
h("vega-dropdown-item", { itemKey: MergeCellsOperationType.MERGE_CELL_DOWN, label: "Merge cell down", disabled: disabledMap[MergeCellsOperationType.MERGE_CELL_DOWN] }, "Merge cell down"),
|
|
76
|
+
h("vega-dropdown-item", { itemKey: MergeCellsOperationType.MERGE_CELL_LEFT, label: "Merge cell left", disabled: disabledMap[MergeCellsOperationType.MERGE_CELL_LEFT] }, "Merge cell left"),
|
|
77
|
+
h("vega-dropdown-item", { itemKey: SplitCellOperationType.SPLIT_CELL_VERTICALLY, label: "Split cell vertically", disabled: !this.selectSingleCell() }, "Split cell vertically"),
|
|
78
|
+
h("vega-dropdown-item", { itemKey: SplitCellOperationType.SPLIT_CELL_HORIZONTALLY, label: "Split cell horizontally", disabled: !this.selectSingleCell() }, "Split cell horizontally")));
|
|
78
79
|
}
|
|
79
80
|
selectSingleCell() {
|
|
80
81
|
return this.selectedCells.length === 1;
|
|
@@ -1,13 +1,20 @@
|
|
|
1
|
+
var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
|
|
2
|
+
var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
|
|
3
|
+
if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
|
|
4
|
+
else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
|
|
5
|
+
return c > 3 && r && Object.defineProperty(target, key, r), r;
|
|
6
|
+
};
|
|
1
7
|
import { h } from '@stencil/core';
|
|
2
8
|
import { TableSettingButtonSlimmer } from './table-setting-button-slimmer.abstract';
|
|
3
9
|
import { DomNodeSubjectObserverFactory } from '../../../../../../../helpers/change-manager/subject/dom-node-subject/dom-node-subject-observer-factory';
|
|
4
|
-
import { VegaDropdownClick } from '../../../../../../../helpers/event-manager/event-id/vega-event-id';
|
|
10
|
+
import { VegaDropdownClick, VegaDropdownHide, VegaDropdownShow, } from '../../../../../../../helpers/event-manager/event-id/vega-event-id';
|
|
5
11
|
import { TableSettingType } from '../../../setting-event-handlers/setting-event-handler.abstract';
|
|
6
12
|
import { RowOperationType } from '../../../setting-event-handlers/row-operation';
|
|
7
13
|
import { RTETableHeadBlock } from '../../../dto/table-head-block';
|
|
8
14
|
import { RTETableBlock } from '../../../dto/table-block';
|
|
9
15
|
import { getParentBlockByType } from '../../../utils/utils';
|
|
10
16
|
import { RTETableBodyBlock } from '../../../dto/table-body-block';
|
|
17
|
+
import { MapToComponentField } from 'vega-slimmer/core';
|
|
11
18
|
/**
|
|
12
19
|
* Slimmer dedicated to building the row button.
|
|
13
20
|
*/
|
|
@@ -17,14 +24,20 @@ export class RowButtonSlimmer extends TableSettingButtonSlimmer {
|
|
|
17
24
|
icon: 'rte-table-row',
|
|
18
25
|
title: 'Row',
|
|
19
26
|
showArrowIcon: true,
|
|
27
|
+
ariaLabel: 'Row Operations',
|
|
20
28
|
});
|
|
21
29
|
this.handleDropdownItemClick = (input) => {
|
|
22
30
|
this.emitClickEvent([TableSettingType.ROW, input.detail]);
|
|
23
31
|
};
|
|
32
|
+
this.handleDropdownVisibilityChange = ({ eventName }) => {
|
|
33
|
+
this.isRowDropdownOpen = eventName.toLocaleLowerCase().indexOf('show') >= 0;
|
|
34
|
+
};
|
|
24
35
|
}
|
|
25
36
|
renderBtnWrapper(renderBtn) {
|
|
26
|
-
return (h("vega-dropdown", { minWidth: 180, trigger: "click", ref: (el) => {
|
|
37
|
+
return (h("vega-dropdown", { role: "presentation", isScreenPosition: true, minWidth: 180, trigger: "click", ref: (el) => {
|
|
27
38
|
DomNodeSubjectObserverFactory.addUniqueObserverToNode(el, VegaDropdownClick, this.handleDropdownItemClick);
|
|
39
|
+
DomNodeSubjectObserverFactory.addUniqueObserverToNode(el, VegaDropdownShow, this.handleDropdownVisibilityChange);
|
|
40
|
+
DomNodeSubjectObserverFactory.addUniqueObserverToNode(el, VegaDropdownHide, this.handleDropdownVisibilityChange);
|
|
28
41
|
} },
|
|
29
42
|
renderBtn(),
|
|
30
43
|
this.renderActionList()));
|
|
@@ -46,14 +59,13 @@ export class RowButtonSlimmer extends TableSettingButtonSlimmer {
|
|
|
46
59
|
renderActionList() {
|
|
47
60
|
const shouldChecked = this.areSelectedRowsHeaderRows();
|
|
48
61
|
return (h("div", { tabIndex: 0, role: "menu", slot: "items", onMouseDown: this.preventDefaultEvent, onKeyDown: this.preventDefaultEvent },
|
|
49
|
-
h("vega-dropdown-item", { itemKey: RowOperationType.HEADER_ROW },
|
|
50
|
-
h("vega-flex", { alignItems: "center", direction: "row", gap: "size-8" },
|
|
51
|
-
h("vega-toggle-switch", { key: shouldChecked.toString(), size: "small", checked: shouldChecked }),
|
|
52
|
-
|
|
53
|
-
h("vega-dropdown-item", { itemKey: RowOperationType.
|
|
54
|
-
h("vega-dropdown-item", { itemKey: RowOperationType.
|
|
55
|
-
h("vega-dropdown-item", {
|
|
56
|
-
h("vega-dropdown-item", { itemKey: RowOperationType.SELECT_ROW }, "Select row")));
|
|
62
|
+
h("vega-dropdown-item", { itemKey: RowOperationType.HEADER_ROW, label: "Header Row" },
|
|
63
|
+
h("vega-flex", { alignItems: "center", direction: "row", gap: "size-8", "aria-hidden": "true" },
|
|
64
|
+
h("vega-toggle-switch", { key: shouldChecked.toString(), size: "small", checked: shouldChecked, label: "Header Row" }))),
|
|
65
|
+
h("vega-dropdown-item", { itemKey: RowOperationType.ADD_ROW_ABOVE, label: "Insert row above" }, "Insert row above"),
|
|
66
|
+
h("vega-dropdown-item", { itemKey: RowOperationType.ADD_ROW_BELOW, label: "Insert row below" }, "Insert row below"),
|
|
67
|
+
h("vega-dropdown-item", { disabled: this.areAllRowsSelected(), itemKey: RowOperationType.DELETE_ROW, label: "Delete row" }, "Delete row"),
|
|
68
|
+
h("vega-dropdown-item", { itemKey: RowOperationType.SELECT_ROW, label: "Select row" }, "Select row")));
|
|
57
69
|
}
|
|
58
70
|
/**
|
|
59
71
|
* Check if all selected rows are header rows.
|
|
@@ -101,3 +113,6 @@ export class RowButtonSlimmer extends TableSettingButtonSlimmer {
|
|
|
101
113
|
return Array.from(selectedRows);
|
|
102
114
|
}
|
|
103
115
|
}
|
|
116
|
+
__decorate([
|
|
117
|
+
MapToComponentField({ writable: true })
|
|
118
|
+
], RowButtonSlimmer.prototype, "isRowDropdownOpen", void 0);
|
|
@@ -8,13 +8,13 @@ import { h } from '@stencil/core';
|
|
|
8
8
|
import { VegaInternalIconManager } from '../../../../../../../helpers/icon/internal-icon-manager';
|
|
9
9
|
import { MapToComponentField, VegaSlimmer } from 'vega-slimmer/core';
|
|
10
10
|
export class TableSettingButtonSlimmer extends VegaSlimmer {
|
|
11
|
-
constructor({ icon, title, showArrowIcon }) {
|
|
11
|
+
constructor({ icon, title, showArrowIcon, ariaLabel }) {
|
|
12
12
|
super();
|
|
13
13
|
this.renderBtn = () => {
|
|
14
14
|
const selected = this.isSelected();
|
|
15
15
|
const disable = this.isDisabled();
|
|
16
|
-
return (h("vega-tooltip", { key: `table-setting-${this.icon}`, text: this.getTitle(), placement: ['bottom', 'top'], trigger: "hover" },
|
|
17
|
-
h("button", { type: "button", class: {
|
|
16
|
+
return (h("vega-tooltip", { role: "presentation", key: `table-setting-${this.icon}`, text: this.getTitle(), placement: ['bottom', 'top'], trigger: "hover" },
|
|
17
|
+
h("button", { type: "button", "aria-label": this.ariaLabel, class: {
|
|
18
18
|
'rte-table-setting-item': true,
|
|
19
19
|
'rte-table-setting-item-disabled': disable,
|
|
20
20
|
'rte-table-setting-item-selected': selected,
|
|
@@ -26,13 +26,14 @@ export class TableSettingButtonSlimmer extends VegaSlimmer {
|
|
|
26
26
|
}
|
|
27
27
|
this.handleClick(event);
|
|
28
28
|
}, onKeyDown: this.preventDefaultEvent, onMouseDown: this.preventDefaultEvent },
|
|
29
|
-
h("vega-flex", { alignItems: "center", justifyContent: "center" },
|
|
29
|
+
h("vega-flex", { alignItems: "center", justifyContent: "center", "aria-hidden": "true" },
|
|
30
30
|
h("vega-icon", { icon: VegaInternalIconManager.getIconKey(this.icon), size: "size-16", color: this.getIconColor() }),
|
|
31
31
|
this.showArrowIcon ? (h("vega-icon", { size: "size-8", style: { marginLeft: '8px' }, icon: VegaInternalIconManager.getIconKey('chevron-down'), color: this.getIconColor() })) : null))));
|
|
32
32
|
};
|
|
33
33
|
this.icon = icon;
|
|
34
34
|
this.title = title;
|
|
35
35
|
this.showArrowIcon = showArrowIcon;
|
|
36
|
+
this.ariaLabel = ariaLabel;
|
|
36
37
|
}
|
|
37
38
|
render() {
|
|
38
39
|
return typeof this.renderBtnWrapper === 'function'
|
|
@@ -16,7 +16,7 @@ const buttonList = [
|
|
|
16
16
|
];
|
|
17
17
|
export class VegaRichTextTableSettingRenderer extends VegaSlimmer {
|
|
18
18
|
render() {
|
|
19
|
-
return (h("
|
|
19
|
+
return (h("div", { class: "rte-table-setting-content" }, buttonList.map((item) => this.renderButton(item))));
|
|
20
20
|
}
|
|
21
21
|
renderButton(item) {
|
|
22
22
|
switch (item) {
|
|
@@ -3,8 +3,14 @@
|
|
|
3
3
|
* Deprecated. Not for use in new websites.
|
|
4
4
|
* https://developer.mozilla.org/en-US/docs/Web/CSS/word-break#break-word
|
|
5
5
|
*/
|
|
6
|
+
:host .rte-table-setting-content {
|
|
7
|
+
display: flex;
|
|
8
|
+
gap: 8px;
|
|
9
|
+
align-items: center;
|
|
10
|
+
}
|
|
6
11
|
:host .rte-table-setting-item {
|
|
7
12
|
border: none;
|
|
13
|
+
border-radius: 4px;
|
|
8
14
|
padding-top: 4px;
|
|
9
15
|
padding-bottom: 4px;
|
|
10
16
|
padding-left: 4px;
|
|
@@ -12,6 +18,10 @@
|
|
|
12
18
|
cursor: pointer;
|
|
13
19
|
background-color: rgba(var(--v-bg-primary, 252, 252, 252, 1));
|
|
14
20
|
}
|
|
21
|
+
:host .rte-table-setting-item:focus {
|
|
22
|
+
outline: 2px solid rgba(var(--v-border-color-action, 19, 98, 226, 1));
|
|
23
|
+
outline-offset: -1px;
|
|
24
|
+
}
|
|
15
25
|
:host .rte-table-setting-item:not(.rte-table-setting-item-disabled, .rte-table-setting-item-selected):hover {
|
|
16
26
|
background-color: rgba(var(--v-bg-quaternary, 241, 248, 251, 1));
|
|
17
27
|
}
|
|
@@ -40,6 +40,7 @@ export class VegaRichTextTableSetting {
|
|
|
40
40
|
this.cellPropertiesButtonSlimmer = new CellPropertiesButtonSlimmer();
|
|
41
41
|
this.mergeCellsButtonSlimmer = new MergeCellsButtonSlimmer();
|
|
42
42
|
this.isColumnDropdownOpen = false;
|
|
43
|
+
this.isRowDropdownOpen = false;
|
|
43
44
|
this.isMergeCellsDropdownOpen = false;
|
|
44
45
|
/**
|
|
45
46
|
* Indicates whether the current table already has a caption.
|
|
@@ -154,6 +155,7 @@ export class VegaRichTextTableSetting {
|
|
|
154
155
|
}; }
|
|
155
156
|
static get states() { return {
|
|
156
157
|
"isColumnDropdownOpen": {},
|
|
158
|
+
"isRowDropdownOpen": {},
|
|
157
159
|
"isMergeCellsDropdownOpen": {}
|
|
158
160
|
}; }
|
|
159
161
|
static get events() { return [{
|
|
@@ -22,6 +22,7 @@ export class RTETokenToolbarButtonRenderer extends VegaRTEToolbarButtonRenderer
|
|
|
22
22
|
return this.renderDropdown(createElement, editorContext, {}, [
|
|
23
23
|
this.renderButton(createElement, editorContext, {
|
|
24
24
|
label: 'Tokens',
|
|
25
|
+
ariaLabel: 'Tokens',
|
|
25
26
|
showArrowIcon: true,
|
|
26
27
|
tooltip: { text: 'Insert token' },
|
|
27
28
|
}),
|
|
@@ -0,0 +1,70 @@
|
|
|
1
|
+
import { isNonNullable } from '../../../../../types/type-guard';
|
|
2
|
+
import { ActionHandlerInterceptor } from '../../../dto/action-handle-strategies/action-handle-interceptor.abstract';
|
|
3
|
+
import { methodPlaceholder } from 'vega-slimmer/core';
|
|
4
|
+
import { RTE_WORD_COUNT_KEY } from '../../../constants/constant';
|
|
5
|
+
/**
|
|
6
|
+
* Vetoes a commit that would push the character count past the hard limit, while
|
|
7
|
+
* still allowing deletions and formatting that keep or reduce the count.
|
|
8
|
+
*/
|
|
9
|
+
export class PreventHardLimitExceedInterceptor extends ActionHandlerInterceptor {
|
|
10
|
+
/**
|
|
11
|
+
* Intercept when the candidate exceeds the configured maximum. Hard-limit
|
|
12
|
+
* commits are vetoed only when they increase the count.
|
|
13
|
+
*
|
|
14
|
+
* @param {CommitValueAction} action - the commit action carrying the candidate and previous values
|
|
15
|
+
* @returns {boolean} - whether the commit should be vetoed
|
|
16
|
+
*/
|
|
17
|
+
canIntercept(action) {
|
|
18
|
+
var _a;
|
|
19
|
+
const extension = (_a = action.host.extensions) === null || _a === void 0 ? void 0 : _a.find((item) => this.isWordCountExtension(item));
|
|
20
|
+
if (!extension) {
|
|
21
|
+
return false;
|
|
22
|
+
}
|
|
23
|
+
const { hardLimit, maxChars } = extension.getConfig();
|
|
24
|
+
const nextContent = action.candidate.getPlainText();
|
|
25
|
+
const nextCount = extension.calculateTextCount(nextContent);
|
|
26
|
+
if (!isNonNullable(maxChars) || nextCount <= maxChars) {
|
|
27
|
+
return false;
|
|
28
|
+
}
|
|
29
|
+
let result = false;
|
|
30
|
+
let prevContent = '';
|
|
31
|
+
if (hardLimit && action.previous) {
|
|
32
|
+
prevContent = action.previous.getPlainText();
|
|
33
|
+
result = nextCount > extension.calculateTextCount(prevContent);
|
|
34
|
+
}
|
|
35
|
+
this.notifyCharsLimitExceeded(nextContent, prevContent, extension, action);
|
|
36
|
+
return result;
|
|
37
|
+
}
|
|
38
|
+
/**
|
|
39
|
+
* Not invoke the origin action handle to veto the commit that would push the character count past the hard limit.
|
|
40
|
+
*/
|
|
41
|
+
intercept() {
|
|
42
|
+
methodPlaceholder();
|
|
43
|
+
}
|
|
44
|
+
/**
|
|
45
|
+
* Notify the consumer when the candidate exceeds the configured character limit.
|
|
46
|
+
* The previous content is empty when hard limit is not enabled for the performance optimization.
|
|
47
|
+
*
|
|
48
|
+
* @param {string} nextContent - the candidate content string
|
|
49
|
+
* @param {string} prevContent - the previous content string
|
|
50
|
+
* @param {VegaRTEWordCountExtension} extension - the configured word count extension
|
|
51
|
+
* @param {CommitValueAction} action - the commit action carrying the candidate value
|
|
52
|
+
*/
|
|
53
|
+
notifyCharsLimitExceeded(nextContent, prevContent, extension, action) {
|
|
54
|
+
const { maxChars, hardLimit, onCharsLimitExceeded } = extension.getConfig();
|
|
55
|
+
if (typeof onCharsLimitExceeded === 'function') {
|
|
56
|
+
if (!hardLimit || prevContent !== nextContent) {
|
|
57
|
+
onCharsLimitExceeded(action.host, maxChars);
|
|
58
|
+
}
|
|
59
|
+
}
|
|
60
|
+
}
|
|
61
|
+
/**
|
|
62
|
+
* Check if the given extension is a word count extension.
|
|
63
|
+
*
|
|
64
|
+
* @param {VegaRTEExtension} extension - the extension to check
|
|
65
|
+
* @returns {boolean} - whether the extension is a word count extension
|
|
66
|
+
*/
|
|
67
|
+
isWordCountExtension(extension) {
|
|
68
|
+
return extension['type'] === RTE_WORD_COUNT_KEY;
|
|
69
|
+
}
|
|
70
|
+
}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export {};
|
|
@@ -0,0 +1,62 @@
|
|
|
1
|
+
import { RTE_WORD_COUNT_KEY } from '../../constants/constant';
|
|
2
|
+
import { VegaRTEExtension } from '../extension.abstract';
|
|
3
|
+
import { VegaRTEContent } from '../../dto/content-state';
|
|
4
|
+
import { COMMIT_VALUE } from '../../dto/actions/commit-value-action';
|
|
5
|
+
import { PreventHardLimitExceedInterceptor } from './action-handler-interceptors/prevent-hard-limit-exceed-interceptor';
|
|
6
|
+
/**
|
|
7
|
+
* Default configuration applied when a word count option is not provided.
|
|
8
|
+
*/
|
|
9
|
+
export const DEFAULT_WORD_COUNT_CONFIG = {
|
|
10
|
+
showCharCount: true,
|
|
11
|
+
countInlineBreak: false,
|
|
12
|
+
hardLimit: false,
|
|
13
|
+
};
|
|
14
|
+
/**
|
|
15
|
+
* Rich Text Editor extension that provides character counting.
|
|
16
|
+
*/
|
|
17
|
+
export class VegaRTEWordCountExtension extends VegaRTEExtension {
|
|
18
|
+
constructor(config = {}) {
|
|
19
|
+
super();
|
|
20
|
+
/**
|
|
21
|
+
* Runtime discriminator used by the core to identify this extension.
|
|
22
|
+
*/
|
|
23
|
+
this.type = RTE_WORD_COUNT_KEY;
|
|
24
|
+
this.config = Object.assign(Object.assign({}, DEFAULT_WORD_COUNT_CONFIG), config);
|
|
25
|
+
}
|
|
26
|
+
/**
|
|
27
|
+
* Get the extension configuration.
|
|
28
|
+
*
|
|
29
|
+
* @returns {ResolvedRTEWordCountConfig} The word count configuration.
|
|
30
|
+
*/
|
|
31
|
+
getConfig() {
|
|
32
|
+
return this.config;
|
|
33
|
+
}
|
|
34
|
+
/**
|
|
35
|
+
* Compute the character count data for the given editor content.
|
|
36
|
+
*
|
|
37
|
+
* @param {VegaRTEContent} value - The editor content.
|
|
38
|
+
* @returns {VegaRTEWordCountData} The computed character count data.
|
|
39
|
+
*/
|
|
40
|
+
getData(value) {
|
|
41
|
+
const plainText = value.getPlainText();
|
|
42
|
+
const { maxChars, hardLimit } = this.config;
|
|
43
|
+
const count = this.calculateTextCount(plainText);
|
|
44
|
+
return { count, maxChars, hardLimit };
|
|
45
|
+
}
|
|
46
|
+
/**
|
|
47
|
+
* Get the character count for the given content string.
|
|
48
|
+
*
|
|
49
|
+
* @param {string} content - The content string.
|
|
50
|
+
* @returns {number} The character count.
|
|
51
|
+
*/
|
|
52
|
+
calculateTextCount(content) {
|
|
53
|
+
const { countInlineBreak } = this.config;
|
|
54
|
+
const text = countInlineBreak ? content : content.replace(/\n/g, '');
|
|
55
|
+
// Use the spread operator so that surrogate pairs (e.g. emoji) count as a single character.
|
|
56
|
+
return [...text].length;
|
|
57
|
+
}
|
|
58
|
+
}
|
|
59
|
+
(() => {
|
|
60
|
+
// Gate over-limit commits through the shared action-interceptor pipeline.
|
|
61
|
+
VegaRTEExtension.registerActionHandlerInterceptor(VegaRTEContent.name, COMMIT_VALUE, new PreventHardLimitExceedInterceptor());
|
|
62
|
+
})();
|
|
@@ -32,6 +32,7 @@ export { VegaRTEPasteExtension } from './extensions/paste/paste-extension';
|
|
|
32
32
|
export { VegaRTECopyExtension } from './extensions/copy/copy-extension';
|
|
33
33
|
export { VegaRTECutExtension } from './extensions/cut/cut-extension';
|
|
34
34
|
export { VegaRTEImageExtension } from './extensions/image/image-extension';
|
|
35
|
+
export { VegaRTEWordCountExtension } from './extensions/word-count/word-count-extension';
|
|
35
36
|
// actions
|
|
36
37
|
export { ModifyContentAction, ModifyContentActionType } from './dto/actions/modify-content-action.abstract';
|
|
37
38
|
export { AppendChildrenAction } from './dto/actions/append-child-nodes-action';
|
|
@@ -8,7 +8,7 @@ import { VegaSlimmer, MapToComponentField, MapToComponentMethod } from 'vega-sli
|
|
|
8
8
|
import { RTETextBlock } from '../../dto/blocks/text-block';
|
|
9
9
|
import { RTETextNode } from '../../dto/nodes/text-node';
|
|
10
10
|
import stateEntityRenderingRegistry from './state-entity-rendering-registry';
|
|
11
|
-
import { ZERO_WIDTH_SPACE } from '../../constants/constant';
|
|
11
|
+
import { RTE_UPDATE_SOURCE_KEY, RTEUpdateSource, ZERO_WIDTH_SPACE } from '../../constants/constant';
|
|
12
12
|
import { UpdateTextAction } from '../../dto/actions/update-text-action';
|
|
13
13
|
import changeManager from '../../../../helpers/change-manager/change-manager';
|
|
14
14
|
import domNodeSubjectFactory from '../../../../helpers/change-manager/subject/dom-node-subject/dom-node-subject-factory';
|
|
@@ -215,6 +215,7 @@ export class InsertCompositionTextController extends VegaSlimmer {
|
|
|
215
215
|
const inputEvent = new CustomEvent('beforeinput');
|
|
216
216
|
inputEvent['data'] = text;
|
|
217
217
|
inputEvent['inputType'] = 'insertText';
|
|
218
|
+
inputEvent[RTE_UPDATE_SOURCE_KEY] = RTEUpdateSource.Composition;
|
|
218
219
|
this.editableElementRef.dispatchEvent(inputEvent);
|
|
219
220
|
}
|
|
220
221
|
}
|
|
@@ -15,6 +15,7 @@ import { InsertPasteHandler } from './helper/input-event-handler/insert-paste-ha
|
|
|
15
15
|
import { KeyboardLinkHandler } from './helper/input-event-handler/keyboard-link-handler';
|
|
16
16
|
import { generateUUID } from '../../../../utils/misc';
|
|
17
17
|
import { RTECodeBlock } from '../../dto/blocks/code-block';
|
|
18
|
+
import { RTE_UPDATE_SOURCE_KEY, RTEUpdateSource } from '../../constants/constant';
|
|
18
19
|
/** Used to monitoring the user input actions by event listener */
|
|
19
20
|
export class UserInputController extends VegaSlimmer {
|
|
20
21
|
constructor() {
|
|
@@ -50,6 +51,7 @@ export class UserInputController extends VegaSlimmer {
|
|
|
50
51
|
}
|
|
51
52
|
this.insertCompositionTextController.removeObserver();
|
|
52
53
|
let updateFlag = false;
|
|
54
|
+
let updateSource = RTEUpdateSource.Default;
|
|
53
55
|
switch (inputType) {
|
|
54
56
|
case 'insertParagraph':
|
|
55
57
|
updateFlag = true;
|
|
@@ -57,6 +59,10 @@ export class UserInputController extends VegaSlimmer {
|
|
|
57
59
|
break;
|
|
58
60
|
case 'insertText':
|
|
59
61
|
updateFlag = true;
|
|
62
|
+
updateSource =
|
|
63
|
+
e[RTE_UPDATE_SOURCE_KEY] === RTEUpdateSource.Composition
|
|
64
|
+
? RTEUpdateSource.Composition
|
|
65
|
+
: RTEUpdateSource.Default;
|
|
60
66
|
this.insertTextHandler.execute(this.value, this.selectionController, this.host, e);
|
|
61
67
|
break;
|
|
62
68
|
case 'insertLineBreak':
|
|
@@ -77,7 +83,7 @@ export class UserInputController extends VegaSlimmer {
|
|
|
77
83
|
break;
|
|
78
84
|
}
|
|
79
85
|
if (updateFlag) {
|
|
80
|
-
void this.valueController.flushChanges(this.value);
|
|
86
|
+
void this.valueController.flushChanges(this.value, true, updateSource);
|
|
81
87
|
}
|
|
82
88
|
};
|
|
83
89
|
}
|
package/dist/collection/components/vega-rich-text-editor/slimmers/controllers/value-controller.js
CHANGED
|
@@ -17,10 +17,18 @@ import { waitForComponentDidRender } from '../../../../helpers/common/wait-for-c
|
|
|
17
17
|
import { RTEEditorState } from '../../dto/editor-state';
|
|
18
18
|
import { RTESelectionState } from '../../dto/selection-state';
|
|
19
19
|
import stateEntityRenderingRegistry from './state-entity-rendering-registry';
|
|
20
|
+
import { ActionHandleStrategyRegistry } from '../../dto/action-handle-strategies/action-handle-strategy-registry';
|
|
21
|
+
import { CommitValueAction } from '../../dto/actions/commit-value-action';
|
|
22
|
+
import { RTEUpdateSource } from '../../constants/constant';
|
|
20
23
|
/**
|
|
21
24
|
* The value controller is responsible for updating the value of the rich text editor.
|
|
22
25
|
*/
|
|
23
26
|
export class ValueController extends VegaSlimmer {
|
|
27
|
+
constructor() {
|
|
28
|
+
super(...arguments);
|
|
29
|
+
// Deep clone of the last committed value, kept only while a commit validator is active, used to roll back rejected changes.
|
|
30
|
+
this.committedSnapshot = null;
|
|
31
|
+
}
|
|
24
32
|
/**
|
|
25
33
|
* Component lifecycle - [connectedCallback]{@link VegaRichTextEditor.connectedCallback}
|
|
26
34
|
*/
|
|
@@ -65,15 +73,47 @@ export class ValueController extends VegaSlimmer {
|
|
|
65
73
|
});
|
|
66
74
|
}
|
|
67
75
|
this.registerEditorRefAndContent();
|
|
76
|
+
this.seedCommittedSnapshot();
|
|
77
|
+
}
|
|
78
|
+
/**
|
|
79
|
+
* Seeds the rollback snapshot from the current value while a commit interceptor is active.
|
|
80
|
+
* Runs on load and on extension changes so runtime re-registration stays protected.
|
|
81
|
+
*/
|
|
82
|
+
seedCommittedSnapshot() {
|
|
83
|
+
if (this.wordCountController.hasWordCountHardLimit()) {
|
|
84
|
+
this.committedSnapshot = this.value ? this.value.clone(true) : null;
|
|
85
|
+
}
|
|
68
86
|
}
|
|
69
87
|
/**
|
|
70
88
|
* Updates the value of the editor and restore the selection.
|
|
71
89
|
*
|
|
72
90
|
* @param {VegaRTEContent} newValue The new value to set.
|
|
73
91
|
* @param {boolean} recordHistory - Whether to record the change in history.
|
|
92
|
+
* @param {RTEUpdateSource} updateSource - The source of the update, defaulting to 'default'.
|
|
74
93
|
*/
|
|
75
|
-
async flushChanges(newValue, recordHistory = true) {
|
|
76
|
-
|
|
94
|
+
async flushChanges(newValue, recordHistory = true, updateSource = RTEUpdateSource.Default) {
|
|
95
|
+
const previous = this.committedSnapshot;
|
|
96
|
+
const action = new CommitValueAction(newValue, previous, this.host);
|
|
97
|
+
const committed = ActionHandleStrategyRegistry.executeTheStrategy(action, newValue);
|
|
98
|
+
if (!committed) {
|
|
99
|
+
if (updateSource === RTEUpdateSource.Composition) {
|
|
100
|
+
// The composition input characters cannot be deleted, so we force a repaint to restore the content from the model.
|
|
101
|
+
this.vegaRichTextEditorRenderer.forceContentRepaint();
|
|
102
|
+
}
|
|
103
|
+
else {
|
|
104
|
+
// The commit was vetoed, so restore the placeholder the framework skipped repainting and roll back.
|
|
105
|
+
this.vegaRichTextEditorRenderer.restoreEmptyTextPlaceholders();
|
|
106
|
+
}
|
|
107
|
+
// Deep clone so the rolled-back value never shares nodes with the snapshot, which in-place edits would otherwise corrupt.
|
|
108
|
+
this.value = (previous !== null && previous !== void 0 ? previous : newValue).clone(true);
|
|
109
|
+
if (previous) {
|
|
110
|
+
// Seed the snapshot again so the next commit attempt has a valid rollback point.
|
|
111
|
+
this.seedCommittedSnapshot();
|
|
112
|
+
}
|
|
113
|
+
await waitForComponentDidRender(this.host);
|
|
114
|
+
return;
|
|
115
|
+
}
|
|
116
|
+
this.value = committed.clone();
|
|
77
117
|
if (recordHistory) {
|
|
78
118
|
this.historyController.registerHistory(new RTEEditorState(this.value, new RTESelectionState(this.selectionController.getCurrentRange())));
|
|
79
119
|
}
|
|
@@ -115,6 +155,12 @@ __decorate([
|
|
|
115
155
|
__decorate([
|
|
116
156
|
MapToComponentField()
|
|
117
157
|
], ValueController.prototype, "selectionController", void 0);
|
|
158
|
+
__decorate([
|
|
159
|
+
MapToComponentField()
|
|
160
|
+
], ValueController.prototype, "wordCountController", void 0);
|
|
161
|
+
__decorate([
|
|
162
|
+
MapToComponentField()
|
|
163
|
+
], ValueController.prototype, "vegaRichTextEditorRenderer", void 0);
|
|
118
164
|
__decorate([
|
|
119
165
|
MapToComponentField()
|
|
120
166
|
], ValueController.prototype, "sourceEditConfig", void 0);
|
|
@@ -130,3 +176,7 @@ __decorate([
|
|
|
130
176
|
__decorate([
|
|
131
177
|
MapToComponentMethod('watchValueUpdate')
|
|
132
178
|
], ValueController.prototype, "watchValueUpdate", null);
|
|
179
|
+
__decorate([
|
|
180
|
+
MapToComponentMethod('componentDidLoad'),
|
|
181
|
+
MapToComponentMethod('watchExtensions')
|
|
182
|
+
], ValueController.prototype, "seedCommittedSnapshot", null);
|
|
@@ -0,0 +1,79 @@
|
|
|
1
|
+
var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
|
|
2
|
+
var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
|
|
3
|
+
if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
|
|
4
|
+
else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
|
|
5
|
+
return c > 3 && r && Object.defineProperty(target, key, r), r;
|
|
6
|
+
};
|
|
7
|
+
import { MapToComponentField, VegaSlimmer } from 'vega-slimmer/core';
|
|
8
|
+
import { RTE_WORD_COUNT_KEY } from '../../constants/constant';
|
|
9
|
+
import { deepEqual } from '../../../../utils/object';
|
|
10
|
+
import { isNonNullable } from '../../../../types/type-guard';
|
|
11
|
+
/**
|
|
12
|
+
* Bridges the word count extension to the editor component so the footer UI can
|
|
13
|
+
* read whether the character count should be shown and its current value.
|
|
14
|
+
*/
|
|
15
|
+
export class WordCountController extends VegaSlimmer {
|
|
16
|
+
constructor() {
|
|
17
|
+
super(...arguments);
|
|
18
|
+
this.cachedValue = null;
|
|
19
|
+
this.cachedConfig = null;
|
|
20
|
+
this.cachedData = null;
|
|
21
|
+
}
|
|
22
|
+
/**
|
|
23
|
+
* Whether the character count UI should be rendered.
|
|
24
|
+
*
|
|
25
|
+
* @returns {boolean} True when a word count extension requests the UI.
|
|
26
|
+
*/
|
|
27
|
+
shouldShowUI() {
|
|
28
|
+
var _a;
|
|
29
|
+
return !!((_a = this.findWordCountExtension()) === null || _a === void 0 ? void 0 : _a.getConfig().showCharCount);
|
|
30
|
+
}
|
|
31
|
+
/**
|
|
32
|
+
* Compute the current character count data from the editor content.
|
|
33
|
+
*
|
|
34
|
+
* @returns {Nullable<VegaRTEWordCountData>} The count data or null when no word count extension is registered.
|
|
35
|
+
*/
|
|
36
|
+
getData() {
|
|
37
|
+
const extension = this.findWordCountExtension();
|
|
38
|
+
if (!extension) {
|
|
39
|
+
return null;
|
|
40
|
+
}
|
|
41
|
+
const value = this.host.value;
|
|
42
|
+
const config = extension.getConfig();
|
|
43
|
+
// VegaRTEContent is immutable, so a matching value/config reference means the data is unchanged.
|
|
44
|
+
if (this.cachedData && value === this.cachedValue && deepEqual(config, this.cachedConfig)) {
|
|
45
|
+
return this.cachedData;
|
|
46
|
+
}
|
|
47
|
+
this.cachedData = extension.getData(value);
|
|
48
|
+
this.cachedValue = value;
|
|
49
|
+
this.cachedConfig = config;
|
|
50
|
+
return this.cachedData;
|
|
51
|
+
}
|
|
52
|
+
/**
|
|
53
|
+
* Whether the word count extension gates commits with a hard character limit.
|
|
54
|
+
*
|
|
55
|
+
* @returns {boolean} True when a hard limit with a max character count is configured for this host.
|
|
56
|
+
*/
|
|
57
|
+
hasWordCountHardLimit() {
|
|
58
|
+
var _a;
|
|
59
|
+
const config = (_a = this.findWordCountExtension()) === null || _a === void 0 ? void 0 : _a.getConfig();
|
|
60
|
+
return !!config && Boolean(config.hardLimit) && isNonNullable(config.maxChars);
|
|
61
|
+
}
|
|
62
|
+
/**
|
|
63
|
+
* Locate the word count extension by its runtime `type` discriminator.
|
|
64
|
+
* Use this way instead of instanceof to avoid direct dependency on the extension class.
|
|
65
|
+
*
|
|
66
|
+
* @returns {Nullable<VegaRTEWordCountExtension>} The word count extension or null.
|
|
67
|
+
*/
|
|
68
|
+
findWordCountExtension() {
|
|
69
|
+
var _a;
|
|
70
|
+
const extension = ((_a = this.extensions) !== null && _a !== void 0 ? _a : []).find((ext) => 'type' in ext && ext['type'] === RTE_WORD_COUNT_KEY);
|
|
71
|
+
return extension !== null && extension !== void 0 ? extension : null;
|
|
72
|
+
}
|
|
73
|
+
}
|
|
74
|
+
__decorate([
|
|
75
|
+
MapToComponentField()
|
|
76
|
+
], WordCountController.prototype, "extensions", void 0);
|
|
77
|
+
__decorate([
|
|
78
|
+
MapToComponentField()
|
|
79
|
+
], WordCountController.prototype, "host", void 0);
|
package/dist/collection/components/vega-rich-text-editor/slimmers/renderers/toolbar-renderer.js
CHANGED
|
@@ -54,14 +54,17 @@ export class ToolbarRenderer extends VegaSlimmer {
|
|
|
54
54
|
const [renderedItems, totalVisibleCount] = this.renderToolbarItems();
|
|
55
55
|
return (h("vega-flex", { gap: "size-8", alignItems: "center", flexWrap: "wrap" },
|
|
56
56
|
this.allowSourceEdit && (h(Fragment, null,
|
|
57
|
-
h("div", { class: "toolbar-btn-group" }, this.sourceEditToolbarButtonSlimmer.render()),
|
|
57
|
+
h("div", { class: "toolbar-btn-group", role: "presentation" }, this.sourceEditToolbarButtonSlimmer.render()),
|
|
58
58
|
this.uniqueToolbarItems.length > 0 &&
|
|
59
59
|
totalVisibleCount > 0 &&
|
|
60
60
|
this.renderVegaDivider())),
|
|
61
61
|
renderedItems));
|
|
62
62
|
}
|
|
63
63
|
renderVegaDivider() {
|
|
64
|
-
|
|
64
|
+
// Mark the divider as decorative so screen readers (e.g. VoiceOver
|
|
65
|
+
// on Firefox) skip it when navigating from the Edit Source button
|
|
66
|
+
// to the next toolbar item.
|
|
67
|
+
return (h("vega-box", { height: "size-32", "aria-hidden": "true", role: "presentation" },
|
|
65
68
|
h("vega-divider", { direction: "vertical" })));
|
|
66
69
|
}
|
|
67
70
|
/**
|
|
@@ -100,7 +103,7 @@ export class ToolbarRenderer extends VegaSlimmer {
|
|
|
100
103
|
return null;
|
|
101
104
|
})
|
|
102
105
|
.filter(isNonNullable);
|
|
103
|
-
return (h("div", { class: { 'toolbar-btn-group': true, 'vega-hidden': visibleCountPerGroup < 1 } }, groupElement));
|
|
106
|
+
return (h("div", { class: { 'toolbar-btn-group': true, 'vega-hidden': visibleCountPerGroup < 1 }, role: "presentation" }, groupElement));
|
|
104
107
|
});
|
|
105
108
|
return [renderedItems, totalVisibleCount];
|
|
106
109
|
}
|
|
@@ -22,6 +22,7 @@ export class BulletsNumbersToolbarButtonSlimmer extends VisualModeToolbarButtonS
|
|
|
22
22
|
tooltip: {
|
|
23
23
|
text: 'Bullets',
|
|
24
24
|
},
|
|
25
|
+
ariaLabel: 'Bullets and Numbers',
|
|
25
26
|
});
|
|
26
27
|
this.bulletsToolbarButtonSlimmer = new BulletsToolbarButtonSlimmer();
|
|
27
28
|
this.numbersToolbarButtonSlimmer = new NumbersToolbarButtonSlimmer();
|
|
@@ -42,7 +43,7 @@ export class BulletsNumbersToolbarButtonSlimmer extends VisualModeToolbarButtonS
|
|
|
42
43
|
}
|
|
43
44
|
}
|
|
44
45
|
renderBtnWrapper(renderBtn) {
|
|
45
|
-
return (h("vega-popover", { showArrow: false, trigger: "click", placement: "bottom", alignment: "center", isScreenPosition: true, ref: (ref) => (this.popoverRef = ref) },
|
|
46
|
+
return (h("vega-popover", { showArrow: false, trigger: "click", placement: "bottom", alignment: "center", isScreenPosition: true, role: "presentation", ref: (ref) => (this.popoverRef = ref) },
|
|
46
47
|
h("div", { slot: "popover-content" }, renderBtn({ showArrowIcon: true })),
|
|
47
48
|
h("div", { slot: "popover" }, this.renderContent())));
|
|
48
49
|
}
|