@globalpayments/vega 2.60.0 → 2.62.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 (473) hide show
  1. package/dist/cjs/{app-globals-8a3536ba.js → app-globals-8f5fa42a.js} +23 -15
  2. package/dist/cjs/base-renderer-0a3b62b7.js +9 -0
  3. package/dist/cjs/{child-nodes-event-prevent-slimmer-5df43771.js → child-nodes-event-prevent-slimmer-4e96270e.js} +1 -1
  4. package/dist/cjs/{code-block-7d901dfc.js → code-block-eb66d852.js} +74 -23
  5. package/dist/cjs/{component-value-history-controller-slimmer.abstract-d61e5129.js → component-value-history-controller-slimmer.abstract-62cdf04c.js} +17 -183
  6. package/dist/cjs/{design-token-52f9da81.js → design-token-76bb47bd.js} +1 -1
  7. package/dist/cjs/{dom-node-subject-factory-bad99695.js → dom-node-subject-observer-factory-58e3c010.js} +45 -0
  8. package/dist/cjs/{content-state-2096aa5a.js → dto-renderer-manager-f3894490.js} +1648 -1502
  9. package/dist/cjs/{element-appender-slimmer-2a3e1e51.js → element-appender-slimmer-e8dac628.js} +8 -9
  10. package/dist/cjs/{event-emit-slimmer-efc70b94.js → event-emit-slimmer-428d8802.js} +3 -4
  11. package/dist/cjs/{form-field-controller-slimmer-772d1892.js → form-field-controller-slimmer-cc6e53a4.js} +5 -6
  12. package/dist/cjs/{image-annotation-action-8c1ecc99.js → image-annotation-action-a628ec9b.js} +24 -81
  13. package/dist/cjs/{index-10199ee8.js → index-5505e8dd.js} +4 -4
  14. package/dist/cjs/index.cjs.js +50 -24
  15. package/dist/cjs/{icon-manager-9072356d.js → internal-icon-manager-32f9ed63.js} +51 -0
  16. package/dist/cjs/{internal-vega-event-manager-83065493.js → internal-vega-event-manager-28b957c8.js} +73 -73
  17. package/dist/cjs/language-extension-20a1dba5.js +207 -0
  18. package/dist/cjs/loader.cjs.js +15 -13
  19. package/dist/cjs/{public-rules-c711fae3.js → public-rules-5d0f3a5f.js} +6 -6
  20. package/dist/cjs/range-cfc45f9e.js +178 -0
  21. package/dist/cjs/{responsive-format-facade-3ab3b18c.js → responsive-format-facade-7e933525.js} +4 -3
  22. package/dist/cjs/{rich-text-editor-required-rule-4d92437f.js → rich-text-editor-required-rule-72170c10.js} +2 -2
  23. package/dist/cjs/{string-input-formatter-slimmer-941eaec2.js → string-input-formatter-slimmer-f6c7a255.js} +5 -5
  24. package/dist/cjs/{style-formatter-dcb443fb.js → style-formatter-702df81e.js} +1 -1
  25. package/dist/cjs/{sub-state-notify-slimmer-943eb7cc.js → sub-state-notify-slimmer-bb64fcfc.js} +5 -5
  26. package/dist/cjs/{sub-state-observer-slimmer-0788232a.js → sub-state-observer-slimmer-84175d61.js} +5 -5
  27. package/dist/cjs/{vega-skeleton-loader-controller-b1971f43.js → token-extension-23ccff1d.js} +679 -3
  28. package/dist/cjs/vega-accordion.cjs.entry.js +15 -16
  29. package/dist/cjs/vega-app-header-button.cjs.entry.js +20 -21
  30. package/dist/cjs/vega-banner.cjs.entry.js +7 -9
  31. package/dist/cjs/vega-box.cjs.entry.js +13 -12
  32. package/dist/cjs/vega-brand-logo.cjs.entry.js +1 -2
  33. package/dist/cjs/vega-breadcrumb.cjs.entry.js +8 -9
  34. package/dist/cjs/vega-button-circle.cjs.entry.js +16 -16
  35. package/dist/cjs/vega-button-group_2.cjs.entry.js +12 -13
  36. package/dist/cjs/vega-button-link.cjs.entry.js +7 -8
  37. package/dist/cjs/vega-button.cjs.entry.js +15 -15
  38. package/dist/cjs/vega-calendar_4.cjs.entry.js +204 -102
  39. package/dist/cjs/vega-card.cjs.entry.js +12 -11
  40. package/dist/cjs/vega-carousel.cjs.entry.js +13 -13
  41. package/dist/cjs/vega-checkbox_2.cjs.entry.js +13 -14
  42. package/dist/cjs/vega-chip.cjs.entry.js +17 -17
  43. package/dist/cjs/vega-code-block.cjs.entry.js +17 -18
  44. package/dist/cjs/vega-color-picker.cjs.entry.js +7 -8
  45. package/dist/cjs/vega-combo-box.cjs.entry.js +15 -16
  46. package/dist/cjs/vega-date-picker_2.cjs.entry.js +350 -143
  47. package/dist/cjs/vega-dialog_2.cjs.entry.js +27 -27
  48. package/dist/cjs/vega-divider.cjs.entry.js +12 -11
  49. package/dist/cjs/vega-dropdown_5.cjs.entry.js +33 -33
  50. package/dist/cjs/vega-env-manager-23b8b23c.js +2 -2
  51. package/dist/cjs/vega-field-label.cjs.entry.js +6 -7
  52. package/dist/cjs/vega-file-uploader.cjs.entry.js +16 -18
  53. package/dist/cjs/vega-flag-icon.cjs.entry.js +13 -13
  54. package/dist/cjs/vega-flex.cjs.entry.js +13 -12
  55. package/dist/cjs/vega-font.cjs.entry.js +12 -11
  56. package/dist/cjs/vega-form.cjs.entry.js +14 -15
  57. package/dist/cjs/vega-grid.cjs.entry.js +12 -11
  58. package/dist/cjs/vega-icon.cjs.entry.js +15 -14
  59. package/dist/cjs/vega-image-uploader.cjs.entry.js +19 -19
  60. package/dist/cjs/vega-input-credit-card.cjs.entry.js +15 -17
  61. package/dist/cjs/vega-input-numeric.cjs.entry.js +11 -12
  62. package/dist/cjs/vega-input-phone-number.cjs.entry.js +21 -22
  63. package/dist/cjs/vega-input-range.cjs.entry.js +12 -13
  64. package/dist/cjs/vega-input-select.cjs.entry.js +28 -29
  65. package/dist/cjs/vega-input.cjs.entry.js +14 -15
  66. package/dist/cjs/{vega-internal-event-id-ae6e2c13.js → vega-internal-event-id-9647aaf8.js} +2 -0
  67. package/dist/cjs/vega-item-toggle.cjs.entry.js +5 -6
  68. package/dist/cjs/vega-left-nav_5.cjs.entry.js +34 -35
  69. package/dist/cjs/vega-loader-wrapper_2.cjs.entry.js +13 -12
  70. package/dist/cjs/vega-page-notification_2.cjs.entry.js +2 -3
  71. package/dist/cjs/vega-pagination-page-selector-mobile.cjs.entry.js +9 -10
  72. package/dist/cjs/vega-pagination-page-size-selector-mobile.cjs.entry.js +4 -5
  73. package/dist/cjs/vega-pagination.cjs.entry.js +19 -19
  74. package/dist/cjs/vega-popover_2.cjs.entry.js +19 -19
  75. package/dist/cjs/vega-progress-tracker.cjs.entry.js +5 -6
  76. package/dist/cjs/vega-radio_2.cjs.entry.js +14 -15
  77. package/dist/cjs/vega-rich-text-content.cjs.entry.js +54 -49
  78. package/dist/cjs/vega-rich-text-editor_4.cjs.entry.js +388 -262
  79. package/dist/cjs/vega-segment-control.cjs.entry.js +5 -6
  80. package/dist/cjs/vega-selection-chip_2.cjs.entry.js +21 -21
  81. package/dist/cjs/vega-selection-tile_2.cjs.entry.js +14 -15
  82. package/dist/cjs/vega-sidenav_3.cjs.entry.js +25 -26
  83. package/dist/cjs/vega-signature-capture.cjs.entry.js +16 -17
  84. package/dist/cjs/vega-stepper.cjs.entry.js +13 -14
  85. package/dist/cjs/vega-tab-group_2.cjs.entry.js +8 -9
  86. package/dist/cjs/vega-table_8.cjs.entry.js +140 -122
  87. package/dist/cjs/vega-textarea.cjs.entry.js +10 -11
  88. package/dist/cjs/vega-time-picker_2.cjs.entry.js +25 -25
  89. package/dist/cjs/vega-toggle-switch.cjs.entry.js +8 -9
  90. package/dist/cjs/vega-tooltip_2.cjs.entry.js +12 -12
  91. package/dist/cjs/vega.cjs.js +15 -13
  92. package/dist/collection/components/vega-calendar/slimmers/common/renderers/vega-calendar-date-block-renderer.abstract.js +82 -0
  93. package/dist/collection/components/vega-calendar/slimmers/day-view/renderers/vega-calendar-view-with-time-renderer.js +26 -21
  94. package/dist/collection/components/vega-calendar/slimmers/month-view/renderers/vega-calendar-month-view-renderer.js +47 -38
  95. package/dist/collection/components/vega-calendar/vega-calendar.js +83 -3
  96. package/dist/collection/components/vega-date-picker/slimmers/controllers/vega-date-picker-month-year-change-event-controller.js +139 -0
  97. package/dist/collection/components/vega-date-picker/slimmers/renderers/vega-date-picker-calendar-month-year-dropdown-renderer.js +21 -1
  98. package/dist/collection/components/vega-date-picker/slimmers/renderers/vega-date-picker-calendar-renderer.js +48 -0
  99. package/dist/collection/components/vega-date-picker/vega-date-picker.js +59 -1
  100. package/dist/collection/components/vega-input/vega-input.css +4 -0
  101. package/dist/collection/components/vega-rich-text-content/vega-rich-text-content.js +31 -0
  102. package/dist/collection/components/vega-rich-text-editor/constants/constant.js +10 -0
  103. package/dist/collection/components/vega-rich-text-editor/dto/action-handle-strategies/action-handle-strategy-registry.js +11 -0
  104. package/dist/collection/components/vega-rich-text-editor/dto/action-handle-strategies/apply-annotation-strategies/node-split-text-strategy.js +6 -3
  105. package/dist/collection/components/vega-rich-text-editor/dto/action-handle-strategies/modify-content-strategies/block-delete-text-or-decorator-node-strategy.js +12 -6
  106. package/dist/collection/components/vega-rich-text-editor/dto/action-handle-strategies/modify-content-strategies/code-block-remove-self-strategy.js +2 -2
  107. package/dist/collection/components/vega-rich-text-editor/dto/action-handle-strategies/modify-content-strategies/insert-node-to-nearest-root-strategy.js +57 -0
  108. package/dist/collection/components/vega-rich-text-editor/dto/action-handle-strategies/modify-content-strategies/update-cursor-position-strategy.js +2 -1
  109. package/dist/collection/components/vega-rich-text-editor/dto/actions/insert-node-to-nearest-root-action.js +14 -0
  110. package/dist/collection/components/vega-rich-text-editor/dto/actions/modify-content-action.abstract.js +1 -0
  111. package/dist/collection/components/vega-rich-text-editor/dto/actions/update-cursor-position-action.js +5 -2
  112. package/dist/collection/components/vega-rich-text-editor/dto/content-state.js +12 -0
  113. package/dist/collection/components/vega-rich-text-editor/dto/nodes/text-node.js +36 -10
  114. package/dist/collection/components/vega-rich-text-editor/dto/renderers/blocks/link-wrapper-renderer.js +10 -4
  115. package/dist/collection/components/vega-rich-text-editor/extensions/base-toolbar-button-renderer.js +145 -0
  116. package/dist/collection/components/vega-rich-text-editor/extensions/extension.abstract.js +97 -0
  117. package/dist/collection/components/vega-rich-text-editor/extensions/languages/language-extension.js +113 -0
  118. package/dist/collection/components/vega-rich-text-editor/extensions/languages/language-toolbar-button-renderer.js +90 -0
  119. package/dist/collection/components/vega-rich-text-editor/extensions/tokens/insert-token-node-action.js +16 -0
  120. package/dist/collection/components/vega-rich-text-editor/extensions/tokens/insert-token-node-strategy.js +20 -0
  121. package/dist/collection/components/vega-rich-text-editor/extensions/tokens/span-to-token-node-strategy.js +60 -0
  122. package/dist/collection/components/vega-rich-text-editor/extensions/tokens/token-extension.js +38 -0
  123. package/dist/collection/components/vega-rich-text-editor/extensions/tokens/token-node-renderer.js +67 -0
  124. package/dist/collection/components/vega-rich-text-editor/extensions/tokens/token-node.js +55 -0
  125. package/dist/collection/components/vega-rich-text-editor/extensions/tokens/token-toolbar-button-renderer.js +88 -0
  126. package/dist/collection/components/vega-rich-text-editor/public-api.js +38 -0
  127. package/dist/collection/components/vega-rich-text-editor/slimmers/controllers/extension-controller.js +97 -0
  128. package/dist/collection/components/vega-rich-text-editor/slimmers/controllers/focus-controller.js +8 -6
  129. package/dist/collection/components/vega-rich-text-editor/slimmers/controllers/helper/element-to-dto-strategy/element-to-dto-strategy.abstract.js +12 -0
  130. package/dist/collection/components/vega-rich-text-editor/slimmers/controllers/selection-controller.js +9 -3
  131. package/dist/collection/components/vega-rich-text-editor/slimmers/renderers/toolbar-renderer.js +43 -18
  132. package/dist/collection/components/vega-rich-text-editor/slimmers/renderers/tools/link-toolbar-button-slimmer.js +3 -1
  133. package/dist/collection/components/vega-rich-text-editor/slimmers/renderers/tools/toolbar-button-slimmer.abstract.js +6 -6
  134. package/dist/collection/components/vega-rich-text-editor/slimmers/renderers/tools/visual-mode-toolbar-button-slimmer.abstract.js +9 -9
  135. package/dist/collection/components/vega-rich-text-editor/test/dto/content-state.test.js +41 -0
  136. package/dist/collection/components/vega-rich-text-editor/vega-rich-text-editor.js +44 -11
  137. package/dist/collection/components/vega-table/slimmers/controllers/vega-table-children-controller.js +31 -16
  138. package/dist/collection/components/vega-table/slimmers/renderers/vega-table-body-renderer.js +8 -4
  139. package/dist/collection/components/vega-table/slimmers/renderers/vega-table-row-renderer.js +4 -1
  140. package/dist/collection/components/vega-table/vega-table-cell/slimmers/controllers/vega-table-cell-state-controller.js +0 -16
  141. package/dist/collection/components/vega-table/vega-table-cell/slimmers/controllers/{vega-table-row-state-controller.js → vega-table-row-state-subscriber.js} +15 -14
  142. package/dist/collection/components/vega-table/vega-table-cell/vega-table-cell.js +3 -3
  143. package/dist/collection/components/vega-table/vega-table-expand-row/slimmers/renderers/vega-table-expand-row-renderer.js +4 -0
  144. package/dist/collection/components/vega-table/vega-table-expand-row/vega-table-expand-row.css +1 -1
  145. package/dist/collection/components/vega-table/vega-table-expand-row/vega-table-expand-row.js +20 -0
  146. package/dist/collection/components/vega-table/vega-table-row/slimmers/controllers/vega-table-row-state-controller.js +0 -7
  147. package/dist/collection/components/vega-table/vega-table-row/vega-table-row.css +1 -1
  148. package/dist/collection/components/vega-table/vega-table-row/vega-table-row.js +61 -1
  149. package/dist/collection/constants/ui.js +2 -0
  150. package/dist/collection/global/scripts/before-vega-load.js +9 -0
  151. package/dist/collection/helpers/code-format/test/code-formatter.test.js +1 -1
  152. package/dist/collection/helpers/event-manager/event-id/component-event-id-map.js +3 -3
  153. package/dist/collection/helpers/event-manager/event-id/vega-event-id.js +2 -0
  154. package/dist/collection/helpers/event-manager/event-id/vega-internal-event-id.js +1 -0
  155. package/dist/collection/helpers/public-api.js +1 -1
  156. package/dist/collection/helpers/rte-manager/dto-action-strategy-manager.js +2 -0
  157. package/dist/collection/utils/spec-utils.js +28 -0
  158. package/dist/esm/{app-globals-c7699395.js → app-globals-aaff0b25.js} +13 -5
  159. package/dist/esm/base-renderer-101f6d04.js +7 -0
  160. package/dist/esm/{child-nodes-event-prevent-slimmer-6b5b31f5.js → child-nodes-event-prevent-slimmer-7fe3dc57.js} +1 -1
  161. package/dist/esm/{code-block-055cae13.js → code-block-68300b47.js} +68 -18
  162. package/dist/esm/{component-value-history-controller-slimmer.abstract-7a64c05a.js → component-value-history-controller-slimmer.abstract-ac2f1bfd.js} +14 -180
  163. package/dist/esm/{design-token-e1821e4a.js → design-token-1a36307e.js} +1 -1
  164. package/dist/esm/{dom-node-subject-factory-202655e7.js → dom-node-subject-observer-factory-c7bc3035.js} +43 -1
  165. package/dist/esm/{content-state-460f6254.js → dto-renderer-manager-af66bbd9.js} +1644 -1503
  166. package/dist/esm/{element-appender-slimmer-4260c020.js → element-appender-slimmer-fe68ec2d.js} +4 -5
  167. package/dist/esm/{event-emit-slimmer-40973ec2.js → event-emit-slimmer-3922d816.js} +2 -3
  168. package/dist/esm/{form-field-controller-slimmer-47820eaa.js → form-field-controller-slimmer-f7e8845b.js} +3 -4
  169. package/dist/esm/{image-annotation-action-95cc9118.js → image-annotation-action-f61c2693.js} +20 -76
  170. package/dist/esm/{index-18a340fb.js → index-7fe93427.js} +2 -2
  171. package/dist/esm/index.js +14 -11
  172. package/dist/esm/{icon-manager-2ee1c619.js → internal-icon-manager-f0486245.js} +51 -1
  173. package/dist/esm/{internal-vega-event-manager-526f8ed1.js → internal-vega-event-manager-cb06e987.js} +3 -3
  174. package/dist/esm/language-extension-1ada2a9d.js +204 -0
  175. package/dist/esm/loader.js +15 -13
  176. package/dist/esm/{public-rules-71e1883d.js → public-rules-9f62069a.js} +6 -6
  177. package/dist/esm/range-c2eeb794.js +176 -0
  178. package/dist/esm/{responsive-format-facade-dbeffcd6.js → responsive-format-facade-5711c77d.js} +4 -3
  179. package/dist/esm/{rich-text-editor-required-rule-6cfdcaaf.js → rich-text-editor-required-rule-de738309.js} +1 -1
  180. package/dist/esm/{string-input-formatter-slimmer-6d99bb4f.js → string-input-formatter-slimmer-69117deb.js} +3 -3
  181. package/dist/esm/{style-formatter-41ca4df2.js → style-formatter-2479dc61.js} +1 -1
  182. package/dist/esm/{sub-state-notify-slimmer-b3524c09.js → sub-state-notify-slimmer-4252a90e.js} +2 -2
  183. package/dist/esm/{sub-state-observer-slimmer-c823d69c.js → sub-state-observer-slimmer-baa8853a.js} +2 -2
  184. package/dist/esm/{vega-skeleton-loader-controller-38864fcd.js → token-extension-6fc5e1f5.js} +672 -4
  185. package/dist/esm/vega-accordion.entry.js +13 -14
  186. package/dist/esm/vega-app-header-button.entry.js +14 -15
  187. package/dist/esm/vega-banner.entry.js +4 -6
  188. package/dist/esm/vega-box.entry.js +13 -12
  189. package/dist/esm/vega-brand-logo.entry.js +1 -2
  190. package/dist/esm/vega-breadcrumb.entry.js +4 -5
  191. package/dist/esm/vega-button-circle.entry.js +14 -14
  192. package/dist/esm/vega-button-group_2.entry.js +7 -8
  193. package/dist/esm/vega-button-link.entry.js +5 -6
  194. package/dist/esm/vega-button.entry.js +13 -13
  195. package/dist/esm/vega-calendar_4.entry.js +190 -88
  196. package/dist/esm/vega-card.entry.js +12 -11
  197. package/dist/esm/vega-carousel.entry.js +12 -12
  198. package/dist/esm/vega-checkbox_2.entry.js +7 -8
  199. package/dist/esm/vega-chip.entry.js +14 -14
  200. package/dist/esm/vega-code-block.entry.js +9 -10
  201. package/dist/esm/vega-color-picker.entry.js +6 -7
  202. package/dist/esm/vega-combo-box.entry.js +7 -8
  203. package/dist/esm/vega-date-picker_2.entry.js +341 -134
  204. package/dist/esm/vega-dialog_2.entry.js +15 -15
  205. package/dist/esm/vega-divider.entry.js +12 -11
  206. package/dist/esm/vega-dropdown_5.entry.js +16 -16
  207. package/dist/esm/vega-env-manager-8f8dc473.js +2 -2
  208. package/dist/esm/vega-field-label.entry.js +4 -5
  209. package/dist/esm/vega-file-uploader.entry.js +7 -9
  210. package/dist/esm/vega-flag-icon.entry.js +12 -12
  211. package/dist/esm/vega-flex.entry.js +13 -12
  212. package/dist/esm/vega-font.entry.js +12 -11
  213. package/dist/esm/vega-form.entry.js +8 -9
  214. package/dist/esm/vega-grid.entry.js +12 -11
  215. package/dist/esm/vega-icon.entry.js +12 -11
  216. package/dist/esm/vega-image-uploader.entry.js +13 -13
  217. package/dist/esm/vega-input-credit-card.entry.js +8 -10
  218. package/dist/esm/vega-input-numeric.entry.js +8 -9
  219. package/dist/esm/vega-input-phone-number.entry.js +13 -14
  220. package/dist/esm/vega-input-range.entry.js +8 -9
  221. package/dist/esm/vega-input-select.entry.js +15 -16
  222. package/dist/esm/vega-input.entry.js +9 -10
  223. package/dist/esm/{vega-internal-event-id-b7c865de.js → vega-internal-event-id-5a143cd2.js} +2 -1
  224. package/dist/esm/vega-item-toggle.entry.js +3 -4
  225. package/dist/esm/vega-left-nav_5.entry.js +15 -16
  226. package/dist/esm/vega-loader-wrapper_2.entry.js +11 -10
  227. package/dist/esm/vega-page-notification_2.entry.js +1 -2
  228. package/dist/esm/vega-pagination-page-selector-mobile.entry.js +4 -5
  229. package/dist/esm/vega-pagination-page-size-selector-mobile.entry.js +2 -3
  230. package/dist/esm/vega-pagination.entry.js +11 -11
  231. package/dist/esm/vega-popover_2.entry.js +15 -15
  232. package/dist/esm/vega-progress-tracker.entry.js +3 -4
  233. package/dist/esm/vega-radio_2.entry.js +7 -8
  234. package/dist/esm/vega-rich-text-content.entry.js +25 -20
  235. package/dist/esm/vega-rich-text-editor_4.entry.js +343 -217
  236. package/dist/esm/vega-segment-control.entry.js +4 -5
  237. package/dist/esm/vega-selection-chip_2.entry.js +16 -16
  238. package/dist/esm/vega-selection-tile_2.entry.js +8 -9
  239. package/dist/esm/vega-sidenav_3.entry.js +17 -18
  240. package/dist/esm/vega-signature-capture.entry.js +14 -15
  241. package/dist/esm/vega-stepper.entry.js +7 -8
  242. package/dist/esm/vega-tab-group_2.entry.js +4 -5
  243. package/dist/esm/vega-table_8.entry.js +94 -76
  244. package/dist/esm/vega-textarea.entry.js +7 -8
  245. package/dist/esm/vega-time-picker_2.entry.js +15 -15
  246. package/dist/esm/vega-toggle-switch.entry.js +7 -8
  247. package/dist/esm/vega-tooltip_2.entry.js +12 -12
  248. package/dist/esm/vega.js +15 -13
  249. package/dist/types/components/vega-calendar/slimmers/common/renderers/vega-calendar-date-block-renderer.abstract.d.ts +58 -0
  250. package/dist/types/components/vega-calendar/slimmers/day-view/renderers/vega-calendar-view-with-time-renderer.d.ts +10 -9
  251. package/dist/types/components/vega-calendar/slimmers/month-view/renderers/vega-calendar-month-view-renderer.d.ts +14 -8
  252. package/dist/types/components/vega-calendar/vega-calendar.d.ts +22 -2
  253. package/dist/types/components/vega-date-picker/slimmers/controllers/vega-date-picker-month-year-change-event-controller.d.ts +46 -0
  254. package/dist/types/components/vega-date-picker/slimmers/renderers/vega-date-picker-calendar-month-year-dropdown-renderer.d.ts +12 -0
  255. package/dist/types/components/vega-date-picker/slimmers/renderers/vega-date-picker-calendar-renderer.d.ts +16 -0
  256. package/dist/types/components/vega-date-picker/types.d.ts +7 -0
  257. package/dist/types/components/vega-date-picker/vega-date-picker.d.ts +17 -1
  258. package/dist/types/components/vega-rich-text-content/vega-rich-text-content.d.ts +8 -0
  259. package/dist/types/components/vega-rich-text-editor/constants/constant.d.ts +2 -1
  260. package/dist/types/components/vega-rich-text-editor/dto/action-handle-strategies/action-handle-strategy-registry.d.ts +8 -0
  261. package/dist/types/components/vega-rich-text-editor/dto/action-handle-strategies/modify-content-strategies/insert-node-to-nearest-root-strategy.d.ts +18 -0
  262. package/dist/types/components/vega-rich-text-editor/dto/actions/insert-node-to-nearest-root-action.d.ts +14 -0
  263. package/dist/types/components/vega-rich-text-editor/dto/actions/modify-content-action.abstract.d.ts +2 -1
  264. package/dist/types/components/vega-rich-text-editor/dto/actions/update-cursor-position-action.d.ts +4 -2
  265. package/dist/types/components/vega-rich-text-editor/dto/blocks/block.abstract.d.ts +2 -3
  266. package/dist/types/components/vega-rich-text-editor/dto/content-state.d.ts +6 -0
  267. package/dist/types/components/vega-rich-text-editor/dto/nodes/text-node.d.ts +11 -1
  268. package/dist/types/components/vega-rich-text-editor/dto/renderers/blocks/link-wrapper-renderer.d.ts +3 -3
  269. package/dist/types/components/vega-rich-text-editor/extensions/base-toolbar-button-renderer.d.ts +95 -2
  270. package/dist/types/components/vega-rich-text-editor/extensions/extension.abstract.d.ts +82 -0
  271. package/dist/types/components/vega-rich-text-editor/extensions/languages/language-extension.d.ts +50 -0
  272. package/dist/types/components/vega-rich-text-editor/extensions/languages/language-toolbar-button-renderer.d.ts +54 -0
  273. package/dist/types/components/vega-rich-text-editor/extensions/tokens/insert-token-node-action.d.ts +16 -0
  274. package/dist/types/components/vega-rich-text-editor/extensions/tokens/insert-token-node-strategy.d.ts +12 -0
  275. package/dist/types/components/vega-rich-text-editor/extensions/tokens/span-to-token-node-strategy.d.ts +24 -0
  276. package/dist/types/components/vega-rich-text-editor/extensions/tokens/token-extension.d.ts +14 -0
  277. package/dist/types/components/vega-rich-text-editor/extensions/tokens/token-node-renderer.d.ts +38 -0
  278. package/dist/types/components/vega-rich-text-editor/extensions/tokens/token-node.d.ts +39 -0
  279. package/dist/types/components/vega-rich-text-editor/extensions/tokens/token-toolbar-button-renderer.d.ts +47 -0
  280. package/dist/types/components/vega-rich-text-editor/interface.d.ts +52 -1
  281. package/dist/types/components/vega-rich-text-editor/public-api.d.ts +29 -0
  282. package/dist/types/components/vega-rich-text-editor/slimmers/controllers/extension-controller.d.ts +44 -0
  283. package/dist/types/components/vega-rich-text-editor/slimmers/controllers/helper/element-to-dto-strategy/element-to-dto-strategy.abstract.d.ts +10 -1
  284. package/dist/types/components/vega-rich-text-editor/slimmers/renderers/toolbar-renderer.d.ts +6 -0
  285. package/dist/types/components/vega-rich-text-editor/slimmers/renderers/tools/toolbar-button-slimmer.abstract.d.ts +4 -4
  286. package/dist/types/components/vega-rich-text-editor/slimmers/renderers/tools/visual-mode-toolbar-button-slimmer.abstract.d.ts +7 -7
  287. package/dist/types/components/vega-rich-text-editor/vega-rich-text-editor.d.ts +10 -0
  288. package/dist/types/components/vega-table/interface.d.ts +1 -0
  289. package/dist/types/components/vega-table/slimmers/controllers/vega-table-children-controller.d.ts +13 -1
  290. package/dist/types/components/vega-table/slimmers/renderers/vega-table-body-renderer.d.ts +1 -0
  291. package/dist/types/components/vega-table/slimmers/renderers/vega-table-row-renderer.d.ts +1 -0
  292. package/dist/types/components/vega-table/vega-table-cell/slimmers/controllers/vega-table-cell-state-controller.d.ts +0 -1
  293. package/dist/types/components/vega-table/vega-table-cell/slimmers/controllers/{vega-table-row-state-controller.d.ts → vega-table-row-state-subscriber.d.ts} +3 -6
  294. package/dist/types/components/vega-table/vega-table-cell/vega-table-cell.d.ts +2 -2
  295. package/dist/types/components/vega-table/vega-table-expand-row/slimmers/renderers/vega-table-expand-row-renderer.d.ts +1 -0
  296. package/dist/types/components/vega-table/vega-table-expand-row/vega-table-expand-row.d.ts +6 -0
  297. package/dist/types/components/vega-table/vega-table-row/slimmers/controllers/vega-table-row-state-controller.d.ts +0 -1
  298. package/dist/types/components/vega-table/vega-table-row/vega-table-row.d.ts +16 -4
  299. package/dist/types/components.d.ts +86 -3
  300. package/dist/types/constants/ui.d.ts +1 -1
  301. package/dist/types/helpers/event-manager/event-id/vega-event-id.d.ts +2 -0
  302. package/dist/types/helpers/event-manager/event-id/vega-internal-event-id.d.ts +1 -0
  303. package/dist/types/helpers/public-api.d.ts +1 -1
  304. package/dist/types/types/components.type.d.ts +2 -0
  305. package/dist/types/types/public-api.d.ts +11 -0
  306. package/dist/types/utils/spec-utils.d.ts +7 -0
  307. package/dist/vega/index.esm.js +1 -1
  308. package/dist/vega/p-03cc47b7.entry.js +1 -0
  309. package/dist/vega/p-07836d27.entry.js +1 -0
  310. package/dist/vega/p-079f5d94.entry.js +1 -0
  311. package/dist/vega/p-09cb98f3.entry.js +1 -0
  312. package/dist/vega/{p-62898294.entry.js → p-0b91bb73.entry.js} +1 -1
  313. package/dist/vega/{p-b5bef48a.js → p-0e954b9b.js} +1 -1
  314. package/dist/vega/p-15a78afd.entry.js +1 -0
  315. package/dist/vega/p-16075b30.entry.js +1 -0
  316. package/dist/vega/{p-c883bce1.entry.js → p-1c08077c.entry.js} +1 -1
  317. package/dist/vega/{p-bbb96a13.js → p-1da54ff3.js} +1 -1
  318. package/dist/vega/p-20a180e4.js +1 -0
  319. package/dist/vega/p-25ddb070.entry.js +1 -0
  320. package/dist/vega/p-2788afe7.entry.js +1 -0
  321. package/dist/vega/p-2a1b3108.entry.js +1 -0
  322. package/dist/vega/p-2ee4def0.js +1 -0
  323. package/dist/vega/p-2f88ba36.entry.js +1 -0
  324. package/dist/vega/p-327cd6ec.entry.js +1 -0
  325. package/dist/vega/p-39c185a5.js +1 -0
  326. package/dist/vega/p-3b1bedaf.entry.js +1 -0
  327. package/dist/vega/p-3c96bbe1.entry.js +1 -0
  328. package/dist/vega/p-3cdbee7e.js +1 -0
  329. package/dist/vega/p-3d0d8a21.entry.js +1 -0
  330. package/dist/vega/p-3d53858c.entry.js +1 -0
  331. package/dist/vega/{p-d35243c8.entry.js → p-3f3bbaaa.entry.js} +2 -2
  332. package/dist/vega/p-42c364e0.entry.js +1 -0
  333. package/dist/vega/p-4f56a427.entry.js +1 -0
  334. package/dist/vega/p-4f5a2b0c.entry.js +1 -0
  335. package/dist/vega/p-51d40b0d.entry.js +1 -0
  336. package/dist/vega/p-5420c1d4.entry.js +1 -0
  337. package/dist/vega/p-589b7ea3.entry.js +1 -0
  338. package/dist/vega/p-5d3c6a06.entry.js +1 -0
  339. package/dist/vega/p-5dec47da.entry.js +1 -0
  340. package/dist/vega/p-5f377954.js +1 -1
  341. package/dist/vega/p-6244b0ad.entry.js +1 -0
  342. package/dist/vega/p-63212cc1.js +1 -0
  343. package/dist/vega/p-6585cfd5.entry.js +1 -0
  344. package/dist/vega/p-6ba27010.js +1 -0
  345. package/dist/vega/{p-200ba358.js → p-6caa6bb2.js} +1 -1
  346. package/dist/vega/p-74ac2a48.js +1 -0
  347. package/dist/vega/p-76c7538a.entry.js +1 -0
  348. package/dist/vega/p-7d8eaca9.entry.js +1 -0
  349. package/dist/vega/p-7da6e7bd.js +1 -0
  350. package/dist/vega/p-81765b4b.entry.js +1 -0
  351. package/dist/vega/p-81fbf18f.entry.js +1 -0
  352. package/dist/vega/p-8682ee0a.entry.js +1 -0
  353. package/dist/vega/p-893d5dfa.js +1 -0
  354. package/dist/vega/p-8a484812.entry.js +1 -0
  355. package/dist/vega/p-8a6b820a.entry.js +1 -0
  356. package/dist/vega/p-8c9ea6f4.js +1 -0
  357. package/dist/vega/p-8e58d6cb.entry.js +1 -0
  358. package/dist/vega/p-8e812dca.entry.js +1 -0
  359. package/dist/vega/p-8f056ac2.js +1 -0
  360. package/dist/vega/{p-b56e2c89.entry.js → p-9125ba84.entry.js} +1 -1
  361. package/dist/vega/p-92469fa1.entry.js +1 -0
  362. package/dist/vega/p-9ab3bb6f.entry.js +1 -0
  363. package/dist/vega/p-9ca0bdcc.js +1 -0
  364. package/dist/vega/p-a1362aa4.entry.js +1 -0
  365. package/dist/vega/p-a61e4bba.entry.js +1 -0
  366. package/dist/vega/p-a646b66d.js +1 -0
  367. package/dist/vega/p-a7b5f497.js +1 -0
  368. package/dist/vega/p-ac5c5221.entry.js +1 -0
  369. package/dist/vega/p-b1a5ff74.entry.js +1 -0
  370. package/dist/vega/p-b32f7aac.entry.js +1 -0
  371. package/dist/vega/{p-dd6a4ea6.entry.js → p-baafe7d9.entry.js} +1 -1
  372. package/dist/vega/{p-68eae19d.entry.js → p-bb51e020.entry.js} +1 -1
  373. package/dist/vega/{p-9773c913.js → p-bb61f015.js} +1 -1
  374. package/dist/vega/p-bc0ae89a.entry.js +1 -0
  375. package/dist/vega/p-bd39af8a.entry.js +1 -0
  376. package/dist/vega/{p-1bd516c5.js → p-bdd9ef3b.js} +1 -1
  377. package/dist/vega/{p-e4fbd2b7.entry.js → p-c167fa41.entry.js} +1 -1
  378. package/dist/vega/{p-0dcec258.js → p-c2377afa.js} +1 -1
  379. package/dist/vega/p-c671f57e.js +1 -0
  380. package/dist/vega/p-c6a354b1.js +1 -0
  381. package/dist/vega/p-c7726252.js +1 -0
  382. package/dist/vega/p-ce1766fa.js +1 -0
  383. package/dist/vega/p-cfb2af9c.entry.js +1 -0
  384. package/dist/vega/p-d2790023.entry.js +13 -0
  385. package/dist/vega/p-d3bbfb1b.js +1 -0
  386. package/dist/vega/{p-f1a2658b.entry.js → p-d9617358.entry.js} +1 -1
  387. package/dist/vega/p-d982babe.entry.js +1 -0
  388. package/dist/vega/p-dcae53cf.entry.js +1 -0
  389. package/dist/vega/p-ddfad815.entry.js +1 -0
  390. package/dist/vega/p-e00ed9bd.entry.js +1 -0
  391. package/dist/vega/p-e365aba9.entry.js +1 -0
  392. package/dist/vega/p-ebfc5739.entry.js +1 -0
  393. package/dist/vega/p-f1436035.js +1 -0
  394. package/dist/vega/p-fe2cb3a1.entry.js +1 -0
  395. package/dist/vega/p-ff3a8907.entry.js +1 -0
  396. package/dist/vega/vega.esm.js +1 -1
  397. package/package.json +1 -1
  398. package/dist/cjs/dom-node-subject-observer-factory-df6e6df0.js +0 -45
  399. package/dist/cjs/internal-icon-manager-f8677abb.js +0 -55
  400. package/dist/esm/dom-node-subject-observer-factory-999e21e3.js +0 -43
  401. package/dist/esm/internal-icon-manager-7eac52c8.js +0 -53
  402. package/dist/vega/p-09ddae74.entry.js +0 -1
  403. package/dist/vega/p-0c247128.entry.js +0 -1
  404. package/dist/vega/p-0cd89fb6.js +0 -1
  405. package/dist/vega/p-10063072.entry.js +0 -1
  406. package/dist/vega/p-1152850b.entry.js +0 -1
  407. package/dist/vega/p-165054fb.entry.js +0 -1
  408. package/dist/vega/p-1652cfc6.entry.js +0 -1
  409. package/dist/vega/p-16c6c22f.entry.js +0 -1
  410. package/dist/vega/p-17d517c8.entry.js +0 -1
  411. package/dist/vega/p-1852ca80.entry.js +0 -1
  412. package/dist/vega/p-1b222c94.entry.js +0 -1
  413. package/dist/vega/p-1b91a882.js +0 -1
  414. package/dist/vega/p-1cabeb33.js +0 -1
  415. package/dist/vega/p-1f8c46c4.entry.js +0 -1
  416. package/dist/vega/p-1fdf0f74.entry.js +0 -1
  417. package/dist/vega/p-20b8b626.entry.js +0 -1
  418. package/dist/vega/p-21873037.js +0 -1
  419. package/dist/vega/p-27b5f69c.entry.js +0 -1
  420. package/dist/vega/p-2e4bc8aa.entry.js +0 -1
  421. package/dist/vega/p-334e31a3.entry.js +0 -1
  422. package/dist/vega/p-394dfa02.entry.js +0 -1
  423. package/dist/vega/p-433ea113.entry.js +0 -1
  424. package/dist/vega/p-446d0317.entry.js +0 -1
  425. package/dist/vega/p-4474bc63.js +0 -1
  426. package/dist/vega/p-460bbd22.entry.js +0 -1
  427. package/dist/vega/p-46973cf9.entry.js +0 -1
  428. package/dist/vega/p-4a368e1e.js +0 -1
  429. package/dist/vega/p-4b7edf72.entry.js +0 -1
  430. package/dist/vega/p-4fc18f2f.entry.js +0 -1
  431. package/dist/vega/p-52c1dde9.entry.js +0 -1
  432. package/dist/vega/p-594ecdab.js +0 -1
  433. package/dist/vega/p-606d1f7c.entry.js +0 -1
  434. package/dist/vega/p-61d1f3cb.entry.js +0 -1
  435. package/dist/vega/p-636f7b17.entry.js +0 -1
  436. package/dist/vega/p-69119f58.entry.js +0 -1
  437. package/dist/vega/p-6b71d5d1.entry.js +0 -1
  438. package/dist/vega/p-70939752.entry.js +0 -1
  439. package/dist/vega/p-741a8b61.entry.js +0 -1
  440. package/dist/vega/p-7a3b142b.js +0 -1
  441. package/dist/vega/p-7e4fdccb.js +0 -1
  442. package/dist/vega/p-847dbae4.entry.js +0 -1
  443. package/dist/vega/p-850a6305.entry.js +0 -1
  444. package/dist/vega/p-8539e05e.js +0 -1
  445. package/dist/vega/p-8c46e116.js +0 -1
  446. package/dist/vega/p-95ac7c7e.js +0 -1
  447. package/dist/vega/p-95c30aed.entry.js +0 -1
  448. package/dist/vega/p-a433fef4.js +0 -1
  449. package/dist/vega/p-a7baad6d.entry.js +0 -1
  450. package/dist/vega/p-ae21e5f5.entry.js +0 -1
  451. package/dist/vega/p-af2de012.entry.js +0 -1
  452. package/dist/vega/p-af464251.js +0 -1
  453. package/dist/vega/p-b4be8573.entry.js +0 -1
  454. package/dist/vega/p-b5822a21.js +0 -1
  455. package/dist/vega/p-b8f50c69.entry.js +0 -1
  456. package/dist/vega/p-b9821a7f.entry.js +0 -1
  457. package/dist/vega/p-bca1f8f9.js +0 -1
  458. package/dist/vega/p-c81cb852.entry.js +0 -1
  459. package/dist/vega/p-cc2ceaa8.entry.js +0 -1
  460. package/dist/vega/p-d1ebec08.js +0 -1
  461. package/dist/vega/p-d45f79ce.entry.js +0 -1
  462. package/dist/vega/p-dbe5daa7.js +0 -1
  463. package/dist/vega/p-dc5026e7.entry.js +0 -1
  464. package/dist/vega/p-e3bb1cce.entry.js +0 -13
  465. package/dist/vega/p-e45f8a67.entry.js +0 -1
  466. package/dist/vega/p-e9ad8223.entry.js +0 -1
  467. package/dist/vega/p-eaa43f31.entry.js +0 -1
  468. package/dist/vega/p-ebbaa112.entry.js +0 -1
  469. package/dist/vega/p-ed50233f.entry.js +0 -1
  470. package/dist/vega/p-f08a4adf.js +0 -1
  471. package/dist/vega/p-f47de801.entry.js +0 -1
  472. package/dist/vega/p-fc4c5265.entry.js +0 -1
  473. package/dist/vega/p-fe6ea6cf.entry.js +0 -1
@@ -24,12 +24,13 @@ import { VegaDatePickerElementAppenderController } from './slimmers/controllers/
24
24
  import { VegaDatePickerKeyboardController } from './slimmers/controllers/vega-date-picker-keyboard-controller';
25
25
  import { ComponentLoadRequired } from '../../decorators/method-decorators/component-load-required';
26
26
  import { createEventEmitSlimmer, } from '../../helpers/event-manager/slimmers/event-emit-slimmer';
27
- import { VegaChange } from '../../helpers/event-manager/event-id/vega-event-id';
27
+ import { VegaChange, VegaMonthYearChange } from '../../helpers/event-manager/event-id/vega-event-id';
28
28
  import { ChildNodesEventPreventSlimmer } from '../../helpers/event-manager/slimmers/child-nodes-event-prevent-slimmer';
29
29
  import { VegaComponentUsageRuntimeMetricsSlimmer } from '../../helpers/slimmers/component-usage-runtime-metrics';
30
30
  import { VegaDatePickerRuntimeMetricsPayloadDefinition } from '../../constants/runtime-metrics-payload-definition/vega-date-picker/runtime-metrics-payload-definition';
31
31
  import { TranslationSlimmer } from '../../helpers/slimmers/translation';
32
32
  import { VegaDatePickerMonthYearDropdownRenderer } from './slimmers/renderers/vega-date-picker-calendar-month-year-dropdown-renderer';
33
+ import { VegaDatePickerMonthYearChangeEventController } from './slimmers/controllers/vega-date-picker-month-year-change-event-controller';
33
34
  /**
34
35
  * @vegaVersion 1.3.0
35
36
  */
@@ -84,10 +85,12 @@ export class VegaDatePicker {
84
85
  ].filter(Boolean);
85
86
  },
86
87
  });
88
+ this.monthYearChangeEventEmitter = createEventEmitSlimmer(VegaDatePicker, VegaMonthYearChange);
87
89
  this.changeEventEmitter = createEventEmitSlimmer(VegaDatePicker, VegaChange);
88
90
  this.inputEventPrevent = new ChildNodesEventPreventSlimmer([VegaChange], () => this.vegaDatePickerRenderer.getDatePickerContainer());
89
91
  this.vegaComponentUsageRuntimeMetricsSlimmer = new VegaComponentUsageRuntimeMetricsSlimmer(VegaDatePickerRuntimeMetricsPayloadDefinition);
90
92
  this.monthYearDropdownRenderer = new VegaDatePickerMonthYearDropdownRenderer();
93
+ this.vegaDatePickerMonthYearChangeEventController = new VegaDatePickerMonthYearChangeEventController();
91
94
  /**
92
95
  * Specifies the selection mode of the date picker.
93
96
  *
@@ -798,6 +801,55 @@ export class VegaDatePicker {
798
801
  "resolved": "string | string[]",
799
802
  "references": {}
800
803
  }
804
+ }, {
805
+ "method": "vegaMonthYearChange",
806
+ "name": "vegaMonthYearChange",
807
+ "bubbles": true,
808
+ "cancelable": true,
809
+ "composed": true,
810
+ "docs": {
811
+ "tags": [{
812
+ "name": "vegaVersion",
813
+ "text": "2.61.0"
814
+ }],
815
+ "text": "An event emitter notifying the month and year change when the navigation buttons are clicked or the month and year dropdowns are selected in the date picker,\n whether triggered programmatically or through user interaction."
816
+ },
817
+ "complexType": {
818
+ "original": "DatePickerMonthYearTypes",
819
+ "resolved": "DatePickerMonthYearType[] | { month: string; year: string; }",
820
+ "references": {
821
+ "DatePickerMonthYearTypes": {
822
+ "location": "import",
823
+ "path": "./types"
824
+ }
825
+ }
826
+ }
827
+ }, {
828
+ "method": "monthYearChange",
829
+ "name": "monthYearChange",
830
+ "bubbles": true,
831
+ "cancelable": true,
832
+ "composed": true,
833
+ "docs": {
834
+ "tags": [{
835
+ "name": "eventSemantics",
836
+ "text": "namespace:native"
837
+ }, {
838
+ "name": "vegaVersion",
839
+ "text": "2.61.0"
840
+ }],
841
+ "text": "An event emitter notifying the month and year change when the navigation buttons are clicked or the month and year dropdowns are selected in the date picker,"
842
+ },
843
+ "complexType": {
844
+ "original": "DatePickerMonthYearTypes",
845
+ "resolved": "DatePickerMonthYearType[] | { month: string; year: string; }",
846
+ "references": {
847
+ "DatePickerMonthYearTypes": {
848
+ "location": "import",
849
+ "path": "./types"
850
+ }
851
+ }
852
+ }
801
853
  }]; }
802
854
  static get methods() { return {
803
855
  "doClose": {
@@ -923,6 +975,9 @@ __decorate([
923
975
  __decorate([
924
976
  InjectVegaSlimmer()
925
977
  ], VegaDatePicker.prototype, "formFieldController", void 0);
978
+ __decorate([
979
+ InjectVegaSlimmer()
980
+ ], VegaDatePicker.prototype, "monthYearChangeEventEmitter", void 0);
926
981
  __decorate([
927
982
  InjectVegaSlimmer()
928
983
  ], VegaDatePicker.prototype, "changeEventEmitter", void 0);
@@ -935,6 +990,9 @@ __decorate([
935
990
  __decorate([
936
991
  InjectVegaSlimmer()
937
992
  ], VegaDatePicker.prototype, "monthYearDropdownRenderer", void 0);
993
+ __decorate([
994
+ InjectVegaSlimmer()
995
+ ], VegaDatePicker.prototype, "vegaDatePickerMonthYearChangeEventController", void 0);
938
996
  __decorate([
939
997
  ComponentLoadRequired()
940
998
  ], VegaDatePicker.prototype, "watchValue", null);
@@ -283,6 +283,10 @@ input[type=number] {
283
283
  -moz-appearance: textfield;
284
284
  }
285
285
 
286
+ input[type=password]::-ms-reveal {
287
+ display: none;
288
+ }
289
+
286
290
  .vega-input-container.compact-input-width {
287
291
  gap: 0px;
288
292
  }
@@ -27,6 +27,13 @@ export class VegaRichTextContent {
27
27
  * @vegaVersion 2.34.0
28
28
  */
29
29
  this.contentEditable = false;
30
+ /**
31
+ * Defines the configuration for rich text content extensions.
32
+ * It enables support for custom nodes, ensuring that extended content is rendered correctly.
33
+ *
34
+ * @vegaVersion 2.62.0
35
+ */
36
+ this.extensions = [];
30
37
  }
31
38
  watchValueUpdate() {
32
39
  methodPlaceholder();
@@ -77,6 +84,30 @@ export class VegaRichTextContent {
77
84
  }],
78
85
  "text": "Specifies the text or formatted information displayed by the rich text content, which can be either VegaRTEContent or VegaRTEContentBlock.\nIt is recommended to use the VegaRTEContent type.\nOnly in exceptional cases should the original data in the VegaRTEContentBlock type be used."
79
86
  }
87
+ },
88
+ "extensions": {
89
+ "type": "unknown",
90
+ "mutable": false,
91
+ "complexType": {
92
+ "original": "VegaRTEExtension[]",
93
+ "resolved": "VegaRTEExtension[]",
94
+ "references": {
95
+ "VegaRTEExtension": {
96
+ "location": "import",
97
+ "path": "../vega-rich-text-editor/extensions/extension.abstract"
98
+ }
99
+ }
100
+ },
101
+ "required": false,
102
+ "optional": false,
103
+ "docs": {
104
+ "tags": [{
105
+ "name": "vegaVersion",
106
+ "text": "2.62.0"
107
+ }],
108
+ "text": "Defines the configuration for rich text content extensions.\nIt enables support for custom nodes, ensuring that extended content is rendered correctly."
109
+ },
110
+ "defaultValue": "[]"
80
111
  }
81
112
  }; }
82
113
  static get states() { return {
@@ -32,3 +32,13 @@ export const RTE_TEXT_COLORS = [
32
32
  },
33
33
  ];
34
34
  export const ZERO_WIDTH_SPACE = '\u200b';
35
+ export const VegaRTEPresetToolbarItems = [
36
+ ['textStyles'],
37
+ ['bold', 'italic', 'underline', 'strikethrough', 'code'],
38
+ ['textColor'],
39
+ ['horizontalAlignment', 'bulletsNumbers'],
40
+ ['moreIndent', 'lessIndent'],
41
+ ['link'],
42
+ ['image'],
43
+ ['clearStyle'],
44
+ ];
@@ -52,5 +52,16 @@ export class ActionHandleStrategyRegistry {
52
52
  LogUtility.error(`Type ${actionType} action handle strategy is not registered in class ${RTEInstance.constructor.name}`);
53
53
  }
54
54
  }
55
+ /**
56
+ * Check if the action type can be handled by strategy for the specific RTE instance.
57
+ *
58
+ * @param {string} actionType - The special action type or the action class name.
59
+ * @param {RTENode | RTEBlock} RTEInstance - The rich text editor node.
60
+ * @returns {boolean} - Whether the action type can be handled by the strategy.
61
+ */
62
+ static canHandle(actionType, RTEInstance) {
63
+ const strategy = ActionHandleStrategyRegistry.get(actionType, RTEInstance.constructor.name);
64
+ return strategy ? true : false;
65
+ }
55
66
  }
56
67
  ActionHandleStrategyRegistry.registry = new Map();
@@ -30,7 +30,8 @@ export class NodeSplitTextStrategy extends ActionHandleStrategy {
30
30
  if (noTextRangeSelected) {
31
31
  return this.insertNewNode(startOffset, target);
32
32
  }
33
- if (this.shouldSplitSelection(selectionRangeAnnotation.range)) {
33
+ if (this.shouldSplitSelection(selectionRangeAnnotation.range) &&
34
+ target.isContentEditable()) {
34
35
  const splittedTextNodes = this.splitTextNode(selectionRangeAnnotation.range, target);
35
36
  if (item.annotationMap.has('LINK')) {
36
37
  item.apply(new LinkGroupNodeSplitAction(splittedTextNodes));
@@ -57,10 +58,12 @@ export class NodeSplitTextStrategy extends ActionHandleStrategy {
57
58
  insertNewNode(startOffset, target) {
58
59
  const newNode = target.cloneWithText('');
59
60
  this.setApplyTargetNode(newNode);
60
- if (startOffset === 0) {
61
+ const index = target.parent.children.findIndex((node) => node === target);
62
+ if (startOffset === 0 || (!target.isContentEditable() && startOffset === index)) {
61
63
  return [newNode, target];
62
64
  }
63
- if (startOffset === target.text.length) {
65
+ if (startOffset === target.text.length ||
66
+ (!target.isContentEditable() && startOffset === index + 1)) {
64
67
  return [target, newNode];
65
68
  }
66
69
  const beforeNode = target.cloneWithText(target.text.substring(0, startOffset));
@@ -57,8 +57,9 @@ export class BlockDeleteTextOrDecoratorNodeStrategy extends BlockDeleteNodeConte
57
57
  else {
58
58
  let previousNode = this.getPreviousNode(startContainerNode);
59
59
  let nextNode = null;
60
+ const isCurrentNodeEmpty = startContainerNode.isEmpty();
60
61
  if (target.children.length && previousNode && previousNode.parent !== target) {
61
- if (startContainerNode.isEmpty()) {
62
+ if (isCurrentNodeEmpty) {
62
63
  target.apply(new RemoveChildrenAction(startContainerNode));
63
64
  }
64
65
  if (target.type === previousNode.parent.type) {
@@ -66,7 +67,7 @@ export class BlockDeleteTextOrDecoratorNodeStrategy extends BlockDeleteNodeConte
66
67
  }
67
68
  }
68
69
  else {
69
- if (this.isContentFirstNode(startContainerNode) && startContainerNode.isEmpty()) {
70
+ if (this.isContentFirstNode(startContainerNode) && isCurrentNodeEmpty) {
70
71
  nextNode = this.getNextNode(startContainerNode);
71
72
  }
72
73
  /**
@@ -76,21 +77,26 @@ export class BlockDeleteTextOrDecoratorNodeStrategy extends BlockDeleteNodeConte
76
77
  * \n
77
78
  * test
78
79
  */
79
- if (startContainerNode.isEmpty()) {
80
+ if (isCurrentNodeEmpty) {
80
81
  target.apply(new RemoveChildrenAction(startContainerNode));
81
82
  }
82
83
  /**
83
- * Remove line break
84
+ * Remove line break or non-editable node
84
85
  *
85
86
  * @example caret at the begin of second line
86
87
  * \n
87
88
  * test
89
+ * @example caret at the end of non-editable node and start of the text node
90
+ * <img/><span>test</span>
88
91
  */
89
- if (previousNode && previousNode.isTextNode() && previousNode.isEmpty()) {
92
+ if (previousNode &&
93
+ previousNode.isTextNode() &&
94
+ (previousNode.isEmpty() ||
95
+ (!previousNode.isContentEditable() && previousNode.parent === target))) {
90
96
  const shouldRemoveNode = previousNode;
91
97
  previousNode = this.getPreviousNode(previousNode);
92
98
  shouldRemoveNode.parent.apply(new RemoveChildrenAction(shouldRemoveNode));
93
- if (!previousNode) {
99
+ if (!previousNode && !isCurrentNodeEmpty) {
94
100
  nextNode = startContainerNode;
95
101
  }
96
102
  }
@@ -69,8 +69,8 @@ export class CodeBlockRemoveSelfStrategy extends BlockDeleteNodeContentStrategy
69
69
  * @returns {number} - The number value.
70
70
  */
71
71
  getRTENodeEndOffset(node) {
72
- if (node && node.type !== 'CODE_BLOCK_NODE') {
73
- return node['type'] !== 'IMAGE' ? node['text'].length : 1;
72
+ if (node) {
73
+ return node.getRangeEndOffset();
74
74
  }
75
75
  return 0;
76
76
  }
@@ -0,0 +1,57 @@
1
+ import { InsertChildrenAfterAction } from '../../actions/insert-children-after-block';
2
+ import { InsertChildrenBeforeAction } from '../../actions/insert-children-before-block';
3
+ import { RemoveChildrenAction } from '../../actions/remove-child-action';
4
+ import { UpdateCursorPositionAction } from '../../actions/update-cursor-position-action';
5
+ import { ActionHandleStrategy } from '../action-handle-strategy.abstract';
6
+ /**
7
+ * Insert a new node in nearest position of parent block strategy.
8
+ */
9
+ export class InsertNodeToNearestRootStrategy extends ActionHandleStrategy {
10
+ /**
11
+ * @inheritDoc
12
+ */
13
+ handleAction(action, target) {
14
+ const { rteRange, nodeToBeInserted } = action;
15
+ const { startNode, startOffset } = rteRange;
16
+ if (startNode) {
17
+ const parent = target;
18
+ if (startNode.isContentEditable() && startNode.isTextNode()) {
19
+ if (startNode.text === '\n' || !startNode.text || startOffset === 0) {
20
+ parent.apply(new InsertChildrenBeforeAction(startNode, nodeToBeInserted));
21
+ }
22
+ else {
23
+ const startText = startNode.text.substring(0, startOffset);
24
+ const endText = startNode.text.substring(startOffset);
25
+ const startTextNode = startNode.cloneWithText(startText);
26
+ const endTextNode = startNode.cloneWithText(endText);
27
+ const insertNodes = [startTextNode, nodeToBeInserted];
28
+ if (endText) {
29
+ insertNodes.push(endTextNode);
30
+ }
31
+ parent.apply(new InsertChildrenBeforeAction(startNode, ...insertNodes));
32
+ parent.apply(new RemoveChildrenAction(startNode));
33
+ }
34
+ }
35
+ else {
36
+ if (startOffset !== 0) {
37
+ parent.apply(new InsertChildrenAfterAction(startNode, nodeToBeInserted));
38
+ }
39
+ else {
40
+ parent.apply(new InsertChildrenBeforeAction(startNode, nodeToBeInserted));
41
+ }
42
+ }
43
+ this.updateCursorPosition(nodeToBeInserted);
44
+ }
45
+ }
46
+ /**
47
+ * Update the cursor position to end of the inserted node.
48
+ *
49
+ * @param {RTENode} node - node to find root content
50
+ */
51
+ updateCursorPosition(node) {
52
+ const root = this.getRootContent(node.parent);
53
+ if (root) {
54
+ root.apply(new UpdateCursorPositionAction(node));
55
+ }
56
+ }
57
+ }
@@ -11,12 +11,13 @@ export class UpdateCursorPositionStrategy extends ActionHandleStrategy {
11
11
  * @inheritDoc
12
12
  */
13
13
  handleAction(action, target) {
14
- const { offset, nextFocusNode } = action;
14
+ const { offset, nextFocusNode, immediatelyRun } = action;
15
15
  const host = stateEntityRenderingRegistry.getDOMByEntity(target);
16
16
  if (host) {
17
17
  changeManager.notify(domNodeSubjectFactory.getSubject(host, VegaInternalUpdateRTECursorPosition), {
18
18
  node: nextFocusNode,
19
19
  offset,
20
+ updateDirectly: immediatelyRun,
20
21
  });
21
22
  }
22
23
  }
@@ -0,0 +1,14 @@
1
+ import { ModifyContentAction, ModifyContentActionType } from './modify-content-action.abstract';
2
+ /**
3
+ * Insert a new children to the nearest position of the parent container
4
+ *
5
+ * @example parent.apply(new InsertNodeToNearestRoot(rteRange, nodeToBeInserted))
6
+ */
7
+ export class InsertNodeToNearestRootAction extends ModifyContentAction {
8
+ constructor(rteRange, nodeToBeInserted) {
9
+ super();
10
+ this.type = ModifyContentActionType.INSERT_NODE_TO_NEAREST_ROOT;
11
+ this.rteRange = rteRange;
12
+ this.nodeToBeInserted = nodeToBeInserted;
13
+ }
14
+ }
@@ -28,6 +28,7 @@ export var ModifyContentActionType;
28
28
  ModifyContentActionType["DELETE_LINK_GROUP"] = "DELETE_LINK_GROUP";
29
29
  ModifyContentActionType["UPDATE_CURSOR_POSITION"] = "UPDATE_CURSOR_POSITION";
30
30
  ModifyContentActionType["INSERT_TEXT_TO_DECORATOR_NODE"] = "INSERT_TEXT_TO_DECORATOR_NODE";
31
+ ModifyContentActionType["INSERT_NODE_TO_NEAREST_ROOT"] = "INSERT_NODE_TO_NEAREST_ROOT";
31
32
  })(ModifyContentActionType || (ModifyContentActionType = {}));
32
33
  /**
33
34
  * Abstract class for update node content, delete node, insert node
@@ -2,7 +2,7 @@ import { ModifyContentAction, ModifyContentActionType } from './modify-content-a
2
2
  /**
3
3
  * Update the cursor position in the editor.
4
4
  *
5
- * @example richEditorRef.value.apply(new UpdateCursorPositionAction(nextFocusNode, [offset]))
5
+ * @example richEditorRef.value.apply(new UpdateCursorPositionAction(nextFocusNode, [offset], [immediatelyRun]))
6
6
  */
7
7
  export class UpdateCursorPositionAction extends ModifyContentAction {
8
8
  /**
@@ -10,11 +10,14 @@ export class UpdateCursorPositionAction extends ModifyContentAction {
10
10
  *
11
11
  * @param {RTENode} nextFocusNode - The rich text editor needs focus node.
12
12
  * @param {number} offset - The cursor offset position.
13
+ * @param {boolean} immediatelyRun - Whether to immediately set the cursor position after applying it. Usually the set action will trigger after the UI renders.
13
14
  */
14
- constructor(nextFocusNode, offset) {
15
+ constructor(nextFocusNode, offset, immediatelyRun = false) {
15
16
  super();
16
17
  this.type = ModifyContentActionType.UPDATE_CURSOR_POSITION;
18
+ this.immediatelyRun = false;
17
19
  this.nextFocusNode = nextFocusNode;
18
20
  this.offset = offset;
21
+ this.immediatelyRun = immediatelyRun;
19
22
  }
20
23
  }
@@ -137,6 +137,18 @@ export class VegaRTEContent {
137
137
  apply(action) {
138
138
  ActionHandleStrategyRegistry.executeTheStrategy(action, this);
139
139
  }
140
+ /**
141
+ * Get the last node in the content.
142
+ *
143
+ * @returns {Nullable<RTENode>} The last node in the content or null if there are no nodes.
144
+ */
145
+ getLastNode() {
146
+ if (this.children.length === 0) {
147
+ return null;
148
+ }
149
+ const lastBlock = this.children[this.children.length - 1];
150
+ return lastBlock.getLastNode();
151
+ }
140
152
  /**
141
153
  * Convert text to list.
142
154
  *
@@ -31,6 +31,7 @@ import { InlineHtmlAnnotation } from '../annotations/inline-html-annotation';
31
31
  import { LinkGroupNodeSplitStrategy } from '../action-handle-strategies/modify-content-strategies/link-group-node-split-strategy';
32
32
  import { DeleteLinkGroupStrategy } from '../action-handle-strategies/modify-content-strategies/delete-link-group-strategy';
33
33
  import { PlainTextAnnotation } from '../annotations/plain-text-annotation';
34
+ import { LinkAnnotationAction } from '../actions/link-annotation-action';
34
35
  /**
35
36
  * Text node
36
37
  */
@@ -63,17 +64,29 @@ export class RTETextNode extends RTENode {
63
64
  const textNode = new RTETextNode(richText.id, richText.text, parentBlock);
64
65
  const { annotations } = richText;
65
66
  if (annotations) {
66
- textNode.annotationMap = new Map(Object.keys(annotations)
67
- .map((type) => {
68
- if (type === 'link' && annotations.link && parentBlock) {
69
- parentBlock.apply(new LinkGroupAnnotationAction(annotations.link.groupKey, [textNode], 'link'));
70
- }
71
- return this.createAnnotationEntity(type, annotations[type], options);
72
- })
73
- .filter(isNonNullable));
67
+ textNode.annotationMap = this.generateTextAnnotationMap(annotations, options, parentBlock, textNode);
74
68
  }
75
69
  return textNode;
76
70
  }
71
+ /**
72
+ * Generates a map of text annotations for the given set of annotations.
73
+ *
74
+ * @param {VegaRTETextAnnotations} annotations - The annotations to be converted into a map.
75
+ * @param {VegaRTETransformOptions} options - Optional transformation options.
76
+ * @param {RTETextBlock} parentBlock - The parent text block.
77
+ * @param {RTETextNode} textNode - The text node.
78
+ * @returns {NodeAnnotations} The map of text annotations.
79
+ */
80
+ static generateTextAnnotationMap(annotations, options, parentBlock, textNode) {
81
+ return new Map(Object.keys(annotations)
82
+ .map((type) => {
83
+ if (type === 'link' && annotations.link && parentBlock && textNode) {
84
+ parentBlock.apply(new LinkGroupAnnotationAction(annotations.link.groupKey, [textNode], 'link'));
85
+ }
86
+ return this.createAnnotationEntity(type, annotations[type], options);
87
+ })
88
+ .filter(isNonNullable));
89
+ }
77
90
  /**
78
91
  * Creates different types of text annotations based on the provided type and value.
79
92
  *
@@ -200,9 +213,10 @@ export class RTETextNode extends RTENode {
200
213
  if (this.isContentEditable()) {
201
214
  ActionHandleStrategyRegistry.register(ModifyContentActionType.UPDATE_TEXT, dtoClassName, new NodeUpdateTextStrategy());
202
215
  ActionHandleStrategyRegistry.register(ModifyContentActionType.REPLACE_SELECTED_TEXT, dtoClassName, new NodeReplaceSelectedTextStrategy());
203
- ActionHandleStrategyRegistry.register(TextSplittableAction.name, dtoClassName, new NodeSplitTextStrategy());
216
+ ActionHandleStrategyRegistry.register(ModifyContentActionType.LINK_GROUP_NODE_SPLIT, dtoClassName, new LinkGroupNodeSplitStrategy());
217
+ ActionHandleStrategyRegistry.register(LinkAnnotationAction.name, dtoClassName, new NodeUpdateAnnotationMapStrategy());
204
218
  }
205
- ActionHandleStrategyRegistry.register(ModifyContentActionType.LINK_GROUP_NODE_SPLIT, dtoClassName, new LinkGroupNodeSplitStrategy());
219
+ ActionHandleStrategyRegistry.register(TextSplittableAction.name, dtoClassName, new NodeSplitTextStrategy());
206
220
  ActionHandleStrategyRegistry.register(ModifyContentActionType.DELETE_LINK_GROUP, dtoClassName, new DeleteLinkGroupStrategy());
207
221
  ActionHandleStrategyRegistry.register(AnnotationAction.name, dtoClassName, new NodeUpdateAnnotationMapStrategy());
208
222
  RTETextNode.registerActionStrategyStatus[dtoClassName] = true;
@@ -251,6 +265,18 @@ export class RTETextNode extends RTENode {
251
265
  if (!(annotation instanceof SelectionRangeAnnotation)) {
252
266
  this.syncUpSelectedNodes(node);
253
267
  }
268
+ /**
269
+ * 1. Try to get the specific strategy for the action and node type first (e.g., LinkAnnotationAction on RTETextNode).
270
+ * 2. If no specific strategy found, try to get the generic NodeUpdateAnnotationMapStrategy for AnnotationAction on RTETextNode.
271
+ *
272
+ * This is useful when we want to check if there is a specific strategy for an action-node combination first, we can use the specific strategy to check if the special toolbar button should be enabled or disabled.
273
+ * TODO: Update the other annotation actions to follow this pattern. https://gethired.atlassian.net/browse/VD-7367
274
+ */
275
+ const strategy = ActionHandleStrategyRegistry.get(action.constructor.name, node.constructor.name);
276
+ if (strategy) {
277
+ strategy.execute(action, node);
278
+ return;
279
+ }
254
280
  const updateAnnotationMapStrategy = ActionHandleStrategyRegistry.get(AnnotationAction.name, RTETextNode.name);
255
281
  if (updateAnnotationMapStrategy) {
256
282
  updateAnnotationMapStrategy.execute(action, node);
@@ -8,6 +8,7 @@ import { VegaChange } from '../../../../../helpers/event-manager/event-id/vega-e
8
8
  import RTETextNodeRenderer from '../nodes/text-node-renderer';
9
9
  import { isNonNullable } from '../../../../../types/type-guard';
10
10
  import { UnlinkLinkGroupAction } from '../../actions/unlink-link-group-action';
11
+ import RTEDTORendererManager from '../../../../../helpers/rte-manager/dto-renderer-manager';
11
12
  /**
12
13
  * Renders link nodes and wraps them with link editor or anchor element based on edit mode.
13
14
  */
@@ -47,11 +48,12 @@ class RTELinkWrapperRenderer {
47
48
  * @param {RTETextNode[]} nodes - Array of text nodes to render.
48
49
  * @param {LinkGroupAnnotation} linkGroupAnnotation - link group annotation
49
50
  * @param {RTERenderContext} context - Context containing render options.
50
- * @returns {HTMLElement[]} - Array of rendered HTML elements.
51
+ * @returns {VegaRTERenderResult[]} - Array of rendered HTML elements.
51
52
  */
52
53
  render(nodes, linkGroupAnnotation, { editable }) {
53
54
  const blockNodes = this.groupNodesByLink(nodes);
54
- return blockNodes.flatMap((item) => {
55
+ return blockNodes
56
+ .flatMap((item) => {
55
57
  if (this.isLinkGroup(item)) {
56
58
  // TODO: should revert to above code while https://gethired.atlassian.net/browse/VD-6513 have be fixed.
57
59
  // const linkAnnotation: LinkAnnotation = item[0].getAnnotationByType<LinkAnnotation>(
@@ -69,8 +71,12 @@ class RTELinkWrapperRenderer {
69
71
  ? this.renderLinkEditorWrapper(item, linkAnnotation, linkGroupAnnotation)
70
72
  : this.renderLink(item, linkAnnotation, linkGroupAnnotation);
71
73
  }
72
- return RTETextNodeRenderer.render(item);
73
- });
74
+ const nodeRenderer = RTEDTORendererManager.getRTERenderer(item.type);
75
+ if (nodeRenderer) {
76
+ return nodeRenderer.render(item, { editable }, h);
77
+ }
78
+ })
79
+ .filter(isNonNullable);
74
80
  }
75
81
  groupNodesByLink(nodes) {
76
82
  return nodes.reduce((acc, node) => {