@globalpayments/vega 2.34.1 → 2.35.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 (515) hide show
  1. package/dist/cjs/{app-globals-48582633.js → app-globals-fb3693cc.js} +22 -21
  2. package/dist/cjs/{change-manager-bda1d107.js → change-manager-a297e4d2.js} +1 -1
  3. package/dist/cjs/{child-nodes-event-prevent-slimmer-e1a6e5ad.js → child-nodes-event-prevent-slimmer-96c3c4ae.js} +3 -3
  4. package/dist/cjs/{child-nodes-notify-observer-slimmer-03a3f79e.js → child-nodes-notify-observer-slimmer-be92f366.js} +5 -5
  5. package/dist/cjs/{component-63af66ea.js → component-73a88c4e.js} +1 -1
  6. package/dist/cjs/{component-global-style-slimmer-6b64a26c.js → component-global-style-slimmer-6749808c.js} +1 -1
  7. package/dist/cjs/{component-usage-runtime-metrics-019d3c00.js → component-usage-runtime-metrics-dcb32c24.js} +1 -1
  8. package/dist/cjs/content-state-3e4467a3.js +134 -0
  9. package/dist/cjs/{create-public-api-runtime-metrics-slimmer-8c6a8fb7.js → create-public-api-runtime-metrics-slimmer-54c3f73b.js} +2 -2
  10. package/dist/cjs/{date-ffe382a4.js → date-0a6bb035.js} +1 -1
  11. package/dist/cjs/{deprecated-property-slimmer-f36e3779.js → deprecated-property-slimmer-fc729fd9.js} +2 -2
  12. package/dist/cjs/{design-token-908e3f69.js → design-token-30c069c1.js} +3 -3
  13. package/dist/cjs/{dom-node-subject-observer-factory-093462f1.js → dom-node-subject-factory-3ec114b8.js} +1 -41
  14. package/dist/cjs/dom-node-subject-observer-factory-5f0eae19.js +44 -0
  15. package/dist/cjs/{dynamic-slimmer-dc30600a.js → dynamic-slimmer-f31fdfd7.js} +1 -1
  16. package/dist/cjs/{element-appender-slimmer-0dd70e61.js → element-appender-slimmer-700b7004.js} +6 -6
  17. package/dist/cjs/{event-emit-slimmer-a46bb411.js → event-emit-slimmer-9c223f73.js} +7 -6
  18. package/dist/cjs/{feature-flag-controller-e97b5f29.js → feature-flag-controller-7b22e598.js} +1 -1
  19. package/dist/cjs/{form-field-controller-slimmer-9aeabcdc.js → form-field-controller-slimmer-dbb321ad.js} +61 -37
  20. package/dist/cjs/global-slimmer-registry-b3bce7e0.js +297 -0
  21. package/dist/cjs/{icon-manager-36dcfb65.js → icon-manager-edc2400b.js} +2 -2
  22. package/dist/cjs/{text-color-toolbar-button-slimmer-21a166e4.js → image-annotation-action-d3e1699c.js} +78 -27
  23. package/dist/cjs/{global-slimmer-registry-dd2691b8.js → index-09acd3c9.js} +282 -296
  24. package/dist/cjs/index.cjs.js +27 -28
  25. package/dist/cjs/{inject-keyboard-manager-af37c861.js → inject-keyboard-manager-4a5c27a2.js} +1 -1
  26. package/dist/cjs/{internal-icon-manager-2282a62f.js → internal-icon-manager-5ccb9443.js} +1 -1
  27. package/dist/cjs/{internal-vega-event-manager-d7643ec6.js → internal-vega-event-manager-e5e4bcf4.js} +72 -72
  28. package/dist/cjs/{internal-vega-z-index-manager-e24e4309.js → internal-vega-z-index-manager-f03ddb37.js} +1 -1
  29. package/dist/cjs/{keyboard-manager-5afbc8f1.js → keyboard-manager-2df53b2f.js} +1 -1
  30. package/dist/cjs/{keyboard-manager-slimmer-9be2a880.js → keyboard-manager-slimmer-feba3a83.js} +2 -2
  31. package/dist/cjs/{content-state-6a5b9736.js → list-block-91116257.js} +1346 -402
  32. package/dist/cjs/loader.cjs.js +21 -21
  33. package/dist/cjs/{mutation-observer-slimmer-98bbbdf0.js → mutation-observer-slimmer-895b3d3e.js} +1 -1
  34. package/dist/cjs/{node.abstract-f8075f84.js → node-annotation.abstract-e5d3a859.js} +37 -48
  35. package/dist/cjs/{page-resize-observer-slimmer-e54fa9d4.js → page-resize-observer-slimmer-bb1eaebe.js} +1 -1
  36. package/dist/cjs/{remote-invocation-registry-71a45468.js → remote-invocation-registry-ff9af278.js} +3 -3
  37. package/dist/cjs/{responsive-format-facade-74079f1b.js → responsive-format-facade-4363a00d.js} +1 -1
  38. package/dist/cjs/{state-background-color-formatter-d32a1098.js → state-background-color-formatter-e585a027.js} +1 -1
  39. package/dist/cjs/{string-input-formatter-slimmer-297765c0.js → string-input-formatter-slimmer-6155c9f5.js} +1 -1
  40. package/dist/cjs/{style-formatter-5deb065f.js → style-formatter-63218b76.js} +1 -1
  41. package/dist/cjs/{sub-state-notify-slimmer-73201c53.js → sub-state-notify-slimmer-c2e08e06.js} +8 -8
  42. package/dist/cjs/{sub-state-observer-slimmer-10c0d402.js → sub-state-observer-slimmer-b97e46b5.js} +8 -8
  43. package/dist/cjs/{translation-f6b7ee84.js → translation-b9be41e0.js} +3 -3
  44. package/dist/cjs/{translation-slimmer-90f9f71f.js → translation-slimmer-ec76c5a2.js} +2 -2
  45. package/dist/cjs/{ui-b5906704.js → ui-5fd9b267.js} +1 -1
  46. package/dist/cjs/vega-accordion.cjs.entry.js +41 -39
  47. package/dist/cjs/vega-app-footer.cjs.entry.js +13 -12
  48. package/dist/cjs/vega-app-header-button.cjs.entry.js +42 -40
  49. package/dist/cjs/vega-backdrop.cjs.entry.js +9 -8
  50. package/dist/cjs/vega-banner.cjs.entry.js +36 -34
  51. package/dist/cjs/vega-bar-chart.cjs.entry.js +6 -5
  52. package/dist/cjs/vega-box.cjs.entry.js +13 -12
  53. package/dist/cjs/vega-breadcrumb.cjs.entry.js +34 -32
  54. package/dist/cjs/vega-button-circle.cjs.entry.js +25 -23
  55. package/dist/cjs/vega-button-group_2.cjs.entry.js +32 -30
  56. package/dist/cjs/vega-button-link.cjs.entry.js +26 -24
  57. package/dist/cjs/vega-button.cjs.entry.js +26 -24
  58. package/dist/cjs/vega-calendar_3.cjs.entry.js +135 -133
  59. package/dist/cjs/vega-card.cjs.entry.js +11 -10
  60. package/dist/cjs/vega-carousel.cjs.entry.js +25 -23
  61. package/dist/cjs/vega-checkbox_2.cjs.entry.js +46 -44
  62. package/dist/cjs/vega-chip.cjs.entry.js +36 -34
  63. package/dist/cjs/vega-color-picker.cjs.entry.js +26 -24
  64. package/dist/cjs/vega-combo-box.cjs.entry.js +46 -44
  65. package/dist/cjs/vega-counter-badge.cjs.entry.js +10 -9
  66. package/dist/cjs/vega-date-picker_2.cjs.entry.js +92 -54
  67. package/dist/cjs/{vega-dialog-controller-aaf1f43e.js → vega-dialog-controller-fe610705.js} +2 -2
  68. package/dist/cjs/vega-dialog_2.cjs.entry.js +47 -45
  69. package/dist/cjs/vega-divider.cjs.entry.js +11 -10
  70. package/dist/cjs/vega-dropdown_5.cjs.entry.js +132 -130
  71. package/dist/cjs/vega-env-manager-23b8b23c.js +2 -2
  72. package/dist/cjs/vega-field-error.cjs.entry.js +8 -7
  73. package/dist/cjs/vega-field-label.cjs.entry.js +22 -20
  74. package/dist/cjs/vega-file-uploader.cjs.entry.js +67 -65
  75. package/dist/cjs/vega-flex.cjs.entry.js +14 -13
  76. package/dist/cjs/vega-font.cjs.entry.js +14 -13
  77. package/dist/cjs/vega-form.cjs.entry.js +47 -40
  78. package/dist/cjs/vega-grid.cjs.entry.js +11 -10
  79. package/dist/cjs/vega-hint.cjs.entry.js +7 -6
  80. package/dist/cjs/vega-icon.cjs.entry.js +16 -15
  81. package/dist/cjs/vega-image-uploader.cjs.entry.js +51 -49
  82. package/dist/cjs/vega-input-credit-card.cjs.entry.js +37 -35
  83. package/dist/cjs/vega-input-numeric.cjs.entry.js +30 -28
  84. package/dist/cjs/vega-input-phone-number.cjs.entry.js +98 -50
  85. package/dist/cjs/vega-input-range.cjs.entry.js +40 -38
  86. package/dist/cjs/vega-input-select.cjs.entry.js +62 -60
  87. package/dist/cjs/vega-input.cjs.entry.js +46 -44
  88. package/dist/cjs/vega-item-toggle.cjs.entry.js +21 -19
  89. package/dist/cjs/vega-left-nav_5.cjs.entry.js +102 -100
  90. package/dist/cjs/vega-line-chart.cjs.entry.js +7 -6
  91. package/dist/cjs/vega-loader-wrapper_2.cjs.entry.js +16 -15
  92. package/dist/cjs/vega-page-notification_2.cjs.entry.js +20 -18
  93. package/dist/cjs/vega-pagination.cjs.entry.js +52 -50
  94. package/dist/cjs/vega-pie-chart.cjs.entry.js +7 -6
  95. package/dist/cjs/vega-popover_2.cjs.entry.js +34 -32
  96. package/dist/cjs/vega-progress-tracker.cjs.entry.js +29 -27
  97. package/dist/cjs/vega-radio_2.cjs.entry.js +50 -48
  98. package/dist/cjs/vega-rich-text-content.cjs.entry.js +323 -23
  99. package/dist/cjs/vega-rich-text-editor_4.cjs.entry.js +384 -334
  100. package/dist/cjs/vega-section-title.cjs.entry.js +15 -14
  101. package/dist/cjs/vega-segment-control.cjs.entry.js +24 -22
  102. package/dist/cjs/vega-selection-chip_2.cjs.entry.js +49 -47
  103. package/dist/cjs/vega-selection-tile_2.cjs.entry.js +61 -59
  104. package/dist/cjs/vega-sidenav_3.cjs.entry.js +46 -44
  105. package/dist/cjs/vega-signature-capture.cjs.entry.js +40 -38
  106. package/dist/cjs/{block-annotation.abstract-4d88b939.js → vega-skeleton-loader-controller-7dac484f.js} +7 -21
  107. package/dist/cjs/vega-skeleton.cjs.entry.js +26 -25
  108. package/dist/cjs/vega-slot-container.cjs.entry.js +6 -5
  109. package/dist/cjs/vega-stepper.cjs.entry.js +34 -32
  110. package/dist/cjs/vega-tab-group_2.cjs.entry.js +88 -75
  111. package/dist/cjs/vega-table_8.cjs.entry.js +184 -182
  112. package/dist/cjs/vega-text.cjs.entry.js +9 -8
  113. package/dist/cjs/vega-textarea.cjs.entry.js +34 -32
  114. package/dist/cjs/vega-time-picker_2.cjs.entry.js +83 -81
  115. package/dist/cjs/vega-toggle-switch.cjs.entry.js +23 -21
  116. package/dist/cjs/vega-tooltip_2.cjs.entry.js +20 -19
  117. package/dist/cjs/vega.cjs.js +21 -21
  118. package/dist/collection/components/vega-date-picker/slimmers/renderers/vega-date-picker-calendar-renderer.js +37 -0
  119. package/dist/collection/components/vega-date-picker/vega-date-picker.js +20 -0
  120. package/dist/collection/components/vega-form/vega-form.js +13 -4
  121. package/dist/collection/components/vega-input-phone-number/slimmers/controllers/vega-input-phone-number-value-controller.js +38 -3
  122. package/dist/collection/components/vega-input-phone-number/vega-input-phone-number.js +35 -0
  123. package/dist/collection/components/vega-rich-text-content/slimmers/renderers/vega-rich-text-content-renderer.js +18 -1
  124. package/dist/collection/components/vega-rich-text-editor/dto/annotations/link-group-annotation.js +0 -90
  125. package/dist/collection/components/vega-rich-text-editor/dto/blocks/block.abstract.js +0 -24
  126. package/dist/collection/components/vega-rich-text-editor/dto/blocks/image-block.js +67 -13
  127. package/dist/collection/components/vega-rich-text-editor/dto/blocks/list-block.js +45 -12
  128. package/dist/collection/components/vega-rich-text-editor/dto/blocks/list-item-block.js +68 -8
  129. package/dist/collection/components/vega-rich-text-editor/dto/blocks/text-block.js +111 -36
  130. package/dist/collection/components/vega-rich-text-editor/dto/nodes/image-node.js +23 -50
  131. package/dist/collection/components/vega-rich-text-editor/dto/nodes/node.abstract.js +0 -25
  132. package/dist/collection/components/vega-rich-text-editor/dto/nodes/text-node.js +95 -19
  133. package/dist/collection/components/vega-rich-text-editor/dto/renderers/blocks/block-renderer.abstract.js +35 -0
  134. package/dist/collection/components/vega-rich-text-editor/dto/renderers/blocks/block-text-nodes-renderer.abstract.js +104 -0
  135. package/dist/collection/components/vega-rich-text-editor/dto/renderers/blocks/image-block-renderer.js +15 -0
  136. package/dist/collection/components/vega-rich-text-editor/dto/renderers/blocks/list-block-renderer.js +14 -0
  137. package/dist/collection/components/vega-rich-text-editor/dto/renderers/blocks/list-item-block-renderer.js +14 -0
  138. package/dist/collection/components/vega-rich-text-editor/dto/renderers/blocks/text-block-renderer.js +28 -0
  139. package/dist/collection/components/vega-rich-text-editor/dto/renderers/nodes/image-node-renderer.js +49 -0
  140. package/dist/collection/components/vega-rich-text-editor/dto/renderers/nodes/node-renderer.abstract.js +35 -0
  141. package/dist/collection/components/vega-rich-text-editor/dto/renderers/nodes/text-node-renderer.js +24 -0
  142. package/dist/collection/components/vega-rich-text-editor/slimmers/controllers/helper/element-to-dto-strategy/element-to-dto-strategy-processor.js +2 -0
  143. package/dist/collection/components/vega-rich-text-editor/slimmers/controllers/helper/element-to-dto-strategy/ul-not-li-child-to-rte-list-item-block.js +49 -0
  144. package/dist/collection/components/vega-rich-text-editor/test/dto/blocks/image-block.test.js +0 -10
  145. package/dist/collection/components/vega-rich-text-editor/test/dto/blocks/list-block.test.js +0 -48
  146. package/dist/collection/components/vega-rich-text-editor/test/dto/blocks/list-item.test.js +0 -40
  147. package/dist/collection/components/vega-rich-text-editor/test/dto/blocks/text-block.test.js +0 -39
  148. package/dist/collection/components/vega-rich-text-editor/test/dto/nodes/image-node.test.js +0 -14
  149. package/dist/collection/components/vega-rich-text-editor/test/dto/nodes/text-node.test.js +0 -34
  150. package/dist/collection/components/vega-tab-group/slimmers/vega-tab-group/controllers/vega-tab-group-page-index-controller.js +22 -22
  151. package/dist/collection/components/vega-tab-group/slimmers/vega-tab-group/controllers/vega-tab-group-selected-target-controller.js +9 -1
  152. package/dist/collection/components/vega-tab-group/slimmers/vega-tab-group/renderers/vega-tab-group-direction-button-renderer.js +4 -1
  153. package/dist/collection/helpers/slimmers/field-error-ui-controller-slimmer.js +10 -16
  154. package/dist/collection/helpers/slimmers/form-field-message-translator.js +17 -0
  155. package/dist/collection/helpers/slimmers/form-field-valid-invoke-slimmer.js +6 -3
  156. package/dist/collection/helpers/validator/form-field-controller.js +9 -3
  157. package/dist/collection/helpers/validator/validation-rule-handler/form-field-validation-rule-handler-chain.js +7 -2
  158. package/dist/esm/{app-globals-48531a04.js → app-globals-5b154b6d.js} +13 -12
  159. package/dist/esm/{change-manager-8f5b72c2.js → change-manager-6a7eb88c.js} +1 -1
  160. package/dist/esm/{child-nodes-event-prevent-slimmer-8ceabe63.js → child-nodes-event-prevent-slimmer-97aae8a8.js} +3 -3
  161. package/dist/esm/{child-nodes-notify-observer-slimmer-afc15e00.js → child-nodes-notify-observer-slimmer-289caacc.js} +4 -4
  162. package/dist/esm/{component-051a594c.js → component-cae24190.js} +1 -1
  163. package/dist/esm/{component-global-style-slimmer-631f956f.js → component-global-style-slimmer-000e0c11.js} +1 -1
  164. package/dist/esm/{component-usage-runtime-metrics-21813c36.js → component-usage-runtime-metrics-385c7124.js} +1 -1
  165. package/dist/esm/content-state-f39c4bbf.js +132 -0
  166. package/dist/esm/{create-public-api-runtime-metrics-slimmer-14cb4599.js → create-public-api-runtime-metrics-slimmer-9ab05523.js} +2 -2
  167. package/dist/esm/{date-655c0af8.js → date-732bc749.js} +1 -1
  168. package/dist/esm/{deprecated-property-slimmer-9ea5019c.js → deprecated-property-slimmer-43d184b3.js} +2 -2
  169. package/dist/esm/{design-token-20fdba82.js → design-token-d06bc718.js} +3 -3
  170. package/dist/esm/{dom-node-subject-observer-factory-80358591.js → dom-node-subject-factory-5831cdd4.js} +2 -41
  171. package/dist/esm/dom-node-subject-observer-factory-dc486a8b.js +42 -0
  172. package/dist/esm/{dynamic-slimmer-85746483.js → dynamic-slimmer-90b8af32.js} +1 -1
  173. package/dist/esm/{element-appender-slimmer-4dfa326d.js → element-appender-slimmer-d71e3109.js} +6 -6
  174. package/dist/esm/{event-emit-slimmer-c03cf145.js → event-emit-slimmer-f285e3ac.js} +6 -5
  175. package/dist/esm/{feature-flag-controller-dfde0cfa.js → feature-flag-controller-4b3fe6f8.js} +1 -1
  176. package/dist/esm/{form-field-controller-slimmer-de5fe574.js → form-field-controller-slimmer-add614f1.js} +55 -31
  177. package/dist/esm/global-slimmer-registry-17c4efd4.js +283 -0
  178. package/dist/esm/{icon-manager-3cef32e7.js → icon-manager-b889176b.js} +2 -2
  179. package/dist/esm/{text-color-toolbar-button-slimmer-b2270b64.js → image-annotation-action-a8e00f28.js} +55 -6
  180. package/dist/esm/{global-slimmer-registry-6887a59f.js → index-187f71d1.js} +283 -284
  181. package/dist/esm/index.js +20 -21
  182. package/dist/esm/{inject-keyboard-manager-45309420.js → inject-keyboard-manager-b0135018.js} +1 -1
  183. package/dist/esm/{internal-icon-manager-7fc7535a.js → internal-icon-manager-900a5bb4.js} +1 -1
  184. package/dist/esm/{internal-vega-event-manager-3a3815d3.js → internal-vega-event-manager-07e1b3d9.js} +2 -2
  185. package/dist/esm/{internal-vega-z-index-manager-89e8b6f5.js → internal-vega-z-index-manager-7d2b54c3.js} +1 -1
  186. package/dist/esm/{keyboard-manager-2c06eafe.js → keyboard-manager-4c898a0d.js} +1 -1
  187. package/dist/esm/{keyboard-manager-slimmer-fd177285.js → keyboard-manager-slimmer-f80d6835.js} +2 -2
  188. package/dist/esm/{content-state-4b036bf1.js → list-block-ba82c846.js} +1225 -299
  189. package/dist/esm/loader.js +20 -20
  190. package/dist/esm/{mutation-observer-slimmer-ca2cb2e8.js → mutation-observer-slimmer-6cef9549.js} +1 -1
  191. package/dist/esm/{node.abstract-93746055.js → node-annotation.abstract-d7d52bce.js} +35 -47
  192. package/dist/esm/{page-resize-observer-slimmer-8589ebc8.js → page-resize-observer-slimmer-beb7b0bd.js} +1 -1
  193. package/dist/esm/{remote-invocation-registry-2ec6936d.js → remote-invocation-registry-d97fa3bc.js} +2 -2
  194. package/dist/esm/{responsive-format-facade-559ec469.js → responsive-format-facade-c2ab9c87.js} +1 -1
  195. package/dist/esm/{state-background-color-formatter-16031a43.js → state-background-color-formatter-121ae7d3.js} +1 -1
  196. package/dist/esm/{string-input-formatter-slimmer-c9fb1fa1.js → string-input-formatter-slimmer-73fa06e6.js} +1 -1
  197. package/dist/esm/{style-formatter-51845b6d.js → style-formatter-f91471e8.js} +1 -1
  198. package/dist/esm/{sub-state-notify-slimmer-6e97a58a.js → sub-state-notify-slimmer-48bad548.js} +4 -4
  199. package/dist/esm/{sub-state-observer-slimmer-0968ce04.js → sub-state-observer-slimmer-403cc4e7.js} +4 -4
  200. package/dist/esm/{translation-b3fe8e74.js → translation-a98970d8.js} +3 -3
  201. package/dist/esm/{translation-slimmer-860cd766.js → translation-slimmer-5ee9912b.js} +2 -2
  202. package/dist/esm/{ui-5600b48f.js → ui-62e4be97.js} +1 -1
  203. package/dist/esm/vega-accordion.entry.js +17 -15
  204. package/dist/esm/vega-app-footer.entry.js +4 -3
  205. package/dist/esm/vega-app-header-button.entry.js +20 -18
  206. package/dist/esm/vega-backdrop.entry.js +5 -4
  207. package/dist/esm/vega-banner.entry.js +15 -13
  208. package/dist/esm/vega-bar-chart.entry.js +3 -2
  209. package/dist/esm/vega-box.entry.js +10 -9
  210. package/dist/esm/vega-breadcrumb.entry.js +13 -11
  211. package/dist/esm/vega-button-circle.entry.js +16 -14
  212. package/dist/esm/vega-button-group_2.entry.js +15 -13
  213. package/dist/esm/vega-button-link.entry.js +13 -11
  214. package/dist/esm/vega-button.entry.js +15 -13
  215. package/dist/esm/vega-calendar_3.entry.js +23 -21
  216. package/dist/esm/vega-card.entry.js +8 -7
  217. package/dist/esm/vega-carousel.entry.js +14 -12
  218. package/dist/esm/vega-checkbox_2.entry.js +19 -17
  219. package/dist/esm/vega-chip.entry.js +17 -15
  220. package/dist/esm/vega-color-picker.entry.js +16 -14
  221. package/dist/esm/vega-combo-box.entry.js +20 -18
  222. package/dist/esm/vega-counter-badge.entry.js +4 -3
  223. package/dist/esm/vega-date-picker_2.entry.js +67 -29
  224. package/dist/esm/{vega-dialog-controller-5b23f68c.js → vega-dialog-controller-34eb8967.js} +2 -2
  225. package/dist/esm/vega-dialog_2.entry.js +20 -18
  226. package/dist/esm/vega-divider.entry.js +8 -7
  227. package/dist/esm/vega-dropdown_5.entry.js +27 -25
  228. package/dist/esm/vega-env-manager-8f8dc473.js +2 -2
  229. package/dist/esm/vega-field-error.entry.js +5 -4
  230. package/dist/esm/vega-field-label.entry.js +11 -9
  231. package/dist/esm/vega-file-uploader.entry.js +19 -17
  232. package/dist/esm/vega-flex.entry.js +11 -10
  233. package/dist/esm/vega-font.entry.js +9 -8
  234. package/dist/esm/vega-form.entry.js +28 -21
  235. package/dist/esm/vega-grid.entry.js +8 -7
  236. package/dist/esm/vega-hint.entry.js +4 -3
  237. package/dist/esm/vega-icon.entry.js +11 -10
  238. package/dist/esm/vega-image-uploader.entry.js +21 -19
  239. package/dist/esm/vega-input-credit-card.entry.js +20 -18
  240. package/dist/esm/vega-input-numeric.entry.js +21 -19
  241. package/dist/esm/vega-input-phone-number.entry.js +70 -22
  242. package/dist/esm/vega-input-range.entry.js +19 -17
  243. package/dist/esm/vega-input-select.entry.js +22 -20
  244. package/dist/esm/vega-input.entry.js +18 -16
  245. package/dist/esm/vega-item-toggle.entry.js +12 -10
  246. package/dist/esm/vega-left-nav_5.entry.js +24 -22
  247. package/dist/esm/vega-line-chart.entry.js +4 -3
  248. package/dist/esm/vega-loader-wrapper_2.entry.js +7 -6
  249. package/dist/esm/vega-page-notification_2.entry.js +8 -6
  250. package/dist/esm/vega-pagination.entry.js +16 -14
  251. package/dist/esm/vega-pie-chart.entry.js +4 -3
  252. package/dist/esm/vega-popover_2.entry.js +18 -16
  253. package/dist/esm/vega-progress-tracker.entry.js +12 -10
  254. package/dist/esm/vega-radio_2.entry.js +21 -19
  255. package/dist/esm/vega-rich-text-content.entry.js +317 -17
  256. package/dist/esm/vega-rich-text-editor_4.entry.js +79 -29
  257. package/dist/esm/vega-section-title.entry.js +4 -3
  258. package/dist/esm/vega-segment-control.entry.js +12 -10
  259. package/dist/esm/vega-selection-chip_2.entry.js +21 -19
  260. package/dist/esm/vega-selection-tile_2.entry.js +21 -19
  261. package/dist/esm/vega-sidenav_3.entry.js +19 -17
  262. package/dist/esm/vega-signature-capture.entry.js +22 -20
  263. package/dist/esm/{block-annotation.abstract-b0554e2b.js → vega-skeleton-loader-controller-0aaaf1fa.js} +8 -21
  264. package/dist/esm/vega-skeleton.entry.js +4 -3
  265. package/dist/esm/vega-slot-container.entry.js +3 -2
  266. package/dist/esm/vega-stepper.entry.js +18 -16
  267. package/dist/esm/vega-tab-group_2.entry.js +49 -36
  268. package/dist/esm/vega-table_8.entry.js +25 -23
  269. package/dist/esm/vega-text.entry.js +5 -4
  270. package/dist/esm/vega-textarea.entry.js +18 -16
  271. package/dist/esm/vega-time-picker_2.entry.js +25 -23
  272. package/dist/esm/vega-toggle-switch.entry.js +16 -14
  273. package/dist/esm/vega-tooltip_2.entry.js +13 -12
  274. package/dist/esm/vega.js +20 -20
  275. package/dist/types/components/vega-date-picker/slimmers/renderers/vega-date-picker-calendar-renderer.d.ts +3 -0
  276. package/dist/types/components/vega-date-picker/vega-date-picker.d.ts +9 -0
  277. package/dist/types/components/vega-form/types.d.ts +1 -0
  278. package/dist/types/components/vega-input-phone-number/slimmers/controllers/vega-input-phone-number-value-controller.d.ts +19 -0
  279. package/dist/types/components/vega-input-phone-number/vega-input-phone-number.d.ts +9 -0
  280. package/dist/types/components/vega-rich-text-content/slimmers/renderers/vega-rich-text-content-renderer.d.ts +2 -0
  281. package/dist/types/components/vega-rich-text-editor/dto/annotations/link-group-annotation.d.ts +0 -6
  282. package/dist/types/components/vega-rich-text-editor/dto/blocks/block.abstract.d.ts +2 -15
  283. package/dist/types/components/vega-rich-text-editor/dto/blocks/image-block.d.ts +68 -4
  284. package/dist/types/components/vega-rich-text-editor/dto/blocks/list-block.d.ts +45 -3
  285. package/dist/types/components/vega-rich-text-editor/dto/blocks/list-item-block.d.ts +68 -3
  286. package/dist/types/components/vega-rich-text-editor/dto/blocks/text-block.d.ts +110 -5
  287. package/dist/types/components/vega-rich-text-editor/dto/nodes/image-node.d.ts +21 -5
  288. package/dist/types/components/vega-rich-text-editor/dto/nodes/node.abstract.d.ts +1 -14
  289. package/dist/types/components/vega-rich-text-editor/dto/nodes/text-node.d.ts +86 -2
  290. package/dist/types/components/vega-rich-text-editor/dto/renderers/blocks/block-renderer.abstract.d.ts +28 -0
  291. package/dist/types/components/vega-rich-text-editor/dto/renderers/blocks/block-text-nodes-renderer.abstract.d.ts +14 -0
  292. package/dist/types/components/vega-rich-text-editor/dto/renderers/blocks/image-block-renderer.d.ts +10 -0
  293. package/dist/types/components/vega-rich-text-editor/dto/renderers/blocks/list-block-renderer.d.ts +10 -0
  294. package/dist/types/components/vega-rich-text-editor/dto/renderers/blocks/list-item-block-renderer.d.ts +9 -0
  295. package/dist/types/components/vega-rich-text-editor/dto/renderers/blocks/text-block-renderer.d.ts +11 -0
  296. package/dist/types/components/vega-rich-text-editor/dto/renderers/nodes/image-node-renderer.d.ts +10 -0
  297. package/dist/types/components/vega-rich-text-editor/dto/renderers/nodes/node-renderer.abstract.d.ts +21 -0
  298. package/dist/types/components/vega-rich-text-editor/dto/renderers/nodes/text-node-renderer.d.ts +9 -0
  299. package/dist/types/components/vega-rich-text-editor/slimmers/controllers/helper/element-to-dto-strategy/ul-not-li-child-to-rte-list-item-block.d.ts +31 -0
  300. package/dist/types/components/vega-tab-group/slimmers/vega-tab-group/controllers/vega-tab-group-page-index-controller.d.ts +6 -6
  301. package/dist/types/components/vega-tab-group/slimmers/vega-tab-group/controllers/vega-tab-group-selected-target-controller.d.ts +1 -0
  302. package/dist/types/components.d.ts +21 -0
  303. package/dist/types/helpers/slimmers/field-error-ui-controller-slimmer.d.ts +2 -7
  304. package/dist/types/helpers/slimmers/form-field-message-translator.d.ts +12 -0
  305. package/dist/types/helpers/validator/form-field-controller.d.ts +5 -2
  306. package/dist/types/helpers/validator/validation-rule-handler/form-field-validation-rule-handler-chain.d.ts +2 -2
  307. package/dist/types/helpers/validator/validator.d.ts +1 -1
  308. package/dist/types/types/components.type.d.ts +1 -0
  309. package/dist/vega/index.esm.js +1 -1
  310. package/dist/vega/p-000b3ab0.js +1 -0
  311. package/dist/vega/p-00738ae9.entry.js +1 -0
  312. package/dist/vega/p-01d0dbe6.entry.js +1 -0
  313. package/dist/vega/p-032df16f.js +1 -0
  314. package/dist/vega/p-05f5e22b.entry.js +1 -0
  315. package/dist/vega/p-0634f06b.entry.js +1 -0
  316. package/dist/vega/p-0945a58d.entry.js +1 -0
  317. package/dist/vega/p-09c5de7f.entry.js +1 -0
  318. package/dist/vega/p-0a8b91f5.entry.js +1 -0
  319. package/dist/vega/{p-f763e2eb.js → p-0af4bda9.js} +1 -1
  320. package/dist/vega/p-0be711b6.entry.js +1 -0
  321. package/dist/vega/p-0c2eb135.entry.js +1 -0
  322. package/dist/vega/p-0ee10fd7.js +1 -0
  323. package/dist/vega/p-12ad8ada.entry.js +1 -0
  324. package/dist/vega/p-14514252.entry.js +1 -0
  325. package/dist/vega/{p-11a19ca0.js → p-149d2801.js} +1 -1
  326. package/dist/vega/p-14f85e30.entry.js +1 -0
  327. package/dist/vega/p-193d2c51.entry.js +1 -0
  328. package/dist/vega/p-1a64716b.entry.js +1 -0
  329. package/dist/vega/p-1c298d5a.js +2 -0
  330. package/dist/vega/p-1d805cc0.entry.js +1 -0
  331. package/dist/vega/p-211df22a.entry.js +1 -0
  332. package/dist/vega/p-21d59593.entry.js +1 -0
  333. package/dist/vega/p-2205ee4c.js +1 -0
  334. package/dist/vega/p-29b09aad.js +1 -0
  335. package/dist/vega/p-2bbcb1ca.entry.js +1 -0
  336. package/dist/vega/{p-443ad3b3.js → p-2d0d575f.js} +1 -1
  337. package/dist/vega/{p-368d0060.js → p-2fbda931.js} +1 -1
  338. package/dist/vega/p-3126edd6.entry.js +1 -0
  339. package/dist/vega/p-33b62194.js +1 -0
  340. package/dist/vega/p-42df8a42.js +1 -0
  341. package/dist/vega/{p-8f93242a.js → p-4387d550.js} +1 -1
  342. package/dist/vega/p-45dd4698.entry.js +1 -0
  343. package/dist/vega/p-4873be94.entry.js +1 -0
  344. package/dist/vega/{p-3b4bde3e.js → p-4b500240.js} +1 -1
  345. package/dist/vega/{p-e0b25eaf.js → p-4f0b56fc.js} +1 -1
  346. package/dist/vega/p-5298fd92.entry.js +1 -0
  347. package/dist/vega/p-5760619c.entry.js +1 -0
  348. package/dist/vega/p-5915634b.js +1 -0
  349. package/dist/vega/p-5dd923e0.entry.js +1 -0
  350. package/dist/vega/p-5f377954.js +1 -1
  351. package/dist/vega/{p-70151c27.js → p-5f589974.js} +1 -1
  352. package/dist/vega/p-61116634.entry.js +1 -0
  353. package/dist/vega/p-618b35e4.entry.js +1 -0
  354. package/dist/vega/p-625771d7.entry.js +1 -0
  355. package/dist/vega/{p-62774231.js → p-6705c68a.js} +1 -1
  356. package/dist/vega/p-68f0aa72.entry.js +1 -0
  357. package/dist/vega/{p-59bdf9b8.js → p-6a334573.js} +1 -1
  358. package/dist/vega/p-6a3989dd.js +1 -0
  359. package/dist/vega/{p-0e0c47ad.js → p-6a5a5c7b.js} +1 -1
  360. package/dist/vega/p-6c09b79a.entry.js +1 -0
  361. package/dist/vega/p-6d23c08b.entry.js +1 -0
  362. package/dist/vega/p-6e1ab235.js +1 -0
  363. package/dist/vega/p-71eeb279.entry.js +1 -0
  364. package/dist/vega/p-7258cb9c.entry.js +1 -0
  365. package/dist/vega/p-72eee5e2.js +1 -0
  366. package/dist/vega/{p-eac38d87.js → p-781fd6e0.js} +1 -1
  367. package/dist/vega/{p-1995e98e.js → p-79ec5d69.js} +1 -1
  368. package/dist/vega/p-7ecbf764.entry.js +1 -0
  369. package/dist/vega/{p-3f1b542a.js → p-81dbada7.js} +1 -1
  370. package/dist/vega/{p-a6a7d0c9.js → p-8284a445.js} +1 -1
  371. package/dist/vega/p-84f2f342.js +1 -0
  372. package/dist/vega/p-85365f8b.js +1 -0
  373. package/dist/vega/p-8ab356e8.entry.js +1 -0
  374. package/dist/vega/p-8ba43640.entry.js +1 -0
  375. package/dist/vega/p-8d69f9ef.entry.js +1 -0
  376. package/dist/vega/p-8fc170d9.entry.js +1 -0
  377. package/dist/vega/p-91aa058f.entry.js +1 -0
  378. package/dist/vega/{p-8c26227e.js → p-926596cc.js} +1 -1
  379. package/dist/vega/p-92707b74.entry.js +1 -0
  380. package/dist/vega/p-97453cd8.entry.js +1 -0
  381. package/dist/vega/{p-843a0c1c.js → p-987fbbd0.js} +1 -1
  382. package/dist/vega/{p-296cc56b.js → p-9b797118.js} +1 -1
  383. package/dist/vega/p-a01f149d.entry.js +1 -0
  384. package/dist/vega/{p-3953c705.js → p-af7a3154.js} +1 -1
  385. package/dist/vega/p-b0e824df.entry.js +13 -0
  386. package/dist/vega/p-b2bca332.entry.js +1 -0
  387. package/dist/vega/p-b57792b7.js +1 -0
  388. package/dist/vega/p-b5990090.js +1 -0
  389. package/dist/vega/p-b6815874.js +1 -0
  390. package/dist/vega/p-b688a71b.js +1 -0
  391. package/dist/vega/p-b6f09c98.entry.js +1 -0
  392. package/dist/vega/p-b9a09a76.js +1 -0
  393. package/dist/vega/p-bcb10ae3.entry.js +1 -0
  394. package/dist/vega/{p-39836361.js → p-be12fa36.js} +1 -1
  395. package/dist/vega/p-c016c3b2.entry.js +1 -0
  396. package/dist/vega/p-c02f650e.entry.js +1 -0
  397. package/dist/vega/p-c2b276f7.entry.js +1 -0
  398. package/dist/vega/p-c51a3e3c.entry.js +1 -0
  399. package/dist/vega/p-c56965fc.entry.js +1 -0
  400. package/dist/vega/p-c6f544fe.entry.js +1 -0
  401. package/dist/vega/p-c88acd87.entry.js +1 -0
  402. package/dist/vega/p-cb8f8458.entry.js +1 -0
  403. package/dist/vega/p-cda26bdf.entry.js +1 -0
  404. package/dist/vega/p-d09d153f.entry.js +1 -0
  405. package/dist/vega/p-d994874a.entry.js +1 -0
  406. package/dist/vega/p-dcdac4d0.entry.js +1 -0
  407. package/dist/vega/p-de25326f.js +1 -0
  408. package/dist/vega/{p-e1e1fcf0.js → p-de664bdd.js} +1 -1
  409. package/dist/vega/p-e04d4ba3.entry.js +1 -0
  410. package/dist/vega/p-e093b2c5.entry.js +1 -0
  411. package/dist/vega/p-e480babd.entry.js +1 -0
  412. package/dist/vega/p-e8f540d8.js +1 -0
  413. package/dist/vega/p-eaf6c3d8.entry.js +1 -0
  414. package/dist/vega/p-efbea85a.entry.js +1 -0
  415. package/dist/vega/p-f2cc36ae.entry.js +1 -0
  416. package/dist/vega/{p-81ead59a.js → p-f31bb1fd.js} +1 -1
  417. package/dist/vega/p-f48711fa.entry.js +1 -0
  418. package/dist/vega/p-f690539e.entry.js +1 -0
  419. package/dist/vega/p-f6b89936.entry.js +1 -0
  420. package/dist/vega/p-f84fd31c.js +1 -0
  421. package/dist/vega/p-fc6ea557.entry.js +1 -0
  422. package/dist/vega/{p-acf7f903.js → p-ff4bafa3.js} +1 -1
  423. package/dist/vega/p-ff50c204.entry.js +1 -0
  424. package/dist/vega/vega.esm.js +1 -1
  425. package/package.json +3 -2
  426. package/dist/cjs/text-node-494856f3.js +0 -955
  427. package/dist/esm/text-node-a652ca87.js +0 -933
  428. package/dist/vega/p-0190095c.entry.js +0 -1
  429. package/dist/vega/p-034e6348.entry.js +0 -1
  430. package/dist/vega/p-0cd2b50f.entry.js +0 -1
  431. package/dist/vega/p-10393104.js +0 -1
  432. package/dist/vega/p-109a00cf.entry.js +0 -1
  433. package/dist/vega/p-11cb477b.js +0 -1
  434. package/dist/vega/p-1564cc4d.entry.js +0 -1
  435. package/dist/vega/p-18886765.entry.js +0 -1
  436. package/dist/vega/p-19b26168.entry.js +0 -1
  437. package/dist/vega/p-21992602.entry.js +0 -1
  438. package/dist/vega/p-22563151.entry.js +0 -1
  439. package/dist/vega/p-23795da1.entry.js +0 -1
  440. package/dist/vega/p-29277e41.entry.js +0 -1
  441. package/dist/vega/p-2a7e9422.entry.js +0 -1
  442. package/dist/vega/p-2ca6d977.entry.js +0 -1
  443. package/dist/vega/p-2e419309.entry.js +0 -1
  444. package/dist/vega/p-3039bef8.js +0 -1
  445. package/dist/vega/p-34939c97.entry.js +0 -1
  446. package/dist/vega/p-3897bb2d.entry.js +0 -1
  447. package/dist/vega/p-390c5236.entry.js +0 -1
  448. package/dist/vega/p-3ce31dc3.js +0 -1
  449. package/dist/vega/p-452e284a.js +0 -1
  450. package/dist/vega/p-4c41dd64.js +0 -1
  451. package/dist/vega/p-55beac7f.entry.js +0 -1
  452. package/dist/vega/p-57405834.entry.js +0 -1
  453. package/dist/vega/p-584dcd9b.js +0 -1
  454. package/dist/vega/p-589e6041.entry.js +0 -1
  455. package/dist/vega/p-5e95402a.entry.js +0 -1
  456. package/dist/vega/p-5eee21b4.entry.js +0 -1
  457. package/dist/vega/p-62cea2e7.entry.js +0 -1
  458. package/dist/vega/p-65b79fd7.js +0 -1
  459. package/dist/vega/p-6741e2b9.entry.js +0 -1
  460. package/dist/vega/p-6a084fe1.entry.js +0 -1
  461. package/dist/vega/p-6b286226.entry.js +0 -1
  462. package/dist/vega/p-6b722905.entry.js +0 -1
  463. package/dist/vega/p-6e4b2752.entry.js +0 -1
  464. package/dist/vega/p-7209d03b.js +0 -1
  465. package/dist/vega/p-734ea281.entry.js +0 -1
  466. package/dist/vega/p-76fc408e.entry.js +0 -1
  467. package/dist/vega/p-7a9f453e.entry.js +0 -1
  468. package/dist/vega/p-80ccd894.entry.js +0 -1
  469. package/dist/vega/p-84c597c8.entry.js +0 -1
  470. package/dist/vega/p-8836c1b9.js +0 -1
  471. package/dist/vega/p-8b78c6a3.entry.js +0 -1
  472. package/dist/vega/p-8be45a45.entry.js +0 -1
  473. package/dist/vega/p-8d7b45f7.entry.js +0 -1
  474. package/dist/vega/p-8e17b9dd.entry.js +0 -1
  475. package/dist/vega/p-8f004647.entry.js +0 -1
  476. package/dist/vega/p-925a2137.js +0 -1
  477. package/dist/vega/p-92f88033.entry.js +0 -1
  478. package/dist/vega/p-94de7a02.entry.js +0 -1
  479. package/dist/vega/p-9968e71d.entry.js +0 -1
  480. package/dist/vega/p-9c1eeff2.js +0 -2
  481. package/dist/vega/p-9d1b9e70.entry.js +0 -1
  482. package/dist/vega/p-9e732a26.entry.js +0 -1
  483. package/dist/vega/p-9f39dd10.js +0 -1
  484. package/dist/vega/p-a5ffe912.js +0 -1
  485. package/dist/vega/p-a6104aa7.js +0 -1
  486. package/dist/vega/p-a6169ad6.entry.js +0 -1
  487. package/dist/vega/p-a8bf559a.js +0 -1
  488. package/dist/vega/p-afec17ad.entry.js +0 -1
  489. package/dist/vega/p-b3f9cc3a.entry.js +0 -13
  490. package/dist/vega/p-b693c1ac.entry.js +0 -1
  491. package/dist/vega/p-b9e2add4.entry.js +0 -1
  492. package/dist/vega/p-bd894860.entry.js +0 -1
  493. package/dist/vega/p-c0d6a587.entry.js +0 -1
  494. package/dist/vega/p-c26e6820.entry.js +0 -1
  495. package/dist/vega/p-c34487e1.entry.js +0 -1
  496. package/dist/vega/p-c532b132.entry.js +0 -1
  497. package/dist/vega/p-ca2fb711.js +0 -1
  498. package/dist/vega/p-cebf93f1.entry.js +0 -1
  499. package/dist/vega/p-cfdc148a.entry.js +0 -1
  500. package/dist/vega/p-d0351d71.entry.js +0 -1
  501. package/dist/vega/p-d2ab6096.entry.js +0 -1
  502. package/dist/vega/p-d35643c5.entry.js +0 -1
  503. package/dist/vega/p-d400a1d9.entry.js +0 -1
  504. package/dist/vega/p-d6732a72.entry.js +0 -1
  505. package/dist/vega/p-d720b06a.entry.js +0 -1
  506. package/dist/vega/p-d987e404.entry.js +0 -1
  507. package/dist/vega/p-d9b86108.entry.js +0 -1
  508. package/dist/vega/p-e27e115d.entry.js +0 -1
  509. package/dist/vega/p-e65c8ac7.entry.js +0 -1
  510. package/dist/vega/p-e79057cc.js +0 -1
  511. package/dist/vega/p-e89e9769.entry.js +0 -1
  512. package/dist/vega/p-ecd64c7f.entry.js +0 -1
  513. package/dist/vega/p-f5b2e72a.entry.js +0 -1
  514. package/dist/vega/p-f6af3749.js +0 -1
  515. package/dist/vega/p-fc622a75.js +0 -1
@@ -0,0 +1,104 @@
1
+ import { h } from '@stencil/core';
2
+ import { InternalAnnotationTypeEnum } from '../../annotations/annotation.abstract';
3
+ import { RTEBlockRenderer } from './block-renderer.abstract';
4
+ import RTETextNodeRenderer from '../nodes/text-node-renderer';
5
+ import { NodeAnnotationTypeEnum } from '../../annotations/node-annotation.abstract';
6
+ import { isNonNullable } from '../../../../../types/type-guard';
7
+ import { generateUUID } from '../../../../../utils/misc';
8
+ import { LinkAnnotationAction } from '../../actions/link-annotation-action';
9
+ import { createEnterKeyHandlerToTriggerClick } from '../../../../../utils/accessibility';
10
+ import { DomNodeSubjectObserverFactory } from '../../../../../helpers/change-manager/subject/dom-node-subject/dom-node-subject-observer-factory';
11
+ import { VegaChange } from '../../../../../helpers/event-manager/event-id/vega-event-id';
12
+ /**
13
+ * Abstract class for rendering blocks that contain text nodes with support for rendering text with link styles.
14
+ */
15
+ export class RTEBlockTextNodesRenderer extends RTEBlockRenderer {
16
+ renderNodes(block, renderContext) {
17
+ const linkGroupAnnotation = block.getAnnotationByType(InternalAnnotationTypeEnum.LINK_GROUP);
18
+ return linkGroupAnnotation
19
+ ? this.renderLinkNodes(block.nodes, renderContext)
20
+ : block.nodes.map((node) => RTETextNodeRenderer.render(node));
21
+ }
22
+ renderLinkNodes(nodes, { editable }) {
23
+ const blockNodes = this.groupNodesByLink(nodes);
24
+ return blockNodes.flatMap((item) => {
25
+ if (this.isLinkGroup(item)) {
26
+ const linkAnnotation = item[0].getAnnotationByType(NodeAnnotationTypeEnum.LINK);
27
+ return editable
28
+ ? this.renderLinkEditorWrapper(item, linkAnnotation)
29
+ : this.renderLink(item, linkAnnotation);
30
+ }
31
+ return RTETextNodeRenderer.render(item);
32
+ });
33
+ }
34
+ groupNodesByLink(nodes) {
35
+ return nodes.reduce((acc, node) => {
36
+ const nodeLinkAnnotation = node.getAnnotationByType(NodeAnnotationTypeEnum.LINK);
37
+ const lastGroup = acc[acc.length - 1];
38
+ if (isNonNullable(nodeLinkAnnotation)) {
39
+ if (lastGroup &&
40
+ this.isLinkGroup(lastGroup) &&
41
+ lastGroup[0].getAnnotationByType(NodeAnnotationTypeEnum.LINK).toEqual(nodeLinkAnnotation)) {
42
+ lastGroup.push(node);
43
+ }
44
+ else {
45
+ acc.push([node]);
46
+ }
47
+ }
48
+ else {
49
+ acc.push(node);
50
+ }
51
+ return acc;
52
+ }, []);
53
+ }
54
+ isLinkGroup(item) {
55
+ return Array.isArray(item);
56
+ }
57
+ renderLinkEditorWrapper(linkNodes, linkAnnotation) {
58
+ const { href } = linkAnnotation.link;
59
+ const textFromNodes = linkNodes.map((node) => node.text).join('');
60
+ const handleChange = ({ detail, }) => {
61
+ switch (detail.action) {
62
+ case 'link': {
63
+ const { url, text } = detail.payload;
64
+ const textChanged = text !== textFromNodes;
65
+ const groupKey = generateUUID();
66
+ linkNodes.forEach((node) => {
67
+ const linkAnnotationAction = new LinkAnnotationAction({
68
+ link: { href: url, groupKey: groupKey },
69
+ newText: textChanged ? text : undefined,
70
+ needMergeNode: textChanged && linkNodes.length > 1,
71
+ doSplit: false,
72
+ });
73
+ node.apply(linkAnnotationAction);
74
+ });
75
+ return;
76
+ }
77
+ case 'unlink': {
78
+ linkNodes.forEach((node) => node.deleteAnnotationByType(NodeAnnotationTypeEnum.LINK));
79
+ return;
80
+ }
81
+ }
82
+ };
83
+ let linkWrapperRef;
84
+ return (h("span", { class: "link-editor-wrapper", role: "link", tabIndex: 0, onKeyDown: createEnterKeyHandlerToTriggerClick(), ref: (ref) => {
85
+ if (ref) {
86
+ linkWrapperRef = ref;
87
+ }
88
+ } },
89
+ this.renderLink(linkNodes, linkAnnotation),
90
+ h("vega-rich-text-link-editor", { record: {
91
+ text: textFromNodes,
92
+ url: href,
93
+ }, ref: (ref) => {
94
+ if (ref) {
95
+ ref.target = linkWrapperRef;
96
+ DomNodeSubjectObserverFactory.addUniqueObserverToNode(ref, VegaChange, handleChange);
97
+ }
98
+ } })));
99
+ }
100
+ renderLink(linkNodes, linkAnnotation) {
101
+ const { href } = linkAnnotation.link;
102
+ return (h("a", { class: "v-rte--link", href: href, target: "_blank" }, linkNodes.map((node) => RTETextNodeRenderer.render(node))));
103
+ }
104
+ }
@@ -0,0 +1,15 @@
1
+ import { h } from '@stencil/core';
2
+ import { RTEImageBlock } from '../../blocks/image-block';
3
+ import { RTEBlockRenderer } from './block-renderer.abstract';
4
+ import RTEImageNodeRenderer from '../nodes/image-node-renderer';
5
+ class RTEImageBlockRenderer extends RTEBlockRenderer {
6
+ canHandle(block) {
7
+ return block instanceof RTEImageBlock;
8
+ }
9
+ render(block, renderContext) {
10
+ return (h("div", { style: Object.assign({}, super.getStyles(block)), ref: (ref) => super.registerRef(ref, block), class: super.getClasses(block) }, block.nodes.map((node) => {
11
+ return RTEImageNodeRenderer.render(node, renderContext);
12
+ })));
13
+ }
14
+ }
15
+ export default new RTEImageBlockRenderer();
@@ -0,0 +1,14 @@
1
+ import { h } from '@stencil/core';
2
+ import { RTEBlockRenderer } from './block-renderer.abstract';
3
+ import { RTEListBlock } from '../../blocks/list-block';
4
+ import RTEListItemBlockRenderer from './list-item-block-renderer';
5
+ class RTEListBlockRenderer extends RTEBlockRenderer {
6
+ canHandle(block) {
7
+ return block instanceof RTEListBlock;
8
+ }
9
+ render(block, renderContext) {
10
+ const BlockTag = block.type === 'number-list' ? 'ol' : 'ul';
11
+ return (h(BlockTag, { ref: (ref) => super.registerRef(ref, block) }, block.blocks.map((listItemBlock) => RTEListItemBlockRenderer.render(listItemBlock, renderContext))));
12
+ }
13
+ }
14
+ export default new RTEListBlockRenderer();
@@ -0,0 +1,14 @@
1
+ import { h } from '@stencil/core';
2
+ import RTEListBlockRenderer from './list-block-renderer';
3
+ import { RTEBlockTextNodesRenderer } from './block-text-nodes-renderer.abstract';
4
+ class RTEListItemBlockRenderer extends RTEBlockTextNodesRenderer {
5
+ render(block, renderContext) {
6
+ return (h("li", { ref: (ref) => super.registerRef(ref, block), style: super.getStyles(block), class: super.getClasses(block) },
7
+ super.renderNodes(block, renderContext),
8
+ this.renderChildren(block.children, renderContext)));
9
+ }
10
+ renderChildren(children, renderContext) {
11
+ return children === null || children === void 0 ? void 0 : children.map((block) => RTEListBlockRenderer.render(block, renderContext));
12
+ }
13
+ }
14
+ export default new RTEListItemBlockRenderer();
@@ -0,0 +1,28 @@
1
+ import { h } from '@stencil/core';
2
+ import { RTETextBlock } from '../../blocks/text-block';
3
+ import { RTEBlockTextNodesRenderer } from './block-text-nodes-renderer.abstract';
4
+ class RTETextBlockRenderer extends RTEBlockTextNodesRenderer {
5
+ canHandle(block) {
6
+ return block instanceof RTETextBlock;
7
+ }
8
+ render(block, renderContext) {
9
+ const BlockTag = this.getBlockTagByType(block.type);
10
+ return (h(BlockTag, { ref: (ref) => super.registerRef(ref, block), style: super.getStyles(block), class: super.getClasses(block) }, super.renderNodes(block, renderContext)));
11
+ }
12
+ getBlockTagByType(type) {
13
+ switch (type) {
14
+ case 'title':
15
+ case 'subtitle':
16
+ return `div`;
17
+ case 'heading-1':
18
+ return `h1`;
19
+ case 'heading-2':
20
+ return `h2`;
21
+ case 'heading-3':
22
+ return `h3`;
23
+ case 'paragraph':
24
+ return 'p';
25
+ }
26
+ }
27
+ }
28
+ export default new RTETextBlockRenderer();
@@ -0,0 +1,49 @@
1
+ import { h } from '@stencil/core';
2
+ import { ImageAnnotation } from '../../annotations/image-annotation';
3
+ import { NodeAnnotationTypeEnum } from '../../annotations/node-annotation.abstract';
4
+ import { ImageAnnotationAction } from '../../actions/image-annotation-action';
5
+ import stateEntityRenderingRegistry from '../../../slimmers/controllers/state-entity-rendering-registry';
6
+ import { DomNodeSubjectObserverFactory } from '../../../../../helpers/change-manager/subject/dom-node-subject/dom-node-subject-observer-factory';
7
+ import { VegaChange } from '../../../../../helpers/event-manager/event-id/vega-event-id';
8
+ import { RTENodeRenderer } from './node-renderer.abstract';
9
+ class RTEImageNodeRenderer extends RTENodeRenderer {
10
+ constructor() {
11
+ super(...arguments);
12
+ this.handleChange = ({ detail }, node) => {
13
+ switch (detail.action) {
14
+ case 'edit': {
15
+ const size = detail.payload.size;
16
+ const alt = detail.payload.alt;
17
+ node.apply(new ImageAnnotationAction(size, alt));
18
+ break;
19
+ }
20
+ /*
21
+ * The below method is e2e-test covered in
22
+ * @see{module:vega-rich-text-editor-image-click-delete-button}
23
+ */
24
+ /* istanbul ignore next */
25
+ case 'delete': {
26
+ const event = new InputEvent('beforeinput', {
27
+ inputType: 'deleteContentBackward',
28
+ bubbles: true,
29
+ });
30
+ setTimeout(() => {
31
+ stateEntityRenderingRegistry.getDOMByEntity(node).dispatchEvent(event);
32
+ }, 50);
33
+ break;
34
+ }
35
+ }
36
+ };
37
+ }
38
+ render(node, renderContext) {
39
+ const imageAnnotation = node.getAnnotationByType(NodeAnnotationTypeEnum.IMAGE);
40
+ const { size, alt } = imageAnnotation || new ImageAnnotation('md', '');
41
+ return renderContext.editable ? (h("vega-rich-text-image-editor", { style: super.getStyles(node), size: size, alt: alt, ref: (ref) => {
42
+ DomNodeSubjectObserverFactory.addUniqueObserverToNode(ref, VegaChange, (e) => this.handleChange(e, node));
43
+ } }, this.renderImage(alt, node, renderContext))) : (this.renderImage(alt, node, renderContext));
44
+ }
45
+ renderImage(alt, node, renderContext) {
46
+ return (h("img", { style: renderContext.editable ? { width: '100%' } : super.getStyles(node), alt: alt, src: node.url, ref: (ref) => super.registerRef(ref, node) }));
47
+ }
48
+ }
49
+ export default new RTEImageNodeRenderer();
@@ -0,0 +1,35 @@
1
+ import stateEntityRenderingRegistry from '../../../slimmers/controllers/state-entity-rendering-registry';
2
+ import { NodeAnnotation } from '../../annotations/node-annotation.abstract';
3
+ export class RTENodeRenderer {
4
+ registerRef(ref, node) {
5
+ if (ref) {
6
+ stateEntityRenderingRegistry.register(ref, node);
7
+ }
8
+ }
9
+ /**
10
+ * Get styles from annotations
11
+ *
12
+ * @param {RTENode} node - The DTO node
13
+ * @returns {AnnotationStyle} - Annotation style
14
+ */
15
+ getStyles(node) {
16
+ return Array.from(node.annotationMap.values())
17
+ .filter((annotation) => annotation instanceof NodeAnnotation)
18
+ .map((annotation) => annotation.render())
19
+ .filter(Boolean)
20
+ .reduce((current, obj) => (Object.assign(Object.assign({}, current), obj)), {});
21
+ }
22
+ /**
23
+ * Get classes from annotations
24
+ *
25
+ * @param {RTENode} node - The DTO node
26
+ * @returns {AnnotationStyle} - Annotation style
27
+ */
28
+ getClasses(node) {
29
+ return Array.from(node.annotationMap.values())
30
+ .filter((annotation) => annotation instanceof NodeAnnotation)
31
+ .map((annotation) => { var _a; return (_a = annotation.renderClass) === null || _a === void 0 ? void 0 : _a.call(annotation); })
32
+ .filter(Boolean)
33
+ .reduce((pre, cur) => [pre, cur].join(' '), '');
34
+ }
35
+ }
@@ -0,0 +1,24 @@
1
+ import { h } from '@stencil/core';
2
+ import { RTENodeRenderer } from './node-renderer.abstract';
3
+ import { NodeAnnotationTypeEnum } from '../../annotations/node-annotation.abstract';
4
+ import { ZERO_WIDTH_SPACE } from '../../../constants/constant';
5
+ import TextNodeElementRenderingRegistry from '../../../slimmers/controllers/text-node-rendering-registry';
6
+ class RTETextNodeRenderer extends RTENodeRenderer {
7
+ render(node) {
8
+ const codeAnnotation = node.annotationMap.get(NodeAnnotationTypeEnum.CODE);
9
+ if (codeAnnotation === null || codeAnnotation === void 0 ? void 0 : codeAnnotation.code) {
10
+ return (h("code", { style: super.getStyles(node), class: super.getClasses(node), ref: (ref) => this.registerRef(ref, node) }, node.text || ZERO_WIDTH_SPACE));
11
+ }
12
+ return (h("span", { style: super.getStyles(node), class: super.getClasses(node), ref: (ref) => this.registerRef(ref, node) }, node.text || ZERO_WIDTH_SPACE));
13
+ }
14
+ registerRef(ref, node) {
15
+ super.registerRef(ref, node);
16
+ if (ref) {
17
+ const textColorAnnotation = node.getAnnotationByType('TEXT_COLOR');
18
+ if (textColorAnnotation) {
19
+ TextNodeElementRenderingRegistry.register(ref, textColorAnnotation);
20
+ }
21
+ }
22
+ }
23
+ }
24
+ export default new RTETextNodeRenderer();
@@ -7,12 +7,14 @@ import { ImgToRTEImageBlockStrategy } from './img-to-rte-image-block-strategy';
7
7
  import { VegaImageToRTEImageBlockStrategy } from './vega-image-to-rte-image-block-strategy';
8
8
  import { OlToRTEListBlockStrategy } from './ol-to-rte-list-block-strategy';
9
9
  import { SpanImageToRTEImageBlockStrategy } from './span-img-to-rte-image-block-strategy';
10
+ import { ULNotLiChildToRTEListItemBlockStrategy } from './ul-not-li-child-to-rte-list-item-block';
10
11
  /** Element to DTO processor */
11
12
  export class ElementToDtoStrategyProcessor {
12
13
  constructor() {
13
14
  this.elementStrategies = [
14
15
  new UlToRTEListBlockStrategy(),
15
16
  new OlToRTEListBlockStrategy(),
17
+ new ULNotLiChildToRTEListItemBlockStrategy(),
16
18
  new LiToRTEListItemBlockStrategy(),
17
19
  new InlineBlockToRTETextBlockStrategy(),
18
20
  new ImgToRTEImageBlockStrategy(),
@@ -0,0 +1,49 @@
1
+ import { generateUUID } from '../../../../../../utils/misc';
2
+ import { RTEListItemBlock } from '../../../../dto/blocks/list-item-block';
3
+ import { BlockToRTEBlockStrategyAbstract } from './block-to-rte-block-strategy.abstract';
4
+ /** Transform child element of UL element which are not LI element to list item block DTO */
5
+ export class ULNotLiChildToRTEListItemBlockStrategy extends BlockToRTEBlockStrategyAbstract {
6
+ /**
7
+ * Can be handle.
8
+ *
9
+ * @param {HTMLElement[]} elementsArray - Current elements.
10
+ * @param {number} currentIndex - Current element index.
11
+ * @returns {number} - can be handled element count.
12
+ */
13
+ canHandle(elementsArray, currentIndex) {
14
+ const element = elementsArray[currentIndex];
15
+ const parent = element.parentElement;
16
+ return element.nodeName !== 'LI' && parent && ['UL', 'OL'].includes(parent.nodeName) ? 1 : 0;
17
+ }
18
+ /**
19
+ * Parse to a list item block.
20
+ *
21
+ * @param {HTMLElement[]} elementsArray - Current elements.
22
+ * @returns {Nullable<RTEContentBlock>} - List item block.
23
+ */
24
+ handle(elementsArray) {
25
+ const nodes = this.generateChildNodes(elementsArray);
26
+ if (nodes.length === 0)
27
+ return null;
28
+ return RTEListItemBlock.from({
29
+ id: generateUUID(),
30
+ type: 'list-item',
31
+ nodes: nodes,
32
+ annotations: {},
33
+ });
34
+ }
35
+ /* istanbul ignore next */
36
+ /**
37
+ * Append child blocks.
38
+ */
39
+ // eslint-disable-next-line @typescript-eslint/no-empty-function
40
+ appendChildBlocks() { }
41
+ /**
42
+ * Should continue process to child elements.
43
+ *
44
+ * @returns {boolean} - boolean.
45
+ */
46
+ shouldProceedToElementChildren() {
47
+ return false;
48
+ }
49
+ }
@@ -1,5 +1,3 @@
1
- import { BoldAnnotationAction } from '../../../dto/actions/bold-annotation-action';
2
- import { HorizontalAlignmentAnnotationAction } from '../../../dto/actions/horizontal-alignment-annotation-action';
3
1
  import { RTEImageBlock } from '../../../dto/blocks/image-block';
4
2
  import { RTEImageNode } from '../../../dto/nodes/image-node';
5
3
  describe('image block', () => {
@@ -64,14 +62,6 @@ describe('image block', () => {
64
62
  annotations: { indent: 2 },
65
63
  });
66
64
  });
67
- it('render method should work as expect', () => {
68
- const imageBlock = new RTEImageBlock('block-1');
69
- const imageNode = new RTEImageNode('1', 'mock-url', imageBlock);
70
- imageBlock.nodes = [imageNode];
71
- imageNode.apply(new BoldAnnotationAction(true));
72
- imageBlock.apply(new HorizontalAlignmentAnnotationAction('right'));
73
- expect(imageBlock.render()).toBeDefined();
74
- });
75
65
  it('isNotEmpty should work as expect', () => {
76
66
  const imageBlock = new RTEImageBlock('block-1');
77
67
  const imageNode = new RTEImageNode('1', 'mock-url', imageBlock);
@@ -1,5 +1,4 @@
1
1
  import { RTEListBlock } from '../../../dto/blocks/list-block';
2
- import stateEntityRenderingRegistry from '../../../slimmers/controllers/state-entity-rendering-registry';
3
2
  describe('bullet list', () => {
4
3
  it('new RTEBulletListBlock should work as expect', () => {
5
4
  expect(new RTEListBlock('1', 'bullet-list')).toBeDefined();
@@ -61,33 +60,6 @@ describe('bullet list', () => {
61
60
  ],
62
61
  });
63
62
  });
64
- it('registerRef method should work as expect', () => {
65
- const bulletListBlock = new RTEListBlock('1', 'bullet-list');
66
- const mockDiv = document.createElement('div');
67
- bulletListBlock['registerRef'](mockDiv);
68
- expect(stateEntityRenderingRegistry.getDOMByEntity(bulletListBlock)).toEqual(mockDiv);
69
- expect(stateEntityRenderingRegistry.getEntityByDOM(mockDiv)).toEqual(bulletListBlock);
70
- });
71
- it('render method should work as expect', () => {
72
- expect(new RTEListBlock('1', 'bullet-list').render()).toBeDefined();
73
- expect(RTEListBlock.from({
74
- id: '1-1-1',
75
- type: 'bullet-list',
76
- blocks: [
77
- {
78
- id: '1-1-1-1',
79
- type: 'list-item',
80
- nodes: [
81
- {
82
- id: '1-1-1-1-1',
83
- type: 'text',
84
- text: 'This is a bullet-list 3-1.',
85
- },
86
- ],
87
- },
88
- ],
89
- }).render()).toBeDefined();
90
- });
91
63
  it('isNotEmpty should work as expect', () => {
92
64
  const bulletListBlock = RTEListBlock.from({
93
65
  id: '1',
@@ -133,26 +105,6 @@ describe('bullet list', () => {
133
105
  });
134
106
  });
135
107
  describe('number list', () => {
136
- it('render method should work as expect', () => {
137
- expect(new RTEListBlock('1', 'bullet-list').render()).toBeDefined();
138
- expect(RTEListBlock.from({
139
- id: '1-1-1',
140
- type: 'number-list',
141
- blocks: [
142
- {
143
- id: '1-1-1-1',
144
- type: 'list-item',
145
- nodes: [
146
- {
147
- id: '1-1-1-1-1',
148
- type: 'text',
149
- text: 'This is a bullet-list 3-1.',
150
- },
151
- ],
152
- },
153
- ],
154
- }).render()).toBeDefined();
155
- });
156
108
  it('isNotEmpty should work as expect', () => {
157
109
  const listBlock = RTEListBlock.from({
158
110
  id: '1',
@@ -1,6 +1,5 @@
1
1
  import { RTEListItemBlock } from '../../../dto/blocks/list-item-block';
2
2
  import { RTETextNode } from '../../../dto/nodes/text-node';
3
- import stateEntityRenderingRegistry from '../../../slimmers/controllers/state-entity-rendering-registry';
4
3
  describe('bullet list item', () => {
5
4
  it('new RTEBulletListItemBlock should work as expect', () => {
6
5
  const bulletListItemBlock = new RTEListItemBlock('1');
@@ -129,45 +128,6 @@ describe('bullet list item', () => {
129
128
  ],
130
129
  });
131
130
  });
132
- it('render method should work as expect', () => {
133
- expect(RTEListItemBlock.from({
134
- id: '1',
135
- type: 'list-item',
136
- nodes: [
137
- {
138
- id: '1-1',
139
- type: 'text',
140
- text: 'This is a bullet-list 1.',
141
- },
142
- ],
143
- children: [
144
- {
145
- id: '1-1-1',
146
- type: 'bullet-list',
147
- blocks: [
148
- {
149
- id: '1-1-1-1',
150
- type: 'list-item',
151
- nodes: [
152
- {
153
- id: '1-1-1-1-1',
154
- type: 'text',
155
- text: 'This is a bullet-list 3-1.',
156
- },
157
- ],
158
- },
159
- ],
160
- },
161
- ],
162
- }).render()).toBeDefined();
163
- });
164
- it('registerRef method should work as expect', () => {
165
- const bulletListItemBlock = new RTEListItemBlock('1');
166
- const mockDiv = document.createElement('div');
167
- bulletListItemBlock['registerRef'](mockDiv);
168
- expect(stateEntityRenderingRegistry.getDOMByEntity(bulletListItemBlock)).toEqual(mockDiv);
169
- expect(stateEntityRenderingRegistry.getEntityByDOM(mockDiv)).toEqual(bulletListItemBlock);
170
- });
171
131
  it('getLastNode should work as expect', () => {
172
132
  const listItemBlock = RTEListItemBlock.from({
173
133
  id: '1',
@@ -1,11 +1,6 @@
1
1
  import { RTETextBlock } from '../../../dto/blocks/text-block';
2
2
  import { RTETextNode } from '../../../dto/nodes/text-node';
3
- import { BoldAnnotationAction } from '../../../dto/actions/bold-annotation-action';
4
- import stateEntityRenderingRegistry from '../../../slimmers/controllers/state-entity-rendering-registry';
5
3
  import { TextStyleAnnotationAction } from '../../../dto/actions/text-style-annotation-action';
6
- import domNodesSubjectFactory from '../../../../../helpers/change-manager/subject/dom-node-subject/dom-node-subject-factory';
7
- import { VegaInternalRichTextEditorFlushChanges } from '../../../../../helpers/event-manager/event-id/vega-internal-event-id';
8
- import { HorizontalAlignmentAnnotationAction } from '../../../dto/actions/horizontal-alignment-annotation-action';
9
4
  import { SelectionChangeAction } from '../../../dto/actions/selection-change-action';
10
5
  describe('text block', () => {
11
6
  it('new RTETextBlock should work as expect', () => {
@@ -84,35 +79,6 @@ describe('text block', () => {
84
79
  },
85
80
  });
86
81
  });
87
- it('render method should work as expect', () => {
88
- const textBlock = new RTETextBlock('block-1', 'paragraph');
89
- const textNode = new RTETextNode('1', 'This is a text.', textBlock);
90
- textBlock.nodes = [textNode];
91
- textNode.apply(new BoldAnnotationAction(true));
92
- textBlock.apply(new HorizontalAlignmentAnnotationAction('right'));
93
- expect(textBlock.render()).toBeDefined();
94
- });
95
- it('getBlockTagByType should work as expect', () => {
96
- const titleBlock = new RTETextBlock('block-1', 'title');
97
- expect(titleBlock['getBlockTagByType'](titleBlock.type)).toEqual('div');
98
- const subtitleBlock = new RTETextBlock('block-1', 'subtitle');
99
- expect(subtitleBlock['getBlockTagByType'](subtitleBlock.type)).toEqual('div');
100
- const heading1Block = new RTETextBlock('block-1', 'heading-1');
101
- expect(heading1Block['getBlockTagByType'](heading1Block.type)).toEqual('h1');
102
- const heading2Block = new RTETextBlock('block-1', 'heading-2');
103
- expect(heading2Block['getBlockTagByType'](heading2Block.type)).toEqual('h2');
104
- const heading3Block = new RTETextBlock('block-1', 'heading-3');
105
- expect(heading3Block['getBlockTagByType'](heading3Block.type)).toEqual('h3');
106
- const paragraphBlock = new RTETextBlock('block-1', 'paragraph');
107
- expect(paragraphBlock['getBlockTagByType'](paragraphBlock.type)).toEqual('p');
108
- });
109
- it('registerRef method should work as expect', () => {
110
- const titleBlock = new RTETextBlock('block-1', 'title');
111
- const mockDiv = document.createElement('div');
112
- titleBlock['registerRef'](mockDiv);
113
- expect(stateEntityRenderingRegistry.getDOMByEntity(titleBlock)).toEqual(mockDiv);
114
- expect(stateEntityRenderingRegistry.getEntityByDOM(mockDiv)).toEqual(titleBlock);
115
- });
116
82
  it('apply method should work as expect', () => {
117
83
  const titleBlock = new RTETextBlock('block-1', 'title');
118
84
  const textNode = new RTETextNode('1', 'This is a text.', titleBlock);
@@ -135,11 +101,6 @@ describe('text block', () => {
135
101
  };
136
102
  mockDiv.append(mockSpan);
137
103
  mockHost.append(mockDiv);
138
- titleBlock['registerRef'](mockDiv);
139
- textNode['registerRef'](mockSpan);
140
- const parentSubject = domNodesSubjectFactory.getSubject(mockHost, VegaInternalRichTextEditorFlushChanges);
141
- expect(domNodesSubjectFactory.getSubjectFromParentNodeByEventId(mockDiv, VegaInternalRichTextEditorFlushChanges)).toEqual(parentSubject);
142
- expect(stateEntityRenderingRegistry.getDOMByEntity(titleBlock)).toEqual(mockDiv);
143
104
  expect(titleBlock.type).toEqual('title');
144
105
  textNode.apply(new SelectionChangeAction(range));
145
106
  titleBlock.apply(new TextStyleAnnotationAction('heading-1', true));
@@ -1,6 +1,5 @@
1
1
  import { RTEImageNode } from '../../../dto/nodes/image-node';
2
2
  import { RTEImageBlock } from '../../../dto/blocks/image-block';
3
- import stateEntityRenderingRegistry from '../../../slimmers/controllers/state-entity-rendering-registry';
4
3
  import { ImageAnnotationAction } from '../../../dto/actions/image-annotation-action';
5
4
  describe('image node', () => {
6
5
  it('new RTEImageNode should work as expect', () => {
@@ -8,19 +7,6 @@ describe('image node', () => {
8
7
  const imageNode = new RTEImageNode('1', 'mock-url', imageBlock);
9
8
  expect(imageNode.toJSON()).toEqual({ id: '1', type: 'image', url: 'mock-url' });
10
9
  });
11
- it('render method should work as expect', () => {
12
- const imageBlock = new RTEImageBlock('block-id');
13
- const imageNode = new RTEImageNode('1', 'mock-url', imageBlock);
14
- expect(imageNode.render()).toBeDefined();
15
- });
16
- it('registerRef method should work as expect', () => {
17
- const imageBlock = new RTEImageBlock('block-id');
18
- const imageNode = new RTEImageNode('1', 'mock-url', imageBlock);
19
- const mockImg = document.createElement('img');
20
- imageNode['registerRef'](mockImg);
21
- expect(stateEntityRenderingRegistry.getDOMByEntity(imageNode)).toEqual(mockImg);
22
- expect(stateEntityRenderingRegistry.getEntityByDOM(mockImg)).toEqual(imageNode);
23
- });
24
10
  it('apply method should work as expect', () => {
25
11
  const imageBlock = new RTEImageBlock('1');
26
12
  const imageNode = new RTEImageNode('1', 'mock-url', imageBlock);
@@ -15,10 +15,6 @@ import { BoldAnnotationAction } from '../../../dto/actions/bold-annotation-actio
15
15
  import { NodeAnnotationTypeEnum } from '../../../dto/annotations/node-annotation.abstract';
16
16
  import stateEntityRenderingRegistry from '../../../slimmers/controllers/state-entity-rendering-registry';
17
17
  import { SelectionChangeAction } from '../../../dto/actions/selection-change-action';
18
- import domNodesSubjectFactory from '../../../../../helpers/change-manager/subject/dom-node-subject/dom-node-subject-factory';
19
- import { VegaInternalRichTextEditorFlushChanges } from '../../../../../helpers/event-manager/event-id/vega-internal-event-id';
20
- import { UnderlineAnnotationAction } from '../../../dto/actions/underline-annotation-action';
21
- import { TextColorAnnotationAction } from '../../../dto/actions/text-color-annotation-action';
22
18
  import { DeleteNodeAnnotationAction } from '../../../dto/actions/delete-node-annotation-action';
23
19
  describe('text node', () => {
24
20
  it('new RTETextNode should work as expect', () => {
@@ -91,24 +87,6 @@ describe('text node', () => {
91
87
  expect(id).not.toEqual('1');
92
88
  expect(rest).toEqual({ text: 'This is a new text.', type: 'text' });
93
89
  });
94
- it('render method should work as expect with inline style', () => {
95
- const textBlock = new RTETextBlock('block-1', 'paragraph');
96
- const textNode = new RTETextNode('1', 'This is a text.', textBlock);
97
- textNode.apply(new BoldAnnotationAction(true));
98
- expect(textNode.render()).toBeDefined();
99
- });
100
- it('render method should work as expect with class style', () => {
101
- const textBlock = new RTETextBlock('block-1', 'paragraph');
102
- const textNode = new RTETextNode('1', 'This is a text.', textBlock);
103
- textNode.apply(new UnderlineAnnotationAction(true));
104
- expect(textNode.render()).toBeDefined();
105
- });
106
- it('render method should work as expect with text color class style', () => {
107
- const textBlock = new RTETextBlock('block-1', 'paragraph');
108
- const textNode = new RTETextNode('1', 'This is a text.', textBlock);
109
- textNode.apply(new TextColorAnnotationAction('black'));
110
- expect(textNode.render()).toBeDefined();
111
- });
112
90
  it('getAnnotationByType should work as expect', () => {
113
91
  const textBlock = new RTETextBlock('block-1', 'paragraph');
114
92
  const textNode = new RTETextNode('1', 'This is a text.', textBlock);
@@ -118,24 +96,12 @@ describe('text node', () => {
118
96
  type: 'BOLD',
119
97
  });
120
98
  });
121
- it('registerRef method should work as expect', () => {
122
- const textBlock = new RTETextBlock('block-1', 'paragraph');
123
- const textNode = new RTETextNode('1', 'This is a text.', textBlock);
124
- const mockDiv = document.createElement('div');
125
- textNode['registerRef'](mockDiv);
126
- expect(stateEntityRenderingRegistry.getDOMByEntity(textNode)).toEqual(mockDiv);
127
- expect(stateEntityRenderingRegistry.getEntityByDOM(mockDiv)).toEqual(textNode);
128
- });
129
99
  it('apply method should work as expect', () => {
130
100
  const textBlock = new RTETextBlock('block-1', 'paragraph');
131
101
  const textNode = new RTETextNode('1', 'This is a text.', textBlock);
132
102
  const mockSpan = document.createElement('span');
133
103
  const mockHost = document.createElement('div');
134
104
  mockHost.append(mockSpan);
135
- textNode['registerRef'](mockSpan);
136
- const parentSubject = domNodesSubjectFactory.getSubject(mockHost, VegaInternalRichTextEditorFlushChanges);
137
- expect(domNodesSubjectFactory.getSubjectFromParentNodeByEventId(mockSpan, VegaInternalRichTextEditorFlushChanges)).toEqual(parentSubject);
138
- expect(stateEntityRenderingRegistry.getDOMByEntity(textNode)).toEqual(mockSpan);
139
105
  textNode.apply(new BoldAnnotationAction(true));
140
106
  expect(textNode.toJSON()).toEqual({
141
107
  id: '1',