@globalpayments/vega 2.92.0 → 2.93.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-2f326662.js → app-globals-f7ad9275.js} +13 -9
- package/dist/cjs/{child-nodes-event-prevent-slimmer-b9a5b3e2.js → child-nodes-event-prevent-slimmer-e67ee84c.js} +1 -1
- package/dist/cjs/{code-block-6435d641.js → code-block-2f3d0f38.js} +41 -11
- package/dist/cjs/{component-value-history-controller-slimmer.abstract-e4c9a5ba.js → component-value-history-controller-slimmer.abstract-31d2c7aa.js} +72 -39
- package/dist/cjs/{content-state-96ec9114.js → content-state-13daf87a.js} +61 -7
- package/dist/cjs/{date-required-rule-8c9e312b.js → date-required-rule-e65ddd7d.js} +1 -1
- package/dist/cjs/{design-token-3548af29.js → design-token-47393cbb.js} +3 -3
- package/dist/cjs/{element-appender-slimmer-3bf69990.js → element-appender-slimmer-29c4ac60.js} +17 -8
- package/dist/cjs/{event-emit-slimmer-5bab10c2.js → event-emit-slimmer-d234a619.js} +1 -1
- package/dist/cjs/{form-field-controller-slimmer-e0efac05.js → form-field-controller-slimmer-3bfcf88c.js} +1 -1
- package/dist/cjs/{image-annotation-action-853f72c8.js → image-annotation-action-c2b163bb.js} +3 -3
- package/dist/cjs/image-extension-4e99b620.js +39 -0
- package/dist/cjs/index.cjs.js +22 -19
- package/dist/cjs/{inject-keyboard-manager-0dccff1a.js → inject-keyboard-manager-4b2ebbe4.js} +1 -1
- package/dist/cjs/{internal-calendar-period-factory-6187ec4c.js → internal-calendar-period-factory-7a0ecdb1.js} +1 -1
- package/dist/cjs/{internal-translation-controller-48ebfd0f.js → internal-translation-controller-31f2b057.js} +4 -0
- package/dist/cjs/{internal-vega-event-manager-7196a847.js → internal-vega-event-manager-13c4012b.js} +2 -1
- package/dist/cjs/{keyboard-manager-dfe8d924.js → keyboard-manager-c78b46bd.js} +1 -1
- package/dist/cjs/{keyboard-manager-slimmer-4a2560a1.js → keyboard-manager-slimmer-d350c931.js} +1 -1
- package/dist/cjs/{link-extension-28d95849.js → link-extension-455c02b3.js} +3 -3
- package/dist/cjs/loader.cjs.js +15 -14
- package/dist/cjs/{month-view-generator-2e59b188.js → month-view-generator-006562dc.js} +1 -1
- package/dist/cjs/{public-rules-8727c42c.js → public-rules-c59eba88.js} +7 -7
- package/dist/cjs/{range-5cb3d1e4.js → range-bf80fa40.js} +1 -1
- package/dist/cjs/{replace-selected-text-action-a31563ed.js → replace-selected-text-action-a80f5a6a.js} +1 -1
- package/dist/cjs/{responsive-format-facade-98b89142.js → responsive-format-facade-1af54330.js} +1 -1
- package/dist/cjs/{rich-text-editor-required-rule-8e4d577d.js → rich-text-editor-required-rule-1085c71a.js} +1 -1
- package/dist/cjs/{split-cell-operation-9e3ab88d.js → split-cell-operation-2fa5c9e4.js} +3 -3
- package/dist/cjs/{state-border-formatter-626b0a14.js → state-border-formatter-501f6645.js} +1 -1
- package/dist/cjs/{string-format-strategy.abstract-981f43e1.js → string-format-strategy.abstract-a02bf002.js} +1 -1
- package/dist/cjs/{string-input-formatter-slimmer-fc4a0ba5.js → string-input-formatter-slimmer-9cca6151.js} +1 -1
- package/dist/cjs/{string-mask-strategy-b47fa159.js → string-mask-strategy-4c174ebf.js} +2 -2
- package/dist/cjs/{style-formatter-baf18624.js → style-formatter-2c749500.js} +2 -2
- package/dist/cjs/{time-required-rule-e77d174f.js → time-required-rule-04994a5e.js} +1 -1
- package/dist/cjs/{token-extension-3aec039f.js → token-extension-d217914d.js} +1300 -14
- package/dist/cjs/{translation-slimmer-1e05769e.js → translation-slimmer-7fb6e94c.js} +1 -1
- package/dist/cjs/{type-guard-7ab48d6c.js → type-guard-1c3770d4.js} +1 -1
- package/dist/cjs/{valid-credit-card-number-rule-52ba9c67.js → valid-credit-card-number-rule-f719a8c6.js} +1 -1
- package/dist/cjs/vega-accordion.cjs.entry.js +9 -9
- package/dist/cjs/vega-app-footer.cjs.entry.js +3 -3
- package/dist/cjs/vega-app-header-button.cjs.entry.js +9 -9
- package/dist/cjs/vega-banner.cjs.entry.js +3 -3
- package/dist/cjs/vega-box.cjs.entry.js +6 -6
- package/dist/cjs/vega-breadcrumb.cjs.entry.js +4 -4
- package/dist/cjs/vega-button-circle.cjs.entry.js +9 -9
- package/dist/cjs/vega-button-group_2.cjs.entry.js +4 -4
- package/dist/cjs/vega-button-link.cjs.entry.js +4 -4
- package/dist/cjs/vega-button.cjs.entry.js +7 -7
- package/dist/cjs/vega-calendar_5.cjs.entry.js +11 -11
- package/dist/cjs/vega-card.cjs.entry.js +5 -5
- package/dist/cjs/vega-carousel.cjs.entry.js +6 -6
- package/dist/cjs/vega-checkbox_2.cjs.entry.js +6 -6
- package/dist/cjs/vega-chip.cjs.entry.js +9 -9
- package/dist/cjs/vega-code-block.cjs.entry.js +12 -12
- package/dist/cjs/vega-color-picker.cjs.entry.js +5 -5
- package/dist/cjs/vega-color-swatch-picker.cjs.entry.js +7 -7
- package/dist/cjs/vega-color-swatch.cjs.entry.js +5 -5
- package/dist/cjs/vega-combo-box.cjs.entry.js +19 -13
- package/dist/cjs/vega-date-picker_2.cjs.entry.js +17 -17
- package/dist/cjs/vega-dialog_2.cjs.entry.js +20 -9
- package/dist/cjs/vega-divider.cjs.entry.js +5 -5
- package/dist/cjs/vega-dropdown_5.cjs.entry.js +693 -195
- package/dist/cjs/vega-env-manager-23b8b23c.js +2 -2
- package/dist/cjs/{vega-event-id-df22d80e.js → vega-event-id-58afed7a.js} +2 -0
- package/dist/cjs/vega-field-label.cjs.entry.js +5 -5
- package/dist/cjs/vega-file-uploader.cjs.entry.js +6 -6
- 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 +7 -7
- 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 +9 -9
- package/dist/cjs/vega-input-credit-card.cjs.entry.js +10 -10
- package/dist/cjs/vega-input-numeric.cjs.entry.js +9 -9
- package/dist/cjs/vega-input-passcode.cjs.entry.js +9 -9
- package/dist/cjs/vega-input-phone-number.cjs.entry.js +8 -8
- package/dist/cjs/vega-input-range.cjs.entry.js +7 -7
- package/dist/cjs/vega-input-select.cjs.entry.js +9 -9
- package/dist/cjs/vega-input.cjs.entry.js +9 -9
- package/dist/cjs/vega-item-toggle.cjs.entry.js +3 -3
- package/dist/cjs/vega-left-nav_5.cjs.entry.js +10 -10
- 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-selector-mobile.cjs.entry.js +3 -3
- package/dist/cjs/vega-pagination-page-size-selector-mobile.cjs.entry.js +3 -3
- package/dist/cjs/vega-pagination.cjs.entry.js +8 -8
- package/dist/cjs/vega-popover_2.cjs.entry.js +11 -11
- package/dist/cjs/vega-progress-tracker_2.cjs.entry.js +6 -6
- package/dist/cjs/vega-radio_2.cjs.entry.js +9 -9
- package/dist/cjs/vega-rich-text-content.cjs.entry.js +7 -7
- package/dist/cjs/vega-rich-text-editor_4.cjs.entry.js +472 -62
- package/dist/cjs/vega-rich-text-find-replace-panel.cjs.entry.js +4 -4
- package/dist/cjs/vega-rich-text-special-characters-panel.cjs.entry.js +8 -8
- package/dist/cjs/vega-rich-text-table-properties_3.cjs.entry.js +11 -11
- package/dist/cjs/vega-segment-control.cjs.entry.js +3 -3
- package/dist/cjs/vega-selection-chip_2.cjs.entry.js +8 -8
- package/dist/cjs/vega-selection-tile_2.cjs.entry.js +6 -6
- package/dist/cjs/vega-sidenav_3.cjs.entry.js +6 -6
- package/dist/cjs/vega-signature-capture.cjs.entry.js +10 -10
- package/dist/cjs/vega-stepper.cjs.entry.js +6 -6
- package/dist/cjs/vega-tab-group_2.cjs.entry.js +4 -4
- package/dist/cjs/vega-table_11.cjs.entry.js +911 -428
- package/dist/cjs/vega-textarea.cjs.entry.js +7 -9
- package/dist/cjs/vega-time-picker_2.cjs.entry.js +34 -14
- package/dist/cjs/vega-toggle-switch.cjs.entry.js +5 -5
- package/dist/cjs/vega-tooltip_2.cjs.entry.js +6 -6
- package/dist/cjs/vega.cjs.js +15 -14
- package/dist/collection/components/vega-combo-box/slimmers/renderers/vega-combo-box-dropdown-renderer.js +4 -1
- package/dist/collection/components/vega-combo-box/vega-combo-box.js +7 -1
- package/dist/collection/components/vega-dialog/vega-dialog.js +1 -1
- package/dist/collection/components/vega-dropdown/constants.js +1 -0
- package/dist/collection/components/vega-dropdown/slimmers/controllers/vega-dropdown-appender-controller.js +9 -0
- package/dist/collection/components/vega-dropdown/slimmers/controllers/vega-dropdown-children-controller.js +97 -4
- package/dist/collection/components/vega-dropdown/slimmers/controllers/vega-dropdown-select-all-controller.js +219 -0
- package/dist/collection/components/vega-dropdown/slimmers/controllers/vega-dropdown-selected-controller.js +78 -13
- package/dist/collection/components/vega-dropdown/slimmers/controllers/vega-dropdown-source-controller.js +13 -1
- package/dist/collection/components/vega-dropdown/slimmers/renderers/vega-dropdown-list-renderer.js +7 -0
- package/dist/collection/components/vega-dropdown/vega-dropdown-item/slimmers/controllers/vega-dropdown-item-state-controller.js +52 -1
- package/dist/collection/components/vega-dropdown/vega-dropdown-item/slimmers/renderers/vega-dropdown-item-renderer.js +4 -1
- package/dist/collection/components/vega-dropdown/vega-dropdown-item/vega-dropdown-item.js +5 -0
- package/dist/collection/components/vega-dropdown/vega-dropdown.js +126 -1
- package/dist/collection/components/vega-field-label/vega-field-label.js +1 -1
- package/dist/collection/components/vega-hint/vega-hint.js +1 -1
- package/dist/collection/components/vega-modal/slimmers/renderers/vega-modal-renderer.js +4 -1
- package/dist/collection/components/vega-modal/vega-modal.css +0 -1
- package/dist/collection/components/vega-modal/vega-modal.js +38 -0
- package/dist/collection/components/vega-rich-text-editor/assets/redo.js +1 -1
- package/dist/collection/components/vega-rich-text-editor/assets/undo.js +1 -1
- package/dist/collection/components/vega-rich-text-editor/dto/action-handle-strategies/modify-content-strategies/block-insert-line-break-strategy.js +11 -5
- package/dist/collection/components/vega-rich-text-editor/dto/action-handle-strategies/modify-content-strategies/block-split-with-text-node-strategy.js +9 -4
- package/dist/collection/components/vega-rich-text-editor/dto/action-handle-strategies/modify-content-strategies/paste-content-strategy.js +61 -5
- package/dist/collection/components/vega-rich-text-editor/dto/actions/paste-content-action.js +1 -0
- package/dist/collection/components/vega-rich-text-editor/dto/nodes/text-node.js +6 -1
- package/dist/collection/components/vega-rich-text-editor/extensions/blockquote/action-handler-interceptors/blockquote-exit-on-enter-interceptor.js +61 -0
- package/dist/collection/components/vega-rich-text-editor/extensions/blockquote/action-handler-strategies/block-transform-to-blockquote-strategy.js +40 -0
- package/dist/collection/components/vega-rich-text-editor/extensions/blockquote/action-handler-strategies/remove-blockquote-strategy.js +20 -0
- package/dist/collection/components/vega-rich-text-editor/extensions/blockquote/actions/remove-blockquote-action.js +17 -0
- package/dist/collection/components/vega-rich-text-editor/extensions/blockquote/actions/transform-to-blockquote-action.js +19 -0
- package/dist/collection/components/vega-rich-text-editor/extensions/blockquote/assets/quote-left.js +4 -0
- package/dist/collection/components/vega-rich-text-editor/extensions/blockquote/blockquote-extension.js +47 -0
- package/dist/collection/components/vega-rich-text-editor/extensions/blockquote/dto/blockquote-annotation.js +76 -0
- package/dist/collection/components/vega-rich-text-editor/extensions/blockquote/dto/rte-blockquote-block.js +70 -0
- package/dist/collection/components/vega-rich-text-editor/extensions/blockquote/element-to-dto-strategies/blockquote-to-blockquote-block-strategy.js +53 -0
- package/dist/collection/components/vega-rich-text-editor/extensions/blockquote/filter-styles-strategies/blockquote-block/blockquote-filter-styles-strategy.js +41 -0
- package/dist/collection/components/vega-rich-text-editor/extensions/blockquote/renderers/blockquote-block-renderer.js +21 -0
- package/dist/collection/components/vega-rich-text-editor/extensions/blockquote/renderers/blockquote-toolbar-button-renderer.js +260 -0
- package/dist/collection/components/vega-rich-text-editor/extensions/image/image-extension.js +34 -0
- package/dist/collection/components/vega-rich-text-editor/extensions/image/type.js +1 -0
- package/dist/collection/components/vega-rich-text-editor/extensions/paste/assets/paste.js +3 -0
- package/dist/collection/components/vega-rich-text-editor/extensions/paste/paste-chooser-ui.js +144 -0
- package/dist/collection/components/vega-rich-text-editor/extensions/paste/paste-constants.js +6 -0
- package/dist/collection/components/vega-rich-text-editor/extensions/paste/paste-extension.js +442 -0
- package/dist/collection/components/vega-rich-text-editor/extensions/table/renderers/table-renderer.js +1 -1
- package/dist/collection/components/vega-rich-text-editor/extensions/table/table-extension.js +4 -3
- package/dist/collection/components/vega-rich-text-editor/helpers/utils.js +14 -0
- package/dist/collection/components/vega-rich-text-editor/public-api.js +3 -0
- package/dist/collection/components/vega-rich-text-editor/slimmers/controllers/helper/input-event-handler/base-handler.js +1 -1
- package/dist/collection/components/vega-rich-text-editor/slimmers/controllers/helper/input-event-handler/insert-line-break-handler.js +1 -1
- package/dist/collection/components/vega-rich-text-editor/slimmers/controllers/helper/input-event-handler/insert-paste-handler.js +385 -25
- package/dist/collection/components/vega-rich-text-editor/slimmers/controllers/selection-controller.js +69 -36
- package/dist/collection/components/vega-rich-text-editor/slimmers/renderers/tools/image-toolbar-button-slimmer.js +59 -14
- package/dist/collection/components/vega-rich-text-editor/vega-rich-text-editor-toolbar-button/slimmers/renderers/vega-rich-text-editor-toolbar-button-renderer.js +6 -1
- package/dist/collection/components/vega-rich-text-editor/vega-rich-text-editor-toolbar-button/vega-rich-text-editor-toolbar-button.js +28 -1
- package/dist/collection/components/vega-rich-text-editor/vega-rich-text-editor.js +1 -1
- package/dist/collection/components/vega-rich-text-editor/vega-rich-text-image-editor/vega-rich-text-image-editor.js +1 -1
- package/dist/collection/components/vega-rich-text-editor/vega-rich-text-link-editor/vega-rich-text-link-editor.js +1 -1
- package/dist/collection/components/vega-table/slimmers/controllers/dto/column-render-input-model.js +32 -0
- package/dist/collection/components/vega-table/slimmers/controllers/vega-table-body-col-span-controller.js +77 -0
- package/dist/collection/components/vega-table/slimmers/renderers/vega-table-body-col-span-resolver.js +121 -0
- package/dist/collection/components/vega-table/slimmers/renderers/vega-table-cell-renderer.js +39 -14
- package/dist/collection/components/vega-table/slimmers/renderers/vega-table-pinned-renderer.js +207 -7
- package/dist/collection/components/vega-table/slimmers/renderers/vega-table-row-renderer.js +16 -3
- package/dist/collection/components/vega-table/vega-table-cell/vega-table-cell.js +24 -4
- package/dist/collection/components/vega-table/vega-table-expand-row/slimmers/controllers/vega-table-expand-row-col-span-controller.js +11 -2
- package/dist/collection/components/vega-table/vega-table-foot-cell/slimmers/renderers/vega-table-foot-cell-renderer.js +5 -1
- package/dist/collection/components/vega-table/vega-table-foot-cell/vega-table-foot-cell.js +22 -1
- package/dist/collection/components/vega-table/vega-table.css +5 -0
- package/dist/collection/components/vega-table/vega-table.js +5 -0
- package/dist/collection/components/vega-text/vega-text.js +1 -1
- package/dist/collection/components/vega-textarea/vega-textarea.js +1 -3
- package/dist/collection/components/vega-time-picker/slimmers/controllers/vega-time-picker-range-dropdown-controller.js +4 -0
- package/dist/collection/components/vega-time-picker/slimmers/controllers/vega-time-picker-single-dropdown-controller.js +4 -0
- package/dist/collection/components/vega-time-picker/vega-time-picker.js +39 -0
- package/dist/collection/constants/ui.js +1 -0
- package/dist/collection/global/scripts/before-vega-load.js +6 -0
- package/dist/collection/helpers/event-manager/event-id/component-event-id-map.js +2 -1
- package/dist/collection/helpers/event-manager/event-id/vega-event-id.js +1 -0
- package/dist/collection/helpers/slimmers/element-appender/element-appender-slimmer.js +11 -4
- package/dist/collection/helpers/translation/locales/en.js +4 -0
- package/dist/collection/helpers/ui/element-appender.js +5 -2
- package/dist/esm/{app-globals-5e0d319a.js → app-globals-9950d055.js} +13 -9
- package/dist/esm/{child-nodes-event-prevent-slimmer-f24618c5.js → child-nodes-event-prevent-slimmer-96c14f5a.js} +1 -1
- package/dist/esm/{code-block-b71b2aa4.js → code-block-ae2337c2.js} +41 -12
- package/dist/esm/{component-value-history-controller-slimmer.abstract-282df6e5.js → component-value-history-controller-slimmer.abstract-b1ee1b8e.js} +72 -39
- package/dist/esm/{content-state-909099f8.js → content-state-c3b85ae6.js} +61 -7
- package/dist/esm/{date-required-rule-15edb04a.js → date-required-rule-e06115f8.js} +1 -1
- package/dist/esm/{design-token-cb5ed6b9.js → design-token-4e682056.js} +3 -3
- package/dist/esm/{element-appender-slimmer-e41120ee.js → element-appender-slimmer-a4485ef6.js} +17 -8
- package/dist/esm/{event-emit-slimmer-03deba18.js → event-emit-slimmer-db4a82e0.js} +1 -1
- package/dist/esm/{form-field-controller-slimmer-cfe1d8a7.js → form-field-controller-slimmer-a1c7b28c.js} +1 -1
- package/dist/esm/{image-annotation-action-98232dc4.js → image-annotation-action-4c77d314.js} +3 -3
- package/dist/esm/image-extension-7108c27d.js +37 -0
- package/dist/esm/index.js +19 -19
- package/dist/esm/{inject-keyboard-manager-13cc77ab.js → inject-keyboard-manager-e8ddb78d.js} +1 -1
- package/dist/esm/{internal-calendar-period-factory-c3d70f3b.js → internal-calendar-period-factory-6f19d767.js} +1 -1
- package/dist/esm/{internal-translation-controller-8e8a514a.js → internal-translation-controller-09b8bd13.js} +4 -0
- package/dist/esm/{internal-vega-event-manager-75e5e3bb.js → internal-vega-event-manager-48690e5b.js} +2 -1
- package/dist/esm/{keyboard-manager-fe885db1.js → keyboard-manager-ec18721b.js} +1 -1
- package/dist/esm/{keyboard-manager-slimmer-61d4c79b.js → keyboard-manager-slimmer-531ddb0e.js} +1 -1
- package/dist/esm/{link-extension-f1a3bea7.js → link-extension-74eaa826.js} +3 -3
- package/dist/esm/loader.js +15 -14
- package/dist/esm/{month-view-generator-85eecb95.js → month-view-generator-afd78ff8.js} +1 -1
- package/dist/esm/{public-rules-323bea4b.js → public-rules-5fce32a5.js} +7 -7
- package/dist/esm/{range-e63068d1.js → range-8f877dbf.js} +1 -1
- package/dist/esm/{replace-selected-text-action-c0817b2b.js → replace-selected-text-action-c9278a0f.js} +1 -1
- package/dist/esm/{responsive-format-facade-fb424f5b.js → responsive-format-facade-299e6304.js} +1 -1
- package/dist/esm/{rich-text-editor-required-rule-0edb8ba7.js → rich-text-editor-required-rule-3047bab0.js} +1 -1
- package/dist/esm/{split-cell-operation-93b4d775.js → split-cell-operation-98d58410.js} +3 -3
- package/dist/esm/{state-border-formatter-1a528ca4.js → state-border-formatter-da52b626.js} +1 -1
- package/dist/esm/{string-format-strategy.abstract-72fc98aa.js → string-format-strategy.abstract-a45b5ff7.js} +1 -1
- package/dist/esm/{string-input-formatter-slimmer-b0c480d8.js → string-input-formatter-slimmer-4a032fed.js} +1 -1
- package/dist/esm/{string-mask-strategy-4e00c173.js → string-mask-strategy-37e53e48.js} +2 -2
- package/dist/esm/{style-formatter-5c1bea8d.js → style-formatter-3d5ddfb1.js} +2 -2
- package/dist/esm/{time-required-rule-df500b14.js → time-required-rule-355b73d2.js} +1 -1
- package/dist/esm/{token-extension-32d1fa56.js → token-extension-ecfafe94.js} +1298 -15
- package/dist/esm/{translation-slimmer-60408f13.js → translation-slimmer-3ea56354.js} +1 -1
- package/dist/esm/{type-guard-91087018.js → type-guard-2bfb2c7b.js} +1 -1
- package/dist/esm/{valid-credit-card-number-rule-681ecb75.js → valid-credit-card-number-rule-52c6b029.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-banner.entry.js +3 -3
- package/dist/esm/vega-box.entry.js +6 -6
- package/dist/esm/vega-breadcrumb.entry.js +4 -4
- package/dist/esm/vega-button-circle.entry.js +9 -9
- package/dist/esm/vega-button-group_2.entry.js +4 -4
- package/dist/esm/vega-button-link.entry.js +4 -4
- package/dist/esm/vega-button.entry.js +7 -7
- package/dist/esm/vega-calendar_5.entry.js +11 -11
- package/dist/esm/vega-card.entry.js +5 -5
- package/dist/esm/vega-carousel.entry.js +6 -6
- package/dist/esm/vega-checkbox_2.entry.js +6 -6
- 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 +5 -5
- package/dist/esm/vega-color-swatch-picker.entry.js +7 -7
- package/dist/esm/vega-color-swatch.entry.js +5 -5
- package/dist/esm/vega-combo-box.entry.js +19 -13
- package/dist/esm/vega-date-picker_2.entry.js +17 -17
- package/dist/esm/vega-dialog_2.entry.js +20 -9
- package/dist/esm/vega-divider.entry.js +5 -5
- package/dist/esm/vega-dropdown_5.entry.js +695 -197
- package/dist/esm/vega-env-manager-8f8dc473.js +2 -2
- package/dist/esm/{vega-event-id-d3017041.js → vega-event-id-270fe47e.js} +2 -1
- package/dist/esm/vega-field-label.entry.js +5 -5
- package/dist/esm/vega-file-uploader.entry.js +6 -6
- package/dist/esm/vega-flag-icon.entry.js +5 -5
- package/dist/esm/vega-flex.entry.js +6 -6
- package/dist/esm/vega-font.entry.js +5 -5
- package/dist/esm/vega-form.entry.js +7 -7
- package/dist/esm/vega-grid.entry.js +5 -5
- package/dist/esm/vega-icon.entry.js +5 -5
- package/dist/esm/vega-image-uploader.entry.js +9 -9
- package/dist/esm/vega-input-credit-card.entry.js +10 -10
- package/dist/esm/vega-input-numeric.entry.js +9 -9
- package/dist/esm/vega-input-passcode.entry.js +9 -9
- package/dist/esm/vega-input-phone-number.entry.js +8 -8
- package/dist/esm/vega-input-range.entry.js +7 -7
- package/dist/esm/vega-input-select.entry.js +9 -9
- package/dist/esm/vega-input.entry.js +9 -9
- package/dist/esm/vega-item-toggle.entry.js +3 -3
- package/dist/esm/vega-left-nav_5.entry.js +10 -10
- package/dist/esm/vega-loader-wrapper_2.entry.js +3 -3
- package/dist/esm/vega-page-notification_2.entry.js +1 -1
- package/dist/esm/vega-pagination-page-selector-mobile.entry.js +3 -3
- package/dist/esm/vega-pagination-page-size-selector-mobile.entry.js +3 -3
- package/dist/esm/vega-pagination.entry.js +8 -8
- package/dist/esm/vega-popover_2.entry.js +11 -11
- package/dist/esm/vega-progress-tracker_2.entry.js +6 -6
- package/dist/esm/vega-radio_2.entry.js +9 -9
- package/dist/esm/vega-rich-text-content.entry.js +7 -7
- package/dist/esm/vega-rich-text-editor_4.entry.js +472 -62
- package/dist/esm/vega-rich-text-find-replace-panel.entry.js +4 -4
- package/dist/esm/vega-rich-text-special-characters-panel.entry.js +8 -8
- package/dist/esm/vega-rich-text-table-properties_3.entry.js +11 -11
- package/dist/esm/vega-segment-control.entry.js +3 -3
- package/dist/esm/vega-selection-chip_2.entry.js +8 -8
- package/dist/esm/vega-selection-tile_2.entry.js +6 -6
- package/dist/esm/vega-sidenav_3.entry.js +6 -6
- package/dist/esm/vega-signature-capture.entry.js +10 -10
- package/dist/esm/vega-stepper.entry.js +6 -6
- package/dist/esm/vega-tab-group_2.entry.js +4 -4
- package/dist/esm/vega-table_11.entry.js +911 -428
- package/dist/esm/vega-textarea.entry.js +7 -9
- package/dist/esm/vega-time-picker_2.entry.js +34 -14
- package/dist/esm/vega-toggle-switch.entry.js +5 -5
- package/dist/esm/vega-tooltip_2.entry.js +6 -6
- package/dist/esm/vega.js +15 -14
- package/dist/sri/vega-sri-manifest.json +362 -358
- package/dist/types/components/vega-combo-box/types.d.ts +6 -1
- package/dist/types/components/vega-combo-box/vega-combo-box.d.ts +1 -0
- package/dist/types/components/vega-dropdown/constants.d.ts +1 -0
- package/dist/types/components/vega-dropdown/slimmers/controllers/vega-dropdown-appender-controller.d.ts +2 -0
- package/dist/types/components/vega-dropdown/slimmers/controllers/vega-dropdown-children-controller.d.ts +36 -0
- package/dist/types/components/vega-dropdown/slimmers/controllers/vega-dropdown-select-all-controller.d.ts +107 -0
- package/dist/types/components/vega-dropdown/slimmers/controllers/vega-dropdown-selected-controller.d.ts +17 -0
- package/dist/types/components/vega-dropdown/slimmers/controllers/vega-dropdown-source-controller.d.ts +5 -0
- package/dist/types/components/vega-dropdown/slimmers/renderers/vega-dropdown-list-renderer.d.ts +2 -0
- package/dist/types/components/vega-dropdown/types.d.ts +8 -0
- package/dist/types/components/vega-dropdown/vega-dropdown-item/slimmers/controllers/vega-dropdown-item-state-controller.d.ts +25 -0
- package/dist/types/components/vega-dropdown/vega-dropdown-item/slimmers/renderers/vega-dropdown-item-renderer.d.ts +1 -0
- package/dist/types/components/vega-dropdown/vega-dropdown-item/vega-dropdown-item.d.ts +4 -0
- package/dist/types/components/vega-dropdown/vega-dropdown.d.ts +48 -0
- package/dist/types/components/vega-modal/slimmers/renderers/vega-modal-renderer.d.ts +2 -1
- package/dist/types/components/vega-modal/vega-modal.d.ts +9 -1
- package/dist/types/components/vega-rich-text-editor/dto/action-handle-strategies/modify-content-strategies/paste-content-strategy.d.ts +14 -4
- package/dist/types/components/vega-rich-text-editor/dto/actions/paste-content-action.d.ts +7 -0
- package/dist/types/components/vega-rich-text-editor/extensions/blockquote/action-handler-interceptors/blockquote-exit-on-enter-interceptor.d.ts +34 -0
- package/dist/types/components/vega-rich-text-editor/extensions/blockquote/action-handler-strategies/block-transform-to-blockquote-strategy.d.ts +13 -0
- package/dist/types/components/vega-rich-text-editor/extensions/blockquote/action-handler-strategies/remove-blockquote-strategy.d.ts +13 -0
- package/dist/types/components/vega-rich-text-editor/extensions/blockquote/actions/remove-blockquote-action.d.ts +14 -0
- package/dist/types/components/vega-rich-text-editor/extensions/blockquote/actions/transform-to-blockquote-action.d.ts +18 -0
- package/dist/types/components/vega-rich-text-editor/extensions/blockquote/assets/quote-left.d.ts +3 -0
- package/dist/types/components/vega-rich-text-editor/extensions/blockquote/blockquote-extension.d.ts +9 -0
- package/dist/types/components/vega-rich-text-editor/extensions/blockquote/dto/blockquote-annotation.d.ts +48 -0
- package/dist/types/components/vega-rich-text-editor/extensions/blockquote/dto/rte-blockquote-block.d.ts +56 -0
- package/dist/types/components/vega-rich-text-editor/extensions/blockquote/element-to-dto-strategies/blockquote-to-blockquote-block-strategy.d.ts +35 -0
- package/dist/types/components/vega-rich-text-editor/extensions/blockquote/filter-styles-strategies/blockquote-block/blockquote-filter-styles-strategy.d.ts +31 -0
- package/dist/types/components/vega-rich-text-editor/extensions/blockquote/renderers/blockquote-block-renderer.d.ts +18 -0
- package/dist/types/components/vega-rich-text-editor/extensions/blockquote/renderers/blockquote-toolbar-button-renderer.d.ts +113 -0
- package/dist/types/components/vega-rich-text-editor/extensions/image/image-extension.d.ts +27 -0
- package/dist/types/components/vega-rich-text-editor/extensions/image/type.d.ts +13 -0
- package/dist/types/components/vega-rich-text-editor/extensions/paste/assets/paste.d.ts +3 -0
- package/dist/types/components/vega-rich-text-editor/extensions/paste/paste-chooser-ui.d.ts +58 -0
- package/dist/types/components/vega-rich-text-editor/extensions/paste/paste-constants.d.ts +6 -0
- package/dist/types/components/vega-rich-text-editor/extensions/paste/paste-extension.d.ts +150 -0
- package/dist/types/components/vega-rich-text-editor/helpers/utils.d.ts +7 -0
- package/dist/types/components/vega-rich-text-editor/public-api.d.ts +3 -0
- package/dist/types/components/vega-rich-text-editor/slimmers/controllers/helper/input-event-handler/insert-paste-handler.d.ts +114 -3
- package/dist/types/components/vega-rich-text-editor/slimmers/controllers/selection-controller.d.ts +22 -13
- package/dist/types/components/vega-rich-text-editor/slimmers/renderers/tools/image-toolbar-button-slimmer.d.ts +10 -2
- package/dist/types/components/vega-rich-text-editor/vega-rich-text-editor-toolbar-button/slimmers/renderers/vega-rich-text-editor-toolbar-button-renderer.d.ts +1 -0
- package/dist/types/components/vega-rich-text-editor/vega-rich-text-editor-toolbar-button/vega-rich-text-editor-toolbar-button.d.ts +6 -0
- package/dist/types/components/vega-rich-text-editor/vega-rich-text-editor.d.ts +4 -4
- package/dist/types/components/vega-rich-text-editor/vega-rich-text-image-editor/vega-rich-text-image-editor.d.ts +1 -1
- package/dist/types/components/vega-rich-text-editor/vega-rich-text-link-editor/vega-rich-text-link-editor.d.ts +1 -1
- package/dist/types/components/vega-table/interface.d.ts +18 -0
- package/dist/types/components/vega-table/slimmers/controllers/dto/column-render-input-model.d.ts +13 -0
- package/dist/types/components/vega-table/slimmers/controllers/vega-table-body-col-span-controller.d.ts +43 -0
- package/dist/types/components/vega-table/slimmers/renderers/vega-table-body-col-span-resolver.d.ts +38 -0
- package/dist/types/components/vega-table/slimmers/renderers/vega-table-cell-renderer.d.ts +11 -2
- package/dist/types/components/vega-table/slimmers/renderers/vega-table-pinned-renderer.d.ts +4 -0
- package/dist/types/components/vega-table/slimmers/renderers/vega-table-row-renderer.d.ts +1 -0
- package/dist/types/components/vega-table/vega-table-cell/slimmers/controllers/vega-table-row-state-subscriber.d.ts +1 -1
- package/dist/types/components/vega-table/vega-table-cell/vega-table-cell.d.ts +9 -0
- package/dist/types/components/vega-table/vega-table-foot-cell/slimmers/renderers/vega-table-foot-cell-renderer.d.ts +1 -0
- package/dist/types/components/vega-table/vega-table-foot-cell/vega-table-foot-cell.d.ts +9 -0
- package/dist/types/components/vega-table/vega-table.d.ts +2 -0
- package/dist/types/components/vega-time-picker/slimmers/controllers/vega-time-picker-range-dropdown-controller.d.ts +1 -0
- package/dist/types/components/vega-time-picker/slimmers/controllers/vega-time-picker-single-dropdown-controller.d.ts +1 -0
- package/dist/types/components/vega-time-picker/types.d.ts +7 -0
- package/dist/types/components/vega-time-picker/vega-time-picker.d.ts +11 -1
- package/dist/types/components.d.ts +80 -3
- package/dist/types/constants/ui.d.ts +1 -1
- package/dist/types/helpers/event-manager/event-id/vega-event-id.d.ts +1 -0
- package/dist/types/helpers/translation/interface.d.ts +5 -0
- package/dist/types/helpers/ui/element-appender.d.ts +4 -1
- package/dist/types/types/components.type.d.ts +5 -1
- package/dist/vega/index.esm.js +1 -1
- package/dist/vega/{p-481601c0.entry.js → p-05f937c5.entry.js} +1 -1
- package/dist/vega/{p-970115d6.js → p-07562b9c.js} +1 -1
- package/dist/vega/{p-d0ce752f.entry.js → p-09d50f59.entry.js} +1 -1
- package/dist/vega/{p-22f73e6e.entry.js → p-0cb78838.entry.js} +1 -1
- package/dist/vega/p-0e607b44.js +1 -0
- package/dist/vega/{p-c8eaf91c.entry.js → p-0f1d6ceb.entry.js} +1 -1
- package/dist/vega/{p-70817cf5.js → p-140616fe.js} +1 -1
- package/dist/vega/{p-f70f7ad8.entry.js → p-1818f399.entry.js} +1 -1
- package/dist/vega/{p-802bf369.js → p-18a5e8bc.js} +1 -1
- package/dist/vega/{p-4d9061fb.js → p-19c42e30.js} +1 -1
- package/dist/vega/{p-d7369441.js → p-1efab41b.js} +1 -1
- package/dist/vega/{p-92823583.js → p-21e21f51.js} +1 -1
- package/dist/vega/{p-c0629528.entry.js → p-26c7fe8b.entry.js} +1 -1
- package/dist/vega/p-282b37cb.js +1 -0
- package/dist/vega/{p-c78aeaf3.entry.js → p-2dc5edd0.entry.js} +1 -1
- package/dist/vega/{p-228c5de8.js → p-2de61f1b.js} +1 -1
- package/dist/vega/{p-82279b03.entry.js → p-2de88b4a.entry.js} +1 -1
- package/dist/vega/{p-438b7404.entry.js → p-2fcc604c.entry.js} +1 -1
- package/dist/vega/{p-aa32f2f3.js → p-32a67ba1.js} +1 -1
- package/dist/vega/p-392e049c.entry.js +1 -0
- package/dist/vega/{p-a268a4fb.entry.js → p-3932f964.entry.js} +1 -1
- package/dist/vega/{p-f515d189.entry.js → p-3c9da3cd.entry.js} +1 -1
- package/dist/vega/{p-5829a66d.entry.js → p-3f7b10b9.entry.js} +1 -1
- package/dist/vega/{p-5545a235.entry.js → p-422d88ae.entry.js} +1 -1
- package/dist/vega/p-4256252c.js +3 -0
- package/dist/vega/{p-8f078d0d.entry.js → p-44439ecc.entry.js} +1 -1
- package/dist/vega/{p-68e16c70.entry.js → p-45e8424a.entry.js} +1 -1
- package/dist/vega/p-4c49b2e3.js +1 -0
- package/dist/vega/{p-71e2a3ec.js → p-4d9562bc.js} +1 -1
- package/dist/vega/p-4e1aa86f.js +1 -0
- package/dist/vega/p-4ef5c4a7.entry.js +1 -0
- package/dist/vega/{p-9440a8a5.entry.js → p-4f327808.entry.js} +1 -1
- package/dist/vega/{p-2def8e3e.js → p-5139e516.js} +1 -1
- package/dist/vega/{p-2e58d99e.entry.js → p-56c4e349.entry.js} +1 -1
- package/dist/vega/{p-b730bf6e.js → p-5dbfffcd.js} +1 -1
- package/dist/vega/p-5f377954.js +1 -1
- package/dist/vega/{p-916dfa7e.entry.js → p-615a2b8c.entry.js} +1 -1
- package/dist/vega/{p-625351a3.entry.js → p-63101cb4.entry.js} +1 -1
- package/dist/vega/{p-7798254d.entry.js → p-653a6dd8.entry.js} +1 -1
- package/dist/vega/{p-d20587b4.entry.js → p-66b7d1c7.entry.js} +1 -1
- package/dist/vega/{p-9219201a.entry.js → p-6712a9c7.entry.js} +1 -1
- package/dist/vega/p-698fbd73.js +1 -0
- package/dist/vega/p-6ad7144a.entry.js +1 -0
- package/dist/vega/{p-9fafc956.entry.js → p-6b1893f6.entry.js} +1 -1
- package/dist/vega/{p-93dfab05.js → p-6d40635e.js} +1 -1
- package/dist/vega/{p-b799fc1f.entry.js → p-73fd18d9.entry.js} +1 -1
- package/dist/vega/p-751a5cd6.entry.js +1 -0
- package/dist/vega/{p-f7739cbb.entry.js → p-7b93a756.entry.js} +1 -1
- package/dist/vega/{p-2314494a.entry.js → p-7c8e579e.entry.js} +1 -1
- package/dist/vega/{p-4953bb1a.js → p-7d54e9c1.js} +1 -1
- package/dist/vega/{p-590c8720.entry.js → p-832d1a72.entry.js} +1 -1
- package/dist/vega/p-846b1ab9.entry.js +1 -0
- package/dist/vega/p-88863658.js +1 -0
- package/dist/vega/{p-c2e0f8b7.entry.js → p-8c1a5fa4.entry.js} +1 -1
- package/dist/vega/{p-f0bc2bbb.js → p-8d27b9cc.js} +1 -1
- package/dist/vega/{p-f365601c.entry.js → p-944b43ce.entry.js} +1 -1
- package/dist/vega/{p-8d69b201.js → p-95d6c85f.js} +1 -1
- package/dist/vega/{p-9b1d718c.entry.js → p-99b699be.entry.js} +1 -1
- package/dist/vega/p-9a01be93.js +1 -0
- package/dist/vega/{p-53c76d9d.entry.js → p-9a472a04.entry.js} +1 -1
- package/dist/vega/{p-18413b62.entry.js → p-9cafbc26.entry.js} +1 -1
- package/dist/vega/p-a359e53c.js +1 -0
- package/dist/vega/p-a9a87b9a.js +1 -0
- package/dist/vega/p-acbba6da.entry.js +1 -0
- package/dist/vega/{p-56cf1a65.entry.js → p-ad35dea4.entry.js} +1 -1
- package/dist/vega/{p-06c2ce2c.entry.js → p-af98539f.entry.js} +1 -1
- package/dist/vega/{p-136226f8.js → p-afb96938.js} +1 -1
- package/dist/vega/{p-e160a727.entry.js → p-b042e3b4.entry.js} +1 -1
- package/dist/vega/{p-5beec481.js → p-b1ff70bf.js} +1 -1
- package/dist/vega/{p-9cdedcfb.entry.js → p-b39d4a88.entry.js} +1 -1
- package/dist/vega/{p-c78e8081.entry.js → p-b5bee669.entry.js} +1 -1
- package/dist/vega/p-b5f308ee.entry.js +1 -0
- package/dist/vega/{p-43c3848f.entry.js → p-bbabb1c8.entry.js} +1 -1
- package/dist/vega/p-bbf1f988.entry.js +1 -0
- package/dist/vega/{p-e9cee498.entry.js → p-c2d28797.entry.js} +1 -1
- package/dist/vega/{p-40501057.entry.js → p-c3c0e415.entry.js} +1 -1
- package/dist/vega/{p-5946fadf.js → p-c553d37e.js} +1 -1
- package/dist/vega/{p-f6bccb06.entry.js → p-c5ecbc53.entry.js} +1 -1
- package/dist/vega/{p-2353b64f.entry.js → p-c9c6daa6.entry.js} +1 -1
- package/dist/vega/p-cb81fc2a.entry.js +1 -0
- package/dist/vega/p-ccb9bf86.js +1 -0
- package/dist/vega/{p-e371738b.js → p-ccf7518b.js} +1 -1
- package/dist/vega/{p-8b9a8603.entry.js → p-cf8d5b3f.entry.js} +1 -1
- package/dist/vega/{p-30561e1d.entry.js → p-d3a36d19.entry.js} +1 -1
- package/dist/vega/{p-cd1844ad.entry.js → p-d44943e2.entry.js} +1 -1
- package/dist/vega/{p-d3c8b871.entry.js → p-d4bb6f93.entry.js} +1 -1
- package/dist/vega/p-d62b85ff.entry.js +1 -0
- package/dist/vega/{p-ce7e9515.entry.js → p-d7f32ccf.entry.js} +1 -1
- package/dist/vega/p-dca3278f.js +1 -0
- package/dist/vega/{p-37dffdf6.entry.js → p-ddd28a8e.entry.js} +1 -1
- package/dist/vega/{p-2da12975.entry.js → p-ddf03de1.entry.js} +1 -1
- package/dist/vega/p-e0ecafca.js +1 -0
- package/dist/vega/p-e33e1e90.js +1 -0
- package/dist/vega/{p-5038b6d7.entry.js → p-e410c4ad.entry.js} +1 -1
- package/dist/vega/{p-a361456d.js → p-e4309574.js} +1 -1
- package/dist/vega/p-e5187a86.entry.js +1 -0
- package/dist/vega/{p-fc5dfb52.entry.js → p-e86c6802.entry.js} +1 -1
- package/dist/vega/{p-e3803943.js → p-ef605271.js} +1 -1
- package/dist/vega/{p-45ab490c.js → p-f0d4c78c.js} +1 -1
- package/dist/vega/{p-e41d9d0e.entry.js → p-f2f22b5d.entry.js} +1 -1
- package/dist/vega/{p-b6ebfd5c.entry.js → p-f8a29127.entry.js} +1 -1
- package/dist/vega/{p-cd9fb2ca.entry.js → p-fbd3be00.entry.js} +1 -1
- package/dist/vega/{p-450bf94d.entry.js → p-fda6e2cc.entry.js} +1 -1
- package/dist/vega/p-ff8dd200.js +1 -0
- package/dist/vega/{p-c67ce78c.entry.js → p-ffdacaf9.entry.js} +1 -1
- package/dist/vega/vega.esm.js +1 -1
- package/package.json +2 -16
- package/readme.md +0 -5
- package/dist/vega/p-0179f55d.js +0 -1
- package/dist/vega/p-07b56f2b.entry.js +0 -1
- package/dist/vega/p-209e0166.js +0 -1
- package/dist/vega/p-35df0f0a.entry.js +0 -1
- package/dist/vega/p-3cf4339a.entry.js +0 -1
- package/dist/vega/p-4e39adf5.entry.js +0 -1
- package/dist/vega/p-5319da71.entry.js +0 -1
- package/dist/vega/p-5de1acdb.js +0 -1
- package/dist/vega/p-5df9047c.js +0 -1
- package/dist/vega/p-683cfe24.js +0 -1
- package/dist/vega/p-7be548a7.js +0 -1
- package/dist/vega/p-8509c140.entry.js +0 -1
- package/dist/vega/p-8aa07ed0.js +0 -1
- package/dist/vega/p-8da860f6.js +0 -1
- package/dist/vega/p-ca9852bb.js +0 -1
- package/dist/vega/p-de885ef2.js +0 -1
- package/dist/vega/p-dee38163.entry.js +0 -1
- package/dist/vega/p-e5502873.entry.js +0 -1
- package/dist/vega/p-ea22cba0.js +0 -1
- package/dist/vega/p-ea54ce0a.js +0 -3
- package/dist/vega/p-ee3155bd.js +0 -1
- package/dist/vega/p-eee01ba7.entry.js +0 -1
- package/dist/vega/p-ef2b9846.entry.js +0 -1
- package/dist/vega/p-f4a01959.js +0 -1
- package/dist/vega/p-f5aefb2f.entry.js +0 -1
|
@@ -10,32 +10,34 @@ const accessibility = require('./accessibility-88f8af84.js');
|
|
|
10
10
|
const changeManager = require('./change-manager-a297e4d2.js');
|
|
11
11
|
const domNodeSubjectObserverFactory = require('./dom-node-subject-observer-factory-c82df135.js');
|
|
12
12
|
const vegaInternalEventId = require('./vega-internal-event-id-ecc5b87a.js');
|
|
13
|
-
const codeBlock = require('./code-block-
|
|
14
|
-
const linkExtension = require('./link-extension-
|
|
15
|
-
const typeGuard = require('./type-guard-
|
|
13
|
+
const codeBlock = require('./code-block-2f3d0f38.js');
|
|
14
|
+
const linkExtension = require('./link-extension-455c02b3.js');
|
|
15
|
+
const typeGuard = require('./type-guard-1c3770d4.js');
|
|
16
16
|
const internalIconManager = require('./internal-icon-manager-40bcac72.js');
|
|
17
|
-
const imageAnnotationAction = require('./image-annotation-action-
|
|
18
|
-
const vegaEventId = require('./vega-event-id-
|
|
17
|
+
const imageAnnotationAction = require('./image-annotation-action-c2b163bb.js');
|
|
18
|
+
const vegaEventId = require('./vega-event-id-58afed7a.js');
|
|
19
19
|
const misc = require('./misc-3d30df91.js');
|
|
20
20
|
const waitForComponentDidRender = require('./wait-for-component-did-render-02ca4bee.js');
|
|
21
|
-
const
|
|
22
|
-
const
|
|
21
|
+
const imageExtension = require('./image-extension-4e99b620.js');
|
|
22
|
+
const formFieldControllerSlimmer = require('./form-field-controller-slimmer-3bfcf88c.js');
|
|
23
|
+
const eventEmitSlimmer = require('./event-emit-slimmer-d234a619.js');
|
|
23
24
|
const subStateNotifySlimmer = require('./sub-state-notify-slimmer-18891389.js');
|
|
24
|
-
const contentState = require('./content-state-
|
|
25
|
+
const contentState = require('./content-state-13daf87a.js');
|
|
25
26
|
const alignLeft = require('./align-left-4a76df69.js');
|
|
26
|
-
const componentValueHistoryControllerSlimmer_abstract = require('./component-value-history-controller-slimmer.abstract-
|
|
27
|
+
const componentValueHistoryControllerSlimmer_abstract = require('./component-value-history-controller-slimmer.abstract-31d2c7aa.js');
|
|
27
28
|
const staticSubjectTitle = require('./static-subject-title-70c73b16.js');
|
|
28
29
|
const observer = require('./observer-f49483e8.js');
|
|
29
30
|
const timer = require('./timer-5f33058b.js');
|
|
30
31
|
const darkModeStateControllerSlimmer = require('./dark-mode-state-controller-slimmer-b454645a.js');
|
|
31
|
-
const replaceSelectedTextAction = require('./replace-selected-text-action-
|
|
32
|
-
const richTextEditorRequiredRule = require('./rich-text-editor-required-rule-
|
|
33
|
-
const childNodesEventPreventSlimmer = require('./child-nodes-event-prevent-slimmer-
|
|
34
|
-
const translationSlimmer = require('./translation-slimmer-
|
|
32
|
+
const replaceSelectedTextAction = require('./replace-selected-text-action-a80f5a6a.js');
|
|
33
|
+
const richTextEditorRequiredRule = require('./rich-text-editor-required-rule-1085c71a.js');
|
|
34
|
+
const childNodesEventPreventSlimmer = require('./child-nodes-event-prevent-slimmer-e67ee84c.js');
|
|
35
|
+
const translationSlimmer = require('./translation-slimmer-7fb6e94c.js');
|
|
35
36
|
const darkModeStyleController = require('./dark-mode-style-controller-32d4054a.js');
|
|
36
37
|
const autoRunWhenReRenderTaskQueueSlimmer_abstract = require('./auto-run-when-re-render-task-queue-slimmer.abstract-5734634d.js');
|
|
37
38
|
const array = require('./array-249289f2.js');
|
|
38
39
|
const chevronDown = require('./chevron-down-9847bf78.js');
|
|
40
|
+
const chevronUp = require('./chevron-up-21465cf7.js');
|
|
39
41
|
const trashCan = require('./trash-can-46a5e19a.js');
|
|
40
42
|
const ui = require('./ui-c91c37a7.js');
|
|
41
43
|
const remoteInvocationRegistry = require('./remote-invocation-registry-fc22fdd0.js');
|
|
@@ -44,7 +46,7 @@ require('./typography-3ea4fe41.js');
|
|
|
44
46
|
require('./object-b53e9416.js');
|
|
45
47
|
require('./breakpoints-ebde4837.js');
|
|
46
48
|
require('./ui-32120990.js');
|
|
47
|
-
require('./internal-translation-controller-
|
|
49
|
+
require('./internal-translation-controller-31f2b057.js');
|
|
48
50
|
require('./icon-manager-be358b32.js');
|
|
49
51
|
require('./create-public-api-runtime-metrics-slimmer-91b0cbfb.js');
|
|
50
52
|
require('./dynamic-slimmer-f31fdfd7.js');
|
|
@@ -56,10 +58,10 @@ require('./internal-form-field-validation-rule.abstract-07cdff46.js');
|
|
|
56
58
|
require('./mutation-observer-slimmer-749d5020.js');
|
|
57
59
|
require('./mutation-observer-filters-38cebc6d.js');
|
|
58
60
|
require('./sub-state-observer-slimmer-eee2f0ae.js');
|
|
59
|
-
require('./internal-vega-event-manager-
|
|
60
|
-
require('./range-
|
|
61
|
-
require('./keyboard-manager-slimmer-
|
|
62
|
-
require('./keyboard-manager-
|
|
61
|
+
require('./internal-vega-event-manager-13c4012b.js');
|
|
62
|
+
require('./range-bf80fa40.js');
|
|
63
|
+
require('./keyboard-manager-slimmer-d350c931.js');
|
|
64
|
+
require('./keyboard-manager-c78b46bd.js');
|
|
63
65
|
require('./vega-env-manager-23b8b23c.js');
|
|
64
66
|
require('./feature-flag-controller-c19d0b58.js');
|
|
65
67
|
require('./index-3ca118c4.js');
|
|
@@ -1037,6 +1039,7 @@ class ImageToolbarButtonSlimmer extends imageAnnotationAction.VisualModeToolbarB
|
|
|
1037
1039
|
super({
|
|
1038
1040
|
icon: 'image',
|
|
1039
1041
|
tooltip: { text: 'Image' },
|
|
1042
|
+
autoFocusOnClick: false,
|
|
1040
1043
|
});
|
|
1041
1044
|
this.insertURLImage = async () => {
|
|
1042
1045
|
const url = this.normalizeSafeImageUrl(this.insertURLInputRef.value);
|
|
@@ -1049,18 +1052,21 @@ class ImageToolbarButtonSlimmer extends imageAnnotationAction.VisualModeToolbarB
|
|
|
1049
1052
|
this.uploadInputRef.click();
|
|
1050
1053
|
break;
|
|
1051
1054
|
case 'url':
|
|
1052
|
-
|
|
1053
|
-
this.currentSelectedNodes = this.selectionController.getSelectedNodes();
|
|
1054
|
-
this.currentSelectedBlocks = this.selectionController.getSelectedBlocks();
|
|
1055
|
-
// eslint-disable-next-line @typescript-eslint/no-non-null-assertion
|
|
1056
|
-
this.host.parentElement.append(this.insertURLModalRef);
|
|
1057
|
-
this.insertURLInputRef.value = '';
|
|
1058
|
-
await this.insertURLModalRef.modal('show');
|
|
1059
|
-
await this.insertURLInputRef.doFocus();
|
|
1055
|
+
await this.openInsertURLModal();
|
|
1060
1056
|
break;
|
|
1061
1057
|
}
|
|
1062
1058
|
await this.dropdownRef.hide();
|
|
1063
1059
|
};
|
|
1060
|
+
this.openInsertURLModal = async () => {
|
|
1061
|
+
this.currentRange = this.selectionController.getCurrentRange();
|
|
1062
|
+
this.currentSelectedNodes = this.selectionController.getSelectedNodes();
|
|
1063
|
+
this.currentSelectedBlocks = this.selectionController.getSelectedBlocks();
|
|
1064
|
+
// eslint-disable-next-line @typescript-eslint/no-non-null-assertion
|
|
1065
|
+
this.host.parentElement.append(this.insertURLModalRef);
|
|
1066
|
+
this.insertURLInputRef.value = '';
|
|
1067
|
+
await this.insertURLModalRef.modal('show');
|
|
1068
|
+
await this.insertURLInputRef.doFocus();
|
|
1069
|
+
};
|
|
1064
1070
|
/**
|
|
1065
1071
|
* The below method is e2e-test covered in
|
|
1066
1072
|
* @see{module:should-update-url-properly-when-upload-images}
|
|
@@ -1082,15 +1088,33 @@ class ImageToolbarButtonSlimmer extends imageAnnotationAction.VisualModeToolbarB
|
|
|
1082
1088
|
};
|
|
1083
1089
|
}
|
|
1084
1090
|
renderBtnWrapper(renderBtn) {
|
|
1091
|
+
const shouldRenderDropdown = this.shouldRenderDropdown();
|
|
1092
|
+
const shouldRenderUpload = this.isImageUploadEnabled();
|
|
1093
|
+
const shouldRenderUrlInsertion = this.isImageURLInsertionEnabled();
|
|
1094
|
+
if (!shouldRenderUpload && !shouldRenderUrlInsertion) {
|
|
1095
|
+
return null;
|
|
1096
|
+
}
|
|
1085
1097
|
return (index.h("vega-box", null,
|
|
1086
|
-
index.h("vega-dropdown", { selectType: "none", trigger: "click", alignment: "center", ref: (ref) => {
|
|
1098
|
+
shouldRenderDropdown ? (index.h("vega-dropdown", { selectType: "none", trigger: "click", alignment: "center", ref: (ref) => {
|
|
1087
1099
|
this.dropdownRef = ref;
|
|
1088
1100
|
this.addDropdownObserver(ref);
|
|
1089
1101
|
} },
|
|
1090
1102
|
renderBtn({ showArrowIcon: true }),
|
|
1091
|
-
index.h("div", Object.assign({ slot: "items" }, super.preventLostFocus()), this.renderDropdownContent())),
|
|
1092
|
-
this.renderUploadInput(),
|
|
1093
|
-
this.renderInsertURLModal()));
|
|
1103
|
+
index.h("div", Object.assign({ slot: "items" }, super.preventLostFocus()), this.renderDropdownContent()))) : (renderBtn({})),
|
|
1104
|
+
shouldRenderUpload ? this.renderUploadInput() : null,
|
|
1105
|
+
shouldRenderUrlInsertion ? this.renderInsertURLModal() : null));
|
|
1106
|
+
}
|
|
1107
|
+
onClick() {
|
|
1108
|
+
if (this.shouldRenderDropdown()) {
|
|
1109
|
+
return;
|
|
1110
|
+
}
|
|
1111
|
+
if (this.isImageURLInsertionEnabled()) {
|
|
1112
|
+
void this.openInsertURLModal();
|
|
1113
|
+
return;
|
|
1114
|
+
}
|
|
1115
|
+
if (this.isImageUploadEnabled()) {
|
|
1116
|
+
this.uploadInputRef.click();
|
|
1117
|
+
}
|
|
1094
1118
|
}
|
|
1095
1119
|
isSelected() {
|
|
1096
1120
|
return false;
|
|
@@ -1103,10 +1127,20 @@ class ImageToolbarButtonSlimmer extends imageAnnotationAction.VisualModeToolbarB
|
|
|
1103
1127
|
this.shouldDisabledToolbar(selectedBlock, codeBlock.ModifyContentActionType.INSERT_IMAGE_TO_BLOCK));
|
|
1104
1128
|
}
|
|
1105
1129
|
renderDropdownContent() {
|
|
1106
|
-
return (index.h(index.Fragment, null,
|
|
1130
|
+
return (index.h(index.Fragment, null, this.getItems().map((item) => {
|
|
1107
1131
|
return (index.h("vega-dropdown-item", { key: item.key, itemKey: item.key }, this.translationSlimmer.t(item.label)));
|
|
1108
1132
|
})));
|
|
1109
1133
|
}
|
|
1134
|
+
getItems() {
|
|
1135
|
+
return ImageToolbarButtonSlimmer.allItems.filter((item) => {
|
|
1136
|
+
if (item.key === 'upload') {
|
|
1137
|
+
return this.isImageUploadEnabled();
|
|
1138
|
+
}
|
|
1139
|
+
else {
|
|
1140
|
+
return this.isImageURLInsertionEnabled();
|
|
1141
|
+
}
|
|
1142
|
+
});
|
|
1143
|
+
}
|
|
1110
1144
|
renderUploadInput() {
|
|
1111
1145
|
return (index.h("input", { type: "file", style: { display: 'none' }, ref: (node) => (this.uploadInputRef = node), accept: "image/*", onChange: this.fileInputChange }));
|
|
1112
1146
|
}
|
|
@@ -1139,6 +1173,18 @@ class ImageToolbarButtonSlimmer extends imageAnnotationAction.VisualModeToolbarB
|
|
|
1139
1173
|
addModalInsertObserver(buttonRef) {
|
|
1140
1174
|
domNodeSubjectObserverFactory.DomNodeSubjectObserverFactory.addUniqueObserverToNode(buttonRef, vegaEventId.VegaClick, this.insertURLImage);
|
|
1141
1175
|
}
|
|
1176
|
+
getImageExtensionConfig() {
|
|
1177
|
+
return imageExtension.VegaRTEImageExtension.configStore.get(this.host) || {};
|
|
1178
|
+
}
|
|
1179
|
+
isImageUploadEnabled() {
|
|
1180
|
+
return this.getImageExtensionConfig().enableImageUpload !== false;
|
|
1181
|
+
}
|
|
1182
|
+
isImageURLInsertionEnabled() {
|
|
1183
|
+
return this.getImageExtensionConfig().enableImageURLInsertion !== false;
|
|
1184
|
+
}
|
|
1185
|
+
shouldRenderDropdown() {
|
|
1186
|
+
return this.getItems().length > 1;
|
|
1187
|
+
}
|
|
1142
1188
|
/**
|
|
1143
1189
|
* The below method is e2e-test covered in
|
|
1144
1190
|
* @see{module:should-update-url-properly-when-upload-images}
|
|
@@ -1171,7 +1217,7 @@ class ImageToolbarButtonSlimmer extends imageAnnotationAction.VisualModeToolbarB
|
|
|
1171
1217
|
(() => {
|
|
1172
1218
|
internalIconManager.VegaInternalIconManager.register({ image: image });
|
|
1173
1219
|
})();
|
|
1174
|
-
ImageToolbarButtonSlimmer.
|
|
1220
|
+
ImageToolbarButtonSlimmer.allItems = [
|
|
1175
1221
|
{
|
|
1176
1222
|
key: 'upload',
|
|
1177
1223
|
label: 'Upload from computer',
|
|
@@ -1897,7 +1943,7 @@ class BaseHandler {
|
|
|
1897
1943
|
* @returns {boolean} boolean result
|
|
1898
1944
|
*/
|
|
1899
1945
|
isEmptyParagraph(node) {
|
|
1900
|
-
return node && node.childNodes && node.childNodes.length === 0;
|
|
1946
|
+
return node && node.nodeType === Node.ELEMENT_NODE && node.childNodes && node.childNodes.length === 0;
|
|
1901
1947
|
}
|
|
1902
1948
|
/**
|
|
1903
1949
|
* Removes selected nodes within a range in a rich text editor content.
|
|
@@ -2258,7 +2304,7 @@ class InsertLineBreakHandler extends BaseHandler {
|
|
|
2258
2304
|
getNextRTENode(lineBreakNode) {
|
|
2259
2305
|
const index = lineBreakNode.parent.children.indexOf(lineBreakNode);
|
|
2260
2306
|
const nextNode = lineBreakNode.parent.children[index + 1];
|
|
2261
|
-
return nextNode
|
|
2307
|
+
return nextNode && nextNode.isContentEditable() ? nextNode : lineBreakNode;
|
|
2262
2308
|
}
|
|
2263
2309
|
}
|
|
2264
2310
|
|
|
@@ -2538,6 +2584,7 @@ class PasteContentAction extends codeBlock.ModifyContentAction {
|
|
|
2538
2584
|
constructor(blocksToBeInserted, startNode, startOffset, rteRange) {
|
|
2539
2585
|
super();
|
|
2540
2586
|
this.type = codeBlock.ModifyContentActionType.PASTE_CONTENT;
|
|
2587
|
+
this.futureFocusAtEnd = false;
|
|
2541
2588
|
this.blocksToBeInserted = blocksToBeInserted;
|
|
2542
2589
|
this.startNode = startNode;
|
|
2543
2590
|
this.startOffset = startOffset;
|
|
@@ -2555,19 +2602,108 @@ class InsertPasteHandler extends BaseHandler {
|
|
|
2555
2602
|
* @param {InputEvent} event - Paste event.
|
|
2556
2603
|
*/
|
|
2557
2604
|
handleEvent(event) {
|
|
2605
|
+
const currentRange = this.selectionController.getCurrentRange();
|
|
2606
|
+
const payload = this.getPastePayload(event);
|
|
2607
|
+
if (this.insertPlainTextInline(payload, currentRange)) {
|
|
2608
|
+
return;
|
|
2609
|
+
}
|
|
2558
2610
|
const blocks = this.parsePastedElements(event);
|
|
2559
|
-
const
|
|
2560
|
-
if (
|
|
2611
|
+
const startContainer = (currentRange === null || currentRange === void 0 ? void 0 : currentRange.startContainer) || undefined;
|
|
2612
|
+
if (!startContainer) {
|
|
2613
|
+
// When the selection/range is unavailable (e.g. the caret was lost while
|
|
2614
|
+
// the paste-mode chooser had focus), still append the pasted content to
|
|
2615
|
+
// the root so the paste is never silently dropped.
|
|
2616
|
+
this.insertBlocksToRoot(blocks);
|
|
2617
|
+
}
|
|
2618
|
+
else if (this.isRootContainer(startContainer)) {
|
|
2561
2619
|
this.insertBlocksToRoot(blocks);
|
|
2562
2620
|
// TODO: Need to check below logic, it seems not correct https://gethired.atlassian.net/browse/VD-7779
|
|
2563
2621
|
}
|
|
2564
2622
|
else if (this.isEmptyParagraph(startContainer)) {
|
|
2565
|
-
this.insertBlocksBeforeEmptyBlock(blocks);
|
|
2623
|
+
this.insertBlocksBeforeEmptyBlock(blocks, currentRange);
|
|
2566
2624
|
}
|
|
2567
2625
|
else {
|
|
2568
|
-
this.insertBlocksToContent(blocks);
|
|
2626
|
+
this.insertBlocksToContent(blocks, currentRange);
|
|
2569
2627
|
}
|
|
2570
2628
|
}
|
|
2629
|
+
/**
|
|
2630
|
+
* Inserts plain-text paste content into the current text node at caret position.
|
|
2631
|
+
*
|
|
2632
|
+
* @param {RTEPastePayload} payload - Clipboard payload.
|
|
2633
|
+
* @param {RTERange} currentRange - Current selection range.
|
|
2634
|
+
* @returns {boolean} True when inline insertion is handled.
|
|
2635
|
+
*/
|
|
2636
|
+
insertPlainTextInline(payload, currentRange) {
|
|
2637
|
+
var _a, _b;
|
|
2638
|
+
const selectedNodes = ((_b = (_a = this.selectionController).getSelectedNodes) === null || _b === void 0 ? void 0 : _b.call(_a)) || [];
|
|
2639
|
+
if (!this.shouldPasteAsInlinePlainText(payload, currentRange, selectedNodes)) {
|
|
2640
|
+
return false;
|
|
2641
|
+
}
|
|
2642
|
+
const text = payload.text.replace(/\r\n?/g, '\n');
|
|
2643
|
+
const cursorNode = selectedNodes.find((node) => node instanceof codeBlock.RTETextNode) || currentRange.startNode;
|
|
2644
|
+
if (!(cursorNode instanceof codeBlock.RTETextNode)) {
|
|
2645
|
+
return false;
|
|
2646
|
+
}
|
|
2647
|
+
cursorNode.apply(new replaceSelectedTextAction.ReplaceSelectedTextAction(text, currentRange));
|
|
2648
|
+
this.selectionController.enqueueSelectionRangeFutureState(cursorNode, currentRange.startOffset + text.length);
|
|
2649
|
+
return true;
|
|
2650
|
+
}
|
|
2651
|
+
/**
|
|
2652
|
+
* Determines whether the payload should be inserted as inline plain text.
|
|
2653
|
+
*
|
|
2654
|
+
* @param {RTEPastePayload} payload - Clipboard payload.
|
|
2655
|
+
* @param {RTERange} currentRange - Current selection range.
|
|
2656
|
+
* @param {RTENode[]} selectedNodes - Currently selected nodes.
|
|
2657
|
+
* @returns {boolean} True when inline plain-text insertion should be used.
|
|
2658
|
+
*/
|
|
2659
|
+
shouldPasteAsInlinePlainText(payload, currentRange, selectedNodes = []) {
|
|
2660
|
+
if (!currentRange || !currentRange.startContainer) {
|
|
2661
|
+
return false;
|
|
2662
|
+
}
|
|
2663
|
+
if (this.isRootContainer(currentRange.startContainer)) {
|
|
2664
|
+
return false;
|
|
2665
|
+
}
|
|
2666
|
+
const text = (payload.text || '').replace(/\r\n?/g, '\n');
|
|
2667
|
+
if (!text) {
|
|
2668
|
+
return false;
|
|
2669
|
+
}
|
|
2670
|
+
const html = payload.html || '';
|
|
2671
|
+
if (!html) {
|
|
2672
|
+
return true;
|
|
2673
|
+
}
|
|
2674
|
+
const hasTextNodeSelection = selectedNodes.some((node) => node instanceof codeBlock.RTETextNode) ||
|
|
2675
|
+
currentRange.startNode instanceof codeBlock.RTETextNode;
|
|
2676
|
+
if (!hasTextNodeSelection) {
|
|
2677
|
+
return false;
|
|
2678
|
+
}
|
|
2679
|
+
// Use the inline plain‑text path only when HTML and plain text match exactly and no formatting exists;
|
|
2680
|
+
// otherwise route through the block path to preserve styles.
|
|
2681
|
+
const analysis = this.analyzeHtmlContent(html);
|
|
2682
|
+
return analysis.plainText === text && !analysis.hasFormatting;
|
|
2683
|
+
}
|
|
2684
|
+
/**
|
|
2685
|
+
* Analyzes HTML content to extract plain text and detect inline formatting,
|
|
2686
|
+
* parsing the HTML once to avoid redundant StylePreservation and DOMParser calls.
|
|
2687
|
+
*
|
|
2688
|
+
* @param {string} html - Clipboard text/html payload.
|
|
2689
|
+
* @returns {HtmlAnalysisResult} Analysis result with plainText and hasFormatting properties.
|
|
2690
|
+
*/
|
|
2691
|
+
analyzeHtmlContent(html) {
|
|
2692
|
+
const safeHtml = contentState.StylePreservator.preserve(html).getProcessedHtml();
|
|
2693
|
+
const parsedDoc = new DOMParser().parseFromString(safeHtml, 'text/html');
|
|
2694
|
+
const body = parsedDoc.body;
|
|
2695
|
+
// Extract plain text from the parsed document
|
|
2696
|
+
const plainText = (body.textContent || '').replace(/\r\n?/g, '\n');
|
|
2697
|
+
// Check for rich inline formatting
|
|
2698
|
+
let hasFormatting = Boolean(body.querySelector('b,strong,i,em,s,del,strike,u,mark'));
|
|
2699
|
+
if (!hasFormatting) {
|
|
2700
|
+
hasFormatting = Array.from(body.querySelectorAll('span')).some((span) => {
|
|
2701
|
+
const style = span.getAttribute('style') || span.getAttribute('data-style') || '';
|
|
2702
|
+
return this.styleContainsRichFormatting(style);
|
|
2703
|
+
});
|
|
2704
|
+
}
|
|
2705
|
+
return { plainText, hasFormatting };
|
|
2706
|
+
}
|
|
2571
2707
|
/**
|
|
2572
2708
|
* Insert the blocks to root
|
|
2573
2709
|
*
|
|
@@ -2577,37 +2713,54 @@ class InsertPasteHandler extends BaseHandler {
|
|
|
2577
2713
|
this.currentState.apply(new codeBlock.AppendChildrenAction(blocks));
|
|
2578
2714
|
}
|
|
2579
2715
|
/**
|
|
2580
|
-
* Insert the blocks
|
|
2716
|
+
* Insert the blocks into the current content block at the specified range.
|
|
2581
2717
|
*
|
|
2582
2718
|
* @param { RTEContentBlock[]} blocks - blocks
|
|
2719
|
+
* @param { RTERange } rteRange - rteRange
|
|
2583
2720
|
*/
|
|
2584
|
-
insertBlocksToContent(blocks) {
|
|
2585
|
-
|
|
2721
|
+
insertBlocksToContent(blocks, rteRange) {
|
|
2722
|
+
var _a;
|
|
2723
|
+
const isCollapsedRange = rteRange.startNode === rteRange.endNode && rteRange.startOffset === rteRange.endOffset;
|
|
2724
|
+
const cursorNode = isCollapsedRange
|
|
2725
|
+
? rteRange.startNode
|
|
2726
|
+
: this.removeSelectionRange();
|
|
2586
2727
|
if (cursorNode && cursorNode.parent) {
|
|
2587
|
-
const
|
|
2588
|
-
const pasteAction = new PasteContentAction(blocks, cursorNode, startOffset);
|
|
2728
|
+
const pasteAction = new PasteContentAction(blocks, cursorNode, rteRange.startOffset, rteRange);
|
|
2589
2729
|
cursorNode.parent.apply(pasteAction);
|
|
2590
|
-
if (pasteAction.
|
|
2591
|
-
this.
|
|
2730
|
+
if (pasteAction.futureFocusNode) {
|
|
2731
|
+
this.selectionController.enqueueSelectionRangeFutureState(pasteAction.futureFocusNode, (_a = pasteAction.futureFocusNodeOffset) !== null && _a !== void 0 ? _a : 0);
|
|
2732
|
+
}
|
|
2733
|
+
else if (pasteAction.futureFocusBlock) {
|
|
2734
|
+
this.switchCaretPositionToNextElement(pasteAction.futureFocusBlock, pasteAction.futureFocusAtEnd);
|
|
2592
2735
|
}
|
|
2593
2736
|
}
|
|
2737
|
+
else {
|
|
2738
|
+
// No resolvable cursor position: fall back to appending at the root so
|
|
2739
|
+
// the pasted content is preserved instead of being discarded.
|
|
2740
|
+
this.insertBlocksToRoot(blocks);
|
|
2741
|
+
}
|
|
2594
2742
|
}
|
|
2595
2743
|
/**
|
|
2596
2744
|
* Insert the blocks before to current block
|
|
2597
2745
|
*
|
|
2598
2746
|
* @param { RTEContentBlock[]} blocks - blocks
|
|
2747
|
+
* @param { RTERange } rteRange - rteRange
|
|
2599
2748
|
*/
|
|
2600
|
-
insertBlocksBeforeEmptyBlock(blocks) {
|
|
2749
|
+
insertBlocksBeforeEmptyBlock(blocks, rteRange) {
|
|
2601
2750
|
const cursorNode = this.removeSelectionRange();
|
|
2602
|
-
/* istanbul ignore next */
|
|
2603
2751
|
const currentBlock = cursorNode === null || cursorNode === void 0 ? void 0 : cursorNode.parent;
|
|
2604
2752
|
if (currentBlock) {
|
|
2605
|
-
const pasteAction = new PasteContentAction(blocks,
|
|
2753
|
+
const pasteAction = new PasteContentAction(blocks, cursorNode, 0, rteRange);
|
|
2606
2754
|
currentBlock.apply(pasteAction);
|
|
2607
2755
|
if (pasteAction.futureFocusBlock) {
|
|
2608
|
-
this.switchCaretPositionToNextElement(pasteAction.futureFocusBlock);
|
|
2756
|
+
this.switchCaretPositionToNextElement(pasteAction.futureFocusBlock, pasteAction.futureFocusAtEnd);
|
|
2609
2757
|
}
|
|
2610
2758
|
}
|
|
2759
|
+
else {
|
|
2760
|
+
// No resolvable empty block: fall back to appending at the root so the
|
|
2761
|
+
// pasted content is preserved instead of being discarded.
|
|
2762
|
+
this.insertBlocksToRoot(blocks);
|
|
2763
|
+
}
|
|
2611
2764
|
}
|
|
2612
2765
|
/**
|
|
2613
2766
|
* Format and parse elements from user paste with simple style preservation.
|
|
@@ -2616,30 +2769,76 @@ class InsertPasteHandler extends BaseHandler {
|
|
|
2616
2769
|
* @returns {RTEContentBlock[]} - RTEContentBlock.
|
|
2617
2770
|
*/
|
|
2618
2771
|
parsePastedElements(event) {
|
|
2619
|
-
|
|
2772
|
+
const payload = this.getPastePayload(event);
|
|
2773
|
+
let pastedHTML = payload.html || '';
|
|
2620
2774
|
if (!pastedHTML) {
|
|
2621
|
-
|
|
2622
|
-
|
|
2775
|
+
pastedHTML = this.parsePlainText(payload.text || '');
|
|
2776
|
+
}
|
|
2777
|
+
else if (this.shouldTreatAsPlainTextPayload(pastedHTML)) {
|
|
2778
|
+
const plainSource = payload.text || this.extractPlainTextFromHtml(pastedHTML);
|
|
2779
|
+
pastedHTML = this.parsePlainText(plainSource);
|
|
2623
2780
|
}
|
|
2624
2781
|
const context = contentState.StylePreservator.preserve(pastedHTML);
|
|
2625
2782
|
const safeHtml = context.getProcessedHtml();
|
|
2626
2783
|
const parser = new DOMParser();
|
|
2627
2784
|
const parsedDoc = parser.parseFromString(safeHtml, 'text/html');
|
|
2785
|
+
const rootElements = Array.from(parsedDoc.body.childNodes);
|
|
2786
|
+
context.restore(rootElements);
|
|
2787
|
+
this.normalizeImportedHtmlArtifacts(parsedDoc.body);
|
|
2628
2788
|
const htmlElements = Array.from(parsedDoc.body.childNodes);
|
|
2629
|
-
|
|
2630
|
-
return contentState.ElementToDtoStrategyProcessor.process(htmlElements)
|
|
2789
|
+
const resultBlocks = contentState.ElementToDtoStrategyProcessor.process(htmlElements)
|
|
2631
2790
|
.filter(Boolean)
|
|
2632
2791
|
.map((output) => output.toDto())
|
|
2633
2792
|
.filter(Boolean);
|
|
2793
|
+
// Fallback for synthetic payloads: if strategy conversion yields no blocks
|
|
2794
|
+
// but we still have plain text, create paragraph/text blocks directly.
|
|
2795
|
+
if (resultBlocks.length === 0 && (payload.text || '').trim() !== '') {
|
|
2796
|
+
return this.buildPlainTextFallbackBlocks(payload.text);
|
|
2797
|
+
}
|
|
2798
|
+
return resultBlocks;
|
|
2634
2799
|
}
|
|
2635
2800
|
/**
|
|
2636
|
-
*
|
|
2801
|
+
* Extracts readable plain text from clipboard HTML.
|
|
2637
2802
|
*
|
|
2638
|
-
* @param {
|
|
2803
|
+
* @param {string} html - Clipboard text/html payload.
|
|
2804
|
+
* @returns {string} - Plain text extracted from HTML.
|
|
2639
2805
|
*/
|
|
2640
|
-
|
|
2806
|
+
extractPlainTextFromHtml(html) {
|
|
2807
|
+
// Preserve inline styles before parsing to avoid style-src-attr CSP violations.
|
|
2808
|
+
const safeHtml = contentState.StylePreservator.preserve(html).getProcessedHtml();
|
|
2809
|
+
const parsedDoc = new DOMParser().parseFromString(safeHtml, 'text/html');
|
|
2810
|
+
return (parsedDoc.body.textContent || '').replace(/\r\n?/g, '\n');
|
|
2811
|
+
}
|
|
2812
|
+
/**
|
|
2813
|
+
* Builds plain-text paragraph blocks when element strategy parsing returns no output.
|
|
2814
|
+
*
|
|
2815
|
+
* @param {string} text - Plain text clipboard content.
|
|
2816
|
+
* @returns {RTEContentBlock[]} Fallback text blocks.
|
|
2817
|
+
*/
|
|
2818
|
+
buildPlainTextFallbackBlocks(text) {
|
|
2819
|
+
return text.split('\n').map((line) => {
|
|
2820
|
+
const paragraph = new codeBlock.RTETextBlock(misc.generateUUID(), 'paragraph');
|
|
2821
|
+
const textNode = new codeBlock.RTETextNode(`${paragraph.id}1`, line, paragraph);
|
|
2822
|
+
paragraph.apply(new codeBlock.AppendChildrenAction([textNode]));
|
|
2823
|
+
return paragraph;
|
|
2824
|
+
});
|
|
2825
|
+
}
|
|
2826
|
+
/**
|
|
2827
|
+
* Moves the caret to a block element in a rich text editor after paste.
|
|
2828
|
+
*
|
|
2829
|
+
* @param {RTEBlock} newBlock - Block element to move the caret to.
|
|
2830
|
+
* @param {boolean} atEnd - When true, places the caret after the last character of the block's last node; otherwise at offset 0 of the first node.
|
|
2831
|
+
*/
|
|
2832
|
+
switchCaretPositionToNextElement(newBlock, atEnd = false) {
|
|
2833
|
+
var _a, _b;
|
|
2641
2834
|
if (newBlock && newBlock.children) {
|
|
2642
|
-
|
|
2835
|
+
if (atEnd) {
|
|
2836
|
+
const lastNode = newBlock.children[newBlock.children.length - 1];
|
|
2837
|
+
this.selectionController.enqueueSelectionRangeFutureState(lastNode, (_b = (_a = lastNode.text) === null || _a === void 0 ? void 0 : _a.length) !== null && _b !== void 0 ? _b : 0);
|
|
2838
|
+
}
|
|
2839
|
+
else {
|
|
2840
|
+
this.selectionController.enqueueSelectionRangeFutureState(newBlock.children[0], 0);
|
|
2841
|
+
}
|
|
2643
2842
|
}
|
|
2644
2843
|
}
|
|
2645
2844
|
/**
|
|
@@ -2649,16 +2848,217 @@ class InsertPasteHandler extends BaseHandler {
|
|
|
2649
2848
|
* @returns {string} - The formatted HTML string.
|
|
2650
2849
|
*/
|
|
2651
2850
|
parsePlainText(content) {
|
|
2851
|
+
if (this.shouldRenderAsCodeBlock(content)) {
|
|
2852
|
+
return `<pre><code>${codeBlock.escapeHtml(content)}</code></pre>`;
|
|
2853
|
+
}
|
|
2652
2854
|
const lines = content.split('\n');
|
|
2653
2855
|
return lines
|
|
2654
2856
|
.map((line) => {
|
|
2655
2857
|
if (line === '') {
|
|
2656
2858
|
return '<p>\n</p>';
|
|
2657
2859
|
}
|
|
2658
|
-
return `<p>${line}</p>`;
|
|
2860
|
+
return `<p>${codeBlock.escapeHtml(line)}</p>`;
|
|
2659
2861
|
})
|
|
2660
2862
|
.join('');
|
|
2661
2863
|
}
|
|
2864
|
+
/**
|
|
2865
|
+
* Detects whether plain text likely represents source code.
|
|
2866
|
+
*
|
|
2867
|
+
* @param {string} content - Clipboard plain text content.
|
|
2868
|
+
* @returns {boolean} True when the content should render as a code block.
|
|
2869
|
+
*/
|
|
2870
|
+
shouldRenderAsCodeBlock(content) {
|
|
2871
|
+
const normalized = content.replace(/\r\n?/g, '\n').trim();
|
|
2872
|
+
if (!normalized) {
|
|
2873
|
+
return false;
|
|
2874
|
+
}
|
|
2875
|
+
const hasMultipleLines = normalized.includes('\n');
|
|
2876
|
+
const hasHtmlLikeTag = /<\/?[a-z][\w:-]*[^>]*>/i.test(normalized);
|
|
2877
|
+
const hasCodeFence = normalized.startsWith('```') && normalized.endsWith('```');
|
|
2878
|
+
const hasProgrammingTokens = /[{};]|=>|\b(function|const|let|var|class|import|export|return)\b/.test(normalized);
|
|
2879
|
+
if (hasCodeFence) {
|
|
2880
|
+
return true;
|
|
2881
|
+
}
|
|
2882
|
+
return hasHtmlLikeTag || (hasMultipleLines && hasProgrammingTokens);
|
|
2883
|
+
}
|
|
2884
|
+
/**
|
|
2885
|
+
* Removes pasted website artifacts that can cause visual regressions in the editor,
|
|
2886
|
+
* such as heading anchor tooltips and empty wrappers.
|
|
2887
|
+
*
|
|
2888
|
+
* @param {HTMLElement} body - Parsed clipboard html body.
|
|
2889
|
+
*/
|
|
2890
|
+
normalizeImportedHtmlArtifacts(body) {
|
|
2891
|
+
this.removeHeadingArtifacts(body);
|
|
2892
|
+
this.removeEmptyBlocks(body);
|
|
2893
|
+
}
|
|
2894
|
+
/**
|
|
2895
|
+
* Removes heading copy-link/tooltip artifacts copied from documentation pages.
|
|
2896
|
+
*
|
|
2897
|
+
* @param {HTMLElement} body - Parsed clipboard html body.
|
|
2898
|
+
*/
|
|
2899
|
+
removeHeadingArtifacts(body) {
|
|
2900
|
+
const selectors = [
|
|
2901
|
+
'a.js-heading-link',
|
|
2902
|
+
'a.c-heading-link',
|
|
2903
|
+
'.js-tooltip-popover',
|
|
2904
|
+
'.c-tooltip-popover',
|
|
2905
|
+
'[role="tooltip"]',
|
|
2906
|
+
];
|
|
2907
|
+
body.querySelectorAll(selectors.join(',')).forEach((element) => element.remove());
|
|
2908
|
+
}
|
|
2909
|
+
/**
|
|
2910
|
+
* Removes empty block wrappers introduced by web copy/paste.
|
|
2911
|
+
*
|
|
2912
|
+
* @param {HTMLElement} body - Parsed clipboard html body.
|
|
2913
|
+
*/
|
|
2914
|
+
removeEmptyBlocks(body) {
|
|
2915
|
+
const blockSelectors = ['p', 'div', 'section', 'article'];
|
|
2916
|
+
body.querySelectorAll(blockSelectors.join(',')).forEach((element) => {
|
|
2917
|
+
if (this.isEmptyVisualBlock(element)) {
|
|
2918
|
+
element.remove();
|
|
2919
|
+
}
|
|
2920
|
+
});
|
|
2921
|
+
}
|
|
2922
|
+
/**
|
|
2923
|
+
* Checks whether a block is visually empty and safe to remove.
|
|
2924
|
+
*
|
|
2925
|
+
* @param {HTMLElement} element - Block element to inspect.
|
|
2926
|
+
* @returns {boolean} True when the block has no visible content.
|
|
2927
|
+
*/
|
|
2928
|
+
isEmptyVisualBlock(element) {
|
|
2929
|
+
if (element.tagName === 'DIV' && element.classList.contains('doc')) {
|
|
2930
|
+
return false;
|
|
2931
|
+
}
|
|
2932
|
+
const hasVisualChild = Boolean(element.querySelector('img,video,audio,iframe,canvas,svg,table,hr,pre,code,blockquote'));
|
|
2933
|
+
if (hasVisualChild) {
|
|
2934
|
+
return false;
|
|
2935
|
+
}
|
|
2936
|
+
return (element.textContent || '').trim() === '';
|
|
2937
|
+
}
|
|
2938
|
+
/**
|
|
2939
|
+
* Checks whether a text/html payload is effectively plain text.
|
|
2940
|
+
*
|
|
2941
|
+
* Some sources (e.g. terminals, code editors) place the copied text inside an
|
|
2942
|
+
* off-screen / visually hidden wrapper such as
|
|
2943
|
+
* `<pre><div style="position: absolute; left: -9999px;">text</div></pre>`.
|
|
2944
|
+
* Preserving that markup as rich content would render the pasted text
|
|
2945
|
+
* off-screen (appearing empty), so such payloads are treated as plain text.
|
|
2946
|
+
*
|
|
2947
|
+
* @param {string} html - Clipboard text/html payload.
|
|
2948
|
+
* @returns {boolean} True when the payload has no visible rich content.
|
|
2949
|
+
*/
|
|
2950
|
+
shouldTreatAsPlainTextPayload(html) {
|
|
2951
|
+
// Preserve inline styles before parsing to avoid style-src-attr CSP violations
|
|
2952
|
+
// triggered by DOMParser processing HTML with style= attributes.
|
|
2953
|
+
const safeHtml = contentState.StylePreservator.preserve(html).getProcessedHtml();
|
|
2954
|
+
const parsedDoc = new DOMParser().parseFromString(safeHtml, 'text/html');
|
|
2955
|
+
const body = parsedDoc.body;
|
|
2956
|
+
if (body.children.length === 0) {
|
|
2957
|
+
return true;
|
|
2958
|
+
}
|
|
2959
|
+
const visibleClone = body.cloneNode(true);
|
|
2960
|
+
visibleClone.querySelectorAll('[style],[data-style]').forEach((element) => {
|
|
2961
|
+
if (this.isVisuallyHiddenElement(element)) {
|
|
2962
|
+
element.remove();
|
|
2963
|
+
}
|
|
2964
|
+
});
|
|
2965
|
+
if ((visibleClone.textContent || '').trim() !== '') {
|
|
2966
|
+
return false;
|
|
2967
|
+
}
|
|
2968
|
+
const hasVisibleMedia = Boolean(visibleClone.querySelector('img,video,audio,iframe,table,svg,canvas,math,object,embed'));
|
|
2969
|
+
if (hasVisibleMedia) {
|
|
2970
|
+
return false;
|
|
2971
|
+
}
|
|
2972
|
+
// If no visible text/media remains but original HTML contained text, it was
|
|
2973
|
+
// likely wrapped in hidden/off-screen containers and should be treated as plain text.
|
|
2974
|
+
return (body.textContent || '').trim() !== '';
|
|
2975
|
+
}
|
|
2976
|
+
/**
|
|
2977
|
+
* Returns true when a CSS style string contains bold, italic, underline,
|
|
2978
|
+
* strikethrough, or color declarations.
|
|
2979
|
+
*
|
|
2980
|
+
* @param {string} style - Inline CSS style string.
|
|
2981
|
+
* @returns {boolean} True when the style contains rich formatting.
|
|
2982
|
+
*/
|
|
2983
|
+
styleContainsRichFormatting(style) {
|
|
2984
|
+
if (!style.trim()) {
|
|
2985
|
+
return false;
|
|
2986
|
+
}
|
|
2987
|
+
for (const declaration of style.split(';')) {
|
|
2988
|
+
const colonIndex = declaration.indexOf(':');
|
|
2989
|
+
if (colonIndex === -1) {
|
|
2990
|
+
continue;
|
|
2991
|
+
}
|
|
2992
|
+
const prop = declaration.slice(0, colonIndex).trim().toLowerCase();
|
|
2993
|
+
const value = declaration
|
|
2994
|
+
.slice(colonIndex + 1)
|
|
2995
|
+
.trim()
|
|
2996
|
+
.toLowerCase();
|
|
2997
|
+
switch (prop) {
|
|
2998
|
+
case 'font-weight':
|
|
2999
|
+
if (/bold|[5-9]\d{2}|1000/.test(value)) {
|
|
3000
|
+
return true;
|
|
3001
|
+
}
|
|
3002
|
+
break;
|
|
3003
|
+
case 'font-style':
|
|
3004
|
+
if (/italic|oblique/.test(value)) {
|
|
3005
|
+
return true;
|
|
3006
|
+
}
|
|
3007
|
+
break;
|
|
3008
|
+
case 'text-decoration':
|
|
3009
|
+
case 'text-decoration-line':
|
|
3010
|
+
if (/underline|line-through/.test(value)) {
|
|
3011
|
+
return true;
|
|
3012
|
+
}
|
|
3013
|
+
break;
|
|
3014
|
+
case 'color':
|
|
3015
|
+
case 'background-color':
|
|
3016
|
+
return true;
|
|
3017
|
+
}
|
|
3018
|
+
}
|
|
3019
|
+
return false;
|
|
3020
|
+
}
|
|
3021
|
+
/**
|
|
3022
|
+
* Determines whether an element is visually hidden or rendered off-screen
|
|
3023
|
+
* via its inline style, indicating a clipboard plain-text wrapper.
|
|
3024
|
+
*
|
|
3025
|
+
* @param {HTMLElement} element - Element to inspect.
|
|
3026
|
+
* @returns {boolean} True when the element is hidden or off-screen.
|
|
3027
|
+
*/
|
|
3028
|
+
isVisuallyHiddenElement(element) {
|
|
3029
|
+
const style = (element.getAttribute('style') ||
|
|
3030
|
+
element.getAttribute('data-style') ||
|
|
3031
|
+
'').toLowerCase();
|
|
3032
|
+
if (!style) {
|
|
3033
|
+
return false;
|
|
3034
|
+
}
|
|
3035
|
+
if (/display\s*:\s*none/.test(style) || /visibility\s*:\s*hidden/.test(style)) {
|
|
3036
|
+
return true;
|
|
3037
|
+
}
|
|
3038
|
+
if (/clip\s*:\s*rect\(\s*0/.test(style) || style.includes('clip-path')) {
|
|
3039
|
+
return true;
|
|
3040
|
+
}
|
|
3041
|
+
const isPositioned = /position\s*:\s*(absolute|fixed)/.test(style);
|
|
3042
|
+
const isOffScreen = /(left|top|right|bottom)\s*:\s*-\d{3,}px/.test(style);
|
|
3043
|
+
return isPositioned && isOffScreen;
|
|
3044
|
+
}
|
|
3045
|
+
/**
|
|
3046
|
+
* Resolves paste payload from DataTransfer and synthetic-event fallback payload.
|
|
3047
|
+
*
|
|
3048
|
+
* @param {InputEvent} event - Paste event.
|
|
3049
|
+
* @returns {RTEPastePayload} - Paste payload.
|
|
3050
|
+
*/
|
|
3051
|
+
getPastePayload(event) {
|
|
3052
|
+
const eventPayload = event
|
|
3053
|
+
.rtePastePayload || { html: '', text: '' };
|
|
3054
|
+
if (!event.dataTransfer) {
|
|
3055
|
+
return eventPayload;
|
|
3056
|
+
}
|
|
3057
|
+
return {
|
|
3058
|
+
html: event.dataTransfer.getData('text/html') || eventPayload.html || '',
|
|
3059
|
+
text: event.dataTransfer.getData('text/plain') || eventPayload.text || '',
|
|
3060
|
+
};
|
|
3061
|
+
}
|
|
2662
3062
|
}
|
|
2663
3063
|
|
|
2664
3064
|
var __decorate$i = (undefined && undefined.__decorate) || function (decorators, target, key, desc) {
|
|
@@ -3667,7 +4067,7 @@ __decorate$c([
|
|
|
3667
4067
|
], CodeBlockToolbarButtonSlimmer.prototype, "value", void 0);
|
|
3668
4068
|
|
|
3669
4069
|
const undoIcon = {
|
|
3670
|
-
icon: `<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 512 512"><!--! Font Awesome Pro 7.2.0 by @fontawesome - https://fontawesome.com License - https://fontawesome.com/license (Commercial License) Copyright
|
|
4070
|
+
icon: `<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 512 512"><!--! Font Awesome Pro 7.2.0 by @fontawesome - https://fontawesome.com License - https://fontawesome.com/license (Commercial License) Copyright 2026 Fonticons, Inc. --><path fill="currentColor" d="M464 424c0 13.3 10.7 24 24 24s24-10.7 24-24l0-96c0-53-43-96-96-96l-334.1 0 95-95c9.4-9.4 9.4-24.6 0-33.9s-24.6-9.4-33.9 0L7 239c-4.5 4.5-7 10.6-7 17s2.5 12.5 7 17L143 409c9.4 9.4 24.6 9.4 33.9 0s9.4-24.6 0-33.9l-95-95 334.1 0c26.5 0 48 21.5 48 48l0 96z"/></svg>`,
|
|
3671
4071
|
};
|
|
3672
4072
|
|
|
3673
4073
|
var __decorate$b = (undefined && undefined.__decorate) || function (decorators, target, key, desc) {
|
|
@@ -3704,7 +4104,7 @@ __decorate$b([
|
|
|
3704
4104
|
], UndoToolbarButtonSlimmer.prototype, "historyController", void 0);
|
|
3705
4105
|
|
|
3706
4106
|
const redoIcon = {
|
|
3707
|
-
icon: `<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 512 512"><!--! Font Awesome Pro 7.2.0 by @fontawesome - https://fontawesome.com License - https://fontawesome.com/license (Commercial License) Copyright
|
|
4107
|
+
icon: `<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 512 512"><!--! Font Awesome Pro 7.2.0 by @fontawesome - https://fontawesome.com License - https://fontawesome.com/license (Commercial License) Copyright 2026 Fonticons, Inc. --><path fill="currentColor" d="M48 424c0 13.3-10.7 24-24 24S0 437.3 0 424l0-96c0-53 43-96 96-96l334.1 0-95-95c-9.4-9.4-9.4-24.6 0-33.9s24.6-9.4 33.9 0L505 239c4.5 4.5 7 10.6 7 17s-2.5 12.5-7 17L369 409c-9.4 9.4-24.6 9.4-33.9 0s-9.4-24.6 0-33.9l95-95-334.1 0c-26.5 0-48 21.5-48 48l0 96z"/></svg>`,
|
|
3708
4108
|
};
|
|
3709
4109
|
|
|
3710
4110
|
var __decorate$a = (undefined && undefined.__decorate) || function (decorators, target, key, desc) {
|
|
@@ -4709,13 +5109,14 @@ class VegaRichTextEditorToolbarButtonRenderer extends globalSlimmerRegistry.Vega
|
|
|
4709
5109
|
}, onClick: this.handleClick, disabled: this.disabled, hidden: this.hidden },
|
|
4710
5110
|
index.h("vega-flex", { gap: "size-8", justifyContent: "center", alignItems: "center" },
|
|
4711
5111
|
this.icon && (index.h("vega-icon", { size: "size-16", color: this.iconColor, icon: internalIconManager.VegaInternalIconManager.getIconKey(this.icon) })),
|
|
4712
|
-
this.showArrowIcon && (index.h("vega-icon", { size: "size-8", color: "text-secondary", icon: internalIconManager.VegaInternalIconManager.getIconKey('chevron-down') }))),
|
|
5112
|
+
this.showArrowIcon && (index.h("vega-icon", { size: "size-8", color: "text-secondary", icon: internalIconManager.VegaInternalIconManager.getIconKey(this.arrowIcon || 'chevron-down') }))),
|
|
4713
5113
|
index.h("slot", null)));
|
|
4714
5114
|
}
|
|
4715
5115
|
}
|
|
4716
5116
|
(() => {
|
|
4717
5117
|
internalIconManager.VegaInternalIconManager.register({
|
|
4718
5118
|
'chevron-down': chevronDown.chevronDown,
|
|
5119
|
+
'chevron-up': chevronUp.chevronUp,
|
|
4719
5120
|
});
|
|
4720
5121
|
})();
|
|
4721
5122
|
__decorate$5([
|
|
@@ -4730,6 +5131,9 @@ __decorate$5([
|
|
|
4730
5131
|
__decorate$5([
|
|
4731
5132
|
globalSlimmerRegistry.MapToComponentField()
|
|
4732
5133
|
], VegaRichTextEditorToolbarButtonRenderer.prototype, "showArrowIcon", void 0);
|
|
5134
|
+
__decorate$5([
|
|
5135
|
+
globalSlimmerRegistry.MapToComponentField()
|
|
5136
|
+
], VegaRichTextEditorToolbarButtonRenderer.prototype, "arrowIcon", void 0);
|
|
4733
5137
|
__decorate$5([
|
|
4734
5138
|
globalSlimmerRegistry.MapToComponentField()
|
|
4735
5139
|
], VegaRichTextEditorToolbarButtonRenderer.prototype, "icon", void 0);
|
|
@@ -4793,6 +5197,12 @@ const VegaRichTextEditorToolbarButton = class {
|
|
|
4793
5197
|
* @vegaVersion 2.34.0
|
|
4794
5198
|
*/
|
|
4795
5199
|
this.showArrowIcon = false;
|
|
5200
|
+
/**
|
|
5201
|
+
* Specifies the arrow icon name when `showArrowIcon` is enabled.
|
|
5202
|
+
*
|
|
5203
|
+
* @vegaVersion 2.93.0
|
|
5204
|
+
*/
|
|
5205
|
+
this.arrowIcon = 'chevron-down';
|
|
4796
5206
|
/**
|
|
4797
5207
|
* Specifies whether the toolbar button in the rich text editor is represented by an icon.
|
|
4798
5208
|
*
|