@globalpayments/vega 2.67.0 → 2.68.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.
Files changed (424) hide show
  1. package/dist/cjs/{app-globals-ab28f910.js → app-globals-f7106a22.js} +15 -14
  2. package/dist/cjs/{child-nodes-event-prevent-slimmer-eb803b14.js → child-nodes-event-prevent-slimmer-f8840f1b.js} +1 -1
  3. package/dist/cjs/{code-block-ab97a0a0.js → code-block-39074880.js} +514 -319
  4. package/dist/cjs/{component-value-history-controller-slimmer.abstract-5630341e.js → component-value-history-controller-slimmer.abstract-ddedf543.js} +2 -2
  5. package/dist/cjs/{design-token-847739f1.js → design-token-e14a4e66.js} +1 -1
  6. package/dist/cjs/{dto-renderer-manager-d0f0f2c0.js → dto-renderer-manager-b7969d6c.js} +1587 -1563
  7. package/dist/cjs/{element-appender-slimmer-aead9bbb.js → element-appender-slimmer-7ee27ab3.js} +5 -5
  8. package/dist/cjs/{event-emit-slimmer-d21a0935.js → event-emit-slimmer-7afe8d78.js} +1 -1
  9. package/dist/cjs/{token-extension-aa8d5cce.js → function-extension-f0e845f2.js} +1019 -96
  10. package/dist/cjs/{image-annotation-action-d84de785.js → image-annotation-action-7f0626c8.js} +15 -25
  11. package/dist/cjs/index.cjs.js +36 -24
  12. package/dist/cjs/{internal-vega-event-manager-4d1ce667.js → internal-vega-event-manager-45d451de.js} +5 -2
  13. package/dist/cjs/{language-extension-d257e65d.js → language-extension-d0103d1a.js} +5 -5
  14. package/dist/cjs/loader.cjs.js +8 -8
  15. package/dist/cjs/{public-rules-d2b9b8f0.js → public-rules-8b67eaba.js} +3 -3
  16. package/dist/cjs/{range-d610028e.js → range-002671b6.js} +1 -1
  17. package/dist/cjs/{responsive-format-facade-71e7b74c.js → responsive-format-facade-347db035.js} +3 -3
  18. package/dist/cjs/{rich-text-editor-required-rule-a8fe5f50.js → rich-text-editor-required-rule-5392bd8a.js} +1 -1
  19. package/dist/cjs/{style-formatter-6facb42b.js → style-formatter-0a09f0dd.js} +1 -1
  20. package/dist/cjs/vega-accordion.cjs.entry.js +7 -7
  21. package/dist/cjs/vega-app-header-button.cjs.entry.js +8 -8
  22. package/dist/cjs/vega-banner.cjs.entry.js +2 -2
  23. package/dist/cjs/vega-box.cjs.entry.js +8 -8
  24. package/dist/cjs/vega-breadcrumb.cjs.entry.js +3 -3
  25. package/dist/cjs/vega-button-circle.cjs.entry.js +9 -9
  26. package/dist/cjs/vega-button-group_2.cjs.entry.js +3 -3
  27. package/dist/cjs/vega-button-link.cjs.entry.js +3 -3
  28. package/dist/cjs/vega-button.cjs.entry.js +8 -8
  29. package/dist/cjs/vega-calendar_4.cjs.entry.js +307 -269
  30. package/dist/cjs/vega-card.cjs.entry.js +7 -7
  31. package/dist/cjs/vega-carousel.cjs.entry.js +7 -7
  32. package/dist/cjs/vega-checkbox_2.cjs.entry.js +3 -3
  33. package/dist/cjs/vega-chip.cjs.entry.js +9 -9
  34. package/dist/cjs/vega-code-block.cjs.entry.js +6 -6
  35. package/dist/cjs/vega-color-picker.cjs.entry.js +2 -2
  36. package/dist/cjs/vega-combo-box.cjs.entry.js +3 -3
  37. package/dist/cjs/vega-date-picker_2.cjs.entry.js +12 -12
  38. package/dist/cjs/vega-dialog_2.cjs.entry.js +15 -15
  39. package/dist/cjs/vega-divider.cjs.entry.js +7 -7
  40. package/dist/cjs/vega-dropdown_5.cjs.entry.js +9 -9
  41. package/dist/cjs/vega-env-manager-23b8b23c.js +2 -2
  42. package/dist/cjs/vega-field-label.cjs.entry.js +24 -5
  43. package/dist/cjs/vega-file-uploader.cjs.entry.js +2 -2
  44. package/dist/cjs/vega-flag-icon.cjs.entry.js +6 -6
  45. package/dist/cjs/vega-flex.cjs.entry.js +8 -8
  46. package/dist/cjs/vega-font.cjs.entry.js +7 -7
  47. package/dist/cjs/vega-form.cjs.entry.js +3 -3
  48. package/dist/cjs/vega-grid.cjs.entry.js +7 -7
  49. package/dist/cjs/vega-icon.cjs.entry.js +6 -6
  50. package/dist/cjs/vega-image-uploader.cjs.entry.js +8 -8
  51. package/dist/cjs/vega-input-credit-card.cjs.entry.js +3 -3
  52. package/dist/cjs/vega-input-numeric.cjs.entry.js +3 -3
  53. package/dist/cjs/vega-input-passcode.cjs.entry.js +3 -3
  54. package/dist/cjs/vega-input-phone-number.cjs.entry.js +6 -6
  55. package/dist/cjs/vega-input-range.cjs.entry.js +3 -3
  56. package/dist/cjs/vega-input-select.cjs.entry.js +38 -14
  57. package/dist/cjs/vega-input.cjs.entry.js +14 -3
  58. package/dist/cjs/vega-item-toggle.cjs.entry.js +2 -2
  59. package/dist/cjs/vega-left-nav_5.cjs.entry.js +11 -11
  60. package/dist/cjs/vega-loader-wrapper_2.cjs.entry.js +8 -8
  61. package/dist/cjs/vega-pagination-page-selector-mobile.cjs.entry.js +2 -2
  62. package/dist/cjs/vega-pagination.cjs.entry.js +7 -7
  63. package/dist/cjs/vega-popover_2.cjs.entry.js +9 -9
  64. package/dist/cjs/vega-progress-tracker.cjs.entry.js +2 -2
  65. package/dist/cjs/vega-radio_2.cjs.entry.js +3 -3
  66. package/dist/cjs/vega-rich-text-content.cjs.entry.js +93 -16
  67. package/dist/cjs/vega-rich-text-editor_4.cjs.entry.js +107 -54
  68. package/dist/cjs/vega-segment-control.cjs.entry.js +2 -2
  69. package/dist/cjs/vega-selection-chip_2.cjs.entry.js +8 -8
  70. package/dist/cjs/vega-selection-tile_2.cjs.entry.js +3 -3
  71. package/dist/cjs/vega-sidenav_3.cjs.entry.js +10 -10
  72. package/dist/cjs/vega-signature-capture.cjs.entry.js +7 -7
  73. package/dist/cjs/vega-stepper.cjs.entry.js +3 -3
  74. package/dist/cjs/vega-tab-group_2.cjs.entry.js +3 -3
  75. package/dist/cjs/vega-table_8.cjs.entry.js +11 -11
  76. package/dist/cjs/vega-textarea.cjs.entry.js +24 -4
  77. package/dist/cjs/vega-time-picker_2.cjs.entry.js +9 -9
  78. package/dist/cjs/vega-toggle-switch.cjs.entry.js +2 -2
  79. package/dist/cjs/vega-tooltip_2.cjs.entry.js +7 -7
  80. package/dist/cjs/vega.cjs.js +8 -8
  81. package/dist/collection/components/vega-calendar/slimmers/common/helpers/calendar-event-sorter.js +3 -3
  82. package/dist/collection/components/vega-calendar/slimmers/common/renderers/vega-calendar-event-item-renderer.js +1 -1
  83. package/dist/collection/components/vega-calendar/slimmers/day-view/renderers/timed-event/layout/day-view-timed-event-layout-column.js +1 -1
  84. package/dist/collection/components/vega-calendar/vega-calendar-event/slimmers/renderers/vega-calendar-event-renderer.js +3 -4
  85. package/dist/collection/components/vega-field-label/slimmers/renderers/vega-field-label-suffix-element-renderer.js +11 -3
  86. package/dist/collection/components/vega-field-label/vega-field-label.js +42 -0
  87. package/dist/collection/components/vega-input/vega-input.js +48 -2
  88. package/dist/collection/components/vega-input-select/slimmers/renderers/vega-input-select-renderer.js +16 -5
  89. package/dist/collection/components/vega-input-select/vega-input-select.css +2 -44
  90. package/dist/collection/components/vega-input-select/vega-input-select.js +81 -1
  91. package/dist/collection/components/vega-rich-text-content/slimmers/controllers/vega-rich-text-content-extensions-styles-controller.js +60 -0
  92. package/dist/collection/components/vega-rich-text-content/slimmers/renderers/vega-rich-text-content-renderer.js +7 -1
  93. package/dist/collection/components/vega-rich-text-content/vega-rich-text-content.js +17 -1
  94. package/dist/collection/components/vega-rich-text-editor/dto/action-handle-strategies/action-handle-interceptor-registry.js +61 -0
  95. package/dist/collection/components/vega-rich-text-editor/dto/action-handle-strategies/action-handle-interceptor.abstract.js +5 -0
  96. package/dist/collection/components/vega-rich-text-editor/dto/action-handle-strategies/action-handle-strategy-registry.js +30 -6
  97. package/dist/collection/components/vega-rich-text-editor/dto/action-handle-strategies/modify-content-strategies/block-delete-node-content-strategy.js +10 -3
  98. package/dist/collection/components/vega-rich-text-editor/dto/action-handle-strategies/modify-content-strategies/block-delete-text-or-decorator-node-strategy.js +2 -1
  99. package/dist/collection/components/vega-rich-text-editor/dto/action-handle-strategies/modify-content-strategies/paste-content-strategy.js +28 -0
  100. package/dist/collection/components/vega-rich-text-editor/dto/actions/modify-content-action.abstract.js +1 -0
  101. package/dist/collection/components/vega-rich-text-editor/dto/actions/paste-content-action.js +17 -0
  102. package/dist/collection/components/vega-rich-text-editor/dto/actions/update-cursor-position-action.js +5 -0
  103. package/dist/collection/components/vega-rich-text-editor/dto/annotations/annotation-style.js +87 -0
  104. package/dist/collection/components/vega-rich-text-editor/dto/blocks/block.abstract.js +27 -9
  105. package/dist/collection/components/vega-rich-text-editor/dto/blocks/html-block.js +1 -12
  106. package/dist/collection/components/vega-rich-text-editor/dto/blocks/list-item-block.js +6 -0
  107. package/dist/collection/components/vega-rich-text-editor/dto/blocks/text-block.js +14 -5
  108. package/dist/collection/components/vega-rich-text-editor/dto/content-state.js +11 -0
  109. package/dist/collection/components/vega-rich-text-editor/dto/nodes/node.abstract.js +7 -37
  110. package/dist/collection/components/vega-rich-text-editor/dto/nodes/text-node.js +14 -3
  111. package/dist/collection/components/vega-rich-text-editor/extensions/base-extension-renderer.js +19 -1
  112. package/dist/collection/components/vega-rich-text-editor/extensions/base-toolbar-button-renderer.js +44 -3
  113. package/dist/collection/components/vega-rich-text-editor/extensions/extension.abstract.js +51 -1
  114. package/dist/collection/components/vega-rich-text-editor/extensions/functions/action-handler-interceptor/prevent-new-paragraph-interceptor.js +30 -0
  115. package/dist/collection/components/vega-rich-text-editor/extensions/functions/action-handler-interceptor/prevent-paste-content-interceptor.js +25 -0
  116. package/dist/collection/components/vega-rich-text-editor/extensions/functions/action-handler-strategies/function-block-insert-paragraph-strategy.js +30 -0
  117. package/dist/collection/components/vega-rich-text-editor/extensions/functions/action-handler-strategies/insert-function-block-strategy.js +99 -0
  118. package/dist/collection/components/vega-rich-text-editor/extensions/functions/action-handler-strategies/paste-plain-text-strategy.js +68 -0
  119. package/dist/collection/components/vega-rich-text-editor/extensions/functions/actions/insert-function-block-action.js +15 -0
  120. package/dist/collection/components/vega-rich-text-editor/extensions/functions/actions/paste-plain-text-action.js +17 -0
  121. package/dist/collection/components/vega-rich-text-editor/extensions/functions/dto/function-block.js +97 -0
  122. package/dist/collection/components/vega-rich-text-editor/extensions/functions/dto/logic-control-block.js +73 -0
  123. package/dist/collection/components/vega-rich-text-editor/extensions/functions/dto/logic-control-node.js +69 -0
  124. package/dist/collection/components/vega-rich-text-editor/extensions/functions/element-to-dto-strategies/div-to-function-block-strategy.js +49 -0
  125. package/dist/collection/components/vega-rich-text-editor/extensions/functions/element-to-dto-strategies/div-to-function-content-strategy.js +27 -0
  126. package/dist/collection/components/vega-rich-text-editor/extensions/functions/element-to-dto-strategies/div-to-logic-control-block-strategy.js +55 -0
  127. package/dist/collection/components/vega-rich-text-editor/extensions/functions/function-extension.js +75 -0
  128. package/dist/collection/components/vega-rich-text-editor/extensions/functions/renderers/function-block-renderer.js +38 -0
  129. package/dist/collection/components/vega-rich-text-editor/extensions/functions/renderers/function-toolbar-button-renderer.js +71 -0
  130. package/dist/collection/components/vega-rich-text-editor/extensions/functions/renderers/logic-control-block-renderer.js +20 -0
  131. package/dist/collection/components/vega-rich-text-editor/extensions/languages/language-toolbar-button-renderer.js +1 -1
  132. package/dist/collection/components/vega-rich-text-editor/extensions/tokens/span-to-token-node-strategy.js +3 -1
  133. package/dist/collection/components/vega-rich-text-editor/extensions/tokens/token-node-renderer.js +5 -6
  134. package/dist/collection/components/vega-rich-text-editor/extensions/tokens/token-toolbar-button-renderer.js +1 -1
  135. package/dist/collection/components/vega-rich-text-editor/public-api.js +8 -1
  136. package/dist/collection/components/vega-rich-text-editor/slimmers/controllers/delete-selected-nodes-controller.js +9 -1
  137. package/dist/collection/components/vega-rich-text-editor/slimmers/controllers/helper/element-to-dto-strategy/element-to-dto-strategy.abstract.js +0 -12
  138. package/dist/collection/components/vega-rich-text-editor/slimmers/controllers/helper/input-event-handler/insert-line-break-handler.js +3 -1
  139. package/dist/collection/components/vega-rich-text-editor/slimmers/controllers/helper/input-event-handler/insert-paste-handler.js +12 -10
  140. package/dist/collection/components/vega-rich-text-editor/slimmers/renderers/tools/bold-toolbar-button-slimmer.js +2 -4
  141. package/dist/collection/components/vega-rich-text-editor/slimmers/renderers/tools/bullets-numbers/bullets-numbers-toolbar-button-slimmer.js +30 -5
  142. package/dist/collection/components/vega-rich-text-editor/slimmers/renderers/tools/clear-style-toolbar-button-slimmer.js +1 -4
  143. package/dist/collection/components/vega-rich-text-editor/slimmers/renderers/tools/code-block-toolbar-button-slimmer.js +10 -1
  144. package/dist/collection/components/vega-rich-text-editor/slimmers/renderers/tools/code-toolbar-button-slimmer.js +2 -4
  145. package/dist/collection/components/vega-rich-text-editor/slimmers/renderers/tools/horizontal-alignment/horizontal-alignment-toolbar-button-slimmer.js +2 -1
  146. package/dist/collection/components/vega-rich-text-editor/slimmers/renderers/tools/image-toolbar-button-slimmer.js +4 -1
  147. package/dist/collection/components/vega-rich-text-editor/slimmers/renderers/tools/italic-toolbar-button-slimmer.js +2 -4
  148. package/dist/collection/components/vega-rich-text-editor/slimmers/renderers/tools/less-indent-toolbar-button-slimmer.js +1 -4
  149. package/dist/collection/components/vega-rich-text-editor/slimmers/renderers/tools/link-toolbar-button-slimmer.js +1 -4
  150. package/dist/collection/components/vega-rich-text-editor/slimmers/renderers/tools/more-indent-toolbar-button-slimmer.js +1 -4
  151. package/dist/collection/components/vega-rich-text-editor/slimmers/renderers/tools/strikethrough-toolbar-button-slimmer.js +2 -4
  152. package/dist/collection/components/vega-rich-text-editor/slimmers/renderers/tools/text-color-toolbar-button-slimmer.js +2 -4
  153. package/dist/collection/components/vega-rich-text-editor/slimmers/renderers/tools/text-styles-toolbar-button-slimmer.js +2 -5
  154. package/dist/collection/components/vega-rich-text-editor/slimmers/renderers/tools/underline-toolbar-button-slimmer.js +2 -4
  155. package/dist/collection/components/vega-rich-text-editor/slimmers/renderers/tools/visual-mode-toolbar-button-slimmer.abstract.js +11 -0
  156. package/dist/collection/components/vega-rich-text-editor/slimmers/renderers/vega-rich-text-editor-renderer.js +4 -1
  157. package/dist/collection/components/vega-rich-text-editor/test/dto/action-handle-strategies/action-handle-strategy-registry.test.js +32 -2
  158. package/dist/collection/components/vega-rich-text-editor/test/dto/action-handle-strategies/block-delete-node-content-strategy.test.js +69 -0
  159. package/dist/collection/components/vega-rich-text-editor/test/dto/annotation-style.test.js +70 -0
  160. package/dist/collection/components/vega-rich-text-editor/vega-rich-text-editor-toolbar-button/vega-rich-text-editor-toolbar-button.css +3 -0
  161. package/dist/collection/components/vega-selection-chip/vega-selection-chip.js +1 -1
  162. package/dist/collection/components/vega-table/vega-table.css +2 -1
  163. package/dist/collection/components/vega-textarea/vega-textarea.js +88 -2
  164. package/dist/collection/global/scripts/before-vega-load.js +2 -0
  165. package/dist/collection/helpers/calendar/calendar-date-time.js +136 -0
  166. package/dist/collection/helpers/calendar/calendar-date.js +10 -4
  167. package/dist/collection/helpers/calendar/calendar-event.js +38 -193
  168. package/dist/collection/helpers/calendar/calendar-time.js +120 -0
  169. package/dist/collection/helpers/calendar/index.js +2 -0
  170. package/dist/collection/helpers/calendar/test/calendar-date-time.test.js +27 -0
  171. package/dist/collection/helpers/calendar/test/calendar-event.test.js +24 -22
  172. package/dist/collection/helpers/calendar/test/calendar-period/day-period.test.js +2 -2
  173. package/dist/collection/helpers/calendar/test/calendar-period/month-period.test.js +2 -2
  174. package/dist/collection/helpers/calendar/test/calendar-period/week-period.test.js +6 -6
  175. package/dist/collection/helpers/calendar/test/calendar-time.test.js +45 -0
  176. package/dist/collection/helpers/calendar/test/utils.test.js +1 -29
  177. package/dist/collection/helpers/calendar/utils.js +0 -66
  178. package/dist/collection/helpers/event-manager/event-id/component-event-id-map.js +5 -2
  179. package/dist/collection/helpers/rte-manager/dto-action-strategy-manager.js +2 -0
  180. package/dist/esm/{app-globals-37a60cc1.js → app-globals-2f689986.js} +6 -5
  181. package/dist/esm/{child-nodes-event-prevent-slimmer-735cb880.js → child-nodes-event-prevent-slimmer-76331524.js} +1 -1
  182. package/dist/esm/{code-block-11b2bc1c.js → code-block-e8839202.js} +511 -318
  183. package/dist/esm/{component-value-history-controller-slimmer.abstract-16c5cb96.js → component-value-history-controller-slimmer.abstract-c6f94113.js} +2 -2
  184. package/dist/esm/{design-token-297dc528.js → design-token-e9e6b011.js} +1 -1
  185. package/dist/esm/{dto-renderer-manager-a1a3b6d2.js → dto-renderer-manager-7abc53bf.js} +1587 -1565
  186. package/dist/esm/{element-appender-slimmer-f7233708.js → element-appender-slimmer-8dbc8387.js} +2 -2
  187. package/dist/esm/{event-emit-slimmer-28fd360c.js → event-emit-slimmer-4e28e9f8.js} +1 -1
  188. package/dist/esm/{token-extension-b690953f.js → function-extension-eb1d062f.js} +1018 -97
  189. package/dist/esm/{image-annotation-action-fc46c920.js → image-annotation-action-7957653a.js} +14 -24
  190. package/dist/esm/index.js +9 -9
  191. package/dist/esm/{internal-vega-event-manager-a5a5938d.js → internal-vega-event-manager-516aa721.js} +5 -2
  192. package/dist/esm/{language-extension-314a2b18.js → language-extension-3331131f.js} +3 -3
  193. package/dist/esm/loader.js +8 -8
  194. package/dist/esm/{public-rules-c6a6946d.js → public-rules-e613dead.js} +3 -3
  195. package/dist/esm/{range-b78254de.js → range-adf206fd.js} +1 -1
  196. package/dist/esm/{responsive-format-facade-a41e1be7.js → responsive-format-facade-b0712993.js} +3 -3
  197. package/dist/esm/{rich-text-editor-required-rule-d50c24da.js → rich-text-editor-required-rule-43857573.js} +1 -1
  198. package/dist/esm/{style-formatter-f7effaac.js → style-formatter-a20a1ef4.js} +1 -1
  199. package/dist/esm/vega-accordion.entry.js +7 -7
  200. package/dist/esm/vega-app-header-button.entry.js +8 -8
  201. package/dist/esm/vega-banner.entry.js +2 -2
  202. package/dist/esm/vega-box.entry.js +8 -8
  203. package/dist/esm/vega-breadcrumb.entry.js +3 -3
  204. package/dist/esm/vega-button-circle.entry.js +9 -9
  205. package/dist/esm/vega-button-group_2.entry.js +3 -3
  206. package/dist/esm/vega-button-link.entry.js +3 -3
  207. package/dist/esm/vega-button.entry.js +8 -8
  208. package/dist/esm/vega-calendar_4.entry.js +307 -269
  209. package/dist/esm/vega-card.entry.js +7 -7
  210. package/dist/esm/vega-carousel.entry.js +7 -7
  211. package/dist/esm/vega-checkbox_2.entry.js +3 -3
  212. package/dist/esm/vega-chip.entry.js +9 -9
  213. package/dist/esm/vega-code-block.entry.js +6 -6
  214. package/dist/esm/vega-color-picker.entry.js +2 -2
  215. package/dist/esm/vega-combo-box.entry.js +3 -3
  216. package/dist/esm/vega-date-picker_2.entry.js +8 -8
  217. package/dist/esm/vega-dialog_2.entry.js +9 -9
  218. package/dist/esm/vega-divider.entry.js +7 -7
  219. package/dist/esm/vega-dropdown_5.entry.js +9 -9
  220. package/dist/esm/vega-env-manager-8f8dc473.js +2 -2
  221. package/dist/esm/vega-field-label.entry.js +24 -5
  222. package/dist/esm/vega-file-uploader.entry.js +2 -2
  223. package/dist/esm/vega-flag-icon.entry.js +6 -6
  224. package/dist/esm/vega-flex.entry.js +8 -8
  225. package/dist/esm/vega-font.entry.js +7 -7
  226. package/dist/esm/vega-form.entry.js +3 -3
  227. package/dist/esm/vega-grid.entry.js +7 -7
  228. package/dist/esm/vega-icon.entry.js +6 -6
  229. package/dist/esm/vega-image-uploader.entry.js +7 -7
  230. package/dist/esm/vega-input-credit-card.entry.js +3 -3
  231. package/dist/esm/vega-input-numeric.entry.js +3 -3
  232. package/dist/esm/vega-input-passcode.entry.js +3 -3
  233. package/dist/esm/vega-input-phone-number.entry.js +6 -6
  234. package/dist/esm/vega-input-range.entry.js +3 -3
  235. package/dist/esm/vega-input-select.entry.js +38 -14
  236. package/dist/esm/vega-input.entry.js +14 -3
  237. package/dist/esm/vega-item-toggle.entry.js +2 -2
  238. package/dist/esm/vega-left-nav_5.entry.js +7 -7
  239. package/dist/esm/vega-loader-wrapper_2.entry.js +6 -6
  240. package/dist/esm/vega-pagination-page-selector-mobile.entry.js +2 -2
  241. package/dist/esm/vega-pagination.entry.js +7 -7
  242. package/dist/esm/vega-popover_2.entry.js +9 -9
  243. package/dist/esm/vega-progress-tracker.entry.js +2 -2
  244. package/dist/esm/vega-radio_2.entry.js +3 -3
  245. package/dist/esm/vega-rich-text-content.entry.js +93 -16
  246. package/dist/esm/vega-rich-text-editor_4.entry.js +107 -54
  247. package/dist/esm/vega-segment-control.entry.js +2 -2
  248. package/dist/esm/vega-selection-chip_2.entry.js +8 -8
  249. package/dist/esm/vega-selection-tile_2.entry.js +3 -3
  250. package/dist/esm/vega-sidenav_3.entry.js +6 -6
  251. package/dist/esm/vega-signature-capture.entry.js +7 -7
  252. package/dist/esm/vega-stepper.entry.js +3 -3
  253. package/dist/esm/vega-tab-group_2.entry.js +3 -3
  254. package/dist/esm/vega-table_8.entry.js +8 -8
  255. package/dist/esm/vega-textarea.entry.js +25 -5
  256. package/dist/esm/vega-time-picker_2.entry.js +9 -9
  257. package/dist/esm/vega-toggle-switch.entry.js +2 -2
  258. package/dist/esm/vega-tooltip_2.entry.js +7 -7
  259. package/dist/esm/vega.js +8 -8
  260. package/dist/sri/vega-sri-manifest.json +273 -273
  261. package/dist/types/components/vega-field-label/slimmers/renderers/vega-field-label-suffix-element-renderer.d.ts +1 -0
  262. package/dist/types/components/vega-field-label/types.d.ts +12 -0
  263. package/dist/types/components/vega-field-label/vega-field-label.d.ts +13 -1
  264. package/dist/types/components/vega-input/vega-input.d.ts +14 -2
  265. package/dist/types/components/vega-input-select/slimmers/renderers/vega-input-select-renderer.d.ts +3 -0
  266. package/dist/types/components/vega-input-select/vega-input-select.d.ts +25 -0
  267. package/dist/types/components/vega-rich-text-content/slimmers/controllers/vega-rich-text-content-extensions-styles-controller.d.ts +26 -0
  268. package/dist/types/components/vega-rich-text-content/slimmers/renderers/vega-rich-text-content-renderer.d.ts +1 -0
  269. package/dist/types/components/vega-rich-text-content/vega-rich-text-content.d.ts +7 -0
  270. package/dist/types/components/vega-rich-text-editor/dto/action-handle-strategies/action-handle-interceptor-registry.d.ts +42 -0
  271. package/dist/types/components/vega-rich-text-editor/dto/action-handle-strategies/action-handle-interceptor.abstract.d.ts +26 -0
  272. package/dist/types/components/vega-rich-text-editor/dto/action-handle-strategies/action-handle-strategy-registry.d.ts +9 -2
  273. package/dist/types/components/vega-rich-text-editor/dto/action-handle-strategies/modify-content-strategies/block-delete-node-content-strategy.d.ts +7 -0
  274. package/dist/types/components/vega-rich-text-editor/dto/action-handle-strategies/modify-content-strategies/paste-content-strategy.d.ts +12 -0
  275. package/dist/types/components/vega-rich-text-editor/dto/actions/modify-content-action.abstract.d.ts +2 -1
  276. package/dist/types/components/vega-rich-text-editor/dto/actions/paste-content-action.d.ts +20 -0
  277. package/dist/types/components/vega-rich-text-editor/dto/actions/update-cursor-position-action.d.ts +1 -0
  278. package/dist/types/components/vega-rich-text-editor/dto/annotations/annotation-style.d.ts +46 -0
  279. package/dist/types/components/vega-rich-text-editor/dto/blocks/block.abstract.d.ts +10 -1
  280. package/dist/types/components/vega-rich-text-editor/dto/blocks/html-block.d.ts +3 -3
  281. package/dist/types/components/vega-rich-text-editor/dto/blocks/text-block.d.ts +6 -0
  282. package/dist/types/components/vega-rich-text-editor/dto/nodes/node.abstract.d.ts +0 -11
  283. package/dist/types/components/vega-rich-text-editor/extensions/base-extension-renderer.d.ts +16 -0
  284. package/dist/types/components/vega-rich-text-editor/extensions/base-toolbar-button-renderer.d.ts +19 -3
  285. package/dist/types/components/vega-rich-text-editor/extensions/extension.abstract.d.ts +36 -3
  286. package/dist/types/components/vega-rich-text-editor/extensions/functions/action-handler-interceptor/prevent-new-paragraph-interceptor.d.ts +25 -0
  287. package/dist/types/components/vega-rich-text-editor/extensions/functions/action-handler-interceptor/prevent-paste-content-interceptor.d.ts +17 -0
  288. package/dist/types/components/vega-rich-text-editor/extensions/functions/action-handler-strategies/function-block-insert-paragraph-strategy.d.ts +18 -0
  289. package/dist/types/components/vega-rich-text-editor/extensions/functions/action-handler-strategies/insert-function-block-strategy.d.ts +27 -0
  290. package/dist/types/components/vega-rich-text-editor/extensions/functions/action-handler-strategies/paste-plain-text-strategy.d.ts +26 -0
  291. package/dist/types/components/vega-rich-text-editor/extensions/functions/actions/insert-function-block-action.d.ts +17 -0
  292. package/dist/types/components/vega-rich-text-editor/extensions/functions/actions/paste-plain-text-action.d.ts +17 -0
  293. package/dist/types/components/vega-rich-text-editor/extensions/functions/dto/function-block.d.ts +58 -0
  294. package/dist/types/components/vega-rich-text-editor/extensions/functions/dto/logic-control-block.d.ts +55 -0
  295. package/dist/types/components/vega-rich-text-editor/extensions/functions/dto/logic-control-node.d.ts +48 -0
  296. package/dist/types/components/vega-rich-text-editor/extensions/functions/element-to-dto-strategies/div-to-function-block-strategy.d.ts +27 -0
  297. package/dist/types/components/vega-rich-text-editor/extensions/functions/element-to-dto-strategies/div-to-function-content-strategy.d.ts +14 -0
  298. package/dist/types/components/vega-rich-text-editor/extensions/functions/element-to-dto-strategies/div-to-logic-control-block-strategy.d.ts +32 -0
  299. package/dist/types/components/vega-rich-text-editor/extensions/functions/function-extension.d.ts +19 -0
  300. package/dist/types/components/vega-rich-text-editor/extensions/functions/renderers/function-block-renderer.d.ts +25 -0
  301. package/dist/types/components/vega-rich-text-editor/extensions/functions/renderers/function-toolbar-button-renderer.d.ts +33 -0
  302. package/dist/types/components/vega-rich-text-editor/extensions/functions/renderers/logic-control-block-renderer.d.ts +12 -0
  303. package/dist/types/components/vega-rich-text-editor/extensions/languages/language-extension.d.ts +2 -2
  304. package/dist/types/components/vega-rich-text-editor/extensions/languages/language-toolbar-button-renderer.d.ts +2 -2
  305. package/dist/types/components/vega-rich-text-editor/extensions/tokens/token-extension.d.ts +2 -2
  306. package/dist/types/components/vega-rich-text-editor/extensions/tokens/token-node-renderer.d.ts +3 -4
  307. package/dist/types/components/vega-rich-text-editor/interface.d.ts +8 -2
  308. package/dist/types/components/vega-rich-text-editor/public-api.d.ts +8 -1
  309. package/dist/types/components/vega-rich-text-editor/slimmers/controllers/helper/element-to-dto-strategy/element-to-dto-strategy.abstract.d.ts +2 -11
  310. package/dist/types/components/vega-rich-text-editor/slimmers/controllers/state-entity-rendering-registry.d.ts +1 -1
  311. package/dist/types/components/vega-rich-text-editor/slimmers/renderers/tools/bullets-numbers/bullets-numbers-toolbar-button-slimmer.d.ts +15 -0
  312. package/dist/types/components/vega-rich-text-editor/slimmers/renderers/tools/code-block-toolbar-button-slimmer.d.ts +1 -0
  313. package/dist/types/components/vega-rich-text-editor/slimmers/renderers/tools/visual-mode-toolbar-button-slimmer.abstract.d.ts +11 -0
  314. package/dist/types/components/vega-rich-text-editor/slimmers/renderers/vega-rich-text-editor-renderer.d.ts +1 -0
  315. package/dist/types/components/vega-rich-text-editor/test/dto/action-handle-strategies/block-delete-node-content-strategy.test.d.ts +1 -0
  316. package/dist/types/components/vega-rich-text-editor/test/dto/annotation-style.test.d.ts +1 -0
  317. package/dist/types/components/vega-textarea/vega-textarea.d.ts +26 -0
  318. package/dist/types/components.d.ts +65 -3
  319. package/dist/types/helpers/calendar/calendar-date-time.d.ts +76 -0
  320. package/dist/types/helpers/calendar/calendar-event.d.ts +18 -57
  321. package/dist/types/helpers/calendar/calendar-time.d.ts +64 -0
  322. package/dist/types/helpers/calendar/index.d.ts +2 -0
  323. package/dist/types/helpers/calendar/test/calendar-date-time.test.d.ts +1 -0
  324. package/dist/types/helpers/calendar/test/calendar-time.test.d.ts +1 -0
  325. package/dist/types/helpers/calendar/utils.d.ts +0 -25
  326. package/dist/types/types/components.type.d.ts +1 -1
  327. package/dist/types/types/public-api.d.ts +2 -0
  328. package/dist/vega/index.esm.js +1 -1
  329. package/dist/vega/{p-6f7d42a0.entry.js → p-00376f71.entry.js} +1 -1
  330. package/dist/vega/p-018d70a5.js +1 -0
  331. package/dist/vega/p-0849f85e.js +1 -0
  332. package/dist/vega/{p-b431f9d5.entry.js → p-0a55f984.entry.js} +1 -1
  333. package/dist/vega/p-0f7dec29.entry.js +1 -0
  334. package/dist/vega/{p-47cae62d.entry.js → p-113d305b.entry.js} +1 -1
  335. package/dist/vega/{p-015cdbe7.entry.js → p-115b42e6.entry.js} +1 -1
  336. package/dist/vega/p-16358fec.entry.js +1 -0
  337. package/dist/vega/{p-af5bfe34.js → p-16d68187.js} +1 -1
  338. package/dist/vega/{p-92a22562.entry.js → p-18e8c54a.entry.js} +1 -1
  339. package/dist/vega/{p-6f6ccf67.entry.js → p-1922303e.entry.js} +1 -1
  340. package/dist/vega/{p-74d61782.entry.js → p-19256107.entry.js} +1 -1
  341. package/dist/vega/{p-59298f5e.entry.js → p-1dcb1fcd.entry.js} +2 -2
  342. package/dist/vega/{p-7f69081b.entry.js → p-1dd7f8b2.entry.js} +1 -1
  343. package/dist/vega/{p-d006e732.entry.js → p-22fe8c61.entry.js} +1 -1
  344. package/dist/vega/{p-524693d8.entry.js → p-238afe1b.entry.js} +1 -1
  345. package/dist/vega/p-240d9d35.entry.js +1 -0
  346. package/dist/vega/{p-b82d3915.entry.js → p-24419ebe.entry.js} +1 -1
  347. package/dist/vega/p-2478f65e.js +1 -0
  348. package/dist/vega/{p-358e9800.entry.js → p-2c945862.entry.js} +1 -1
  349. package/dist/vega/{p-5f58d1da.entry.js → p-2e32fbe6.entry.js} +1 -1
  350. package/dist/vega/p-2f04d2ac.js +1 -0
  351. package/dist/vega/{p-a73dc4b3.entry.js → p-30a8d9d6.entry.js} +1 -1
  352. package/dist/vega/{p-e6cccee4.js → p-369810ae.js} +1 -1
  353. package/dist/vega/p-3ad87199.entry.js +1 -0
  354. package/dist/vega/{p-fe2e859f.entry.js → p-3b800f1b.entry.js} +1 -1
  355. package/dist/vega/p-437f865f.js +1 -0
  356. package/dist/vega/{p-de624f7d.entry.js → p-48bc03fa.entry.js} +1 -1
  357. package/dist/vega/{p-46830028.entry.js → p-54ddd06f.entry.js} +1 -1
  358. package/dist/vega/{p-5a0524ab.entry.js → p-56636a58.entry.js} +1 -1
  359. package/dist/vega/{p-fc8c5869.entry.js → p-56f77466.entry.js} +1 -1
  360. package/dist/vega/p-5f377954.js +1 -1
  361. package/dist/vega/{p-ab1001f5.entry.js → p-61d9cdf9.entry.js} +1 -1
  362. package/dist/vega/{p-39b9c57b.entry.js → p-626246b4.entry.js} +1 -1
  363. package/dist/vega/{p-ff3bb4e2.entry.js → p-634499cb.entry.js} +1 -1
  364. package/dist/vega/p-6609d87e.entry.js +1 -0
  365. package/dist/vega/p-69d27eaf.entry.js +1 -0
  366. package/dist/vega/{p-7efb5ebe.entry.js → p-705dad87.entry.js} +1 -1
  367. package/dist/vega/{p-8d574fbd.entry.js → p-75b5894f.entry.js} +1 -1
  368. package/dist/vega/{p-00071542.entry.js → p-76b1dae4.entry.js} +1 -1
  369. package/dist/vega/{p-54b62ecf.js → p-7747c163.js} +1 -1
  370. package/dist/vega/{p-0ed53cce.entry.js → p-787caad3.entry.js} +1 -1
  371. package/dist/vega/{p-129c0ce1.js → p-79e6e12c.js} +1 -1
  372. package/dist/vega/{p-cc519f53.entry.js → p-7dde3be9.entry.js} +1 -1
  373. package/dist/vega/p-8233d814.entry.js +1 -0
  374. package/dist/vega/{p-5e32866d.entry.js → p-83a50ac2.entry.js} +1 -1
  375. package/dist/vega/p-8506e8c3.js +1 -0
  376. package/dist/vega/{p-47fa359b.js → p-85407fb9.js} +1 -1
  377. package/dist/vega/{p-892cbe7c.entry.js → p-880569ec.entry.js} +1 -1
  378. package/dist/vega/{p-0113a83c.entry.js → p-8dba59a6.entry.js} +1 -1
  379. package/dist/vega/p-94e167b8.entry.js +1 -0
  380. package/dist/vega/{p-b2aaab66.entry.js → p-98fb9eaa.entry.js} +1 -1
  381. package/dist/vega/{p-3288a65b.entry.js → p-99bf5993.entry.js} +1 -1
  382. package/dist/vega/p-a211ae63.js +1 -0
  383. package/dist/vega/{p-fef846d5.entry.js → p-a2506cb5.entry.js} +1 -1
  384. package/dist/vega/{p-4e33fff6.entry.js → p-a6fb5a40.entry.js} +1 -1
  385. package/dist/vega/{p-bee1cc34.entry.js → p-b5060e84.entry.js} +1 -1
  386. package/dist/vega/{p-616cd622.entry.js → p-b78670c9.entry.js} +1 -1
  387. package/dist/vega/{p-d5761532.entry.js → p-b8558278.entry.js} +1 -1
  388. package/dist/vega/{p-8d655fd2.entry.js → p-bb0f2b5f.entry.js} +1 -1
  389. package/dist/vega/{p-a7631c6b.js → p-bb37a401.js} +1 -1
  390. package/dist/vega/p-bccee21e.js +1 -0
  391. package/dist/vega/{p-2553031f.entry.js → p-bd0e55a2.entry.js} +1 -1
  392. package/dist/vega/{p-65693321.entry.js → p-c0223a17.entry.js} +1 -1
  393. package/dist/vega/{p-2d430dc4.entry.js → p-c26332ae.entry.js} +1 -1
  394. package/dist/vega/{p-7f9ec104.entry.js → p-c54148fb.entry.js} +1 -1
  395. package/dist/vega/{p-276b1163.entry.js → p-d3905af1.entry.js} +2 -2
  396. package/dist/vega/p-d4893487.js +1 -0
  397. package/dist/vega/{p-d1dacaeb.entry.js → p-d67200e8.entry.js} +1 -1
  398. package/dist/vega/{p-725f0a2c.js → p-db57dddc.js} +1 -1
  399. package/dist/vega/{p-ed8bc4f0.entry.js → p-de02f404.entry.js} +1 -1
  400. package/dist/vega/{p-d4452dbc.entry.js → p-de8c5fae.entry.js} +1 -1
  401. package/dist/vega/{p-7b145620.js → p-de97c6d9.js} +1 -1
  402. package/dist/vega/{p-34800282.entry.js → p-e0979451.entry.js} +1 -1
  403. package/dist/vega/{p-1a3cb65e.entry.js → p-e6351dab.entry.js} +1 -1
  404. package/dist/vega/{p-8d096fea.entry.js → p-f0fb3fdd.entry.js} +1 -1
  405. package/dist/vega/{p-ea05a2fc.entry.js → p-f3399ef1.entry.js} +1 -1
  406. package/dist/vega/vega.esm.js +1 -1
  407. package/package.json +1 -1
  408. package/dist/vega/p-019f7f95.js +0 -1
  409. package/dist/vega/p-03a1e82e.entry.js +0 -1
  410. package/dist/vega/p-0d1eca78.entry.js +0 -1
  411. package/dist/vega/p-16370cfb.js +0 -1
  412. package/dist/vega/p-3a7f177a.entry.js +0 -1
  413. package/dist/vega/p-41c3fcb4.js +0 -1
  414. package/dist/vega/p-81105691.entry.js +0 -1
  415. package/dist/vega/p-822c6092.js +0 -1
  416. package/dist/vega/p-8edf3513.js +0 -1
  417. package/dist/vega/p-a1b7a179.entry.js +0 -1
  418. package/dist/vega/p-ab8f99e9.entry.js +0 -1
  419. package/dist/vega/p-bf7f755b.js +0 -1
  420. package/dist/vega/p-bf9476cd.entry.js +0 -1
  421. package/dist/vega/p-c6ce2869.js +0 -1
  422. package/dist/vega/p-d0e6454e.entry.js +0 -1
  423. package/dist/vega/p-d88e88a7.js +0 -1
  424. package/dist/vega/p-f360c9ba.js +0 -1
@@ -11,6 +11,7 @@ import { CenterAlignToolbarButtonSlimmer } from './center-align-toolbar-button-s
11
11
  import { RightAlignToolbarButtonSlimmer } from './right-align-toolbar-button-slimmer';
12
12
  import { JustifyAlignToolbarButtonSlimmer } from './justify-align-toolbar-button-slimmer';
13
13
  import { VisualModeToolbarButtonSlimmer } from '../visual-mode-toolbar-button-slimmer.abstract';
14
+ import { HorizontalAlignmentAnnotationAction } from '../../../../dto/actions/horizontal-alignment-annotation-action';
14
15
  export class HorizontalAlignmentToolbarButtonSlimmer extends VisualModeToolbarButtonSlimmer {
15
16
  constructor() {
16
17
  super({
@@ -60,7 +61,7 @@ export class HorizontalAlignmentToolbarButtonSlimmer extends VisualModeToolbarBu
60
61
  return (super.isDisabled() ||
61
62
  this.selectionController
62
63
  .getSelectedBlocks()
63
- .some((block) => block.type === 'code-block'));
64
+ .some((block) => this.shouldDisabledToolbar(block, HorizontalAlignmentAnnotationAction.name)));
64
65
  }
65
66
  }
66
67
  __decorate([
@@ -11,6 +11,7 @@ import { MapToComponentField } from 'vega-slimmer/core';
11
11
  import { NodeAnnotationTypeEnum } from '../../../dto/annotations/node-annotation.abstract';
12
12
  import { ImageUpdateUrlAction } from '../../../dto/actions/image-update-url-action';
13
13
  import { VisualModeToolbarButtonSlimmer } from './visual-mode-toolbar-button-slimmer.abstract';
14
+ import { ModifyContentActionType } from '../../../dto/actions/modify-content-action.abstract';
14
15
  export class ImageToolbarButtonSlimmer extends VisualModeToolbarButtonSlimmer {
15
16
  constructor() {
16
17
  super({
@@ -56,8 +57,10 @@ export class ImageToolbarButtonSlimmer extends VisualModeToolbarButtonSlimmer {
56
57
  }
57
58
  isDisabled() {
58
59
  const selectedNodes = this.selectionController.getSelectedNodes();
60
+ const selectedBlock = this.selectionController.getSelectedBlocks()[0];
59
61
  return (super.isDisabled() ||
60
- selectedNodes.some((node) => node.getAnnotationByType(NodeAnnotationTypeEnum.LINK)));
62
+ selectedNodes.some((node) => node.getAnnotationByType(NodeAnnotationTypeEnum.LINK)) ||
63
+ this.shouldDisabledToolbar(selectedBlock, ModifyContentActionType.INSERT_IMAGE_TO_BLOCK));
61
64
  }
62
65
  }
63
66
  (() => {
@@ -10,7 +10,6 @@ import { MapToComponentField } from 'vega-slimmer/core';
10
10
  import { ItalicAnnotationAction } from '../../../dto/actions/italic-annotation-action';
11
11
  import { NodeAnnotationTypeEnum } from '../../../dto/annotations/node-annotation.abstract';
12
12
  import { RTETextNode } from '../../../dto/nodes/text-node';
13
- import { RTECodeBlockNode } from '../../../dto/nodes/code-block-node';
14
13
  import { VisualModeToolbarButtonSlimmer } from './visual-mode-toolbar-button-slimmer.abstract';
15
14
  export class ItalicToolbarButtonSlimmer extends VisualModeToolbarButtonSlimmer {
16
15
  constructor() {
@@ -38,9 +37,8 @@ export class ItalicToolbarButtonSlimmer extends VisualModeToolbarButtonSlimmer {
38
37
  return (super.isDisabled() ||
39
38
  selectedNodes.some((node) => {
40
39
  var _a;
41
- return node instanceof RTECodeBlockNode ||
42
- ((_a = node.getAnnotationByType(NodeAnnotationTypeEnum.CODE)) === null || _a === void 0 ? void 0 : _a.code) ||
43
- node.getAnnotationByType(NodeAnnotationTypeEnum.IMAGE);
40
+ return ((_a = node.getAnnotationByType(NodeAnnotationTypeEnum.CODE)) === null || _a === void 0 ? void 0 : _a.code) ||
41
+ this.shouldDisabledToolbar(node, ItalicAnnotationAction.name);
44
42
  }));
45
43
  }
46
44
  }
@@ -9,7 +9,6 @@ import outdent from '../../../assets/outdent';
9
9
  import { BlockAnnotationTypeEnum } from '../../../dto/annotations/block-annotation.abstract';
10
10
  import { IndentAnnotationAction } from '../../../dto/actions/indent-annotation-action';
11
11
  import { MapToComponentField } from 'vega-slimmer/core';
12
- import { RTEImageNode } from '../../../dto/nodes/image-node';
13
12
  import { VisualModeToolbarButtonSlimmer } from './visual-mode-toolbar-button-slimmer.abstract';
14
13
  export class LessIndentToolbarButtonSlimmer extends VisualModeToolbarButtonSlimmer {
15
14
  constructor() {
@@ -25,10 +24,8 @@ export class LessIndentToolbarButtonSlimmer extends VisualModeToolbarButtonSlimm
25
24
  }
26
25
  isDisabled() {
27
26
  const selectedBlocks = this.selectionController.getSelectedBlocks();
28
- const selectedNodes = this.selectionController.getSelectedNodes();
29
27
  return (super.isDisabled() ||
30
- selectedBlocks.some((node) => node.type === 'list-item' || node.type === 'code-block') ||
31
- selectedNodes.some((node) => node instanceof RTEImageNode));
28
+ selectedBlocks.some((node) => this.shouldDisabledToolbar(node, IndentAnnotationAction.name)));
32
29
  }
33
30
  onClick() {
34
31
  this.selectionController.getSelectedBlocks().forEach((item) => {
@@ -10,14 +10,12 @@ import { h } from '@stencil/core';
10
10
  import { DomNodeSubjectObserverFactory } from '../../../../../helpers/change-manager/subject/dom-node-subject/dom-node-subject-observer-factory';
11
11
  import { VegaChange } from '../../../../../helpers/event-manager/event-id/vega-event-id';
12
12
  import { MapToComponentField } from 'vega-slimmer/core';
13
- import { RTETextNode } from '../../../dto/nodes/text-node';
14
13
  import { LinkAnnotationAction } from '../../../dto/actions/link-annotation-action';
15
14
  import { NodeAnnotationTypeEnum } from '../../../dto/annotations/node-annotation.abstract';
16
15
  import { SelectionChangeAction } from '../../../dto/actions/selection-change-action';
17
16
  import { generateUUID } from '../../../../../utils/misc';
18
17
  import { waitForComponentDidRender } from '../../../../../helpers/common';
19
18
  import { VisualModeToolbarButtonSlimmer } from './visual-mode-toolbar-button-slimmer.abstract';
20
- import { ActionHandleStrategyRegistry } from '../../../dto/action-handle-strategies/action-handle-strategy-registry';
21
19
  export class LinkToolbarButtonSlimmer extends VisualModeToolbarButtonSlimmer {
22
20
  constructor() {
23
21
  super({
@@ -65,8 +63,7 @@ export class LinkToolbarButtonSlimmer extends VisualModeToolbarButtonSlimmer {
65
63
  selectedBlocks.length > 1 ||
66
64
  selectedNodes.some((node) => {
67
65
  var _a;
68
- return !(node instanceof RTETextNode &&
69
- ActionHandleStrategyRegistry.canHandle(LinkAnnotationAction.name, node)) ||
66
+ return this.shouldDisabledToolbar(node, LinkAnnotationAction.name) ||
70
67
  node.getAnnotationByType(NodeAnnotationTypeEnum.LINK) ||
71
68
  ((_a = node.getAnnotationByType(NodeAnnotationTypeEnum.CODE)) === null || _a === void 0 ? void 0 : _a.code);
72
69
  }));
@@ -9,7 +9,6 @@ import indent from '../../../assets/indent';
9
9
  import { MapToComponentField } from 'vega-slimmer/core';
10
10
  import { IndentAnnotationAction } from '../../../dto/actions/indent-annotation-action';
11
11
  import { BlockAnnotationTypeEnum } from '../../../dto/annotations/block-annotation.abstract';
12
- import { RTEImageNode } from '../../../dto/nodes/image-node';
13
12
  import { VisualModeToolbarButtonSlimmer } from './visual-mode-toolbar-button-slimmer.abstract';
14
13
  export class MoreIndentToolbarButtonSlimmer extends VisualModeToolbarButtonSlimmer {
15
14
  constructor() {
@@ -25,10 +24,8 @@ export class MoreIndentToolbarButtonSlimmer extends VisualModeToolbarButtonSlimm
25
24
  }
26
25
  isDisabled() {
27
26
  const selectedBlocks = this.selectionController.getSelectedBlocks();
28
- const selectedNodes = this.selectionController.getSelectedNodes();
29
27
  return (super.isDisabled() ||
30
- selectedBlocks.some((node) => node.type === 'list-item' || node.type === 'code-block') ||
31
- selectedNodes.some((node) => node instanceof RTEImageNode));
28
+ selectedBlocks.some((node) => this.shouldDisabledToolbar(node, IndentAnnotationAction.name)));
32
29
  }
33
30
  onClick() {
34
31
  this.selectionController.getSelectedBlocks().forEach((item) => {
@@ -10,7 +10,6 @@ import { RTETextNode } from '../../../dto/nodes/text-node';
10
10
  import { MapToComponentField } from 'vega-slimmer/core';
11
11
  import { StrikethroughAnnotationAction } from '../../../dto/actions/strikethrough-annotation-action';
12
12
  import { NodeAnnotationTypeEnum } from '../../../dto/annotations/node-annotation.abstract';
13
- import { RTECodeBlockNode } from '../../../dto/nodes/code-block-node';
14
13
  import { VisualModeToolbarButtonSlimmer } from './visual-mode-toolbar-button-slimmer.abstract';
15
14
  export class StrikethroughToolbarButtonSlimmer extends VisualModeToolbarButtonSlimmer {
16
15
  constructor() {
@@ -41,9 +40,8 @@ export class StrikethroughToolbarButtonSlimmer extends VisualModeToolbarButtonSl
41
40
  return (super.isDisabled() ||
42
41
  selectedNodes.some((node) => {
43
42
  var _a;
44
- return node instanceof RTECodeBlockNode ||
45
- ((_a = node.getAnnotationByType(NodeAnnotationTypeEnum.CODE)) === null || _a === void 0 ? void 0 : _a.code) ||
46
- node.getAnnotationByType(NodeAnnotationTypeEnum.IMAGE);
43
+ return ((_a = node.getAnnotationByType(NodeAnnotationTypeEnum.CODE)) === null || _a === void 0 ? void 0 : _a.code) ||
44
+ this.shouldDisabledToolbar(node, StrikethroughAnnotationAction.name);
47
45
  }));
48
46
  }
49
47
  }
@@ -15,7 +15,6 @@ import { VegaChange, VegaPopoverHide, VegaPopoverShow, } from '../../../../../he
15
15
  import { VegaDarkModeStyleController } from '../../../../../helpers/theme/controllers/dark-mode-style-controller';
16
16
  import { RTE_TEXT_COLORS } from '../../../constants/constant';
17
17
  import { NodeAnnotationTypeEnum } from '../../../dto/annotations/node-annotation.abstract';
18
- import { RTECodeBlockNode } from '../../../dto/nodes/code-block-node';
19
18
  import { VisualModeToolbarButtonSlimmer } from './visual-mode-toolbar-button-slimmer.abstract';
20
19
  export class TextColorToolbarButtonSlimmer extends VisualModeToolbarButtonSlimmer {
21
20
  constructor() {
@@ -109,10 +108,9 @@ export class TextColorToolbarButtonSlimmer extends VisualModeToolbarButtonSlimme
109
108
  return (super.isDisabled() ||
110
109
  selectedNodes.some((node) => {
111
110
  var _a;
112
- return node instanceof RTECodeBlockNode ||
113
- ((_a = node.getAnnotationByType(NodeAnnotationTypeEnum.CODE)) === null || _a === void 0 ? void 0 : _a.code) ||
111
+ return ((_a = node.getAnnotationByType(NodeAnnotationTypeEnum.CODE)) === null || _a === void 0 ? void 0 : _a.code) ||
114
112
  node.getAnnotationByType(NodeAnnotationTypeEnum.LINK) ||
115
- node.getAnnotationByType(NodeAnnotationTypeEnum.IMAGE);
113
+ this.shouldDisabledToolbar(node, TextColorAnnotationAction.name);
116
114
  }));
117
115
  }
118
116
  }
@@ -12,11 +12,9 @@ import { TextStyleAnnotationAction } from '../../../dto/actions/text-style-annot
12
12
  import { RTETextBlock } from '../../../dto/blocks/text-block';
13
13
  import { TextStyleAnnotation } from '../../../dto/annotations/text-style-annotation';
14
14
  import { BoldAnnotation } from '../../../dto/annotations/bold-annotation';
15
- import { NodeAnnotationTypeEnum } from '../../../dto/annotations/node-annotation.abstract';
16
15
  import { BlockAnnotationTypeEnum } from '../../../dto/annotations/block-annotation.abstract';
17
16
  import { DomNodeSubjectObserverFactory } from '../../../../../helpers/change-manager/subject/dom-node-subject/dom-node-subject-observer-factory';
18
17
  import { VegaDropdownClick } from '../../../../../helpers/event-manager/event-id/vega-event-id';
19
- import { RTECodeBlockNode } from '../../../dto/nodes/code-block-node';
20
18
  import { VisualModeToolbarButtonSlimmer } from './visual-mode-toolbar-button-slimmer.abstract';
21
19
  export class TextStylesToolbarButtonSlimmer extends VisualModeToolbarButtonSlimmer {
22
20
  constructor() {
@@ -67,10 +65,9 @@ export class TextStylesToolbarButtonSlimmer extends VisualModeToolbarButtonSlimm
67
65
  return false;
68
66
  }
69
67
  isDisabled() {
70
- const selectedNodes = this.selectionController.getSelectedNodes();
68
+ const selectedBlocks = this.selectionController.getSelectedBlocks();
71
69
  return (super.isDisabled() ||
72
- selectedNodes.some((node) => node instanceof RTECodeBlockNode ||
73
- node.getAnnotationByType(NodeAnnotationTypeEnum.IMAGE)));
70
+ selectedBlocks.some((node) => this.shouldDisabledToolbar(node, TextStyleAnnotationAction.name)));
74
71
  }
75
72
  addDropdownObserver(dropdownRef) {
76
73
  DomNodeSubjectObserverFactory.addUniqueObserverToNode(dropdownRef, VegaDropdownClick, this.handleDropdownItemClick);
@@ -10,7 +10,6 @@ import { RTETextNode } from '../../../dto/nodes/text-node';
10
10
  import { MapToComponentField } from 'vega-slimmer/core';
11
11
  import { UnderlineAnnotationAction } from '../../../dto/actions/underline-annotation-action';
12
12
  import { NodeAnnotationTypeEnum } from '../../../dto/annotations/node-annotation.abstract';
13
- import { RTECodeBlockNode } from '../../../dto/nodes/code-block-node';
14
13
  import { VisualModeToolbarButtonSlimmer } from './visual-mode-toolbar-button-slimmer.abstract';
15
14
  export class UnderlineToolbarButtonSlimmer extends VisualModeToolbarButtonSlimmer {
16
15
  constructor() {
@@ -41,9 +40,8 @@ export class UnderlineToolbarButtonSlimmer extends VisualModeToolbarButtonSlimme
41
40
  return (super.isDisabled() ||
42
41
  selectedNodes.some((node) => {
43
42
  var _a;
44
- return node instanceof RTECodeBlockNode ||
45
- ((_a = node.getAnnotationByType(NodeAnnotationTypeEnum.CODE)) === null || _a === void 0 ? void 0 : _a.code) ||
46
- node.getAnnotationByType(NodeAnnotationTypeEnum.IMAGE);
43
+ return ((_a = node.getAnnotationByType(NodeAnnotationTypeEnum.CODE)) === null || _a === void 0 ? void 0 : _a.code) ||
44
+ this.shouldDisabledToolbar(node, UnderlineAnnotationAction.name);
47
45
  }));
48
46
  }
49
47
  }
@@ -6,6 +6,7 @@ var __decorate = (this && this.__decorate) || function (decorators, target, key,
6
6
  };
7
7
  import { ToolbarButtonSlimmer } from './toolbar-button-slimmer.abstract';
8
8
  import { MapToComponentField } from 'vega-slimmer/core';
9
+ import { ActionHandleStrategyRegistry } from '../../../dto/action-handle-strategies/action-handle-strategy-registry';
9
10
  /**
10
11
  * Abstract class for visual mode toolbar buttons, except for the source edit button.
11
12
  */
@@ -31,6 +32,16 @@ export class VisualModeToolbarButtonSlimmer extends ToolbarButtonSlimmer {
31
32
  isDisabled() {
32
33
  return super.isDisabled() && !this.sourceView;
33
34
  }
35
+ /**
36
+ * Check if the node support text annotation
37
+ *
38
+ * @param {Nullable< RTENode| RTEBlock>} node - The RTE node to check
39
+ * @param {string} annotationActionName - The annotation name to check
40
+ * @returns {boolean} - True if the node support text annotation, false otherwise
41
+ */
42
+ shouldDisabledToolbar(node, annotationActionName) {
43
+ return node && !ActionHandleStrategyRegistry.canHandle(annotationActionName, node);
44
+ }
34
45
  }
35
46
  __decorate([
36
47
  MapToComponentField()
@@ -23,7 +23,7 @@ export class VegaRichTextEditorRenderer extends VegaSlimmer {
23
23
  'disabled': this.disabled,
24
24
  'vega-hidden': this.sourceView,
25
25
  }, style: { minHeight: `${this.rows * 24}px` }, onClick: this.richTextContentFocus, role: "textbox", tabIndex: !this.disabled ? -1 : 0, onKeyDown: createEnterKeyHandlerToTriggerClick(), ref: (node) => (this.richTextContainerRef = node) },
26
- h("vega-rich-text-content", { ref: (ref) => (this.richTextContentRef = ref), content: this.value }),
26
+ h("vega-rich-text-content", { ref: (ref) => (this.richTextContentRef = ref), content: this.value, extensions: this.extensions }),
27
27
  this.renderCharacterCounter()));
28
28
  };
29
29
  this.renderCharacterCounter = () => {
@@ -155,6 +155,9 @@ __decorate([
155
155
  __decorate([
156
156
  MapToComponentField()
157
157
  ], VegaRichTextEditorRenderer.prototype, "allowSourceEdit", void 0);
158
+ __decorate([
159
+ MapToComponentField()
160
+ ], VegaRichTextEditorRenderer.prototype, "extensions", void 0);
158
161
  __decorate([
159
162
  MapToComponentMethod('componentDidRender')
160
163
  ], VegaRichTextEditorRenderer.prototype, "componentDidRender", null);
@@ -1,7 +1,13 @@
1
1
  import { LogUtility } from '../../../../../utils/log';
2
+ import { ActionHandlerInterceptorRegistry } from '../../../dto/action-handle-strategies/action-handle-interceptor-registry';
3
+ import { ActionHandlerInterceptor } from '../../../dto/action-handle-strategies/action-handle-interceptor.abstract';
2
4
  import { ActionHandleStrategyRegistry } from '../../../dto/action-handle-strategies/action-handle-strategy-registry';
3
5
  import { ActionHandleStrategy } from '../../../dto/action-handle-strategies/action-handle-strategy.abstract';
6
+ import { AppendChildrenStrategy } from '../../../dto/action-handle-strategies/modify-content-strategies/append-children-strategy';
4
7
  import { AnnotationAction } from '../../../dto/actions/annotation-action.abstract';
8
+ import { AppendChildrenAction } from '../../../dto/actions/append-child-nodes-action';
9
+ import { ModifyContentActionType, } from '../../../dto/actions/modify-content-action.abstract';
10
+ import { RTETextBlock } from '../../../dto/blocks/text-block';
5
11
  import { RTEImageNode } from '../../../dto/nodes/image-node';
6
12
  import { RTETextNode } from '../../../dto/nodes/text-node';
7
13
  class MockAnnotationAction extends AnnotationAction {
@@ -33,9 +39,33 @@ test('ActionHandleStrategyRegistry methods executeTheStrategy should work proper
33
39
  expect(strategy.handleAction).toBeCalledWith(action, target);
34
40
  });
35
41
  test('ActionHandleStrategyRegistry methods executeTheStrategy should log error if the strategy is not exist', () => {
36
- spyOn(LogUtility, 'error');
42
+ spyOn(LogUtility, 'warn');
37
43
  const action = new MockAnnotationAction();
38
44
  const target = new RTEImageNode('1', 'test url', null);
39
45
  ActionHandleStrategyRegistry.executeTheStrategy(action, target);
40
- expect(LogUtility.error).toBeCalledWith(`Type MockAnnotationAction action handle strategy is not registered in class RTEImageNode`);
46
+ expect(LogUtility.warn).toBeCalledWith(`Type MockAnnotationAction action handle strategy is not registered in class RTEImageNode`);
47
+ });
48
+ test('ActionHandleStrategyRegistry methods executeTheStrategy should work properly when interceptor is present', () => {
49
+ const customAction = new AppendChildrenAction([new RTETextNode('1', 'child', null)]);
50
+ const block = new RTETextBlock('block1', 'paragraph');
51
+ ActionHandleStrategyRegistry.register(ModifyContentActionType.APPEND_CHILDREN, RTETextBlock.name, new AppendChildrenStrategy());
52
+ class CustomInterceptorStrategy extends ActionHandlerInterceptor {
53
+ canIntercept(_action, target) {
54
+ return !!target;
55
+ }
56
+ intercept() {
57
+ LogUtility.warn('Interceptor executed');
58
+ }
59
+ }
60
+ const interceptor = new CustomInterceptorStrategy();
61
+ spyOn(interceptor, 'canIntercept').and.callThrough();
62
+ spyOn(interceptor, 'intercept').and.callThrough();
63
+ ActionHandlerInterceptorRegistry.register(ModifyContentActionType.APPEND_CHILDREN, RTETextBlock.name, interceptor);
64
+ block.apply(customAction);
65
+ expect(interceptor.intercept).toBeCalledTimes(1);
66
+ expect(interceptor.intercept).toBeCalledTimes(1);
67
+ expect(block.children.length).toBe(0);
68
+ ActionHandlerInterceptorRegistry.unregister(ModifyContentActionType.APPEND_CHILDREN, RTETextBlock.name, interceptor);
69
+ block.apply(customAction);
70
+ expect(block.children.length).toBe(1);
41
71
  });
@@ -0,0 +1,69 @@
1
+ import { BlockDeleteNodeContentStrategy } from '../../../dto/action-handle-strategies/modify-content-strategies/block-delete-node-content-strategy';
2
+ import { VegaRTEContent } from '../../../dto/content-state';
3
+ class MockDeleteStrategy extends BlockDeleteNodeContentStrategy {
4
+ getPreviousBlockMethod(currentBlock) {
5
+ return super['getPreviousBlock'](currentBlock);
6
+ }
7
+ handleAction() {
8
+ throw new Error('Method not implemented.');
9
+ }
10
+ }
11
+ const strategy = new MockDeleteStrategy();
12
+ test('BlockDeleteNodeContentStrategy#getPreviousBlock should work properly', () => {
13
+ const content = VegaRTEContent.fromJSON([
14
+ {
15
+ id: '1',
16
+ type: 'paragraph',
17
+ nodes: [
18
+ { id: '1-1', type: 'text', text: 'A' },
19
+ { id: '1-1', type: 'text', text: 'B' },
20
+ ],
21
+ },
22
+ {
23
+ id: '2',
24
+ type: 'paragraph',
25
+ nodes: [],
26
+ },
27
+ {
28
+ id: '2',
29
+ type: 'html-block',
30
+ children: [
31
+ {
32
+ id: '2-1',
33
+ type: 'paragraph',
34
+ nodes: [],
35
+ },
36
+ {
37
+ id: '2-2',
38
+ type: 'paragraph',
39
+ nodes: [],
40
+ },
41
+ ],
42
+ },
43
+ {
44
+ id: '3',
45
+ type: 'number-list',
46
+ blocks: [
47
+ {
48
+ id: '3-1',
49
+ type: 'list-item',
50
+ nodes: [],
51
+ },
52
+ {
53
+ id: '3-2',
54
+ type: 'list-item',
55
+ nodes: [],
56
+ },
57
+ ],
58
+ },
59
+ ]);
60
+ const htmlBlock = content.children[2];
61
+ const list = content.children[3];
62
+ expect(strategy.getPreviousBlockMethod(content.children[0])).toBeUndefined();
63
+ expect(strategy.getPreviousBlockMethod(content.children[1])).toEqual(content.children[0]);
64
+ expect(strategy.getPreviousBlockMethod(htmlBlock)).toEqual(content.children[1]);
65
+ expect(strategy.getPreviousBlockMethod(htmlBlock.children[0])).toEqual(content.children[1]);
66
+ expect(strategy.getPreviousBlockMethod(htmlBlock.children[1])).toEqual(htmlBlock.children[0]);
67
+ expect(strategy.getPreviousBlockMethod(list.children[0])).toEqual(htmlBlock);
68
+ expect(strategy.getPreviousBlockMethod(list.children[1])).toEqual(list.children[0]);
69
+ });
@@ -0,0 +1,70 @@
1
+ import { RTEAnnotationStyle } from '../../dto/annotations/annotation-style';
2
+ import { RTETextBlock } from '../../dto/blocks/text-block';
3
+ import '../../dto/setup';
4
+ describe('annotation-style', () => {
5
+ it('toCssText', () => {
6
+ const textBlock = RTETextBlock.from({
7
+ id: '1',
8
+ type: 'paragraph',
9
+ annotations: {
10
+ textAlign: 'center',
11
+ customStyle: {
12
+ color: 'red',
13
+ fontSize: '16px',
14
+ },
15
+ },
16
+ nodes: [],
17
+ });
18
+ const blockAnnotationStyle = new RTEAnnotationStyle(textBlock);
19
+ expect(blockAnnotationStyle.toCssText()).toEqual('color: red;font-size: 16px;');
20
+ expect(blockAnnotationStyle.toCssText({ standalone: true })).toEqual('font-family: Inter;font-size: 16px;line-height: 22px;font-weight: 500;margin-top: 0px;margin-bottom: 0px;text-align: center;color: red;');
21
+ expect(blockAnnotationStyle.toCssText(null, null, {})).toEqual('');
22
+ expect(blockAnnotationStyle.toCssText(null, null, { color: 'red' })).toEqual('color: red;');
23
+ expect(blockAnnotationStyle.toCssText(null, null, { backgroundColor: 'blue', fontWeight: 'bold' })).toEqual('background-color: blue;font-weight: bold;');
24
+ });
25
+ it('toJSON', () => {
26
+ const textBlock = RTETextBlock.from({
27
+ id: '1',
28
+ type: 'paragraph',
29
+ annotations: {
30
+ textAlign: 'center',
31
+ customStyle: {
32
+ color: 'red',
33
+ fontSize: '16px',
34
+ },
35
+ },
36
+ nodes: [
37
+ {
38
+ id: 'n1',
39
+ type: 'text',
40
+ text: 'Sample text',
41
+ annotations: {
42
+ bold: true,
43
+ italic: false,
44
+ underline: true,
45
+ customStyle: {
46
+ textDecoration: 'line-through',
47
+ },
48
+ },
49
+ },
50
+ ],
51
+ });
52
+ const blockAnnotationStyle = new RTEAnnotationStyle(textBlock);
53
+ expect(blockAnnotationStyle.toJSON({ standalone: true })).toEqual({
54
+ color: 'red',
55
+ fontFamily: 'Inter',
56
+ fontSize: '16px',
57
+ fontWeight: '500',
58
+ lineHeight: '22px',
59
+ marginBottom: '0px',
60
+ marginTop: '0px',
61
+ textAlign: 'center',
62
+ });
63
+ const nodeAnnotationStyle = new RTEAnnotationStyle(textBlock.children[0]);
64
+ expect(nodeAnnotationStyle.toJSON()).toEqual({ textDecoration: 'line-through' });
65
+ expect(nodeAnnotationStyle.toJSON({ standalone: true }, ['textDecoration'])).toEqual({
66
+ fontWeight: '700',
67
+ textDecoration: 'underline line-through',
68
+ });
69
+ });
70
+ });
@@ -6,6 +6,9 @@
6
6
  :host {
7
7
  display: inline-block;
8
8
  }
9
+ :host ::slotted(vega-font.v-font-field-label-sm) {
10
+ line-height: 16px;
11
+ }
9
12
 
10
13
  .rich-text-editor-toolbar-btn {
11
14
  display: flex;
@@ -241,7 +241,7 @@ export class VegaSelectionChip {
241
241
  "mutable": false,
242
242
  "complexType": {
243
243
  "original": "VegaSelectionChipTooltipProps",
244
- "resolved": "{ size?: ResponsiveType<SizeType>; trigger?: \"hover\" | \"click\" | \"none\"; positionRelativeTo?: string; minWidth?: ResponsiveType<SizeType>; maxWidth?: ResponsiveType<SizeType>; content?: string; disableInteractive?: boolean; text?: string; alignment?: ElementAppenderAlignmentType; placement?: ElementAppenderPlacementType; }",
244
+ "resolved": "{ size?: ResponsiveType<SizeType>; trigger?: \"hover\" | \"click\" | \"none\"; positionRelativeTo?: string; minWidth?: ResponsiveType<SizeType>; maxWidth?: ResponsiveType<SizeType>; content?: string; disableInteractive?: boolean; text?: string; placement?: ElementAppenderPlacementType; alignment?: ElementAppenderAlignmentType; }",
245
245
  "references": {
246
246
  "VegaSelectionChipTooltipProps": {
247
247
  "location": "import",
@@ -59,7 +59,8 @@ table.v-table-fixed {
59
59
  transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);
60
60
  transition-duration: 150ms;
61
61
  }
62
- .vega-table-scrollable-container.scrolled vega-table-head.fixed-header {
62
+ .vega-table-scrollable-container.scrolled vega-table-head.fixed-header,
63
+ .vega-table-scrollable-container.scrolled ::slotted(vega-table-head.fixed-header) {
63
64
  box-shadow: 0px 4px 0px rgba(0, 0, 0, 0.1); /* TODO: wait design token upgrade */
64
65
  }
65
66
 
@@ -14,10 +14,11 @@ import { FormFieldControllerSlimmer } from '../../helpers/slimmers/form-field-co
14
14
  import { FORM_ELEMENT_VALUE_CHANGE } from '../../helpers/change-manager/subject/static-subject/static-subject-title';
15
15
  import ChangeManager from '../../helpers/change-manager/change-manager';
16
16
  import { createEventEmitSlimmer, } from '../../helpers/event-manager/slimmers/event-emit-slimmer';
17
- import { VegaBlur, VegaChange } from '../../helpers/event-manager/event-id/vega-event-id';
17
+ import { VegaBlur, VegaChange, VegaLabelButtonClick, } from '../../helpers/event-manager/event-id/vega-event-id';
18
18
  import { ChildNodesEventPreventSlimmer } from '../../helpers/event-manager/slimmers/child-nodes-event-prevent-slimmer';
19
19
  import { VegaComponentUsageRuntimeMetricsSlimmer } from '../../helpers/slimmers/component-usage-runtime-metrics';
20
20
  import { VegaTextareaRuntimeMetricsPayloadDefinition } from '../../constants/runtime-metrics-payload-definition/vega-textarea/runtime-metrics-payload-definition';
21
+ import { DomNodeSubjectObserverFactory } from '../../helpers/change-manager/subject/dom-node-subject/dom-node-subject-observer-factory';
21
22
  /**
22
23
  * @vegaVersion 1.11.0
23
24
  */
@@ -47,6 +48,7 @@ export class VegaTextarea {
47
48
  });
48
49
  this.changeEventEmitter = createEventEmitSlimmer(VegaTextarea, VegaChange);
49
50
  this.blurEventEmitter = createEventEmitSlimmer(VegaTextarea, VegaBlur);
51
+ this.labelButtonClickEventEmitter = createEventEmitSlimmer(VegaTextarea, VegaLabelButtonClick);
50
52
  this.textareaEventPrevent = new ChildNodesEventPreventSlimmer([VegaChange], () => this.inputContainerRef);
51
53
  this.vegaComponentUsageRuntimeMetricsSlimmer = new VegaComponentUsageRuntimeMetricsSlimmer(VegaTextareaRuntimeMetricsPayloadDefinition);
52
54
  this.currentCharCount = 0;
@@ -82,6 +84,15 @@ export class VegaTextarea {
82
84
  * @vegaVersion 1.11.0
83
85
  */
84
86
  this.label = '';
87
+ /**
88
+ * Specifies the properties for the suffix button associated with the input.
89
+ *
90
+ * It provides essential information and functionality
91
+ * related to the suffix button's role and behavior.
92
+ *
93
+ * @vegaVersion __VERSION__
94
+ */
95
+ this.labelSuffixButtonConfig = null;
85
96
  /**
86
97
  * Determines whether to display a character counter
87
98
  * for the textarea.
@@ -192,6 +203,9 @@ export class VegaTextarea {
192
203
  this.isExceedMaxLength = (value, maxLength) => {
193
204
  return maxLength != null ? value.length > maxLength : false;
194
205
  };
206
+ this.handleLabelButtonClick = () => {
207
+ this.labelButtonClickEventEmitter.emit();
208
+ };
195
209
  }
196
210
  watchValue(value) {
197
211
  this.changeEventEmitter.emit(value);
@@ -230,7 +244,9 @@ export class VegaTextarea {
230
244
  this.hint && this.renderHintMessage()), this.host);
231
245
  }
232
246
  renderLabelDom() {
233
- return (h("vega-field-label", { onClick: this.inputFocus, "is-field-required": this.required, disabled: this.disabled, label: this.label }));
247
+ return (h("vega-field-label", { onClick: this.inputFocus, "is-field-required": this.required, disabled: this.disabled, label: this.label, suffixButtonConfig: this.labelSuffixButtonConfig, ref: (node) => {
248
+ DomNodeSubjectObserverFactory.addUniqueObserverToNode(node, VegaLabelButtonClick, this.handleLabelButtonClick);
249
+ } }));
234
250
  }
235
251
  static get is() { return "vega-textarea"; }
236
252
  static get encapsulation() { return "shadow"; }
@@ -325,6 +341,34 @@ export class VegaTextarea {
325
341
  "reflect": false,
326
342
  "defaultValue": "''"
327
343
  },
344
+ "labelSuffixButtonConfig": {
345
+ "type": "unknown",
346
+ "mutable": false,
347
+ "complexType": {
348
+ "original": "Nullable<LabelSuffixButtonConfig>",
349
+ "resolved": "{ icon: string; } & Partial<Pick<HTMLVegaTooltipElement, \"size\" | \"trigger\" | \"minWidth\" | \"maxWidth\" | \"text\" | \"placement\" | \"alignment\">>",
350
+ "references": {
351
+ "Nullable": {
352
+ "location": "import",
353
+ "path": "../../types/general"
354
+ },
355
+ "LabelSuffixButtonConfig": {
356
+ "location": "import",
357
+ "path": "../vega-field-label/types"
358
+ }
359
+ }
360
+ },
361
+ "required": false,
362
+ "optional": false,
363
+ "docs": {
364
+ "tags": [{
365
+ "name": "vegaVersion",
366
+ "text": "__VERSION__"
367
+ }],
368
+ "text": "Specifies the properties for the suffix button associated with the input.\n\nIt provides essential information and functionality\n related to the suffix button's role and behavior."
369
+ },
370
+ "defaultValue": "null"
371
+ },
328
372
  "showCounter": {
329
373
  "type": "boolean",
330
374
  "mutable": false,
@@ -620,6 +664,45 @@ export class VegaTextarea {
620
664
  "resolved": "undefined",
621
665
  "references": {}
622
666
  }
667
+ }, {
668
+ "method": "vegaLabelButtonClick",
669
+ "name": "vegaLabelButtonClick",
670
+ "bubbles": true,
671
+ "cancelable": true,
672
+ "composed": true,
673
+ "docs": {
674
+ "tags": [{
675
+ "name": "vegaVersion",
676
+ "text": "2.68.0"
677
+ }],
678
+ "text": "An event emitter notifying that the suffix button associated with the field label has been clicked."
679
+ },
680
+ "complexType": {
681
+ "original": "any",
682
+ "resolved": "any",
683
+ "references": {}
684
+ }
685
+ }, {
686
+ "method": "labelButtonClick",
687
+ "name": "labelButtonClick",
688
+ "bubbles": true,
689
+ "cancelable": true,
690
+ "composed": true,
691
+ "docs": {
692
+ "tags": [{
693
+ "name": "eventSemantics",
694
+ "text": "namespace:native"
695
+ }, {
696
+ "name": "vegaVersion",
697
+ "text": "2.68.0"
698
+ }],
699
+ "text": "An event emitter notifying that the suffix button associated with the field label has been clicked."
700
+ },
701
+ "complexType": {
702
+ "original": "any",
703
+ "resolved": "any",
704
+ "references": {}
705
+ }
623
706
  }]; }
624
707
  static get elementRef() { return "host"; }
625
708
  static get watchers() { return [{
@@ -649,6 +732,9 @@ __decorate([
649
732
  __decorate([
650
733
  InjectVegaSlimmer()
651
734
  ], VegaTextarea.prototype, "blurEventEmitter", void 0);
735
+ __decorate([
736
+ InjectVegaSlimmer()
737
+ ], VegaTextarea.prototype, "labelButtonClickEventEmitter", void 0);
652
738
  __decorate([
653
739
  InjectVegaSlimmer()
654
740
  ], VegaTextarea.prototype, "textareaEventPrevent", void 0);