@globalpayments/vega 2.66.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 (436) 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 +138 -44
  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-modal/slimmers/controllers/vega-modal-open-state-controller.js +95 -16
  92. package/dist/collection/components/vega-modal/slimmers/controllers/vega-modal-z-index-controller.js +4 -1
  93. package/dist/collection/components/vega-modal/slimmers/models/vega-modal-open-state.js +9 -0
  94. package/dist/collection/components/vega-modal/slimmers/renderers/vega-modal-renderer.js +4 -1
  95. package/dist/collection/components/vega-modal/vega-modal.js +19 -16
  96. package/dist/collection/components/vega-rich-text-content/slimmers/controllers/vega-rich-text-content-extensions-styles-controller.js +60 -0
  97. package/dist/collection/components/vega-rich-text-content/slimmers/renderers/vega-rich-text-content-renderer.js +7 -1
  98. package/dist/collection/components/vega-rich-text-content/vega-rich-text-content.js +17 -1
  99. package/dist/collection/components/vega-rich-text-editor/dto/action-handle-strategies/action-handle-interceptor-registry.js +61 -0
  100. package/dist/collection/components/vega-rich-text-editor/dto/action-handle-strategies/action-handle-interceptor.abstract.js +5 -0
  101. package/dist/collection/components/vega-rich-text-editor/dto/action-handle-strategies/action-handle-strategy-registry.js +30 -6
  102. package/dist/collection/components/vega-rich-text-editor/dto/action-handle-strategies/modify-content-strategies/block-delete-node-content-strategy.js +10 -3
  103. 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
  104. package/dist/collection/components/vega-rich-text-editor/dto/action-handle-strategies/modify-content-strategies/paste-content-strategy.js +28 -0
  105. package/dist/collection/components/vega-rich-text-editor/dto/actions/modify-content-action.abstract.js +1 -0
  106. package/dist/collection/components/vega-rich-text-editor/dto/actions/paste-content-action.js +17 -0
  107. package/dist/collection/components/vega-rich-text-editor/dto/actions/update-cursor-position-action.js +5 -0
  108. package/dist/collection/components/vega-rich-text-editor/dto/annotations/annotation-style.js +87 -0
  109. package/dist/collection/components/vega-rich-text-editor/dto/blocks/block.abstract.js +27 -9
  110. package/dist/collection/components/vega-rich-text-editor/dto/blocks/html-block.js +1 -12
  111. package/dist/collection/components/vega-rich-text-editor/dto/blocks/list-item-block.js +6 -0
  112. package/dist/collection/components/vega-rich-text-editor/dto/blocks/text-block.js +14 -5
  113. package/dist/collection/components/vega-rich-text-editor/dto/content-state.js +11 -0
  114. package/dist/collection/components/vega-rich-text-editor/dto/nodes/node.abstract.js +7 -37
  115. package/dist/collection/components/vega-rich-text-editor/dto/nodes/text-node.js +14 -3
  116. package/dist/collection/components/vega-rich-text-editor/extensions/base-extension-renderer.js +19 -1
  117. package/dist/collection/components/vega-rich-text-editor/extensions/base-toolbar-button-renderer.js +44 -3
  118. package/dist/collection/components/vega-rich-text-editor/extensions/extension.abstract.js +51 -1
  119. package/dist/collection/components/vega-rich-text-editor/extensions/functions/action-handler-interceptor/prevent-new-paragraph-interceptor.js +30 -0
  120. package/dist/collection/components/vega-rich-text-editor/extensions/functions/action-handler-interceptor/prevent-paste-content-interceptor.js +25 -0
  121. package/dist/collection/components/vega-rich-text-editor/extensions/functions/action-handler-strategies/function-block-insert-paragraph-strategy.js +30 -0
  122. package/dist/collection/components/vega-rich-text-editor/extensions/functions/action-handler-strategies/insert-function-block-strategy.js +99 -0
  123. package/dist/collection/components/vega-rich-text-editor/extensions/functions/action-handler-strategies/paste-plain-text-strategy.js +68 -0
  124. package/dist/collection/components/vega-rich-text-editor/extensions/functions/actions/insert-function-block-action.js +15 -0
  125. package/dist/collection/components/vega-rich-text-editor/extensions/functions/actions/paste-plain-text-action.js +17 -0
  126. package/dist/collection/components/vega-rich-text-editor/extensions/functions/dto/function-block.js +97 -0
  127. package/dist/collection/components/vega-rich-text-editor/extensions/functions/dto/logic-control-block.js +73 -0
  128. package/dist/collection/components/vega-rich-text-editor/extensions/functions/dto/logic-control-node.js +69 -0
  129. package/dist/collection/components/vega-rich-text-editor/extensions/functions/element-to-dto-strategies/div-to-function-block-strategy.js +49 -0
  130. package/dist/collection/components/vega-rich-text-editor/extensions/functions/element-to-dto-strategies/div-to-function-content-strategy.js +27 -0
  131. package/dist/collection/components/vega-rich-text-editor/extensions/functions/element-to-dto-strategies/div-to-logic-control-block-strategy.js +55 -0
  132. package/dist/collection/components/vega-rich-text-editor/extensions/functions/function-extension.js +75 -0
  133. package/dist/collection/components/vega-rich-text-editor/extensions/functions/renderers/function-block-renderer.js +38 -0
  134. package/dist/collection/components/vega-rich-text-editor/extensions/functions/renderers/function-toolbar-button-renderer.js +71 -0
  135. package/dist/collection/components/vega-rich-text-editor/extensions/functions/renderers/logic-control-block-renderer.js +20 -0
  136. package/dist/collection/components/vega-rich-text-editor/extensions/languages/language-toolbar-button-renderer.js +1 -1
  137. package/dist/collection/components/vega-rich-text-editor/extensions/tokens/span-to-token-node-strategy.js +3 -1
  138. package/dist/collection/components/vega-rich-text-editor/extensions/tokens/token-node-renderer.js +5 -6
  139. package/dist/collection/components/vega-rich-text-editor/extensions/tokens/token-toolbar-button-renderer.js +1 -1
  140. package/dist/collection/components/vega-rich-text-editor/public-api.js +8 -1
  141. package/dist/collection/components/vega-rich-text-editor/slimmers/controllers/delete-selected-nodes-controller.js +9 -1
  142. package/dist/collection/components/vega-rich-text-editor/slimmers/controllers/helper/element-to-dto-strategy/element-to-dto-strategy.abstract.js +0 -12
  143. package/dist/collection/components/vega-rich-text-editor/slimmers/controllers/helper/input-event-handler/insert-line-break-handler.js +3 -1
  144. package/dist/collection/components/vega-rich-text-editor/slimmers/controllers/helper/input-event-handler/insert-paste-handler.js +12 -10
  145. package/dist/collection/components/vega-rich-text-editor/slimmers/renderers/tools/bold-toolbar-button-slimmer.js +2 -4
  146. package/dist/collection/components/vega-rich-text-editor/slimmers/renderers/tools/bullets-numbers/bullets-numbers-toolbar-button-slimmer.js +30 -5
  147. package/dist/collection/components/vega-rich-text-editor/slimmers/renderers/tools/clear-style-toolbar-button-slimmer.js +1 -4
  148. package/dist/collection/components/vega-rich-text-editor/slimmers/renderers/tools/code-block-toolbar-button-slimmer.js +10 -1
  149. package/dist/collection/components/vega-rich-text-editor/slimmers/renderers/tools/code-toolbar-button-slimmer.js +2 -4
  150. package/dist/collection/components/vega-rich-text-editor/slimmers/renderers/tools/horizontal-alignment/horizontal-alignment-toolbar-button-slimmer.js +2 -1
  151. package/dist/collection/components/vega-rich-text-editor/slimmers/renderers/tools/image-toolbar-button-slimmer.js +4 -1
  152. package/dist/collection/components/vega-rich-text-editor/slimmers/renderers/tools/italic-toolbar-button-slimmer.js +2 -4
  153. package/dist/collection/components/vega-rich-text-editor/slimmers/renderers/tools/less-indent-toolbar-button-slimmer.js +1 -4
  154. package/dist/collection/components/vega-rich-text-editor/slimmers/renderers/tools/link-toolbar-button-slimmer.js +1 -4
  155. package/dist/collection/components/vega-rich-text-editor/slimmers/renderers/tools/more-indent-toolbar-button-slimmer.js +1 -4
  156. package/dist/collection/components/vega-rich-text-editor/slimmers/renderers/tools/strikethrough-toolbar-button-slimmer.js +2 -4
  157. package/dist/collection/components/vega-rich-text-editor/slimmers/renderers/tools/text-color-toolbar-button-slimmer.js +2 -4
  158. package/dist/collection/components/vega-rich-text-editor/slimmers/renderers/tools/text-styles-toolbar-button-slimmer.js +2 -5
  159. package/dist/collection/components/vega-rich-text-editor/slimmers/renderers/tools/underline-toolbar-button-slimmer.js +2 -4
  160. package/dist/collection/components/vega-rich-text-editor/slimmers/renderers/tools/visual-mode-toolbar-button-slimmer.abstract.js +11 -0
  161. package/dist/collection/components/vega-rich-text-editor/slimmers/renderers/vega-rich-text-editor-renderer.js +4 -1
  162. package/dist/collection/components/vega-rich-text-editor/test/dto/action-handle-strategies/action-handle-strategy-registry.test.js +32 -2
  163. package/dist/collection/components/vega-rich-text-editor/test/dto/action-handle-strategies/block-delete-node-content-strategy.test.js +69 -0
  164. package/dist/collection/components/vega-rich-text-editor/test/dto/annotation-style.test.js +70 -0
  165. package/dist/collection/components/vega-rich-text-editor/vega-rich-text-editor-toolbar-button/vega-rich-text-editor-toolbar-button.css +3 -0
  166. package/dist/collection/components/vega-selection-chip/vega-selection-chip.js +1 -1
  167. package/dist/collection/components/vega-table/vega-table.css +2 -1
  168. package/dist/collection/components/vega-textarea/vega-textarea.js +88 -2
  169. package/dist/collection/global/scripts/before-vega-load.js +2 -0
  170. package/dist/collection/helpers/calendar/calendar-date-time.js +136 -0
  171. package/dist/collection/helpers/calendar/calendar-date.js +10 -4
  172. package/dist/collection/helpers/calendar/calendar-event.js +38 -193
  173. package/dist/collection/helpers/calendar/calendar-time.js +120 -0
  174. package/dist/collection/helpers/calendar/index.js +2 -0
  175. package/dist/collection/helpers/calendar/test/calendar-date-time.test.js +27 -0
  176. package/dist/collection/helpers/calendar/test/calendar-event.test.js +24 -22
  177. package/dist/collection/helpers/calendar/test/calendar-period/day-period.test.js +2 -2
  178. package/dist/collection/helpers/calendar/test/calendar-period/month-period.test.js +2 -2
  179. package/dist/collection/helpers/calendar/test/calendar-period/week-period.test.js +6 -6
  180. package/dist/collection/helpers/calendar/test/calendar-time.test.js +45 -0
  181. package/dist/collection/helpers/calendar/test/utils.test.js +1 -29
  182. package/dist/collection/helpers/calendar/utils.js +0 -66
  183. package/dist/collection/helpers/event-manager/event-id/component-event-id-map.js +5 -2
  184. package/dist/collection/helpers/rte-manager/dto-action-strategy-manager.js +2 -0
  185. package/dist/esm/{app-globals-37a60cc1.js → app-globals-2f689986.js} +6 -5
  186. package/dist/esm/{child-nodes-event-prevent-slimmer-735cb880.js → child-nodes-event-prevent-slimmer-76331524.js} +1 -1
  187. package/dist/esm/{code-block-11b2bc1c.js → code-block-e8839202.js} +511 -318
  188. package/dist/esm/{component-value-history-controller-slimmer.abstract-16c5cb96.js → component-value-history-controller-slimmer.abstract-c6f94113.js} +2 -2
  189. package/dist/esm/{design-token-297dc528.js → design-token-e9e6b011.js} +1 -1
  190. package/dist/esm/{dto-renderer-manager-a1a3b6d2.js → dto-renderer-manager-7abc53bf.js} +1587 -1565
  191. package/dist/esm/{element-appender-slimmer-f7233708.js → element-appender-slimmer-8dbc8387.js} +2 -2
  192. package/dist/esm/{event-emit-slimmer-28fd360c.js → event-emit-slimmer-4e28e9f8.js} +1 -1
  193. package/dist/esm/{token-extension-b690953f.js → function-extension-eb1d062f.js} +1018 -97
  194. package/dist/esm/{image-annotation-action-fc46c920.js → image-annotation-action-7957653a.js} +14 -24
  195. package/dist/esm/index.js +9 -9
  196. package/dist/esm/{internal-vega-event-manager-a5a5938d.js → internal-vega-event-manager-516aa721.js} +5 -2
  197. package/dist/esm/{language-extension-314a2b18.js → language-extension-3331131f.js} +3 -3
  198. package/dist/esm/loader.js +8 -8
  199. package/dist/esm/{public-rules-c6a6946d.js → public-rules-e613dead.js} +3 -3
  200. package/dist/esm/{range-b78254de.js → range-adf206fd.js} +1 -1
  201. package/dist/esm/{responsive-format-facade-a41e1be7.js → responsive-format-facade-b0712993.js} +3 -3
  202. package/dist/esm/{rich-text-editor-required-rule-d50c24da.js → rich-text-editor-required-rule-43857573.js} +1 -1
  203. package/dist/esm/{style-formatter-f7effaac.js → style-formatter-a20a1ef4.js} +1 -1
  204. package/dist/esm/vega-accordion.entry.js +7 -7
  205. package/dist/esm/vega-app-header-button.entry.js +8 -8
  206. package/dist/esm/vega-banner.entry.js +2 -2
  207. package/dist/esm/vega-box.entry.js +8 -8
  208. package/dist/esm/vega-breadcrumb.entry.js +3 -3
  209. package/dist/esm/vega-button-circle.entry.js +9 -9
  210. package/dist/esm/vega-button-group_2.entry.js +3 -3
  211. package/dist/esm/vega-button-link.entry.js +3 -3
  212. package/dist/esm/vega-button.entry.js +8 -8
  213. package/dist/esm/vega-calendar_4.entry.js +307 -269
  214. package/dist/esm/vega-card.entry.js +7 -7
  215. package/dist/esm/vega-carousel.entry.js +7 -7
  216. package/dist/esm/vega-checkbox_2.entry.js +3 -3
  217. package/dist/esm/vega-chip.entry.js +9 -9
  218. package/dist/esm/vega-code-block.entry.js +6 -6
  219. package/dist/esm/vega-color-picker.entry.js +2 -2
  220. package/dist/esm/vega-combo-box.entry.js +3 -3
  221. package/dist/esm/vega-date-picker_2.entry.js +8 -8
  222. package/dist/esm/vega-dialog_2.entry.js +132 -38
  223. package/dist/esm/vega-divider.entry.js +7 -7
  224. package/dist/esm/vega-dropdown_5.entry.js +9 -9
  225. package/dist/esm/vega-env-manager-8f8dc473.js +2 -2
  226. package/dist/esm/vega-field-label.entry.js +24 -5
  227. package/dist/esm/vega-file-uploader.entry.js +2 -2
  228. package/dist/esm/vega-flag-icon.entry.js +6 -6
  229. package/dist/esm/vega-flex.entry.js +8 -8
  230. package/dist/esm/vega-font.entry.js +7 -7
  231. package/dist/esm/vega-form.entry.js +3 -3
  232. package/dist/esm/vega-grid.entry.js +7 -7
  233. package/dist/esm/vega-icon.entry.js +6 -6
  234. package/dist/esm/vega-image-uploader.entry.js +7 -7
  235. package/dist/esm/vega-input-credit-card.entry.js +3 -3
  236. package/dist/esm/vega-input-numeric.entry.js +3 -3
  237. package/dist/esm/vega-input-passcode.entry.js +3 -3
  238. package/dist/esm/vega-input-phone-number.entry.js +6 -6
  239. package/dist/esm/vega-input-range.entry.js +3 -3
  240. package/dist/esm/vega-input-select.entry.js +38 -14
  241. package/dist/esm/vega-input.entry.js +14 -3
  242. package/dist/esm/vega-item-toggle.entry.js +2 -2
  243. package/dist/esm/vega-left-nav_5.entry.js +7 -7
  244. package/dist/esm/vega-loader-wrapper_2.entry.js +6 -6
  245. package/dist/esm/vega-pagination-page-selector-mobile.entry.js +2 -2
  246. package/dist/esm/vega-pagination.entry.js +7 -7
  247. package/dist/esm/vega-popover_2.entry.js +9 -9
  248. package/dist/esm/vega-progress-tracker.entry.js +2 -2
  249. package/dist/esm/vega-radio_2.entry.js +3 -3
  250. package/dist/esm/vega-rich-text-content.entry.js +93 -16
  251. package/dist/esm/vega-rich-text-editor_4.entry.js +107 -54
  252. package/dist/esm/vega-segment-control.entry.js +2 -2
  253. package/dist/esm/vega-selection-chip_2.entry.js +8 -8
  254. package/dist/esm/vega-selection-tile_2.entry.js +3 -3
  255. package/dist/esm/vega-sidenav_3.entry.js +6 -6
  256. package/dist/esm/vega-signature-capture.entry.js +7 -7
  257. package/dist/esm/vega-stepper.entry.js +3 -3
  258. package/dist/esm/vega-tab-group_2.entry.js +3 -3
  259. package/dist/esm/vega-table_8.entry.js +8 -8
  260. package/dist/esm/vega-textarea.entry.js +25 -5
  261. package/dist/esm/vega-time-picker_2.entry.js +9 -9
  262. package/dist/esm/vega-toggle-switch.entry.js +2 -2
  263. package/dist/esm/vega-tooltip_2.entry.js +7 -7
  264. package/dist/esm/vega.js +8 -8
  265. package/dist/sri/vega-sri-manifest.json +273 -273
  266. package/dist/types/components/vega-field-label/slimmers/renderers/vega-field-label-suffix-element-renderer.d.ts +1 -0
  267. package/dist/types/components/vega-field-label/types.d.ts +12 -0
  268. package/dist/types/components/vega-field-label/vega-field-label.d.ts +13 -1
  269. package/dist/types/components/vega-input/vega-input.d.ts +14 -2
  270. package/dist/types/components/vega-input-select/slimmers/renderers/vega-input-select-renderer.d.ts +3 -0
  271. package/dist/types/components/vega-input-select/vega-input-select.d.ts +25 -0
  272. package/dist/types/components/vega-modal/slimmers/controllers/vega-modal-open-state-controller.d.ts +31 -2
  273. package/dist/types/components/vega-modal/slimmers/controllers/vega-modal-z-index-controller.d.ts +1 -0
  274. package/dist/types/components/vega-modal/slimmers/models/vega-modal-open-state.d.ts +9 -0
  275. package/dist/types/components/vega-modal/slimmers/renderers/vega-modal-renderer.d.ts +1 -0
  276. package/dist/types/components/vega-modal/types.d.ts +9 -0
  277. package/dist/types/components/vega-modal/vega-modal.d.ts +8 -2
  278. package/dist/types/components/vega-rich-text-content/slimmers/controllers/vega-rich-text-content-extensions-styles-controller.d.ts +26 -0
  279. package/dist/types/components/vega-rich-text-content/slimmers/renderers/vega-rich-text-content-renderer.d.ts +1 -0
  280. package/dist/types/components/vega-rich-text-content/vega-rich-text-content.d.ts +7 -0
  281. package/dist/types/components/vega-rich-text-editor/dto/action-handle-strategies/action-handle-interceptor-registry.d.ts +42 -0
  282. package/dist/types/components/vega-rich-text-editor/dto/action-handle-strategies/action-handle-interceptor.abstract.d.ts +26 -0
  283. package/dist/types/components/vega-rich-text-editor/dto/action-handle-strategies/action-handle-strategy-registry.d.ts +9 -2
  284. package/dist/types/components/vega-rich-text-editor/dto/action-handle-strategies/modify-content-strategies/block-delete-node-content-strategy.d.ts +7 -0
  285. package/dist/types/components/vega-rich-text-editor/dto/action-handle-strategies/modify-content-strategies/paste-content-strategy.d.ts +12 -0
  286. package/dist/types/components/vega-rich-text-editor/dto/actions/modify-content-action.abstract.d.ts +2 -1
  287. package/dist/types/components/vega-rich-text-editor/dto/actions/paste-content-action.d.ts +20 -0
  288. package/dist/types/components/vega-rich-text-editor/dto/actions/update-cursor-position-action.d.ts +1 -0
  289. package/dist/types/components/vega-rich-text-editor/dto/annotations/annotation-style.d.ts +46 -0
  290. package/dist/types/components/vega-rich-text-editor/dto/blocks/block.abstract.d.ts +10 -1
  291. package/dist/types/components/vega-rich-text-editor/dto/blocks/html-block.d.ts +3 -3
  292. package/dist/types/components/vega-rich-text-editor/dto/blocks/text-block.d.ts +6 -0
  293. package/dist/types/components/vega-rich-text-editor/dto/nodes/node.abstract.d.ts +0 -11
  294. package/dist/types/components/vega-rich-text-editor/extensions/base-extension-renderer.d.ts +16 -0
  295. package/dist/types/components/vega-rich-text-editor/extensions/base-toolbar-button-renderer.d.ts +19 -3
  296. package/dist/types/components/vega-rich-text-editor/extensions/extension.abstract.d.ts +36 -3
  297. package/dist/types/components/vega-rich-text-editor/extensions/functions/action-handler-interceptor/prevent-new-paragraph-interceptor.d.ts +25 -0
  298. package/dist/types/components/vega-rich-text-editor/extensions/functions/action-handler-interceptor/prevent-paste-content-interceptor.d.ts +17 -0
  299. package/dist/types/components/vega-rich-text-editor/extensions/functions/action-handler-strategies/function-block-insert-paragraph-strategy.d.ts +18 -0
  300. package/dist/types/components/vega-rich-text-editor/extensions/functions/action-handler-strategies/insert-function-block-strategy.d.ts +27 -0
  301. package/dist/types/components/vega-rich-text-editor/extensions/functions/action-handler-strategies/paste-plain-text-strategy.d.ts +26 -0
  302. package/dist/types/components/vega-rich-text-editor/extensions/functions/actions/insert-function-block-action.d.ts +17 -0
  303. package/dist/types/components/vega-rich-text-editor/extensions/functions/actions/paste-plain-text-action.d.ts +17 -0
  304. package/dist/types/components/vega-rich-text-editor/extensions/functions/dto/function-block.d.ts +58 -0
  305. package/dist/types/components/vega-rich-text-editor/extensions/functions/dto/logic-control-block.d.ts +55 -0
  306. package/dist/types/components/vega-rich-text-editor/extensions/functions/dto/logic-control-node.d.ts +48 -0
  307. package/dist/types/components/vega-rich-text-editor/extensions/functions/element-to-dto-strategies/div-to-function-block-strategy.d.ts +27 -0
  308. package/dist/types/components/vega-rich-text-editor/extensions/functions/element-to-dto-strategies/div-to-function-content-strategy.d.ts +14 -0
  309. package/dist/types/components/vega-rich-text-editor/extensions/functions/element-to-dto-strategies/div-to-logic-control-block-strategy.d.ts +32 -0
  310. package/dist/types/components/vega-rich-text-editor/extensions/functions/function-extension.d.ts +19 -0
  311. package/dist/types/components/vega-rich-text-editor/extensions/functions/renderers/function-block-renderer.d.ts +25 -0
  312. package/dist/types/components/vega-rich-text-editor/extensions/functions/renderers/function-toolbar-button-renderer.d.ts +33 -0
  313. package/dist/types/components/vega-rich-text-editor/extensions/functions/renderers/logic-control-block-renderer.d.ts +12 -0
  314. package/dist/types/components/vega-rich-text-editor/extensions/languages/language-extension.d.ts +2 -2
  315. package/dist/types/components/vega-rich-text-editor/extensions/languages/language-toolbar-button-renderer.d.ts +2 -2
  316. package/dist/types/components/vega-rich-text-editor/extensions/tokens/token-extension.d.ts +2 -2
  317. package/dist/types/components/vega-rich-text-editor/extensions/tokens/token-node-renderer.d.ts +3 -4
  318. package/dist/types/components/vega-rich-text-editor/interface.d.ts +8 -2
  319. package/dist/types/components/vega-rich-text-editor/public-api.d.ts +8 -1
  320. package/dist/types/components/vega-rich-text-editor/slimmers/controllers/helper/element-to-dto-strategy/element-to-dto-strategy.abstract.d.ts +2 -11
  321. package/dist/types/components/vega-rich-text-editor/slimmers/controllers/state-entity-rendering-registry.d.ts +1 -1
  322. package/dist/types/components/vega-rich-text-editor/slimmers/renderers/tools/bullets-numbers/bullets-numbers-toolbar-button-slimmer.d.ts +15 -0
  323. package/dist/types/components/vega-rich-text-editor/slimmers/renderers/tools/code-block-toolbar-button-slimmer.d.ts +1 -0
  324. package/dist/types/components/vega-rich-text-editor/slimmers/renderers/tools/visual-mode-toolbar-button-slimmer.abstract.d.ts +11 -0
  325. package/dist/types/components/vega-rich-text-editor/slimmers/renderers/vega-rich-text-editor-renderer.d.ts +1 -0
  326. package/dist/types/components/vega-rich-text-editor/test/dto/action-handle-strategies/block-delete-node-content-strategy.test.d.ts +1 -0
  327. package/dist/types/components/vega-rich-text-editor/test/dto/annotation-style.test.d.ts +1 -0
  328. package/dist/types/components/vega-textarea/vega-textarea.d.ts +26 -0
  329. package/dist/types/components.d.ts +66 -4
  330. package/dist/types/helpers/calendar/calendar-date-time.d.ts +76 -0
  331. package/dist/types/helpers/calendar/calendar-event.d.ts +18 -57
  332. package/dist/types/helpers/calendar/calendar-time.d.ts +64 -0
  333. package/dist/types/helpers/calendar/index.d.ts +2 -0
  334. package/dist/types/helpers/calendar/test/calendar-date-time.test.d.ts +1 -0
  335. package/dist/types/helpers/calendar/test/calendar-time.test.d.ts +1 -0
  336. package/dist/types/helpers/calendar/utils.d.ts +0 -25
  337. package/dist/types/types/components.type.d.ts +1 -1
  338. package/dist/types/types/public-api.d.ts +2 -0
  339. package/dist/vega/index.esm.js +1 -1
  340. package/dist/vega/{p-6f7d42a0.entry.js → p-00376f71.entry.js} +1 -1
  341. package/dist/vega/p-018d70a5.js +1 -0
  342. package/dist/vega/p-0849f85e.js +1 -0
  343. package/dist/vega/{p-b431f9d5.entry.js → p-0a55f984.entry.js} +1 -1
  344. package/dist/vega/p-0f7dec29.entry.js +1 -0
  345. package/dist/vega/{p-47cae62d.entry.js → p-113d305b.entry.js} +1 -1
  346. package/dist/vega/{p-015cdbe7.entry.js → p-115b42e6.entry.js} +1 -1
  347. package/dist/vega/p-16358fec.entry.js +1 -0
  348. package/dist/vega/{p-af5bfe34.js → p-16d68187.js} +1 -1
  349. package/dist/vega/{p-92a22562.entry.js → p-18e8c54a.entry.js} +1 -1
  350. package/dist/vega/{p-6f6ccf67.entry.js → p-1922303e.entry.js} +1 -1
  351. package/dist/vega/{p-74d61782.entry.js → p-19256107.entry.js} +1 -1
  352. package/dist/vega/{p-59298f5e.entry.js → p-1dcb1fcd.entry.js} +2 -2
  353. package/dist/vega/{p-7f69081b.entry.js → p-1dd7f8b2.entry.js} +1 -1
  354. package/dist/vega/{p-d006e732.entry.js → p-22fe8c61.entry.js} +1 -1
  355. package/dist/vega/{p-524693d8.entry.js → p-238afe1b.entry.js} +1 -1
  356. package/dist/vega/p-240d9d35.entry.js +1 -0
  357. package/dist/vega/{p-b82d3915.entry.js → p-24419ebe.entry.js} +1 -1
  358. package/dist/vega/p-2478f65e.js +1 -0
  359. package/dist/vega/{p-358e9800.entry.js → p-2c945862.entry.js} +1 -1
  360. package/dist/vega/{p-5f58d1da.entry.js → p-2e32fbe6.entry.js} +1 -1
  361. package/dist/vega/p-2f04d2ac.js +1 -0
  362. package/dist/vega/p-30a8d9d6.entry.js +1 -0
  363. package/dist/vega/{p-e6cccee4.js → p-369810ae.js} +1 -1
  364. package/dist/vega/p-3ad87199.entry.js +1 -0
  365. package/dist/vega/{p-fe2e859f.entry.js → p-3b800f1b.entry.js} +1 -1
  366. package/dist/vega/p-437f865f.js +1 -0
  367. package/dist/vega/{p-de624f7d.entry.js → p-48bc03fa.entry.js} +1 -1
  368. package/dist/vega/{p-46830028.entry.js → p-54ddd06f.entry.js} +1 -1
  369. package/dist/vega/{p-5a0524ab.entry.js → p-56636a58.entry.js} +1 -1
  370. package/dist/vega/{p-fc8c5869.entry.js → p-56f77466.entry.js} +1 -1
  371. package/dist/vega/p-5f377954.js +1 -1
  372. package/dist/vega/{p-ab1001f5.entry.js → p-61d9cdf9.entry.js} +1 -1
  373. package/dist/vega/{p-39b9c57b.entry.js → p-626246b4.entry.js} +1 -1
  374. package/dist/vega/{p-ff3bb4e2.entry.js → p-634499cb.entry.js} +1 -1
  375. package/dist/vega/p-6609d87e.entry.js +1 -0
  376. package/dist/vega/p-69d27eaf.entry.js +1 -0
  377. package/dist/vega/{p-7efb5ebe.entry.js → p-705dad87.entry.js} +1 -1
  378. package/dist/vega/{p-8d574fbd.entry.js → p-75b5894f.entry.js} +1 -1
  379. package/dist/vega/{p-00071542.entry.js → p-76b1dae4.entry.js} +1 -1
  380. package/dist/vega/{p-54b62ecf.js → p-7747c163.js} +1 -1
  381. package/dist/vega/{p-0ed53cce.entry.js → p-787caad3.entry.js} +1 -1
  382. package/dist/vega/{p-129c0ce1.js → p-79e6e12c.js} +1 -1
  383. package/dist/vega/{p-cc519f53.entry.js → p-7dde3be9.entry.js} +1 -1
  384. package/dist/vega/p-8233d814.entry.js +1 -0
  385. package/dist/vega/{p-5e32866d.entry.js → p-83a50ac2.entry.js} +1 -1
  386. package/dist/vega/p-8506e8c3.js +1 -0
  387. package/dist/vega/{p-47fa359b.js → p-85407fb9.js} +1 -1
  388. package/dist/vega/{p-892cbe7c.entry.js → p-880569ec.entry.js} +1 -1
  389. package/dist/vega/{p-0113a83c.entry.js → p-8dba59a6.entry.js} +1 -1
  390. package/dist/vega/p-94e167b8.entry.js +1 -0
  391. package/dist/vega/{p-b2aaab66.entry.js → p-98fb9eaa.entry.js} +1 -1
  392. package/dist/vega/{p-3288a65b.entry.js → p-99bf5993.entry.js} +1 -1
  393. package/dist/vega/p-a211ae63.js +1 -0
  394. package/dist/vega/{p-fef846d5.entry.js → p-a2506cb5.entry.js} +1 -1
  395. package/dist/vega/{p-4e33fff6.entry.js → p-a6fb5a40.entry.js} +1 -1
  396. package/dist/vega/{p-bee1cc34.entry.js → p-b5060e84.entry.js} +1 -1
  397. package/dist/vega/{p-616cd622.entry.js → p-b78670c9.entry.js} +1 -1
  398. package/dist/vega/{p-d5761532.entry.js → p-b8558278.entry.js} +1 -1
  399. package/dist/vega/{p-8d655fd2.entry.js → p-bb0f2b5f.entry.js} +1 -1
  400. package/dist/vega/{p-a7631c6b.js → p-bb37a401.js} +1 -1
  401. package/dist/vega/p-bccee21e.js +1 -0
  402. package/dist/vega/{p-2553031f.entry.js → p-bd0e55a2.entry.js} +1 -1
  403. package/dist/vega/{p-65693321.entry.js → p-c0223a17.entry.js} +1 -1
  404. package/dist/vega/{p-2d430dc4.entry.js → p-c26332ae.entry.js} +1 -1
  405. package/dist/vega/{p-7f9ec104.entry.js → p-c54148fb.entry.js} +1 -1
  406. package/dist/vega/{p-276b1163.entry.js → p-d3905af1.entry.js} +2 -2
  407. package/dist/vega/p-d4893487.js +1 -0
  408. package/dist/vega/{p-d1dacaeb.entry.js → p-d67200e8.entry.js} +1 -1
  409. package/dist/vega/{p-725f0a2c.js → p-db57dddc.js} +1 -1
  410. package/dist/vega/{p-ed8bc4f0.entry.js → p-de02f404.entry.js} +1 -1
  411. package/dist/vega/{p-d4452dbc.entry.js → p-de8c5fae.entry.js} +1 -1
  412. package/dist/vega/{p-7b145620.js → p-de97c6d9.js} +1 -1
  413. package/dist/vega/{p-34800282.entry.js → p-e0979451.entry.js} +1 -1
  414. package/dist/vega/{p-1a3cb65e.entry.js → p-e6351dab.entry.js} +1 -1
  415. package/dist/vega/{p-8d096fea.entry.js → p-f0fb3fdd.entry.js} +1 -1
  416. package/dist/vega/{p-ea05a2fc.entry.js → p-f3399ef1.entry.js} +1 -1
  417. package/dist/vega/vega.esm.js +1 -1
  418. package/package.json +1 -1
  419. package/dist/vega/p-019f7f95.js +0 -1
  420. package/dist/vega/p-03a1e82e.entry.js +0 -1
  421. package/dist/vega/p-0d1eca78.entry.js +0 -1
  422. package/dist/vega/p-16370cfb.js +0 -1
  423. package/dist/vega/p-3a7f177a.entry.js +0 -1
  424. package/dist/vega/p-41c3fcb4.js +0 -1
  425. package/dist/vega/p-81105691.entry.js +0 -1
  426. package/dist/vega/p-822c6092.js +0 -1
  427. package/dist/vega/p-8edf3513.js +0 -1
  428. package/dist/vega/p-a1b7a179.entry.js +0 -1
  429. package/dist/vega/p-ab8f99e9.entry.js +0 -1
  430. package/dist/vega/p-bf7f755b.js +0 -1
  431. package/dist/vega/p-bf9476cd.entry.js +0 -1
  432. package/dist/vega/p-c1da8328.entry.js +0 -1
  433. package/dist/vega/p-c6ce2869.js +0 -1
  434. package/dist/vega/p-d0e6454e.entry.js +0 -1
  435. package/dist/vega/p-d88e88a7.js +0 -1
  436. package/dist/vega/p-f360c9ba.js +0 -1
@@ -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);
@@ -22,6 +22,7 @@ import { VegaNonceInjectorSlimmer } from '../../helpers/slimmers/global/vega-non
22
22
  import { VegaRTETokenExtension } from '../../components/vega-rich-text-editor/extensions/tokens/token-extension';
23
23
  import { VegaRTELanguageExtension } from '../../components/vega-rich-text-editor/extensions/languages/language-extension';
24
24
  import { VegaRTEPresetToolbarItems } from '../../components/vega-rich-text-editor/constants/constant';
25
+ import { VegaRTEFunctionExtension } from '../../components/vega-rich-text-editor/extensions/functions/function-extension';
25
26
  /**
26
27
  * Default export function that will be used by stencil global script,
27
28
  * which will be invoked before library loaded.
@@ -193,6 +194,7 @@ function injectVegaRichTextEditorClassIntoGlobal() {
193
194
  globalThis.VegaRTETokenExtension = VegaRTETokenExtension;
194
195
  globalThis.VegaRTELanguageExtension = VegaRTELanguageExtension;
195
196
  globalThis.VegaRTEPresetToolbarItems = VegaRTEPresetToolbarItems;
197
+ globalThis.VegaRTEFunctionExtension = VegaRTEFunctionExtension;
196
198
  }
197
199
  /**
198
200
  * Inject VegaPublicValidationRules to global as a public api
@@ -0,0 +1,136 @@
1
+ import { LogUtility } from '../../utils/log';
2
+ import { CalendarTime } from './calendar-time';
3
+ import { CalendarDate } from './calendar-date';
4
+ import { getSystemTimezone } from './utils';
5
+ /**
6
+ * CalendarDateTime centralizes timezone-aware conversions between native Date instances and calendar helpers.
7
+ */
8
+ export class CalendarDateTime {
9
+ constructor(date, timezone) {
10
+ this.originalDate = date;
11
+ this.timezone = timezone;
12
+ this.syncDateTime();
13
+ }
14
+ /**
15
+ * Build a CalendarDateTime from a native Date while the specific timezone.
16
+ *
17
+ * @param {Date} date - The native Date object to convert.
18
+ * @param {string} timezone - The timezone to apply.
19
+ * @returns {CalendarDateTime} A timezone-aware CalendarDateTime instance.
20
+ */
21
+ static fromDate(date, timezone) {
22
+ return new CalendarDateTime(date, timezone);
23
+ }
24
+ /**
25
+ * Build a CalendarDateTime from a date input (Date or string) and optional time metadata.
26
+ *
27
+ * @param {string | Date} date - The input date value (string or Date).
28
+ * @param {CalendarDateTimeOptions} options - Additional options for time, timezone, seconds, etc.
29
+ * @returns {CalendarDateTime} A timezone-aware CalendarDateTime instance.
30
+ */
31
+ static fromInitDataSource(date, options) {
32
+ const baseDate = new Date(date);
33
+ if (options.time) {
34
+ const calendarTime = CalendarTime.fromString(options.time);
35
+ baseDate.setHours(calendarTime.hours, calendarTime.minutes, 0, 0);
36
+ }
37
+ else if (options.endTimeMissing) {
38
+ baseDate.setHours(23, 59, 59, 0);
39
+ }
40
+ return CalendarDateTime.fromDate(baseDate, options.timezone);
41
+ }
42
+ /**
43
+ * Get the CalendarDate instance representing the date portion.
44
+ *
45
+ * @returns {CalendarDate} The CalendarDate object.
46
+ */
47
+ get calendarDate() {
48
+ return this.date;
49
+ }
50
+ /**
51
+ * Get the CalendarTime instance representing the time portion.
52
+ *
53
+ * @returns {CalendarTime} The CalendarTime object.
54
+ */
55
+ get calendarTime() {
56
+ return this.time;
57
+ }
58
+ /**
59
+ * Get a native Date object representing this CalendarDateTime.
60
+ *
61
+ * @returns {Date} The native Date object.
62
+ */
63
+ toDate() {
64
+ return this.date.toDate();
65
+ }
66
+ /**
67
+ * Set a new timezone and update CalendarDate/CalendarTime accordingly.
68
+ *
69
+ * @param {string} newTimezone - The new timezone to set.
70
+ */
71
+ setTimezone(newTimezone) {
72
+ this.timezone = newTimezone;
73
+ this.syncDateTime();
74
+ }
75
+ /**
76
+ * Sync CalendarDate and CalendarTime with the current originalDate and timezone.
77
+ */
78
+ syncDateTime() {
79
+ const normalized = this.convertDateToTimezone(this.originalDate);
80
+ this.date = new CalendarDate(normalized.getFullYear(), normalized.getMonth() + 1, normalized.getDate());
81
+ this.time = CalendarTime.fromDate(normalized);
82
+ }
83
+ /**
84
+ * Convert a Date to the specific timezone.
85
+ *
86
+ * @param {Date} date - The date to convert.
87
+ * @returns {Date} The date adjusted to the specific timezone.
88
+ */
89
+ convertDateToTimezone(date) {
90
+ if (this.timezone === getSystemTimezone()) {
91
+ return date;
92
+ }
93
+ try {
94
+ const formatter = new Intl.DateTimeFormat([], {
95
+ timeZone: this.timezone,
96
+ year: 'numeric',
97
+ month: '2-digit',
98
+ day: '2-digit',
99
+ hour: '2-digit',
100
+ minute: '2-digit',
101
+ second: '2-digit',
102
+ hour12: false,
103
+ });
104
+ const parts = formatter.formatToParts(date);
105
+ const yearPart = this.findDateTimeFormatPart(parts, 'year');
106
+ const monthPart = this.findDateTimeFormatPart(parts, 'month');
107
+ const dayPart = this.findDateTimeFormatPart(parts, 'day');
108
+ const hourPart = this.findDateTimeFormatPart(parts, 'hour');
109
+ const minutePart = this.findDateTimeFormatPart(parts, 'minute');
110
+ const secondPart = this.findDateTimeFormatPart(parts, 'second');
111
+ if (yearPart && monthPart && dayPart && hourPart && minutePart && secondPart) {
112
+ const year = parseInt(yearPart.value, 10);
113
+ const month = parseInt(monthPart.value, 10);
114
+ const day = parseInt(dayPart.value, 10);
115
+ const hour = parseInt(hourPart.value, 10);
116
+ const minute = parseInt(minutePart.value, 10);
117
+ const second = parseInt(secondPart.value, 10);
118
+ return new Date(year, month - 1, day, hour, minute, second);
119
+ }
120
+ }
121
+ catch (_a) {
122
+ LogUtility.warn('Invalid timezone:', this.timezone);
123
+ }
124
+ return date;
125
+ }
126
+ /**
127
+ * Find a specific part in the Intl.DateTimeFormatPart array.
128
+ *
129
+ * @param {Intl.DateTimeFormatPart[]} parts - The array of date/time format parts.
130
+ * @param {DateTimeFormatPartType} type - The type of part to find (e.g., 'year', 'month').
131
+ * @returns {Intl.DateTimeFormatPart | undefined} The matching part, if found.
132
+ */
133
+ findDateTimeFormatPart(parts, type) {
134
+ return parts.find((part) => part.type === type);
135
+ }
136
+ }
@@ -1,5 +1,6 @@
1
1
  import { VegaInternalTranslation } from '../translation';
2
- import { getCurrentDatePartsInTimezone, getSystemTimezone } from './utils';
2
+ import { CalendarDateTime } from './calendar-date-time';
3
+ import { getSystemTimezone } from './utils';
3
4
  /**
4
5
  * Calendar date class
5
6
  */
@@ -17,8 +18,7 @@ export class CalendarDate {
17
18
  * @returns {CalendarDate} - Return a CalendarDate object
18
19
  */
19
20
  static from(currentDate, timezone = getSystemTimezone()) {
20
- const { year, month, date } = getCurrentDatePartsInTimezone(timezone, currentDate);
21
- return new CalendarDate(year, month, date);
21
+ return CalendarDateTime.fromDate(currentDate, timezone).calendarDate;
22
22
  }
23
23
  /**
24
24
  * The year of the calendar date
@@ -60,7 +60,13 @@ export class CalendarDate {
60
60
  * @returns {boolean} - Return true if the calendar date is today. Otherwise, return false.
61
61
  */
62
62
  isToday(timezone = getSystemTimezone()) {
63
- const { year, month, date } = getCurrentDatePartsInTimezone(timezone, new Date());
63
+ if (timezone === getSystemTimezone()) {
64
+ const today = new Date();
65
+ return (today.getFullYear() === this.year &&
66
+ today.getMonth() + 1 === this.month &&
67
+ today.getDate() === this.date);
68
+ }
69
+ const { year, month, date } = CalendarDateTime.fromDate(new Date(), timezone).calendarDate;
64
70
  return year === this.year && month === this.month && date === this.date;
65
71
  }
66
72
  /**