@globalpayments/vega 2.36.0 → 2.37.1

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 (461) hide show
  1. package/dist/cjs/{app-globals-13d4a0be.js → app-globals-e10d1859.js} +10 -9
  2. package/dist/cjs/{child-nodes-event-prevent-slimmer-96c3c4ae.js → child-nodes-event-prevent-slimmer-af2addec.js} +1 -1
  3. package/dist/cjs/{child-nodes-notify-observer-slimmer-be92f366.js → child-nodes-notify-observer-slimmer-4e60a929.js} +2 -2
  4. package/dist/cjs/{content-state-2336e368.js → content-state-f97d3278.js} +4 -38
  5. package/dist/cjs/{design-token-30c069c1.js → design-token-36eb5def.js} +1 -1
  6. package/dist/cjs/{dom-node-subject-factory-3ec114b8.js → dom-node-subject-factory-ce1777a9.js} +0 -30
  7. package/dist/cjs/{dom-node-subject-observer-factory-5f0eae19.js → dom-node-subject-observer-factory-80b3ac6c.js} +3 -2
  8. package/dist/cjs/{element-appender-slimmer-77f9c4a0.js → element-appender-slimmer-c6e0f4ca.js} +28 -1
  9. package/dist/cjs/{event-emit-slimmer-9c223f73.js → event-emit-slimmer-208a19e4.js} +3 -3
  10. package/dist/cjs/{form-field-controller-slimmer-8d4d2723.js → form-field-controller-slimmer-48c0ad0b.js} +11 -10
  11. package/dist/cjs/{image-annotation-action-4135ca69.js → image-annotation-action-7d82f7e1.js} +4 -4
  12. package/dist/cjs/index-0546e2ea.js +99 -0
  13. package/dist/cjs/index.cjs.js +30 -14
  14. package/dist/cjs/{internal-vega-event-manager-e5e4bcf4.js → internal-vega-event-manager-981dfd1c.js} +1 -1
  15. package/dist/cjs/loader.cjs.js +12 -10
  16. package/dist/cjs/{node-annotation.abstract-c3c07af5.js → node-annotation.abstract-4f6df9cf.js} +7 -62
  17. package/dist/cjs/observer-f49483e8.js +32 -0
  18. package/dist/cjs/{remote-invocation-registry-ff9af278.js → remote-invocation-registry-32aaf6c2.js} +3 -3
  19. package/dist/cjs/{responsive-format-facade-4363a00d.js → responsive-format-facade-a1983026.js} +2 -0
  20. package/dist/cjs/{static-subject-title-d66b88fb.js → static-subject-title-c589a1bd.js} +2 -0
  21. package/dist/cjs/{string-input-formatter-slimmer-6155c9f5.js → string-input-formatter-slimmer-072b75a0.js} +28 -35
  22. package/dist/cjs/{style-formatter-63218b76.js → style-formatter-d446562b.js} +1 -1
  23. package/dist/cjs/{sub-state-notify-slimmer-994eb848.js → sub-state-notify-slimmer-b1f1e61a.js} +4 -3
  24. package/dist/cjs/{sub-state-observer-slimmer-080a4bea.js → sub-state-observer-slimmer-02634647.js} +4 -3
  25. package/dist/cjs/{translation-b9be41e0.js → translation-6848c389.js} +1 -1
  26. package/dist/cjs/{translation-slimmer-ec76c5a2.js → translation-slimmer-510906bc.js} +1 -1
  27. package/dist/cjs/vega-accordion.cjs.entry.js +9 -8
  28. package/dist/cjs/vega-app-footer.cjs.entry.js +3 -0
  29. package/dist/cjs/vega-app-header-button.cjs.entry.js +140 -37
  30. package/dist/cjs/vega-banner.cjs.entry.js +5 -4
  31. package/dist/cjs/vega-box.cjs.entry.js +3 -3
  32. package/dist/cjs/vega-breadcrumb.cjs.entry.js +6 -5
  33. package/dist/cjs/vega-button-circle.cjs.entry.js +9 -8
  34. package/dist/cjs/vega-button-group_2.cjs.entry.js +9 -8
  35. package/dist/cjs/vega-button-link.cjs.entry.js +7 -5
  36. package/dist/cjs/vega-button.cjs.entry.js +8 -7
  37. package/dist/cjs/vega-calendar_3.cjs.entry.js +288 -218
  38. package/dist/cjs/vega-card.cjs.entry.js +2 -2
  39. package/dist/cjs/vega-carousel.cjs.entry.js +6 -5
  40. package/dist/cjs/vega-checkbox_2.cjs.entry.js +22 -14
  41. package/dist/cjs/vega-chip.cjs.entry.js +8 -7
  42. package/dist/cjs/vega-color-picker.cjs.entry.js +9 -8
  43. package/dist/cjs/vega-combo-box.cjs.entry.js +10 -9
  44. package/dist/cjs/vega-date-picker_2.cjs.entry.js +18 -16
  45. package/dist/cjs/vega-dialog_2.cjs.entry.js +829 -378
  46. package/dist/cjs/vega-divider.cjs.entry.js +2 -2
  47. package/dist/cjs/vega-dropdown_5.cjs.entry.js +37 -16
  48. package/dist/cjs/vega-env-manager-23b8b23c.js +2 -2
  49. package/dist/cjs/vega-field-error.cjs.entry.js +1 -1
  50. package/dist/cjs/vega-field-label.cjs.entry.js +5 -4
  51. package/dist/cjs/vega-file-uploader.cjs.entry.js +10 -9
  52. package/dist/cjs/vega-flex.cjs.entry.js +3 -3
  53. package/dist/cjs/vega-font.cjs.entry.js +2 -2
  54. package/dist/cjs/vega-form.cjs.entry.js +15 -14
  55. package/dist/cjs/vega-grid.cjs.entry.js +2 -2
  56. package/dist/cjs/vega-icon.cjs.entry.js +2 -2
  57. package/dist/cjs/vega-image-uploader.cjs.entry.js +13 -11
  58. package/dist/cjs/vega-input-credit-card.cjs.entry.js +10 -9
  59. package/dist/cjs/vega-input-numeric.cjs.entry.js +11 -10
  60. package/dist/cjs/vega-input-phone-number.cjs.entry.js +14 -10
  61. package/dist/cjs/vega-input-range.cjs.entry.js +11 -10
  62. package/dist/cjs/vega-input-select.cjs.entry.js +13 -12
  63. package/dist/cjs/vega-input.cjs.entry.js +17 -12
  64. package/dist/cjs/{vega-internal-event-id-b12071ea.js → vega-internal-event-id-bda63e14.js} +2 -0
  65. package/dist/cjs/vega-item-toggle.cjs.entry.js +7 -4
  66. package/dist/cjs/vega-left-nav_5.cjs.entry.js +26 -14
  67. package/dist/cjs/vega-loader-wrapper_2.cjs.entry.js +1 -1
  68. package/dist/cjs/vega-page-notification_2.cjs.entry.js +3 -2
  69. package/dist/cjs/vega-pagination.cjs.entry.js +9 -8
  70. package/dist/cjs/vega-popover_2.cjs.entry.js +10 -8
  71. package/dist/cjs/vega-progress-tracker.cjs.entry.js +5 -4
  72. package/dist/cjs/vega-radio_2.cjs.entry.js +14 -13
  73. package/dist/cjs/vega-rich-text-content.cjs.entry.js +11 -9
  74. package/dist/cjs/vega-rich-text-editor_4.cjs.entry.js +696 -426
  75. package/dist/cjs/vega-segment-control.cjs.entry.js +5 -4
  76. package/dist/cjs/vega-selection-chip_2.cjs.entry.js +14 -13
  77. package/dist/cjs/vega-selection-tile_2.cjs.entry.js +14 -13
  78. package/dist/cjs/vega-sidenav_3.cjs.entry.js +12 -11
  79. package/dist/cjs/vega-signature-capture.cjs.entry.js +13 -11
  80. package/dist/cjs/{vega-skeleton-loader-controller-7dac484f.js → vega-skeleton-loader-controller-ef43cfc1.js} +1 -1
  81. package/dist/cjs/vega-stepper.cjs.entry.js +10 -9
  82. package/dist/cjs/vega-tab-group_2.cjs.entry.js +15 -12
  83. package/dist/cjs/vega-table_8.cjs.entry.js +49 -30
  84. package/dist/cjs/vega-textarea.cjs.entry.js +10 -9
  85. package/dist/cjs/vega-time-picker_2.cjs.entry.js +13 -12
  86. package/dist/cjs/vega-toggle-switch.cjs.entry.js +9 -8
  87. package/dist/cjs/vega-tooltip_2.cjs.entry.js +5 -2
  88. package/dist/cjs/vega.cjs.js +12 -10
  89. package/dist/collection/components/vega-app-footer/vega-app-footer.js +12 -0
  90. package/dist/collection/components/vega-app-header-button/slimmers/renderers/vega-app-header-button-dropdown-renderer.js +124 -0
  91. package/dist/collection/components/vega-app-header-button/vega-app-header-button.js +12 -31
  92. package/dist/collection/components/vega-box/vega-box.js +33 -3
  93. package/dist/collection/components/vega-button-circle/vega-button-circle.js +1 -1
  94. package/dist/collection/components/vega-button-group/vega-button-group-item/vega-button-group-item.js +1 -1
  95. package/dist/collection/components/vega-button-link/vega-button-link.js +4 -0
  96. package/dist/collection/components/vega-calendar/slimmers/common/renderers/vega-calendar-view-renderer.js +9 -1
  97. package/dist/collection/components/vega-calendar/slimmers/day-view/renderers/vega-calendar-time-line-renderer.js +2 -111
  98. package/dist/collection/components/vega-calendar/slimmers/day-view/renderers/vega-calendar-time-marker-renderer.js +164 -0
  99. package/dist/collection/components/vega-calendar/slimmers/day-view/renderers/vega-calendar-view-with-time-renderer.js +4 -1
  100. package/dist/collection/components/vega-calendar/vega-calendar.js +7 -2
  101. package/dist/collection/components/vega-checkbox/vega-checkbox-group/vega-checkbox-group.js +1 -1
  102. package/dist/collection/components/vega-checkbox/vega-checkbox.css +5 -1
  103. package/dist/collection/components/vega-checkbox/vega-checkbox.js +9 -1
  104. package/dist/collection/components/vega-combo-box/vega-combo-box.js +1 -1
  105. package/dist/collection/components/vega-dialog/vega-dialog.js +3 -3
  106. package/dist/collection/components/vega-dropdown/slimmers/controllers/vega-dropdown-scrollable-controller.js +19 -0
  107. package/dist/collection/components/vega-dropdown/slimmers/renderers/vega-dropdown-list-renderer.js +4 -1
  108. package/dist/collection/components/vega-field-label/vega-field-label.js +1 -1
  109. package/dist/collection/components/vega-flex/vega-flex.js +12 -0
  110. package/dist/collection/components/vega-image-uploader/vega-image-uploader.js +4 -0
  111. package/dist/collection/components/vega-input/vega-input.js +6 -2
  112. package/dist/collection/components/vega-input-credit-card/test/share.js +1 -1
  113. package/dist/collection/components/vega-input-phone-number/vega-input-phone-number.js +12 -0
  114. package/dist/collection/components/vega-input-select/vega-input-select.js +3 -3
  115. package/dist/collection/components/vega-item-toggle/vega-item-toggle.js +8 -0
  116. package/dist/collection/components/vega-modal/slimmers/controllers/vega-modal-backdrop-controller.js +64 -0
  117. package/dist/collection/components/vega-modal/slimmers/controllers/vega-modal-layout-controller.js +136 -0
  118. package/dist/collection/components/vega-modal/slimmers/controllers/vega-modal-mobile-controller.js +60 -0
  119. package/dist/collection/components/vega-modal/slimmers/controllers/vega-modal-open-state-controller.js +190 -0
  120. package/dist/collection/components/vega-modal/slimmers/controllers/vega-modal-opened-modal-stack-controller.js +51 -0
  121. package/dist/collection/components/vega-modal/slimmers/controllers/vega-modal-scroll-controller.js +76 -0
  122. package/dist/collection/components/vega-modal/slimmers/controllers/vega-modal-z-index-controller.js +43 -0
  123. package/dist/collection/components/vega-modal/slimmers/renderers/vega-modal-renderer.js +122 -0
  124. package/dist/collection/components/vega-modal/vega-modal.js +47 -340
  125. package/dist/collection/components/vega-nav/vega-left-nav-link/slimmers/renderers/vega-left-nav-link-renderer.js +4 -1
  126. package/dist/collection/components/vega-nav/vega-left-nav-link/vega-left-nav-link.js +34 -2
  127. package/dist/collection/components/vega-pagination/vega-pagination.js +1 -1
  128. package/dist/collection/components/vega-radio/vega-radio-group/vega-radio-group.js +1 -1
  129. package/dist/collection/components/vega-radio/vega-radio.css +3 -0
  130. package/dist/collection/components/vega-rich-text-editor/slimmers/controllers/delete-selected-nodes-controller.js +190 -0
  131. package/dist/collection/components/vega-rich-text-editor/slimmers/controllers/helper/input-event-handler/base-handler.js +18 -123
  132. package/dist/collection/components/vega-rich-text-editor/slimmers/controllers/helper/input-event-handler/delete-content-handler.js +9 -11
  133. package/dist/collection/components/vega-rich-text-editor/slimmers/controllers/helper/input-event-handler/insert-line-break-handler.js +8 -18
  134. package/dist/collection/components/vega-rich-text-editor/slimmers/controllers/helper/input-event-handler/insert-paste-handler.js +2 -2
  135. package/dist/collection/components/vega-rich-text-editor/slimmers/controllers/helper/input-event-handler/insert-text-handler.js +5 -4
  136. package/dist/collection/components/vega-rich-text-editor/slimmers/controllers/insert-composition-text-controller.js +244 -0
  137. package/dist/collection/components/vega-rich-text-editor/slimmers/controllers/selection-controller.js +13 -5
  138. package/dist/collection/components/vega-rich-text-editor/slimmers/controllers/user-input-controller.js +16 -70
  139. package/dist/collection/components/vega-rich-text-editor/vega-rich-text-editor.js +22 -14
  140. package/dist/collection/components/vega-selection-chip/vega-selection-chip.js +2 -2
  141. package/dist/collection/components/vega-signature-capture/vega-signature-capture.js +4 -0
  142. package/dist/collection/components/vega-tab-group/slimmers/vega-tab-group/renderers/vega-tab-group-close-button-renderer.js +2 -2
  143. package/dist/collection/components/vega-tab-group/slimmers/vega-tab-group/renderers/vega-tab-group-direction-button-renderer.js +1 -0
  144. package/dist/collection/components/vega-tab-group/slimmers/vega-tab-group/renderers/vega-tab-group-tab-list-renderer.js +3 -2
  145. package/dist/collection/components/vega-tab-group/vega-tab-group.css +9 -0
  146. package/dist/collection/components/vega-table/internal/vega-table-scrollable-container.js +2 -1
  147. package/dist/collection/components/vega-table/slimmers/controllers/vega-table-editable-controller.js +2 -3
  148. package/dist/collection/components/vega-table/slimmers/renderers/vega-table-renderer.js +5 -1
  149. package/dist/collection/components/vega-table/slimmers/renderers/vega-table-scroll-container-renderer.js +17 -1
  150. package/dist/collection/components/vega-table/vega-table.js +1 -1
  151. package/dist/collection/helpers/change-manager/subject/static-subject/static-subject-title.js +1 -0
  152. package/dist/collection/helpers/event-manager/event-id/vega-internal-event-id.js +1 -0
  153. package/dist/collection/helpers/slimmers/element-appender-slimmer.js +27 -0
  154. package/dist/collection/helpers/slimmers/string-input-formatter-slimmer.js +29 -36
  155. package/dist/collection/helpers/slimmers/test/element-appender-slimmer.test.js +26 -0
  156. package/dist/collection/helpers/slimmers/test/string-input-formatter-slimmer.test.js +2 -1
  157. package/dist/collection/helpers/validator/test/rules/valid-credit-card-number-rule.test.js +56 -0
  158. package/dist/collection/types/public-api.js +17 -0
  159. package/dist/esm/{app-globals-9ded4406.js → app-globals-c1f2bea9.js} +7 -6
  160. package/dist/esm/{child-nodes-event-prevent-slimmer-97aae8a8.js → child-nodes-event-prevent-slimmer-3220fa5b.js} +1 -1
  161. package/dist/esm/{child-nodes-notify-observer-slimmer-289caacc.js → child-nodes-notify-observer-slimmer-36024b11.js} +1 -1
  162. package/dist/esm/{content-state-42a06d75.js → content-state-ccf5f960.js} +4 -37
  163. package/dist/esm/{design-token-d06bc718.js → design-token-e14b622b.js} +1 -1
  164. package/dist/esm/{dom-node-subject-factory-5831cdd4.js → dom-node-subject-factory-97deb349.js} +1 -30
  165. package/dist/esm/{dom-node-subject-observer-factory-dc486a8b.js → dom-node-subject-observer-factory-857c65fa.js} +2 -1
  166. package/dist/esm/{element-appender-slimmer-f3eceb79.js → element-appender-slimmer-f5e703f3.js} +28 -1
  167. package/dist/esm/{event-emit-slimmer-f285e3ac.js → event-emit-slimmer-36cf4e39.js} +3 -3
  168. package/dist/esm/{form-field-controller-slimmer-6ef5641b.js → form-field-controller-slimmer-3535e76a.js} +6 -5
  169. package/dist/esm/{image-annotation-action-8a12e0bd.js → image-annotation-action-3da42221.js} +4 -4
  170. package/dist/esm/index-6e05b241.js +96 -0
  171. package/dist/esm/index.js +15 -13
  172. package/dist/esm/{internal-vega-event-manager-07e1b3d9.js → internal-vega-event-manager-0a01ba12.js} +1 -1
  173. package/dist/esm/loader.js +12 -10
  174. package/dist/esm/{node-annotation.abstract-af11b11b.js → node-annotation.abstract-b2e36bc4.js} +7 -61
  175. package/dist/esm/observer-3959f9dd.js +30 -0
  176. package/dist/esm/{remote-invocation-registry-d97fa3bc.js → remote-invocation-registry-1682b34e.js} +1 -1
  177. package/dist/esm/{responsive-format-facade-c2ab9c87.js → responsive-format-facade-661193d7.js} +1 -1
  178. package/dist/esm/{static-subject-title-e06a3840.js → static-subject-title-8268945e.js} +2 -1
  179. package/dist/esm/{string-input-formatter-slimmer-73fa06e6.js → string-input-formatter-slimmer-930f1125.js} +29 -36
  180. package/dist/esm/{style-formatter-f91471e8.js → style-formatter-4b857992.js} +1 -1
  181. package/dist/esm/{sub-state-notify-slimmer-7d5a295a.js → sub-state-notify-slimmer-51151fc3.js} +3 -2
  182. package/dist/esm/{sub-state-observer-slimmer-901c7953.js → sub-state-observer-slimmer-d77a1c46.js} +3 -2
  183. package/dist/esm/{translation-a98970d8.js → translation-c08f2274.js} +1 -1
  184. package/dist/esm/{translation-slimmer-5ee9912b.js → translation-slimmer-7974f30b.js} +1 -1
  185. package/dist/esm/vega-accordion.entry.js +8 -7
  186. package/dist/esm/vega-app-footer.entry.js +3 -0
  187. package/dist/esm/vega-app-header-button.entry.js +141 -38
  188. package/dist/esm/vega-banner.entry.js +5 -4
  189. package/dist/esm/vega-box.entry.js +3 -3
  190. package/dist/esm/vega-breadcrumb.entry.js +6 -5
  191. package/dist/esm/vega-button-circle.entry.js +9 -8
  192. package/dist/esm/vega-button-group_2.entry.js +9 -8
  193. package/dist/esm/vega-button-link.entry.js +7 -5
  194. package/dist/esm/vega-button.entry.js +8 -7
  195. package/dist/esm/vega-calendar_3.entry.js +288 -218
  196. package/dist/esm/vega-card.entry.js +2 -2
  197. package/dist/esm/vega-carousel.entry.js +6 -5
  198. package/dist/esm/vega-checkbox_2.entry.js +20 -12
  199. package/dist/esm/vega-chip.entry.js +8 -7
  200. package/dist/esm/vega-color-picker.entry.js +9 -8
  201. package/dist/esm/vega-combo-box.entry.js +10 -9
  202. package/dist/esm/vega-date-picker_2.entry.js +18 -16
  203. package/dist/esm/vega-dialog_2.entry.js +828 -377
  204. package/dist/esm/vega-divider.entry.js +2 -2
  205. package/dist/esm/vega-dropdown_5.entry.js +37 -16
  206. package/dist/esm/vega-env-manager-8f8dc473.js +2 -2
  207. package/dist/esm/vega-field-error.entry.js +1 -1
  208. package/dist/esm/vega-field-label.entry.js +5 -4
  209. package/dist/esm/vega-file-uploader.entry.js +10 -9
  210. package/dist/esm/vega-flex.entry.js +3 -3
  211. package/dist/esm/vega-font.entry.js +2 -2
  212. package/dist/esm/vega-form.entry.js +11 -10
  213. package/dist/esm/vega-grid.entry.js +2 -2
  214. package/dist/esm/vega-icon.entry.js +2 -2
  215. package/dist/esm/vega-image-uploader.entry.js +13 -11
  216. package/dist/esm/vega-input-credit-card.entry.js +10 -9
  217. package/dist/esm/vega-input-numeric.entry.js +11 -10
  218. package/dist/esm/vega-input-phone-number.entry.js +14 -10
  219. package/dist/esm/vega-input-range.entry.js +11 -10
  220. package/dist/esm/vega-input-select.entry.js +13 -12
  221. package/dist/esm/vega-input.entry.js +17 -12
  222. package/dist/esm/{vega-internal-event-id-458939b6.js → vega-internal-event-id-d0690d0d.js} +2 -1
  223. package/dist/esm/vega-item-toggle.entry.js +7 -4
  224. package/dist/esm/vega-left-nav_5.entry.js +24 -12
  225. package/dist/esm/vega-loader-wrapper_2.entry.js +1 -1
  226. package/dist/esm/vega-page-notification_2.entry.js +3 -2
  227. package/dist/esm/vega-pagination.entry.js +9 -8
  228. package/dist/esm/vega-popover_2.entry.js +10 -8
  229. package/dist/esm/vega-progress-tracker.entry.js +5 -4
  230. package/dist/esm/vega-radio_2.entry.js +12 -11
  231. package/dist/esm/vega-rich-text-content.entry.js +10 -8
  232. package/dist/esm/vega-rich-text-editor_4.entry.js +690 -420
  233. package/dist/esm/vega-segment-control.entry.js +5 -4
  234. package/dist/esm/vega-selection-chip_2.entry.js +13 -12
  235. package/dist/esm/vega-selection-tile_2.entry.js +13 -12
  236. package/dist/esm/vega-sidenav_3.entry.js +10 -9
  237. package/dist/esm/vega-signature-capture.entry.js +13 -11
  238. package/dist/esm/{vega-skeleton-loader-controller-0aaaf1fa.js → vega-skeleton-loader-controller-0044d77f.js} +1 -1
  239. package/dist/esm/vega-stepper.entry.js +10 -9
  240. package/dist/esm/vega-tab-group_2.entry.js +14 -11
  241. package/dist/esm/vega-table_8.entry.js +38 -19
  242. package/dist/esm/vega-textarea.entry.js +10 -9
  243. package/dist/esm/vega-time-picker_2.entry.js +13 -12
  244. package/dist/esm/vega-toggle-switch.entry.js +9 -8
  245. package/dist/esm/vega-tooltip_2.entry.js +5 -2
  246. package/dist/esm/vega.js +12 -10
  247. package/dist/types/components/vega-app-footer/vega-app-footer.d.ts +3 -0
  248. package/dist/types/components/vega-app-header-button/slimmers/renderers/vega-app-header-button-dropdown-renderer.d.ts +61 -0
  249. package/dist/types/components/vega-app-header-button/types.d.ts +1 -2
  250. package/dist/types/components/vega-app-header-button/vega-app-header-button.d.ts +2 -9
  251. package/dist/types/components/vega-box/vega-box.d.ts +10 -0
  252. package/dist/types/components/vega-button-circle/types.d.ts +1 -5
  253. package/dist/types/components/vega-button-circle/vega-button-circle.d.ts +1 -1
  254. package/dist/types/components/vega-button-link/vega-button-link.d.ts +1 -0
  255. package/dist/types/components/vega-calendar/slimmers/common/renderers/vega-calendar-view-renderer.d.ts +8 -0
  256. package/dist/types/components/vega-calendar/slimmers/day-view/renderers/vega-calendar-time-line-renderer.d.ts +0 -49
  257. package/dist/types/components/vega-calendar/slimmers/day-view/renderers/vega-calendar-time-marker-renderer.d.ts +69 -0
  258. package/dist/types/components/vega-calendar/slimmers/day-view/renderers/vega-calendar-view-with-time-renderer.d.ts +1 -0
  259. package/dist/types/components/vega-calendar/types.d.ts +3 -0
  260. package/dist/types/components/vega-calendar/vega-calendar.d.ts +2 -0
  261. package/dist/types/components/vega-checkbox/vega-checkbox.d.ts +2 -0
  262. package/dist/types/components/vega-combo-box/types.d.ts +1 -3
  263. package/dist/types/components/vega-dialog/types.d.ts +1 -6
  264. package/dist/types/components/vega-dropdown/slimmers/controllers/vega-dropdown-scrollable-controller.d.ts +4 -0
  265. package/dist/types/components/vega-dropdown/slimmers/renderers/vega-dropdown-list-renderer.d.ts +1 -0
  266. package/dist/types/components/vega-flex/vega-flex.d.ts +4 -0
  267. package/dist/types/components/vega-image-uploader/vega-image-uploader.d.ts +1 -0
  268. package/dist/types/components/vega-input/vega-input.d.ts +1 -1
  269. package/dist/types/components/vega-input-phone-number/vega-input-phone-number.d.ts +3 -0
  270. package/dist/types/components/vega-input-select/types.d.ts +2 -3
  271. package/dist/types/components/vega-input-select/vega-input-select.d.ts +1 -1
  272. package/dist/types/components/vega-item-toggle/vega-item-toggle.d.ts +2 -0
  273. package/dist/types/components/vega-modal/slimmers/controllers/vega-modal-backdrop-controller.d.ts +26 -0
  274. package/dist/types/components/vega-modal/slimmers/controllers/vega-modal-layout-controller.d.ts +38 -0
  275. package/dist/types/components/vega-modal/slimmers/controllers/vega-modal-mobile-controller.d.ts +27 -0
  276. package/dist/types/components/vega-modal/slimmers/controllers/vega-modal-open-state-controller.d.ts +65 -0
  277. package/dist/types/components/vega-modal/slimmers/controllers/vega-modal-opened-modal-stack-controller.d.ts +30 -0
  278. package/dist/types/components/vega-modal/slimmers/controllers/vega-modal-scroll-controller.d.ts +28 -0
  279. package/dist/types/components/vega-modal/slimmers/controllers/vega-modal-z-index-controller.d.ts +15 -0
  280. package/dist/types/components/vega-modal/slimmers/renderers/vega-modal-renderer.d.ts +33 -0
  281. package/dist/types/components/vega-modal/vega-modal.d.ts +16 -112
  282. package/dist/types/components/vega-nav/vega-left-nav-link/slimmers/renderers/vega-left-nav-link-renderer.d.ts +1 -0
  283. package/dist/types/components/vega-nav/vega-left-nav-link/vega-left-nav-link.d.ts +9 -1
  284. package/dist/types/components/vega-pagination/types.d.ts +1 -5
  285. package/dist/types/components/vega-pagination/vega-pagination.d.ts +1 -1
  286. package/dist/types/components/vega-rich-text-editor/interface.d.ts +1 -2
  287. package/dist/types/components/vega-rich-text-editor/slimmers/controllers/delete-selected-nodes-controller.d.ts +57 -0
  288. package/dist/types/components/vega-rich-text-editor/slimmers/controllers/helper/input-event-handler/base-handler.d.ts +11 -28
  289. package/dist/types/components/vega-rich-text-editor/slimmers/controllers/helper/input-event-handler/delete-content-handler.d.ts +4 -4
  290. package/dist/types/components/vega-rich-text-editor/slimmers/controllers/helper/input-event-handler/insert-line-break-handler.d.ts +1 -8
  291. package/dist/types/components/vega-rich-text-editor/slimmers/controllers/insert-composition-text-controller.d.ts +99 -0
  292. package/dist/types/components/vega-rich-text-editor/slimmers/controllers/selection-controller.d.ts +1 -0
  293. package/dist/types/components/vega-rich-text-editor/slimmers/controllers/user-input-controller.d.ts +2 -21
  294. package/dist/types/components/vega-rich-text-editor/vega-rich-text-editor.d.ts +7 -2
  295. package/dist/types/components/vega-selection-chip/vega-selection-chip.d.ts +1 -1
  296. package/dist/types/components/vega-signature-capture/vega-signature-capture.d.ts +1 -0
  297. package/dist/types/components/vega-tab-group/slimmers/vega-tab-group/renderers/vega-tab-group-close-button-renderer.d.ts +2 -1
  298. package/dist/types/components/vega-tab-group/types.d.ts +2 -5
  299. package/dist/types/components/vega-table/interface.d.ts +5 -2
  300. package/dist/types/components/vega-table/internal/vega-table-scrollable-container.d.ts +1 -0
  301. package/dist/types/components/vega-table/slimmers/renderers/vega-table-renderer.d.ts +1 -0
  302. package/dist/types/components/vega-table/slimmers/renderers/vega-table-scroll-container-renderer.d.ts +3 -0
  303. package/dist/types/components/vega-text/types.d.ts +1 -3
  304. package/dist/types/components.d.ts +77 -13
  305. package/dist/types/helpers/change-manager/subject/static-subject/static-subject-title.d.ts +2 -1
  306. package/dist/types/helpers/chart/bar-chart.d.ts +1 -2
  307. package/dist/types/helpers/dialog/vega-dialog-controller.d.ts +1 -2
  308. package/dist/types/helpers/event-manager/event-id/vega-internal-event-id.d.ts +1 -0
  309. package/dist/types/helpers/skeleton-loader/interface.d.ts +1 -3
  310. package/dist/types/helpers/slimmers/element-appender-slimmer.d.ts +16 -0
  311. package/dist/types/helpers/slimmers/string-input-formatter-slimmer.d.ts +6 -13
  312. package/dist/types/types/components.type.d.ts +1 -5
  313. package/dist/types/types/public-api.d.ts +26 -1
  314. package/dist/types/types/ui.type.d.ts +1 -1
  315. package/dist/vega/index.esm.js +1 -1
  316. package/dist/vega/p-0461e318.js +1 -0
  317. package/dist/vega/p-08bbc8e6.entry.js +1 -0
  318. package/dist/vega/p-12fe63c1.entry.js +1 -0
  319. package/dist/vega/p-1b67c443.entry.js +1 -0
  320. package/dist/vega/{p-0af4bda9.js → p-1b860f90.js} +1 -1
  321. package/dist/vega/p-1d53d434.entry.js +1 -0
  322. package/dist/vega/p-1d5fbccc.entry.js +1 -0
  323. package/dist/vega/p-23fd9401.entry.js +1 -0
  324. package/dist/vega/p-267cde46.entry.js +1 -0
  325. package/dist/vega/p-29d6ec6c.js +1 -0
  326. package/dist/vega/p-2f39ea18.entry.js +1 -0
  327. package/dist/vega/p-2fecbcf9.entry.js +1 -0
  328. package/dist/vega/p-331a62d5.js +1 -0
  329. package/dist/vega/{p-fe9644a0.js → p-348e95ba.js} +1 -1
  330. package/dist/vega/p-34bd9204.js +1 -0
  331. package/dist/vega/p-3cb90bdf.entry.js +1 -0
  332. package/dist/vega/p-3e8f9fcf.entry.js +1 -0
  333. package/dist/vega/{p-97453cd8.entry.js → p-4019a3ec.entry.js} +1 -1
  334. package/dist/vega/{p-d3d4bf51.entry.js → p-46359293.entry.js} +1 -1
  335. package/dist/vega/{p-de664bdd.js → p-483c483a.js} +1 -1
  336. package/dist/vega/p-497f2f86.entry.js +1 -0
  337. package/dist/vega/p-4ab0d645.js +1 -0
  338. package/dist/vega/{p-84f2f342.js → p-4c18ff36.js} +1 -1
  339. package/dist/vega/p-50eabdca.entry.js +1 -0
  340. package/dist/vega/p-52a8a4f8.js +1 -0
  341. package/dist/vega/{p-e8f540d8.js → p-57669fd6.js} +1 -1
  342. package/dist/vega/p-59b0f3c5.entry.js +1 -0
  343. package/dist/vega/p-5dce8dfe.js +1 -0
  344. package/dist/vega/p-5f377954.js +1 -1
  345. package/dist/vega/{p-72eee5e2.js → p-60fb1db7.js} +1 -1
  346. package/dist/vega/p-6100e1aa.js +1 -0
  347. package/dist/vega/p-6419e13e.entry.js +1 -0
  348. package/dist/vega/{p-cda26bdf.entry.js → p-644d7300.entry.js} +1 -1
  349. package/dist/vega/{p-81dbada7.js → p-666cd80f.js} +1 -1
  350. package/dist/vega/p-66b9e86d.entry.js +1 -0
  351. package/dist/vega/p-7198d675.entry.js +1 -0
  352. package/dist/vega/p-7baa4fae.entry.js +1 -0
  353. package/dist/vega/p-7c37e5bb.js +1 -0
  354. package/dist/vega/p-7edcb8d0.entry.js +1 -0
  355. package/dist/vega/{p-6705c68a.js → p-7f2441d6.js} +1 -1
  356. package/dist/vega/p-84a7c18a.entry.js +1 -0
  357. package/dist/vega/p-904b489a.entry.js +1 -0
  358. package/dist/vega/p-9689ad99.entry.js +1 -0
  359. package/dist/vega/p-9ab547b0.js +1 -0
  360. package/dist/vega/p-9b7f9c27.entry.js +1 -0
  361. package/dist/vega/{p-c51a3e3c.entry.js → p-9ce30868.entry.js} +1 -1
  362. package/dist/vega/{p-618b35e4.entry.js → p-9cfae00d.entry.js} +1 -1
  363. package/dist/vega/{p-0c2eb135.entry.js → p-9d19c126.entry.js} +1 -1
  364. package/dist/vega/{p-032ed643.entry.js → p-9eb90ee8.entry.js} +1 -1
  365. package/dist/vega/{p-4b500240.js → p-a190c86a.js} +1 -1
  366. package/dist/vega/p-a247e23c.entry.js +1 -0
  367. package/dist/vega/p-a7e078ac.entry.js +1 -0
  368. package/dist/vega/p-a7f40a65.entry.js +1 -0
  369. package/dist/vega/p-a8a809e1.entry.js +1 -0
  370. package/dist/vega/{p-83d87df5.js → p-a8b16ff2.js} +1 -1
  371. package/dist/vega/{p-0945a58d.entry.js → p-a98475a2.entry.js} +1 -1
  372. package/dist/vega/{p-be12fa36.js → p-ac608edc.js} +1 -1
  373. package/dist/vega/p-aed80794.entry.js +1 -0
  374. package/dist/vega/p-af7e6dfb.entry.js +1 -0
  375. package/dist/vega/p-b2d47bdd.js +1 -0
  376. package/dist/vega/p-b517ed15.js +1 -0
  377. package/dist/vega/p-b7e52da9.entry.js +1 -0
  378. package/dist/vega/{p-d09d153f.entry.js → p-b7ebb9fa.entry.js} +1 -1
  379. package/dist/vega/p-b809f3d7.entry.js +1 -0
  380. package/dist/vega/p-b9a0f136.entry.js +1 -0
  381. package/dist/vega/p-ba077ca8.entry.js +1 -0
  382. package/dist/vega/p-ba2833c0.entry.js +1 -0
  383. package/dist/vega/p-bf4996d5.entry.js +1 -0
  384. package/dist/vega/{p-c2b276f7.entry.js → p-c1f7f37c.entry.js} +1 -1
  385. package/dist/vega/p-cb4fd6e1.entry.js +1 -0
  386. package/dist/vega/p-cc8ec82c.entry.js +1 -0
  387. package/dist/vega/p-d638f007.entry.js +1 -0
  388. package/dist/vega/p-d7219734.js +1 -0
  389. package/dist/vega/p-da66dad5.entry.js +1 -0
  390. package/dist/vega/p-ddac683a.entry.js +1 -0
  391. package/dist/vega/p-e4ca75a7.entry.js +1 -0
  392. package/dist/vega/p-e6fdc69f.entry.js +1 -0
  393. package/dist/vega/p-e95668f3.entry.js +1 -0
  394. package/dist/vega/p-e9785742.entry.js +1 -0
  395. package/dist/vega/p-e9a5bd12.entry.js +1 -0
  396. package/dist/vega/p-ebc062f6.entry.js +1 -0
  397. package/dist/vega/p-ec4de3ec.js +1 -0
  398. package/dist/vega/p-ee2e4bff.entry.js +1 -0
  399. package/dist/vega/p-f86ec91b.js +1 -0
  400. package/dist/vega/vega.esm.js +1 -1
  401. package/package.json +1 -1
  402. package/dist/vega/p-01d0dbe6.entry.js +0 -1
  403. package/dist/vega/p-09c5de7f.entry.js +0 -1
  404. package/dist/vega/p-12ad8ada.entry.js +0 -1
  405. package/dist/vega/p-13ce8d87.entry.js +0 -1
  406. package/dist/vega/p-14f85e30.entry.js +0 -1
  407. package/dist/vega/p-1d805cc0.entry.js +0 -1
  408. package/dist/vega/p-211df22a.entry.js +0 -1
  409. package/dist/vega/p-26af2a8b.js +0 -1
  410. package/dist/vega/p-29b09aad.js +0 -1
  411. package/dist/vega/p-2fbda931.js +0 -1
  412. package/dist/vega/p-2ff936da.entry.js +0 -1
  413. package/dist/vega/p-3126edd6.entry.js +0 -1
  414. package/dist/vega/p-317c72e4.entry.js +0 -1
  415. package/dist/vega/p-349dd552.js +0 -1
  416. package/dist/vega/p-36ad5ee1.entry.js +0 -1
  417. package/dist/vega/p-42465abc.entry.js +0 -1
  418. package/dist/vega/p-43b6aced.entry.js +0 -1
  419. package/dist/vega/p-441c9c90.entry.js +0 -1
  420. package/dist/vega/p-446c691b.js +0 -1
  421. package/dist/vega/p-45dd4698.entry.js +0 -1
  422. package/dist/vega/p-4d307520.entry.js +0 -1
  423. package/dist/vega/p-524ff1a3.entry.js +0 -1
  424. package/dist/vega/p-558450ba.entry.js +0 -1
  425. package/dist/vega/p-589530e4.entry.js +0 -1
  426. package/dist/vega/p-5ae1a322.entry.js +0 -1
  427. package/dist/vega/p-61116634.entry.js +0 -1
  428. package/dist/vega/p-61cffe6a.entry.js +0 -1
  429. package/dist/vega/p-68f0aa72.entry.js +0 -1
  430. package/dist/vega/p-6a3989dd.js +0 -1
  431. package/dist/vega/p-6bf28253.entry.js +0 -1
  432. package/dist/vega/p-6c09b79a.entry.js +0 -1
  433. package/dist/vega/p-6df81ec2.entry.js +0 -1
  434. package/dist/vega/p-75bca1c6.js +0 -1
  435. package/dist/vega/p-7b72dc7a.entry.js +0 -1
  436. package/dist/vega/p-8a77ff64.entry.js +0 -1
  437. package/dist/vega/p-8ab356e8.entry.js +0 -1
  438. package/dist/vega/p-906991ec.entry.js +0 -1
  439. package/dist/vega/p-92707b74.entry.js +0 -1
  440. package/dist/vega/p-96389073.entry.js +0 -1
  441. package/dist/vega/p-983c7d9b.js +0 -1
  442. package/dist/vega/p-9ec7d6c4.entry.js +0 -1
  443. package/dist/vega/p-a213b305.entry.js +0 -1
  444. package/dist/vega/p-a956561e.entry.js +0 -1
  445. package/dist/vega/p-b0c6cc78.entry.js +0 -1
  446. package/dist/vega/p-b1524c6c.js +0 -1
  447. package/dist/vega/p-b6815874.js +0 -1
  448. package/dist/vega/p-b688a71b.js +0 -1
  449. package/dist/vega/p-bd2cdf10.entry.js +0 -1
  450. package/dist/vega/p-c06e55d6.js +0 -1
  451. package/dist/vega/p-cb8f8458.entry.js +0 -1
  452. package/dist/vega/p-cea7506a.entry.js +0 -1
  453. package/dist/vega/p-cff45d92.entry.js +0 -1
  454. package/dist/vega/p-d057999f.js +0 -1
  455. package/dist/vega/p-d994874a.entry.js +0 -1
  456. package/dist/vega/p-df4142dd.entry.js +0 -1
  457. package/dist/vega/p-df9dbe2d.entry.js +0 -1
  458. package/dist/vega/p-ebb30774.entry.js +0 -1
  459. package/dist/vega/p-eed64b78.entry.js +0 -1
  460. package/dist/vega/p-efbea85a.entry.js +0 -1
  461. package/dist/vega/p-f7fdf737.entry.js +0 -1
@@ -267,7 +267,7 @@ export class VegaRadioGroup {
267
267
  "mutable": false,
268
268
  "complexType": {
269
269
  "original": "VegaFlexProps",
270
- "resolved": "{ direction?: ResponsiveType<\"row\" | \"col\" | \"row-reverse\" | \"col-reverse\">; alignItems?: ResponsiveType<FlexAlignItemType>; gap?: ResponsiveType<GapType>; justifyContent?: ResponsiveType<FlexJustifyContentType>; margin?: ResponsiveType<MarginType>; }",
270
+ "resolved": "{ direction?: ResponsiveType<\"row\" | \"col\" | \"row-reverse\" | \"col-reverse\">; gap?: ResponsiveType<GapType>; alignItems?: ResponsiveType<FlexAlignItemType>; justifyContent?: ResponsiveType<FlexJustifyContentType>; margin?: ResponsiveType<MarginType>; }",
271
271
  "references": {
272
272
  "VegaFlexProps": {
273
273
  "location": "import",
@@ -13,6 +13,9 @@
13
13
  position: relative;
14
14
  display: inline-flex;
15
15
  gap: 8px;
16
+ cursor: not-allowed;
17
+ }
18
+ .vega-radio-container:not(.vega-radio-disabled) {
16
19
  cursor: pointer;
17
20
  }
18
21
 
@@ -0,0 +1,190 @@
1
+ var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
2
+ var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
3
+ if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
4
+ else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
5
+ return c > 3 && r && Object.defineProperty(target, key, r), r;
6
+ };
7
+ import { VegaSlimmer, MapToComponentField, MapToComponentMethod } from 'vega-slimmer/core';
8
+ import { DomNodeSubjectObserverFactory } from '../../../../helpers/change-manager/subject/dom-node-subject/dom-node-subject-observer-factory';
9
+ import { VegaInternalRichTextEditDeleteSelectedNodes } from '../../../../helpers/event-manager/event-id/vega-internal-event-id';
10
+ import { RTETextNode } from '../../dto/nodes/text-node';
11
+ import { RemoveChildAction } from '../../dto/actions/remove-child-action';
12
+ import { ReplaceSelectedTextAction } from '../../dto/actions/replace-selected-text-action';
13
+ import { RTEImageNode } from '../../dto/nodes/image-node';
14
+ import { RTETextBlock } from '../../dto/blocks/text-block';
15
+ import { InsertBlocksBeforeAction } from '../../dto/actions/insert-blocks-before-block';
16
+ import { generateUUID } from '../../../../utils/misc';
17
+ import { AppendChildNodesAction } from '../../dto/actions/append-child-nodes-action';
18
+ import { UpdateTextAction } from '../../dto/actions/update-text-action';
19
+ /**
20
+ * The `DeleteSelectedNodesController` class provides methods to delete selected nodes.
21
+ */
22
+ export class DeleteSelectedNodesController extends VegaSlimmer {
23
+ constructor() {
24
+ super(...arguments);
25
+ /**
26
+ * Deletes the selected nodes.
27
+ *
28
+ * @param {NotifyObserverPayload<boolean>} payload The notify payload
29
+ * @param {boolean} payload.detail The delete process need merge start node and end node or not, default value is true.
30
+ */
31
+ this.deleteActionProcess = (payload) => {
32
+ const range = this.selectionController.getCurrentRange();
33
+ const { startContainer, endContainer, startOffset, endOffset } = range;
34
+ if (startContainer !== endContainer || startOffset !== endOffset) {
35
+ const cursorNode = this.removeSelectionRange();
36
+ const mergeStartAndEndFlag = payload && payload.detail ? payload.detail : false;
37
+ if (mergeStartAndEndFlag) {
38
+ this.mergeRangeStartAndEnd(startContainer, endContainer);
39
+ }
40
+ this.selectionController.enqueueSelectionRangeFutureState(cursorNode, range.startOffset);
41
+ }
42
+ };
43
+ }
44
+ /**
45
+ * Adds the observer to the host element.
46
+ */
47
+ addDeleteObserver() {
48
+ DomNodeSubjectObserverFactory.addUniqueObserverToNode(this.host, VegaInternalRichTextEditDeleteSelectedNodes, this.deleteActionProcess);
49
+ }
50
+ /**
51
+ * Removes the observer from the host element.
52
+ */
53
+ removeDeleteObserver() {
54
+ DomNodeSubjectObserverFactory.removeUniqueObserverFromNode(this.host, VegaInternalRichTextEditDeleteSelectedNodes);
55
+ }
56
+ /**
57
+ * Removes selected nodes within a range in a rich text editor content.
58
+ * The method is only used for different nodes are selected
59
+ *
60
+ * @returns {RTENode} The range start node, usually the start node is the first item of selectedNodes, if the selectedNodes is all removed, the start node will be a new text node.
61
+ */
62
+ removeSelectionRange() {
63
+ const range = this.selectionController.getCurrentRange();
64
+ const selectedNodes = this.selectionController.getSelectedNodes();
65
+ const { endOffset, startOffset } = range;
66
+ const startNode = selectedNodes[0];
67
+ const endNode = selectedNodes[selectedNodes.length - 1];
68
+ if (selectedNodes.length > 1) {
69
+ // Remove all selected nodes except start node and end node(the end image node will be removed), the start node need to get the index of the block
70
+ const shouldRemovedItems = selectedNodes.filter((item) => {
71
+ if (item.type !== 'IMAGE') {
72
+ return item !== startNode && item !== endNode;
73
+ }
74
+ else {
75
+ return item !== startNode && (item !== endNode || (item === endNode && endOffset !== 0));
76
+ }
77
+ });
78
+ shouldRemovedItems.forEach((item) => {
79
+ item.parentBlock.apply(new RemoveChildAction(item));
80
+ });
81
+ }
82
+ this.removeRangeStartAndEndSelectedText();
83
+ /**
84
+ * if the range start node is image and the item is selected, so we need remove the image item, the image block will be removed if the item is the only item.
85
+ * but before remove the image block, we need insert a paragraph to make sure the start block and start node could be get correct before insert text or break paragraph action
86
+ */
87
+ if (startNode instanceof RTEImageNode &&
88
+ startOffset !== 1 &&
89
+ (endNode !== startNode || endOffset !== 0)) {
90
+ // the image block will be deleted when the image is the only item
91
+ if (startNode.parentBlock.nodes.length === 1) {
92
+ const paragraph = this.createEmptyParagraph();
93
+ startNode.parentBlock.parent.apply(new InsertBlocksBeforeAction(startNode.parentBlock, paragraph));
94
+ startNode.parentBlock.apply(new RemoveChildAction(startNode));
95
+ return paragraph.nodes[0];
96
+ }
97
+ else if (startNode === startNode.parentBlock.nodes[0]) {
98
+ // the start node should be the next image item if the image is first item
99
+ startNode.parentBlock.apply(new RemoveChildAction(startNode));
100
+ return startNode.parentBlock.nodes[0];
101
+ }
102
+ }
103
+ return startNode;
104
+ }
105
+ /**
106
+ * Removes the selected text at the start and end of a range in a Rich Text Editor.
107
+ */
108
+ removeRangeStartAndEndSelectedText() {
109
+ const selectedNodes = this.selectionController.getSelectedNodes();
110
+ const currentRange = this.selectionController.getCurrentRange();
111
+ if (selectedNodes[0] instanceof RTETextNode) {
112
+ selectedNodes[0].apply(new ReplaceSelectedTextAction('', currentRange));
113
+ }
114
+ if (selectedNodes.length > 1 && selectedNodes[selectedNodes.length - 1] instanceof RTETextNode) {
115
+ selectedNodes[selectedNodes.length - 1].apply(new ReplaceSelectedTextAction('', currentRange));
116
+ }
117
+ }
118
+ /**
119
+ * Creates a new paragraph with an empty text node and returns it.
120
+ *
121
+ * @returns {RTETextBlock} An empty paragraph with a unique identifier and a text node appended to it.
122
+ */
123
+ createEmptyParagraph() {
124
+ const paragraph = new RTETextBlock(generateUUID(), 'paragraph');
125
+ const textNode = new RTETextNode(`${paragraph.id}1`, '', paragraph);
126
+ paragraph.apply(new AppendChildNodesAction([textNode]));
127
+ return paragraph;
128
+ }
129
+ /**
130
+ * Merges text nodes in a rich text editor.
131
+ *
132
+ * @param {Node} startContainer - Start text node element
133
+ * @param {Node} endContainer - End text node element
134
+ */
135
+ mergeRangeStartAndEnd(startContainer, endContainer) {
136
+ if (startContainer !== endContainer) {
137
+ if (startContainer.nodeType === Node.TEXT_NODE && endContainer.nodeType === Node.TEXT_NODE) {
138
+ const selectedNodes = this.selectionController.getSelectedNodes();
139
+ const startRTENode = selectedNodes[0];
140
+ const endRTENode = selectedNodes[selectedNodes.length - 1];
141
+ if (startRTENode && startRTENode.parentBlock && endRTENode && endRTENode.parentBlock) {
142
+ const endBlock = endRTENode.parentBlock;
143
+ if (this.shouldMergeTextNode(startRTENode, endRTENode)) {
144
+ startRTENode.apply(new UpdateTextAction(startRTENode.text + endRTENode.text));
145
+ if (startRTENode.parentBlock === endRTENode.parentBlock) {
146
+ startRTENode.parentBlock.apply(new RemoveChildAction(endRTENode));
147
+ }
148
+ else {
149
+ endRTENode.parentBlock.apply(new RemoveChildAction(endRTENode.parentBlock.nodes[0]));
150
+ }
151
+ }
152
+ if (startRTENode.parentBlock !== endRTENode.parentBlock) {
153
+ startRTENode.parentBlock.apply(new AppendChildNodesAction(endBlock.nodes));
154
+ endBlock.nodes = [];
155
+ }
156
+ if (endBlock.nodes.length < 1) {
157
+ endBlock.parent.apply(new RemoveChildAction(endBlock));
158
+ }
159
+ }
160
+ }
161
+ }
162
+ }
163
+ /**
164
+ * Compares the annotations of two RTETextNodes to determine if they can be merged.
165
+ *
166
+ * @param {RTETextNode} nodeA - node A
167
+ * @param {RTETextNode} nodeB - node B
168
+ * @returns {boolean} true or false
169
+ */
170
+ shouldMergeTextNode(nodeA, nodeB) {
171
+ const { annotations: annotationsA } = nodeA.toJSON();
172
+ const { annotations: annotationsB } = nodeB.toJSON();
173
+ return JSON.stringify(annotationsA) === JSON.stringify(annotationsB);
174
+ }
175
+ }
176
+ __decorate([
177
+ MapToComponentField()
178
+ ], DeleteSelectedNodesController.prototype, "host", void 0);
179
+ __decorate([
180
+ MapToComponentField()
181
+ ], DeleteSelectedNodesController.prototype, "selectionController", void 0);
182
+ __decorate([
183
+ MapToComponentField()
184
+ ], DeleteSelectedNodesController.prototype, "value", void 0);
185
+ __decorate([
186
+ MapToComponentMethod('connectedCallback')
187
+ ], DeleteSelectedNodesController.prototype, "addDeleteObserver", null);
188
+ __decorate([
189
+ MapToComponentMethod('disconnectedCallback')
190
+ ], DeleteSelectedNodesController.prototype, "removeDeleteObserver", null);
@@ -1,11 +1,9 @@
1
+ import changeManager from '../../../../../../helpers/change-manager/change-manager';
2
+ import domNodeSubjectFactory from '../../../../../../helpers/change-manager/subject/dom-node-subject/dom-node-subject-factory';
3
+ import { VegaInternalRichTextEditDeleteSelectedNodes } from '../../../../../../helpers/event-manager/event-id/vega-internal-event-id';
1
4
  import { generateUUID } from '../../../../../../utils/misc';
2
5
  import { AppendChildNodesAction } from '../../../../dto/actions/append-child-nodes-action';
3
- import { InsertBlocksBeforeAction } from '../../../../dto/actions/insert-blocks-before-block';
4
- import { RemoveChildAction } from '../../../../dto/actions/remove-child-action';
5
- import { ReplaceSelectedTextAction } from '../../../../dto/actions/replace-selected-text-action';
6
- import { UpdateTextAction } from '../../../../dto/actions/update-text-action';
7
6
  import { RTETextBlock } from '../../../../dto/blocks/text-block';
8
- import { RTEImageNode } from '../../../../dto/nodes/image-node';
9
7
  import { RTETextNode } from '../../../../dto/nodes/text-node';
10
8
  const ROOT_CONTAINER_CLASS_NAME = 'rich-text-content';
11
9
  /** This code snippet is defining an abstract class named `BaseHandler` with an abstract method `execute`. */
@@ -15,30 +13,14 @@ export class BaseHandler {
15
13
  *
16
14
  * @param {VegaRTEContent} currentState - The current state of the VegaRTE content.
17
15
  * @param {SelectionController} selectionController - Manages the selection of items in the user interface.
16
+ * @param {HTMLElement} richTextEditor - The current rich text editor component
18
17
  * @param {InputEvent} [event] - It is used to pass an input event to the method for handling.
19
18
  */
20
- execute(currentState, selectionController, event) {
19
+ execute(currentState, selectionController, richTextEditor, event) {
21
20
  this.initCurrentStateAndSelection(currentState, selectionController);
21
+ this.setCurrentRichTextEditor(richTextEditor);
22
22
  this.handleEvent(event);
23
23
  }
24
- /**
25
- * Replaces the selected nodes with the provided text.
26
- *
27
- * @param {string} text - The insert text
28
- * @returns {RTENode} - The selected start node
29
- */
30
- replaceSelectedNodesWithText(text) {
31
- const selectedNodes = this.selectionController.getSelectedNodes();
32
- const range = this.selectionController.getCurrentRange();
33
- const { startContainer, endContainer } = range;
34
- const result = this.removeSelectionRange();
35
- const startNode = selectedNodes[0];
36
- if (startNode instanceof RTETextNode && text) {
37
- startNode.apply(new UpdateTextAction(startNode.text + text));
38
- }
39
- this.mergeRangeStartAndEnd(startContainer, endContainer);
40
- return result;
41
- }
42
24
  /**
43
25
  * The function `isRootContainer` checks if an HTML element is a root container with a class of 'rich-text-content'.
44
26
  *
@@ -59,101 +41,18 @@ export class BaseHandler {
59
41
  isEmptyParagraph(node) {
60
42
  return node && node.childNodes && node.childNodes.length === 0;
61
43
  }
62
- /**
63
- * Removes the selected text at the start and end of a range in a Rich Text Editor.
64
- */
65
- removeRangeStartAndEndSelectedText() {
66
- const selectedNodes = this.selectionController.getSelectedNodes();
67
- const currentRange = this.selectionController.getCurrentRange();
68
- if (selectedNodes[0] instanceof RTETextNode) {
69
- selectedNodes[0].apply(new ReplaceSelectedTextAction('', currentRange));
70
- }
71
- if (selectedNodes.length > 1 && selectedNodes[selectedNodes.length - 1] instanceof RTETextNode) {
72
- selectedNodes[selectedNodes.length - 1].apply(new ReplaceSelectedTextAction('', currentRange));
73
- }
74
- }
75
- /**
76
- * Merges text nodes in a rich text editor.
77
- *
78
- * @param {Node} startContainer - Start text node element
79
- * @param {Node} endContainer - End text node element
80
- */
81
- mergeRangeStartAndEnd(startContainer, endContainer) {
82
- if (startContainer !== endContainer) {
83
- if (startContainer.nodeType === Node.TEXT_NODE && endContainer.nodeType === Node.TEXT_NODE) {
84
- const selectedNodes = this.selectionController.getSelectedNodes();
85
- const startRTENode = selectedNodes[0];
86
- const endRTENode = selectedNodes[selectedNodes.length - 1];
87
- if (startRTENode && startRTENode.parentBlock && endRTENode && endRTENode.parentBlock) {
88
- const endBlock = endRTENode.parentBlock;
89
- if (this.shouldMergeTextNode(startRTENode, endRTENode)) {
90
- startRTENode.apply(new UpdateTextAction(startRTENode.text + endRTENode.text));
91
- if (startRTENode.parentBlock === endRTENode.parentBlock) {
92
- startRTENode.parentBlock.apply(new RemoveChildAction(endRTENode));
93
- }
94
- else {
95
- endRTENode.parentBlock.apply(new RemoveChildAction(endRTENode.parentBlock.nodes[0]));
96
- }
97
- }
98
- if (startRTENode.parentBlock !== endRTENode.parentBlock) {
99
- startRTENode.parentBlock.apply(new AppendChildNodesAction(endBlock.nodes));
100
- endBlock.nodes = [];
101
- }
102
- if (endBlock.nodes.length < 1) {
103
- endBlock.parent.apply(new RemoveChildAction(endBlock));
104
- }
105
- }
106
- }
107
- }
108
- }
109
44
  /**
110
45
  * Removes selected nodes within a range in a rich text editor content.
111
46
  * The method is only used for different nodes are selected
112
47
  *
48
+ * @param {boolean} [mergeNode] Merge start node and end node or not, default value is false.
113
49
  * @returns {RTENode} The range start node, usually the start node is the first item of selectedNodes, if the selectedNodes is all removed, the start node will be a new text node.
114
50
  */
115
- removeSelectionRange() {
51
+ removeSelectionRange(mergeNode = false) {
52
+ changeManager.notify(domNodeSubjectFactory.getSubject(this.richTextEditorRef, VegaInternalRichTextEditDeleteSelectedNodes), { host: this.richTextEditorRef, detail: mergeNode });
116
53
  const range = this.selectionController.getCurrentRange();
117
54
  const selectedNodes = this.selectionController.getSelectedNodes();
118
- const { endOffset, startOffset } = range;
119
- const startNode = selectedNodes[0];
120
- const endNode = selectedNodes[selectedNodes.length - 1];
121
- if (selectedNodes.length > 1) {
122
- // Remove all selected nodes except start node and end node(the end image node will be removed), the start node need to get the index of the block
123
- const shouldRemovedItems = selectedNodes.filter((item) => {
124
- if (item.type !== 'IMAGE') {
125
- return item !== startNode && item !== endNode;
126
- }
127
- else {
128
- return item !== startNode && (item !== endNode || (item === endNode && endOffset !== 0));
129
- }
130
- });
131
- shouldRemovedItems.forEach((item) => {
132
- item.parentBlock.apply(new RemoveChildAction(item));
133
- });
134
- }
135
- this.removeRangeStartAndEndSelectedText();
136
- /**
137
- * if the range start node is image and the item is selected, so we need remove the image item, the image block will be removed if the item is the only item.
138
- * but before remove the image block, we need insert a paragraph to make sure the start block and start node could be get correct before insert text or break paragraph action
139
- */
140
- if (startNode instanceof RTEImageNode &&
141
- startOffset !== 1 &&
142
- (endNode !== startNode || endOffset !== 0)) {
143
- // the image block will be deleted when the image is the only item
144
- if (startNode.parentBlock.nodes.length === 1) {
145
- const paragraph = this.createEmptyParagraph();
146
- startNode.parentBlock.parent.apply(new InsertBlocksBeforeAction(startNode.parentBlock, paragraph));
147
- startNode.parentBlock.apply(new RemoveChildAction(startNode));
148
- return paragraph.nodes[0];
149
- }
150
- else if (startNode === startNode.parentBlock.nodes[0]) {
151
- // the start node should be the next image item if the image is first item
152
- startNode.parentBlock.apply(new RemoveChildAction(startNode));
153
- return startNode.parentBlock.nodes[0];
154
- }
155
- }
156
- return startNode;
55
+ return range.startNode || selectedNodes[0];
157
56
  }
158
57
  /**
159
58
  * Creates a new paragraph with an empty text node and returns it.
@@ -166,18 +65,6 @@ export class BaseHandler {
166
65
  paragraph.apply(new AppendChildNodesAction([textNode]));
167
66
  return paragraph;
168
67
  }
169
- /**
170
- * Compares the annotations of two RTETextNodes to determine if they can be merged.
171
- *
172
- * @param {RTETextNode} nodeA - node A
173
- * @param {RTETextNode} nodeB - node B
174
- * @returns {boolean} true or false
175
- */
176
- shouldMergeTextNode(nodeA, nodeB) {
177
- const { annotations: annotationsA } = nodeA.toJSON();
178
- const { annotations: annotationsB } = nodeB.toJSON();
179
- return JSON.stringify(annotationsA) === JSON.stringify(annotationsB);
180
- }
181
68
  /**
182
69
  * The function initializes the current state and selection controller in TypeScript.
183
70
  *
@@ -188,4 +75,12 @@ export class BaseHandler {
188
75
  this.currentState = currentState;
189
76
  this.selectionController = selectionController;
190
77
  }
78
+ /**
79
+ * Queries the rich text editor element from the input event target.
80
+ *
81
+ * @param {HTMLElement} richTextEditor - The current rich text editor component
82
+ */
83
+ setCurrentRichTextEditor(richTextEditor) {
84
+ this.richTextEditorRef = richTextEditor;
85
+ }
191
86
  }
@@ -49,21 +49,12 @@ export class DeleteContentHandler extends BaseHandler {
49
49
  }
50
50
  }
51
51
  }
52
- /**
53
- * Creates a new paragraph element with a text node and appends it to the current state.
54
- */
55
- insertDefaultParagraph() {
56
- const paragraph = this.createEmptyParagraph();
57
- this.currentState.apply(new AppendChildNodesAction([paragraph]));
58
- this.selectionController.enqueueSelectionRangeFutureState(paragraph.nodes[0], 1);
59
- }
60
52
  /**
61
53
  * Deletes the content within multiple nodes selected by the user.
62
54
  */
63
55
  deleteContentWithMultipleNodes() {
64
- const range = this.selectionController.getCurrentRange();
65
56
  const selectedNodes = this.selectionController.getSelectedNodes();
66
- const cursorNode = this.replaceSelectedNodesWithText('');
57
+ const cursorNode = this.removeSelectionRange(true);
67
58
  const lastSelectedNode = selectedNodes[selectedNodes.length - 1];
68
59
  if (selectedNodes.length > 1 &&
69
60
  lastSelectedNode instanceof RTETextNode &&
@@ -71,7 +62,6 @@ export class DeleteContentHandler extends BaseHandler {
71
62
  lastSelectedNode.parentBlock.apply(new RemoveChildAction(lastSelectedNode));
72
63
  }
73
64
  this.convertFirstBlockToParagraph(cursorNode.parentBlock);
74
- this.selectionController.enqueueSelectionRangeFutureState(cursorNode, range.startOffset);
75
65
  }
76
66
  /**
77
67
  * If the first block is not paragraph, convert the block to paragraph after delete all text
@@ -91,6 +81,14 @@ export class DeleteContentHandler extends BaseHandler {
91
81
  block.parent.apply(new RemoveChildAction(block));
92
82
  }
93
83
  }
84
+ /**
85
+ * Creates a new paragraph element with a text node and appends it to the current state.
86
+ */
87
+ insertDefaultParagraph() {
88
+ const paragraph = this.createEmptyParagraph();
89
+ this.currentState.apply(new AppendChildNodesAction([paragraph]));
90
+ this.selectionController.enqueueSelectionRangeFutureState(paragraph.nodes[0], 1);
91
+ }
94
92
  /**
95
93
  * Returns the end offset of a given node in a Rich Text Editor based on its type and text content.
96
94
  *
@@ -1,8 +1,5 @@
1
1
  import { BaseHandler } from './base-handler';
2
- import { RTETextNode } from '../../../../dto/nodes/text-node';
3
- import { generateUUID } from '../../../../../../utils/misc';
4
2
  import { RTETextBlock } from '../../../../dto/blocks/text-block';
5
- import { AppendChildNodesAction } from '../../../../dto/actions/append-child-nodes-action';
6
3
  import { LineBreakSingleBlockAction } from '../../../../dto/actions/line-break-single-block-action';
7
4
  import { lineBreakMultipleBlocksAction } from '../../../../dto/actions/line-break-multiple-block-action';
8
5
  /** User press shift + enter will tigger this callback */
@@ -31,11 +28,13 @@ export class InsertLineBreakHandler extends BaseHandler {
31
28
  * </p>
32
29
  */
33
30
  breakNewBlock() {
34
- const newBlock = new RTETextBlock(generateUUID(), 'paragraph');
35
- const lineBreakNode = this.createLineBreakNode(newBlock);
36
- newBlock.apply(new AppendChildNodesAction([this.createLineBreakNode(newBlock), lineBreakNode]));
37
- this.currentState.apply(new AppendChildNodesAction([newBlock]));
38
- this.switchCaretPositionToSpecifiedNode(lineBreakNode);
31
+ if (this.currentState &&
32
+ this.currentState.blocks[0] &&
33
+ this.currentState.blocks[0] instanceof RTETextBlock) {
34
+ const lineBreakAction = new LineBreakSingleBlockAction(this.currentState.blocks[0].nodes[0], 0);
35
+ this.currentState.blocks[0].apply(lineBreakAction);
36
+ this.switchCaretPositionToSpecifiedNode(lineBreakAction.lineBreakNode);
37
+ }
39
38
  }
40
39
  /**
41
40
  * If the selected node is a text node
@@ -72,7 +71,7 @@ export class InsertLineBreakHandler extends BaseHandler {
72
71
  /**
73
72
  * Moves the caret to the next node element in a rich text editor.
74
73
  *
75
- * @param {RTETextNode} lineBreakNode - Represents a node element in a rich text editor.
74
+ * @param {RTENode} lineBreakNode - Represents a node element in a rich text editor.
76
75
  */
77
76
  switchCaretPositionToSpecifiedNode(lineBreakNode) {
78
77
  this.selectionController.enqueueSelectionRangeFutureState(this.getNextRTENode(lineBreakNode), 0);
@@ -88,13 +87,4 @@ export class InsertLineBreakHandler extends BaseHandler {
88
87
  const nextNode = lineBreakNode.parentBlock['nodes'][index + 1];
89
88
  return nextNode || lineBreakNode;
90
89
  }
91
- /**
92
- * Create a null text that will render a br element in a rich text editor.
93
- *
94
- * @param {RTEBlock} block - Represents a block element in a rich text editor.
95
- * @returns {RTETextNode} the new line break node.
96
- */
97
- createLineBreakNode(block) {
98
- return new RTETextNode(generateUUID(), '\n', block);
99
- }
100
90
  }
@@ -45,8 +45,8 @@ export class InsertPasteHandler extends BaseHandler {
45
45
  */
46
46
  insertBlocksToContent(blocks) {
47
47
  const cursorNode = this.removeSelectionRange();
48
- const currentBlock = cursorNode === null || cursorNode === void 0 ? void 0 : cursorNode.parentBlock;
49
- if (currentBlock) {
48
+ if (cursorNode && cursorNode.parentBlock) {
49
+ const currentBlock = cursorNode.parentBlock;
50
50
  const { startOffset } = this.selectionController.getCurrentRange();
51
51
  const breakAction = new SplitBlockWithNodeAction(cursorNode, startOffset);
52
52
  currentBlock.apply(breakAction);
@@ -48,10 +48,11 @@ export class InsertTextHandler extends BaseHandler {
48
48
  }
49
49
  else {
50
50
  // The selected nodes is multiple nodes
51
- const cursorNode = this.replaceSelectedNodesWithText(text);
52
- this.selectionController.enqueueSelectionRangeFutureState(cursorNode, cursorNode instanceof RTETextNode
53
- ? Math.min(startOffset + text.length, cursorNode.text.length)
54
- : startOffset);
51
+ const cursorNode = this.removeSelectionRange(true);
52
+ if (cursorNode instanceof RTETextNode) {
53
+ cursorNode.apply(new ReplaceSelectedTextAction(text, currentRange));
54
+ this.selectionController.enqueueSelectionRangeFutureState(cursorNode, Math.min(startOffset + text.length, cursorNode.text.length));
55
+ }
55
56
  }
56
57
  }
57
58
  /**