@globalpayments/vega 2.94.0 → 2.95.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 (251) hide show
  1. package/dist/cjs/{app-globals-d05c3410.js → app-globals-76815382.js} +1 -1
  2. package/dist/cjs/{child-nodes-event-prevent-slimmer-e67ee84c.js → child-nodes-event-prevent-slimmer-e0ac8467.js} +1 -1
  3. package/dist/cjs/{event-emit-slimmer-d234a619.js → event-emit-slimmer-34aa195e.js} +1 -1
  4. package/dist/cjs/index.cjs.js +2 -2
  5. package/dist/cjs/{internal-vega-event-manager-13c4012b.js → internal-vega-event-manager-7003c84a.js} +10 -2
  6. package/dist/cjs/loader.cjs.js +4 -4
  7. package/dist/cjs/shared-backdrop-manager-71e54fdb.js +199 -0
  8. package/dist/cjs/{token-extension-ea891d54.js → token-extension-d123d9d0.js} +1 -1
  9. package/dist/cjs/vega-accordion.cjs.entry.js +2 -2
  10. package/dist/cjs/vega-app-footer.cjs.entry.js +2 -2
  11. package/dist/cjs/vega-app-header-button.cjs.entry.js +3 -3
  12. package/dist/cjs/vega-banner.cjs.entry.js +2 -2
  13. package/dist/cjs/vega-breadcrumb.cjs.entry.js +3 -3
  14. package/dist/cjs/vega-button-circle.cjs.entry.js +3 -3
  15. package/dist/cjs/vega-button-group_2.cjs.entry.js +3 -3
  16. package/dist/cjs/vega-button-link.cjs.entry.js +3 -3
  17. package/dist/cjs/vega-button.cjs.entry.js +3 -3
  18. package/dist/cjs/vega-calendar_5.cjs.entry.js +3 -3
  19. package/dist/cjs/vega-carousel.cjs.entry.js +2 -2
  20. package/dist/cjs/vega-checkbox_2.cjs.entry.js +3 -3
  21. package/dist/cjs/vega-chip.cjs.entry.js +3 -3
  22. package/dist/cjs/vega-code-block.cjs.entry.js +3 -3
  23. package/dist/cjs/vega-color-picker.cjs.entry.js +2 -2
  24. package/dist/cjs/vega-color-swatch-picker.cjs.entry.js +3 -3
  25. package/dist/cjs/vega-color-swatch.cjs.entry.js +2 -2
  26. package/dist/cjs/vega-combo-box.cjs.entry.js +22 -4
  27. package/dist/cjs/vega-date-picker_2.cjs.entry.js +3 -3
  28. package/dist/cjs/vega-dialog_2.cjs.entry.js +160 -70
  29. package/dist/cjs/vega-dropdown_5.cjs.entry.js +14 -9
  30. package/dist/cjs/vega-env-manager-23b8b23c.js +2 -2
  31. package/dist/cjs/vega-field-label.cjs.entry.js +2 -2
  32. package/dist/cjs/vega-file-uploader.cjs.entry.js +2 -2
  33. package/dist/cjs/vega-form.cjs.entry.js +3 -3
  34. package/dist/cjs/vega-image-uploader.cjs.entry.js +3 -3
  35. package/dist/cjs/vega-input-credit-card.cjs.entry.js +3 -3
  36. package/dist/cjs/vega-input-numeric.cjs.entry.js +3 -3
  37. package/dist/cjs/vega-input-passcode.cjs.entry.js +3 -3
  38. package/dist/cjs/vega-input-phone-number.cjs.entry.js +3 -3
  39. package/dist/cjs/vega-input-range.cjs.entry.js +3 -3
  40. package/dist/cjs/vega-input-select.cjs.entry.js +54 -5
  41. package/dist/cjs/vega-input.cjs.entry.js +2 -2
  42. package/dist/cjs/vega-item-toggle.cjs.entry.js +2 -2
  43. package/dist/cjs/vega-left-nav_5.cjs.entry.js +32 -193
  44. package/dist/cjs/vega-pagination-page-selector-mobile.cjs.entry.js +2 -2
  45. package/dist/cjs/vega-pagination.cjs.entry.js +3 -3
  46. package/dist/cjs/vega-popover_2.cjs.entry.js +2 -2
  47. package/dist/cjs/vega-progress-tracker_2.cjs.entry.js +13 -3
  48. package/dist/cjs/vega-radio_2.cjs.entry.js +3 -3
  49. package/dist/cjs/vega-rich-text-editor_4.cjs.entry.js +3 -3
  50. package/dist/cjs/vega-rich-text-find-replace-panel.cjs.entry.js +2 -2
  51. package/dist/cjs/vega-rich-text-special-characters-panel.cjs.entry.js +2 -2
  52. package/dist/cjs/vega-rich-text-table-properties_3.cjs.entry.js +2 -2
  53. package/dist/cjs/vega-segment-control.cjs.entry.js +2 -2
  54. package/dist/cjs/vega-selection-chip_2.cjs.entry.js +3 -3
  55. package/dist/cjs/vega-selection-tile_2.cjs.entry.js +3 -3
  56. package/dist/cjs/vega-sidenav_3.cjs.entry.js +2 -2
  57. package/dist/cjs/vega-signature-capture.cjs.entry.js +2 -2
  58. package/dist/cjs/vega-stepper.cjs.entry.js +3 -3
  59. package/dist/cjs/vega-tab-group_2.cjs.entry.js +3 -3
  60. package/dist/cjs/vega-table_11.cjs.entry.js +3 -3
  61. package/dist/cjs/vega-textarea.cjs.entry.js +3 -3
  62. package/dist/cjs/vega-time-picker_2.cjs.entry.js +3 -3
  63. package/dist/cjs/vega-toggle-switch.cjs.entry.js +2 -2
  64. package/dist/cjs/vega.cjs.js +4 -4
  65. package/dist/collection/components/vega-combo-box/slimmers/renderers/vega-combo-box-dropdown-renderer.js +5 -1
  66. package/dist/collection/components/vega-combo-box/vega-combo-box.js +52 -1
  67. package/dist/collection/components/vega-dialog/vega-dialog.js +1 -1
  68. package/dist/collection/components/vega-dropdown/slimmers/controllers/vega-dropdown-render-mode-controller.js +7 -6
  69. package/dist/collection/components/vega-dropdown/vega-dropdown.js +6 -1
  70. package/dist/collection/components/vega-input-select/slimmers/controllers/vega-input-select-dropdown-controller.js +11 -1
  71. package/dist/collection/components/vega-input-select/slimmers/controllers/vega-input-select-items-slot-controler.js +23 -2
  72. package/dist/collection/components/vega-input-select/slimmers/renderers/vega-input-select-dropdown-renderer.js +4 -0
  73. package/dist/collection/components/vega-input-select/vega-input-select.js +53 -2
  74. package/dist/collection/components/vega-modal/slimmers/controllers/vega-modal-backdrop-manager.js +141 -0
  75. package/dist/collection/components/vega-modal/slimmers/controllers/vega-modal-open-state-controller.js +10 -17
  76. package/dist/collection/components/vega-modal/slimmers/controllers/vega-modal-z-index-controller.js +2 -2
  77. package/dist/collection/components/vega-modal/slimmers/renderers/vega-modal-renderer.js +3 -2
  78. package/dist/collection/components/vega-modal/vega-modal.js +77 -8
  79. package/dist/collection/components/vega-progress-tracker/slimmers/controllers/vega-progress-tracker-current-steps-controller.js +7 -0
  80. package/dist/collection/components/vega-progress-tracker/vega-progress-tracker.js +6 -0
  81. package/dist/collection/helpers/backdrop/shared-backdrop-manager.js +32 -1
  82. package/dist/collection/helpers/event-manager/event-id/component-event-id-map.js +11 -3
  83. package/dist/esm/{app-globals-f2336686.js → app-globals-eafcc7a1.js} +1 -1
  84. package/dist/esm/{child-nodes-event-prevent-slimmer-96c14f5a.js → child-nodes-event-prevent-slimmer-82626871.js} +1 -1
  85. package/dist/esm/{event-emit-slimmer-db4a82e0.js → event-emit-slimmer-2452278f.js} +1 -1
  86. package/dist/esm/{image-annotation-action-b3b6c308.js → image-annotation-action-08a20d5e.js} +1 -1
  87. package/dist/esm/index.js +3 -3
  88. package/dist/esm/{internal-vega-event-manager-48690e5b.js → internal-vega-event-manager-2ecc9186.js} +11 -3
  89. package/dist/esm/loader.js +5 -5
  90. package/dist/esm/shared-backdrop-manager-a7c63838.js +197 -0
  91. package/dist/esm/{token-extension-9896879b.js → token-extension-f5bf9c21.js} +2 -2
  92. package/dist/esm/vega-accordion.entry.js +3 -3
  93. package/dist/esm/vega-app-footer.entry.js +3 -3
  94. package/dist/esm/vega-app-header-button.entry.js +4 -4
  95. package/dist/esm/vega-banner.entry.js +3 -3
  96. package/dist/esm/vega-breadcrumb.entry.js +4 -4
  97. package/dist/esm/vega-button-circle.entry.js +4 -4
  98. package/dist/esm/vega-button-group_2.entry.js +4 -4
  99. package/dist/esm/vega-button-link.entry.js +4 -4
  100. package/dist/esm/vega-button.entry.js +4 -4
  101. package/dist/esm/vega-calendar_5.entry.js +4 -4
  102. package/dist/esm/vega-carousel.entry.js +3 -3
  103. package/dist/esm/vega-checkbox_2.entry.js +4 -4
  104. package/dist/esm/vega-chip.entry.js +4 -4
  105. package/dist/esm/vega-code-block.entry.js +4 -4
  106. package/dist/esm/vega-color-picker.entry.js +3 -3
  107. package/dist/esm/vega-color-swatch-picker.entry.js +4 -4
  108. package/dist/esm/vega-color-swatch.entry.js +3 -3
  109. package/dist/esm/vega-combo-box.entry.js +23 -5
  110. package/dist/esm/vega-date-picker_2.entry.js +4 -4
  111. package/dist/esm/vega-dialog_2.entry.js +161 -71
  112. package/dist/esm/vega-dropdown_5.entry.js +15 -10
  113. package/dist/esm/vega-env-manager-8f8dc473.js +2 -2
  114. package/dist/esm/{vega-event-id-270fe47e.js → vega-event-id-f55f6977.js} +1 -1
  115. package/dist/esm/vega-field-label.entry.js +3 -3
  116. package/dist/esm/vega-file-uploader.entry.js +3 -3
  117. package/dist/esm/vega-form.entry.js +4 -4
  118. package/dist/esm/vega-image-uploader.entry.js +4 -4
  119. package/dist/esm/vega-input-credit-card.entry.js +4 -4
  120. package/dist/esm/vega-input-numeric.entry.js +4 -4
  121. package/dist/esm/vega-input-passcode.entry.js +4 -4
  122. package/dist/esm/vega-input-phone-number.entry.js +4 -4
  123. package/dist/esm/vega-input-range.entry.js +4 -4
  124. package/dist/esm/vega-input-select.entry.js +55 -6
  125. package/dist/esm/vega-input.entry.js +3 -3
  126. package/dist/esm/vega-item-toggle.entry.js +3 -3
  127. package/dist/esm/vega-left-nav_5.entry.js +32 -193
  128. package/dist/esm/vega-page-notification_2.entry.js +1 -1
  129. package/dist/esm/vega-pagination-page-selector-mobile.entry.js +3 -3
  130. package/dist/esm/vega-pagination-page-size-selector-mobile.entry.js +1 -1
  131. package/dist/esm/vega-pagination.entry.js +4 -4
  132. package/dist/esm/vega-popover_2.entry.js +3 -3
  133. package/dist/esm/vega-progress-tracker_2.entry.js +14 -4
  134. package/dist/esm/vega-radio_2.entry.js +4 -4
  135. package/dist/esm/vega-rich-text-content.entry.js +2 -2
  136. package/dist/esm/vega-rich-text-editor_4.entry.js +5 -5
  137. package/dist/esm/vega-rich-text-find-replace-panel.entry.js +3 -3
  138. package/dist/esm/vega-rich-text-special-characters-panel.entry.js +3 -3
  139. package/dist/esm/vega-rich-text-table-properties_3.entry.js +3 -3
  140. package/dist/esm/vega-segment-control.entry.js +3 -3
  141. package/dist/esm/vega-selection-chip_2.entry.js +4 -4
  142. package/dist/esm/vega-selection-tile_2.entry.js +4 -4
  143. package/dist/esm/vega-sidenav_3.entry.js +3 -3
  144. package/dist/esm/vega-signature-capture.entry.js +3 -3
  145. package/dist/esm/vega-stepper.entry.js +4 -4
  146. package/dist/esm/vega-tab-group_2.entry.js +4 -4
  147. package/dist/esm/vega-table_11.entry.js +4 -4
  148. package/dist/esm/vega-textarea.entry.js +4 -4
  149. package/dist/esm/vega-time-picker_2.entry.js +4 -4
  150. package/dist/esm/vega-toggle-switch.entry.js +3 -3
  151. package/dist/esm/vega.js +5 -5
  152. package/dist/sri/vega-sri-manifest.json +232 -228
  153. package/dist/types/components/vega-combo-box/slimmers/renderers/vega-combo-box-dropdown-renderer.d.ts +1 -0
  154. package/dist/types/components/vega-combo-box/vega-combo-box.d.ts +21 -0
  155. package/dist/types/components/vega-dropdown/slimmers/controllers/vega-dropdown-render-mode-controller.d.ts +2 -1
  156. package/dist/types/components/vega-dropdown/vega-dropdown.d.ts +4 -0
  157. package/dist/types/components/vega-input-select/slimmers/controllers/vega-input-select-dropdown-controller.d.ts +2 -0
  158. package/dist/types/components/vega-input-select/slimmers/controllers/vega-input-select-items-slot-controler.d.ts +10 -0
  159. package/dist/types/components/vega-input-select/types.d.ts +1 -0
  160. package/dist/types/components/vega-input-select/vega-input-select.d.ts +21 -0
  161. package/dist/types/components/vega-modal/slimmers/controllers/vega-modal-backdrop-manager.d.ts +66 -0
  162. package/dist/types/components/vega-modal/slimmers/controllers/vega-modal-open-state-controller.d.ts +1 -5
  163. package/dist/types/components/vega-modal/slimmers/controllers/vega-modal-z-index-controller.d.ts +1 -1
  164. package/dist/types/components/vega-modal/slimmers/renderers/vega-modal-renderer.d.ts +1 -1
  165. package/dist/types/components/vega-modal/vega-modal.d.ts +34 -6
  166. package/dist/types/components/vega-progress-tracker/slimmers/controllers/vega-progress-tracker-current-steps-controller.d.ts +2 -0
  167. package/dist/types/components/vega-progress-tracker/vega-progress-tracker.d.ts +1 -0
  168. package/dist/types/components.d.ts +36 -2
  169. package/dist/types/helpers/backdrop/shared-backdrop-manager.d.ts +16 -0
  170. package/dist/vega/index.esm.js +1 -1
  171. package/dist/vega/{p-3e8baeac.entry.js → p-0512308f.entry.js} +1 -1
  172. package/dist/vega/p-05d04c07.entry.js +1 -0
  173. package/dist/vega/{p-46fe3154.entry.js → p-1d8312d3.entry.js} +1 -1
  174. package/dist/vega/{p-fbd3be00.entry.js → p-200c8914.entry.js} +1 -1
  175. package/dist/vega/{p-b1ff70bf.js → p-2c737fc8.js} +1 -1
  176. package/dist/vega/{p-782eb312.entry.js → p-2d77ae73.entry.js} +1 -1
  177. package/dist/vega/{p-cb90163a.entry.js → p-2d8d4d5b.entry.js} +1 -1
  178. package/dist/vega/p-31216140.js +1 -0
  179. package/dist/vega/{p-44439ecc.entry.js → p-36d2df7a.entry.js} +1 -1
  180. package/dist/vega/{p-2bf17505.entry.js → p-3d6f761a.entry.js} +1 -1
  181. package/dist/vega/p-4151f53a.entry.js +1 -0
  182. package/dist/vega/{p-a057285e.entry.js → p-49e1cf4d.entry.js} +1 -1
  183. package/dist/vega/{p-c66d2a1e.js → p-513bc0d9.js} +1 -1
  184. package/dist/vega/{p-698fbd73.js → p-5447a8e8.js} +1 -1
  185. package/dist/vega/{p-45e8424a.entry.js → p-56d19601.entry.js} +1 -1
  186. package/dist/vega/{p-addbca58.entry.js → p-5924adae.entry.js} +1 -1
  187. package/dist/vega/{p-9dca874d.entry.js → p-5e4517eb.entry.js} +1 -1
  188. package/dist/vega/p-5f377954.js +1 -1
  189. package/dist/vega/{p-140616fe.js → p-66647244.js} +1 -1
  190. package/dist/vega/{p-62d6e063.entry.js → p-6680ba17.entry.js} +1 -1
  191. package/dist/vega/{p-288d65ad.entry.js → p-6fcec7c7.entry.js} +1 -1
  192. package/dist/vega/{p-d08ffdf1.entry.js → p-74f86ff9.entry.js} +1 -1
  193. package/dist/vega/{p-6ad7144a.entry.js → p-775ecfad.entry.js} +1 -1
  194. package/dist/vega/{p-6f70a10f.entry.js → p-7950f3e2.entry.js} +1 -1
  195. package/dist/vega/{p-f246f125.entry.js → p-80b7945a.entry.js} +1 -1
  196. package/dist/vega/p-8354cff0.entry.js +1 -0
  197. package/dist/vega/{p-5db61a12.entry.js → p-841b3281.entry.js} +1 -1
  198. package/dist/vega/p-87e5cb56.entry.js +1 -0
  199. package/dist/vega/{p-51b68d25.js → p-88be9ec5.js} +1 -1
  200. package/dist/vega/{p-6dfe2407.js → p-8a001caa.js} +1 -1
  201. package/dist/vega/p-8c30a60d.js +1 -0
  202. package/dist/vega/{p-762ea523.entry.js → p-8d4b85e7.entry.js} +1 -1
  203. package/dist/vega/{p-f8a29127.entry.js → p-8d96f0e8.entry.js} +1 -1
  204. package/dist/vega/{p-95913e3c.entry.js → p-91303402.entry.js} +1 -1
  205. package/dist/vega/{p-f5d7b89f.entry.js → p-9c39f90b.entry.js} +1 -1
  206. package/dist/vega/{p-ed103a1a.entry.js → p-9d96d83f.entry.js} +1 -1
  207. package/dist/vega/p-9f201152.entry.js +1 -0
  208. package/dist/vega/{p-48ee3e24.entry.js → p-a775825e.entry.js} +1 -1
  209. package/dist/vega/{p-b8f8e480.entry.js → p-ae146458.entry.js} +1 -1
  210. package/dist/vega/{p-f651df3b.entry.js → p-b187b82d.entry.js} +1 -1
  211. package/dist/vega/{p-e8ee70c5.entry.js → p-b3a2ce06.entry.js} +1 -1
  212. package/dist/vega/{p-5107277d.entry.js → p-b4c26035.entry.js} +1 -1
  213. package/dist/vega/{p-8c083255.entry.js → p-b8c13ac9.entry.js} +1 -1
  214. package/dist/vega/{p-7b57a845.entry.js → p-b9e72de2.entry.js} +1 -1
  215. package/dist/vega/{p-9d18ba7f.entry.js → p-ba2b9663.entry.js} +1 -1
  216. package/dist/vega/{p-0af32f31.entry.js → p-bb60e381.entry.js} +1 -1
  217. package/dist/vega/p-bbad318e.entry.js +1 -0
  218. package/dist/vega/{p-c9daabe1.entry.js → p-c079c935.entry.js} +1 -1
  219. package/dist/vega/p-c0e42c03.entry.js +1 -0
  220. package/dist/vega/{p-c67b9aba.entry.js → p-c41f5684.entry.js} +1 -1
  221. package/dist/vega/{p-341a6b32.entry.js → p-c54b5a8f.entry.js} +1 -1
  222. package/dist/vega/{p-91287214.entry.js → p-c5d3b008.entry.js} +1 -1
  223. package/dist/vega/p-cd1e976c.entry.js +1 -0
  224. package/dist/vega/{p-2dc5edd0.entry.js → p-db11134b.entry.js} +1 -1
  225. package/dist/vega/p-df828d90.entry.js +1 -0
  226. package/dist/vega/{p-14559974.entry.js → p-e1737c8e.entry.js} +1 -1
  227. package/dist/vega/{p-0b311599.entry.js → p-e1b57e8f.entry.js} +1 -1
  228. package/dist/vega/{p-9f38448c.entry.js → p-e5ff77f7.entry.js} +1 -1
  229. package/dist/vega/{p-6f01a71a.entry.js → p-ebe32b25.entry.js} +1 -1
  230. package/dist/vega/p-ec162599.entry.js +1 -0
  231. package/dist/vega/{p-d3a36d19.entry.js → p-ec64cc59.entry.js} +1 -1
  232. package/dist/vega/{p-5df2d6a1.entry.js → p-f78944d7.entry.js} +1 -1
  233. package/dist/vega/{p-c9c6daa6.entry.js → p-f9bfee81.entry.js} +1 -1
  234. package/dist/vega/{p-26c7fe8b.entry.js → p-fa65956c.entry.js} +1 -1
  235. package/dist/vega/{p-f96d0503.entry.js → p-fc7e4c8a.entry.js} +1 -1
  236. package/dist/vega/{p-b39d4a88.entry.js → p-fd23c365.entry.js} +1 -1
  237. package/dist/vega/vega.esm.js +1 -1
  238. package/package.json +1 -1
  239. package/dist/collection/components/vega-modal/slimmers/controllers/vega-modal-backdrop-controller.js +0 -73
  240. package/dist/types/components/vega-modal/slimmers/controllers/vega-modal-backdrop-controller.d.ts +0 -27
  241. package/dist/vega/p-0b9c7c79.entry.js +0 -1
  242. package/dist/vega/p-2364be92.entry.js +0 -1
  243. package/dist/vega/p-270697c0.entry.js +0 -1
  244. package/dist/vega/p-282b37cb.js +0 -1
  245. package/dist/vega/p-52c6a399.entry.js +0 -1
  246. package/dist/vega/p-73f2c3c0.entry.js +0 -1
  247. package/dist/vega/p-7a88a3d3.entry.js +0 -1
  248. package/dist/vega/p-83a16285.entry.js +0 -1
  249. package/dist/vega/p-cad5222a.entry.js +0 -1
  250. package/dist/vega/p-f05a193e.entry.js +0 -1
  251. package/dist/vega/p-f906a7bc.entry.js +0 -1
@@ -1 +1 @@
1
- import{g as t}from"./p-8b5d3a52.js";import{a as e,g as n,D as s,f as i,r}from"./p-528748fa.js";import{L as a,I as o}from"./p-6e1ab235.js";import{I as l,c}from"./p-afcd8f04.js";import{I as h}from"./p-781fd6e0.js";import{c as d}from"./p-6a334573.js";import{P as u}from"./p-81dd00d0.js";import{i as p}from"./p-282b37cb.js";import{V as f}from"./p-0d18368b.js";import{I as w}from"./p-14baa886.js";import{R as g,a as b,b as v}from"./p-f7e459cd.js";import{U as m,V as x,B as y,E as C,h as L,I as k,R as S,a as T,P as E,A as O,b as A}from"./p-f4da615a.js";import{M as I,A as R,R as N,a as B,b as M,c as j,d as D,I as _,e as H,f as V,s as P,g as F,h as z,i as $,B as K,j as q,k as W,C as U,l as G,m as Z,n as Q,o as J,S as Y,U as X,p as tt,q as et,N as nt,r as st,t as it}from"./p-38c9d782.js";import{i as rt}from"./p-8db904dc.js";import{V as at}from"./p-6031bed1.js";import{v as ot}from"./p-4866e390.js";import{D as lt,d as ct}from"./p-526e3634.js";import{V as ht,a as dt,b as ut,c as pt,d as ft}from"./p-698fbd73.js";import{R as wt,a as gt,S as bt,T as vt,b as mt,c as xt,d as yt,e as Ct,C as Lt,M as kt,f as St,g as Tt,h as Et,i as Ot,j as At,k as It,l as Rt,m as Nt,n as Bt,o as Mt,p as jt,q as Dt,s as _t,r as Ht,t as Vt,I as Pt,u as Ft,v as zt,w as $t,x as Kt,y as qt,z as Wt,A as Ut,B as Gt,D as Zt,E as Qt,F as Jt,G as Yt,H as Xt,J as te,K as ee,L as ne,N as se,O as ie,P as re,Q as ae,U as oe,W as le,X as ce,Y as he}from"./p-4fe40b76.js";import{C as de}from"./p-2d0d575f.js";import{V as ue,a as pe,b as fe}from"./p-3a68b729.js";import{r as we}from"./p-77e64f26.js";import{V as ge,a as be}from"./p-3e09aeed.js";import{t as ve}from"./p-b75ee3ba.js";import{p as me}from"./p-0c667d6a.js";import{c as xe}from"./p-a841cf13.js";import{d as ye}from"./p-1bc5b3bc.js";import{c as Ce}from"./p-02841589.js";import{R as Le}from"./p-0be4df0a.js";import{c as ke}from"./p-890a5254.js";const Se=[{payloadKey:"IS_LOAD_METHOD_CALLED",payloadDescription:"Indicate if the method load of public API VegaLoaderController is called",canAccept:(t,e)=>"VegaLoaderController"===t&&"load"===e,payloadValue:()=>!0},{payloadKey:"IS_CLOSE_METHOD_CALLED",payloadDescription:"Indicate if the method close of public API VegaLoaderController is called",canAccept:(t,e)=>"VegaLoaderController"===t&&"close"===e,payloadValue:()=>!0}];class Te{constructor(){this.vegaPublicAPIRuntimeMetricsSlimmer=c(Te,["load","close"],Se,"VegaLoaderController")}load(t={}){let e=t.containerSelector||"body",n=document.querySelector(e);if(n&&Te.SPECIAL_ELEMENT_TO_WRAP_FULL_BODY.includes(n.tagName)&&(e="body",n=document.querySelector("body")),!n)return a.error("Container is not found by selector: ",e),null;const s=this.createLoadingIndicator(t.indicatorOptions),i=this.createLoader(e);return i.append(s),this.appendLoader(i,n)}close(t){const e=this.findLoader(t);if(e){if(e.dataset.container){const t=document.querySelector(e.dataset.container);t&&t.dataset.vegaLoaderOriginPosition&&(t.style.position=t.dataset.vegaLoaderOriginPosition)}e.remove()}}findLoader(t){var e,n;let s;if(t.includes(">>>")){const[i,r]=t.split(">>>");s=null===(n=null===(e=document.querySelector(i))||void 0===e?void 0:e.shadowRoot)||void 0===n?void 0:n.getElementById(r)}else s=document.getElementById(t);return s}createLoader(n){const s=document.createElement("vega-loader-wrapper");return s.className=e(["body"===n?"fixed-wrapper":"absolute-wrapper"]),s.dataset.container=n,s.id=`vega-loader-${t()}`,s}createLoadingIndicator(t={}){const e=document.createElement("vega-loading-indicator");return Object.assign(e,t),e}appendLoader(t,e){return e.dataset.vegaLoaderOriginPosition=e.style.position,e.style.position="relative",e.shadowRoot?(e.shadowRoot.append(t),`${t.dataset.container}>>>${t.id}`):(e.append(t),t.id)}}Te.SPECIAL_ELEMENT_TO_WRAP_FULL_BODY=["VEGA-MODAL"],function(t,e,n,s){var i,r=arguments.length,a=r<3?e:null===s?s=Object.getOwnPropertyDescriptor(e,n):s;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)a=Reflect.decorate(t,e,n,s);else for(var o=t.length-1;o>=0;o--)(i=t[o])&&(a=(r<3?i(a):r>3?i(e,n,a):i(e,n))||a);r>3&&a&&Object.defineProperty(e,n,a)}([l()],Te.prototype,"vegaPublicAPIRuntimeMetricsSlimmer",void 0);const Ee=new Te,Oe=[{payloadKey:"IS_OPEN_METHOD_CALLED",payloadDescription:"Indicate if the method open of public API VegaNotifyController is called",canAccept:(t,e)=>"VegaNotifyController"===t&&"open"===e,payloadValue:()=>!0},{payloadKey:"IS_CLOSE_METHOD_CALLED",payloadDescription:"Indicate if the method close of public API VegaNotifyController is called",canAccept:(t,e)=>"VegaNotifyController"===t&&"close"===e,payloadValue:()=>!0},{payloadKey:"IS_CLOSEALL_METHOD_CALLED",payloadDescription:"Indicate if the method closeAll of public API VegaNotifyController is called",canAccept:(t,e)=>"VegaNotifyController"===t&&"closeAll"===e,payloadValue:()=>!0}];var Ae=function(t,e,n,s){var i,r=arguments.length,a=r<3?e:null===s?s=Object.getOwnPropertyDescriptor(e,n):s;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)a=Reflect.decorate(t,e,n,s);else for(var o=t.length-1;o>=0;o--)(i=t[o])&&(a=(r<3?i(a):r>3?i(e,n,a):i(e,n))||a);return r>3&&a&&Object.defineProperty(e,n,a),a};class Ie{constructor(){this.resizeObserverSlimmer=d(Ie,u,[],[{mapFrom:"connectResizeObserver",mapTo:"connectResizeObserver"}],[{callback:t=>{var e;!(t[0].contentRect.height>0)&&(null===(e=this.container)||void 0===e?void 0:e.classList.contains("hydrated"))&&(h.removeZIndex(this.container,"top"),this.container.remove(),this.container=null)},target:()=>this.container}]),this.vegaPublicAPIRuntimeMetricsSlimmer=c(Ie,["open","close","closeAll"],Oe,"VegaNotifyController")}async open(t){const e=this.createPageNotification(t);return this.getContainer().append(e),e.id}async closeAll(){this.container&&Array.from(this.container.children).forEach((t=>{t.close()}))}async close(t){await document.getElementById(t).close()}connectResizeObserver(){}createPageNotification(e){const i=document.createElement("vega-page-notification");return Object.keys(e).forEach((t=>{void 0!==e[t]&&(i[t]=e[t])})),i.style.marginBottom=n()===s.MOBILE?"12px":"16px",i.id=`vega-page-notification-${t()}`,i}getContainer(){return this.container||(this.container=document.createElement("vega-page-notification-list"),h.setZIndex(this.container,"top"),n()===s.MOBILE?this.container.classList.add("vega-page-notification-list-bottom"):this.container.classList.add("vega-page-notification-list-topRight"),document.body.append(this.container),this.connectResizeObserver()),this.container}}Ae([o()],Ie.prototype,"resizeObserverSlimmer",void 0),Ae([l()],Ie.prototype,"vegaPublicAPIRuntimeMetricsSlimmer",void 0);const Re=new Ie,Ne=[{payloadKey:"IS_SETSEMANTICS_METHOD_CALLED",payloadDescription:"Indicate if the method setSemantics of public API VegaEventManager is called",canAccept:(t,e)=>"VegaEventManager"===t&&"setSemantics"===e,payloadValue:()=>!0},{payloadKey:"IS_GETSEMANTICS_METHOD_CALLED",payloadDescription:"Indicate if the method getSemantics of public API VegaEventManager is called",canAccept:(t,e)=>"VegaEventManager"===t&&"getSemantics"===e,payloadValue:()=>!0},{payloadKey:"IS_GETENABLEDEVENTIDSBYCOMPONENT_METHOD_CALLED",payloadDescription:"Indicate if the method getEnabledEventIdsByComponent of public API VegaEventManager is called",canAccept:(t,e)=>"VegaEventManager"===t&&"getEnabledEventIdsByComponent"===e,payloadValue:()=>!0},{payloadKey:"globalEventIsNative",payloadDescription:"Indicate if the vega components will emit events without the vega prefix",canAccept:(t,e)=>"VegaEventManager"===t&&"setSemantics"===e,payloadValue:t=>!(!t.global||"native"!==t.global.namespace)},{payloadKey:"eventOfSpecificComponentsIsNative",payloadDescription:"Indicate if the vega components will emit events with the vega prefix, but special components will emit events without vega prefix",canAccept:(t,e)=>"VegaEventManager"===t&&"setSemantics"===e,payloadValue:t=>{const e=t;if(e.components){const t=Object.keys(e.components);return!!(t.length>0&&"native"===e.components[t[0]].namespace)}return!1}},{payloadKey:"eventOfSpecificComponentsIsVega",payloadDescription:"Indicate if the vega components will emit events without the vega prefix, but special components will emit events with vega prefix",canAccept:(t,e)=>"VegaEventManager"===t&&"setSemantics"===e,payloadValue:t=>{const e=t;if(e.global&&e.components){const t=Object.keys(e.components);return!!("native"===e.global.namespace&&t.length>0&&"vega"===e.components[t[0]].namespace)}return!1}},{payloadKey:"globalJqueryDelegatedEventIsTrue",payloadDescription:"Indicate if the use jQuery with event delegation",canAccept:(t,e)=>"VegaEventManager"===t&&"setSemantics"===e,payloadValue:t=>!(!t.global||!0!==t.global.jqueryDelegatedEvent)},{payloadKey:"jqueryDelegatedEventIsCustomStrategy",payloadDescription:"Indicate if the use jQuery with event delegation",canAccept:(t,e)=>"VegaEventManager"===t&&"setSemantics"===e,payloadValue:t=>{const e=t;return!!(e.global&&Array.isArray(e.global.jqueryDelegatedEvent)&&e.global.jqueryDelegatedEvent.length>0)}},{payloadKey:"jqueryDelegatedEventOfSpecialComponentsIsTrue",payloadDescription:"Indicate if the use jQuery with event delegation",canAccept:(t,e)=>"VegaEventManager"===t&&"setSemantics"===e,payloadValue:t=>{const e=t;if(e.components){const t=Object.keys(e.components);return!!(t.length>0&&!0===e.components[t[0]].jqueryDelegatedEvent)}return!1}}];class Be{constructor(){this.vegaPublicAPIRuntimeMetricsSlimmer=c(Be,["setSemantics","getSemantics","getEnabledEventIdsByComponent"],Ne,"VegaEventManager")}setSemantics(t){p.setSemantics(t)}getSemantics(t){return p.getSemantics(t)}getEnabledEventIdsByComponent(t){return p.getEnabledEventIdsByComponent(t)}}!function(t,e,n,s){var i,r=arguments.length,a=r<3?e:null===s?s=Object.getOwnPropertyDescriptor(e,n):s;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)a=Reflect.decorate(t,e,n,s);else for(var o=t.length-1;o>=0;o--)(i=t[o])&&(a=(r<3?i(a):r>3?i(e,n,a):i(e,n))||a);r>3&&a&&Object.defineProperty(e,n,a)}([l()],Be.prototype,"vegaPublicAPIRuntimeMetricsSlimmer",void 0);const Me=new Be,je=[{payloadKey:"IS_OVERRIDEZINDEXBASICVALUES_METHOD_CALLED",payloadDescription:"Indicate if the method overrideZIndexBasicValues of public API ZIndexManager is called",canAccept:(t,e)=>"VegaZIndexManager"===t&&"overrideZIndexBasicValues"===e,payloadValue:()=>!0},{payloadKey:"zIndexBasicValuesGreatThanTenThousand",payloadDescription:"Indicate if the basic z-index value is great than ten thousand",canAccept:(t,e)=>"VegaZIndexManager"===t&&"overrideZIndexBasicValues"===e,payloadValue:t=>t.base>1e4}];class De{constructor(){this.vegaPublicAPIRuntimeMetricsSlimmer=c(De,["overrideZIndexBasicValues"],je,"VegaZIndexManager")}overrideZIndexBasicValues(t){h.overrideZIndexBasicValues(t)}}!function(t,e,n,s){var i,r=arguments.length,a=r<3?e:null===s?s=Object.getOwnPropertyDescriptor(e,n):s;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)a=Reflect.decorate(t,e,n,s);else for(var o=t.length-1;o>=0;o--)(i=t[o])&&(a=(r<3?i(a):r>3?i(e,n,a):i(e,n))||a);r>3&&a&&Object.defineProperty(e,n,a)}([l()],De.prototype,"vegaPublicAPIRuntimeMetricsSlimmer",void 0);const _e=new De,He=[{payloadKey:"IS_WAITFORVEGA_METHOD_CALLED",payloadDescription:"Indicate if the method waitForVega of public API WaitForVegaHandler is called",canAccept:(t,e)=>"WaitForVegaHandler"===t&&"handle"===e,payloadValue:()=>!0}];class Ve{constructor(){this.vegaPublicAPIRuntimeMetricsSlimmer=c(Ve,["handle"],He,"WaitForVegaHandler")}async handle(){return await Promise.all(Array.from(document.querySelectorAll("*:not(.hydrated)")).filter((t=>t.tagName.startsWith("VEGA"))).map((t=>{var e;return null===(e=t.componentOnReady)||void 0===e?void 0:e.call(t)})))}}!function(t,e,n,s){var i,r=arguments.length,a=r<3?e:null===s?s=Object.getOwnPropertyDescriptor(e,n):s;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)a=Reflect.decorate(t,e,n,s);else for(var o=t.length-1;o>=0;o--)(i=t[o])&&(a=(r<3?i(a):r>3?i(e,n,a):i(e,n))||a);r>3&&a&&Object.defineProperty(e,n,a)}([l()],Ve.prototype,"vegaPublicAPIRuntimeMetricsSlimmer",void 0);const Pe=new Ve,Fe=async()=>Pe.handle(),ze=[{payloadKey:"IS_LOAD_METHOD_CALLED",payloadDescription:"Indicate if the method load of public API VegaSkeletonLoaderController is called",canAccept:(t,e)=>"VegaSkeletonLoaderController"===t&&"load"===e,payloadValue:()=>!0},{payloadKey:"IS_UNLOAD_METHOD_CALLED",payloadDescription:"Indicate if the method unLoad of public API VegaSkeletonLoaderController is called",canAccept:(t,e)=>"VegaSkeletonLoaderController"===t&&"unLoad"===e,payloadValue:()=>!0},{payloadKey:"IS_UNLOADALL_METHOD_CALLED",payloadDescription:"Indicate if the method unLoadAll of public API VegaSkeletonLoaderController is called",canAccept:(t,e)=>"VegaSkeletonLoaderController"===t&&"unLoadAll"===e,payloadValue:()=>!0}];class $e{constructor(){this.vegaPublicAPIRuntimeMetricsSlimmer=c($e,["load","unLoad","unLoadAll"],ze,"VegaSkeletonLoaderController"),this.loaderMap=new Map}load({target:e,type:n="text",width:s,height:i,items:r,layout:a}){const o=Array.from(document.body.querySelectorAll(e)),l=`vega-skeleton-loader-${t()}`,c=[];return o.forEach((t=>{const e=r?r.map(this.createSkeleton):[this.createSkeleton({type:n,width:s,height:i})],o=(a?[this.wrapLayout(e,a)]:e).map((t=>(t.dataset[$e.LOADER_DATA_SET_KEY]=l,t)));c.push(...o),t.append(...o)})),this.loaderMap.set(l,c),l}unLoad(t){this.loaderMap.has(t)&&(this.loaderMap.get(t).forEach((t=>t.remove())),this.loaderMap.delete(t))}unLoadAll(){for(const t of this.loaderMap.values())t.forEach((t=>t.remove()));this.loaderMap.clear()}createSkeleton(t){const{type:e,width:n,height:s}=t,i=document.createElement("vega-skeleton");return Object.assign(i,{animated:!0,type:e,width:n,height:s}),i}wrapLayout(t,e){const n=document.createElement("vega-flex");return Object.assign(n,Object.assign({className:"vega-skeleton-loader-template-container"},e.props)),Object.assign(n.style,e.style),n.append(...t),n}}$e.LOADER_DATA_SET_KEY="vegaSkeletonLoaderKey",function(t,e,n,s){var i,r=arguments.length,a=r<3?e:null===s?s=Object.getOwnPropertyDescriptor(e,n):s;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)a=Reflect.decorate(t,e,n,s);else for(var o=t.length-1;o>=0;o--)(i=t[o])&&(a=(r<3?i(a):r>3?i(e,n,a):i(e,n))||a);r>3&&a&&Object.defineProperty(e,n,a)}([l()],$e.prototype,"vegaPublicAPIRuntimeMetricsSlimmer",void 0);const Ke=new $e,qe=[{payloadKey:"IS_INIT_METHOD_CALLED",payloadDescription:"Indicate if the method load of public API VegaTranslation.init is called",canAccept:(t,e)=>"TranslationController"===t&&"init"===e,payloadValue:()=>!0},{payloadKey:"IS_CHANGE_LANGUAGE_METHOD_CALLED",payloadDescription:"Indicate if the method load of public API VegaTranslation.changeLanguage is called",canAccept:(t,e)=>"TranslationController"===t&&"changeLanguage"===e,payloadValue:()=>!0}];class We{constructor(){this.vegaPublicAPIRuntimeMetricsSlimmer=c(We,["init","changeLanguage"],qe,"TranslationController")}get currentLanguage(){return f.currentLanguage}init(t){f.init(t)}changeLanguage(t){f.changeLanguage(t)}}!function(t,e,n,s){var i,r=arguments.length,a=r<3?e:null===s?s=Object.getOwnPropertyDescriptor(e,n):s;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)a=Reflect.decorate(t,e,n,s);else for(var o=t.length-1;o>=0;o--)(i=t[o])&&(a=(r<3?i(a):r>3?i(e,n,a):i(e,n))||a);r>3&&a&&Object.defineProperty(e,n,a)}([l()],We.prototype,"vegaPublicAPIRuntimeMetricsSlimmer",void 0);const Ue=new We;class Ge{static fromDate(t,e="month",n,s=!0){const i=w.createCalendarPeriod(t,e,n,s);return w.toCalendarPeriodType(i)}}class Ze{constructor(){this.dropdownEl=null,this.itemsContainerEl=null,this.buttonEl=null}isHidden(t){return t.sourceEditMode}getExtensionContext(t){return g.getExtensionContext(t)}renderDropdown(t,e,n,s){return t("vega-dropdown",Object.assign({trigger:"click",searchable:!1,maxWidth:"200",itemDisplayRule:"ellipsis",isScreenPosition:!0,ref:t=>{this.dropdownEl=t,lt.addUniqueObserverToNode(t,ht,(t=>{this.handleDropdownClick(t.detail,e)}))}},n),s)}renderDropdownListTemplate(t,e,n){return t("div",{slot:"items",onMouseDown:this.preventDefault,onKeyDown:t=>this.handleItemsKeyDown(t),ref:t=>{this.itemsContainerEl=t},class:"rte-dropdown-list"},[t("style",{nonce:ot.nonce},".rte-dropdown-list vega-dropdown-group vega-dropdown-group { padding-left: 4px }"),...e.map((e=>"children"in e?this.renderDropdownGroup(t,e,n):this.renderDropdownItem(t,e,n)))])}renderDropdownItem(t,e,n){return t("vega-dropdown-item",{key:e.key,itemKey:e.key,label:n.translation.t(e.label),prefixIcon:e.icon})}renderDropdownGroup(t,e,n){return t("vega-dropdown-group",{key:e.key,label:n.translation.t(e.label),divide:!1},e.children.map((e=>"children"in e?this.renderDropdownGroup(t,e,n):this.renderDropdownItem(t,e,n))))}renderButton(t,e,n){const{icon:s,label:i,showArrowIcon:r,tooltip:a}=n,o=this.isDisabled(e),l=t("vega-rich-text-editor-toolbar-button",{disabled:o,icon:s,hidden:this.isHidden(e),selected:this.isSelected(e),ref:t=>{this.buttonEl=t,lt.addUniqueObserverToNode(t,dt,(()=>this.handleButtonClick(e)))},onMouseDown:this.preventDefault,onKeyDown:t=>this.handleButtonKeyDown(t)},[this.renderButtonLabel(t,e,i),r?t("vega-icon",{size:"size-8",color:o?"text-disabled":"text-secondary",style:{marginLeft:"8px"},icon:at.getIconKey("chevron-down")}):null].filter(rt));return(null==a?void 0:a.text)?t("vega-tooltip",{text:e.translation.t(a.text),placement:["bottom","top"]},[l]):l}renderButtonLabel(t,e,n){return n?t("vega-font",{variant:"font-field-label-sm",color:this.isDisabled(e)?"text-disabled":"text-primary"},e.translation.t(n)):null}isDisabled(t){return t.host.disabled}isSelected(t){return!1}preventDefault(t){t.preventDefault()}getListItemByKey(t,e){for(const n of t)if("children"in n){const t=this.getListItemByKey(n.children,e);if(t)return t}else if(n.key===e)return n;return null}handleButtonKeyDown(t){this.dropdownEl&&("Enter"===t.code||"Space"===t.code?(t.preventDefault(),t.stopPropagation(),this.dropdownEl.dispatchEvent(new MouseEvent("click",{bubbles:!0}))):"ArrowDown"!==t.code&&"ArrowUp"!==t.code||(t.preventDefault(),t.stopPropagation(),this.dropdownEl.show().then((()=>{this.focusDropdownItem("ArrowDown"===t.code?"first":"last")}))))}handleItemsKeyDown(t){var e,n,s;if("Escape"===t.code)return t.preventDefault(),t.stopPropagation(),this.dropdownEl&&this.dropdownEl.hide(),void(null===(e=this.buttonEl)||void 0===e||e.focus());if("ArrowDown"!==t.code&&"ArrowUp"!==t.code)return;t.preventDefault(),t.stopPropagation();const i=this.getDropdownItems();if(0===i.length)return;const r=i.findIndex((t=>{var e,n;return(null===(e=t.shadowRoot)||void 0===e?void 0:e.querySelector("li"))===(null===(n=t.shadowRoot)||void 0===n?void 0:n.activeElement)})),a="ArrowDown"===t.code?1:-1,o=-1===r?"ArrowDown"===t.code?0:i.length-1:r+a;for(let t=0;t<i.length;t++){const e=(o+t*a+i.length)%i.length;if(!i[e].disabled)return void(null===(s=null===(n=i[e].shadowRoot)||void 0===n?void 0:n.querySelector("li"))||void 0===s||s.focus())}}focusDropdownItem(t){var e,n;const s=this.getDropdownItems(),i="first"===t?s:[...s].reverse();for(const t of i)if(!t.disabled)return void(null===(n=null===(e=t.shadowRoot)||void 0===e?void 0:e.querySelector("li"))||void 0===n||n.focus())}getDropdownItems(){return this.itemsContainerEl?Array.from(this.itemsContainerEl.querySelectorAll("vega-dropdown-item")):[]}}class Qe extends I{constructor(t,e){super(),this.type="INSERT_TOKEN_NODE",this.rteRange=null,this.actionHandleResult=!1,this.rteRange=t,this.token=e}}class Je extends Ze{constructor(t){super(),this.tokenList=[],this.tokenList=t}render(t,e){return this.renderDropdown(t,e,{},[this.renderButton(t,e,{label:"Tokens",showArrowIcon:!0,tooltip:{text:"Insert token"}}),this.renderDropdownListTemplate(t,this.tokenList,e)])}isDisabled(t){const e=this.getExtensionContext(t.host);if(e){const{host:t,getSelectedNodes:n}=e,[s]=n();return s?t.disabled||!R.canHandle("INSERT_TOKEN_NODE",s.parent):t.disabled}return!1}handleButtonClick(t){}handleDropdownClick(t,e){const n=this.getListItemByKey(this.tokenList,t),{rteRange:s}=e,{startNode:i}=s;if(i&&i.parent){const t=new Qe(s,n);i.parent.apply(t),t.actionHandleResult&&this.flushEditorUI(e)}}flushEditorUI(t){const e=this.getExtensionContext(t.host);if(e){const{host:t,flushValue:n}=e;n(t.value)}}}class Ye extends N{constructor(t,e,n,s,i){super(t,n,s,i),this.dtoName=Ye.dtoName,this.type="token",this.token=e,this.text=n}static from(t,e){const n=new Ye(t.id,t.token,t.text,e);return t.annotations&&(n.annotationMap=this.generateTextAnnotationMap(t.annotations)),n}toJSON(){const t=super.toJSON();return Object.assign({id:this.id,type:this.type,text:this.text,token:this.token},t.annotations?{annotations:t.annotations}:{})}isContentEditable(){return!1}clone(t){return new Ye(this.id,this.token,this.text,t,this.annotationMap)}toHtml(){return`<span class="token" contenteditable="false" template-token-key="${this.token}" token-key="${this.token}"${super.generateAttributeString()}>${this.text}</span>`}}Ye.dtoName="RTETokenNode";class Xe extends b{doRender(t,e,n){const{id:s,token:i}=e;return t("span",Object.assign(Object.assign({key:s,"template-token-key":i,"token-key":i,contenteditable:"false",style:e.getStyles(),class:`token ${e.getClasses()}`},this.additionalAttributes(e)),{ref:this.useRef(e),onClick:t=>{t.preventDefault(),n&&!1!==n.editable&&this.handleTokenElementClick(t,e,n.host)}}),e.text)}injectRTEScopeStyles(){return"span[token-key]{padding: 0 2px; margin: 0 1px; background-color: rgba(var(--v-bg-status-info, 205,209,211))}"}handleTokenElementClick(t,e,n){t.preventDefault(),n&&n.value.apply(new m(e,void 0,!0))}additionalAttributes(t){const e=t.getCustomAttributesAnnotation();let n={wrapped:"true"};return e&&(n=Object.assign(Object.assign({},n),e.render())),n}}class tn extends Ze{constructor(t,e,n=""){super(),this.languageList=[],this.languageChangeCallback=null,this.selectedLanguage="",this.labelRef=null,this.translation=null,this.handleDropdownClick=t=>{this.setSelectedLanguage(t),"function"==typeof this.languageChangeCallback&&this.languageChangeCallback(t)},this.languageList=t,this.languageChangeCallback=e,this.selectedLanguage=n}setSelectedLanguage(t){var e;if(this.selectedLanguage=t,(null===(e=this.labelRef)||void 0===e?void 0:e.firstChild)&&this.translation){const e=this.getLanguageLabelByKey(t);this.labelRef.firstChild.nodeValue=this.translation.t(e)}}isHidden(){return!1}render(t,e){const n=this.languageList.map((t=>this.translateDropdownEntry(t,e)));return this.renderDropdown(t,e,{source:n},[this.renderButton(t,e,{label:this.getLanguageLabelByKey(this.selectedLanguage),showArrowIcon:!0,tooltip:{text:"Select language"}})])}renderButtonLabel(t,e,n){return this.translation=e.translation,t("vega-font",{variant:"font-field-label-sm",color:this.isDisabled(e)?"text-disabled":"text-primary",ref:t=>{this.labelRef=t}},e.translation.t(n))}handleButtonClick(t){}getLanguageLabelByKey(t){var e;const n=this.getListItemByKey(this.languageList,t);return null!==(e=null==n?void 0:n.label)&&void 0!==e?e:"Select Language"}translateDropdownEntry(t,e){const n=e.translation.t(t.label);return Object.assign(Object.assign({},t),"children"in t?{label:n,children:t.children.map((t=>this.translateDropdownEntry(t,e)))}:{label:n})}}class en extends v{constructor(t,e){super(),this.languageToolbarButtonRenderer=null,this.languageState={selectedLanguage:"",contentMap:{}},this.languageChangeCallBack=t=>{const e=this.languageState.selectedLanguage;this.extensionContext&&e&&(this.languageState.contentMap[e]=this.getRTELatestValue(this.extensionContext.host)),this.languageState.selectedLanguage=t,this.applyLanguageContent(t,this.languageState.contentMap)},this.languageList=t,e&&(this.languageState=Object.assign(Object.assign({},this.languageState),e)),!this.languageState.selectedLanguage&&t.length>0&&(this.languageState.selectedLanguage=t[0].key)}prepareBeforeLoad(t){this.languageToolbarButtonRenderer=new tn(this.languageList,this.languageChangeCallBack,this.languageState.selectedLanguage),this.registerToolbarButtonRenderer(en.TOOLBAR_BUTTON_KEY,this.languageToolbarButtonRenderer,t)}initialExtensionAfterLoad(t){super.initialExtensionAfterLoad(t);const{selectedLanguage:e,contentMap:n}=this.languageState;this.languageToolbarButtonRenderer&&this.languageToolbarButtonRenderer.setSelectedLanguage(e),n&&n[e]&&this.applyLanguageContent(this.languageState.selectedLanguage,this.languageState.contentMap)}setState(t){const{selectedLanguage:e,contentMap:n}=t;this.languageToolbarButtonRenderer&&this.languageToolbarButtonRenderer.setSelectedLanguage(e),this.languageState.selectedLanguage=e,this.languageState.contentMap=Object.assign({},n),this.applyLanguageContent(e,n)}getState(){const{selectedLanguage:t,contentMap:e}=this.languageState;return this.extensionContext&&(e[t]=this.getRTELatestValue(this.extensionContext.host)),this.languageState}applyLanguageContent(t,e){if(this.extensionContext&&e){let n=e[t];const{host:s,flushValue:i}=this.extensionContext;n=n?n instanceof x?n:x.fromJSON(n,s.sourceEditConfig):x.createEmptyContent(),s.value!==n&&i(n,!0)}}getRTELatestValue(t){var e;let n=t.value;if(this.extensionContext&&this.extensionContext.isSourceEditMode()&&t.shadowRoot){const s=t.shadowRoot.querySelector(".source-view-container vega-code-block");if(s){let i;t.sourceEditConfig&&(i={autoMatchFormat:null===(e=t.sourceEditConfig.autoMatchFormat)||void 0===e||e,filterInlineStyles:t.sourceEditConfig.filterInlineStyles}),n=x.fromHtml(s.value.code,i)}}return n}}en.TOOLBAR_BUTTON_KEY="languages";class nn extends I{constructor(t){super(),this.type="INSERT_FUNCTION_BLOCK",this.functionType=t}}class sn extends B{constructor(t){super(t),this.dtoName=sn.dtoName,this.type="function-block",this.children=[]}static from(t,e){const n=new sn(t.id),s={customClass:["statement"]};let{annotations:i}=t;return i=i?Object.assign(Object.assign({},i),s):s,super.convertAnnotationsToMap(n.annotationMap,i),n.children=this.generateBlockChildren(t.children,e,n),n}toHtml(){return`<div class="statement">${this.children.map((t=>t instanceof M?`<div class="statementelement"${this.getFunctionContentStyle(t)}>${t.getChildrenHtml()}</div>`:t.toHtml())).join("")}</div>`}clone(e){const n=new sn(t());return n.parent=e,n.children=this.children.map((t=>t.clone(n))),n.annotationMap=super.cloneAnnotations(),n}getLastNode(){return this.children[this.children.length-1].getLastNode()}isNotEmpty(){return this.children.length>0}toJSON(){return Object.assign(Object.assign({},super.toJSON()),{id:this.id,type:this.type,children:this.children.map((t=>t.toJSON()))})}getFunctionContentStyle(t){const e=new j(t);let n=e.toCssText({standalone:!0});const s=t.getAnnotationByType("TEXT_STYLE");if(s&&"paragraph"===s.textStyle){const t=e.toCssText(void 0,void 0,s.renderStyle({standalone:!0}));n=n.replace(t,"").trim()}return n?` style="${n}"`:""}}sn.dtoName="RTEFunctionBlock";class rn extends D{handleAction(t,e){const{functionType:n}=t,s=this.getFunctionBlock(n),i=this.createNewParagraph(""),r=this.getReferenceBlock(e);r?r.parent.apply(new _(r,s,i)):e.apply(new H([s,i])),i&&(t.nextFocusNode=i.children[0])}getFunctionBlock(e){const n=t();return sn.from({id:n,type:"function-block",children:[{id:`${n}-1`,type:"logic-control-block",statementText:e.toUpperCase()},{id:`${n}-2`,annotations:{customClass:["statementelement"]},type:"paragraph",nodes:[{id:`${n}-2-1`,type:"text",text:" "}]},{id:`${n}-3`,type:"logic-control-block",statementText:"SHOW"},{id:`${n}-4`,annotations:{customClass:["statementelement"]},type:"paragraph",nodes:[{id:`${n}-4-1`,type:"text",text:" "}]}]})}getReferenceBlock(t){if(!(t instanceof x)){const e=t.parent;return e instanceof sn?e:t}}}class an extends V{constructor(t,e,n){super(t),this.dtoName=an.dtoName,this.type="logic-control-node",this.text="",this.text=e,this.parent=n}clone(){return new an(this.id,this.text,this.parent)}toHtml(){return this.text}toJSON(){return{id:this.id,type:this.type,text:this.text}}getRangeEndOffset(){return 1}getRangeContainer(){const t=P.getDOMByEntity(this);if(t)return t.parentElement}isContentEditable(){return!1}}an.dtoName="RTELogicControlNode";class on extends B{constructor(t,e,n){super(t),this.dtoName=on.dtoName,this.type="logic-control-block",this.children=[],this.statementText="",this.statementText=e,this.children=[new an(`${t}-node-1`,e,this)],n&&(this.parent=n)}static from(t){return new on(t.id,t.statementText)}isNotEmpty(){return!0}getLastNode(){return this.children[this.children.length-1]}toHtml(){return`<div class='statementsyntax' contenteditable='false'>${this.statementText}</div>`}clone(t){return new on(this.id,this.statementText,t)}toJSON(){return{id:this.id,type:this.type,statementText:this.statementText}}}on.dtoName="RTELogicControlBlock";class ln extends Ze{render(t,e){return this.renderDropdown(t,e,{},[this.renderButton(t,e,{label:"Functions",showArrowIcon:!0,tooltip:{text:"Insert function"}}),this.renderDropdownListTemplate(t,ln.FUNCTION_LIST,e)])}isDisabled(t){const e=this.getExtensionContext(t.host);if(e){const{host:t,getSelectedNodes:n}=e,s=n()[0];let i=!0;return s&&(i=R.canHandle("INSERT_FUNCTION_BLOCK",s.parent)),t.disabled||!i}return!1}handleButtonClick(){throw new Error("Method not implemented.")}handleDropdownClick(t,e){if(e){const n=this.getExtensionContext(e.host);if(n){const{host:e,getSelectedNodes:s}=n,i=s()[0],r=new nn(t);i?i.parent&&i.parent.apply(r):e.value.apply(r),r.nextFocusNode&&e.value.apply(new m(r.nextFocusNode,1))}}}}ln.FUNCTION_LIST=[{key:"IF",label:"Conditional"},{key:"FOREACH",label:"Foreach"}];class cn extends b{doRender(t,e){return t("div",{key:e.id,class:"statementsyntax",ref:this.useRef(e)},t("span",{key:`${e.id}-1`,contenteditable:"false",ref:this.useRef(e.children[0])},e.statementText))}}class hn extends y{constructor(){super(...arguments),this.blockClassName="statementsyntax"}canHandle(t,e){const n=t[e];return n&&n.nodeType===Node.ELEMENT_NODE&&n.classList.contains(this.blockClassName)&&this.isFunctionBlockChild(n)?1:0}handle(e){const n=e[0];return on.from({id:t(),type:"logic-control-block",statementText:n.innerText})}appendChildBlocks(){}shouldProceedToElementChildren(){return!1}isFunctionBlockChild(t){return!(!t.parentElement||!t.parentElement.classList.contains("statement"))}}class dn extends b{doRender(t,e){return t("div",{key:e.id,class:this.getElementClassName(e),ref:this.useRef(e)})}injectRTEScopeStyles(){return"div.statement{padding:2px 4px;background:rgba(var(--v-bg-accent3-secondary, 255, 239, 200));border:1px solid rgba(var(--v-bg-accent3-primary, 255, 220, 131));border-radius:4px;display:flex;flex-direction:row;justify-content:flex-start;align-items:stretch;gap:4px}div.statement .statementsyntax{padding:3px 0;line-height:22px}.rich-text-content div.statement .statementsyntax,.rich-text-content div.statement .statementelement{display:inline-block}div.statement+div.statement{margin-top:2px}div.statement .statementsyntax span{color:rgb(38, 42, 255);font-weight:bold}div.statement .statementelement{padding:2px 4px;background:rgba(var(--v-bg-secondary, 245, 247, 247));border:1px solid rgba(var(--v-border-color-input-field, 171, 198, 216));border-radius:4px;margin:0;min-width:8px}"}getElementClassName(t){let e=t.getClasses();return e.indexOf("statement")<0&&(e="statement "+e),e.trim()}}class un{}class pn extends un{canIntercept(t,e){return e.parent&&e.parent instanceof sn}intercept(t,e,n){const s=new k(n.children[0],0);s.isFlushable=!0,n.parent.apply(s)}}class fn extends D{handleAction(t,e){const n=this.createNewParagraph("");n&&(e.parent.apply(new _(e,n)),t.newBlock=n,this.focusToNextLine(n))}focusToNextLine(t){const e=this.getRootContent(t);e&&e.apply(new m(t.children[0],1))}}class wn extends I{constructor(t,e,n){super(),this.type="PASTE_PLAIN_TEXT",this.blocksToBeInserted=t,this.startNode=e,this.startOffset=n}}class gn extends pn{intercept(t,e,n){const{blocksToBeInserted:s,rteRange:i}=e;let{startNode:r,startOffset:a}=e;i&&(r=i.startNode,a=i.startOffset);const o=new wn(s,r,a);n.apply(o)}}class bn extends D{handleAction(t,e){const{blocksToBeInserted:n,startNode:s,startOffset:i}=t;if(s instanceof N){const t=n.flatMap((t=>t instanceof M?(this.copyLinkGroupAnnotations(e.annotationMap,t.annotationMap),t.children):[]));t.length>0&&(e.apply(i>0?new _(s,...t):new F(s,...t)),this.focusToNextLine(t[t.length-1],t[t.length-1].getRangeEndOffset()))}}focusToNextLine(t,e){const n=this.getRootContent(t);n&&n.apply(new m(t,e))}copyLinkGroupAnnotations(t,e){if(e&&e.has(z.LINK_GROUP)){const n=e.get(z.LINK_GROUP);t.has(z.LINK_GROUP)?n.linkGroups.forEach(((e,n)=>{t.get(z.LINK_GROUP).linkGroups.set(n,e)})):t.set(z.LINK_GROUP,e.get(z.LINK_GROUP))}}}const vn=new hn,mn=new class extends hn{constructor(){super(...arguments),this.blockClassName="statementelement"}handle(e,n){const s=L.generate(M,e[0]),i=Array.from(e[0].childNodes);return M.from({id:t(),type:"paragraph",annotations:Object.assign({customClass:[this.blockClassName]},s),nodes:this.generateChildNodes(i,void 0,n)})}},xn=new class extends C{canHandle(t,e){const n=t[e];return n&&"DIV"===n.tagName&&n.classList.contains("statement")&&n.childNodes.length&&n.querySelector(".statementsyntax")?1:0}handle(){return sn.from({id:t(),type:"function-block",annotations:{customClass:["statement"]},children:[]})}appendChildBlocks(t,e){t.children=e.map((e=>(e.parent=t,e)))}shouldProceedToElementChildren(){return!0}};class yn extends v{constructor(){super(),this.registerBlockBasicStrategies(on.name),this.registerBlockBasicStrategies(sn.name),this.preventFunctionBlockDefaultInsertNewParagraph(),this.registerNode("logic-control-block",on),this.registerRenderer("logic-control-block",new cn),this.registerNode("function-block",sn),this.registerRenderer("function-block",new dn),this.registerElementToBlockDTOClassStrategy(vn),this.registerElementToBlockDTOClassStrategy(mn),this.registerElementToBlockDTOClassStrategy(xn)}prepareBeforeLoad(t){this.registerToolbarButtonRenderer(yn.TOOLBAR_BUTTON_KEY,new ln,t)}preventFunctionBlockDefaultInsertNewParagraph(){this.unRegisterStrategy($.INSERT_NEW_PARAGRAPH,on.name),this.unRegisterStrategy($.APPEND_CHILDREN,sn.name),this.unRegisterStrategy($.INSERT_CHILDREN_AFTER,sn.name),this.unRegisterStrategy($.INSERT_CHILDREN_BEFORE,sn.name),this.unRegisterStrategy($.PASTE_CONTENT,on.name),v.registerActionHandleStrategy(sn.name,$.INSERT_NEW_PARAGRAPH,new fn)}}(()=>{const t=new rn;v.registerActionHandleStrategy(x.name,"INSERT_FUNCTION_BLOCK",t),v.registerActionHandleStrategy(M.name,"INSERT_FUNCTION_BLOCK",t),v.registerActionHandleStrategy(S.name,"INSERT_FUNCTION_BLOCK",t),v.registerActionHandleStrategy(on.name,"INSERT_FUNCTION_BLOCK",t),v.registerActionHandleStrategy(M.name,"PASTE_PLAIN_TEXT",new bn),v.registerActionHandlerInterceptor(M.name,$.INSERT_NEW_PARAGRAPH,new pn),v.registerActionHandlerInterceptor(M.name,$.PASTE_CONTENT,new gn)})(),yn.TOOLBAR_BUTTON_KEY="functions";class Cn extends I{constructor(t){super(),this.isFlushable=!0,this.type="DELETE_TABLE_BLOCK",this.tableBlock=t}}class Ln extends K{constructor(){super(...arguments),this.type=wt.CAPTION}static getDefaultStyles(){return{padding:"8px",border:"1px solid #ddd",borderBottom:"none",position:"relative",textAlign:"center",minHeight:"22px"}}clone(){return new Ln}renderClass(t){return(null==t?void 0:t.standalone)?null:"v-rte--extension-table-caption"}renderStyle(t){return(null==t?void 0:t.standalone)?Object.assign(Object.assign({},Ln.getDefaultStyles()),{backgroundColor:this.getCaptionBackgroundColor()}):null}toJSON(){return{caption:!0}}getCaptionBackgroundColor(){return ge.isDarkMode()?gt.dark:gt.light}}class kn extends B{constructor(t,e){super(t),this.dtoName=kn.dtoName,this.type="table-caption";const{autoMatchFormat:n}=e||{autoMatchFormat:!0};n&&this.annotationMap.set(wt.CAPTION,new Ln)}static from(t,e){const n=new kn(t.id,e),s=t.annotations||{},{caption:i}=s,r=function(t,e){var n={};for(var s in t)Object.prototype.hasOwnProperty.call(t,s)&&e.indexOf(s)<0&&(n[s]=t[s]);if(null!=t&&"function"==typeof Object.getOwnPropertySymbols){var i=0;for(s=Object.getOwnPropertySymbols(t);i<s.length;i++)e.indexOf(s[i])<0&&Object.prototype.propertyIsEnumerable.call(t,s[i])&&(n[s[i]]=t[s[i]])}return n}(s,["caption"]);return i&&n.annotationMap.set(wt.CAPTION,new Ln),super.convertAnnotationsToMap(n.annotationMap,Object.assign({},r)),n.children=super.generateBlockChildren(t.children,e,n),n}clone(t){const e=new kn(this.id);return e.children=this.children.map((t=>t.clone(e))),e.parent=t,e.annotationMap=super.cloneAnnotations(),e}getLastNode(){return this.children[this.children.length-1].getLastNode()}isNotEmpty(){return this.children.length>0&&this.children.some((t=>t.isNotEmpty()))}toHtml(t){const e=this.children.map((e=>e.toHtml(t))).join("");return`<caption${super.generateAttributeString(t)}>${e}</caption>`}toJSON(){return Object.assign(Object.assign({},super.toJSON()),{type:this.type,children:this.children.map((t=>t.toJSON()))})}}R.register($.INSERT_CHILDREN_BEFORE,kn.name,new T),R.register($.PASTE_CONTENT,kn.name,new E),kn.dtoName="RTETableCaptionBlock";class Sn extends I{constructor(t){super(),this.type="TOGGLE_TABLE_CAPTION",this.isFlushable=!0,this.shouldEnable=t}}class Tn extends bt{canHandle(t){return t[0]===vt.CAPTION}execute(t,e,n){const s="rte-table-caption"===t[1],i=new Sn(s),r=n.getCaption();if(s){const t=r&&r.isNotEmpty()?r:this.createCaptionBlock(null==r?void 0:r.id);r&&t===r||n.setCaption(t),i.nextFocusNode=t.getLastNode()}else r&&(n.setCaption(null),i.nextFocusNode=n.getFirstNode());this.syncCursorPosition(n,i.nextFocusNode)}syncCursorPosition(t,e){super.syncCursorPosition(t,e)}createCaptionBlock(e){const n={id:null!=e?e:t(),type:"table-caption",children:[{id:t(),type:"paragraph",nodes:[{id:t(),type:"text",text:""}]}]};return kn.from(n)}}class En{static generateTablePropertiesForm(t){const e=t.annotationMap.get(wt.TABLE);let n={borderStyle:"none",borderColor:"",borderWidth:"",backgroundColor:"",width:"",height:"",textAlign:"center"};if(e){const t=e.toJSON().table,{style:s="none",color:i="",width:r=""}=t.border||{style:"none",color:"",width:""};n={backgroundColor:t.backgroundColor||"",width:t.width||"",height:t.height||"",textAlign:t.alignment,borderStyle:s,borderColor:i,borderWidth:r}}return n}updateCursorPosition(t,e){t&&e&&t.host.value.apply(new m(e,0))}}class On extends q{constructor(t){super(),this.isFlushable=!0;const{textAlign:e,width:n,borderWidth:s,borderColor:i,borderStyle:r,height:a}=t,o=function(t,e){var n={};for(var s in t)Object.prototype.hasOwnProperty.call(t,s)&&e.indexOf(s)<0&&(n[s]=t[s]);if(null!=t&&"function"==typeof Object.getOwnPropertySymbols){var i=0;for(s=Object.getOwnPropertySymbols(t);i<s.length;i++)e.indexOf(s[i])<0&&Object.prototype.propertyIsEnumerable.call(t,s[i])&&(n[s[i]]=t[s[i]])}return n}(t,["textAlign","width","borderWidth","borderColor","borderStyle","height"]);this.tableProperties=Object.assign(Object.assign({},o),{alignment:e,border:{style:r,color:i,width:s?me(s):""},width:n?me(n):"",height:a?me(a):""})}toAnnotation(){return new mt(this.tableProperties)}}class An extends En{handle(t,e,n,s){e.apply(new On(n)),this.updateCursorPosition(t,s)}}class In extends En{handle(t,e,n,s){t&&t.host&&(t.flushValue(t.host.value),this.updateCursorPosition(t,s))}}class Rn extends En{handle(t,e,n){const s=new On(n);s.isFlushable=!1,e.apply(s)}}class Nn extends q{constructor(t,e){super(),this.isFlushable=!0,this.cellAnnotation=t,this.originAnnotation=e}toAnnotation(){return this.updateOriginAnnotation(),this.originAnnotation}updateOriginAnnotation(){Object.keys(this.cellAnnotation).forEach((t=>{this.originAnnotation[t]=this.cellAnnotation[t]}))}}class Bn extends Nn{constructor(t,e){super(t,e),this.isFlushable=!0}toAnnotation(){return this.updateOriginAnnotation(),this.originAnnotation}}var Mn=function(t,e){var n={};for(var s in t)Object.prototype.hasOwnProperty.call(t,s)&&e.indexOf(s)<0&&(n[s]=t[s]);if(null!=t&&"function"==typeof Object.getOwnPropertySymbols){var i=0;for(s=Object.getOwnPropertySymbols(t);i<s.length;i++)e.indexOf(s[i])<0&&Object.prototype.propertyIsEnumerable.call(t,s[i])&&(n[s[i]]=t[s[i]])}return n};class jn{static getStyleCollectionFromCell(t){return t.reduce(((t,e)=>{const n=e.getAnnotationByType(wt.CELL);if(t[e.id]={},n){const s=n.toJSON().tableCell,{border:i}=s,r=Mn(s,["border"]),a={};i&&(a.borderStyle=i.style,a.borderColor=i.color,a.borderWidth=i.width),t[e.id]=xe(Object.assign(Object.assign({},r),a))}return t}),{})}static convertStyleMapToFormField(t){const e={};for(const n in t){const s=t[n];for(const t in s)e[t]?e[t].push(s[t]):e[t]=[s[t]]}const n=Object.keys(t).length,s={};for(const t in e){const i=e[t],r=new Set(i);i.length===n&&1===r.size&&(s[t]=i[0])}return s}applyProperties(t,e,n){t.tableSelection.getSelectedCells().forEach((t=>{const s=e[t.id];if(s){const e=this.convertToVegaTableCellAnnotation(Object.assign({},s));this.applyAnnotation(t,e,n)}}))}updateCursorPosition(t,e){t&&e&&t.host.value.apply(new m(e,0))}convertToVegaTableCellAnnotation(t){const{borderStyle:e,borderWidth:n,borderColor:s}=t,i=Mn(t,["borderStyle","borderWidth","borderColor"]),r=xe({style:e,width:n?me(n):"",color:s});return xe(Object.assign(Object.assign({},i),{backgroundColor:i.backgroundColor||"",padding:i.padding?me(i.padding):"",width:i.width?me(i.width):"",height:i.height?me(i.height):"",verticalAlign:i.verticalAlign||"",textAlign:i.textAlign||"",border:r}))}applyAnnotation(t,e,n){const s=t.getAnnotationByType(wt.CELL)||new xt({},!1),i=t instanceof yt?new Bn(e,s):new Nn(e,s);i.isFlushable=n,t.apply(i)}}class Dn extends jn{handle(t,e,n){t&&t.host&&(t.flushValue(t.host.value),this.updateCursorPosition(t,n))}}class _n extends jn{handle(t,e){this.applyProperties(t,e,!1)}}class Hn extends jn{handle(t,e,n){this.applyProperties(t,e,!0),this.updateCursorPosition(t,n)}}class Vn{constructor(t){this.renderContext=t}getTableExtensionContext(){return this.renderContext?g.getExtensionContext(this.renderContext.host):null}}class Pn extends Vn{constructor(t,e){super(e),this.popoverCloseType="none",this.tablePropertiesHandlerMap={save:new In,cancel:new An,change:new Rn},this.cellPropertiesHandlerMap={save:new Dn,cancel:new Hn,change:new _n},this.handleTablePropertiesUpdate=t=>{const e=t.type.replace("vega","").toLowerCase();this.popoverCloseType=e,"change"!==e&&this.hide();const n=this.getTableExtensionContext();n&&this.tablePropertiesHandlerMap[e].handle(n,this.currentTableBlock,t.detail,this.currentFocusNode),"change"===e&&this.popoverRef.show(!0)},this.handleCellPropertiesUpdate=t=>{const e=t.type.replace("vega","").toLowerCase();this.popoverCloseType=e,"change"!==e&&this.hide();const n=this.getTableExtensionContext();n&&this.cellPropertiesHandlerMap[e].handle(n,t.detail,this.currentFocusNode),"change"===e&&this.popoverRef.show(!0)},this.tableColorSchema=t}destroy(){this.selectionAnchorRef&&this.selectionAnchorRef.parentNode&&(lt.removeUniqueObserverFromNode(this.selectionAnchorRef,ue),this.selectionAnchorRef.parentNode.removeChild(this.selectionAnchorRef),this.selectionAnchorRef=null)}async show(t){let e=this.getTableRef();const n=this.getTableExtensionContext();let s=[];if(n&&(s=n.tableSelection.getSelectedCells()),t===vt.CELL&&s.length>1){const t=this.getOrCreateSelectionAnchor(s,e);t&&(e=t)}else t===vt.CELL&&1===s.length&&(e=P.getDOMByEntity(s[0]));this.updateContent(t),this.storeCurrentFocusNode(),we.call(ct.getSubject(this.popoverRef,pe),e),await this.popoverRef.show()}async hide(){await this.popoverRef.hide()}reTarget(t,e){this.getTableRef=e,this.currentTableBlock=t}render(){const t=ve();if(t){const e=t.createElement("vega-popover");e.trigger="click",e.isScreenPosition=!0,e.className="rte-table-dynamic-popover",lt.addUniqueObserverToNode(e,ut,(()=>{const t=this.getTableExtensionContext();"change"===this.popoverCloseType&&t&&t.flushValue(t.host.value)}));const n=t.createElement("div");n.setAttribute("slot","popover"),n.className="rte-table-dynamic-popover-content";const s=t.createElement("vega-rich-text-table-properties");s.colors=this.tableColorSchema,s.type=vt.TABLE,s.setAttribute("type",vt.TABLE),s.addEventListener("vegaCancel",this.handleTablePropertiesUpdate),s.addEventListener("vegaChange",this.handleTablePropertiesUpdate),s.addEventListener("vegaSave",this.handleTablePropertiesUpdate);const i=t.createElement("vega-rich-text-table-properties");return i.colors=this.tableColorSchema,i.type=vt.CELL,i.setAttribute("type",vt.CELL),i.addEventListener("vegaCancel",this.handleCellPropertiesUpdate),i.addEventListener("vegaChange",this.handleCellPropertiesUpdate),i.addEventListener("vegaSave",this.handleCellPropertiesUpdate),n.appendChild(s),n.appendChild(i),e.appendChild(n),this.popoverRef=e,this.tablePropertiesFormRef=s,this.cellPropertiesFormRef=i,e}}updateContent(t){this.popoverCloseType="none";const e=this.getTableExtensionContext();"TABLE"===t?(this.tablePropertiesFormRef.classList.remove("vega-hidden"),this.cellPropertiesFormRef.classList.add("vega-hidden"),this.tablePropertiesFormRef.defaultValue=En.generateTablePropertiesForm(this.currentTableBlock)):"CELL"===t&&(this.cellPropertiesFormRef.classList.remove("vega-hidden"),this.tablePropertiesFormRef.classList.add("vega-hidden"),e&&(this.cellPropertiesFormRef.styleMap=jn.getStyleCollectionFromCell(e.tableSelection.getSelectedCells())),this.cellPropertiesFormRef.defaultValue=jn.convertStyleMapToFormField(this.cellPropertiesFormRef.styleMap)),e&&e.getSelection().removeAllRanges()}storeCurrentFocusNode(){const t=this.getTableExtensionContext();t&&(this.currentFocusNode=t.getSelectedNodes()[0])}getOrCreateSelectionAnchor(t,e){const n=ve();if(n&&e){const s=e.closest(".rich-text-content"),i=s.getBoundingClientRect();let r=Number.POSITIVE_INFINITY,a=Number.NEGATIVE_INFINITY,o=Number.POSITIVE_INFINITY,l=Number.NEGATIVE_INFINITY;t.map((t=>P.getDOMByEntity(t))).filter(rt).forEach((t=>{const e=t.getBoundingClientRect();r=Math.min(r,e.left-i.left),a=Math.max(a,e.right-i.left),o=Math.min(o,e.top-i.top),l=Math.max(l,e.bottom-i.top)}));const c=a-r,h=l-o;return this.selectionAnchorRef=s.querySelector(".rte-table-selection-popover-anchor"),this.selectionAnchorRef||(this.selectionAnchorRef=n.createElement("div"),this.selectionAnchorRef.className="rte-table-selection-popover-anchor",this.selectionAnchorRef.style.position="absolute",this.selectionAnchorRef.style.pointerEvents="none",s.appendChild(this.selectionAnchorRef),lt.addUniqueObserverToNode(this.selectionAnchorRef,ue,(()=>{this.destroy()}))),this.selectionAnchorRef.style.left=`${r}px`,this.selectionAnchorRef.style.top=`${o}px`,this.selectionAnchorRef.style.width=`${c}px`,this.selectionAnchorRef.style.height=`${h}px`,this.selectionAnchorRef}}}class Fn extends Vn{constructor(t){super(t),this.settingHandlers=[new Ct,new Tn,new Lt,new kt,new St],this.handleTableClick=(t,e,n)=>{const s=t.target.closest("table");s===n()&&(t.stopPropagation(),this.reTarget(e,n),this.tableDynamicPopover.hide(),we.call(ct.getSubject(this.popoverRef,pe),s),this.popoverRef.show(!0))},this.syncSelectedCells=()=>{this.tableSettingRef&&(this.tableSettingRef.selectedCells=this.getTableSelectedCells())},this.handleSettingMenuClick=t=>{const e=this.settingHandlers.find((e=>e.canHandle(t.detail)));if(e){const n=this.getTableExtensionContext();n&&e.execute(t.detail,n,this.tableBlock),t.detail[0]===vt.CAPTION&&this.updateTableSettingCaption()}t.detail[0]!==vt.TABLE&&t.detail[0]!==vt.CELL||(this.popoverRef.hide(),this.tableDynamicPopover.show(t.detail[0]))},this.handleTableSettingPopoverShow=()=>{this.syncSelectedCells()},this.tableDynamicPopover=new Pn(Tt.getTableColors(),t)}destroy(){this.tableDynamicPopover.destroy(),this.popoverContainer&&this.popoverContainer.remove()}render(){const t=ve();if(t&&this.renderContext){this.popoverContainer=t.createElement("div"),this.renderContext.host.appendChild(this.popoverContainer);const e=this.tableDynamicPopover.render(),n=t.createElement("vega-popover");n.trigger="click",n.isScreenPosition=!0,n.className="rte-table-setting-popover",lt.addUniqueObserverToNode(n,pt,this.handleTableSettingPopoverShow);const s=t.createElement("div");s.setAttribute("slot","popover");const i=t.createElement("vega-rich-text-table-setting");i.addEventListener("vegaClick",this.handleSettingMenuClick),s.appendChild(i),n.appendChild(s),this.popoverContainer.appendChild(n),this.popoverContainer.appendChild(e),this.popoverRef=n,this.tableSettingRef=i}}updateTableSettingCaption(){const t=this.tableBlock.hasCaption();this.tableSettingRef&&this.tableSettingRef.hasCaption!==t&&(this.tableSettingRef.hasCaption=t)}reTarget(t,e){this.tableSettingRef&&(this.tableBlock=t,this.tableSettingRef.target=e(),this.tableSettingRef.selectedCells=this.getTableSelectedCells(),this.tableDynamicPopover.reTarget(t,e))}getTableSelectedCells(){let t=[];const e=this.getTableExtensionContext();if(e&&e.tableSelection){const{tableSelection:n}=e;t=n.getSelectedCells()}return t}}class zn extends b{doRender(t,e,n){let s;const i=this.renderTable(t,e,(t=>s=t));this.renderTableToolbar(n);const r=e.getAnnotationByType(wt.TABLE),a=n.editable?[t("vega-rich-text-table-selection-widget",{onVegaRemove:t=>{t.stopPropagation(),this.handleTableRemove(e,s)},onClick:t=>{this.tableToolbar&&this.tableToolbar.handleTableClick(t,e,(()=>s))},onMouseLeave:()=>{this.tableToolbar&&this.tableToolbar.syncSelectedCells()}},[t("div",{contentEditable:!0,ref:this.useRef(e)},[i])])]:[i],o={};if(r){const t=r.renderStyle();o.width=t.width,o.margin=t.margin}const l=t("div",{class:"v-rte--extension-table-container",style:Object.assign({},o)},a);return l.childrenContainerGetter=()=>i,l}destroy(){this.destroyTableToolbar()}injectRTEScopeStyles(){return".v-rte--extension-table-container{display:table}table.v-rte--extension-table{border-collapse:collapse}table.v-rte--extension-table th,table.v-rte--extension-table td{border:1px solid #ddd;padding:12px;text-align:left;vertical-align:middle;min-width:55px;box-sizing:border-box;position:relative}table.v-rte--extension-table th{background-color:#f2f2f2}.rte-table-setting-popover,.rte-table-dynamic-popover{display:block}table.v-rte--extension-table .v-rte-table-cell-focused::after,table.v-rte--extension-table .v-rte-table-cell-selected::after{content:'';position:absolute;top:0;left:0;right:0;bottom:0;pointer-events:none;background-color:rgba(158, 207, 250, 0.3)}table.v-rte--extension-table:has(.v-rte-table-cell-selected){caret-color:transparent}table.v-rte--extension-table:has(.v-rte-table-cell-selected) ::selection{background-color:transparent}table.v-rte--extension-table:has(.v-rte-table-cell-selected) ::-moz-selection{background-color:transparent}.v-rte--extension-table-caption{padding:8px;border:1px solid #ddd;border-bottom:none;background-color:rgba(var(--v-bg-table-header, 240, 243, 247, 1));position:relative;display:table-caption;caption-side:top;min-height:22px;text-align:center;word-break:break-word;overflow-wrap:break-word}.v-rte--extension-table-caption.showPlaceholder::before{position:absolute;left:0;right:0;content:attr(data-placeholder);font-family:'Inter', sans-serif;font-size:16px;font-weight:400;line-height:24px;letter-spacing:0;color:rgba(var(--v-text-input-placeholder, 176, 180, 181, 1));text-align:center;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}"}renderTable(t,e,n){var s;return t("table",Object.assign(Object.assign({key:e.id},null===(s=e.getCustomAttributesAnnotation())||void 0===s?void 0:s.render()),{style:e.getStyles(),class:e.getClasses(),ref:t=>{this.useRef(e)(t),n(t)}}))}handleTableRemove(t,e){t.apply(new Cn(t)),this.destroySelectionAnchor(e)}destroySelectionAnchor(t){const e=t.closest(".rich-text-content");if(e){const t=e.querySelector(".rte-table-selection-popover-anchor");t&&de.notify(ct.getSubject(t,ue),{host:t})}}renderTableToolbar(t){t.editable?this.tableToolbar||(this.tableToolbar=new Fn(t),this.tableToolbar.render()):this.destroyTableToolbar()}destroyTableToolbar(){var t;null===(t=this.tableToolbar)||void 0===t||t.destroy(),this.tableToolbar=null}}class $n extends b{doRender(t,e){return t("thead",{key:e.id,ref:this.useRef(e)})}}class Kn extends b{doRender(t,e){return t("tr",{key:e.id,ref:this.useRef(e)})}}class qn extends b{doRender(t,e,n){return this.renderByCellType(t,e,n,"td")}renderByCellType(t,e,n,s){var i;return t(s,Object.assign(Object.assign(Object.assign({key:`${e.id}-${s}`,ref:this.useRef(e)},null===(i=e.getCustomAttributesAnnotation())||void 0===i?void 0:i.render()),{style:e.getStyles(n),class:e.getClasses()}),n.editable?this.onSelectionListeners(e,n):void 0))}onSelectionListeners(t,e){return{onMouseDown:t=>{const n=i(t.target,"table"),s=i(t.currentTarget,"table")===n,r=t.target.closest("td, th");if(s&&r){const t=this.getExtensionContext(e.host);t&&t.tableSelection.focusCell(r)}},onMouseMove:n=>{n.stopPropagation(),n.preventDefault();const s=this.getExtensionContext(e.host);s&&s.tableSelection.dragOver(t)},onMouseUp:()=>{const t=this.getExtensionContext(e.host);t&&t.tableSelection.endDrag()}}}}class Wn extends b{doRender(t,e){return t("tbody",{key:e.id,ref:this.useRef(e)})}}class Un extends qn{doRender(t,e,n){return super.renderByCellType(t,e,n,"th")}}class Gn extends I{constructor(t,e){super(),this.type="INSERT_TABLE_BLOCK",this.rowCount=t,this.columnCount=e}}class Zn extends Vn{constructor(){super(...arguments),this.hoveredRows=1,this.hoveredCols=1}render(t,e){return t("vega-popover",{trigger:"click",alignment:"start",placement:"bottom",showArrow:!1,isScreenPosition:!0,ref:t=>{t&&(this.tablePickerPopoverRef=t,lt.addUniqueObserverToNode(t,pt,(()=>{this.resetPicker()})))}},[t("div",{slot:"popover"},[this.generatePickerStyles(t),this.generateTableSizeGrid(t)]),t("div",{slot:"popover-content"},e)])}generateTableSizeGrid(t){const e=[];for(let n=1;n<=10;n++)for(let s=1;s<=10;s++)e.push(t("button",{class:"rte-table-picker__cell","data-row":n,"data-col":s,onMouseenter:this.handlePickerCellHover.bind(this,n,s),onClick:this.handlePickerClick.bind(this,n,s)},[]));return t("div",{class:"rte-table-picker"},[t("div",{class:"rte-table-picker__grid",ref:t=>{t&&(this.tablePickerGridRef=t)},style:{gridTemplateColumns:"repeat(10, 16px)",gridTemplateRows:"repeat(10, 16px)"}},e),t("div",{class:"rte-table-picker__hint"},t("vega-hint",{ref:t=>{t&&(this.selectedHintRef=t)}},[`${this.hoveredRows} × ${this.hoveredCols}`]))])}generatePickerStyles(t){return t("style",{},["\n.rte-table-picker__grid { display: grid; gap: 2px; }\n.rte-table-picker__cell {\n box-sizing: border-box;\n border: 1px solid #ccc;\n background-color: transparent;\n cursor: pointer;\n}\n.rte-table-picker__cell:hover {\n background-color: #cae1fc;\n}\n.rte-table-picker__cell.active {\n background-color: #cae1fc;\n}\n.rte-table-picker__hint {\n text-align: center;\n}\n "])}createTable(t,e){const n=this.getTableExtensionContext();if(n){const{host:s,getSelectedNodes:i}=n,r=i()[0],a=new Gn(t,e);r?r.parent&&r.parent.apply(a):s.value.apply(a),a.nextFocusNode&&s.value.apply(new m(a.nextFocusNode,1))}}handlePickerClick(t,e){this.createTable(t,e),this.tablePickerPopoverRef.hide()}handlePickerCellHover(t,e){this.hoveredRows=t,this.hoveredCols=e,Array.from(this.tablePickerGridRef.children).forEach((t=>{const e=Number(t.dataset.row),n=Number(t.dataset.col);e<=this.hoveredRows&&n<=this.hoveredCols?t.classList.add("active"):t.classList.remove("active")})),this.selectedHintRef.textContent=`${this.hoveredRows} × ${this.hoveredCols}`}resetPicker(){this.handlePickerCellHover(1,1)}}class Qn extends Ze{render(t,e){return new Zn(e).render(t,super.renderButton(t,e,{showArrowIcon:!0,icon:"rte-table",tooltip:{text:"Insert table"}}))}isDisabled(t){let e=super.isDisabled(t);const n=this.getExtensionContext(t.host);if(n){const{host:t,getSelectedNodes:s}=n,i=s()[0];let r=!0;i&&(r=R.canHandle("INSERT_TABLE_BLOCK",i.parent)&&R.canHandle($.INSERT_CHILDREN_AFTER,i.parent.parent)),e=t.disabled||!r}return e}handleButtonClick(){}handleDropdownClick(){}}at.register({"rte-table":{icon:'<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 512 512">\x3c!--! Font Awesome Pro 6.3.0 by @fontawesome - https://fontawesome.com License - https://fontawesome.com/license (Commercial License) Copyright 2023 Fonticons, Inc. --\x3e<path fill="currentColor" d="M48 264V160H232V264H48zm0 48H232V432H64c-8.8 0-16-7.2-16-16V312zM280 432V312H464V416c0 8.8-7.2 16-16 16H280zM464 264H280V160H464V264zM64 32C28.7 32 0 60.7 0 96V416c0 35.3 28.7 64 64 64H448c35.3 0 64-28.7 64-64V96c0-35.3-28.7-64-64-64H64z"/></svg>'}});class Jn extends D{handleAction(t,e){const n=this.createTableBlock(t.rowCount,t.columnCount),s=super.createNewParagraph(""),i=this.getReferenceBlock(e);i?i.parent.apply(new _(i,n,s)):e.apply(new H([n,s])),t.nextFocusNode=n.getFirstNode()}createTableBlock(e,n){const s=Math.max(e,1),i=Math.max(n,1);return Et.from({id:t(),type:"table-block",children:[Ot(s,i)]})}getReferenceBlock(t){if(!(t instanceof x))return t}}class Yn extends un{canIntercept(t,e){const n=e.parent;return n instanceof At&&1===n.children.length&&0===t.startOffset}intercept(){}}class Xn extends D{handleAction(t){const e=t.tableBlock,n=e.parent,s=super.getRootContent(e),i=super.createNewParagraph("");n.apply(new _(e,i)),n.apply(new W(e)),s&&s.apply(new m(i.getLastNode()))}}class ts extends un{canIntercept(t,e){return t.entityToBeRemoved&&1===e.children.length}intercept(e,n,s){if(!(n.entityToBeRemoved instanceof M)){const e=M.from({id:t(),type:"paragraph",nodes:[{id:t(),type:"text",text:""}]});return s.children=[],void s.apply(new H([e]))}n.entityToBeRemoved.apply(new H([new N(t(),"",n.entityToBeRemoved)]))}}class es extends b{doRender(t,e){return t("caption",{key:e.id,ref:this.useRef(e),style:e.getStyles(),class:[e.getClasses(),e.isNotEmpty()?null:"showPlaceholder"].filter(rt).join(" "),"data-placeholder":"Enter table caption"})}}class ns extends D{getRowsMaxCellCount(t){let e=0;for(const n of t){let t=0;for(const e of n.children)t+=e.colSpan;e=Math.max(e,t)}return e}getRowCellStartCols(t){const e=this.getRowsMaxCellCount(t),n=new Array(t.length),s=new Array(e).fill(0);for(let e=0;e<t.length;e++){const i=t[e].children,r=new Array(i.length);let a=0;for(let t=0;t<i.length;t++){const e=i[t];for(;a<s.length&&s[a]>0;)a++;r[t]=a;const n=Math.max(e.colSpan,ns.DEFAULT_CELLSPAN);if(e.rowSpan>ns.DEFAULT_CELLSPAN)for(let t=0;t<n;t++){const n=a+t;n<s.length&&(s[n]=Math.max(s[n],e.rowSpan))}a+=n}n[e]=r;for(let t=0;t<s.length;t++)s[t]>0&&s[t]--}return n}updateCellSpan(t,e,n){const s=t.getCustomAttributesAnnotation();if(n<=ns.DEFAULT_CELLSPAN){if(s){const n=s.render();delete n[e],t.annotationMap.set(U.CUSTOM_ATTRIBUTE,new G(n))}}else{const i=s?s.render():{};i[e]=n.toString(),t.annotationMap.set(U.CUSTOM_ATTRIBUTE,new G(i))}}insertMovedCells(t,e,n){t.forEach(((t,s)=>{const i=e[s];if(i){const e=n[s]||[];t.sort(((t,e)=>t.logicalStartCol===e.logicalStartCol?e.cellIndex-t.cellIndex:e.logicalStartCol-t.logicalStartCol)),t.forEach((t=>{const{cell:n,logicalStartCol:s}=t;if(0===i.children.length)return i.apply(new H([n])),void(e[0]=s);const r=e.findIndex((t=>t>=s));-1===r?(i.apply(new _(i.children[i.children.length-1],n)),e.push(s)):0===r?(i.apply(new F(i.children[0],n)),e.unshift(s)):(i.apply(new F(i.children[r],n)),e.splice(r,0,s))}))}}))}splitRowsBySection(t){const e=[],n=[];return t.forEach((t=>{t.parent instanceof It?e.push(t):n.push(t)})),[e,n]}buildSelectedIndices(t,e){return new Set(t.map((t=>e.indexOf(t))).filter((t=>t>=0)))}intersectsRemovalRange(t,e,n,s){return t<=s&&e>=n}countRemovedRows(t,e,n){let s=0;for(let i=t;i<=e;i++)n.has(i)&&s++;return s}getHeadCellLength(t){let e=0;for(let n=0;n<t.children.length;n++){const s=t.children[n];if(!(s instanceof yt))break;e+=s.colSpan}return e}getTheStartSpanCell(t,e,n,s){const i={rowIndex:n};for(let r=n;r>=0;r--){const n=e[r];if(n.includes(s)){i.cell=t[r].children[n.indexOf(s)],i.rowIndex=r;break}}return i}getDefaultCellBlockTemplate(e,n,s=1){const i=xe({colspan:n>1?n.toString():null,rowspan:s>1?s.toString():null}),r=t(),a={id:r,type:e,children:[{id:`${r}-p`,type:"paragraph",nodes:[{id:`${r}-p-t`,type:"text",text:""}]}]};return Object.keys(i).length>0&&(a.annotations={customAttribute:i}),a}getSortedValuesByNumericKey(t){return Array.from(t.entries()).sort((([t],[e])=>t-e)).map((([,t])=>t))}}ns.DEFAULT_CELLSPAN=1;class ss extends ns{handleAction(t,e){const{rowsToBeRemoved:n}=t,s=this.getFutureFocusRow(n[0],n[n.length-1],e),i=this.splitRowsBySection(n);if(this.removeRows(i[0]),this.removeRows(i[1]),s){const t=this.getRootContent(e);if(t){const e=s.getLastNode();t.apply(new m(e,e.getRangeEndOffset()))}}}removeRows(t){if(0===t.length)return;const e=t[0].parent,n=e.children,s=this.buildSelectedIndices(t,n);if(s.size>0){if(n.length===t.length)return void e.parent.apply(new W(e));const i=Math.min(...s),r=Math.max(...s),a=this.getRowCellStartCols(n),o=this.collectCellsToMove(n,a,s,i,r);this.insertMovedCells(o,n,a),t.forEach((t=>{t.parent.apply(new W(t))}))}}collectCellsToMove(t,e,n,s,i){const r=new Map,a=t.length;for(let o=0;o<a;o++){const l=t[o],c=l.children.length;for(let t=0;t<c;t++){const c=l.children[t],h=c.rowSpan;if(h<=ns.DEFAULT_CELLSPAN)continue;const d=o+h-1;if(!this.intersectsRemovalRange(o,d,s,i))continue;const u=h-this.countRemovedRows(o,d,n);if(o<s&&d>=s)this.updateCellSpan(c,"rowspan",u);else if(o>=s&&d>i){const s=i+1;if(s<a&&!n.has(s)){const n=e[o][t];r.has(s)||r.set(s,[]),r.get(s).push({cell:this.cloneCellWithRowSpan(c,u),newRowSpan:u,cellIndex:t,logicalStartCol:n})}}}}return r}cloneCellWithRowSpan(t,e){const n=t.clone(t.parent);return this.updateCellSpan(n,"rowspan",e),n}getFutureFocusRow(t,e,n){const s=n.children.filter((t=>t instanceof It||t instanceof Rt)).flatMap((t=>t.children)),i=s.indexOf(t),r=s.indexOf(e);return s[i-1]?s[i-1]:s[r+1]?s[r+1]:void 0}}class is{constructor(){this.dragging=!1,this.anchorCell=null,this.selectedCells=new Set,this.syncRTESelectionWithDebounce=ye(this.syncRTESelection,100,this),this.handleSelectionChangeWithDebounce=ye(this.handleSelectionChange,10,this),this.filterSelectedCell=(t,e)=>{const n=new Set;if(t.intersectsNode(e)){if(e.nodeType===Node.TEXT_NODE){const t=P.getEntityByDOM(e.parentElement);if(t){const e=Nt(t.parent,At);if(e)return n.add(e),Array.from(n)}}e.childNodes.forEach((e=>this.filterSelectedCell(t,e).forEach((t=>{n.add(t)}))))}return Array.from(n)},this.updateSelectedStyles=(t,e)=>{const n=1===e?"v-rte-table-cell-focused":"v-rte-table-cell-selected",s=P.getDOMByEntity(t);s&&s.classList.add(n)},this.handleDocMouseUp=()=>{this.endDrag();const t=ve();t&&t.removeEventListener("mouseup",this.handleDocMouseUp)},this.handleContentClick=()=>{this.clearSelection();const t=this.context.host.shadowRoot.querySelector(".rich-text-editor-container");t&&t.removeEventListener("mousedown",this.handleContentClick,!0)}}static computeRectRange(t,e){const n=t.parent.parent.parent;if(n!==e.parent.parent.parent)return[];const s=[];n.children.forEach((t=>{t.children.forEach((t=>s.push(t)))}));const{grid:i,cellMeta:r}=is.buildCellGrid(s),a=r.get(t),o=r.get(e);if(!a||!o)return[];const l=a.row+a.rowSpan-1,c=a.col,h=a.col+a.colSpan-1,d=o.row+o.rowSpan-1,u=o.col,p=o.col+o.colSpan-1,f=Math.min(a.row,o.row),w=Math.max(l,d),g=Math.min(c,u),b=Math.max(h,p),v=new Set;for(let t=f;t<=w;t++){const e=i[t];for(let t=g;t<=b;t++){const n=e[t];n&&v.add(n)}}return Array.from(v)}static getCellSpan(t){let e=1,n=1;const s=t.getAnnotationByType(U.CUSTOM_ATTRIBUTE);if(s&&s.customAttribute){const t=s.customAttribute;t.rowSpan&&(e=parseInt(t.rowSpan,10)),t.colSpan&&(n=parseInt(t.colSpan,10))}if(1===e&&1===n){const s=P.getDOMByEntity(t);if(s){const t=s.getAttribute("rowSpan"),i=s.getAttribute("colSpan");t&&(e=parseInt(t,10)),i&&(n=parseInt(i,10))}}return{rowSpan:Number.isFinite(e)&&e>0?e:1,colSpan:Number.isFinite(n)&&n>0?n:1}}static buildCellGrid(t){const e=[],n=new Map;for(let s=0;s<t.length;s++){const i=t[s];e[s]||(e[s]=[]);let r=0;for(let t=0;t<i.children.length;t++){const a=i.children[t];for(;e[s][r];)r+=1;const{rowSpan:o,colSpan:l}=is.getCellSpan(a);n.set(a,{row:s,col:r,rowSpan:o,colSpan:l});for(let t=0;t<o;t++){const n=s+t;e[n]||(e[n]=[]);for(let t=0;t<l;t++)e[n][r+t]=a}r+=l}}return{grid:e,cellMeta:n}}destroy(){this.removeSelectionChangeListener()}init(t){this.context=t,this.addSelectionChangeListener()}setSelectedCells(t){const e=Array.from(this.selectedCells)[0]||t[0];this.updateSelectedCells(t),this.emitCellSelectionChange(e,t)}getSelectedCells(){return Array.from(this.selectedCells)}focusCell(t){const e=P.getEntityByDOM(t);e&&(this.anchorCell=e,this.setSelectedCells([e]),this.addListeners())}dragOver(t){if(!this.anchorCell)return;const e=is.computeRectRange(this.anchorCell,t);e.length>1&&this.startDrag(),this.dragging&&(this.preventTextSelection(e),this.updateSelectedCells(e,{debounceSync:!0}))}endDrag(){this.dragging=!1,this.anchorCell=null}emitCellSelectionChange(t,e){const n=Nt(t,Et);if(n){const t=P.getDOMByEntity(n);t&&de.notify(ct.getSubject(t,fe),{host:t,detail:e})}}clearSelection(){this.selectedCells.forEach((t=>{const e=P.getDOMByEntity(t);e&&e.classList.remove("v-rte-table-cell-selected","v-rte-table-cell-focused")})),this.selectedCells.clear()}addSelectionChangeListener(){const t=ve();t&&t.addEventListener("selectionchange",this.handleSelectionChangeWithDebounce)}removeSelectionChangeListener(){const t=ve();t&&t.removeEventListener("selectionchange",this.handleSelectionChangeWithDebounce)}handleSelectionChange(){if(this.dragging)return void this.syncRTESelectionWithDebounce();const t=this.context.getSelection();if(t.rangeCount>0){const e=t.getRangeAt(0),n=e.commonAncestorContainer;if(i(n,"table")){const t=this.filterSelectedCell(e,n);this.setSelectedCells(t)}}}startDrag(){this.dragging=!0}updateSelectedCells(t,{debounceSync:e}={}){this.clearSelection(),t.forEach((e=>{this.selectedCells.add(e),this.updateSelectedStyles(e,t.length)})),e?this.syncRTESelectionWithDebounce():this.syncRTESelection()}syncRTESelection(){const t=Array.from(this.selectedCells),e=t.flatMap((t=>t.children.flatMap((t=>t.children.flatMap((t=>{if(t instanceof V)return t})))))).filter(rt);t.length>1&&this.context.setSelectedNodes(e,{startNode:e[0],endNode:e[e.length-1],startOffset:0,endOffset:e[e.length-1].getRangeEndOffset()})}preventTextSelection(t){const e=this.context.getSelection();if(e.removeAllRanges(),t.length>0){const n=P.getDOMByEntity(t[0]);if(n){const t=new Range;t.setStart(n,0),t.setEnd(n,0),e.addRange(t)}}}addListeners(){const t=ve();t&&t.addEventListener("mouseup",this.handleDocMouseUp);const e=this.context.host.shadowRoot.querySelector(".rich-text-editor-container");e&&e.addEventListener("mousedown",this.handleContentClick,!0)}}class rs extends ns{handleAction(t,e){const{selectedRows:n}=t,[s,i]=this.splitRowsBySection(n);i.length>0?this.convertToHeaderRows(i,e):this.revertToBodyRows(s,e);const r=this.getRootContent(e);if(r){const t=n[0].getFirstNode();t&&r.apply(new m(t,0))}}convertToHeaderRows(e,n){let s=n.children.find((t=>t instanceof It));const i=e[0].parent;s||(s=It.from({id:t(),type:"table-head",children:[]}),n.apply(new F(i,s)));const r=i.children.indexOf(e[e.length-1]),a=i.children.slice(0,r+1),o=this.buildSelectedIndices(a,i.children),l=Math.min(...o),c=Math.max(...o);if(o.size>0){if(o.size<i.children.length){const t=this.getRowCellStartCols(i.children),e=this.collectCellsToMove(i.children,t,o,l,c);this.insertMovedCells(e,i.children,t)}this.convertBodyRowsToHeaderRows(i,s,a)}}convertBodyRowsToHeaderRows(t,e,n){for(let e=0;e<n.length;e++){const s=n[e];s.children=s.children.map((t=>this.convertTdToTh(t))),t.apply(new W(s))}e.apply(new H(n))}revertToBodyRows(e,n){let s=n.children.find((t=>t instanceof Rt));const i=e[0].parent;s||(s=Rt.from({id:t(),type:"table-body",children:[]}),n.apply(new _(i,s)));const r=i.children.indexOf(e[0]),a=i.children.slice(r),o=this.buildSelectedIndices(a,i.children);if(o.size>0){const t=this.getRowCellStartCols(i.children),e=this.collectCellsToMove(i.children,t,o,Math.min(...o),Math.max(...o));this.insertMovedCells(e,i.children,t),this.convertHeadRowsToBodyRows(i,s,a)}}convertHeadRowsToBodyRows(t,e,n){const s=e.children[0],i=this.getRowCellStartCols(n);for(let r=0;r<n.length;r++){const a=n[r];t.apply(new W(a));const o=s?this.getHeadCellLength(s):0;a.children=this.convertThToTd(a,i[r],o),s&&e.apply(new F(s,a))}s||e.apply(new H(n))}collectCellsToMove(t,e,n,s,i){const r=new Map,a=t.length;for(let o=0;o<a;o++){const l=t[o],c=l.children.length;for(let t=0;t<c;t++){const c=l.children[t],h=c.rowSpan;if(h<=ns.DEFAULT_CELLSPAN)continue;const d=o+h-1;if(!this.intersectsRemovalRange(o,d,s,i))continue;const u=this.countRemovedRows(o,d,n),p=h-u;if(o<s&&d>=s){this.updateCellSpan(c,"rowspan",p);const i=s;if(i<a&&n.has(i)){const n=e[o][t];r.has(i)||r.set(i,[]),r.get(i).push({cell:this.cloneCellWithRowSpan(c,u),newRowSpan:u,cellIndex:t,logicalStartCol:n})}}else if(o>=s&&d>i){this.updateCellSpan(c,"rowspan",u);const s=i+1;if(s<a&&!n.has(s)){const n=e[o][t];r.has(s)||r.set(s,[]),r.get(s).push({cell:this.cloneCellWithRowSpan(c,p),newRowSpan:p,cellIndex:t,logicalStartCol:n})}}}}return r}convertTdToTh(t){if(t instanceof yt)return t;const e=yt.from(t.toJSON());return e.parent=t.parent,e}convertThToTd(t,e,n){return t.children.map(((s,i)=>{let r=s;const a=e[i]<n,o=s.toJSON();return r=a?s:At.from(this.deleteHeadCellDefaultBackground(o)),r.parent=t,r}))}cloneCellWithRowSpan(e,n){const s=e.clone(e.parent);s.id=t(),s.children=[];const i=this.createNewParagraph("");return i&&s.apply(new H([i])),this.updateCellSpan(s,"rowspan",n),s}deleteHeadCellDefaultBackground(t){var e;if(t&&t.annotations&&t.annotations.customStyle){delete t.annotations.tableCell;const n=t.annotations.customStyle.backgroundColor,s=Bt.getDefaultBackgroundColor();!n||n!==s&&(null===(e=r(n))||void 0===e?void 0:e.toUpperCase())!==s||delete t.annotations.customStyle.backgroundColor}return t}}class as extends Mt{handleAction(t,e){const{insertDirection:n,tableCellInsertRange:s}=t,i=new Set(s.map((t=>t.id))),r=jt(e),a=Dt(r),[o,l]=this.getBoundaryCellColumnRange(s,r,a),c=n===Pt.LEFT?o:l+1,h=this.hasSelectedCellInsideTargetColumn(r,a,c,i),d=new Set;r.forEach(((t,s)=>{if(d.has(s))return;const o=this.findExpandableCell(t,s,c,a,n,i,h);if(o){const t=o.rowSpan;if(_t(o,o.colSpan+1,o.rowSpan,e,!0),t>1)for(let e=1;e<t;e++)d.add(s+e);return}const l=this.findInsertPosition(t,s,c,a,r);if(l){const e=this.generateTableCell(l.templateCell);t.apply(l.before?new F(l.anchorCell,e):new _(l.anchorCell,e))}}))}findExpandableCell(t,e,n,s,i,r,a){const o=s[e],l=t.children.reduce(((t,e)=>t+(r.has(e.id)?1:0)),0);for(const c of t.children){const t=o.indexOf(c.id),h=t+c.colSpan,d=n===h,u=e+c.rowSpan>=s.length,p=r.has(c.id),f=n>t&&n<h;if(i===Pt.LEFT?f:f&&(!p||!u)||d&&c.colSpan>1&&p&&!u&&1===l&&!a)return c}return null}hasSelectedCellInsideTargetColumn(t,e,n,s){for(let i=0;i<t.length;i++){const r=t[i],a=e[i];for(const t of r.children){if(!s.has(t.id))continue;const e=a.indexOf(t.id),i=e+t.colSpan;if(n>e&&n<i)return!0}}return!1}findInsertPosition(t,e,n,s,i){const r=s[e];let a=t.children[0];if(n>=0&&n<r.length){const t=Ht(i,r[n]);t&&(a=t)}let o=0;for(let e=0;e<t.children.length;e++){const s=t.children[e];for(;o<r.length&&r[o]!==s.id;)o++;if(o>=n)return{anchorCell:s,templateCell:a,before:!0};const i=o+s.colSpan;if(i>n||e===t.children.length-1)return{anchorCell:s,templateCell:a,before:!1};o=i}return null}generateTableCell(t){return t instanceof yt?yt.from(Vt(t.type)):At.from(Vt(t.type))}}class os extends Mt{handleAction(t,e){const n=jt(e),s=Dt(n),[i,r]=this.getBoundaryCellColumnRange(t.tableCellDeleteRange,n,s),a=Math.max(n.indexOf(t.tableCellDeleteRange[t.tableCellDeleteRange.length-1].parent),0),{coveredCellIds:o,coveredCells:l,adjustmentCellInfo:c}=this.getDeleteCellsInfo(n,i,r,s),h=this.findNextFocusableCell(n,s,i,r,o,a);this.deleteCells(l,c,e);const d=this.getRootContent(e),u=$t(h);d&&u&&d.apply(new m(u))}getDeleteCellsInfo(t,e,n,s){const i=[],r=new Set,a=[],o=Ft(s);return t.forEach((t=>{t.children.forEach((t=>{const s=o.get(t.id);if(void 0===s)return;const{colSpan:l,rowSpan:c}=Kt(t),h=this.getColumnOverlapCount(s,l,e,n);if(h<=0)return;if(h===l)return i.push(t),void r.add(t.id);const d=Math.max(1,l-h);a.push({cell:t,nextColSpan:d,rowSpan:c})}))})),{coveredCells:i,coveredCellIds:r,adjustmentCellInfo:a}}findNextFocusableCell(t,e,n,s,i,r){for(let a=0;a<t.length;a++){const o=this.findFocusableCellIdInGridRow(e[(r+a)%t.length],n,s,i);if(!o)continue;const l=Ht(t,o);if(l)return l}return null}findFocusableCellIdInGridRow(t,e,n,s){for(let e=n+1;e<t.length;e++){const n=t[e];if(n&&!s.has(n))return n}for(let n=e-1;n>=0;n--){const e=t[n];if(e&&!s.has(e))return e}return null}deleteCells(t,e,n){t.forEach((t=>{t.parent.apply(new W(t))}));const s=new Set;e.forEach((({cell:t,nextColSpan:e,rowSpan:i})=>{s.add(t.id),_t(t,e,i,n)})),this.normalizeRemainingCellSpans(n,s)}normalizeRemainingCellSpans(t,e){jt(t).forEach((n=>{n.children.forEach((n=>{const{colSpan:s,rowSpan:i}=Kt(n);if(e.has(n.id)){const e=zt(t);if(!(i>1&&s===e))return}_t(n,s,i,t)}))}))}getColumnOverlapCount(t,e,n,s){const i=t+e-1,r=Math.max(t,n),a=Math.min(i,s);return r<=a?a-r+1:0}}class ls extends I{constructor(t){super(),this.isFlushable=!0,this.type="CREATE_SEGMENT_TABLE_CELL",this.payload=t}}class cs extends D{handleAction(t,e){const{table:n,sourceCell:s,colSpan:i,cellType:r,keepSourceContent:a}=t.payload,o=a?this.convertCellType(s,r):qt(r);_t(o,i,s.rowSpan,n),e.apply(new F(s,o))}convertCellType(t,e){return"table-head-cell"===e?yt.from(t.toJSON()):At.from(t.toJSON())}}class hs extends D{handleAction(t,e){const{cell:n,targetCellType:s}=t.payload,i="table-head-cell"===s?yt.from(n.toJSON()):At.from(n.toJSON());e.apply(new F(n,i)),e.apply(new W(n))}}class ds extends D{handleAction(t,e){const{table:n,cell:s,col:i,cellStartCol:r,endCol:a,targetCellType:o}=t.payload,l=r+s.colSpan-1,c=i>r?i-r:0,h=Math.min(a,l),d=h-i+1,u=l-h;c>0&&e.apply(new ls({table:n,sourceCell:s,colSpan:c,cellType:s.type,keepSourceContent:!0})),e.apply(new ls({table:n,sourceCell:s,colSpan:d,cellType:o,keepSourceContent:0===c})),u>0&&e.apply(new ls({table:n,sourceCell:s,colSpan:u,cellType:s.type,keepSourceContent:0===c&&d===s.colSpan})),e.apply(new W(s))}}class us extends Mt{handleAction(t,e){const n=jt(e),s=Dt(n),i=Ft(s),[r,a]=this.getBoundaryCellColumnRange(t.tableCellSelectRange,n,s),o=[],l=new Set;n.forEach((t=>{t.children.forEach((t=>{const e=i.get(t.id);void 0!==e&&e>=r&&e<=a&&!l.has(t.id)&&(l.add(t.id),o.push(t))}))})),t.selectCellCallback(o)}}class ps extends un{canIntercept(t){return t.childrenToBeInserted.some((t=>!(t instanceof At)))}intercept(){}}class fs extends D{handleAction(t,e){const{targetCell:n,mergeCells:s,colSpan:i,rowSpan:r,direction:a}=t;this.mergeContentToTargetCell(n,s),_t(n,i,r,e),this.deleteOtherSelectedCells(s,n),a!==Wt.MERGE_CELL_LEFT&&a!==Wt.MERGE_CELL_RIGHT&&r>1&&this.clearRowSpanIfUniformAcrossRow(n,e,r);const o=this.getRootContent(e),l=$t(n);o&&l&&o.apply(new m(l))}mergeContentToTargetCell(t,e){const n=e.flatMap((t=>t.children)),s=n.filter((t=>t.isNotEmpty()));t.children=(s.length>0?s:[n[0]]).map((e=>e.clone(t)))}deleteOtherSelectedCells(t,e){t.forEach((t=>{t!==e&&t.parent.apply(new W(t))}))}clearRowSpanIfUniformAcrossRow(t,e,n){const s=t.parent.parent.children,i=Dt(s),r=[];for(let e=0;e<i.length;e++)i[e].includes(t.id)&&r.push(e);if(r.length>1){const t=r[0],a=t+n-1,o=new Set;let l=Number.POSITIVE_INFINITY;for(let e=0;e<i[0].length;e++){let n=i[t][e],s=1,r=!1;for(let c=t+1;c<=a;c++)i[c][e]!==n?(s>1&&(r=!0,l=Math.min(l,s),o.add(n)),s=1,n=i[c][e]):s++;if(s<2&&!r){o.clear();break}s>1&&(l=Math.min(l,s),o.add(n))}o.size>0&&s.forEach((t=>{t.children.forEach((t=>{if(o.has(t.id)){const{rowSpan:n,colSpan:s}=Kt(t);_t(t,s,n-l+1,e)}}))}))}}}class ws extends C{canHandle(t,e){const n=t[e];return n&&"TABLE"===n.tagName?1:0}handle(e,n){return Et.from({id:t(),type:"table-block",annotations:L.generate(Et,e[0],n),children:[]},n)}appendChildBlocks(t,e){t.children=e.map((e=>(e.parent=t,e)))}shouldProceedToElementChildren(){return!0}}class gs extends y{canHandle(t,e){const n=t[e];return n&&"THEAD"===n.tagName?1:0}handle(e,n){return It.from({id:t(),type:"table-head",annotations:L.generate(It,e[0],n),children:[]},n)}appendChildBlocks(t,e){t.children=e.map((e=>(e.parent=t,e)))}shouldProceedToElementChildren(){return!0}}class bs extends y{canHandle(t,e){const n=t[e];return n&&"TBODY"===n.tagName?1:0}handle(e,n){return Rt.from({id:t(),type:"table-body",annotations:L.generate(Rt,e[0],n),children:[]},n)}appendChildBlocks(t,e){t.children=e.map((e=>(e.parent=t,e)))}shouldProceedToElementChildren(){return!0}}class vs extends y{canHandle(t,e){const n=t[e];return n&&"TR"===n.tagName?1:0}handle(e,n){return Ut.from({id:t(),type:"table-row",annotations:L.generate(Ut,e[0],n),children:[]},n)}appendChildBlocks(t,e){t.children=e.map((e=>(e.parent=t,e)))}shouldProceedToElementChildren(){return!0}}class ms extends y{canHandle(t,e){const n=t[e];return!n||"TD"!==n.tagName&&"TH"!==n.tagName?0:1}handle(e,n){const s=e[0],i=[{id:t(),type:"paragraph",annotations:{internalWrapper:n&&!n.autoMatchFormat},nodes:[{id:t(),type:"text",annotations:{plainText:n&&!n.autoMatchFormat},text:""}]}];return"TH"===s.tagName?yt.from({id:t(),type:"table-head-cell",annotations:this.getTableHeadCellAnnotations(s,n),children:i},n):At.from({id:t(),type:"table-cell",annotations:L.generate(At,s,n),children:i},n)}appendChildBlocks(t,e){t.children=e.map((e=>(e.parent=t,e)))}shouldProceedToElementChildren(){return!0}getTableHeadCellAnnotations(t,e){const n=L.generate(yt,t,e);return n&&n.tableCell&&Tt.getColorKey(n.tableCell.backgroundColor,!0)===gt.key&&(delete n.tableCell.backgroundColor,n.customStyle&&delete n.customStyle.backgroundColor),n}}class xs extends C{canHandle(t,e){const n=t[e];return n&&n.parentElement&&"TABLE"===n.parentElement.tagName&&"CAPTION"===n.tagName?1:0}handle(e,n){const s=this.getTableCaptionAnnotations(e[0],n);return kn.from({id:t(),type:"table-caption",annotations:Object.assign(Object.assign({},s),{caption:!0}),children:[]},n)}appendChildBlocks(t,e){t.children=e.map((e=>(e.parent=t,e)))}shouldProceedToElementChildren(){return!0}getTableCaptionAnnotations(t,e){const n=L.generate(kn,t,e);return n&&n.customStyle&&n.customStyle.backgroundColor&&Tt.getColorKey(n.customStyle.backgroundColor,!0)===gt.key&&delete n.customStyle.backgroundColor,n}}class ys extends O{getBackgroundColor(t){return t.style.backgroundColor?Tt.getColorKey(t.style.backgroundColor)||t.style.backgroundColor:null}getBorder(t){const e=t.style,n=e.borderStyle,s=e.borderWidth,i=e.borderColor;if(i||n||s){const t="initial"===i?"":i;return{style:"initial"===n?"":n,width:"initial"===s?"":s,color:Tt.getColorKey(t)||t}}return null}getWidth(t){if(t.style.width)return t.style.width;const e=t.getAttribute("width");return e?/^\d+$/.test(e)?`${e}px`:e:null}getHeight(t){if(t.style.height)return t.style.height;const e=t.getAttribute("height");return e?/^\d+$/.test(e)?`${e}px`:e:null}}class Cs extends ys{canHandle(t){return"RTETableBlock"===t.dtoName}handle(t){const e=xe({backgroundColor:this.getBackgroundColor(t),border:this.getBorder(t),width:this.getWidth(t),height:this.getHeight(t),alignment:this.getAlignment(t)});return Object.keys(e).length>0?{table:e}:{}}getAlignment(t){const e=t.classList;if(e.contains("v-rte--extension-table-align-left"))return"left";if(e.contains("v-rte--extension-table-align-center"))return"center";if(e.contains("v-rte--extension-table-align-right"))return"right";const n=t.style,s=n.marginLeft,i=n.marginRight;if("auto"===s&&"auto"===i)return"center";if("0"===s||"0px"===s)return"left";if("0"===i||"0px"===i)return"right";const r=t.getAttribute("align");return r&&["left","center","right"].includes(r)?r:null}}class Ls extends ys{canHandle(t){return"RTETableCellBlock"===t.dtoName}handle(t){const e=xe({backgroundColor:this.getBackgroundColor(t),padding:this.getPadding(t),border:this.getBorder(t),width:this.getWidth(t),height:this.getHeight(t),textAlign:this.getTextAlign(t),verticalAlign:this.getVerticalAlign(t),minWidth:this.getMinWidth(t),boxSizing:this.getBoxSizing(t)});return Object.keys(e).length>0?{tableCell:e}:{}}getMinWidth(t){return t.style.minWidth?t.style.minWidth:null}getBoxSizing(t){return t.style.boxSizing?t.style.boxSizing:null}getPadding(t){return t.style.padding?t.style.padding:null}getTextAlign(t){if(t.style.textAlign){const e=t.style.textAlign;if(["left","center","right","justify"].includes(e))return e}const e=t.getAttribute("align");return e&&["left","center","right","justify"].includes(e)?e:null}getVerticalAlign(t){if(t.style.verticalAlign){const e=t.style.verticalAlign;if(["top","middle","bottom"].includes(e))return e}return null}}class ks extends Ls{canHandle(t){return"RTETableHeadCellBlock"===t.dtoName}}class Ss extends D{handleAction(t,e){const n=t.toAnnotation(),s=this.getDOMByEntity(e);if(s){const t=s.closest(".v-rte--extension-table-container"),{backgroundColorAnnotation:i,width:r,height:a}=n;s.style.backgroundColor=i.renderStyle().color,s.style.border=n.borderStr,s.style.width=r,s.style.height=a;const o=n.renderAlignmentStyle().margin;s.style.margin=o,t&&(t.style.width=r,t.style.height=a,t.style.margin=o),this.updateCustomStyleAnnotation(e,["backgroundColor","border","width","height","margin"])}}}class Ts extends D{handleAction(t,e){const n=t.toAnnotation(),s=this.getDOMByEntity(e);if(s){const{width:t,height:i,borderStr:r,padding:a,textAlign:o,verticalAlign:l}=n,c=n.renderStyle().backgroundColor||"";s.style.backgroundColor=c,s.style.border=r,s.style.width=t,s.style.height=i,s.style.padding=a,s.style.textAlign=o,s.style.verticalAlign=l,this.updateCustomStyleAnnotation(e,["backgroundColor","border","width","height","padding","textAlign","verticalAlign"])}}}class Es extends D{handleAction(t,e){const n=e.parent,s=n.parent,i=Nt(n,Et),r=jt(i),a=r.indexOf(n),{colSpan:o,rowSpan:l}=Kt(e),c=Gt(e,r),h=Math.ceil(l/2),d=Math.max(1,l-h),u=1===l;_t(e,o,h,i);const p=a+h,f=qt(e.type);if(_t(f,o,d,i),u){const t=this.createNewRowWithCell(s,f),a=s.children.indexOf(n);s.apply(new _(s.children[a],t)),r.splice(p,0,t),this.updateCellsSpanningThroughInsertionPoint(r,p,e,i)}else{const t=r[p],e=this.findInsertPosition(t,c,r,p);t.children.splice(e,0,f),f.parent=t}}findInsertPosition(t,e,n,s){let i=0;for(let t=0;t<s;t++){const r=n[t];for(const a of r.children){const{colSpan:r,rowSpan:o}=Kt(a);t+o>s&&Gt(a,n)<e&&(i+=r)}}let r=i;for(let n=0;n<t.children.length;n++){if(r>=e)return n;const s=t.children[n],{colSpan:i}=Kt(s);r+=i}return t.children.length}createNewRowWithCell(e,n){const s={id:t(),type:"table-row",children:[]},i=Ut.from(s);return i.parent=e,i.children.push(n),n.parent=i,i}updateCellsSpanningThroughInsertionPoint(t,e,n,s){for(let i=0;i<e;i++){const r=t[i];for(const t of r.children){if(t===n)continue;const{colSpan:r,rowSpan:a}=Kt(t);i+a>=e&&_t(t,r,a+1,s)}}}}class Os extends D{handleAction(t,e){const n=e.parent,s=Nt(n,Et),i=jt(s),r=i.indexOf(n),{colSpan:a,rowSpan:o}=Kt(e),l=Gt(e,i),c=l+a-1,h=Math.ceil(a/2),d=Math.floor(a/2);_t(e,h,o,s);const u=qt(e.type);_t(u,d,o,s),n.apply(new _(e,u));const p=1===a?1:0;p>0&&this.updateOtherRowsCells(i,r,l,c,o,p,s)}updateOtherRowsCells(t,e,n,s,i,r,a){for(let o=0;o<t.length;o++){const l=t[o];if(!(o>=e&&o<e+i))for(const e of l.children){const i=Gt(e,t),{colSpan:o,rowSpan:l}=Kt(e);if(i+o-1>=n&&i<=s){_t(e,o+r,l,a);break}}}}}class As extends ns{handleAction(e,n){const{selectedRows:s}=e,i=s[s.length-1];let r=n.children.find((t=>t instanceof Rt));const a={id:t(),type:"table-row",children:[]};let o=0,l=null;r?(l=r.children[0],o=this.getHeadCellLength(l)):(r=Rt.from({id:t(),type:"table-body",children:[]}),n.apply(new H([r])));const c=i.parent.children,h=this.getRowsMaxCellCount(c);if(this.getRowsMaxCellCount([i])<h){const t=c.indexOf(i),e=this.getRowCellStartCols(c),n=new Map;for(let s=0;s<h;s++){const i=s<o?"table-head-cell":"table-cell",{cell:r}=this.getTheStartSpanCell(c,e,t,s);if(r){const t=r.colSpan;n.set(s,this.getDefaultCellBlockTemplate(i,t)),s+=t-1}}a.children=this.getSortedValuesByNumericKey(n)}else a.children=this.createTableCells(i,o);const d=l?new F(l,Ut.from(a)):new H([Ut.from(a)]);r.apply(d)}createTableCells(t,e){const n=[];let s=0;for(const i of t.children)n.push(this.getDefaultCellBlockTemplate(s<e?"table-head-cell":"table-cell",i.colSpan)),s+=i.colSpan;return n}}class Is extends ns{handleAction(e){const{insertDirection:n,selectedRows:s}=e,i=n===Zt.ABOVE?s[0]:s[s.length-1],r={id:t(),type:"table-row",children:[]},a=i.parent.children,o=this.getRowsMaxCellCount(a),l=a.indexOf(i),c=this.getRowCellStartCols(a),h=new Map;for(let t=0;t<o;t++){const{cell:e,rowIndex:s}=this.getTheStartSpanCell(a,c,l,t);if(e){const{colSpan:i,rowSpan:r}=e;if(n===Zt.ABOVE?s!==l:s+r>l+1){this.updateCellSpan(e,"rowspan",r+1),t+=i-1;continue}h.set(t,this.getDefaultCellBlockTemplate(e.type,i)),t+=i-1}}r.children=this.getSortedValuesByNumericKey(h);const d=Ut.from(r),u=n===Zt.ABOVE?new F(i,d):new _(i,d);i.parent.apply(u)}}class Rs extends un{canIntercept(t,e){return Boolean(e.parent)}intercept(t,e,n){const s=this.createNewParagraph("");s&&(n.parent.apply(0===e.startOffset?new F(n,s):new _(n,s)),e.newBlock=s)}createNewParagraph(e){const n=Z.getRTEBlockClass("paragraph");if(n)return n.from({id:t(),type:"paragraph",nodes:[{id:t(),type:"text",text:e}]})}}class Ns extends Q{constructor(){super(...arguments),this.stylesToBeFiltered=mt.getDefaultStyles(),this.elementTagName="table"}canFilter(t){return this.isTableBlock(t.dtoName)}canRefill(t,e){return this.isTableBlock(t)&&e.tagName.toLowerCase()===this.elementTagName}toCssText(){return this.buildCssTextForStyles(this.elementTagName,this.classNameToBeAdded)}isTableBlock(t){return"RTETableBlock"===t}}class Bs extends Q{constructor(){super(...arguments),this.stylesToBeFiltered=Ln.getDefaultStyles(),this.elementTagName="table caption"}canFilter(t){return this.isTableCaption(t.dtoName)}canRefill(t,e){return this.isTableCaption(t)&&"CAPTION"===e.nodeName}toCssText(){return this.buildCssTextForStyles(this.elementTagName,this.classNameToBeAdded)}isTableCaption(t){return"RTETableCaptionBlock"===t}}class Ms extends Q{constructor(t="td"){super(),this.stylesToBeFiltered=xt.getDefaultStyles(),this.elementTagName="",this.stylesWithRGBColor=xt.getDefaultStyles(!1),this.cellBlockClassName="",this.elementTagName=t,this.cellBlockClassName="td"===t?"RTETableCellBlock":"RTETableHeadCellBlock"}canFilter(t){return this.isTableCell(t.dtoName)}filterAndDeleteStyles(t,e){return this.convertDefaultBorderColorFromRGBToHex(t),super.filterAndDeleteStyles(t,e)}canRefill(t,e){return this.isTableCell(t)&&e.nodeName===this.elementTagName.toUpperCase()}toCssText(){return this.buildCssTextForStyles(this.elementTagName,this.classNameToBeAdded)}isTableCell(t){return t===this.cellBlockClassName}convertDefaultBorderColorFromRGBToHex(t){t&&t.border&&t.border===this.stylesWithRGBColor.border&&(t.border=this.stylesToBeFiltered.border)}}class js extends v{constructor(t=Qt){super(),this.toolbarButtonRenderer=new Qn,this.tableBlockRenderer=new zn,this.tableRowBlockRenderer=new Kn,this.tableCellRenderer=new qn,this.tableHeadCellRenderer=new Un,this.tableSelection=new is,Tt.setTableColors(t),this.registerToolbarButtonRenderer(js.TOOLBAR_BUTTON_KEY,this.toolbarButtonRenderer),this.registerBlockBasicStrategies(Et.name),this.registerBlockBasicStrategies(It.name),this.registerBlockBasicStrategies(yt.name),this.registerBlockBasicStrategies(Ut.name),this.registerBlockBasicStrategies(At.name),this.registerBlockBasicStrategies(Rt.name),this.registerRenderer("table-block",this.tableBlockRenderer),this.registerRenderer("table-head",new $n),this.registerRenderer("table-head-cell",this.tableHeadCellRenderer),this.registerRenderer("table-row",this.tableRowBlockRenderer),this.registerRenderer("table-cell",this.tableCellRenderer),this.registerRenderer("table-body",new Wn),this.registerRenderer("table-caption",new es),this.registerNode("table-block",Et),this.registerNode("table-head",It),this.registerNode("table-head-cell",yt),this.registerNode("table-row",Ut),this.registerNode("table-cell",At),this.registerNode("table-body",Rt),this.registerNode("table-caption",kn),this.registerElementToBlockDTOClassStrategy(new ws),this.registerElementToBlockDTOClassStrategy(new gs),this.registerElementToBlockDTOClassStrategy(new bs),this.registerElementToBlockDTOClassStrategy(new vs),this.registerElementToBlockDTOClassStrategy(new ms),this.registerElementToBlockDTOClassStrategy(new xs),this.registerAnnotationHandler(new Cs),this.registerAnnotationHandler(new Ls),this.registerAnnotationHandler(new ks)}initialExtensionAfterLoad(t){this.tableSelection.init(t);const e=Object.assign(Object.assign({},t),{tableSelection:this.tableSelection});super.initialExtensionAfterLoad(e)}destroyExtension(){this.tableBlockRenderer.destroy(),this.tableSelection.destroy()}}(()=>{const t=new Jn,e=new Xn;v.registerActionHandleStrategy(x.name,"INSERT_TABLE_BLOCK",t),v.registerActionHandleStrategy(Et.name,"DELETE_TABLE_BLOCK",e),v.registerActionHandleStrategy(M.name,"INSERT_TABLE_BLOCK",t),v.registerActionHandleStrategy(S.name,"INSERT_TABLE_BLOCK",t),v.registerActionHandleStrategy(Et.name,Jt,new As),v.registerActionHandleStrategy(Et.name,Yt,new Is),v.registerActionHandleStrategy(Et.name,Xt,new ss),v.registerActionHandleStrategy(Et.name,te,new rs),v.registerActionHandleStrategy(Et.name,ee,new as),v.registerActionHandleStrategy(Et.name,ne,new os),v.registerActionHandleStrategy(Et.name,se,new ie),v.registerActionHandleStrategy(Ut.name,re,new ds),v.registerActionHandleStrategy(Ut.name,"CREATE_SEGMENT_TABLE_CELL",new cs),v.registerActionHandleStrategy(Ut.name,ae,new hs),v.registerActionHandleStrategy(At.name,oe,new Es),v.registerActionHandleStrategy(At.name,le,new Os),v.registerActionHandleStrategy(yt.name,oe,new Es),v.registerActionHandleStrategy(yt.name,le,new Os),v.registerActionHandleStrategy(Et.name,ce,new us),v.registerActionHandleStrategy(Et.name,he,new fs),v.registerActionHandleStrategy(Et.name,On.name,new Ss),v.registerActionHandleStrategy(At.name,Nn.name,new Ts),v.registerActionHandleStrategy(yt.name,Bn.name,new Ts),v.registerActionHandlerInterceptor(M.name,$.DELETE_BLOCK_CONTENT,new Yn),v.registerActionHandlerInterceptor(Ut.name,$.INSERT_CHILDREN_BEFORE,new ps),v.registerActionHandlerInterceptor(At.name,$.DELETE_CHILDREN,new ts),v.registerActionHandlerInterceptor(yt.name,$.DELETE_CHILDREN,new ts),v.registerActionHandlerInterceptor(Et.name,$.INSERT_NEW_PARAGRAPH,new Rs),v.registerFilterStylesStrategy(Et.dtoName,new Ns),v.registerFilterStylesStrategy(kn.dtoName,new Bs),v.registerFilterStylesStrategy(At.dtoName,new Ms),v.registerFilterStylesStrategy(yt.dtoName,new Ms("th"))})(),js.TOOLBAR_BUTTON_KEY="table";class Ds extends J{constructor(t,e,n){super(t,n),this.type="horizontal-line",this.parent=e}toJSON(){return{id:this.id,type:"horizontal-line"}}clone(t){return new Ds(this.id,t,super.cloneAnnotations())}toHtml(){return"<hr>"}}const _s={display:"inline-block",width:"100%",height:"4px",backgroundColor:"rgb(222, 222, 222)",borderWidth:"0px"};class Hs extends Q{constructor(){super(...arguments),this.stylesToBeFiltered=_s,this.elementTagName="hr"}canFilter(t){return class{static isHorizontalLineBlock(t){return"RTEHorizontalLineBlock"===t}}.isHorizontalLineBlock(t.dtoName)}canRefill(t,e){return e.tagName.toLowerCase()===this.elementTagName}toCssText(){return this.buildCssTextForStyles(this.elementTagName,this.classNameToBeAdded)}}var Vs;!function(t){t.HORIZONTAL_LINE="HORIZONTAL_LINE"}(Vs||(Vs={}));class Ps extends K{constructor(){super(...arguments),this.type=Vs.HORIZONTAL_LINE}static from(){return[Vs.HORIZONTAL_LINE,new Ps]}static getDefaultStyles(){return _s}toJSON(){return null}clone(){return new Ps}renderClass(t){return(null==t?void 0:t.standalone)?null:"v-rte-horizontal-line-hr"}renderStyle(t){return(null==t?void 0:t.standalone)?Ps.getDefaultStyles():null}}class Fs extends B{constructor(t,e){super(t),this.dtoName=Fs.dtoName,this.type="horizontal-line",this.children=[];const{autoMatchFormat:n=!0}=null!=e?e:{};n&&(this.annotationMap=new Map([Ps.from()]))}static from(e,n={autoMatchFormat:!0}){var s,i;const r=new Fs(e.id,n),a=(null===(i=null===(s=e.children)||void 0===s?void 0:s[0])||void 0===i?void 0:i.id)||t(),o=new Ds(a,r);return r.children=[o],e.annotations&&B.convertAnnotationsToMap(r.annotationMap,e.annotations),r}static create(e,n={autoMatchFormat:!0}){const s=new Fs(t(),n),i=new Ds(t(),s);return s.children=[i],e&&B.convertAnnotationsToMap(s.annotationMap,e),s}toJSON(){return Object.assign(Object.assign({},super.toJSON()),{type:"horizontal-line",children:this.children.map((t=>t.toJSON()))})}toHtml(t){return`<hr${super.generateAttributeString(t)}>`}isNotEmpty(){return this.children.length>0}getLastNode(){return this.children[this.children.length-1]}clone(t){const e=new Fs(this.id);return e.children=this.children.map((t=>t.clone(e))),e.annotationMap=super.cloneAnnotations(),e.parent=t,e}}Fs.dtoName="RTEHorizontalLineBlock";class zs extends b{doRender(t,e,n){const s=e.children[0],i=e.getStyles(n),r=e.getClasses(n),a=[J.DECORATOR_NODE_CLASS,r].filter(Boolean).join(" ");return t("div",{key:e.id,class:`v-rte-horizontal-line ${J.DECORATOR_CONTAINER_CLASS}`,ref:this.useRef(e)},[t("hr",{key:(null==s?void 0:s.id)||e.id+"-hr",class:a,style:Object.keys(i).length>0?i:void 0,ref:s?this.useRef(s):void 0})])}injectRTEScopeStyles(){return".v-rte-horizontal-line{padding:8px 0;overflow:hidden}.v-rte-horizontal-line .v-rte-horizontal-line-hr{display:inline-block;width:100%;height:4px;border-width:0px;background-color:rgb(222, 222, 222)}"}}class $s extends I{constructor(t,e=0){super(),this.type="INSERT_HORIZONTAL_LINE_BLOCK",this.splitPointNode=t,this.startOffsetOfNode=e}}class Ks extends Ze{render(t,e){return this.renderButton(t,e,{icon:"horizontal-line",tooltip:{text:f.t("Horizontal line")}})}isDisabled(t){const e=this.getExtensionContext(t.host);if(e){const{host:t,getSelectedNodes:n}=e,[s]=n();return s?t.disabled||!R.canHandle("INSERT_HORIZONTAL_LINE_BLOCK",s.parent):t.disabled}return!1}handleButtonClick(t){if(this.isDisabled(t))return;const e=this.getExtensionContext(t.host);if(e){const{host:n,getSelectedNodes:s,flushValue:i}=e,r=s()[0],a=new $s(r,t.rteRange.startOffset);r?r.parent&&r.parent.apply(a):n.value.apply(a),a.nextFocusNode&&n.value.apply(new m(a.nextFocusNode,0)),i(n.value)}}handleDropdownClick(){}}at.register({"horizontal-line":{icon:'<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 640 512">\x3c!--! Font Awesome Pro 6.3.0 by @fontawesome - https://fontawesome.com License - https://fontawesome.com/license (Commercial License) Copyright 2023 Fonticons, Inc. --\x3e<path fill="currentColor" d="M0 224H32 608h32v64H608 32 0V224z"/></svg>'}});class qs extends C{canHandle(t,e){return"HR"===t[e].tagName?1:0}handle(t,e){const n=L.generate(Fs,t[0],e);return Fs.create(n,e)}appendChildBlocks(){}shouldProceedToElementChildren(){return!1}}class Ws extends D{handleAction(t,e){const n=Fs.create();if(t.splitPointNode instanceof N){const s=t.splitPointNode,i=t.startOffsetOfNode;if(this.isCaretPositionAtBlockEnd(e,s,i))this.insertAfterWithFocus(t,e,n);else if(this.isCaretPositionAtBlockStart(e,s,i))e.parent.apply(new F(e,n)),t.nextFocusNode=e.getFirstNode();else{const r=new Y(s,i);e.apply(r);const a=this.getNextSiblingBlock(e);e.parent.apply(new _(e,n)),t.nextFocusNode=a.getFirstNode()}}else if(t.splitPointNode)this.insertAfterWithFocus(t,e,n);else{const s=super.createNewParagraph("");e.apply(new H([n,s])),t.nextFocusNode=s.children[0]}}insertAfterWithFocus(t,e,n){const s=this.getNextSiblingBlock(e),i=null==s?void 0:s.getFirstNode();if(i instanceof N)e.parent.apply(new _(e,n)),t.nextFocusNode=i;else{const s=super.createNewParagraph("");e.parent.apply(new _(e,n,s)),t.nextFocusNode=s.children[0]}}getNextSiblingBlock(t){const e=t.parent.children,n=e.indexOf(t);return e[n+1]}}class Us extends v{constructor(){super(),this.blockRenderer=new zs,this.toolbarButtonRenderer=new Ks,this.registerBlockBasicStrategies(Fs.name),this.registerNode("horizontal-line",Fs),this.registerRenderer("horizontal-line",this.blockRenderer),this.registerToolbarButtonRenderer(Us.TOOLBAR_BUTTON_KEY,this.toolbarButtonRenderer),this.registerElementToBlockDTOClassStrategy(new qs),v.registerFilterStylesStrategy(Fs.dtoName,new Hs)}}var Gs;(()=>{const t=new Ws;v.registerActionHandleStrategy(x.name,"INSERT_HORIZONTAL_LINE_BLOCK",t),v.registerActionHandleStrategy(M.name,"INSERT_HORIZONTAL_LINE_BLOCK",t),v.registerActionHandleStrategy(S.name,"INSERT_HORIZONTAL_LINE_BLOCK",t),v.registerActionHandleStrategy(Fs.name,"INSERT_HORIZONTAL_LINE_BLOCK",t)})(),Us.TOOLBAR_BUTTON_KEY="horizontalLine",function(t){t.BLOCKQUOTE="BLOCKQUOTE"}(Gs||(Gs={}));const Zs={overflow:"hidden",marginInline:"0",paddingInline:"24px",borderInlineStart:"solid 5px hsl(0, 0%, 80%)"};class Qs extends K{constructor(){super(...arguments),this.type=Gs.BLOCKQUOTE}static from(){return[Gs.BLOCKQUOTE,new Qs]}static getDefaultCssText(){return`.v-rte-blockquote {\n${Object.entries(Zs).map((([t,e])=>`\t${Ce(t)}: ${e};`)).join("\n")}\n}`}toJSON(){return null}clone(){return new Qs}renderClass(t){return(null==t?void 0:t.standalone)?null:"v-rte-blockquote"}renderStyle(t){return(null==t?void 0:t.standalone)?Zs:null}}class Js extends B{constructor(t,e){super(t),this.dtoName=Js.dtoName,this.type="blockquote",this.children=[];const{autoMatchFormat:n=!0}=null!=e?e:{};n&&(this.annotationMap=new Map([Qs.from()]))}static from(t,e){const n=new Js(t.id,e);return t.annotations&&B.convertAnnotationsToMap(n.annotationMap,t.annotations),n.children=B.generateBlockChildren(t.children,e,n),n}clone(t){const e=new Js(this.id),n=e;return e.children=this.children.map((t=>t.clone(n))),e.annotationMap=this.cloneAnnotations(),e.parent=t,e}getLastNode(){return this.children[this.children.length-1].getLastNode()}isNotEmpty(){return this.children.length>0}toHtml(t){return`<blockquote${this.generateAttributeString(t)}>${this.children.map((e=>e.toHtml(t))).join("")}</blockquote>`}toJSON(){return Object.assign(Object.assign({},super.toJSON()),{id:this.id,type:"blockquote",children:this.children.map((t=>t.toJSON()))})}}Js.dtoName="RTEBlockquoteBlock";class Ys extends D{handleAction(e,n){const s=e.selectedBlocks,i=n.children,r=new Set(s),a=i.indexOf(s[0]),o=i.slice(0,a).filter((t=>!r.has(t))).length,l=new Js(t());l.parent=n,l.children=s,s.forEach((t=>{t.parent=l}));for(let t=i.length-1;t>=0;t--)r.has(i[t])&&i.splice(t,1);i.splice(o,0,l)}}class Xs extends D{handleAction(t,e){const n=e.parent,s=[...e.children];s.length>0&&n.apply(new F(e,...s)),n.apply(new W(e))}}class ti extends un{canIntercept(t,e){const n=e.parent;return n instanceof Js&&!e.isNotEmpty()&&n.children[n.children.length-1]===e}intercept(t,e,n){const s=n.parent,i=this.createNewParagraph("");i&&(s.parent.apply(new _(s,i)),s.apply(new W(n)),e.newBlock=i)}createNewParagraph(e){const n=Z.getRTEBlockClass("paragraph");if(n)return n.from({id:t(),type:"paragraph",nodes:[{id:t(),type:"text",text:e}]})}}class ei extends I{constructor(t){super(),this.isFlushable=!0,this.type="TRANSFORM_TO_BLOCKQUOTE",this.selectedBlocks=t}}class ni extends I{constructor(){super(...arguments),this.isFlushable=!0,this.type="REMOVE_BLOCKQUOTE"}}class si extends C{canHandle(t,e){return"BLOCKQUOTE"===t[e].tagName?1:0}handle(e,n){const s=L.generate(Js,e[0],n);return Js.from({id:t(),type:"blockquote",annotations:s,children:[]},n)}appendChildBlocks(t,e){const n=e.flatMap((t=>t instanceof Js?t.children:[t]));t.children=n.map((e=>(e.parent=t,e)))}shouldProceedToElementChildren(){return!0}}const ii=new class extends b{doRender(t,e,n){var s;return t("blockquote",Object.assign({key:e.id,class:e.getClasses(n),style:e.getStyles(n),ref:this.useRef(e)},null===(s=e.getCustomAttributesAnnotation())||void 0===s?void 0:s.render()))}injectRTEScopeStyles(){return Qs.getDefaultCssText()}};class ri extends Ze{render(t,e){return this.renderButton(t,e,{icon:"quote-left",tooltip:{text:"Block quote"}})}isSelected(t){const e=this.getStartNode(t);return!!e&&null!==this.findBlockquoteAncestor(e)}isDisabled(t){if(t.host.disabled)return!0;const e=this.getStartNode(t);if(!e||null!==this.findBlockquoteAncestor(e))return!1;const{container:n}=this.resolveWrapAnchor(e.parent);return!R.canHandle("TRANSFORM_TO_BLOCKQUOTE",n)}handleButtonClick(t){const e=this.getExtensionContext(t.host);if(e){const{host:n,getSelectedNodes:s}=e,i=s(),r=i[0];if(!r)return void this.appendEmptyBlockquote(n.value);this.findBlockquoteAncestor(r)?this.collectBlockquoteAncestors(i).forEach((t=>{t.apply(new ni)})):this.wrapSelectedBlocks(i),n.value.apply(new m(r,t.rteRange.startOffset))}}handleDropdownClick(){}appendEmptyBlockquote(e){if(e.children.length>0){const n=e.children[e.children.length-1],s=M.from({id:t(),type:"paragraph",nodes:[{id:t(),type:"text",text:""}]});e.apply(new _(n,s)),e.apply(new ei([s])),e.apply(new m(s.getLastNode(),0))}}wrapSelectedBlocks(t){var e,n;const s=this.getUniqueBlocks(t),i=new Set(s.map((t=>{var e;return null!==(e=this.resolveWrapAnchor(t,!0).wrapBlock)&&void 0!==e?e:t}))).size>1,r=new Set;for(const t of s){const{wrapBlock:e}=this.resolveWrapAnchor(t,i);e instanceof Js&&!r.has(e)&&(r.add(e),e.apply(new ni))}const a=new Map;for(const t of s){const s=this.resolveWrapAnchor(t,i),{container:r}=s;if(r){const i=null!==(e=s.wrapBlock)&&void 0!==e?e:t,o=null!==(n=a.get(r))&&void 0!==n?n:new Set;o.add(i),a.set(r,o)}}for(const[t,e]of a)t.apply(new ei([...e]))}getStartNode(t){const e=this.getExtensionContext(t.host);return null==e?void 0:e.getSelectedNodes()[0]}collectBlockquoteAncestors(t){const e=new Set;return t.forEach((t=>{const n=this.findBlockquoteAncestor(t);n&&e.add(n)})),e}findBlockquoteAncestor(t){let e=t.parent;for(;e&&!(e instanceof x);){if(e instanceof Js)return e;e=e.parent}return null}getUniqueBlocks(t){const e=new Set,n=[];return t.forEach((t=>{const s=t.parent;s&&!e.has(s)&&(e.add(s),n.push(s))})),n}resolveWrapAnchor(t,e=!1){let n=t;for(;n.parent&&!(n.parent instanceof x)&&(e||!R.canHandle("TRANSFORM_TO_BLOCKQUOTE",n.parent));)n=n.parent;return{wrapBlock:n!==t?n:null,container:n.parent}}}at.register({"quote-left":{icon:'<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 448 512"><path fill="currentColor" d="M0 216C0 149.7 53.7 96 120 96l8 0c17.7 0 32 14.3 32 32s-14.3 32-32 32l-8 0c-30.9 0-56 25.1-56 56l0 8 64 0c35.3 0 64 28.7 64 64l0 64c0 35.3-28.7 64-64 64l-64 0c-35.3 0-64-28.7-64-64L0 216zm256 0c0-66.3 53.7-120 120-120l8 0c17.7 0 32 14.3 32 32s-14.3 32-32 32l-8 0c-30.9 0-56 25.1-56 56l0 8 64 0c35.3 0 64 28.7 64 64l0 64c0 35.3-28.7 64-64 64l-64 0c-35.3 0-64-28.7-64-64l0-136z"/></svg>'}});class ai extends Q{constructor(){super(...arguments),this.stylesToBeFiltered=Zs,this.elementTagName="blockquote"}static isBlockquoteBlock(t){return"RTEBlockquoteBlock"===t}canFilter(t){return ai.isBlockquoteBlock(t.dtoName)}canRefill(t,e){return e.tagName.toLowerCase()===this.elementTagName}toCssText(){return this.buildCssTextForStyles(this.elementTagName,this.classNameToBeAdded)}}class oi extends v{constructor(){super(),this.toolbarButtonRenderer=new ri,this.registerBlockBasicStrategies(Js.name),this.registerNode("blockquote",Js),this.registerRenderer("blockquote",ii),this.registerToolbarButtonRenderer(oi.TOOLBAR_BUTTON_KEY,this.toolbarButtonRenderer),this.registerElementToBlockDTOClassStrategy(new si),v.registerFilterStylesStrategy(Js.dtoName,new ai)}}(()=>{const t=new Ys;v.registerActionHandleStrategy(x.name,"TRANSFORM_TO_BLOCKQUOTE",t),v.registerActionHandleStrategy(At.name,"TRANSFORM_TO_BLOCKQUOTE",t),v.registerActionHandleStrategy(yt.name,"TRANSFORM_TO_BLOCKQUOTE",t),v.registerActionHandleStrategy(Js.name,"REMOVE_BLOCKQUOTE",new Xs),v.registerActionHandlerInterceptor(M.name,$.INSERT_NEW_PARAGRAPH,new ti)})(),oi.TOOLBAR_BUTTON_KEY="blockquote";const li={key:"latin",label:"Latin",characters:[{character:"Ā",title:"Latin capital letter a with macron"},{character:"ā",title:"Latin small letter a with macron"},{character:"Ă",title:"Latin capital letter a with breve"},{character:"ă",title:"Latin small letter a with breve"},{character:"Ą",title:"Latin capital letter a with ogonek"},{character:"ą",title:"Latin small letter a with ogonek"},{character:"Ć",title:"Latin capital letter c with acute"},{character:"ć",title:"Latin small letter c with acute"},{character:"Ĉ",title:"Latin capital letter c with circumflex"},{character:"ĉ",title:"Latin small letter c with circumflex"},{character:"Ċ",title:"Latin capital letter c with dot above"},{character:"ċ",title:"Latin small letter c with dot above"},{character:"Č",title:"Latin capital letter c with caron"},{character:"č",title:"Latin small letter c with caron"},{character:"Ď",title:"Latin capital letter d with caron"},{character:"ď",title:"Latin small letter d with caron"},{character:"Đ",title:"Latin capital letter d with stroke"},{character:"đ",title:"Latin small letter d with stroke"},{character:"Ē",title:"Latin capital letter e with macron"},{character:"ē",title:"Latin small letter e with macron"},{character:"Ĕ",title:"Latin capital letter e with breve"},{character:"ĕ",title:"Latin small letter e with breve"},{character:"Ė",title:"Latin capital letter e with dot above"},{character:"ė",title:"Latin small letter e with dot above"},{character:"Ę",title:"Latin capital letter e with ogonek"},{character:"ę",title:"Latin small letter e with ogonek"},{character:"Ě",title:"Latin capital letter e with caron"},{character:"ě",title:"Latin small letter e with caron"},{character:"Ĝ",title:"Latin capital letter g with circumflex"},{character:"ĝ",title:"Latin small letter g with circumflex"},{character:"Ğ",title:"Latin capital letter g with breve"},{character:"ğ",title:"Latin small letter g with breve"},{character:"Ġ",title:"Latin capital letter g with dot above"},{character:"ġ",title:"Latin small letter g with dot above"},{character:"Ģ",title:"Latin capital letter g with cedilla"},{character:"ģ",title:"Latin small letter g with cedilla"},{character:"Ĥ",title:"Latin capital letter h with circumflex"},{character:"ĥ",title:"Latin small letter h with circumflex"},{character:"Ħ",title:"Latin capital letter h with stroke"},{character:"ħ",title:"Latin small letter h with stroke"},{character:"Ĩ",title:"Latin capital letter i with tilde"},{character:"ĩ",title:"Latin small letter i with tilde"},{character:"Ī",title:"Latin capital letter i with macron"},{character:"ī",title:"Latin small letter i with macron"},{character:"Ĭ",title:"Latin capital letter i with breve"},{character:"ĭ",title:"Latin small letter i with breve"},{character:"Į",title:"Latin capital letter i with ogonek"},{character:"į",title:"Latin small letter i with ogonek"},{character:"İ",title:"Latin capital letter i with dot above"},{character:"ı",title:"Latin small letter dotless i"},{character:"IJ",title:"Latin capital ligature ij"},{character:"ij",title:"Latin small ligature ij"},{character:"Ĵ",title:"Latin capital letter j with circumflex"},{character:"ĵ",title:"Latin small letter j with circumflex"},{character:"Ķ",title:"Latin capital letter k with cedilla"},{character:"ķ",title:"Latin small letter k with cedilla"},{character:"ĸ",title:"Latin small letter kra"},{character:"Ĺ",title:"Latin capital letter l with acute"},{character:"ĺ",title:"Latin small letter l with acute"},{character:"Ļ",title:"Latin capital letter l with cedilla"},{character:"ļ",title:"Latin small letter l with cedilla"},{character:"Ľ",title:"Latin capital letter l with caron"},{character:"ľ",title:"Latin small letter l with caron"},{character:"Ŀ",title:"Latin capital letter l with middle dot"},{character:"ŀ",title:"Latin small letter l with middle dot"},{character:"Ł",title:"Latin capital letter l with stroke"},{character:"ł",title:"Latin small letter l with stroke"},{character:"Ń",title:"Latin capital letter n with acute"},{character:"ń",title:"Latin small letter n with acute"},{character:"Ņ",title:"Latin capital letter n with cedilla"},{character:"ņ",title:"Latin small letter n with cedilla"},{character:"Ň",title:"Latin capital letter n with caron"},{character:"ň",title:"Latin small letter n with caron"},{character:"ʼn",title:"Latin small letter n preceded by apostrophe"},{character:"Ŋ",title:"Latin capital letter eng"},{character:"ŋ",title:"Latin small letter eng"},{character:"Ō",title:"Latin capital letter o with macron"},{character:"ō",title:"Latin small letter o with macron"},{character:"Ŏ",title:"Latin capital letter o with breve"},{character:"ŏ",title:"Latin small letter o with breve"},{character:"Ő",title:"Latin capital letter o with double acute"},{character:"ő",title:"Latin small letter o with double acute"},{character:"Œ",title:"Latin capital ligature oe"},{character:"œ",title:"Latin small ligature oe"},{character:"Ŕ",title:"Latin capital letter r with acute"},{character:"ŕ",title:"Latin small letter r with acute"},{character:"Ŗ",title:"Latin capital letter r with cedilla"},{character:"ŗ",title:"Latin small letter r with cedilla"},{character:"Ř",title:"Latin capital letter r with caron"},{character:"ř",title:"Latin small letter r with caron"},{character:"Ś",title:"Latin capital letter s with acute"},{character:"ś",title:"Latin small letter s with acute"},{character:"Ŝ",title:"Latin capital letter s with circumflex"},{character:"ŝ",title:"Latin small letter s with circumflex"},{character:"Ş",title:"Latin capital letter s with cedilla"},{character:"ş",title:"Latin small letter s with cedilla"},{character:"Š",title:"Latin capital letter s with caron"},{character:"š",title:"Latin small letter s with caron"},{character:"Ţ",title:"Latin capital letter t with cedilla"},{character:"ţ",title:"Latin small letter t with cedilla"},{character:"Ť",title:"Latin capital letter t with caron"},{character:"ť",title:"Latin small letter t with caron"},{character:"Ŧ",title:"Latin capital letter t with stroke"},{character:"ŧ",title:"Latin small letter t with stroke"},{character:"Ũ",title:"Latin capital letter u with tilde"},{character:"ũ",title:"Latin small letter u with tilde"},{character:"Ū",title:"Latin capital letter u with macron"},{character:"ū",title:"Latin small letter u with macron"},{character:"Ŭ",title:"Latin capital letter u with breve"},{character:"ŭ",title:"Latin small letter u with breve"},{character:"Ů",title:"Latin capital letter u with ring above"},{character:"ů",title:"Latin small letter u with ring above"},{character:"Ű",title:"Latin capital letter u with double acute"},{character:"ű",title:"Latin small letter u with double acute"},{character:"Ų",title:"Latin capital letter u with ogonek"},{character:"ų",title:"Latin small letter u with ogonek"},{character:"Ŵ",title:"Latin capital letter w with circumflex"},{character:"ŵ",title:"Latin small letter w with circumflex"},{character:"Ŷ",title:"Latin capital letter y with circumflex"},{character:"ŷ",title:"Latin small letter y with circumflex"},{character:"Ÿ",title:"Latin capital letter y with diaeresis"},{character:"Ź",title:"Latin capital letter z with acute"},{character:"ź",title:"Latin small letter z with acute"},{character:"Ż",title:"Latin capital letter z with dot above"},{character:"ż",title:"Latin small letter z with dot above"},{character:"Ž",title:"Latin capital letter z with caron"},{character:"ž",title:"Latin small letter z with caron"},{character:"ſ",title:"Latin small letter long s"}]},ci={key:"mathematical",label:"Mathematical",characters:[{character:"<",title:"Less-than sign"},{character:">",title:"Greater-than sign"},{character:"≤",title:"Less-than or equal to"},{character:"≥",title:"Greater-than or equal to"},{character:"–",title:"En dash"},{character:"—",title:"Em dash"},{character:"¯",title:"Macron"},{character:"‾",title:"Overline"},{character:"°",title:"Degree sign"},{character:"−",title:"Minus sign"},{character:"±",title:"Plus-minus sign"},{character:"÷",title:"Division sign"},{character:"⁄",title:"Fraction slash"},{character:"×",title:"Multiplication sign"},{character:"ƒ",title:"Latin small letter f with hook"},{character:"∫",title:"Integral"},{character:"∑",title:"N-ary summation"},{character:"∞",title:"Infinity"},{character:"√",title:"Square root"},{character:"∼",title:"Tilde operator"},{character:"≅",title:"Approximately equal to"},{character:"≈",title:"Almost equal to"},{character:"≠",title:"Not equal to"},{character:"≡",title:"Identical to"},{character:"∈",title:"Element of"},{character:"∉",title:"Not an element of"},{character:"∋",title:"Contains as member"},{character:"∏",title:"N-ary product"},{character:"∧",title:"Logical and"},{character:"∨",title:"Logical or"},{character:"¬",title:"Not sign"},{character:"∩",title:"Intersection"},{character:"∪",title:"Union"},{character:"∂",title:"Partial differential"},{character:"∀",title:"For all"},{character:"∃",title:"There exists"},{character:"∅",title:"Empty set"},{character:"∇",title:"Nabla"},{character:"∗",title:"Asterisk operator"},{character:"∝",title:"Proportional to"},{character:"∠",title:"Angle"},{character:"¼",title:"Vulgar fraction one quarter"},{character:"½",title:"Vulgar fraction one half"},{character:"¾",title:"Vulgar fraction three quarters"}]},hi={key:"arrows",label:"Arrows",characters:[{character:"←",title:"leftwards simple arrow"},{character:"→",title:"rightwards simple arrow"},{character:"↑",title:"upwards simple arrow"},{character:"↓",title:"downwards simple arrow"},{character:"⇐",title:"leftwards double arrow"},{character:"⇒",title:"rightwards double arrow"},{character:"⇑",title:"upwards double arrow"},{character:"⇓",title:"downwards double arrow"},{character:"⇠",title:"leftwards dashed arrow"},{character:"⇢",title:"rightwards dashed arrow"},{character:"⇡",title:"upwards dashed arrow"},{character:"⇣",title:"downwards dashed arrow"},{character:"⇤",title:"leftwards arrow to bar"},{character:"⇥",title:"rightwards arrow to bar"},{character:"⤒",title:"upwards arrow to bar"},{character:"⤓",title:"downwards arrow to bar"},{character:"↨",title:"up down arrow with base"},{character:"🔙",title:"back with leftwards arrow above"},{character:"🔚",title:"end with leftwards arrow above"},{character:"🔛",title:"on with exclamation mark with left right arrow above"},{character:"🔜",title:"soon with rightwards arrow above"},{character:"🔝",title:"top with upwards arrow above"}]},di={key:"currency",label:"Currency",characters:[{character:"$",title:"Dollar sign"},{character:"€",title:"Euro sign"},{character:"¥",title:"Yen sign"},{character:"£",title:"Pound sign"},{character:"¢",title:"Cent sign"},{character:"₠",title:"Euro-currency sign"},{character:"₡",title:"Colon sign"},{character:"₢",title:"Cruzeiro sign"},{character:"₣",title:"French franc sign"},{character:"₤",title:"Lira sign"},{character:"¤",title:"Currency sign"},{character:"₿",title:"Bitcoin sign"},{character:"₥",title:"Mill sign"},{character:"₦",title:"Naira sign"},{character:"₧",title:"Peseta sign"},{character:"₨",title:"Rupee sign"},{character:"₩",title:"Won sign"},{character:"₪",title:"New sheqel sign"},{character:"₫",title:"Dong sign"},{character:"₭",title:"Kip sign"},{character:"₮",title:"Tugrik sign"},{character:"₯",title:"Drachma sign"},{character:"₰",title:"German penny sign"},{character:"₱",title:"Peso sign"},{character:"₲",title:"Guarani sign"},{character:"₳",title:"Austral sign"},{character:"₴",title:"Hryvnia sign"},{character:"₵",title:"Cedi sign"},{character:"₶",title:"Livre tournois sign"},{character:"₷",title:"Spesmilo sign"},{character:"₸",title:"Tenge sign"},{character:"₹",title:"Indian rupee sign"},{character:"₺",title:"Turkish lira sign"},{character:"₻",title:"Nordic mark sign"},{character:"₼",title:"Manat sign"},{character:"₽",title:"Ruble sign"}]},ui={key:"text",label:"Text",characters:[{character:"‹",title:"Single left-pointing angle quotation mark"},{character:"›",title:"Single right-pointing angle quotation mark"},{character:"«",title:"Left-pointing double angle quotation mark"},{character:"»",title:"Right-pointing double angle quotation mark"},{character:"‘",title:"Left single quotation mark"},{character:"’",title:"Right single quotation mark"},{character:"“",title:"Left double quotation mark"},{character:"”",title:"Right double quotation mark"},{character:"‚",title:"Single low-9 quotation mark"},{character:"„",title:"Double low-9 quotation mark"},{character:"¡",title:"Inverted exclamation mark"},{character:"¿",title:"Inverted question mark"},{character:"‥",title:"Two dot leader"},{character:"…",title:"Horizontal ellipsis"},{character:"‡",title:"Double dagger"},{character:"‰",title:"Per mille sign"},{character:"‱",title:"Per ten thousand sign"},{character:"‼",title:"Double exclamation mark"},{character:"⁈",title:"Question exclamation mark"},{character:"⁉",title:"Exclamation question mark"},{character:"⁇",title:"Double question mark"},{character:"©",title:"Copyright sign"},{character:"®",title:"Registered sign"},{character:"™",title:"Trade mark sign"},{character:"§",title:"Section sign"},{character:"¶",title:"Paragraph sign"},{character:"⁋",title:"Reversed paragraph sign"}]},pi=[di,ui,ci,hi,li];class fi extends Ze{constructor(t){super(),this.panelRef=null,this.categories=t}render(t,e){return t("vega-popover",{trigger:"click",alignment:"start",placement:"bottom",showArrow:!1,isScreenPosition:!0,ref:t=>{t&&lt.addUniqueObserverToNode(t,pt,(()=>{this.handlePopoverShow()}))}},[t("div",{slot:"popover"},[t("vega-rich-text-special-characters-panel",{categories:this.categories,ref:t=>{t&&(this.panelRef=t,lt.addUniqueObserverToNode(t,dt,(t=>{this.insertCharacter(e,t.detail)})))}})]),t("div",{slot:"popover-content"},this.renderButton(t,e,{icon:"rte-special-characters",tooltip:{text:"Special Characters"}}))])}handleButtonClick(){}handleDropdownClick(){}handlePopoverShow(){this.panelRef&&this.panelRef.resetPanel()}insertCharacter(t,e){const n=t.rteRange,s=n.startNode;if(!s)return;const i=this.isCaretOnLineBreak(s,n)?this.insertAtLineBreak(s,e,n):this.insertAtTextNode(s,e,n);t.host.value.apply(new m(i.node,i.offset))}isCaretOnLineBreak(t,e){return t instanceof N&&"\n"===t.text&&e.startOffset===e.endOffset}insertAtTextNode(t,e,n){const s=new Le(e,n);return s.isFlushable=!0,t.apply(s),{node:t,offset:Math.min(n.startOffset+e.length,t.getRangeEndOffset())}}insertAtLineBreak(t,e,n){return{node:this.insertTextToLineBreakNode(t,e,n),offset:e.length}}insertTextToLineBreakNode(t,e,n){const s=t.parent,i=s.children.indexOf(t);if(0===n.startOffset&&s.children[i+1]){const n=t.cloneWithText(e),i=new F(t,n);return i.isFlushable=!0,s.apply(i),n}const r=new X(e);return r.isFlushable=!0,t.apply(r),t}}at.register({"rte-special-characters":{icon:'<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 448 512">\x3c!--! Font Awesome Pro 6.3.0 by @fontawesome - https://fontawesome.com License - https://fontawesome.com/license (Commercial License) Copyright 2023 Fonticons, Inc. --\x3e<path fill="currentColor" d="M224 80C126.8 80 48 158.8 48 256c0 63.7 33.8 119.5 84.6 150.4c11.4 7 19.4 19.6 19.4 34.2c0 21.8-17.6 39.4-39.4 39.4H24c-13.3 0-24-10.7-24-24s10.7-24 24-24H85.4C33.4 391 0 327.4 0 256C0 132.3 100.3 32 224 32s224 100.3 224 224c0 71.4-33.4 135-85.4 176H424c13.3 0 24 10.7 24 24s-10.7 24-24 24H335.4c-21.8 0-39.4-17.6-39.4-39.4c0-14.6 8-27.2 19.4-34.2C366.2 375.5 400 319.7 400 256c0-97.2-78.8-176-176-176z"/></svg>'}});class wi extends v{constructor(t){super(),this.categories=this.buildCategories(t)}prepareBeforeLoad(t){this.registerToolbarButtonRenderer(wi.TOOLBAR_BUTTON_KEY,new fi(this.categories),t)}buildCategories(t){const e=!1!==(null==t?void 0:t.includeDefaults)?pi:[];return(null==t?void 0:t.categories)?[...e,...t.categories]:e}}wi.TOOLBAR_BUTTON_KEY="special-characters";class gi{}class bi extends gi{canHandle(t){return t instanceof tt}collect(t){return[t]}}class vi extends gi{canHandle(t){return t instanceof A}collect(t,e){const n=t,s=[n];if(n.nestList&&n.nestList.length>0)for(const t of n.nestList)s.push(...e(t.children));return s}}class mi extends gi{canHandle(t){return t instanceof M}collect(t){return[t]}}class xi extends gi{canHandle(t){return null!=t.children&&t.children.length>0&&!(t.children[0]instanceof N)}collect(t,e){return e(t.children)}}class yi{constructor(){this.matches=[],this.currentIndex=-1,this.flatCache=new WeakMap,this.cachedContent=null,this.matchCase=!1,this.wholeWords=!1,this.blockSearchStrategies=[new bi,new vi,new mi,new xi]}search(t,e){if(this.invalidateCacheIfNeeded(t),!e)return this.matches=[],void(this.currentIndex=-1);const n=this.buildRegExp(e,this.getFindOptions()),s=this.collectSearchableBlocks(t.children),i=[];for(const t of s){let e=this.flatCache.get(t);e||(e=t instanceof tt?this.buildCodeBlockFlat(t):this.buildTextBlockFlat(t),this.flatCache.set(t,e));const{flatText:s,segments:r}=e;if(!s)continue;let a;for(n.lastIndex=0;null!==(a=n.exec(s));){const e=a.index+a[0].length,n=this.flatOffsetToNodePositions(r,e-a[1].length,e);n.length>0&&i.push({block:t,nodes:n,matchText:a[1]})}}this.matches=i,this.currentIndex=i.length>0?0:-1}next(){0!==this.matches.length&&(this.currentIndex=(this.currentIndex+1)%this.matches.length)}prev(){0!==this.matches.length&&(this.currentIndex=(this.currentIndex-1+this.matches.length)%this.matches.length)}setCurrentIndex(t){this.currentIndex=0!==this.matches.length?Math.max(0,Math.min(t,this.matches.length-1)):-1}getCurrentMatch(){var t;return null!==(t=this.matches[this.currentIndex])&&void 0!==t?t:null}getMatches(){return this.matches}getTotal(){return this.matches.length}getCurrentIndex(){return this.currentIndex}clearResults(){this.matches=[],this.currentIndex=-1}clear(){this.matches=[],this.currentIndex=-1,this.flatCache=new WeakMap,this.cachedContent=null}setMatchCase(t){this.matchCase=t}setWholeWords(t){this.wholeWords=t}invalidateCacheIfNeeded(t){t!==this.cachedContent&&(this.flatCache=new WeakMap,this.cachedContent=t)}buildRegExp(t,e){const n=this.escapeRegExp(t);let s="gu";if(e.matchCase||(s+="i"),e.wholeWords){const e="[^a-zA-ZÀ-ɏḀ-ỿ]",i=new RegExp(`^${e}`).test(t)?"":`(?:^|${e})`,r=new RegExp(`${e}$`).test(t)?"":`(?=${e}|$)`;return new RegExp(`${i}(${n})${r}`,s)}return new RegExp(`(${n})`,s)}escapeRegExp(t){return t.replace(/[.*+?^${}()|[\]\\]/g,"\\$&")}collectSearchableBlocks(t){const e=[],n=this.collectSearchableBlocks.bind(this);for(const s of t){const t=this.blockSearchStrategies.find((t=>t.canHandle(s)));t&&e.push(...t.collect(s,n))}return e}buildTextBlockFlat(t){const e=[],n=[];let s=0;for(const i of t.children){if(!i.isContentEditable()){n.push("\0"),s+="\0".length;continue}const t=i.text.length;e.push({node:i,start:s,end:s+t}),n.push(i.text),s+=t}return{flatText:n.join(""),segments:e}}buildCodeBlockFlat(t){const e=t.children[0];if(!e)return{flatText:"",segments:[]};const n=e.text;return{flatText:n,segments:[{node:e,start:0,end:n.length}]}}flatOffsetToNodePositions(t,e,n){const s=[];for(const i of t){if(i.end<=e)continue;if(i.start>=n)break;const t=Math.max(0,e-i.start),r=Math.min(i.end,n)-i.start;s.push({node:i.node,startOffset:t,endOffset:r})}return s}getFindOptions(){return{matchCase:this.matchCase,wholeWords:this.wholeWords}}}class Ci{constructor(){this.overlayContainer=null,be.registerCustomDarkModeColor({"rte-find-highlight-bg":"255, 235, 0, 0.55","rte-find-highlight-active-bg":"255, 190, 0, 0.7","rte-find-highlight-blend":"lighten"})}apply(t,e,n,s=!0){if(this.clear(),0===t.length)return;const i=this.getOrCreateOverlay(n);if(i){const n=i.getBoundingClientRect();let r=null;t.forEach(((t,s)=>{const a=s===e,o=a?"rgba(var(--v-rte-find-highlight-active-bg, 255, 150, 0, 0.5))":"rgba(var(--v-rte-find-highlight-bg, 255, 220, 0, 0.35))";t.nodes.forEach((t=>{const e=this.createHighlightRectangles(i,n,t,o);a&&!r&&e&&(r=e)}))})),s&&r&&r.scrollIntoView({block:"center",inline:"nearest"})}}clear(){this.overlayContainer&&(this.overlayContainer.innerHTML="")}getOrCreateOverlay(t){if(this.overlayContainer&&this.overlayContainer.isConnected)return this.overlayContainer;const e=ve();if(e){const n=this.resolveOverlayMountTarget(t);if(n){const t=e.createElement("div");return t.style.position="absolute",t.style.top="0",t.style.left="0",t.style.width="100%",t.style.height="100%",t.style.pointerEvents="none",t.style.overflow="visible",t.style.setProperty("mix-blend-mode","var(--v-rte-find-highlight-blend, multiply)"),n.appendChild(t),this.overlayContainer=t,t}}return null}resolveOverlayMountTarget(t){var e,n,s,i;return null!==(i=null===(s=null===(n=null===(e=t.shadowRoot)||void 0===e?void 0:e.querySelector("vega-rich-text-content"))||void 0===n?void 0:n.shadowRoot)||void 0===s?void 0:s.querySelector(".rich-text-content"))&&void 0!==i?i:null}createHighlightRectangles(t,e,n,s){const i=P.getDOMByEntity(n.node);if(!i)return null;const r=this.buildRange(i,n);if(!r)return null;const a=r.getClientRects(),o=ve();let l=null;if(o)for(let n=0;n<a.length;n++){const i=a[n];if(0===i.width||0===i.height)continue;const r=o.createElement("div");r.style.position="absolute",r.style.top=i.top-e.top+"px",r.style.left=i.left-e.left+"px",r.style.width=`${i.width}px`,r.style.height=`${i.height}px`,r.style.backgroundColor=s,r.style.pointerEvents="none",r.style.borderRadius="2px",t.appendChild(r),l||(l=r)}return l}buildRange(t,e){if(e.node instanceof et)return this.buildCodeBlockRange(t,e);const n=t.firstChild;if(!n)return null;const s=ve();if(s){const t=s.createRange();try{return t.setStart(n,e.startOffset),t.setEnd(n,e.endOffset),t}catch(t){return null}}return null}buildCodeBlockRange(t,e){const n=t.shadowRoot.querySelector("code");if(!n)return null;const s=ve();if(s){const t=s.createTreeWalker(n,NodeFilter.SHOW_TEXT);let i=0,r=null,a=0,o=null,l=0,c=t.nextNode();for(;c;){const n=c.textContent.length;if(!r&&i+n>e.startOffset&&(r=c,a=e.startOffset-i),i+n>=e.endOffset){o=c,l=e.endOffset-i;break}i+=n,c=t.nextNode()}if(r&&o){const t=s.createRange();try{return t.setStart(r,a),t.setEnd(o,l),t}catch(t){return null}}}return null}}class Li{constructor(t){this.context=t}setHost(t){this.context.hostRef=t}setKeyword(t){return this.context.keyword=t,this.context.state.clearResults(),this.context.hostRef&&this.context.highlightManager.clear(),{current:0,total:0}}applyAndGetResult(t=!0){const e=this.context.state.getTotal(),n=e>0?this.context.state.getCurrentIndex()+1:0;return this.context.hostRef&&this.context.highlightManager.apply(this.context.state.getMatches(),this.context.state.getCurrentIndex(),this.context.hostRef,t),{current:n,total:e}}}class ki extends Li{constructor(t){super(t)}find(){return this.context.hostRef?(this.context.state.search(this.context.hostRef.value,this.context.keyword),this.applyAndGetResult()):{current:0,total:0}}next(){return this.context.state.next(),this.applyAndGetResult()}prev(){return this.context.state.prev(),this.applyAndGetResult()}clear(){this.context.state.clear(),this.context.hostRef&&this.context.highlightManager.clear()}refresh(t=!0){if(!this.context.keyword||!this.context.hostRef)return null;const e=this.context.state.getCurrentIndex();return this.context.state.search(this.context.hostRef.value,this.context.keyword),this.context.state.setCurrentIndex(e),this.applyAndGetResult(t)}setMatchCase(t){return this.context.state.setMatchCase(t),this.updateFindResults()}setWholeWords(t){return this.context.state.setWholeWords(t),this.updateFindResults()}updateFindResults(){return this.context.state.clearResults(),this.context.keyword&&this.context.hostRef?(this.context.state.search(this.context.hostRef.value,this.context.keyword),this.applyAndGetResult()):{current:0,total:0}}}class Si extends Li{constructor(t){super(t),this.replacement="",this.flushFn=null}setFlushValue(t){this.flushFn=t}setReplacement(t){this.replacement=t}replace(){const t=this.context.state.getCurrentMatch();if(t&&this.context.hostRef&&this.flushFn){const e=this.context.state.getCurrentIndex();this.applyMatchReplacement(t),this.flushFn(this.context.hostRef.value),this.context.state.clear(),this.context.state.search(this.context.hostRef.value,this.context.keyword),this.context.state.setCurrentIndex(e)}return this.applyAndGetResult()}replaceAll(){if(this.context.state.getTotal()>0&&this.flushFn&&this.context.hostRef){const t=this.context.state.getMatches();for(let e=t.length-1;e>=0;e-=1)this.applyMatchReplacement(t[e]);this.flushFn(this.context.hostRef.value),this.context.state.clear(),this.context.state.search(this.context.hostRef.value,this.context.keyword)}return this.applyAndGetResult()}applyMatchReplacement(t){t.nodes.forEach(((t,e)=>{const n=0===e?this.replacement:"";t.node.text=t.node.text.slice(0,t.startOffset)+n+t.node.text.slice(t.endOffset)}))}}class Ti extends Ze{constructor(){super(...arguments),this.sharedContext={state:new yi,highlightManager:new Ci,hostRef:null,keyword:""},this.findController=new ki(this.sharedContext),this.replaceController=new Si(this.sharedContext),this.panelRef=null,this.popoverRef=null,this.isPopoverOpen=!1,this.scrollOnNextRefresh=!1,this.debouncedRefresh=ye(this.onContentChanged,100,this),this.panelActionHandlers={find:()=>this.findController.find(),prev:()=>this.findController.prev(),next:()=>this.findController.next(),replace:()=>(this.scrollOnNextRefresh=!0,this.replaceController.replace()),"replace-all":()=>(this.scrollOnNextRefresh=!0,this.replaceController.replaceAll()),"match-case":t=>this.findController.setMatchCase(t),"whole-words":t=>this.findController.setWholeWords(t),close:()=>this.closePanel()}}render(t,e){return this.syncEditorState(e),t("vega-popover",{trigger:"none",alignment:"start",placement:"bottom",showArrow:!1,isScreenPosition:!0,ref:t=>{t&&(this.popoverRef=t,lt.addUniqueObserverToNode(t,ut,(()=>{this.isPopoverOpen=!1,this.findController.clear(),this.updatePanel({current:0,total:0})})),lt.addUniqueObserverToNode(t,pt,(()=>{this.isPopoverOpen=!0})))}},[t("div",{slot:"popover"},[t("vega-rich-text-find-replace-panel",{ref:t=>{t&&(this.panelRef=t,lt.addUniqueObserverToNode(t,ft,(t=>{"keyword"===t.detail.type?this.updatePanel(this.findController.setKeyword(t.detail.value)):"replace"===t.detail.type&&this.replaceController.setReplacement(t.detail.value)})),lt.addUniqueObserverToNode(t,dt,(t=>{this.handlePanelAction(t.detail)})))}})]),t("div",{slot:"popover-content"},this.renderButton(t,e,{icon:"rte-find-replace",tooltip:{text:f.t("Find and replace")}}))])}handleButtonClick(){this.popoverRef&&(this.isPopoverOpen?this.popoverRef.hide():this.popoverRef.show())}handleDropdownClick(){}syncEditorState(t){this.findController.setHost(t.host);const e=this.getExtensionContext(t.host);e&&this.replaceController.setFlushValue(e.flushValue),lt.addUniqueObserverToNode(t.host,ft,this.debouncedRefresh),this.isHidden(t)&&this.isPopoverOpen&&this.popoverRef?this.popoverRef.hide():this.isPopoverOpen&&this.popoverRef&&this.popoverRef.show(!0)}handlePanelAction(t){const{action:e,data:n}=t,s=this.panelActionHandlers[e];if(s){const t=s(n);t&&this.updatePanel(t)}}updatePanel(t){this.panelRef&&this.panelRef.updateResult(t.current,t.total)}onContentChanged(){if(!this.isPopoverOpen)return;const t=this.scrollOnNextRefresh;this.scrollOnNextRefresh=!1;const e=this.findController.refresh(t);e&&this.updatePanel(e)}closePanel(){this.popoverRef&&this.popoverRef.hide()}}at.register({"rte-find-replace":{icon:'<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 512 512">\x3c!--! Font Awesome Pro 7.2.0 by @fontawesome - https://fontawesome.com License - https://fontawesome.com/license (Commercial License) Copyright 2026 Fonticons, Inc. --\x3e<path fill="currentColor" d="M208 48c39.6 0 75.9 14.4 103.8 38.2L279 119c-6.9 6.9-8.9 17.2-5.2 26.2S286.3 160 296 160l96 0c13.3 0 24-10.7 24-24l0-96c0-9.7-5.8-18.5-14.8-22.2S381.9 16.2 375 23L345.8 52.2c-36.7-32.5-85-52.2-137.8-52.2-99.4 0-182.4 69.7-203.1 162.8-2.9 12.9 5.3 25.8 18.2 28.6 1.4 .3 2.7 .5 4.1 .5l2.3 0C40.1 191.5 49.4 184 51.8 173.2 67.7 101.6 131.6 48 208 48zM386 224c-10.4 .7-19.4 8.1-21.8 18.8-15.9 71.7-79.8 125.2-156.2 125.2-39.6 0-75.9-14.4-103.8-38.2L137 297c6.9-6.9 8.9-17.2 5.2-26.2S129.7 256 120 256l-96 0c-13.3 0-24 10.7-24 24l0 96c0 9.7 5.8 18.5 14.8 22.2S34.1 399.8 41 393l29.2-29.2c36.7 32.5 85 52.2 137.8 52.2 48.8 0 93.7-16.8 129.1-44.9L471 505c9.4 9.4 24.6 9.4 33.9 0s9.4-24.6 0-33.9L371.1 337.1c19.2-24.2 33.1-52.8 40-84 2.9-12.9-5.3-25.8-18.2-28.6-1.2-.3-2.4-.4-3.6-.5l-3.2 0z"/></svg>'}});class Ei extends v{prepareBeforeLoad(t){this.registerToolbarButtonRenderer(Ei.TOOLBAR_BUTTON_KEY,new Ti,t)}}Ei.TOOLBAR_BUTTON_KEY="findReplace";const Oi=[{title:"0.5",value:"0.5"},{title:"1",value:"1"},{title:"1.5",value:"1.5"},{title:"2",value:"2"},{title:"2.5",value:"2.5"}];var Ai;!function(t){t.LINE_HEIGHT="LINE_HEIGHT"}(Ai||(Ai={}));class Ii extends K{constructor(t){super(),this.type=Ai.LINE_HEIGHT,this.lineHeight=t}static from(t){return[Ai.LINE_HEIGHT,new Ii(t)]}static getDefaultStyles(t){return{lineHeight:t}}toJSON(){return{lineHeight:this.lineHeight}}renderClass(){return null}clone(){return new Ii(this.lineHeight)}renderStyle(){return Ii.getDefaultStyles(this.lineHeight)}}class Ri extends q{constructor(t){super(),this.isFlushable=!0,this.lineHeight=t}toAnnotation(){return new Ii(this.lineHeight)}}class Ni extends D{handleAction(t,e){this.updateCustomStyleAnnotation(e,["lineHeight"])}}class Bi extends Ze{constructor(t){super(),this.options=t}render(t,e){const n=this.options.map((t=>{var e;return{key:t.value,label:null!==(e=t.title)&&void 0!==e?e:t.value}}));return this.renderDropdown(t,e,{selectType:"single",selectedSourceKey:this.getSelectedSourceValue(e)},[this.renderButton(t,e,{icon:"line-height",showArrowIcon:!0,tooltip:{text:f.t("Line Height")}}),this.renderDropdownListTemplate(t,n,e)])}isSelected(){return!1}isDisabled(t){var e;if(t.host.disabled)return!0;const n=this.getExtensionContext(t.host);return!!(null!==(e=null==n?void 0:n.getSelectedNodes())&&void 0!==e?e:[]).some((t=>{var e;return(null===(e=t.getAnnotationByType(nt.CODE))||void 0===e?void 0:e.code)||t.parent instanceof tt}))||this.getSelectedBlocks(t).some((t=>t instanceof tt||t instanceof S||!R.canHandle(Ri.name,t)))}handleDropdownClick(t,e){const n=t;this.getSelectedBlocks(e).forEach((t=>{t.apply(new Ri(n))}))}handleButtonClick(){}getSelectedSourceValue(t){const e=this.getSelectedBlocks(t);if(0===e.length)return"";const n=e[0].getAnnotationByType(Ai.LINE_HEIGHT);return e.every((t=>{const e=t.getAnnotationByType(Ai.LINE_HEIGHT);return(null==e?void 0:e.lineHeight)===(null==n?void 0:n.lineHeight)}))&&n?n.lineHeight:""}getSelectedBlocks(t){var e,n;const s=this.getExtensionContext(t.host),i=null!==(e=null==s?void 0:s.getSelectedNodes())&&void 0!==e?e:[],r=[];return i.forEach((t=>{t.parent instanceof B&&!r.includes(t.parent)&&r.push(t.parent)})),0===r.length&&(null===(n=t.rteRange.startNode)||void 0===n?void 0:n.parent)instanceof B&&r.push(t.rteRange.startNode.parent),r}}at.register({"line-height":{icon:'<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 576 512">\x3c!--! Font Awesome Pro 6.3.0 by @fontawesome - https://fontawesome.com License - https://fontawesome.com/license (Commercial License) Copyright 2023 Fonticons, Inc. --\x3e<path fill="currentColor" d="M113.8 39.9c-4.6-5.1-11-7.9-17.8-7.9s-13.3 2.9-17.8 7.9l-72 80c-8.9 9.9-8.1 25 1.8 33.9s25 8.1 33.9-1.8L72 118.5V393.5L41.8 359.9c-8.9-9.9-24-10.7-33.9-1.8s-10.7 24-1.8 33.9l72 80c4.6 5.1 11 7.9 17.8 7.9s13.3-2.9 17.8-7.9l72-80c8.9-9.9 8.1-25-1.8-33.9s-25-8.1-33.9 1.8L120 393.5V118.5l30.2 33.5c8.9 9.9 24 10.7 33.9 1.8s10.7-24 1.8-33.9l-72-80zM248 72c-13.3 0-24 10.7-24 24s10.7 24 24 24H552c13.3 0 24-10.7 24-24s-10.7-24-24-24H248zm0 160c-13.3 0-24 10.7-24 24s10.7 24 24 24H552c13.3 0 24-10.7 24-24s-10.7-24-24-24H248zM224 416c0 13.3 10.7 24 24 24H552c13.3 0 24-10.7 24-24s-10.7-24-24-24H248c-13.3 0-24 10.7-24 24z"/></svg>'}});const Mi=new Set([M.name,A.name]);class ji extends O{constructor(t=Oi){super(),this.allowedLineHeights=new Set(t.map((t=>t.value)))}canHandle(t){return Mi.has(t.name)}handle(t){var e,n;const s=null!==(n=null===(e=null==t?void 0:t.style.lineHeight)||void 0===e?void 0:e.trim())&&void 0!==n?n:"";return s&&this.allowedLineHeights.has(s)?{lineHeight:s}:{}}}class Di extends Q{constructor(){super(...arguments),this.stylesToBeFiltered={}}get alwaysFilter(){return!0}filterAnnotations(t){const e=t,n=e.lineHeight,s=e.customStyle;return n&&s&&s.lineHeight===n&&delete s.lineHeight,s&&0===Object.keys(s).length&&delete e.customStyle,t}}const _i=new WeakMap,Hi=new WeakSet;class Vi extends v{constructor(t=Oi){super(),this.options=t,this.toolbarButtonRenderer=null,this.registerAnnotationHandler(new ji(this.options)),[M,A].forEach((t=>{!function(t,e){_i.set(t,new Set(e.map((t=>t.value))))}(t,this.options)}))}prepareBeforeLoad(t){this.toolbarButtonRenderer=new Bi(this.options),this.registerToolbarButtonRenderer(Vi.TOOLBAR_BUTTON_KEY,this.toolbarButtonRenderer,t)}}[M,A].forEach((t=>{v.registerActionHandleStrategy(t.name,Ri.name,new Ni),it.register(t.name,new Di),function(t){Hi.has(t)||(Hi.add(t),v.attachAnnotationFromJson(t,"lineHeight",((e,n)=>{if("string"!=typeof n||""===n)return;e.annotationMap.set(...Ii.from(n));const s=_i.get(t);s&&s.size>0&&function(t,e){const n=t.annotationMap.get(Ai.LINE_HEIGHT);if(!n||e.has(n.lineHeight))return;const s=n.lineHeight;t.annotationMap.delete(Ai.LINE_HEIGHT);const i=t.annotationMap.get(U.CUSTOM_STYLE);i?i.customStyle=Object.assign(Object.assign({},i.customStyle),{lineHeight:s}):t.annotationMap.set(...st.from({lineHeight:s}))}(e,s)})))}(t)})),Vi.TOOLBAR_BUTTON_KEY="lineHeight";class Pi extends Ze{constructor(t){super(),this.controller=t}isHidden(){return!1}render(t,e){const n=this.isSelected();return this.renderButton(t,e,{icon:n?"rte-fullscreen-exit":"rte-fullscreen-enter",tooltip:{text:f.t(n?"Exit fullscreen mode":"Enter fullscreen mode")}})}isSelected(){return this.controller.isActive()}handleButtonClick(t){this.controller.toggleFullscreen();const e=this.getExtensionContext(t.host);e&&e.forceUpdate(t.host)}handleDropdownClick(){}}at.register({"rte-fullscreen-enter":{icon:'<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 512 512">\x3c!--! Font Awesome Pro 6.3.0 by @fontawesome - https://fontawesome.com License - https://fontawesome.com/license (Commercial License) Copyright 2023 Fonticons, Inc. --\x3e<path fill="currentColor" d="M295 183c-9.4 9.4-9.4 24.6 0 33.9s24.6 9.4 33.9 0l135-135V168c0 13.3 10.7 24 24 24s24-10.7 24-24V24c0-13.3-10.7-24-24-24H344c-13.3 0-24 10.7-24 24s10.7 24 24 24h86.1L295 183zM217 329c9.4-9.4 9.4-24.6 0-33.9s-24.6-9.4-33.9 0L48 430.1V344c0-13.3-10.7-24-24-24s-24 10.7-24 24V488c0 13.3 10.7 24 24 24H168c13.3 0 24-10.7 24-24s-10.7-24-24-24H81.9L217 329z"/></svg>'},"rte-fullscreen-exit":{icon:'<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 512 512">\x3c!--! Font Awesome Pro 6.3.0 by @fontawesome - https://fontawesome.com License - https://fontawesome.com/license (Commercial License) Copyright 2023 Fonticons, Inc. --\x3e<path fill="currentColor" d="M473 57c9.4-9.4 9.4-24.6 0-33.9s-24.6-9.4-33.9 0l-135 135V72c0-13.3-10.7-24-24-24s-24 10.7-24 24V216c0 13.3 10.7 24 24 24H424c13.3 0 24-10.7 24-24s-10.7-24-24-24H337.9L473 57zM7 455c-9.4 9.4-9.4 24.6 0 33.9s24.6 9.4 33.9 0l135-135V440c0 13.3 10.7 24 24 24s24-10.7 24-24V296c0-13.3-10.7-24-24-24H56c-13.3 0-24 10.7-24 24s10.7 24 24 24h86.1L7 455z"/></svg>'}});class Fi{constructor(t){this.active=!1,this.hostStyle=null,this.scrollX=0,this.scrollY=0,this.host=t}isActive(){return this.active}enterFullscreen(){var t,e,n,s;const i=this.host;if(this.active||!i.shadowRoot||!i.ownerDocument)return;this.hostStyle=i.getAttribute("style"),this.scrollX=null!==(e=null===(t=i.ownerDocument.defaultView)||void 0===t?void 0:t.scrollX)&&void 0!==e?e:0,this.scrollY=null!==(s=null===(n=i.ownerDocument.defaultView)||void 0===n?void 0:n.scrollY)&&void 0!==s?s:0,this.lockDocumentScroll(i.ownerDocument);const r=this.hostStyle?/;\s*$/.test(this.hostStyle)?this.hostStyle:`${this.hostStyle};`:"";i.setAttribute("style",`${r}${Fi.HOST_FULLSCREEN_STYLE}`),i instanceof HTMLElement&&h.setZIndex(i,"base");const a=i.ownerDocument.createElement("style");a.id=Fi.STYLE_TAG_ID,ot.nonce&&a.setAttribute("nonce",ot.nonce),a.textContent=Fi.INNER_FULLSCREEN_CSS,i.shadowRoot.appendChild(a),this.active=!0}exitFullscreen(){var t,e,n,s;const i=this.host;this.active&&(i.ownerDocument&&this.unlockDocumentScroll(i.ownerDocument),i instanceof HTMLElement&&h.removeZIndex(i,"base"),null===this.hostStyle?i.removeAttribute("style"):i.setAttribute("style",this.hostStyle),null===(e=null===(t=i.shadowRoot)||void 0===t?void 0:t.querySelector(`#${Fi.STYLE_TAG_ID}`))||void 0===e||e.remove(),null===(s=null===(n=i.ownerDocument)||void 0===n?void 0:n.defaultView)||void 0===s||s.scrollTo(this.scrollX,this.scrollY),this.active=!1)}toggleFullscreen(){this.active?this.exitFullscreen():this.enterFullscreen()}lockDocumentScroll(t){const e=Fi.documentScrollLockStates.get(t);e?Fi.documentScrollLockStates.set(t,Object.assign(Object.assign({},e),{lockCount:e.lockCount+1})):(Fi.documentScrollLockStates.set(t,{lockCount:1,bodyOverflow:t.body.style.overflow,documentOverflow:t.documentElement.style.overflow}),t.body.style.overflow="hidden",t.documentElement.style.overflow="hidden")}unlockDocumentScroll(t){const e=Fi.documentScrollLockStates.get(t);e&&(e.lockCount>1?Fi.documentScrollLockStates.set(t,Object.assign(Object.assign({},e),{lockCount:e.lockCount-1})):(t.body.style.overflow=e.bodyOverflow,t.documentElement.style.overflow=e.documentOverflow,Fi.documentScrollLockStates.delete(t)))}}Fi.STYLE_TAG_ID="v-rte-fullscreen-styles",Fi.HOST_FULLSCREEN_STYLE="position:fixed;inset:0;background-color:rgba(var(--v-bg-primary, 252, 252, 252, 1));",Fi.INNER_FULLSCREEN_CSS=":host > vega-flex { height: 100%; padding: 5px; box-sizing: border-box; } .rich-text-editor-container { flex: 1 !important; height: auto !important; min-height: 0 !important; resize: none !important; overflow: auto !important; } .source-view-container:not(.vega-hidden) { display: flex !important; flex: 1 !important; min-height: 0 !important; overflow: auto !important; flex-direction: column; }",Fi.documentScrollLockStates=new WeakMap;class zi extends v{prepareBeforeLoad(t){const e=new Fi(t);zi.controllerStore.set(t,e),this.registerToolbarButtonRenderer(zi.TOOLBAR_BUTTON_KEY,new Pi(e),t)}destroyExtension(){var t,e;if(null===(t=this.extensionContext)||void 0===t?void 0:t.host){const t=this.extensionContext.host;null===(e=zi.controllerStore.get(t))||void 0===e||e.exitFullscreen(),zi.controllerStore.delete(t)}}}zi.TOOLBAR_BUTTON_KEY="fullscreen",zi.controllerStore=zi.createStateStore();class $i{constructor(t,e){this.hostRoot=t,this.callbacks=e,this.chooserEl=null,this.dropdownEl=null,this.triggerButtonEl=null}open(t){this.destroy();const e=this.hostRoot.ownerDocument,n=e.createElement("div");n.setAttribute($i.CHOOSER_ATTR,"true"),n.style.position="fixed",n.style.zIndex="1000",n.style.left=`${t.left}px`,n.style.top=`${t.top}px`;const s=this.createPasteChooserDropdown(e,t.placement);s.placement=t.placement,n.append(s),this.hostRoot.appendChild(n),this.chooserEl=n,this.dropdownEl=s,s.addEventListener("vegaShow",(()=>{this.triggerButtonEl&&(this.triggerButtonEl.selected=!0)})),s.addEventListener("vegaHide",(()=>{this.triggerButtonEl&&(this.triggerButtonEl.selected=!1)}))}destroy(){var t;this.dropdownEl&&"function"==typeof this.dropdownEl.hide&&this.dropdownEl.hide(),(null===(t=this.chooserEl)||void 0===t?void 0:t.parentNode)&&this.chooserEl.parentNode.removeChild(this.chooserEl),this.triggerButtonEl&&(this.triggerButtonEl.selected=!1),this.dropdownEl=null,this.chooserEl=null,this.triggerButtonEl=null}includesEventPath(t){if(!this.chooserEl)return!1;const e=t.some((t=>"tagName"in t&&"VEGA-DROPDOWN-CONTENT-BOX"===t.tagName));return t.includes(this.chooserEl)||e}createPasteChooserDropdown(t,e){const n=t.createElement("vega-dropdown");n.trigger="click",n.selectType="single",n.selectedSourceKey="rich",n.maxWidth=220,n.alignment="start",n.itemDisplayRule="ellipsis",n.isScreenPosition=!0;const s=t.createElement("vega-rich-text-editor-toolbar-button"),i="top"===e[0]?"chevron-up":"chevron-down";s.setAttribute($i.CHOOSER_TRIGGER_ATTR,"true"),s.setAttribute("aria-label",f.t("Paste options")),s.setAttribute("arrow-icon",i),s.icon="rte-paste",s.showArrowIcon=!0,s.selected=!1,this.triggerButtonEl=s;const r=t.createElement("vega-tooltip");r.text=f.t("Paste options"),r.placement=["bottom","top"],r.append(s),n.append(r);const a=t.createElement("div");return a.setAttribute("slot","items"),a.append(this.createDropdownItem(t,"rich",f.t("Use rich text"),$i.CHOOSER_RICH_ATTR)),n.append(a),n.addEventListener("vegaDropdownClick",(t=>{const e=t.detail;"rich"===e&&this.callbacks.onModeSelect(e)})),n}createDropdownItem(t,e,n,s){const i=t.createElement("vega-dropdown-item");return i.itemKey=e,i.label=n,i.setAttribute(s,"true"),i}}at.register({"rte-paste":{icon:'<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 512 512">\x3c!--! Font Awesome Pro 6.3.0 by @fontawesome - https://fontawesome.com License - https://fontawesome.com/license (Commercial License) Copyright 2023 Fonticons, Inc. --\x3e<path fill="currentColor" d="M80 96v16c0 17.7 14.3 32 32 32h60.8c16.6-28.7 47.6-48 83.2-48h62c-7.1-27.6-32.2-48-62-48H215.4C211.6 20.9 188.2 0 160 0s-51.6 20.9-55.4 48H64C28.7 48 0 76.7 0 112V384c0 35.3 28.7 64 64 64h96V400H64c-8.8 0-16-7.2-16-16V112c0-8.8 7.2-16 16-16H80zm64-40a16 16 0 1 1 32 0 16 16 0 1 1 -32 0zM256 464c-8.8 0-16-7.2-16-16V192c0-8.8 7.2-16 16-16H384v48c0 17.7 14.3 32 32 32h48V448c0 8.8-7.2 16-16 16H256zm192 48c35.3 0 64-28.7 64-64V227.9c0-12.7-5.1-24.9-14.1-33.9l-51.9-51.9c-9-9-21.2-14.1-33.9-14.1H256c-35.3 0-64 28.7-64 64V448c0 35.3 28.7 64 64 64H448z"/></svg>'}}),$i.CHOOSER_ATTR="data-rte-paste-chooser",$i.CHOOSER_RICH_ATTR="data-rte-paste-type-rich",$i.CHOOSER_TRIGGER_ATTR="data-rte-paste-trigger";class Ki extends v{constructor(){super(...arguments),this.editableEl=null,this.contentHostEl=null,this.chooserUI=null,this.pendingPastePayload=null,this.listenerDocument=null,this.listenerWindow=null,this.handlePasteEvent=t=>{var e,n;const s=t.clipboardData;if(!s)return;const i=s.getData("text/html")||"",r=s.getData("text/plain")||"";if(!i&&!r)return t.preventDefault(),void t.stopPropagation();t.preventDefault(),t.stopPropagation();const a=this.cloneCurrentSelectionRange(),o=(null===(n=null===(e=this.extensionContext)||void 0===e?void 0:e.getSelectedNodes)||void 0===n?void 0:n.call(e))||[];this.pendingPastePayload={html:i,text:r,range:a,selectedNodes:[...o]},this.renderPasteChooser(t)},this.handleOutsidePointerDown=t=>{if(!this.chooserUI)return;const e="function"==typeof t.composedPath?t.composedPath():[];this.chooserUI.includesEventPath(e)||this.clearPasteChooser()},this.handleOutsideKeyDown=t=>{"Escape"===t.key&&this.clearPasteChooser()},this.handleOutsideScroll=()=>{this.clearPasteChooser()}}initialExtensionAfterLoad(t){super.initialExtensionAfterLoad(t),this.hostEl=t.host,this.attachPasteListener()}destroyExtension(){this.detachPasteListener(),this.clearPasteChooser()}attachPasteListener(){const{editableEl:t,contentHostEl:e}=this.getEditorElements();this.editableEl=t,this.contentHostEl=e,this.editableEl&&this.editableEl.addEventListener("paste",this.handlePasteEvent)}detachPasteListener(){this.editableEl&&this.editableEl.removeEventListener("paste",this.handlePasteEvent),this.editableEl=null,this.contentHostEl=null}getEditorElements(){var t,e,n,s,i;const r=null!==(n=null===(e=null===(t=this.hostEl)||void 0===t?void 0:t.shadowRoot)||void 0===e?void 0:e.querySelector("vega-rich-text-content"))&&void 0!==n?n:null;return{editableEl:null!==(i=null===(s=null==r?void 0:r.shadowRoot)||void 0===s?void 0:s.querySelector(".rich-text-content"))&&void 0!==i?i:null,contentHostEl:r}}getEditableElement(){const{editableEl:t}=this.getEditorElements();return t}cloneCurrentSelectionRange(){var t;const e=null===(t=this.extensionContext)||void 0===t?void 0:t.getSelection();return e&&e.rangeCount>0?e.getRangeAt(0).cloneRange():null}renderPasteChooser(t){var e,n;const s=null!==(n=null===(e=this.hostEl)||void 0===e?void 0:e.shadowRoot)&&void 0!==n?n:null;if(!s)return;this.clearPasteChooser(!1);const i=this.computeChooserPosition(t);this.chooserUI=new $i(s,{onModeSelect:t=>{this.applyPasteMode(t)}}),this.chooserUI.open(i),this.listenerDocument=this.hostEl.ownerDocument,this.listenerWindow=this.listenerDocument.defaultView,this.listenerDocument.addEventListener("mousedown",this.handleOutsidePointerDown,!0),this.listenerDocument.addEventListener("keydown",this.handleOutsideKeyDown,!0),this.listenerDocument.addEventListener("scroll",this.handleOutsideScroll,!0),this.listenerWindow&&this.listenerWindow.addEventListener("scroll",this.handleOutsideScroll,!0),this.contentHostEl&&this.contentHostEl.addEventListener("scroll",this.handleOutsideScroll)}computeChooserPosition(t){var e,n,s;const i=this.hostEl.getBoundingClientRect(),r=null!==(n=null===(e=this.hostEl.ownerDocument.defaultView)||void 0===e?void 0:e.innerHeight)&&void 0!==n?n:window.innerHeight,a=t,o="number"==typeof a.clientX&&a.clientX>0&&"number"==typeof a.clientY&&a.clientY>0,l=o?null:this.getCaretRect(),c=12,h=o?a.clientX:null!==(s=null==l?void 0:l.left)&&void 0!==s?s:i.left+c,d=o?a.clientY:l?l.bottom:i.top+40,u=Math.max(i.left+c,i.right-220),p=Math.min(Math.max(h,i.left+c),u),f=Math.max(d+8,i.top+c),w=r-f-c;return{left:p,top:f,placement:w>=88||w>=f-c?["bottom","top"]:["top","bottom"]}}getCaretRect(){var t,e;const n=null!==(e=null===(t=this.pendingPastePayload)||void 0===t?void 0:t.range)&&void 0!==e?e:this.cloneCurrentSelectionRange();if(!n)return null;const s=n.getBoundingClientRect();if(this.isUnavailableRect(s)){const t=n.getClientRects();return t.length>0?t[0]:this.getRangeContainerRect(n)}return s}isUnavailableRect(t){return 0===t.width&&0===t.height&&0===t.left&&0===t.top}getRangeContainerRect(t){var e,n,s,i,r,a;const o=null!==(e=t.startContainer)&&void 0!==e?e:null;if(!o)return null;if(o.nodeType===Node.ELEMENT_NODE){const e=o,a=null!==(n=e.childNodes[t.startOffset-1])&&void 0!==n?n:null,l=null!==(s=e.childNodes[t.startOffset])&&void 0!==s?s:null;return null!==(r=null!==(i=this.getNodeRect(a))&&void 0!==i?i:this.getNodeRect(l))&&void 0!==r?r:this.getNodeRect(e)}return null!==(a=this.getNodeRect(o))&&void 0!==a?a:this.getNodeRect(o.parentNode)}getNodeRect(t){var e,n;if(!t)return null;if(t.nodeType===Node.TEXT_NODE)return null!==(n=null===(e=t.parentElement)||void 0===e?void 0:e.getBoundingClientRect())&&void 0!==n?n:null;if(t.nodeType===Node.ELEMENT_NODE){const e=t.getBoundingClientRect();return this.isUnavailableRect(e)?null:e}return null}applyPasteMode(t){var e;if(!this.pendingPastePayload)return void this.clearPasteChooser();const n=null!==(e=this.editableEl)&&void 0!==e?e:this.getEditableElement();if(!n)return void this.clearPasteChooser();n.focus(),this.restoreSelectionRange(this.pendingPastePayload.range),this.restoreSelectionControllerState(this.pendingPastePayload);const s=this.createDataTransfer(this.pendingPastePayload.html,this.pendingPastePayload.text,t);this.dispatchBeforeInputPaste(n,s),this.clearPasteChooser()}restoreSelectionControllerState(t){t.range&&this.extensionContext&&this.extensionContext.setSelectedNodes(t.selectedNodes||[],{startNode:t.range.startContainer,endNode:t.range.endContainer,startOffset:t.range.startOffset,endOffset:t.range.endOffset})}restoreSelectionRange(t){var e;if(!t)return;const n=null===(e=this.extensionContext)||void 0===e?void 0:e.getSelection();n&&(n.removeAllRanges(),n.addRange(t))}dispatchBeforeInputPaste(t,e){const n=new CustomEvent("beforeinput",{bubbles:!0,cancelable:!0});try{Object.defineProperties(n,{inputType:{value:"insertFromPaste",configurable:!0},dataTransfer:{value:e,configurable:!0}})}catch(t){Object.assign(n,{inputType:"insertFromPaste",dataTransfer:e})}t.dispatchEvent(n)}createDataTransfer(t,e,n){if("undefined"!=typeof DataTransfer){const s=new DataTransfer;return t&&s.setData("text/html",t),e&&s.setData("text/plain",e),n&&s.setData("application/x-vega-rte-paste-mode",n),s}return{getData:s=>"text/html"===s?t:"text/plain"===s?e:"application/x-vega-rte-paste-mode"===s&&null!=n?n:""}}clearPasteChooser(t=!0){this.contentHostEl&&this.contentHostEl.removeEventListener("scroll",this.handleOutsideScroll),this.listenerWindow&&(this.listenerWindow.removeEventListener("scroll",this.handleOutsideScroll,!0),this.listenerWindow=null),this.listenerDocument&&(this.listenerDocument.removeEventListener("mousedown",this.handleOutsidePointerDown,!0),this.listenerDocument.removeEventListener("keydown",this.handleOutsideKeyDown,!0),this.listenerDocument.removeEventListener("scroll",this.handleOutsideScroll,!0),this.listenerDocument=null),this.chooserUI&&this.chooserUI.destroy(),this.chooserUI=null,t&&(this.pendingPastePayload=null)}}class qi extends I{constructor(t,e){super(),this.type="COPY_SELECTED_CONTENT_ACTION",this.selection=null,this.selectedNodes=[],this.copyResult=null,this.selection=t,this.selectedNodes=e}}class Wi extends Ze{render(t,e){return this.renderButton(t,e,{icon:"rte-copy",tooltip:{text:"Copy"}})}isDisabled(t){const e=this.getExtensionContext(t.host);return!e||e.host.disabled||!e.getSelection()||e.getSelection().isCollapsed}handleButtonClick(t){const e=this.getExtensionContext(t.host);e&&e.host&&e.host.value.apply(new qi(e.getSelection(),e.getSelectedNodes()))}handleDropdownClick(){}}at.register({"rte-copy":ke});class Ui extends v{prepareBeforeLoad(t){this.registerToolbarButtonRenderer(Ui.TOOLBAR_BUTTON_KEY,new Wi,t)}}R.register("COPY_SELECTED_CONTENT_ACTION",x.name,new class extends D{handleAction(t){const e=this.getParentBlocks(t.selectedNodes),{html:n,text:s}=this.getSelectedContent(t.selection,e);(s||n)&&(t.copyResult=this.copyToClipboard(n,s))}getSelectedContent(t,e){const n={html:"",text:""};if(!t||0===t.rangeCount||t.isCollapsed)return n;const s=t.getRangeAt(0),i=ve();if(!i)return n;const r=s.cloneContents(),a=i.createElement("div"),o=s.commonAncestorContainer;if(1===e.length){const t=this.getDOMByEntity(e[0]);if(t&&t.contains(o)){const e=this.wrapWithAncestorChain(r,o,t);return a.appendChild(e),n.html=a.innerHTML,n.text=a.textContent,n}}else if(e.length>1&&e.every((t=>"list-item"===t.type))){const t=e[0].parent;if(t&&e.every((e=>e.parent===t))){const e=this.getDOMByEntity(t);if(e&&e.contains(o)){const t=e.cloneNode(!1);return t.appendChild(r),a.appendChild(t),n.html=a.innerHTML,n.text=a.textContent,n}}}return a.appendChild(r),n.html=a.innerHTML,n.text=a.textContent,n}wrapWithAncestorChain(t,e,n){const s=n.cloneNode(!1),i=e.nodeType===Node.TEXT_NODE?e.parentElement:e;if(i===n)return s.appendChild(t),s;const r=i.cloneNode(!1);r.appendChild(t);let a=r,o=i.parentElement;for(;o&&o!==n;){const t=o.cloneNode(!1);t.appendChild(a),a=t,o=o.parentElement}if(s.appendChild(a),"LI"===s.tagName&&o&&o.parentElement&&"OL"===o.parentElement.tagName){const t=o.parentElement.cloneNode(!1);return t.appendChild(s),t}return s}getParentBlocks(t){const e=[];for(const n of t){const t=n.parent;t&&!e.includes(t)&&e.push(t)}return e}async copyToClipboard(t,e){let n=!1;try{const s=new Blob([t],{type:"text/html"}),i=new Blob([e],{type:"text/plain"}),r=new ClipboardItem({"text/html":s,"text/plain":i});await navigator.clipboard.write([r]),n=!0}catch(s){n=this.copyWithExecCommand(t,e),n||a.warn("Failed to copy the selected content to the clipboard. Use keyboard shortcuts instead.")}return n}copyWithExecCommand(t,e){const n=ve();if(!n)return!1;const s=n=>{n.clipboardData&&(n.clipboardData.setData("text/html",t),n.clipboardData.setData("text/plain",e)),n.preventDefault()};n.addEventListener("copy",s);try{return n.execCommand("copy")}finally{n.removeEventListener("copy",s)}}}),Ui.TOOLBAR_BUTTON_KEY="copy";class Gi extends I{constructor(t,e,n=!1){super(),this.type=$.DELETE_SELECTED_CONTENT,this.mergeFlag=!1,this.host=t,this.mergeFlag=e,this.isFlushable=n}}class Zi extends Wi{render(t,e){return this.renderButton(t,e,{icon:"rte-cut",tooltip:{text:"Cut"}})}async handleButtonClick(t){const e=this.getExtensionContext(t.host);if(e&&e.host){const{host:t}=e,n=new qi(e.getSelection(),e.getSelectedNodes());t.value.apply(n),await n.copyResult&&t.value.apply(new Gi(t,!0,!0))}}}at.register({"rte-cut":{icon:'<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 512 512">\x3c!--! Font Awesome Pro 7.2.0 by @fontawesome - https://fontawesome.com License - https://fontawesome.com/license (Commercial License) Copyright 2026 Fonticons, Inc. --\x3e<path fill="currentColor" d="M48 112a64 64 0 1 1 128 0 64 64 0 1 1 -128 0zm176 0C224 50.1 173.9 0 112 0S0 50.1 0 112 50.1 224 112 224c24 0 46.3-7.6 64.5-20.4l57.3 52.4-57.3 52.4C158.3 295.6 136 288 112 288 50.1 288 0 338.1 0 400s50.1 112 112 112 112-50.1 112-112c0-20.5-5.5-39.6-15.1-56.2L504.2 73.7c9.8-8.9 10.5-24.1 1.5-33.9s-24.1-10.5-33.9-1.5l-202.4 185.2-60.5-55.3c9.6-16.5 15.1-35.7 15.1-56.2zM471.8 473.7c9.8 8.9 25 8.3 33.9-1.5s8.3-25-1.5-33.9L338.6 286.8 302.7 319 471.8 473.7zM48 400a64 64 0 1 1 128 0 64 64 0 1 1 -128 0z"/></svg>'}});class Qi extends v{prepareBeforeLoad(t){this.registerToolbarButtonRenderer(Qi.TOOLBAR_BUTTON_KEY,new Zi,t)}}Qi.TOOLBAR_BUTTON_KEY="cut";class Ji extends I{constructor(t,e){super(),this.type=$.INSERT_NODE_TO_NEAREST_ROOT,this.rteRange=t,this.nodeToBeInserted=e}}class Yi extends D{handleAction(e,n){const{rteRange:s,token:i}=e;if(s&&s.startNode){const{key:r,label:a,customAttrs:o={wrapped:"true"}}=i,l=new Ye(t(),r,a,n);l.annotationMap.set("CUSTOM_ATTRIBUTE",new G(o)),n.apply(new Ji(s,l)),e.actionHandleResult=!0}}}const Xi=new class extends C{canHandle(t,e){const n=t[e];return"SPAN"===n.nodeName&&n.classList.contains("token")&&n.hasAttribute("token-key")?1:0}handle(e){const n=e[0],s=n.getAttribute("token-key"),i=n.textContent,r=L.generate(N,n),{customAttribute:a}=r,o=function(t,e){var n={};for(var s in t)Object.prototype.hasOwnProperty.call(t,s)&&e.indexOf(s)<0&&(n[s]=t[s]);if(null!=t&&"function"==typeof Object.getOwnPropertySymbols){var i=0;for(s=Object.getOwnPropertySymbols(t);i<s.length;i++)e.indexOf(s[i])<0&&Object.prototype.propertyIsEnumerable.call(t,s[i])&&(n[s[i]]=t[s[i]])}return n}(r,["customAttribute","customClass"]);return{id:t(),type:"token",token:s,text:i,annotations:Object.assign(Object.assign({},o),{customAttribute:this.createCustomAttrs(a)})}}appendChildBlocks(){}shouldProceedToElementChildren(){return!1}createCustomAttrs(t){const e=Object.assign(Object.assign({},t),{contenteditable:null,"template-token-key":null,"token-key":null,wrapped:"false"===t.wrapped?"false":"true"});return xe(e)}};class tr extends v{constructor(t=[]){super(),this.tokenRenderer=new Xe,this.tokenList=t,this.registerNode("token",Ye),this.registerRenderer("token",this.tokenRenderer),this.registerElementToNodeDTOClassStrategy(Xi)}prepareBeforeLoad(t){this.registerToolbarButtonRenderer(tr.TOOLBAR_BUTTON_KEY,new Je(this.tokenList),t)}}(()=>{const t=new Yi;v.registerActionHandleStrategy(M.name,"INSERT_TOKEN_NODE",t),v.registerActionHandleStrategy(A.name,"INSERT_TOKEN_NODE",t)})(),tr.TOOLBAR_BUTTON_KEY="token";export{Ge as A,Ze as B,Ye as C,Xe as D,tn as E,Js as F,Gi as G,un as H,Ji as I,Je as R,Ee as V,Re as a,Me as b,_e as c,Ke as d,Ue as e,tr as f,en as g,Oi as h,yn as i,js as j,Us as k,oi as l,wi as m,Ei as n,pi as o,li as p,ci as q,hi as r,di as s,ui as t,Vi as u,Ki as v,Fe as w,zi as x,Ui as y,Qi as z}
1
+ import{g as t}from"./p-8b5d3a52.js";import{a as e,g as n,D as s,f as i,r}from"./p-528748fa.js";import{L as a,I as o}from"./p-6e1ab235.js";import{I as l,c}from"./p-afcd8f04.js";import{I as h}from"./p-781fd6e0.js";import{c as d}from"./p-6a334573.js";import{P as u}from"./p-81dd00d0.js";import{i as p}from"./p-8c30a60d.js";import{V as f}from"./p-0d18368b.js";import{I as w}from"./p-14baa886.js";import{R as g,a as b,b as v}from"./p-f7e459cd.js";import{U as m,V as x,B as y,E as C,h as L,I as k,R as S,a as T,P as E,A as O,b as A}from"./p-f4da615a.js";import{M as I,A as R,R as N,a as B,b as M,c as j,d as D,I as _,e as H,f as V,s as P,g as F,h as z,i as $,B as K,j as q,k as W,C as U,l as G,m as Z,n as Q,o as J,S as Y,U as X,p as tt,q as et,N as nt,r as st,t as it}from"./p-38c9d782.js";import{i as rt}from"./p-8db904dc.js";import{V as at}from"./p-6031bed1.js";import{v as ot}from"./p-4866e390.js";import{D as lt,d as ct}from"./p-526e3634.js";import{V as ht,a as dt,b as ut,c as pt,d as ft}from"./p-5447a8e8.js";import{R as wt,a as gt,S as bt,T as vt,b as mt,c as xt,d as yt,e as Ct,C as Lt,M as kt,f as St,g as Tt,h as Et,i as Ot,j as At,k as It,l as Rt,m as Nt,n as Bt,o as Mt,p as jt,q as Dt,s as _t,r as Ht,t as Vt,I as Pt,u as Ft,v as zt,w as $t,x as Kt,y as qt,z as Wt,A as Ut,B as Gt,D as Zt,E as Qt,F as Jt,G as Yt,H as Xt,J as te,K as ee,L as ne,N as se,O as ie,P as re,Q as ae,U as oe,W as le,X as ce,Y as he}from"./p-4fe40b76.js";import{C as de}from"./p-2d0d575f.js";import{V as ue,a as pe,b as fe}from"./p-3a68b729.js";import{r as we}from"./p-77e64f26.js";import{V as ge,a as be}from"./p-3e09aeed.js";import{t as ve}from"./p-b75ee3ba.js";import{p as me}from"./p-0c667d6a.js";import{c as xe}from"./p-a841cf13.js";import{d as ye}from"./p-1bc5b3bc.js";import{c as Ce}from"./p-02841589.js";import{R as Le}from"./p-0be4df0a.js";import{c as ke}from"./p-890a5254.js";const Se=[{payloadKey:"IS_LOAD_METHOD_CALLED",payloadDescription:"Indicate if the method load of public API VegaLoaderController is called",canAccept:(t,e)=>"VegaLoaderController"===t&&"load"===e,payloadValue:()=>!0},{payloadKey:"IS_CLOSE_METHOD_CALLED",payloadDescription:"Indicate if the method close of public API VegaLoaderController is called",canAccept:(t,e)=>"VegaLoaderController"===t&&"close"===e,payloadValue:()=>!0}];class Te{constructor(){this.vegaPublicAPIRuntimeMetricsSlimmer=c(Te,["load","close"],Se,"VegaLoaderController")}load(t={}){let e=t.containerSelector||"body",n=document.querySelector(e);if(n&&Te.SPECIAL_ELEMENT_TO_WRAP_FULL_BODY.includes(n.tagName)&&(e="body",n=document.querySelector("body")),!n)return a.error("Container is not found by selector: ",e),null;const s=this.createLoadingIndicator(t.indicatorOptions),i=this.createLoader(e);return i.append(s),this.appendLoader(i,n)}close(t){const e=this.findLoader(t);if(e){if(e.dataset.container){const t=document.querySelector(e.dataset.container);t&&t.dataset.vegaLoaderOriginPosition&&(t.style.position=t.dataset.vegaLoaderOriginPosition)}e.remove()}}findLoader(t){var e,n;let s;if(t.includes(">>>")){const[i,r]=t.split(">>>");s=null===(n=null===(e=document.querySelector(i))||void 0===e?void 0:e.shadowRoot)||void 0===n?void 0:n.getElementById(r)}else s=document.getElementById(t);return s}createLoader(n){const s=document.createElement("vega-loader-wrapper");return s.className=e(["body"===n?"fixed-wrapper":"absolute-wrapper"]),s.dataset.container=n,s.id=`vega-loader-${t()}`,s}createLoadingIndicator(t={}){const e=document.createElement("vega-loading-indicator");return Object.assign(e,t),e}appendLoader(t,e){return e.dataset.vegaLoaderOriginPosition=e.style.position,e.style.position="relative",e.shadowRoot?(e.shadowRoot.append(t),`${t.dataset.container}>>>${t.id}`):(e.append(t),t.id)}}Te.SPECIAL_ELEMENT_TO_WRAP_FULL_BODY=["VEGA-MODAL"],function(t,e,n,s){var i,r=arguments.length,a=r<3?e:null===s?s=Object.getOwnPropertyDescriptor(e,n):s;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)a=Reflect.decorate(t,e,n,s);else for(var o=t.length-1;o>=0;o--)(i=t[o])&&(a=(r<3?i(a):r>3?i(e,n,a):i(e,n))||a);r>3&&a&&Object.defineProperty(e,n,a)}([l()],Te.prototype,"vegaPublicAPIRuntimeMetricsSlimmer",void 0);const Ee=new Te,Oe=[{payloadKey:"IS_OPEN_METHOD_CALLED",payloadDescription:"Indicate if the method open of public API VegaNotifyController is called",canAccept:(t,e)=>"VegaNotifyController"===t&&"open"===e,payloadValue:()=>!0},{payloadKey:"IS_CLOSE_METHOD_CALLED",payloadDescription:"Indicate if the method close of public API VegaNotifyController is called",canAccept:(t,e)=>"VegaNotifyController"===t&&"close"===e,payloadValue:()=>!0},{payloadKey:"IS_CLOSEALL_METHOD_CALLED",payloadDescription:"Indicate if the method closeAll of public API VegaNotifyController is called",canAccept:(t,e)=>"VegaNotifyController"===t&&"closeAll"===e,payloadValue:()=>!0}];var Ae=function(t,e,n,s){var i,r=arguments.length,a=r<3?e:null===s?s=Object.getOwnPropertyDescriptor(e,n):s;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)a=Reflect.decorate(t,e,n,s);else for(var o=t.length-1;o>=0;o--)(i=t[o])&&(a=(r<3?i(a):r>3?i(e,n,a):i(e,n))||a);return r>3&&a&&Object.defineProperty(e,n,a),a};class Ie{constructor(){this.resizeObserverSlimmer=d(Ie,u,[],[{mapFrom:"connectResizeObserver",mapTo:"connectResizeObserver"}],[{callback:t=>{var e;!(t[0].contentRect.height>0)&&(null===(e=this.container)||void 0===e?void 0:e.classList.contains("hydrated"))&&(h.removeZIndex(this.container,"top"),this.container.remove(),this.container=null)},target:()=>this.container}]),this.vegaPublicAPIRuntimeMetricsSlimmer=c(Ie,["open","close","closeAll"],Oe,"VegaNotifyController")}async open(t){const e=this.createPageNotification(t);return this.getContainer().append(e),e.id}async closeAll(){this.container&&Array.from(this.container.children).forEach((t=>{t.close()}))}async close(t){await document.getElementById(t).close()}connectResizeObserver(){}createPageNotification(e){const i=document.createElement("vega-page-notification");return Object.keys(e).forEach((t=>{void 0!==e[t]&&(i[t]=e[t])})),i.style.marginBottom=n()===s.MOBILE?"12px":"16px",i.id=`vega-page-notification-${t()}`,i}getContainer(){return this.container||(this.container=document.createElement("vega-page-notification-list"),h.setZIndex(this.container,"top"),n()===s.MOBILE?this.container.classList.add("vega-page-notification-list-bottom"):this.container.classList.add("vega-page-notification-list-topRight"),document.body.append(this.container),this.connectResizeObserver()),this.container}}Ae([o()],Ie.prototype,"resizeObserverSlimmer",void 0),Ae([l()],Ie.prototype,"vegaPublicAPIRuntimeMetricsSlimmer",void 0);const Re=new Ie,Ne=[{payloadKey:"IS_SETSEMANTICS_METHOD_CALLED",payloadDescription:"Indicate if the method setSemantics of public API VegaEventManager is called",canAccept:(t,e)=>"VegaEventManager"===t&&"setSemantics"===e,payloadValue:()=>!0},{payloadKey:"IS_GETSEMANTICS_METHOD_CALLED",payloadDescription:"Indicate if the method getSemantics of public API VegaEventManager is called",canAccept:(t,e)=>"VegaEventManager"===t&&"getSemantics"===e,payloadValue:()=>!0},{payloadKey:"IS_GETENABLEDEVENTIDSBYCOMPONENT_METHOD_CALLED",payloadDescription:"Indicate if the method getEnabledEventIdsByComponent of public API VegaEventManager is called",canAccept:(t,e)=>"VegaEventManager"===t&&"getEnabledEventIdsByComponent"===e,payloadValue:()=>!0},{payloadKey:"globalEventIsNative",payloadDescription:"Indicate if the vega components will emit events without the vega prefix",canAccept:(t,e)=>"VegaEventManager"===t&&"setSemantics"===e,payloadValue:t=>!(!t.global||"native"!==t.global.namespace)},{payloadKey:"eventOfSpecificComponentsIsNative",payloadDescription:"Indicate if the vega components will emit events with the vega prefix, but special components will emit events without vega prefix",canAccept:(t,e)=>"VegaEventManager"===t&&"setSemantics"===e,payloadValue:t=>{const e=t;if(e.components){const t=Object.keys(e.components);return!!(t.length>0&&"native"===e.components[t[0]].namespace)}return!1}},{payloadKey:"eventOfSpecificComponentsIsVega",payloadDescription:"Indicate if the vega components will emit events without the vega prefix, but special components will emit events with vega prefix",canAccept:(t,e)=>"VegaEventManager"===t&&"setSemantics"===e,payloadValue:t=>{const e=t;if(e.global&&e.components){const t=Object.keys(e.components);return!!("native"===e.global.namespace&&t.length>0&&"vega"===e.components[t[0]].namespace)}return!1}},{payloadKey:"globalJqueryDelegatedEventIsTrue",payloadDescription:"Indicate if the use jQuery with event delegation",canAccept:(t,e)=>"VegaEventManager"===t&&"setSemantics"===e,payloadValue:t=>!(!t.global||!0!==t.global.jqueryDelegatedEvent)},{payloadKey:"jqueryDelegatedEventIsCustomStrategy",payloadDescription:"Indicate if the use jQuery with event delegation",canAccept:(t,e)=>"VegaEventManager"===t&&"setSemantics"===e,payloadValue:t=>{const e=t;return!!(e.global&&Array.isArray(e.global.jqueryDelegatedEvent)&&e.global.jqueryDelegatedEvent.length>0)}},{payloadKey:"jqueryDelegatedEventOfSpecialComponentsIsTrue",payloadDescription:"Indicate if the use jQuery with event delegation",canAccept:(t,e)=>"VegaEventManager"===t&&"setSemantics"===e,payloadValue:t=>{const e=t;if(e.components){const t=Object.keys(e.components);return!!(t.length>0&&!0===e.components[t[0]].jqueryDelegatedEvent)}return!1}}];class Be{constructor(){this.vegaPublicAPIRuntimeMetricsSlimmer=c(Be,["setSemantics","getSemantics","getEnabledEventIdsByComponent"],Ne,"VegaEventManager")}setSemantics(t){p.setSemantics(t)}getSemantics(t){return p.getSemantics(t)}getEnabledEventIdsByComponent(t){return p.getEnabledEventIdsByComponent(t)}}!function(t,e,n,s){var i,r=arguments.length,a=r<3?e:null===s?s=Object.getOwnPropertyDescriptor(e,n):s;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)a=Reflect.decorate(t,e,n,s);else for(var o=t.length-1;o>=0;o--)(i=t[o])&&(a=(r<3?i(a):r>3?i(e,n,a):i(e,n))||a);r>3&&a&&Object.defineProperty(e,n,a)}([l()],Be.prototype,"vegaPublicAPIRuntimeMetricsSlimmer",void 0);const Me=new Be,je=[{payloadKey:"IS_OVERRIDEZINDEXBASICVALUES_METHOD_CALLED",payloadDescription:"Indicate if the method overrideZIndexBasicValues of public API ZIndexManager is called",canAccept:(t,e)=>"VegaZIndexManager"===t&&"overrideZIndexBasicValues"===e,payloadValue:()=>!0},{payloadKey:"zIndexBasicValuesGreatThanTenThousand",payloadDescription:"Indicate if the basic z-index value is great than ten thousand",canAccept:(t,e)=>"VegaZIndexManager"===t&&"overrideZIndexBasicValues"===e,payloadValue:t=>t.base>1e4}];class De{constructor(){this.vegaPublicAPIRuntimeMetricsSlimmer=c(De,["overrideZIndexBasicValues"],je,"VegaZIndexManager")}overrideZIndexBasicValues(t){h.overrideZIndexBasicValues(t)}}!function(t,e,n,s){var i,r=arguments.length,a=r<3?e:null===s?s=Object.getOwnPropertyDescriptor(e,n):s;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)a=Reflect.decorate(t,e,n,s);else for(var o=t.length-1;o>=0;o--)(i=t[o])&&(a=(r<3?i(a):r>3?i(e,n,a):i(e,n))||a);r>3&&a&&Object.defineProperty(e,n,a)}([l()],De.prototype,"vegaPublicAPIRuntimeMetricsSlimmer",void 0);const _e=new De,He=[{payloadKey:"IS_WAITFORVEGA_METHOD_CALLED",payloadDescription:"Indicate if the method waitForVega of public API WaitForVegaHandler is called",canAccept:(t,e)=>"WaitForVegaHandler"===t&&"handle"===e,payloadValue:()=>!0}];class Ve{constructor(){this.vegaPublicAPIRuntimeMetricsSlimmer=c(Ve,["handle"],He,"WaitForVegaHandler")}async handle(){return await Promise.all(Array.from(document.querySelectorAll("*:not(.hydrated)")).filter((t=>t.tagName.startsWith("VEGA"))).map((t=>{var e;return null===(e=t.componentOnReady)||void 0===e?void 0:e.call(t)})))}}!function(t,e,n,s){var i,r=arguments.length,a=r<3?e:null===s?s=Object.getOwnPropertyDescriptor(e,n):s;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)a=Reflect.decorate(t,e,n,s);else for(var o=t.length-1;o>=0;o--)(i=t[o])&&(a=(r<3?i(a):r>3?i(e,n,a):i(e,n))||a);r>3&&a&&Object.defineProperty(e,n,a)}([l()],Ve.prototype,"vegaPublicAPIRuntimeMetricsSlimmer",void 0);const Pe=new Ve,Fe=async()=>Pe.handle(),ze=[{payloadKey:"IS_LOAD_METHOD_CALLED",payloadDescription:"Indicate if the method load of public API VegaSkeletonLoaderController is called",canAccept:(t,e)=>"VegaSkeletonLoaderController"===t&&"load"===e,payloadValue:()=>!0},{payloadKey:"IS_UNLOAD_METHOD_CALLED",payloadDescription:"Indicate if the method unLoad of public API VegaSkeletonLoaderController is called",canAccept:(t,e)=>"VegaSkeletonLoaderController"===t&&"unLoad"===e,payloadValue:()=>!0},{payloadKey:"IS_UNLOADALL_METHOD_CALLED",payloadDescription:"Indicate if the method unLoadAll of public API VegaSkeletonLoaderController is called",canAccept:(t,e)=>"VegaSkeletonLoaderController"===t&&"unLoadAll"===e,payloadValue:()=>!0}];class $e{constructor(){this.vegaPublicAPIRuntimeMetricsSlimmer=c($e,["load","unLoad","unLoadAll"],ze,"VegaSkeletonLoaderController"),this.loaderMap=new Map}load({target:e,type:n="text",width:s,height:i,items:r,layout:a}){const o=Array.from(document.body.querySelectorAll(e)),l=`vega-skeleton-loader-${t()}`,c=[];return o.forEach((t=>{const e=r?r.map(this.createSkeleton):[this.createSkeleton({type:n,width:s,height:i})],o=(a?[this.wrapLayout(e,a)]:e).map((t=>(t.dataset[$e.LOADER_DATA_SET_KEY]=l,t)));c.push(...o),t.append(...o)})),this.loaderMap.set(l,c),l}unLoad(t){this.loaderMap.has(t)&&(this.loaderMap.get(t).forEach((t=>t.remove())),this.loaderMap.delete(t))}unLoadAll(){for(const t of this.loaderMap.values())t.forEach((t=>t.remove()));this.loaderMap.clear()}createSkeleton(t){const{type:e,width:n,height:s}=t,i=document.createElement("vega-skeleton");return Object.assign(i,{animated:!0,type:e,width:n,height:s}),i}wrapLayout(t,e){const n=document.createElement("vega-flex");return Object.assign(n,Object.assign({className:"vega-skeleton-loader-template-container"},e.props)),Object.assign(n.style,e.style),n.append(...t),n}}$e.LOADER_DATA_SET_KEY="vegaSkeletonLoaderKey",function(t,e,n,s){var i,r=arguments.length,a=r<3?e:null===s?s=Object.getOwnPropertyDescriptor(e,n):s;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)a=Reflect.decorate(t,e,n,s);else for(var o=t.length-1;o>=0;o--)(i=t[o])&&(a=(r<3?i(a):r>3?i(e,n,a):i(e,n))||a);r>3&&a&&Object.defineProperty(e,n,a)}([l()],$e.prototype,"vegaPublicAPIRuntimeMetricsSlimmer",void 0);const Ke=new $e,qe=[{payloadKey:"IS_INIT_METHOD_CALLED",payloadDescription:"Indicate if the method load of public API VegaTranslation.init is called",canAccept:(t,e)=>"TranslationController"===t&&"init"===e,payloadValue:()=>!0},{payloadKey:"IS_CHANGE_LANGUAGE_METHOD_CALLED",payloadDescription:"Indicate if the method load of public API VegaTranslation.changeLanguage is called",canAccept:(t,e)=>"TranslationController"===t&&"changeLanguage"===e,payloadValue:()=>!0}];class We{constructor(){this.vegaPublicAPIRuntimeMetricsSlimmer=c(We,["init","changeLanguage"],qe,"TranslationController")}get currentLanguage(){return f.currentLanguage}init(t){f.init(t)}changeLanguage(t){f.changeLanguage(t)}}!function(t,e,n,s){var i,r=arguments.length,a=r<3?e:null===s?s=Object.getOwnPropertyDescriptor(e,n):s;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)a=Reflect.decorate(t,e,n,s);else for(var o=t.length-1;o>=0;o--)(i=t[o])&&(a=(r<3?i(a):r>3?i(e,n,a):i(e,n))||a);r>3&&a&&Object.defineProperty(e,n,a)}([l()],We.prototype,"vegaPublicAPIRuntimeMetricsSlimmer",void 0);const Ue=new We;class Ge{static fromDate(t,e="month",n,s=!0){const i=w.createCalendarPeriod(t,e,n,s);return w.toCalendarPeriodType(i)}}class Ze{constructor(){this.dropdownEl=null,this.itemsContainerEl=null,this.buttonEl=null}isHidden(t){return t.sourceEditMode}getExtensionContext(t){return g.getExtensionContext(t)}renderDropdown(t,e,n,s){return t("vega-dropdown",Object.assign({trigger:"click",searchable:!1,maxWidth:"200",itemDisplayRule:"ellipsis",isScreenPosition:!0,ref:t=>{this.dropdownEl=t,lt.addUniqueObserverToNode(t,ht,(t=>{this.handleDropdownClick(t.detail,e)}))}},n),s)}renderDropdownListTemplate(t,e,n){return t("div",{slot:"items",onMouseDown:this.preventDefault,onKeyDown:t=>this.handleItemsKeyDown(t),ref:t=>{this.itemsContainerEl=t},class:"rte-dropdown-list"},[t("style",{nonce:ot.nonce},".rte-dropdown-list vega-dropdown-group vega-dropdown-group { padding-left: 4px }"),...e.map((e=>"children"in e?this.renderDropdownGroup(t,e,n):this.renderDropdownItem(t,e,n)))])}renderDropdownItem(t,e,n){return t("vega-dropdown-item",{key:e.key,itemKey:e.key,label:n.translation.t(e.label),prefixIcon:e.icon})}renderDropdownGroup(t,e,n){return t("vega-dropdown-group",{key:e.key,label:n.translation.t(e.label),divide:!1},e.children.map((e=>"children"in e?this.renderDropdownGroup(t,e,n):this.renderDropdownItem(t,e,n))))}renderButton(t,e,n){const{icon:s,label:i,showArrowIcon:r,tooltip:a}=n,o=this.isDisabled(e),l=t("vega-rich-text-editor-toolbar-button",{disabled:o,icon:s,hidden:this.isHidden(e),selected:this.isSelected(e),ref:t=>{this.buttonEl=t,lt.addUniqueObserverToNode(t,dt,(()=>this.handleButtonClick(e)))},onMouseDown:this.preventDefault,onKeyDown:t=>this.handleButtonKeyDown(t)},[this.renderButtonLabel(t,e,i),r?t("vega-icon",{size:"size-8",color:o?"text-disabled":"text-secondary",style:{marginLeft:"8px"},icon:at.getIconKey("chevron-down")}):null].filter(rt));return(null==a?void 0:a.text)?t("vega-tooltip",{text:e.translation.t(a.text),placement:["bottom","top"]},[l]):l}renderButtonLabel(t,e,n){return n?t("vega-font",{variant:"font-field-label-sm",color:this.isDisabled(e)?"text-disabled":"text-primary"},e.translation.t(n)):null}isDisabled(t){return t.host.disabled}isSelected(t){return!1}preventDefault(t){t.preventDefault()}getListItemByKey(t,e){for(const n of t)if("children"in n){const t=this.getListItemByKey(n.children,e);if(t)return t}else if(n.key===e)return n;return null}handleButtonKeyDown(t){this.dropdownEl&&("Enter"===t.code||"Space"===t.code?(t.preventDefault(),t.stopPropagation(),this.dropdownEl.dispatchEvent(new MouseEvent("click",{bubbles:!0}))):"ArrowDown"!==t.code&&"ArrowUp"!==t.code||(t.preventDefault(),t.stopPropagation(),this.dropdownEl.show().then((()=>{this.focusDropdownItem("ArrowDown"===t.code?"first":"last")}))))}handleItemsKeyDown(t){var e,n,s;if("Escape"===t.code)return t.preventDefault(),t.stopPropagation(),this.dropdownEl&&this.dropdownEl.hide(),void(null===(e=this.buttonEl)||void 0===e||e.focus());if("ArrowDown"!==t.code&&"ArrowUp"!==t.code)return;t.preventDefault(),t.stopPropagation();const i=this.getDropdownItems();if(0===i.length)return;const r=i.findIndex((t=>{var e,n;return(null===(e=t.shadowRoot)||void 0===e?void 0:e.querySelector("li"))===(null===(n=t.shadowRoot)||void 0===n?void 0:n.activeElement)})),a="ArrowDown"===t.code?1:-1,o=-1===r?"ArrowDown"===t.code?0:i.length-1:r+a;for(let t=0;t<i.length;t++){const e=(o+t*a+i.length)%i.length;if(!i[e].disabled)return void(null===(s=null===(n=i[e].shadowRoot)||void 0===n?void 0:n.querySelector("li"))||void 0===s||s.focus())}}focusDropdownItem(t){var e,n;const s=this.getDropdownItems(),i="first"===t?s:[...s].reverse();for(const t of i)if(!t.disabled)return void(null===(n=null===(e=t.shadowRoot)||void 0===e?void 0:e.querySelector("li"))||void 0===n||n.focus())}getDropdownItems(){return this.itemsContainerEl?Array.from(this.itemsContainerEl.querySelectorAll("vega-dropdown-item")):[]}}class Qe extends I{constructor(t,e){super(),this.type="INSERT_TOKEN_NODE",this.rteRange=null,this.actionHandleResult=!1,this.rteRange=t,this.token=e}}class Je extends Ze{constructor(t){super(),this.tokenList=[],this.tokenList=t}render(t,e){return this.renderDropdown(t,e,{},[this.renderButton(t,e,{label:"Tokens",showArrowIcon:!0,tooltip:{text:"Insert token"}}),this.renderDropdownListTemplate(t,this.tokenList,e)])}isDisabled(t){const e=this.getExtensionContext(t.host);if(e){const{host:t,getSelectedNodes:n}=e,[s]=n();return s?t.disabled||!R.canHandle("INSERT_TOKEN_NODE",s.parent):t.disabled}return!1}handleButtonClick(t){}handleDropdownClick(t,e){const n=this.getListItemByKey(this.tokenList,t),{rteRange:s}=e,{startNode:i}=s;if(i&&i.parent){const t=new Qe(s,n);i.parent.apply(t),t.actionHandleResult&&this.flushEditorUI(e)}}flushEditorUI(t){const e=this.getExtensionContext(t.host);if(e){const{host:t,flushValue:n}=e;n(t.value)}}}class Ye extends N{constructor(t,e,n,s,i){super(t,n,s,i),this.dtoName=Ye.dtoName,this.type="token",this.token=e,this.text=n}static from(t,e){const n=new Ye(t.id,t.token,t.text,e);return t.annotations&&(n.annotationMap=this.generateTextAnnotationMap(t.annotations)),n}toJSON(){const t=super.toJSON();return Object.assign({id:this.id,type:this.type,text:this.text,token:this.token},t.annotations?{annotations:t.annotations}:{})}isContentEditable(){return!1}clone(t){return new Ye(this.id,this.token,this.text,t,this.annotationMap)}toHtml(){return`<span class="token" contenteditable="false" template-token-key="${this.token}" token-key="${this.token}"${super.generateAttributeString()}>${this.text}</span>`}}Ye.dtoName="RTETokenNode";class Xe extends b{doRender(t,e,n){const{id:s,token:i}=e;return t("span",Object.assign(Object.assign({key:s,"template-token-key":i,"token-key":i,contenteditable:"false",style:e.getStyles(),class:`token ${e.getClasses()}`},this.additionalAttributes(e)),{ref:this.useRef(e),onClick:t=>{t.preventDefault(),n&&!1!==n.editable&&this.handleTokenElementClick(t,e,n.host)}}),e.text)}injectRTEScopeStyles(){return"span[token-key]{padding: 0 2px; margin: 0 1px; background-color: rgba(var(--v-bg-status-info, 205,209,211))}"}handleTokenElementClick(t,e,n){t.preventDefault(),n&&n.value.apply(new m(e,void 0,!0))}additionalAttributes(t){const e=t.getCustomAttributesAnnotation();let n={wrapped:"true"};return e&&(n=Object.assign(Object.assign({},n),e.render())),n}}class tn extends Ze{constructor(t,e,n=""){super(),this.languageList=[],this.languageChangeCallback=null,this.selectedLanguage="",this.labelRef=null,this.translation=null,this.handleDropdownClick=t=>{this.setSelectedLanguage(t),"function"==typeof this.languageChangeCallback&&this.languageChangeCallback(t)},this.languageList=t,this.languageChangeCallback=e,this.selectedLanguage=n}setSelectedLanguage(t){var e;if(this.selectedLanguage=t,(null===(e=this.labelRef)||void 0===e?void 0:e.firstChild)&&this.translation){const e=this.getLanguageLabelByKey(t);this.labelRef.firstChild.nodeValue=this.translation.t(e)}}isHidden(){return!1}render(t,e){const n=this.languageList.map((t=>this.translateDropdownEntry(t,e)));return this.renderDropdown(t,e,{source:n},[this.renderButton(t,e,{label:this.getLanguageLabelByKey(this.selectedLanguage),showArrowIcon:!0,tooltip:{text:"Select language"}})])}renderButtonLabel(t,e,n){return this.translation=e.translation,t("vega-font",{variant:"font-field-label-sm",color:this.isDisabled(e)?"text-disabled":"text-primary",ref:t=>{this.labelRef=t}},e.translation.t(n))}handleButtonClick(t){}getLanguageLabelByKey(t){var e;const n=this.getListItemByKey(this.languageList,t);return null!==(e=null==n?void 0:n.label)&&void 0!==e?e:"Select Language"}translateDropdownEntry(t,e){const n=e.translation.t(t.label);return Object.assign(Object.assign({},t),"children"in t?{label:n,children:t.children.map((t=>this.translateDropdownEntry(t,e)))}:{label:n})}}class en extends v{constructor(t,e){super(),this.languageToolbarButtonRenderer=null,this.languageState={selectedLanguage:"",contentMap:{}},this.languageChangeCallBack=t=>{const e=this.languageState.selectedLanguage;this.extensionContext&&e&&(this.languageState.contentMap[e]=this.getRTELatestValue(this.extensionContext.host)),this.languageState.selectedLanguage=t,this.applyLanguageContent(t,this.languageState.contentMap)},this.languageList=t,e&&(this.languageState=Object.assign(Object.assign({},this.languageState),e)),!this.languageState.selectedLanguage&&t.length>0&&(this.languageState.selectedLanguage=t[0].key)}prepareBeforeLoad(t){this.languageToolbarButtonRenderer=new tn(this.languageList,this.languageChangeCallBack,this.languageState.selectedLanguage),this.registerToolbarButtonRenderer(en.TOOLBAR_BUTTON_KEY,this.languageToolbarButtonRenderer,t)}initialExtensionAfterLoad(t){super.initialExtensionAfterLoad(t);const{selectedLanguage:e,contentMap:n}=this.languageState;this.languageToolbarButtonRenderer&&this.languageToolbarButtonRenderer.setSelectedLanguage(e),n&&n[e]&&this.applyLanguageContent(this.languageState.selectedLanguage,this.languageState.contentMap)}setState(t){const{selectedLanguage:e,contentMap:n}=t;this.languageToolbarButtonRenderer&&this.languageToolbarButtonRenderer.setSelectedLanguage(e),this.languageState.selectedLanguage=e,this.languageState.contentMap=Object.assign({},n),this.applyLanguageContent(e,n)}getState(){const{selectedLanguage:t,contentMap:e}=this.languageState;return this.extensionContext&&(e[t]=this.getRTELatestValue(this.extensionContext.host)),this.languageState}applyLanguageContent(t,e){if(this.extensionContext&&e){let n=e[t];const{host:s,flushValue:i}=this.extensionContext;n=n?n instanceof x?n:x.fromJSON(n,s.sourceEditConfig):x.createEmptyContent(),s.value!==n&&i(n,!0)}}getRTELatestValue(t){var e;let n=t.value;if(this.extensionContext&&this.extensionContext.isSourceEditMode()&&t.shadowRoot){const s=t.shadowRoot.querySelector(".source-view-container vega-code-block");if(s){let i;t.sourceEditConfig&&(i={autoMatchFormat:null===(e=t.sourceEditConfig.autoMatchFormat)||void 0===e||e,filterInlineStyles:t.sourceEditConfig.filterInlineStyles}),n=x.fromHtml(s.value.code,i)}}return n}}en.TOOLBAR_BUTTON_KEY="languages";class nn extends I{constructor(t){super(),this.type="INSERT_FUNCTION_BLOCK",this.functionType=t}}class sn extends B{constructor(t){super(t),this.dtoName=sn.dtoName,this.type="function-block",this.children=[]}static from(t,e){const n=new sn(t.id),s={customClass:["statement"]};let{annotations:i}=t;return i=i?Object.assign(Object.assign({},i),s):s,super.convertAnnotationsToMap(n.annotationMap,i),n.children=this.generateBlockChildren(t.children,e,n),n}toHtml(){return`<div class="statement">${this.children.map((t=>t instanceof M?`<div class="statementelement"${this.getFunctionContentStyle(t)}>${t.getChildrenHtml()}</div>`:t.toHtml())).join("")}</div>`}clone(e){const n=new sn(t());return n.parent=e,n.children=this.children.map((t=>t.clone(n))),n.annotationMap=super.cloneAnnotations(),n}getLastNode(){return this.children[this.children.length-1].getLastNode()}isNotEmpty(){return this.children.length>0}toJSON(){return Object.assign(Object.assign({},super.toJSON()),{id:this.id,type:this.type,children:this.children.map((t=>t.toJSON()))})}getFunctionContentStyle(t){const e=new j(t);let n=e.toCssText({standalone:!0});const s=t.getAnnotationByType("TEXT_STYLE");if(s&&"paragraph"===s.textStyle){const t=e.toCssText(void 0,void 0,s.renderStyle({standalone:!0}));n=n.replace(t,"").trim()}return n?` style="${n}"`:""}}sn.dtoName="RTEFunctionBlock";class rn extends D{handleAction(t,e){const{functionType:n}=t,s=this.getFunctionBlock(n),i=this.createNewParagraph(""),r=this.getReferenceBlock(e);r?r.parent.apply(new _(r,s,i)):e.apply(new H([s,i])),i&&(t.nextFocusNode=i.children[0])}getFunctionBlock(e){const n=t();return sn.from({id:n,type:"function-block",children:[{id:`${n}-1`,type:"logic-control-block",statementText:e.toUpperCase()},{id:`${n}-2`,annotations:{customClass:["statementelement"]},type:"paragraph",nodes:[{id:`${n}-2-1`,type:"text",text:" "}]},{id:`${n}-3`,type:"logic-control-block",statementText:"SHOW"},{id:`${n}-4`,annotations:{customClass:["statementelement"]},type:"paragraph",nodes:[{id:`${n}-4-1`,type:"text",text:" "}]}]})}getReferenceBlock(t){if(!(t instanceof x)){const e=t.parent;return e instanceof sn?e:t}}}class an extends V{constructor(t,e,n){super(t),this.dtoName=an.dtoName,this.type="logic-control-node",this.text="",this.text=e,this.parent=n}clone(){return new an(this.id,this.text,this.parent)}toHtml(){return this.text}toJSON(){return{id:this.id,type:this.type,text:this.text}}getRangeEndOffset(){return 1}getRangeContainer(){const t=P.getDOMByEntity(this);if(t)return t.parentElement}isContentEditable(){return!1}}an.dtoName="RTELogicControlNode";class on extends B{constructor(t,e,n){super(t),this.dtoName=on.dtoName,this.type="logic-control-block",this.children=[],this.statementText="",this.statementText=e,this.children=[new an(`${t}-node-1`,e,this)],n&&(this.parent=n)}static from(t){return new on(t.id,t.statementText)}isNotEmpty(){return!0}getLastNode(){return this.children[this.children.length-1]}toHtml(){return`<div class='statementsyntax' contenteditable='false'>${this.statementText}</div>`}clone(t){return new on(this.id,this.statementText,t)}toJSON(){return{id:this.id,type:this.type,statementText:this.statementText}}}on.dtoName="RTELogicControlBlock";class ln extends Ze{render(t,e){return this.renderDropdown(t,e,{},[this.renderButton(t,e,{label:"Functions",showArrowIcon:!0,tooltip:{text:"Insert function"}}),this.renderDropdownListTemplate(t,ln.FUNCTION_LIST,e)])}isDisabled(t){const e=this.getExtensionContext(t.host);if(e){const{host:t,getSelectedNodes:n}=e,s=n()[0];let i=!0;return s&&(i=R.canHandle("INSERT_FUNCTION_BLOCK",s.parent)),t.disabled||!i}return!1}handleButtonClick(){throw new Error("Method not implemented.")}handleDropdownClick(t,e){if(e){const n=this.getExtensionContext(e.host);if(n){const{host:e,getSelectedNodes:s}=n,i=s()[0],r=new nn(t);i?i.parent&&i.parent.apply(r):e.value.apply(r),r.nextFocusNode&&e.value.apply(new m(r.nextFocusNode,1))}}}}ln.FUNCTION_LIST=[{key:"IF",label:"Conditional"},{key:"FOREACH",label:"Foreach"}];class cn extends b{doRender(t,e){return t("div",{key:e.id,class:"statementsyntax",ref:this.useRef(e)},t("span",{key:`${e.id}-1`,contenteditable:"false",ref:this.useRef(e.children[0])},e.statementText))}}class hn extends y{constructor(){super(...arguments),this.blockClassName="statementsyntax"}canHandle(t,e){const n=t[e];return n&&n.nodeType===Node.ELEMENT_NODE&&n.classList.contains(this.blockClassName)&&this.isFunctionBlockChild(n)?1:0}handle(e){const n=e[0];return on.from({id:t(),type:"logic-control-block",statementText:n.innerText})}appendChildBlocks(){}shouldProceedToElementChildren(){return!1}isFunctionBlockChild(t){return!(!t.parentElement||!t.parentElement.classList.contains("statement"))}}class dn extends b{doRender(t,e){return t("div",{key:e.id,class:this.getElementClassName(e),ref:this.useRef(e)})}injectRTEScopeStyles(){return"div.statement{padding:2px 4px;background:rgba(var(--v-bg-accent3-secondary, 255, 239, 200));border:1px solid rgba(var(--v-bg-accent3-primary, 255, 220, 131));border-radius:4px;display:flex;flex-direction:row;justify-content:flex-start;align-items:stretch;gap:4px}div.statement .statementsyntax{padding:3px 0;line-height:22px}.rich-text-content div.statement .statementsyntax,.rich-text-content div.statement .statementelement{display:inline-block}div.statement+div.statement{margin-top:2px}div.statement .statementsyntax span{color:rgb(38, 42, 255);font-weight:bold}div.statement .statementelement{padding:2px 4px;background:rgba(var(--v-bg-secondary, 245, 247, 247));border:1px solid rgba(var(--v-border-color-input-field, 171, 198, 216));border-radius:4px;margin:0;min-width:8px}"}getElementClassName(t){let e=t.getClasses();return e.indexOf("statement")<0&&(e="statement "+e),e.trim()}}class un{}class pn extends un{canIntercept(t,e){return e.parent&&e.parent instanceof sn}intercept(t,e,n){const s=new k(n.children[0],0);s.isFlushable=!0,n.parent.apply(s)}}class fn extends D{handleAction(t,e){const n=this.createNewParagraph("");n&&(e.parent.apply(new _(e,n)),t.newBlock=n,this.focusToNextLine(n))}focusToNextLine(t){const e=this.getRootContent(t);e&&e.apply(new m(t.children[0],1))}}class wn extends I{constructor(t,e,n){super(),this.type="PASTE_PLAIN_TEXT",this.blocksToBeInserted=t,this.startNode=e,this.startOffset=n}}class gn extends pn{intercept(t,e,n){const{blocksToBeInserted:s,rteRange:i}=e;let{startNode:r,startOffset:a}=e;i&&(r=i.startNode,a=i.startOffset);const o=new wn(s,r,a);n.apply(o)}}class bn extends D{handleAction(t,e){const{blocksToBeInserted:n,startNode:s,startOffset:i}=t;if(s instanceof N){const t=n.flatMap((t=>t instanceof M?(this.copyLinkGroupAnnotations(e.annotationMap,t.annotationMap),t.children):[]));t.length>0&&(e.apply(i>0?new _(s,...t):new F(s,...t)),this.focusToNextLine(t[t.length-1],t[t.length-1].getRangeEndOffset()))}}focusToNextLine(t,e){const n=this.getRootContent(t);n&&n.apply(new m(t,e))}copyLinkGroupAnnotations(t,e){if(e&&e.has(z.LINK_GROUP)){const n=e.get(z.LINK_GROUP);t.has(z.LINK_GROUP)?n.linkGroups.forEach(((e,n)=>{t.get(z.LINK_GROUP).linkGroups.set(n,e)})):t.set(z.LINK_GROUP,e.get(z.LINK_GROUP))}}}const vn=new hn,mn=new class extends hn{constructor(){super(...arguments),this.blockClassName="statementelement"}handle(e,n){const s=L.generate(M,e[0]),i=Array.from(e[0].childNodes);return M.from({id:t(),type:"paragraph",annotations:Object.assign({customClass:[this.blockClassName]},s),nodes:this.generateChildNodes(i,void 0,n)})}},xn=new class extends C{canHandle(t,e){const n=t[e];return n&&"DIV"===n.tagName&&n.classList.contains("statement")&&n.childNodes.length&&n.querySelector(".statementsyntax")?1:0}handle(){return sn.from({id:t(),type:"function-block",annotations:{customClass:["statement"]},children:[]})}appendChildBlocks(t,e){t.children=e.map((e=>(e.parent=t,e)))}shouldProceedToElementChildren(){return!0}};class yn extends v{constructor(){super(),this.registerBlockBasicStrategies(on.name),this.registerBlockBasicStrategies(sn.name),this.preventFunctionBlockDefaultInsertNewParagraph(),this.registerNode("logic-control-block",on),this.registerRenderer("logic-control-block",new cn),this.registerNode("function-block",sn),this.registerRenderer("function-block",new dn),this.registerElementToBlockDTOClassStrategy(vn),this.registerElementToBlockDTOClassStrategy(mn),this.registerElementToBlockDTOClassStrategy(xn)}prepareBeforeLoad(t){this.registerToolbarButtonRenderer(yn.TOOLBAR_BUTTON_KEY,new ln,t)}preventFunctionBlockDefaultInsertNewParagraph(){this.unRegisterStrategy($.INSERT_NEW_PARAGRAPH,on.name),this.unRegisterStrategy($.APPEND_CHILDREN,sn.name),this.unRegisterStrategy($.INSERT_CHILDREN_AFTER,sn.name),this.unRegisterStrategy($.INSERT_CHILDREN_BEFORE,sn.name),this.unRegisterStrategy($.PASTE_CONTENT,on.name),v.registerActionHandleStrategy(sn.name,$.INSERT_NEW_PARAGRAPH,new fn)}}(()=>{const t=new rn;v.registerActionHandleStrategy(x.name,"INSERT_FUNCTION_BLOCK",t),v.registerActionHandleStrategy(M.name,"INSERT_FUNCTION_BLOCK",t),v.registerActionHandleStrategy(S.name,"INSERT_FUNCTION_BLOCK",t),v.registerActionHandleStrategy(on.name,"INSERT_FUNCTION_BLOCK",t),v.registerActionHandleStrategy(M.name,"PASTE_PLAIN_TEXT",new bn),v.registerActionHandlerInterceptor(M.name,$.INSERT_NEW_PARAGRAPH,new pn),v.registerActionHandlerInterceptor(M.name,$.PASTE_CONTENT,new gn)})(),yn.TOOLBAR_BUTTON_KEY="functions";class Cn extends I{constructor(t){super(),this.isFlushable=!0,this.type="DELETE_TABLE_BLOCK",this.tableBlock=t}}class Ln extends K{constructor(){super(...arguments),this.type=wt.CAPTION}static getDefaultStyles(){return{padding:"8px",border:"1px solid #ddd",borderBottom:"none",position:"relative",textAlign:"center",minHeight:"22px"}}clone(){return new Ln}renderClass(t){return(null==t?void 0:t.standalone)?null:"v-rte--extension-table-caption"}renderStyle(t){return(null==t?void 0:t.standalone)?Object.assign(Object.assign({},Ln.getDefaultStyles()),{backgroundColor:this.getCaptionBackgroundColor()}):null}toJSON(){return{caption:!0}}getCaptionBackgroundColor(){return ge.isDarkMode()?gt.dark:gt.light}}class kn extends B{constructor(t,e){super(t),this.dtoName=kn.dtoName,this.type="table-caption";const{autoMatchFormat:n}=e||{autoMatchFormat:!0};n&&this.annotationMap.set(wt.CAPTION,new Ln)}static from(t,e){const n=new kn(t.id,e),s=t.annotations||{},{caption:i}=s,r=function(t,e){var n={};for(var s in t)Object.prototype.hasOwnProperty.call(t,s)&&e.indexOf(s)<0&&(n[s]=t[s]);if(null!=t&&"function"==typeof Object.getOwnPropertySymbols){var i=0;for(s=Object.getOwnPropertySymbols(t);i<s.length;i++)e.indexOf(s[i])<0&&Object.prototype.propertyIsEnumerable.call(t,s[i])&&(n[s[i]]=t[s[i]])}return n}(s,["caption"]);return i&&n.annotationMap.set(wt.CAPTION,new Ln),super.convertAnnotationsToMap(n.annotationMap,Object.assign({},r)),n.children=super.generateBlockChildren(t.children,e,n),n}clone(t){const e=new kn(this.id);return e.children=this.children.map((t=>t.clone(e))),e.parent=t,e.annotationMap=super.cloneAnnotations(),e}getLastNode(){return this.children[this.children.length-1].getLastNode()}isNotEmpty(){return this.children.length>0&&this.children.some((t=>t.isNotEmpty()))}toHtml(t){const e=this.children.map((e=>e.toHtml(t))).join("");return`<caption${super.generateAttributeString(t)}>${e}</caption>`}toJSON(){return Object.assign(Object.assign({},super.toJSON()),{type:this.type,children:this.children.map((t=>t.toJSON()))})}}R.register($.INSERT_CHILDREN_BEFORE,kn.name,new T),R.register($.PASTE_CONTENT,kn.name,new E),kn.dtoName="RTETableCaptionBlock";class Sn extends I{constructor(t){super(),this.type="TOGGLE_TABLE_CAPTION",this.isFlushable=!0,this.shouldEnable=t}}class Tn extends bt{canHandle(t){return t[0]===vt.CAPTION}execute(t,e,n){const s="rte-table-caption"===t[1],i=new Sn(s),r=n.getCaption();if(s){const t=r&&r.isNotEmpty()?r:this.createCaptionBlock(null==r?void 0:r.id);r&&t===r||n.setCaption(t),i.nextFocusNode=t.getLastNode()}else r&&(n.setCaption(null),i.nextFocusNode=n.getFirstNode());this.syncCursorPosition(n,i.nextFocusNode)}syncCursorPosition(t,e){super.syncCursorPosition(t,e)}createCaptionBlock(e){const n={id:null!=e?e:t(),type:"table-caption",children:[{id:t(),type:"paragraph",nodes:[{id:t(),type:"text",text:""}]}]};return kn.from(n)}}class En{static generateTablePropertiesForm(t){const e=t.annotationMap.get(wt.TABLE);let n={borderStyle:"none",borderColor:"",borderWidth:"",backgroundColor:"",width:"",height:"",textAlign:"center"};if(e){const t=e.toJSON().table,{style:s="none",color:i="",width:r=""}=t.border||{style:"none",color:"",width:""};n={backgroundColor:t.backgroundColor||"",width:t.width||"",height:t.height||"",textAlign:t.alignment,borderStyle:s,borderColor:i,borderWidth:r}}return n}updateCursorPosition(t,e){t&&e&&t.host.value.apply(new m(e,0))}}class On extends q{constructor(t){super(),this.isFlushable=!0;const{textAlign:e,width:n,borderWidth:s,borderColor:i,borderStyle:r,height:a}=t,o=function(t,e){var n={};for(var s in t)Object.prototype.hasOwnProperty.call(t,s)&&e.indexOf(s)<0&&(n[s]=t[s]);if(null!=t&&"function"==typeof Object.getOwnPropertySymbols){var i=0;for(s=Object.getOwnPropertySymbols(t);i<s.length;i++)e.indexOf(s[i])<0&&Object.prototype.propertyIsEnumerable.call(t,s[i])&&(n[s[i]]=t[s[i]])}return n}(t,["textAlign","width","borderWidth","borderColor","borderStyle","height"]);this.tableProperties=Object.assign(Object.assign({},o),{alignment:e,border:{style:r,color:i,width:s?me(s):""},width:n?me(n):"",height:a?me(a):""})}toAnnotation(){return new mt(this.tableProperties)}}class An extends En{handle(t,e,n,s){e.apply(new On(n)),this.updateCursorPosition(t,s)}}class In extends En{handle(t,e,n,s){t&&t.host&&(t.flushValue(t.host.value),this.updateCursorPosition(t,s))}}class Rn extends En{handle(t,e,n){const s=new On(n);s.isFlushable=!1,e.apply(s)}}class Nn extends q{constructor(t,e){super(),this.isFlushable=!0,this.cellAnnotation=t,this.originAnnotation=e}toAnnotation(){return this.updateOriginAnnotation(),this.originAnnotation}updateOriginAnnotation(){Object.keys(this.cellAnnotation).forEach((t=>{this.originAnnotation[t]=this.cellAnnotation[t]}))}}class Bn extends Nn{constructor(t,e){super(t,e),this.isFlushable=!0}toAnnotation(){return this.updateOriginAnnotation(),this.originAnnotation}}var Mn=function(t,e){var n={};for(var s in t)Object.prototype.hasOwnProperty.call(t,s)&&e.indexOf(s)<0&&(n[s]=t[s]);if(null!=t&&"function"==typeof Object.getOwnPropertySymbols){var i=0;for(s=Object.getOwnPropertySymbols(t);i<s.length;i++)e.indexOf(s[i])<0&&Object.prototype.propertyIsEnumerable.call(t,s[i])&&(n[s[i]]=t[s[i]])}return n};class jn{static getStyleCollectionFromCell(t){return t.reduce(((t,e)=>{const n=e.getAnnotationByType(wt.CELL);if(t[e.id]={},n){const s=n.toJSON().tableCell,{border:i}=s,r=Mn(s,["border"]),a={};i&&(a.borderStyle=i.style,a.borderColor=i.color,a.borderWidth=i.width),t[e.id]=xe(Object.assign(Object.assign({},r),a))}return t}),{})}static convertStyleMapToFormField(t){const e={};for(const n in t){const s=t[n];for(const t in s)e[t]?e[t].push(s[t]):e[t]=[s[t]]}const n=Object.keys(t).length,s={};for(const t in e){const i=e[t],r=new Set(i);i.length===n&&1===r.size&&(s[t]=i[0])}return s}applyProperties(t,e,n){t.tableSelection.getSelectedCells().forEach((t=>{const s=e[t.id];if(s){const e=this.convertToVegaTableCellAnnotation(Object.assign({},s));this.applyAnnotation(t,e,n)}}))}updateCursorPosition(t,e){t&&e&&t.host.value.apply(new m(e,0))}convertToVegaTableCellAnnotation(t){const{borderStyle:e,borderWidth:n,borderColor:s}=t,i=Mn(t,["borderStyle","borderWidth","borderColor"]),r=xe({style:e,width:n?me(n):"",color:s});return xe(Object.assign(Object.assign({},i),{backgroundColor:i.backgroundColor||"",padding:i.padding?me(i.padding):"",width:i.width?me(i.width):"",height:i.height?me(i.height):"",verticalAlign:i.verticalAlign||"",textAlign:i.textAlign||"",border:r}))}applyAnnotation(t,e,n){const s=t.getAnnotationByType(wt.CELL)||new xt({},!1),i=t instanceof yt?new Bn(e,s):new Nn(e,s);i.isFlushable=n,t.apply(i)}}class Dn extends jn{handle(t,e,n){t&&t.host&&(t.flushValue(t.host.value),this.updateCursorPosition(t,n))}}class _n extends jn{handle(t,e){this.applyProperties(t,e,!1)}}class Hn extends jn{handle(t,e,n){this.applyProperties(t,e,!0),this.updateCursorPosition(t,n)}}class Vn{constructor(t){this.renderContext=t}getTableExtensionContext(){return this.renderContext?g.getExtensionContext(this.renderContext.host):null}}class Pn extends Vn{constructor(t,e){super(e),this.popoverCloseType="none",this.tablePropertiesHandlerMap={save:new In,cancel:new An,change:new Rn},this.cellPropertiesHandlerMap={save:new Dn,cancel:new Hn,change:new _n},this.handleTablePropertiesUpdate=t=>{const e=t.type.replace("vega","").toLowerCase();this.popoverCloseType=e,"change"!==e&&this.hide();const n=this.getTableExtensionContext();n&&this.tablePropertiesHandlerMap[e].handle(n,this.currentTableBlock,t.detail,this.currentFocusNode),"change"===e&&this.popoverRef.show(!0)},this.handleCellPropertiesUpdate=t=>{const e=t.type.replace("vega","").toLowerCase();this.popoverCloseType=e,"change"!==e&&this.hide();const n=this.getTableExtensionContext();n&&this.cellPropertiesHandlerMap[e].handle(n,t.detail,this.currentFocusNode),"change"===e&&this.popoverRef.show(!0)},this.tableColorSchema=t}destroy(){this.selectionAnchorRef&&this.selectionAnchorRef.parentNode&&(lt.removeUniqueObserverFromNode(this.selectionAnchorRef,ue),this.selectionAnchorRef.parentNode.removeChild(this.selectionAnchorRef),this.selectionAnchorRef=null)}async show(t){let e=this.getTableRef();const n=this.getTableExtensionContext();let s=[];if(n&&(s=n.tableSelection.getSelectedCells()),t===vt.CELL&&s.length>1){const t=this.getOrCreateSelectionAnchor(s,e);t&&(e=t)}else t===vt.CELL&&1===s.length&&(e=P.getDOMByEntity(s[0]));this.updateContent(t),this.storeCurrentFocusNode(),we.call(ct.getSubject(this.popoverRef,pe),e),await this.popoverRef.show()}async hide(){await this.popoverRef.hide()}reTarget(t,e){this.getTableRef=e,this.currentTableBlock=t}render(){const t=ve();if(t){const e=t.createElement("vega-popover");e.trigger="click",e.isScreenPosition=!0,e.className="rte-table-dynamic-popover",lt.addUniqueObserverToNode(e,ut,(()=>{const t=this.getTableExtensionContext();"change"===this.popoverCloseType&&t&&t.flushValue(t.host.value)}));const n=t.createElement("div");n.setAttribute("slot","popover"),n.className="rte-table-dynamic-popover-content";const s=t.createElement("vega-rich-text-table-properties");s.colors=this.tableColorSchema,s.type=vt.TABLE,s.setAttribute("type",vt.TABLE),s.addEventListener("vegaCancel",this.handleTablePropertiesUpdate),s.addEventListener("vegaChange",this.handleTablePropertiesUpdate),s.addEventListener("vegaSave",this.handleTablePropertiesUpdate);const i=t.createElement("vega-rich-text-table-properties");return i.colors=this.tableColorSchema,i.type=vt.CELL,i.setAttribute("type",vt.CELL),i.addEventListener("vegaCancel",this.handleCellPropertiesUpdate),i.addEventListener("vegaChange",this.handleCellPropertiesUpdate),i.addEventListener("vegaSave",this.handleCellPropertiesUpdate),n.appendChild(s),n.appendChild(i),e.appendChild(n),this.popoverRef=e,this.tablePropertiesFormRef=s,this.cellPropertiesFormRef=i,e}}updateContent(t){this.popoverCloseType="none";const e=this.getTableExtensionContext();"TABLE"===t?(this.tablePropertiesFormRef.classList.remove("vega-hidden"),this.cellPropertiesFormRef.classList.add("vega-hidden"),this.tablePropertiesFormRef.defaultValue=En.generateTablePropertiesForm(this.currentTableBlock)):"CELL"===t&&(this.cellPropertiesFormRef.classList.remove("vega-hidden"),this.tablePropertiesFormRef.classList.add("vega-hidden"),e&&(this.cellPropertiesFormRef.styleMap=jn.getStyleCollectionFromCell(e.tableSelection.getSelectedCells())),this.cellPropertiesFormRef.defaultValue=jn.convertStyleMapToFormField(this.cellPropertiesFormRef.styleMap)),e&&e.getSelection().removeAllRanges()}storeCurrentFocusNode(){const t=this.getTableExtensionContext();t&&(this.currentFocusNode=t.getSelectedNodes()[0])}getOrCreateSelectionAnchor(t,e){const n=ve();if(n&&e){const s=e.closest(".rich-text-content"),i=s.getBoundingClientRect();let r=Number.POSITIVE_INFINITY,a=Number.NEGATIVE_INFINITY,o=Number.POSITIVE_INFINITY,l=Number.NEGATIVE_INFINITY;t.map((t=>P.getDOMByEntity(t))).filter(rt).forEach((t=>{const e=t.getBoundingClientRect();r=Math.min(r,e.left-i.left),a=Math.max(a,e.right-i.left),o=Math.min(o,e.top-i.top),l=Math.max(l,e.bottom-i.top)}));const c=a-r,h=l-o;return this.selectionAnchorRef=s.querySelector(".rte-table-selection-popover-anchor"),this.selectionAnchorRef||(this.selectionAnchorRef=n.createElement("div"),this.selectionAnchorRef.className="rte-table-selection-popover-anchor",this.selectionAnchorRef.style.position="absolute",this.selectionAnchorRef.style.pointerEvents="none",s.appendChild(this.selectionAnchorRef),lt.addUniqueObserverToNode(this.selectionAnchorRef,ue,(()=>{this.destroy()}))),this.selectionAnchorRef.style.left=`${r}px`,this.selectionAnchorRef.style.top=`${o}px`,this.selectionAnchorRef.style.width=`${c}px`,this.selectionAnchorRef.style.height=`${h}px`,this.selectionAnchorRef}}}class Fn extends Vn{constructor(t){super(t),this.settingHandlers=[new Ct,new Tn,new Lt,new kt,new St],this.handleTableClick=(t,e,n)=>{const s=t.target.closest("table");s===n()&&(t.stopPropagation(),this.reTarget(e,n),this.tableDynamicPopover.hide(),we.call(ct.getSubject(this.popoverRef,pe),s),this.popoverRef.show(!0))},this.syncSelectedCells=()=>{this.tableSettingRef&&(this.tableSettingRef.selectedCells=this.getTableSelectedCells())},this.handleSettingMenuClick=t=>{const e=this.settingHandlers.find((e=>e.canHandle(t.detail)));if(e){const n=this.getTableExtensionContext();n&&e.execute(t.detail,n,this.tableBlock),t.detail[0]===vt.CAPTION&&this.updateTableSettingCaption()}t.detail[0]!==vt.TABLE&&t.detail[0]!==vt.CELL||(this.popoverRef.hide(),this.tableDynamicPopover.show(t.detail[0]))},this.handleTableSettingPopoverShow=()=>{this.syncSelectedCells()},this.tableDynamicPopover=new Pn(Tt.getTableColors(),t)}destroy(){this.tableDynamicPopover.destroy(),this.popoverContainer&&this.popoverContainer.remove()}render(){const t=ve();if(t&&this.renderContext){this.popoverContainer=t.createElement("div"),this.renderContext.host.appendChild(this.popoverContainer);const e=this.tableDynamicPopover.render(),n=t.createElement("vega-popover");n.trigger="click",n.isScreenPosition=!0,n.className="rte-table-setting-popover",lt.addUniqueObserverToNode(n,pt,this.handleTableSettingPopoverShow);const s=t.createElement("div");s.setAttribute("slot","popover");const i=t.createElement("vega-rich-text-table-setting");i.addEventListener("vegaClick",this.handleSettingMenuClick),s.appendChild(i),n.appendChild(s),this.popoverContainer.appendChild(n),this.popoverContainer.appendChild(e),this.popoverRef=n,this.tableSettingRef=i}}updateTableSettingCaption(){const t=this.tableBlock.hasCaption();this.tableSettingRef&&this.tableSettingRef.hasCaption!==t&&(this.tableSettingRef.hasCaption=t)}reTarget(t,e){this.tableSettingRef&&(this.tableBlock=t,this.tableSettingRef.target=e(),this.tableSettingRef.selectedCells=this.getTableSelectedCells(),this.tableDynamicPopover.reTarget(t,e))}getTableSelectedCells(){let t=[];const e=this.getTableExtensionContext();if(e&&e.tableSelection){const{tableSelection:n}=e;t=n.getSelectedCells()}return t}}class zn extends b{doRender(t,e,n){let s;const i=this.renderTable(t,e,(t=>s=t));this.renderTableToolbar(n);const r=e.getAnnotationByType(wt.TABLE),a=n.editable?[t("vega-rich-text-table-selection-widget",{onVegaRemove:t=>{t.stopPropagation(),this.handleTableRemove(e,s)},onClick:t=>{this.tableToolbar&&this.tableToolbar.handleTableClick(t,e,(()=>s))},onMouseLeave:()=>{this.tableToolbar&&this.tableToolbar.syncSelectedCells()}},[t("div",{contentEditable:!0,ref:this.useRef(e)},[i])])]:[i],o={};if(r){const t=r.renderStyle();o.width=t.width,o.margin=t.margin}const l=t("div",{class:"v-rte--extension-table-container",style:Object.assign({},o)},a);return l.childrenContainerGetter=()=>i,l}destroy(){this.destroyTableToolbar()}injectRTEScopeStyles(){return".v-rte--extension-table-container{display:table}table.v-rte--extension-table{border-collapse:collapse}table.v-rte--extension-table th,table.v-rte--extension-table td{border:1px solid #ddd;padding:12px;text-align:left;vertical-align:middle;min-width:55px;box-sizing:border-box;position:relative}table.v-rte--extension-table th{background-color:#f2f2f2}.rte-table-setting-popover,.rte-table-dynamic-popover{display:block}table.v-rte--extension-table .v-rte-table-cell-focused::after,table.v-rte--extension-table .v-rte-table-cell-selected::after{content:'';position:absolute;top:0;left:0;right:0;bottom:0;pointer-events:none;background-color:rgba(158, 207, 250, 0.3)}table.v-rte--extension-table:has(.v-rte-table-cell-selected){caret-color:transparent}table.v-rte--extension-table:has(.v-rte-table-cell-selected) ::selection{background-color:transparent}table.v-rte--extension-table:has(.v-rte-table-cell-selected) ::-moz-selection{background-color:transparent}.v-rte--extension-table-caption{padding:8px;border:1px solid #ddd;border-bottom:none;background-color:rgba(var(--v-bg-table-header, 240, 243, 247, 1));position:relative;display:table-caption;caption-side:top;min-height:22px;text-align:center;word-break:break-word;overflow-wrap:break-word}.v-rte--extension-table-caption.showPlaceholder::before{position:absolute;left:0;right:0;content:attr(data-placeholder);font-family:'Inter', sans-serif;font-size:16px;font-weight:400;line-height:24px;letter-spacing:0;color:rgba(var(--v-text-input-placeholder, 176, 180, 181, 1));text-align:center;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}"}renderTable(t,e,n){var s;return t("table",Object.assign(Object.assign({key:e.id},null===(s=e.getCustomAttributesAnnotation())||void 0===s?void 0:s.render()),{style:e.getStyles(),class:e.getClasses(),ref:t=>{this.useRef(e)(t),n(t)}}))}handleTableRemove(t,e){t.apply(new Cn(t)),this.destroySelectionAnchor(e)}destroySelectionAnchor(t){const e=t.closest(".rich-text-content");if(e){const t=e.querySelector(".rte-table-selection-popover-anchor");t&&de.notify(ct.getSubject(t,ue),{host:t})}}renderTableToolbar(t){t.editable?this.tableToolbar||(this.tableToolbar=new Fn(t),this.tableToolbar.render()):this.destroyTableToolbar()}destroyTableToolbar(){var t;null===(t=this.tableToolbar)||void 0===t||t.destroy(),this.tableToolbar=null}}class $n extends b{doRender(t,e){return t("thead",{key:e.id,ref:this.useRef(e)})}}class Kn extends b{doRender(t,e){return t("tr",{key:e.id,ref:this.useRef(e)})}}class qn extends b{doRender(t,e,n){return this.renderByCellType(t,e,n,"td")}renderByCellType(t,e,n,s){var i;return t(s,Object.assign(Object.assign(Object.assign({key:`${e.id}-${s}`,ref:this.useRef(e)},null===(i=e.getCustomAttributesAnnotation())||void 0===i?void 0:i.render()),{style:e.getStyles(n),class:e.getClasses()}),n.editable?this.onSelectionListeners(e,n):void 0))}onSelectionListeners(t,e){return{onMouseDown:t=>{const n=i(t.target,"table"),s=i(t.currentTarget,"table")===n,r=t.target.closest("td, th");if(s&&r){const t=this.getExtensionContext(e.host);t&&t.tableSelection.focusCell(r)}},onMouseMove:n=>{n.stopPropagation(),n.preventDefault();const s=this.getExtensionContext(e.host);s&&s.tableSelection.dragOver(t)},onMouseUp:()=>{const t=this.getExtensionContext(e.host);t&&t.tableSelection.endDrag()}}}}class Wn extends b{doRender(t,e){return t("tbody",{key:e.id,ref:this.useRef(e)})}}class Un extends qn{doRender(t,e,n){return super.renderByCellType(t,e,n,"th")}}class Gn extends I{constructor(t,e){super(),this.type="INSERT_TABLE_BLOCK",this.rowCount=t,this.columnCount=e}}class Zn extends Vn{constructor(){super(...arguments),this.hoveredRows=1,this.hoveredCols=1}render(t,e){return t("vega-popover",{trigger:"click",alignment:"start",placement:"bottom",showArrow:!1,isScreenPosition:!0,ref:t=>{t&&(this.tablePickerPopoverRef=t,lt.addUniqueObserverToNode(t,pt,(()=>{this.resetPicker()})))}},[t("div",{slot:"popover"},[this.generatePickerStyles(t),this.generateTableSizeGrid(t)]),t("div",{slot:"popover-content"},e)])}generateTableSizeGrid(t){const e=[];for(let n=1;n<=10;n++)for(let s=1;s<=10;s++)e.push(t("button",{class:"rte-table-picker__cell","data-row":n,"data-col":s,onMouseenter:this.handlePickerCellHover.bind(this,n,s),onClick:this.handlePickerClick.bind(this,n,s)},[]));return t("div",{class:"rte-table-picker"},[t("div",{class:"rte-table-picker__grid",ref:t=>{t&&(this.tablePickerGridRef=t)},style:{gridTemplateColumns:"repeat(10, 16px)",gridTemplateRows:"repeat(10, 16px)"}},e),t("div",{class:"rte-table-picker__hint"},t("vega-hint",{ref:t=>{t&&(this.selectedHintRef=t)}},[`${this.hoveredRows} × ${this.hoveredCols}`]))])}generatePickerStyles(t){return t("style",{},["\n.rte-table-picker__grid { display: grid; gap: 2px; }\n.rte-table-picker__cell {\n box-sizing: border-box;\n border: 1px solid #ccc;\n background-color: transparent;\n cursor: pointer;\n}\n.rte-table-picker__cell:hover {\n background-color: #cae1fc;\n}\n.rte-table-picker__cell.active {\n background-color: #cae1fc;\n}\n.rte-table-picker__hint {\n text-align: center;\n}\n "])}createTable(t,e){const n=this.getTableExtensionContext();if(n){const{host:s,getSelectedNodes:i}=n,r=i()[0],a=new Gn(t,e);r?r.parent&&r.parent.apply(a):s.value.apply(a),a.nextFocusNode&&s.value.apply(new m(a.nextFocusNode,1))}}handlePickerClick(t,e){this.createTable(t,e),this.tablePickerPopoverRef.hide()}handlePickerCellHover(t,e){this.hoveredRows=t,this.hoveredCols=e,Array.from(this.tablePickerGridRef.children).forEach((t=>{const e=Number(t.dataset.row),n=Number(t.dataset.col);e<=this.hoveredRows&&n<=this.hoveredCols?t.classList.add("active"):t.classList.remove("active")})),this.selectedHintRef.textContent=`${this.hoveredRows} × ${this.hoveredCols}`}resetPicker(){this.handlePickerCellHover(1,1)}}class Qn extends Ze{render(t,e){return new Zn(e).render(t,super.renderButton(t,e,{showArrowIcon:!0,icon:"rte-table",tooltip:{text:"Insert table"}}))}isDisabled(t){let e=super.isDisabled(t);const n=this.getExtensionContext(t.host);if(n){const{host:t,getSelectedNodes:s}=n,i=s()[0];let r=!0;i&&(r=R.canHandle("INSERT_TABLE_BLOCK",i.parent)&&R.canHandle($.INSERT_CHILDREN_AFTER,i.parent.parent)),e=t.disabled||!r}return e}handleButtonClick(){}handleDropdownClick(){}}at.register({"rte-table":{icon:'<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 512 512">\x3c!--! Font Awesome Pro 6.3.0 by @fontawesome - https://fontawesome.com License - https://fontawesome.com/license (Commercial License) Copyright 2023 Fonticons, Inc. --\x3e<path fill="currentColor" d="M48 264V160H232V264H48zm0 48H232V432H64c-8.8 0-16-7.2-16-16V312zM280 432V312H464V416c0 8.8-7.2 16-16 16H280zM464 264H280V160H464V264zM64 32C28.7 32 0 60.7 0 96V416c0 35.3 28.7 64 64 64H448c35.3 0 64-28.7 64-64V96c0-35.3-28.7-64-64-64H64z"/></svg>'}});class Jn extends D{handleAction(t,e){const n=this.createTableBlock(t.rowCount,t.columnCount),s=super.createNewParagraph(""),i=this.getReferenceBlock(e);i?i.parent.apply(new _(i,n,s)):e.apply(new H([n,s])),t.nextFocusNode=n.getFirstNode()}createTableBlock(e,n){const s=Math.max(e,1),i=Math.max(n,1);return Et.from({id:t(),type:"table-block",children:[Ot(s,i)]})}getReferenceBlock(t){if(!(t instanceof x))return t}}class Yn extends un{canIntercept(t,e){const n=e.parent;return n instanceof At&&1===n.children.length&&0===t.startOffset}intercept(){}}class Xn extends D{handleAction(t){const e=t.tableBlock,n=e.parent,s=super.getRootContent(e),i=super.createNewParagraph("");n.apply(new _(e,i)),n.apply(new W(e)),s&&s.apply(new m(i.getLastNode()))}}class ts extends un{canIntercept(t,e){return t.entityToBeRemoved&&1===e.children.length}intercept(e,n,s){if(!(n.entityToBeRemoved instanceof M)){const e=M.from({id:t(),type:"paragraph",nodes:[{id:t(),type:"text",text:""}]});return s.children=[],void s.apply(new H([e]))}n.entityToBeRemoved.apply(new H([new N(t(),"",n.entityToBeRemoved)]))}}class es extends b{doRender(t,e){return t("caption",{key:e.id,ref:this.useRef(e),style:e.getStyles(),class:[e.getClasses(),e.isNotEmpty()?null:"showPlaceholder"].filter(rt).join(" "),"data-placeholder":"Enter table caption"})}}class ns extends D{getRowsMaxCellCount(t){let e=0;for(const n of t){let t=0;for(const e of n.children)t+=e.colSpan;e=Math.max(e,t)}return e}getRowCellStartCols(t){const e=this.getRowsMaxCellCount(t),n=new Array(t.length),s=new Array(e).fill(0);for(let e=0;e<t.length;e++){const i=t[e].children,r=new Array(i.length);let a=0;for(let t=0;t<i.length;t++){const e=i[t];for(;a<s.length&&s[a]>0;)a++;r[t]=a;const n=Math.max(e.colSpan,ns.DEFAULT_CELLSPAN);if(e.rowSpan>ns.DEFAULT_CELLSPAN)for(let t=0;t<n;t++){const n=a+t;n<s.length&&(s[n]=Math.max(s[n],e.rowSpan))}a+=n}n[e]=r;for(let t=0;t<s.length;t++)s[t]>0&&s[t]--}return n}updateCellSpan(t,e,n){const s=t.getCustomAttributesAnnotation();if(n<=ns.DEFAULT_CELLSPAN){if(s){const n=s.render();delete n[e],t.annotationMap.set(U.CUSTOM_ATTRIBUTE,new G(n))}}else{const i=s?s.render():{};i[e]=n.toString(),t.annotationMap.set(U.CUSTOM_ATTRIBUTE,new G(i))}}insertMovedCells(t,e,n){t.forEach(((t,s)=>{const i=e[s];if(i){const e=n[s]||[];t.sort(((t,e)=>t.logicalStartCol===e.logicalStartCol?e.cellIndex-t.cellIndex:e.logicalStartCol-t.logicalStartCol)),t.forEach((t=>{const{cell:n,logicalStartCol:s}=t;if(0===i.children.length)return i.apply(new H([n])),void(e[0]=s);const r=e.findIndex((t=>t>=s));-1===r?(i.apply(new _(i.children[i.children.length-1],n)),e.push(s)):0===r?(i.apply(new F(i.children[0],n)),e.unshift(s)):(i.apply(new F(i.children[r],n)),e.splice(r,0,s))}))}}))}splitRowsBySection(t){const e=[],n=[];return t.forEach((t=>{t.parent instanceof It?e.push(t):n.push(t)})),[e,n]}buildSelectedIndices(t,e){return new Set(t.map((t=>e.indexOf(t))).filter((t=>t>=0)))}intersectsRemovalRange(t,e,n,s){return t<=s&&e>=n}countRemovedRows(t,e,n){let s=0;for(let i=t;i<=e;i++)n.has(i)&&s++;return s}getHeadCellLength(t){let e=0;for(let n=0;n<t.children.length;n++){const s=t.children[n];if(!(s instanceof yt))break;e+=s.colSpan}return e}getTheStartSpanCell(t,e,n,s){const i={rowIndex:n};for(let r=n;r>=0;r--){const n=e[r];if(n.includes(s)){i.cell=t[r].children[n.indexOf(s)],i.rowIndex=r;break}}return i}getDefaultCellBlockTemplate(e,n,s=1){const i=xe({colspan:n>1?n.toString():null,rowspan:s>1?s.toString():null}),r=t(),a={id:r,type:e,children:[{id:`${r}-p`,type:"paragraph",nodes:[{id:`${r}-p-t`,type:"text",text:""}]}]};return Object.keys(i).length>0&&(a.annotations={customAttribute:i}),a}getSortedValuesByNumericKey(t){return Array.from(t.entries()).sort((([t],[e])=>t-e)).map((([,t])=>t))}}ns.DEFAULT_CELLSPAN=1;class ss extends ns{handleAction(t,e){const{rowsToBeRemoved:n}=t,s=this.getFutureFocusRow(n[0],n[n.length-1],e),i=this.splitRowsBySection(n);if(this.removeRows(i[0]),this.removeRows(i[1]),s){const t=this.getRootContent(e);if(t){const e=s.getLastNode();t.apply(new m(e,e.getRangeEndOffset()))}}}removeRows(t){if(0===t.length)return;const e=t[0].parent,n=e.children,s=this.buildSelectedIndices(t,n);if(s.size>0){if(n.length===t.length)return void e.parent.apply(new W(e));const i=Math.min(...s),r=Math.max(...s),a=this.getRowCellStartCols(n),o=this.collectCellsToMove(n,a,s,i,r);this.insertMovedCells(o,n,a),t.forEach((t=>{t.parent.apply(new W(t))}))}}collectCellsToMove(t,e,n,s,i){const r=new Map,a=t.length;for(let o=0;o<a;o++){const l=t[o],c=l.children.length;for(let t=0;t<c;t++){const c=l.children[t],h=c.rowSpan;if(h<=ns.DEFAULT_CELLSPAN)continue;const d=o+h-1;if(!this.intersectsRemovalRange(o,d,s,i))continue;const u=h-this.countRemovedRows(o,d,n);if(o<s&&d>=s)this.updateCellSpan(c,"rowspan",u);else if(o>=s&&d>i){const s=i+1;if(s<a&&!n.has(s)){const n=e[o][t];r.has(s)||r.set(s,[]),r.get(s).push({cell:this.cloneCellWithRowSpan(c,u),newRowSpan:u,cellIndex:t,logicalStartCol:n})}}}}return r}cloneCellWithRowSpan(t,e){const n=t.clone(t.parent);return this.updateCellSpan(n,"rowspan",e),n}getFutureFocusRow(t,e,n){const s=n.children.filter((t=>t instanceof It||t instanceof Rt)).flatMap((t=>t.children)),i=s.indexOf(t),r=s.indexOf(e);return s[i-1]?s[i-1]:s[r+1]?s[r+1]:void 0}}class is{constructor(){this.dragging=!1,this.anchorCell=null,this.selectedCells=new Set,this.syncRTESelectionWithDebounce=ye(this.syncRTESelection,100,this),this.handleSelectionChangeWithDebounce=ye(this.handleSelectionChange,10,this),this.filterSelectedCell=(t,e)=>{const n=new Set;if(t.intersectsNode(e)){if(e.nodeType===Node.TEXT_NODE){const t=P.getEntityByDOM(e.parentElement);if(t){const e=Nt(t.parent,At);if(e)return n.add(e),Array.from(n)}}e.childNodes.forEach((e=>this.filterSelectedCell(t,e).forEach((t=>{n.add(t)}))))}return Array.from(n)},this.updateSelectedStyles=(t,e)=>{const n=1===e?"v-rte-table-cell-focused":"v-rte-table-cell-selected",s=P.getDOMByEntity(t);s&&s.classList.add(n)},this.handleDocMouseUp=()=>{this.endDrag();const t=ve();t&&t.removeEventListener("mouseup",this.handleDocMouseUp)},this.handleContentClick=()=>{this.clearSelection();const t=this.context.host.shadowRoot.querySelector(".rich-text-editor-container");t&&t.removeEventListener("mousedown",this.handleContentClick,!0)}}static computeRectRange(t,e){const n=t.parent.parent.parent;if(n!==e.parent.parent.parent)return[];const s=[];n.children.forEach((t=>{t.children.forEach((t=>s.push(t)))}));const{grid:i,cellMeta:r}=is.buildCellGrid(s),a=r.get(t),o=r.get(e);if(!a||!o)return[];const l=a.row+a.rowSpan-1,c=a.col,h=a.col+a.colSpan-1,d=o.row+o.rowSpan-1,u=o.col,p=o.col+o.colSpan-1,f=Math.min(a.row,o.row),w=Math.max(l,d),g=Math.min(c,u),b=Math.max(h,p),v=new Set;for(let t=f;t<=w;t++){const e=i[t];for(let t=g;t<=b;t++){const n=e[t];n&&v.add(n)}}return Array.from(v)}static getCellSpan(t){let e=1,n=1;const s=t.getAnnotationByType(U.CUSTOM_ATTRIBUTE);if(s&&s.customAttribute){const t=s.customAttribute;t.rowSpan&&(e=parseInt(t.rowSpan,10)),t.colSpan&&(n=parseInt(t.colSpan,10))}if(1===e&&1===n){const s=P.getDOMByEntity(t);if(s){const t=s.getAttribute("rowSpan"),i=s.getAttribute("colSpan");t&&(e=parseInt(t,10)),i&&(n=parseInt(i,10))}}return{rowSpan:Number.isFinite(e)&&e>0?e:1,colSpan:Number.isFinite(n)&&n>0?n:1}}static buildCellGrid(t){const e=[],n=new Map;for(let s=0;s<t.length;s++){const i=t[s];e[s]||(e[s]=[]);let r=0;for(let t=0;t<i.children.length;t++){const a=i.children[t];for(;e[s][r];)r+=1;const{rowSpan:o,colSpan:l}=is.getCellSpan(a);n.set(a,{row:s,col:r,rowSpan:o,colSpan:l});for(let t=0;t<o;t++){const n=s+t;e[n]||(e[n]=[]);for(let t=0;t<l;t++)e[n][r+t]=a}r+=l}}return{grid:e,cellMeta:n}}destroy(){this.removeSelectionChangeListener()}init(t){this.context=t,this.addSelectionChangeListener()}setSelectedCells(t){const e=Array.from(this.selectedCells)[0]||t[0];this.updateSelectedCells(t),this.emitCellSelectionChange(e,t)}getSelectedCells(){return Array.from(this.selectedCells)}focusCell(t){const e=P.getEntityByDOM(t);e&&(this.anchorCell=e,this.setSelectedCells([e]),this.addListeners())}dragOver(t){if(!this.anchorCell)return;const e=is.computeRectRange(this.anchorCell,t);e.length>1&&this.startDrag(),this.dragging&&(this.preventTextSelection(e),this.updateSelectedCells(e,{debounceSync:!0}))}endDrag(){this.dragging=!1,this.anchorCell=null}emitCellSelectionChange(t,e){const n=Nt(t,Et);if(n){const t=P.getDOMByEntity(n);t&&de.notify(ct.getSubject(t,fe),{host:t,detail:e})}}clearSelection(){this.selectedCells.forEach((t=>{const e=P.getDOMByEntity(t);e&&e.classList.remove("v-rte-table-cell-selected","v-rte-table-cell-focused")})),this.selectedCells.clear()}addSelectionChangeListener(){const t=ve();t&&t.addEventListener("selectionchange",this.handleSelectionChangeWithDebounce)}removeSelectionChangeListener(){const t=ve();t&&t.removeEventListener("selectionchange",this.handleSelectionChangeWithDebounce)}handleSelectionChange(){if(this.dragging)return void this.syncRTESelectionWithDebounce();const t=this.context.getSelection();if(t.rangeCount>0){const e=t.getRangeAt(0),n=e.commonAncestorContainer;if(i(n,"table")){const t=this.filterSelectedCell(e,n);this.setSelectedCells(t)}}}startDrag(){this.dragging=!0}updateSelectedCells(t,{debounceSync:e}={}){this.clearSelection(),t.forEach((e=>{this.selectedCells.add(e),this.updateSelectedStyles(e,t.length)})),e?this.syncRTESelectionWithDebounce():this.syncRTESelection()}syncRTESelection(){const t=Array.from(this.selectedCells),e=t.flatMap((t=>t.children.flatMap((t=>t.children.flatMap((t=>{if(t instanceof V)return t})))))).filter(rt);t.length>1&&this.context.setSelectedNodes(e,{startNode:e[0],endNode:e[e.length-1],startOffset:0,endOffset:e[e.length-1].getRangeEndOffset()})}preventTextSelection(t){const e=this.context.getSelection();if(e.removeAllRanges(),t.length>0){const n=P.getDOMByEntity(t[0]);if(n){const t=new Range;t.setStart(n,0),t.setEnd(n,0),e.addRange(t)}}}addListeners(){const t=ve();t&&t.addEventListener("mouseup",this.handleDocMouseUp);const e=this.context.host.shadowRoot.querySelector(".rich-text-editor-container");e&&e.addEventListener("mousedown",this.handleContentClick,!0)}}class rs extends ns{handleAction(t,e){const{selectedRows:n}=t,[s,i]=this.splitRowsBySection(n);i.length>0?this.convertToHeaderRows(i,e):this.revertToBodyRows(s,e);const r=this.getRootContent(e);if(r){const t=n[0].getFirstNode();t&&r.apply(new m(t,0))}}convertToHeaderRows(e,n){let s=n.children.find((t=>t instanceof It));const i=e[0].parent;s||(s=It.from({id:t(),type:"table-head",children:[]}),n.apply(new F(i,s)));const r=i.children.indexOf(e[e.length-1]),a=i.children.slice(0,r+1),o=this.buildSelectedIndices(a,i.children),l=Math.min(...o),c=Math.max(...o);if(o.size>0){if(o.size<i.children.length){const t=this.getRowCellStartCols(i.children),e=this.collectCellsToMove(i.children,t,o,l,c);this.insertMovedCells(e,i.children,t)}this.convertBodyRowsToHeaderRows(i,s,a)}}convertBodyRowsToHeaderRows(t,e,n){for(let e=0;e<n.length;e++){const s=n[e];s.children=s.children.map((t=>this.convertTdToTh(t))),t.apply(new W(s))}e.apply(new H(n))}revertToBodyRows(e,n){let s=n.children.find((t=>t instanceof Rt));const i=e[0].parent;s||(s=Rt.from({id:t(),type:"table-body",children:[]}),n.apply(new _(i,s)));const r=i.children.indexOf(e[0]),a=i.children.slice(r),o=this.buildSelectedIndices(a,i.children);if(o.size>0){const t=this.getRowCellStartCols(i.children),e=this.collectCellsToMove(i.children,t,o,Math.min(...o),Math.max(...o));this.insertMovedCells(e,i.children,t),this.convertHeadRowsToBodyRows(i,s,a)}}convertHeadRowsToBodyRows(t,e,n){const s=e.children[0],i=this.getRowCellStartCols(n);for(let r=0;r<n.length;r++){const a=n[r];t.apply(new W(a));const o=s?this.getHeadCellLength(s):0;a.children=this.convertThToTd(a,i[r],o),s&&e.apply(new F(s,a))}s||e.apply(new H(n))}collectCellsToMove(t,e,n,s,i){const r=new Map,a=t.length;for(let o=0;o<a;o++){const l=t[o],c=l.children.length;for(let t=0;t<c;t++){const c=l.children[t],h=c.rowSpan;if(h<=ns.DEFAULT_CELLSPAN)continue;const d=o+h-1;if(!this.intersectsRemovalRange(o,d,s,i))continue;const u=this.countRemovedRows(o,d,n),p=h-u;if(o<s&&d>=s){this.updateCellSpan(c,"rowspan",p);const i=s;if(i<a&&n.has(i)){const n=e[o][t];r.has(i)||r.set(i,[]),r.get(i).push({cell:this.cloneCellWithRowSpan(c,u),newRowSpan:u,cellIndex:t,logicalStartCol:n})}}else if(o>=s&&d>i){this.updateCellSpan(c,"rowspan",u);const s=i+1;if(s<a&&!n.has(s)){const n=e[o][t];r.has(s)||r.set(s,[]),r.get(s).push({cell:this.cloneCellWithRowSpan(c,p),newRowSpan:p,cellIndex:t,logicalStartCol:n})}}}}return r}convertTdToTh(t){if(t instanceof yt)return t;const e=yt.from(t.toJSON());return e.parent=t.parent,e}convertThToTd(t,e,n){return t.children.map(((s,i)=>{let r=s;const a=e[i]<n,o=s.toJSON();return r=a?s:At.from(this.deleteHeadCellDefaultBackground(o)),r.parent=t,r}))}cloneCellWithRowSpan(e,n){const s=e.clone(e.parent);s.id=t(),s.children=[];const i=this.createNewParagraph("");return i&&s.apply(new H([i])),this.updateCellSpan(s,"rowspan",n),s}deleteHeadCellDefaultBackground(t){var e;if(t&&t.annotations&&t.annotations.customStyle){delete t.annotations.tableCell;const n=t.annotations.customStyle.backgroundColor,s=Bt.getDefaultBackgroundColor();!n||n!==s&&(null===(e=r(n))||void 0===e?void 0:e.toUpperCase())!==s||delete t.annotations.customStyle.backgroundColor}return t}}class as extends Mt{handleAction(t,e){const{insertDirection:n,tableCellInsertRange:s}=t,i=new Set(s.map((t=>t.id))),r=jt(e),a=Dt(r),[o,l]=this.getBoundaryCellColumnRange(s,r,a),c=n===Pt.LEFT?o:l+1,h=this.hasSelectedCellInsideTargetColumn(r,a,c,i),d=new Set;r.forEach(((t,s)=>{if(d.has(s))return;const o=this.findExpandableCell(t,s,c,a,n,i,h);if(o){const t=o.rowSpan;if(_t(o,o.colSpan+1,o.rowSpan,e,!0),t>1)for(let e=1;e<t;e++)d.add(s+e);return}const l=this.findInsertPosition(t,s,c,a,r);if(l){const e=this.generateTableCell(l.templateCell);t.apply(l.before?new F(l.anchorCell,e):new _(l.anchorCell,e))}}))}findExpandableCell(t,e,n,s,i,r,a){const o=s[e],l=t.children.reduce(((t,e)=>t+(r.has(e.id)?1:0)),0);for(const c of t.children){const t=o.indexOf(c.id),h=t+c.colSpan,d=n===h,u=e+c.rowSpan>=s.length,p=r.has(c.id),f=n>t&&n<h;if(i===Pt.LEFT?f:f&&(!p||!u)||d&&c.colSpan>1&&p&&!u&&1===l&&!a)return c}return null}hasSelectedCellInsideTargetColumn(t,e,n,s){for(let i=0;i<t.length;i++){const r=t[i],a=e[i];for(const t of r.children){if(!s.has(t.id))continue;const e=a.indexOf(t.id),i=e+t.colSpan;if(n>e&&n<i)return!0}}return!1}findInsertPosition(t,e,n,s,i){const r=s[e];let a=t.children[0];if(n>=0&&n<r.length){const t=Ht(i,r[n]);t&&(a=t)}let o=0;for(let e=0;e<t.children.length;e++){const s=t.children[e];for(;o<r.length&&r[o]!==s.id;)o++;if(o>=n)return{anchorCell:s,templateCell:a,before:!0};const i=o+s.colSpan;if(i>n||e===t.children.length-1)return{anchorCell:s,templateCell:a,before:!1};o=i}return null}generateTableCell(t){return t instanceof yt?yt.from(Vt(t.type)):At.from(Vt(t.type))}}class os extends Mt{handleAction(t,e){const n=jt(e),s=Dt(n),[i,r]=this.getBoundaryCellColumnRange(t.tableCellDeleteRange,n,s),a=Math.max(n.indexOf(t.tableCellDeleteRange[t.tableCellDeleteRange.length-1].parent),0),{coveredCellIds:o,coveredCells:l,adjustmentCellInfo:c}=this.getDeleteCellsInfo(n,i,r,s),h=this.findNextFocusableCell(n,s,i,r,o,a);this.deleteCells(l,c,e);const d=this.getRootContent(e),u=$t(h);d&&u&&d.apply(new m(u))}getDeleteCellsInfo(t,e,n,s){const i=[],r=new Set,a=[],o=Ft(s);return t.forEach((t=>{t.children.forEach((t=>{const s=o.get(t.id);if(void 0===s)return;const{colSpan:l,rowSpan:c}=Kt(t),h=this.getColumnOverlapCount(s,l,e,n);if(h<=0)return;if(h===l)return i.push(t),void r.add(t.id);const d=Math.max(1,l-h);a.push({cell:t,nextColSpan:d,rowSpan:c})}))})),{coveredCells:i,coveredCellIds:r,adjustmentCellInfo:a}}findNextFocusableCell(t,e,n,s,i,r){for(let a=0;a<t.length;a++){const o=this.findFocusableCellIdInGridRow(e[(r+a)%t.length],n,s,i);if(!o)continue;const l=Ht(t,o);if(l)return l}return null}findFocusableCellIdInGridRow(t,e,n,s){for(let e=n+1;e<t.length;e++){const n=t[e];if(n&&!s.has(n))return n}for(let n=e-1;n>=0;n--){const e=t[n];if(e&&!s.has(e))return e}return null}deleteCells(t,e,n){t.forEach((t=>{t.parent.apply(new W(t))}));const s=new Set;e.forEach((({cell:t,nextColSpan:e,rowSpan:i})=>{s.add(t.id),_t(t,e,i,n)})),this.normalizeRemainingCellSpans(n,s)}normalizeRemainingCellSpans(t,e){jt(t).forEach((n=>{n.children.forEach((n=>{const{colSpan:s,rowSpan:i}=Kt(n);if(e.has(n.id)){const e=zt(t);if(!(i>1&&s===e))return}_t(n,s,i,t)}))}))}getColumnOverlapCount(t,e,n,s){const i=t+e-1,r=Math.max(t,n),a=Math.min(i,s);return r<=a?a-r+1:0}}class ls extends I{constructor(t){super(),this.isFlushable=!0,this.type="CREATE_SEGMENT_TABLE_CELL",this.payload=t}}class cs extends D{handleAction(t,e){const{table:n,sourceCell:s,colSpan:i,cellType:r,keepSourceContent:a}=t.payload,o=a?this.convertCellType(s,r):qt(r);_t(o,i,s.rowSpan,n),e.apply(new F(s,o))}convertCellType(t,e){return"table-head-cell"===e?yt.from(t.toJSON()):At.from(t.toJSON())}}class hs extends D{handleAction(t,e){const{cell:n,targetCellType:s}=t.payload,i="table-head-cell"===s?yt.from(n.toJSON()):At.from(n.toJSON());e.apply(new F(n,i)),e.apply(new W(n))}}class ds extends D{handleAction(t,e){const{table:n,cell:s,col:i,cellStartCol:r,endCol:a,targetCellType:o}=t.payload,l=r+s.colSpan-1,c=i>r?i-r:0,h=Math.min(a,l),d=h-i+1,u=l-h;c>0&&e.apply(new ls({table:n,sourceCell:s,colSpan:c,cellType:s.type,keepSourceContent:!0})),e.apply(new ls({table:n,sourceCell:s,colSpan:d,cellType:o,keepSourceContent:0===c})),u>0&&e.apply(new ls({table:n,sourceCell:s,colSpan:u,cellType:s.type,keepSourceContent:0===c&&d===s.colSpan})),e.apply(new W(s))}}class us extends Mt{handleAction(t,e){const n=jt(e),s=Dt(n),i=Ft(s),[r,a]=this.getBoundaryCellColumnRange(t.tableCellSelectRange,n,s),o=[],l=new Set;n.forEach((t=>{t.children.forEach((t=>{const e=i.get(t.id);void 0!==e&&e>=r&&e<=a&&!l.has(t.id)&&(l.add(t.id),o.push(t))}))})),t.selectCellCallback(o)}}class ps extends un{canIntercept(t){return t.childrenToBeInserted.some((t=>!(t instanceof At)))}intercept(){}}class fs extends D{handleAction(t,e){const{targetCell:n,mergeCells:s,colSpan:i,rowSpan:r,direction:a}=t;this.mergeContentToTargetCell(n,s),_t(n,i,r,e),this.deleteOtherSelectedCells(s,n),a!==Wt.MERGE_CELL_LEFT&&a!==Wt.MERGE_CELL_RIGHT&&r>1&&this.clearRowSpanIfUniformAcrossRow(n,e,r);const o=this.getRootContent(e),l=$t(n);o&&l&&o.apply(new m(l))}mergeContentToTargetCell(t,e){const n=e.flatMap((t=>t.children)),s=n.filter((t=>t.isNotEmpty()));t.children=(s.length>0?s:[n[0]]).map((e=>e.clone(t)))}deleteOtherSelectedCells(t,e){t.forEach((t=>{t!==e&&t.parent.apply(new W(t))}))}clearRowSpanIfUniformAcrossRow(t,e,n){const s=t.parent.parent.children,i=Dt(s),r=[];for(let e=0;e<i.length;e++)i[e].includes(t.id)&&r.push(e);if(r.length>1){const t=r[0],a=t+n-1,o=new Set;let l=Number.POSITIVE_INFINITY;for(let e=0;e<i[0].length;e++){let n=i[t][e],s=1,r=!1;for(let c=t+1;c<=a;c++)i[c][e]!==n?(s>1&&(r=!0,l=Math.min(l,s),o.add(n)),s=1,n=i[c][e]):s++;if(s<2&&!r){o.clear();break}s>1&&(l=Math.min(l,s),o.add(n))}o.size>0&&s.forEach((t=>{t.children.forEach((t=>{if(o.has(t.id)){const{rowSpan:n,colSpan:s}=Kt(t);_t(t,s,n-l+1,e)}}))}))}}}class ws extends C{canHandle(t,e){const n=t[e];return n&&"TABLE"===n.tagName?1:0}handle(e,n){return Et.from({id:t(),type:"table-block",annotations:L.generate(Et,e[0],n),children:[]},n)}appendChildBlocks(t,e){t.children=e.map((e=>(e.parent=t,e)))}shouldProceedToElementChildren(){return!0}}class gs extends y{canHandle(t,e){const n=t[e];return n&&"THEAD"===n.tagName?1:0}handle(e,n){return It.from({id:t(),type:"table-head",annotations:L.generate(It,e[0],n),children:[]},n)}appendChildBlocks(t,e){t.children=e.map((e=>(e.parent=t,e)))}shouldProceedToElementChildren(){return!0}}class bs extends y{canHandle(t,e){const n=t[e];return n&&"TBODY"===n.tagName?1:0}handle(e,n){return Rt.from({id:t(),type:"table-body",annotations:L.generate(Rt,e[0],n),children:[]},n)}appendChildBlocks(t,e){t.children=e.map((e=>(e.parent=t,e)))}shouldProceedToElementChildren(){return!0}}class vs extends y{canHandle(t,e){const n=t[e];return n&&"TR"===n.tagName?1:0}handle(e,n){return Ut.from({id:t(),type:"table-row",annotations:L.generate(Ut,e[0],n),children:[]},n)}appendChildBlocks(t,e){t.children=e.map((e=>(e.parent=t,e)))}shouldProceedToElementChildren(){return!0}}class ms extends y{canHandle(t,e){const n=t[e];return!n||"TD"!==n.tagName&&"TH"!==n.tagName?0:1}handle(e,n){const s=e[0],i=[{id:t(),type:"paragraph",annotations:{internalWrapper:n&&!n.autoMatchFormat},nodes:[{id:t(),type:"text",annotations:{plainText:n&&!n.autoMatchFormat},text:""}]}];return"TH"===s.tagName?yt.from({id:t(),type:"table-head-cell",annotations:this.getTableHeadCellAnnotations(s,n),children:i},n):At.from({id:t(),type:"table-cell",annotations:L.generate(At,s,n),children:i},n)}appendChildBlocks(t,e){t.children=e.map((e=>(e.parent=t,e)))}shouldProceedToElementChildren(){return!0}getTableHeadCellAnnotations(t,e){const n=L.generate(yt,t,e);return n&&n.tableCell&&Tt.getColorKey(n.tableCell.backgroundColor,!0)===gt.key&&(delete n.tableCell.backgroundColor,n.customStyle&&delete n.customStyle.backgroundColor),n}}class xs extends C{canHandle(t,e){const n=t[e];return n&&n.parentElement&&"TABLE"===n.parentElement.tagName&&"CAPTION"===n.tagName?1:0}handle(e,n){const s=this.getTableCaptionAnnotations(e[0],n);return kn.from({id:t(),type:"table-caption",annotations:Object.assign(Object.assign({},s),{caption:!0}),children:[]},n)}appendChildBlocks(t,e){t.children=e.map((e=>(e.parent=t,e)))}shouldProceedToElementChildren(){return!0}getTableCaptionAnnotations(t,e){const n=L.generate(kn,t,e);return n&&n.customStyle&&n.customStyle.backgroundColor&&Tt.getColorKey(n.customStyle.backgroundColor,!0)===gt.key&&delete n.customStyle.backgroundColor,n}}class ys extends O{getBackgroundColor(t){return t.style.backgroundColor?Tt.getColorKey(t.style.backgroundColor)||t.style.backgroundColor:null}getBorder(t){const e=t.style,n=e.borderStyle,s=e.borderWidth,i=e.borderColor;if(i||n||s){const t="initial"===i?"":i;return{style:"initial"===n?"":n,width:"initial"===s?"":s,color:Tt.getColorKey(t)||t}}return null}getWidth(t){if(t.style.width)return t.style.width;const e=t.getAttribute("width");return e?/^\d+$/.test(e)?`${e}px`:e:null}getHeight(t){if(t.style.height)return t.style.height;const e=t.getAttribute("height");return e?/^\d+$/.test(e)?`${e}px`:e:null}}class Cs extends ys{canHandle(t){return"RTETableBlock"===t.dtoName}handle(t){const e=xe({backgroundColor:this.getBackgroundColor(t),border:this.getBorder(t),width:this.getWidth(t),height:this.getHeight(t),alignment:this.getAlignment(t)});return Object.keys(e).length>0?{table:e}:{}}getAlignment(t){const e=t.classList;if(e.contains("v-rte--extension-table-align-left"))return"left";if(e.contains("v-rte--extension-table-align-center"))return"center";if(e.contains("v-rte--extension-table-align-right"))return"right";const n=t.style,s=n.marginLeft,i=n.marginRight;if("auto"===s&&"auto"===i)return"center";if("0"===s||"0px"===s)return"left";if("0"===i||"0px"===i)return"right";const r=t.getAttribute("align");return r&&["left","center","right"].includes(r)?r:null}}class Ls extends ys{canHandle(t){return"RTETableCellBlock"===t.dtoName}handle(t){const e=xe({backgroundColor:this.getBackgroundColor(t),padding:this.getPadding(t),border:this.getBorder(t),width:this.getWidth(t),height:this.getHeight(t),textAlign:this.getTextAlign(t),verticalAlign:this.getVerticalAlign(t),minWidth:this.getMinWidth(t),boxSizing:this.getBoxSizing(t)});return Object.keys(e).length>0?{tableCell:e}:{}}getMinWidth(t){return t.style.minWidth?t.style.minWidth:null}getBoxSizing(t){return t.style.boxSizing?t.style.boxSizing:null}getPadding(t){return t.style.padding?t.style.padding:null}getTextAlign(t){if(t.style.textAlign){const e=t.style.textAlign;if(["left","center","right","justify"].includes(e))return e}const e=t.getAttribute("align");return e&&["left","center","right","justify"].includes(e)?e:null}getVerticalAlign(t){if(t.style.verticalAlign){const e=t.style.verticalAlign;if(["top","middle","bottom"].includes(e))return e}return null}}class ks extends Ls{canHandle(t){return"RTETableHeadCellBlock"===t.dtoName}}class Ss extends D{handleAction(t,e){const n=t.toAnnotation(),s=this.getDOMByEntity(e);if(s){const t=s.closest(".v-rte--extension-table-container"),{backgroundColorAnnotation:i,width:r,height:a}=n;s.style.backgroundColor=i.renderStyle().color,s.style.border=n.borderStr,s.style.width=r,s.style.height=a;const o=n.renderAlignmentStyle().margin;s.style.margin=o,t&&(t.style.width=r,t.style.height=a,t.style.margin=o),this.updateCustomStyleAnnotation(e,["backgroundColor","border","width","height","margin"])}}}class Ts extends D{handleAction(t,e){const n=t.toAnnotation(),s=this.getDOMByEntity(e);if(s){const{width:t,height:i,borderStr:r,padding:a,textAlign:o,verticalAlign:l}=n,c=n.renderStyle().backgroundColor||"";s.style.backgroundColor=c,s.style.border=r,s.style.width=t,s.style.height=i,s.style.padding=a,s.style.textAlign=o,s.style.verticalAlign=l,this.updateCustomStyleAnnotation(e,["backgroundColor","border","width","height","padding","textAlign","verticalAlign"])}}}class Es extends D{handleAction(t,e){const n=e.parent,s=n.parent,i=Nt(n,Et),r=jt(i),a=r.indexOf(n),{colSpan:o,rowSpan:l}=Kt(e),c=Gt(e,r),h=Math.ceil(l/2),d=Math.max(1,l-h),u=1===l;_t(e,o,h,i);const p=a+h,f=qt(e.type);if(_t(f,o,d,i),u){const t=this.createNewRowWithCell(s,f),a=s.children.indexOf(n);s.apply(new _(s.children[a],t)),r.splice(p,0,t),this.updateCellsSpanningThroughInsertionPoint(r,p,e,i)}else{const t=r[p],e=this.findInsertPosition(t,c,r,p);t.children.splice(e,0,f),f.parent=t}}findInsertPosition(t,e,n,s){let i=0;for(let t=0;t<s;t++){const r=n[t];for(const a of r.children){const{colSpan:r,rowSpan:o}=Kt(a);t+o>s&&Gt(a,n)<e&&(i+=r)}}let r=i;for(let n=0;n<t.children.length;n++){if(r>=e)return n;const s=t.children[n],{colSpan:i}=Kt(s);r+=i}return t.children.length}createNewRowWithCell(e,n){const s={id:t(),type:"table-row",children:[]},i=Ut.from(s);return i.parent=e,i.children.push(n),n.parent=i,i}updateCellsSpanningThroughInsertionPoint(t,e,n,s){for(let i=0;i<e;i++){const r=t[i];for(const t of r.children){if(t===n)continue;const{colSpan:r,rowSpan:a}=Kt(t);i+a>=e&&_t(t,r,a+1,s)}}}}class Os extends D{handleAction(t,e){const n=e.parent,s=Nt(n,Et),i=jt(s),r=i.indexOf(n),{colSpan:a,rowSpan:o}=Kt(e),l=Gt(e,i),c=l+a-1,h=Math.ceil(a/2),d=Math.floor(a/2);_t(e,h,o,s);const u=qt(e.type);_t(u,d,o,s),n.apply(new _(e,u));const p=1===a?1:0;p>0&&this.updateOtherRowsCells(i,r,l,c,o,p,s)}updateOtherRowsCells(t,e,n,s,i,r,a){for(let o=0;o<t.length;o++){const l=t[o];if(!(o>=e&&o<e+i))for(const e of l.children){const i=Gt(e,t),{colSpan:o,rowSpan:l}=Kt(e);if(i+o-1>=n&&i<=s){_t(e,o+r,l,a);break}}}}}class As extends ns{handleAction(e,n){const{selectedRows:s}=e,i=s[s.length-1];let r=n.children.find((t=>t instanceof Rt));const a={id:t(),type:"table-row",children:[]};let o=0,l=null;r?(l=r.children[0],o=this.getHeadCellLength(l)):(r=Rt.from({id:t(),type:"table-body",children:[]}),n.apply(new H([r])));const c=i.parent.children,h=this.getRowsMaxCellCount(c);if(this.getRowsMaxCellCount([i])<h){const t=c.indexOf(i),e=this.getRowCellStartCols(c),n=new Map;for(let s=0;s<h;s++){const i=s<o?"table-head-cell":"table-cell",{cell:r}=this.getTheStartSpanCell(c,e,t,s);if(r){const t=r.colSpan;n.set(s,this.getDefaultCellBlockTemplate(i,t)),s+=t-1}}a.children=this.getSortedValuesByNumericKey(n)}else a.children=this.createTableCells(i,o);const d=l?new F(l,Ut.from(a)):new H([Ut.from(a)]);r.apply(d)}createTableCells(t,e){const n=[];let s=0;for(const i of t.children)n.push(this.getDefaultCellBlockTemplate(s<e?"table-head-cell":"table-cell",i.colSpan)),s+=i.colSpan;return n}}class Is extends ns{handleAction(e){const{insertDirection:n,selectedRows:s}=e,i=n===Zt.ABOVE?s[0]:s[s.length-1],r={id:t(),type:"table-row",children:[]},a=i.parent.children,o=this.getRowsMaxCellCount(a),l=a.indexOf(i),c=this.getRowCellStartCols(a),h=new Map;for(let t=0;t<o;t++){const{cell:e,rowIndex:s}=this.getTheStartSpanCell(a,c,l,t);if(e){const{colSpan:i,rowSpan:r}=e;if(n===Zt.ABOVE?s!==l:s+r>l+1){this.updateCellSpan(e,"rowspan",r+1),t+=i-1;continue}h.set(t,this.getDefaultCellBlockTemplate(e.type,i)),t+=i-1}}r.children=this.getSortedValuesByNumericKey(h);const d=Ut.from(r),u=n===Zt.ABOVE?new F(i,d):new _(i,d);i.parent.apply(u)}}class Rs extends un{canIntercept(t,e){return Boolean(e.parent)}intercept(t,e,n){const s=this.createNewParagraph("");s&&(n.parent.apply(0===e.startOffset?new F(n,s):new _(n,s)),e.newBlock=s)}createNewParagraph(e){const n=Z.getRTEBlockClass("paragraph");if(n)return n.from({id:t(),type:"paragraph",nodes:[{id:t(),type:"text",text:e}]})}}class Ns extends Q{constructor(){super(...arguments),this.stylesToBeFiltered=mt.getDefaultStyles(),this.elementTagName="table"}canFilter(t){return this.isTableBlock(t.dtoName)}canRefill(t,e){return this.isTableBlock(t)&&e.tagName.toLowerCase()===this.elementTagName}toCssText(){return this.buildCssTextForStyles(this.elementTagName,this.classNameToBeAdded)}isTableBlock(t){return"RTETableBlock"===t}}class Bs extends Q{constructor(){super(...arguments),this.stylesToBeFiltered=Ln.getDefaultStyles(),this.elementTagName="table caption"}canFilter(t){return this.isTableCaption(t.dtoName)}canRefill(t,e){return this.isTableCaption(t)&&"CAPTION"===e.nodeName}toCssText(){return this.buildCssTextForStyles(this.elementTagName,this.classNameToBeAdded)}isTableCaption(t){return"RTETableCaptionBlock"===t}}class Ms extends Q{constructor(t="td"){super(),this.stylesToBeFiltered=xt.getDefaultStyles(),this.elementTagName="",this.stylesWithRGBColor=xt.getDefaultStyles(!1),this.cellBlockClassName="",this.elementTagName=t,this.cellBlockClassName="td"===t?"RTETableCellBlock":"RTETableHeadCellBlock"}canFilter(t){return this.isTableCell(t.dtoName)}filterAndDeleteStyles(t,e){return this.convertDefaultBorderColorFromRGBToHex(t),super.filterAndDeleteStyles(t,e)}canRefill(t,e){return this.isTableCell(t)&&e.nodeName===this.elementTagName.toUpperCase()}toCssText(){return this.buildCssTextForStyles(this.elementTagName,this.classNameToBeAdded)}isTableCell(t){return t===this.cellBlockClassName}convertDefaultBorderColorFromRGBToHex(t){t&&t.border&&t.border===this.stylesWithRGBColor.border&&(t.border=this.stylesToBeFiltered.border)}}class js extends v{constructor(t=Qt){super(),this.toolbarButtonRenderer=new Qn,this.tableBlockRenderer=new zn,this.tableRowBlockRenderer=new Kn,this.tableCellRenderer=new qn,this.tableHeadCellRenderer=new Un,this.tableSelection=new is,Tt.setTableColors(t),this.registerToolbarButtonRenderer(js.TOOLBAR_BUTTON_KEY,this.toolbarButtonRenderer),this.registerBlockBasicStrategies(Et.name),this.registerBlockBasicStrategies(It.name),this.registerBlockBasicStrategies(yt.name),this.registerBlockBasicStrategies(Ut.name),this.registerBlockBasicStrategies(At.name),this.registerBlockBasicStrategies(Rt.name),this.registerRenderer("table-block",this.tableBlockRenderer),this.registerRenderer("table-head",new $n),this.registerRenderer("table-head-cell",this.tableHeadCellRenderer),this.registerRenderer("table-row",this.tableRowBlockRenderer),this.registerRenderer("table-cell",this.tableCellRenderer),this.registerRenderer("table-body",new Wn),this.registerRenderer("table-caption",new es),this.registerNode("table-block",Et),this.registerNode("table-head",It),this.registerNode("table-head-cell",yt),this.registerNode("table-row",Ut),this.registerNode("table-cell",At),this.registerNode("table-body",Rt),this.registerNode("table-caption",kn),this.registerElementToBlockDTOClassStrategy(new ws),this.registerElementToBlockDTOClassStrategy(new gs),this.registerElementToBlockDTOClassStrategy(new bs),this.registerElementToBlockDTOClassStrategy(new vs),this.registerElementToBlockDTOClassStrategy(new ms),this.registerElementToBlockDTOClassStrategy(new xs),this.registerAnnotationHandler(new Cs),this.registerAnnotationHandler(new Ls),this.registerAnnotationHandler(new ks)}initialExtensionAfterLoad(t){this.tableSelection.init(t);const e=Object.assign(Object.assign({},t),{tableSelection:this.tableSelection});super.initialExtensionAfterLoad(e)}destroyExtension(){this.tableBlockRenderer.destroy(),this.tableSelection.destroy()}}(()=>{const t=new Jn,e=new Xn;v.registerActionHandleStrategy(x.name,"INSERT_TABLE_BLOCK",t),v.registerActionHandleStrategy(Et.name,"DELETE_TABLE_BLOCK",e),v.registerActionHandleStrategy(M.name,"INSERT_TABLE_BLOCK",t),v.registerActionHandleStrategy(S.name,"INSERT_TABLE_BLOCK",t),v.registerActionHandleStrategy(Et.name,Jt,new As),v.registerActionHandleStrategy(Et.name,Yt,new Is),v.registerActionHandleStrategy(Et.name,Xt,new ss),v.registerActionHandleStrategy(Et.name,te,new rs),v.registerActionHandleStrategy(Et.name,ee,new as),v.registerActionHandleStrategy(Et.name,ne,new os),v.registerActionHandleStrategy(Et.name,se,new ie),v.registerActionHandleStrategy(Ut.name,re,new ds),v.registerActionHandleStrategy(Ut.name,"CREATE_SEGMENT_TABLE_CELL",new cs),v.registerActionHandleStrategy(Ut.name,ae,new hs),v.registerActionHandleStrategy(At.name,oe,new Es),v.registerActionHandleStrategy(At.name,le,new Os),v.registerActionHandleStrategy(yt.name,oe,new Es),v.registerActionHandleStrategy(yt.name,le,new Os),v.registerActionHandleStrategy(Et.name,ce,new us),v.registerActionHandleStrategy(Et.name,he,new fs),v.registerActionHandleStrategy(Et.name,On.name,new Ss),v.registerActionHandleStrategy(At.name,Nn.name,new Ts),v.registerActionHandleStrategy(yt.name,Bn.name,new Ts),v.registerActionHandlerInterceptor(M.name,$.DELETE_BLOCK_CONTENT,new Yn),v.registerActionHandlerInterceptor(Ut.name,$.INSERT_CHILDREN_BEFORE,new ps),v.registerActionHandlerInterceptor(At.name,$.DELETE_CHILDREN,new ts),v.registerActionHandlerInterceptor(yt.name,$.DELETE_CHILDREN,new ts),v.registerActionHandlerInterceptor(Et.name,$.INSERT_NEW_PARAGRAPH,new Rs),v.registerFilterStylesStrategy(Et.dtoName,new Ns),v.registerFilterStylesStrategy(kn.dtoName,new Bs),v.registerFilterStylesStrategy(At.dtoName,new Ms),v.registerFilterStylesStrategy(yt.dtoName,new Ms("th"))})(),js.TOOLBAR_BUTTON_KEY="table";class Ds extends J{constructor(t,e,n){super(t,n),this.type="horizontal-line",this.parent=e}toJSON(){return{id:this.id,type:"horizontal-line"}}clone(t){return new Ds(this.id,t,super.cloneAnnotations())}toHtml(){return"<hr>"}}const _s={display:"inline-block",width:"100%",height:"4px",backgroundColor:"rgb(222, 222, 222)",borderWidth:"0px"};class Hs extends Q{constructor(){super(...arguments),this.stylesToBeFiltered=_s,this.elementTagName="hr"}canFilter(t){return class{static isHorizontalLineBlock(t){return"RTEHorizontalLineBlock"===t}}.isHorizontalLineBlock(t.dtoName)}canRefill(t,e){return e.tagName.toLowerCase()===this.elementTagName}toCssText(){return this.buildCssTextForStyles(this.elementTagName,this.classNameToBeAdded)}}var Vs;!function(t){t.HORIZONTAL_LINE="HORIZONTAL_LINE"}(Vs||(Vs={}));class Ps extends K{constructor(){super(...arguments),this.type=Vs.HORIZONTAL_LINE}static from(){return[Vs.HORIZONTAL_LINE,new Ps]}static getDefaultStyles(){return _s}toJSON(){return null}clone(){return new Ps}renderClass(t){return(null==t?void 0:t.standalone)?null:"v-rte-horizontal-line-hr"}renderStyle(t){return(null==t?void 0:t.standalone)?Ps.getDefaultStyles():null}}class Fs extends B{constructor(t,e){super(t),this.dtoName=Fs.dtoName,this.type="horizontal-line",this.children=[];const{autoMatchFormat:n=!0}=null!=e?e:{};n&&(this.annotationMap=new Map([Ps.from()]))}static from(e,n={autoMatchFormat:!0}){var s,i;const r=new Fs(e.id,n),a=(null===(i=null===(s=e.children)||void 0===s?void 0:s[0])||void 0===i?void 0:i.id)||t(),o=new Ds(a,r);return r.children=[o],e.annotations&&B.convertAnnotationsToMap(r.annotationMap,e.annotations),r}static create(e,n={autoMatchFormat:!0}){const s=new Fs(t(),n),i=new Ds(t(),s);return s.children=[i],e&&B.convertAnnotationsToMap(s.annotationMap,e),s}toJSON(){return Object.assign(Object.assign({},super.toJSON()),{type:"horizontal-line",children:this.children.map((t=>t.toJSON()))})}toHtml(t){return`<hr${super.generateAttributeString(t)}>`}isNotEmpty(){return this.children.length>0}getLastNode(){return this.children[this.children.length-1]}clone(t){const e=new Fs(this.id);return e.children=this.children.map((t=>t.clone(e))),e.annotationMap=super.cloneAnnotations(),e.parent=t,e}}Fs.dtoName="RTEHorizontalLineBlock";class zs extends b{doRender(t,e,n){const s=e.children[0],i=e.getStyles(n),r=e.getClasses(n),a=[J.DECORATOR_NODE_CLASS,r].filter(Boolean).join(" ");return t("div",{key:e.id,class:`v-rte-horizontal-line ${J.DECORATOR_CONTAINER_CLASS}`,ref:this.useRef(e)},[t("hr",{key:(null==s?void 0:s.id)||e.id+"-hr",class:a,style:Object.keys(i).length>0?i:void 0,ref:s?this.useRef(s):void 0})])}injectRTEScopeStyles(){return".v-rte-horizontal-line{padding:8px 0;overflow:hidden}.v-rte-horizontal-line .v-rte-horizontal-line-hr{display:inline-block;width:100%;height:4px;border-width:0px;background-color:rgb(222, 222, 222)}"}}class $s extends I{constructor(t,e=0){super(),this.type="INSERT_HORIZONTAL_LINE_BLOCK",this.splitPointNode=t,this.startOffsetOfNode=e}}class Ks extends Ze{render(t,e){return this.renderButton(t,e,{icon:"horizontal-line",tooltip:{text:f.t("Horizontal line")}})}isDisabled(t){const e=this.getExtensionContext(t.host);if(e){const{host:t,getSelectedNodes:n}=e,[s]=n();return s?t.disabled||!R.canHandle("INSERT_HORIZONTAL_LINE_BLOCK",s.parent):t.disabled}return!1}handleButtonClick(t){if(this.isDisabled(t))return;const e=this.getExtensionContext(t.host);if(e){const{host:n,getSelectedNodes:s,flushValue:i}=e,r=s()[0],a=new $s(r,t.rteRange.startOffset);r?r.parent&&r.parent.apply(a):n.value.apply(a),a.nextFocusNode&&n.value.apply(new m(a.nextFocusNode,0)),i(n.value)}}handleDropdownClick(){}}at.register({"horizontal-line":{icon:'<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 640 512">\x3c!--! Font Awesome Pro 6.3.0 by @fontawesome - https://fontawesome.com License - https://fontawesome.com/license (Commercial License) Copyright 2023 Fonticons, Inc. --\x3e<path fill="currentColor" d="M0 224H32 608h32v64H608 32 0V224z"/></svg>'}});class qs extends C{canHandle(t,e){return"HR"===t[e].tagName?1:0}handle(t,e){const n=L.generate(Fs,t[0],e);return Fs.create(n,e)}appendChildBlocks(){}shouldProceedToElementChildren(){return!1}}class Ws extends D{handleAction(t,e){const n=Fs.create();if(t.splitPointNode instanceof N){const s=t.splitPointNode,i=t.startOffsetOfNode;if(this.isCaretPositionAtBlockEnd(e,s,i))this.insertAfterWithFocus(t,e,n);else if(this.isCaretPositionAtBlockStart(e,s,i))e.parent.apply(new F(e,n)),t.nextFocusNode=e.getFirstNode();else{const r=new Y(s,i);e.apply(r);const a=this.getNextSiblingBlock(e);e.parent.apply(new _(e,n)),t.nextFocusNode=a.getFirstNode()}}else if(t.splitPointNode)this.insertAfterWithFocus(t,e,n);else{const s=super.createNewParagraph("");e.apply(new H([n,s])),t.nextFocusNode=s.children[0]}}insertAfterWithFocus(t,e,n){const s=this.getNextSiblingBlock(e),i=null==s?void 0:s.getFirstNode();if(i instanceof N)e.parent.apply(new _(e,n)),t.nextFocusNode=i;else{const s=super.createNewParagraph("");e.parent.apply(new _(e,n,s)),t.nextFocusNode=s.children[0]}}getNextSiblingBlock(t){const e=t.parent.children,n=e.indexOf(t);return e[n+1]}}class Us extends v{constructor(){super(),this.blockRenderer=new zs,this.toolbarButtonRenderer=new Ks,this.registerBlockBasicStrategies(Fs.name),this.registerNode("horizontal-line",Fs),this.registerRenderer("horizontal-line",this.blockRenderer),this.registerToolbarButtonRenderer(Us.TOOLBAR_BUTTON_KEY,this.toolbarButtonRenderer),this.registerElementToBlockDTOClassStrategy(new qs),v.registerFilterStylesStrategy(Fs.dtoName,new Hs)}}var Gs;(()=>{const t=new Ws;v.registerActionHandleStrategy(x.name,"INSERT_HORIZONTAL_LINE_BLOCK",t),v.registerActionHandleStrategy(M.name,"INSERT_HORIZONTAL_LINE_BLOCK",t),v.registerActionHandleStrategy(S.name,"INSERT_HORIZONTAL_LINE_BLOCK",t),v.registerActionHandleStrategy(Fs.name,"INSERT_HORIZONTAL_LINE_BLOCK",t)})(),Us.TOOLBAR_BUTTON_KEY="horizontalLine",function(t){t.BLOCKQUOTE="BLOCKQUOTE"}(Gs||(Gs={}));const Zs={overflow:"hidden",marginInline:"0",paddingInline:"24px",borderInlineStart:"solid 5px hsl(0, 0%, 80%)"};class Qs extends K{constructor(){super(...arguments),this.type=Gs.BLOCKQUOTE}static from(){return[Gs.BLOCKQUOTE,new Qs]}static getDefaultCssText(){return`.v-rte-blockquote {\n${Object.entries(Zs).map((([t,e])=>`\t${Ce(t)}: ${e};`)).join("\n")}\n}`}toJSON(){return null}clone(){return new Qs}renderClass(t){return(null==t?void 0:t.standalone)?null:"v-rte-blockquote"}renderStyle(t){return(null==t?void 0:t.standalone)?Zs:null}}class Js extends B{constructor(t,e){super(t),this.dtoName=Js.dtoName,this.type="blockquote",this.children=[];const{autoMatchFormat:n=!0}=null!=e?e:{};n&&(this.annotationMap=new Map([Qs.from()]))}static from(t,e){const n=new Js(t.id,e);return t.annotations&&B.convertAnnotationsToMap(n.annotationMap,t.annotations),n.children=B.generateBlockChildren(t.children,e,n),n}clone(t){const e=new Js(this.id),n=e;return e.children=this.children.map((t=>t.clone(n))),e.annotationMap=this.cloneAnnotations(),e.parent=t,e}getLastNode(){return this.children[this.children.length-1].getLastNode()}isNotEmpty(){return this.children.length>0}toHtml(t){return`<blockquote${this.generateAttributeString(t)}>${this.children.map((e=>e.toHtml(t))).join("")}</blockquote>`}toJSON(){return Object.assign(Object.assign({},super.toJSON()),{id:this.id,type:"blockquote",children:this.children.map((t=>t.toJSON()))})}}Js.dtoName="RTEBlockquoteBlock";class Ys extends D{handleAction(e,n){const s=e.selectedBlocks,i=n.children,r=new Set(s),a=i.indexOf(s[0]),o=i.slice(0,a).filter((t=>!r.has(t))).length,l=new Js(t());l.parent=n,l.children=s,s.forEach((t=>{t.parent=l}));for(let t=i.length-1;t>=0;t--)r.has(i[t])&&i.splice(t,1);i.splice(o,0,l)}}class Xs extends D{handleAction(t,e){const n=e.parent,s=[...e.children];s.length>0&&n.apply(new F(e,...s)),n.apply(new W(e))}}class ti extends un{canIntercept(t,e){const n=e.parent;return n instanceof Js&&!e.isNotEmpty()&&n.children[n.children.length-1]===e}intercept(t,e,n){const s=n.parent,i=this.createNewParagraph("");i&&(s.parent.apply(new _(s,i)),s.apply(new W(n)),e.newBlock=i)}createNewParagraph(e){const n=Z.getRTEBlockClass("paragraph");if(n)return n.from({id:t(),type:"paragraph",nodes:[{id:t(),type:"text",text:e}]})}}class ei extends I{constructor(t){super(),this.isFlushable=!0,this.type="TRANSFORM_TO_BLOCKQUOTE",this.selectedBlocks=t}}class ni extends I{constructor(){super(...arguments),this.isFlushable=!0,this.type="REMOVE_BLOCKQUOTE"}}class si extends C{canHandle(t,e){return"BLOCKQUOTE"===t[e].tagName?1:0}handle(e,n){const s=L.generate(Js,e[0],n);return Js.from({id:t(),type:"blockquote",annotations:s,children:[]},n)}appendChildBlocks(t,e){const n=e.flatMap((t=>t instanceof Js?t.children:[t]));t.children=n.map((e=>(e.parent=t,e)))}shouldProceedToElementChildren(){return!0}}const ii=new class extends b{doRender(t,e,n){var s;return t("blockquote",Object.assign({key:e.id,class:e.getClasses(n),style:e.getStyles(n),ref:this.useRef(e)},null===(s=e.getCustomAttributesAnnotation())||void 0===s?void 0:s.render()))}injectRTEScopeStyles(){return Qs.getDefaultCssText()}};class ri extends Ze{render(t,e){return this.renderButton(t,e,{icon:"quote-left",tooltip:{text:"Block quote"}})}isSelected(t){const e=this.getStartNode(t);return!!e&&null!==this.findBlockquoteAncestor(e)}isDisabled(t){if(t.host.disabled)return!0;const e=this.getStartNode(t);if(!e||null!==this.findBlockquoteAncestor(e))return!1;const{container:n}=this.resolveWrapAnchor(e.parent);return!R.canHandle("TRANSFORM_TO_BLOCKQUOTE",n)}handleButtonClick(t){const e=this.getExtensionContext(t.host);if(e){const{host:n,getSelectedNodes:s}=e,i=s(),r=i[0];if(!r)return void this.appendEmptyBlockquote(n.value);this.findBlockquoteAncestor(r)?this.collectBlockquoteAncestors(i).forEach((t=>{t.apply(new ni)})):this.wrapSelectedBlocks(i),n.value.apply(new m(r,t.rteRange.startOffset))}}handleDropdownClick(){}appendEmptyBlockquote(e){if(e.children.length>0){const n=e.children[e.children.length-1],s=M.from({id:t(),type:"paragraph",nodes:[{id:t(),type:"text",text:""}]});e.apply(new _(n,s)),e.apply(new ei([s])),e.apply(new m(s.getLastNode(),0))}}wrapSelectedBlocks(t){var e,n;const s=this.getUniqueBlocks(t),i=new Set(s.map((t=>{var e;return null!==(e=this.resolveWrapAnchor(t,!0).wrapBlock)&&void 0!==e?e:t}))).size>1,r=new Set;for(const t of s){const{wrapBlock:e}=this.resolveWrapAnchor(t,i);e instanceof Js&&!r.has(e)&&(r.add(e),e.apply(new ni))}const a=new Map;for(const t of s){const s=this.resolveWrapAnchor(t,i),{container:r}=s;if(r){const i=null!==(e=s.wrapBlock)&&void 0!==e?e:t,o=null!==(n=a.get(r))&&void 0!==n?n:new Set;o.add(i),a.set(r,o)}}for(const[t,e]of a)t.apply(new ei([...e]))}getStartNode(t){const e=this.getExtensionContext(t.host);return null==e?void 0:e.getSelectedNodes()[0]}collectBlockquoteAncestors(t){const e=new Set;return t.forEach((t=>{const n=this.findBlockquoteAncestor(t);n&&e.add(n)})),e}findBlockquoteAncestor(t){let e=t.parent;for(;e&&!(e instanceof x);){if(e instanceof Js)return e;e=e.parent}return null}getUniqueBlocks(t){const e=new Set,n=[];return t.forEach((t=>{const s=t.parent;s&&!e.has(s)&&(e.add(s),n.push(s))})),n}resolveWrapAnchor(t,e=!1){let n=t;for(;n.parent&&!(n.parent instanceof x)&&(e||!R.canHandle("TRANSFORM_TO_BLOCKQUOTE",n.parent));)n=n.parent;return{wrapBlock:n!==t?n:null,container:n.parent}}}at.register({"quote-left":{icon:'<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 448 512"><path fill="currentColor" d="M0 216C0 149.7 53.7 96 120 96l8 0c17.7 0 32 14.3 32 32s-14.3 32-32 32l-8 0c-30.9 0-56 25.1-56 56l0 8 64 0c35.3 0 64 28.7 64 64l0 64c0 35.3-28.7 64-64 64l-64 0c-35.3 0-64-28.7-64-64L0 216zm256 0c0-66.3 53.7-120 120-120l8 0c17.7 0 32 14.3 32 32s-14.3 32-32 32l-8 0c-30.9 0-56 25.1-56 56l0 8 64 0c35.3 0 64 28.7 64 64l0 64c0 35.3-28.7 64-64 64l-64 0c-35.3 0-64-28.7-64-64l0-136z"/></svg>'}});class ai extends Q{constructor(){super(...arguments),this.stylesToBeFiltered=Zs,this.elementTagName="blockquote"}static isBlockquoteBlock(t){return"RTEBlockquoteBlock"===t}canFilter(t){return ai.isBlockquoteBlock(t.dtoName)}canRefill(t,e){return e.tagName.toLowerCase()===this.elementTagName}toCssText(){return this.buildCssTextForStyles(this.elementTagName,this.classNameToBeAdded)}}class oi extends v{constructor(){super(),this.toolbarButtonRenderer=new ri,this.registerBlockBasicStrategies(Js.name),this.registerNode("blockquote",Js),this.registerRenderer("blockquote",ii),this.registerToolbarButtonRenderer(oi.TOOLBAR_BUTTON_KEY,this.toolbarButtonRenderer),this.registerElementToBlockDTOClassStrategy(new si),v.registerFilterStylesStrategy(Js.dtoName,new ai)}}(()=>{const t=new Ys;v.registerActionHandleStrategy(x.name,"TRANSFORM_TO_BLOCKQUOTE",t),v.registerActionHandleStrategy(At.name,"TRANSFORM_TO_BLOCKQUOTE",t),v.registerActionHandleStrategy(yt.name,"TRANSFORM_TO_BLOCKQUOTE",t),v.registerActionHandleStrategy(Js.name,"REMOVE_BLOCKQUOTE",new Xs),v.registerActionHandlerInterceptor(M.name,$.INSERT_NEW_PARAGRAPH,new ti)})(),oi.TOOLBAR_BUTTON_KEY="blockquote";const li={key:"latin",label:"Latin",characters:[{character:"Ā",title:"Latin capital letter a with macron"},{character:"ā",title:"Latin small letter a with macron"},{character:"Ă",title:"Latin capital letter a with breve"},{character:"ă",title:"Latin small letter a with breve"},{character:"Ą",title:"Latin capital letter a with ogonek"},{character:"ą",title:"Latin small letter a with ogonek"},{character:"Ć",title:"Latin capital letter c with acute"},{character:"ć",title:"Latin small letter c with acute"},{character:"Ĉ",title:"Latin capital letter c with circumflex"},{character:"ĉ",title:"Latin small letter c with circumflex"},{character:"Ċ",title:"Latin capital letter c with dot above"},{character:"ċ",title:"Latin small letter c with dot above"},{character:"Č",title:"Latin capital letter c with caron"},{character:"č",title:"Latin small letter c with caron"},{character:"Ď",title:"Latin capital letter d with caron"},{character:"ď",title:"Latin small letter d with caron"},{character:"Đ",title:"Latin capital letter d with stroke"},{character:"đ",title:"Latin small letter d with stroke"},{character:"Ē",title:"Latin capital letter e with macron"},{character:"ē",title:"Latin small letter e with macron"},{character:"Ĕ",title:"Latin capital letter e with breve"},{character:"ĕ",title:"Latin small letter e with breve"},{character:"Ė",title:"Latin capital letter e with dot above"},{character:"ė",title:"Latin small letter e with dot above"},{character:"Ę",title:"Latin capital letter e with ogonek"},{character:"ę",title:"Latin small letter e with ogonek"},{character:"Ě",title:"Latin capital letter e with caron"},{character:"ě",title:"Latin small letter e with caron"},{character:"Ĝ",title:"Latin capital letter g with circumflex"},{character:"ĝ",title:"Latin small letter g with circumflex"},{character:"Ğ",title:"Latin capital letter g with breve"},{character:"ğ",title:"Latin small letter g with breve"},{character:"Ġ",title:"Latin capital letter g with dot above"},{character:"ġ",title:"Latin small letter g with dot above"},{character:"Ģ",title:"Latin capital letter g with cedilla"},{character:"ģ",title:"Latin small letter g with cedilla"},{character:"Ĥ",title:"Latin capital letter h with circumflex"},{character:"ĥ",title:"Latin small letter h with circumflex"},{character:"Ħ",title:"Latin capital letter h with stroke"},{character:"ħ",title:"Latin small letter h with stroke"},{character:"Ĩ",title:"Latin capital letter i with tilde"},{character:"ĩ",title:"Latin small letter i with tilde"},{character:"Ī",title:"Latin capital letter i with macron"},{character:"ī",title:"Latin small letter i with macron"},{character:"Ĭ",title:"Latin capital letter i with breve"},{character:"ĭ",title:"Latin small letter i with breve"},{character:"Į",title:"Latin capital letter i with ogonek"},{character:"į",title:"Latin small letter i with ogonek"},{character:"İ",title:"Latin capital letter i with dot above"},{character:"ı",title:"Latin small letter dotless i"},{character:"IJ",title:"Latin capital ligature ij"},{character:"ij",title:"Latin small ligature ij"},{character:"Ĵ",title:"Latin capital letter j with circumflex"},{character:"ĵ",title:"Latin small letter j with circumflex"},{character:"Ķ",title:"Latin capital letter k with cedilla"},{character:"ķ",title:"Latin small letter k with cedilla"},{character:"ĸ",title:"Latin small letter kra"},{character:"Ĺ",title:"Latin capital letter l with acute"},{character:"ĺ",title:"Latin small letter l with acute"},{character:"Ļ",title:"Latin capital letter l with cedilla"},{character:"ļ",title:"Latin small letter l with cedilla"},{character:"Ľ",title:"Latin capital letter l with caron"},{character:"ľ",title:"Latin small letter l with caron"},{character:"Ŀ",title:"Latin capital letter l with middle dot"},{character:"ŀ",title:"Latin small letter l with middle dot"},{character:"Ł",title:"Latin capital letter l with stroke"},{character:"ł",title:"Latin small letter l with stroke"},{character:"Ń",title:"Latin capital letter n with acute"},{character:"ń",title:"Latin small letter n with acute"},{character:"Ņ",title:"Latin capital letter n with cedilla"},{character:"ņ",title:"Latin small letter n with cedilla"},{character:"Ň",title:"Latin capital letter n with caron"},{character:"ň",title:"Latin small letter n with caron"},{character:"ʼn",title:"Latin small letter n preceded by apostrophe"},{character:"Ŋ",title:"Latin capital letter eng"},{character:"ŋ",title:"Latin small letter eng"},{character:"Ō",title:"Latin capital letter o with macron"},{character:"ō",title:"Latin small letter o with macron"},{character:"Ŏ",title:"Latin capital letter o with breve"},{character:"ŏ",title:"Latin small letter o with breve"},{character:"Ő",title:"Latin capital letter o with double acute"},{character:"ő",title:"Latin small letter o with double acute"},{character:"Œ",title:"Latin capital ligature oe"},{character:"œ",title:"Latin small ligature oe"},{character:"Ŕ",title:"Latin capital letter r with acute"},{character:"ŕ",title:"Latin small letter r with acute"},{character:"Ŗ",title:"Latin capital letter r with cedilla"},{character:"ŗ",title:"Latin small letter r with cedilla"},{character:"Ř",title:"Latin capital letter r with caron"},{character:"ř",title:"Latin small letter r with caron"},{character:"Ś",title:"Latin capital letter s with acute"},{character:"ś",title:"Latin small letter s with acute"},{character:"Ŝ",title:"Latin capital letter s with circumflex"},{character:"ŝ",title:"Latin small letter s with circumflex"},{character:"Ş",title:"Latin capital letter s with cedilla"},{character:"ş",title:"Latin small letter s with cedilla"},{character:"Š",title:"Latin capital letter s with caron"},{character:"š",title:"Latin small letter s with caron"},{character:"Ţ",title:"Latin capital letter t with cedilla"},{character:"ţ",title:"Latin small letter t with cedilla"},{character:"Ť",title:"Latin capital letter t with caron"},{character:"ť",title:"Latin small letter t with caron"},{character:"Ŧ",title:"Latin capital letter t with stroke"},{character:"ŧ",title:"Latin small letter t with stroke"},{character:"Ũ",title:"Latin capital letter u with tilde"},{character:"ũ",title:"Latin small letter u with tilde"},{character:"Ū",title:"Latin capital letter u with macron"},{character:"ū",title:"Latin small letter u with macron"},{character:"Ŭ",title:"Latin capital letter u with breve"},{character:"ŭ",title:"Latin small letter u with breve"},{character:"Ů",title:"Latin capital letter u with ring above"},{character:"ů",title:"Latin small letter u with ring above"},{character:"Ű",title:"Latin capital letter u with double acute"},{character:"ű",title:"Latin small letter u with double acute"},{character:"Ų",title:"Latin capital letter u with ogonek"},{character:"ų",title:"Latin small letter u with ogonek"},{character:"Ŵ",title:"Latin capital letter w with circumflex"},{character:"ŵ",title:"Latin small letter w with circumflex"},{character:"Ŷ",title:"Latin capital letter y with circumflex"},{character:"ŷ",title:"Latin small letter y with circumflex"},{character:"Ÿ",title:"Latin capital letter y with diaeresis"},{character:"Ź",title:"Latin capital letter z with acute"},{character:"ź",title:"Latin small letter z with acute"},{character:"Ż",title:"Latin capital letter z with dot above"},{character:"ż",title:"Latin small letter z with dot above"},{character:"Ž",title:"Latin capital letter z with caron"},{character:"ž",title:"Latin small letter z with caron"},{character:"ſ",title:"Latin small letter long s"}]},ci={key:"mathematical",label:"Mathematical",characters:[{character:"<",title:"Less-than sign"},{character:">",title:"Greater-than sign"},{character:"≤",title:"Less-than or equal to"},{character:"≥",title:"Greater-than or equal to"},{character:"–",title:"En dash"},{character:"—",title:"Em dash"},{character:"¯",title:"Macron"},{character:"‾",title:"Overline"},{character:"°",title:"Degree sign"},{character:"−",title:"Minus sign"},{character:"±",title:"Plus-minus sign"},{character:"÷",title:"Division sign"},{character:"⁄",title:"Fraction slash"},{character:"×",title:"Multiplication sign"},{character:"ƒ",title:"Latin small letter f with hook"},{character:"∫",title:"Integral"},{character:"∑",title:"N-ary summation"},{character:"∞",title:"Infinity"},{character:"√",title:"Square root"},{character:"∼",title:"Tilde operator"},{character:"≅",title:"Approximately equal to"},{character:"≈",title:"Almost equal to"},{character:"≠",title:"Not equal to"},{character:"≡",title:"Identical to"},{character:"∈",title:"Element of"},{character:"∉",title:"Not an element of"},{character:"∋",title:"Contains as member"},{character:"∏",title:"N-ary product"},{character:"∧",title:"Logical and"},{character:"∨",title:"Logical or"},{character:"¬",title:"Not sign"},{character:"∩",title:"Intersection"},{character:"∪",title:"Union"},{character:"∂",title:"Partial differential"},{character:"∀",title:"For all"},{character:"∃",title:"There exists"},{character:"∅",title:"Empty set"},{character:"∇",title:"Nabla"},{character:"∗",title:"Asterisk operator"},{character:"∝",title:"Proportional to"},{character:"∠",title:"Angle"},{character:"¼",title:"Vulgar fraction one quarter"},{character:"½",title:"Vulgar fraction one half"},{character:"¾",title:"Vulgar fraction three quarters"}]},hi={key:"arrows",label:"Arrows",characters:[{character:"←",title:"leftwards simple arrow"},{character:"→",title:"rightwards simple arrow"},{character:"↑",title:"upwards simple arrow"},{character:"↓",title:"downwards simple arrow"},{character:"⇐",title:"leftwards double arrow"},{character:"⇒",title:"rightwards double arrow"},{character:"⇑",title:"upwards double arrow"},{character:"⇓",title:"downwards double arrow"},{character:"⇠",title:"leftwards dashed arrow"},{character:"⇢",title:"rightwards dashed arrow"},{character:"⇡",title:"upwards dashed arrow"},{character:"⇣",title:"downwards dashed arrow"},{character:"⇤",title:"leftwards arrow to bar"},{character:"⇥",title:"rightwards arrow to bar"},{character:"⤒",title:"upwards arrow to bar"},{character:"⤓",title:"downwards arrow to bar"},{character:"↨",title:"up down arrow with base"},{character:"🔙",title:"back with leftwards arrow above"},{character:"🔚",title:"end with leftwards arrow above"},{character:"🔛",title:"on with exclamation mark with left right arrow above"},{character:"🔜",title:"soon with rightwards arrow above"},{character:"🔝",title:"top with upwards arrow above"}]},di={key:"currency",label:"Currency",characters:[{character:"$",title:"Dollar sign"},{character:"€",title:"Euro sign"},{character:"¥",title:"Yen sign"},{character:"£",title:"Pound sign"},{character:"¢",title:"Cent sign"},{character:"₠",title:"Euro-currency sign"},{character:"₡",title:"Colon sign"},{character:"₢",title:"Cruzeiro sign"},{character:"₣",title:"French franc sign"},{character:"₤",title:"Lira sign"},{character:"¤",title:"Currency sign"},{character:"₿",title:"Bitcoin sign"},{character:"₥",title:"Mill sign"},{character:"₦",title:"Naira sign"},{character:"₧",title:"Peseta sign"},{character:"₨",title:"Rupee sign"},{character:"₩",title:"Won sign"},{character:"₪",title:"New sheqel sign"},{character:"₫",title:"Dong sign"},{character:"₭",title:"Kip sign"},{character:"₮",title:"Tugrik sign"},{character:"₯",title:"Drachma sign"},{character:"₰",title:"German penny sign"},{character:"₱",title:"Peso sign"},{character:"₲",title:"Guarani sign"},{character:"₳",title:"Austral sign"},{character:"₴",title:"Hryvnia sign"},{character:"₵",title:"Cedi sign"},{character:"₶",title:"Livre tournois sign"},{character:"₷",title:"Spesmilo sign"},{character:"₸",title:"Tenge sign"},{character:"₹",title:"Indian rupee sign"},{character:"₺",title:"Turkish lira sign"},{character:"₻",title:"Nordic mark sign"},{character:"₼",title:"Manat sign"},{character:"₽",title:"Ruble sign"}]},ui={key:"text",label:"Text",characters:[{character:"‹",title:"Single left-pointing angle quotation mark"},{character:"›",title:"Single right-pointing angle quotation mark"},{character:"«",title:"Left-pointing double angle quotation mark"},{character:"»",title:"Right-pointing double angle quotation mark"},{character:"‘",title:"Left single quotation mark"},{character:"’",title:"Right single quotation mark"},{character:"“",title:"Left double quotation mark"},{character:"”",title:"Right double quotation mark"},{character:"‚",title:"Single low-9 quotation mark"},{character:"„",title:"Double low-9 quotation mark"},{character:"¡",title:"Inverted exclamation mark"},{character:"¿",title:"Inverted question mark"},{character:"‥",title:"Two dot leader"},{character:"…",title:"Horizontal ellipsis"},{character:"‡",title:"Double dagger"},{character:"‰",title:"Per mille sign"},{character:"‱",title:"Per ten thousand sign"},{character:"‼",title:"Double exclamation mark"},{character:"⁈",title:"Question exclamation mark"},{character:"⁉",title:"Exclamation question mark"},{character:"⁇",title:"Double question mark"},{character:"©",title:"Copyright sign"},{character:"®",title:"Registered sign"},{character:"™",title:"Trade mark sign"},{character:"§",title:"Section sign"},{character:"¶",title:"Paragraph sign"},{character:"⁋",title:"Reversed paragraph sign"}]},pi=[di,ui,ci,hi,li];class fi extends Ze{constructor(t){super(),this.panelRef=null,this.categories=t}render(t,e){return t("vega-popover",{trigger:"click",alignment:"start",placement:"bottom",showArrow:!1,isScreenPosition:!0,ref:t=>{t&&lt.addUniqueObserverToNode(t,pt,(()=>{this.handlePopoverShow()}))}},[t("div",{slot:"popover"},[t("vega-rich-text-special-characters-panel",{categories:this.categories,ref:t=>{t&&(this.panelRef=t,lt.addUniqueObserverToNode(t,dt,(t=>{this.insertCharacter(e,t.detail)})))}})]),t("div",{slot:"popover-content"},this.renderButton(t,e,{icon:"rte-special-characters",tooltip:{text:"Special Characters"}}))])}handleButtonClick(){}handleDropdownClick(){}handlePopoverShow(){this.panelRef&&this.panelRef.resetPanel()}insertCharacter(t,e){const n=t.rteRange,s=n.startNode;if(!s)return;const i=this.isCaretOnLineBreak(s,n)?this.insertAtLineBreak(s,e,n):this.insertAtTextNode(s,e,n);t.host.value.apply(new m(i.node,i.offset))}isCaretOnLineBreak(t,e){return t instanceof N&&"\n"===t.text&&e.startOffset===e.endOffset}insertAtTextNode(t,e,n){const s=new Le(e,n);return s.isFlushable=!0,t.apply(s),{node:t,offset:Math.min(n.startOffset+e.length,t.getRangeEndOffset())}}insertAtLineBreak(t,e,n){return{node:this.insertTextToLineBreakNode(t,e,n),offset:e.length}}insertTextToLineBreakNode(t,e,n){const s=t.parent,i=s.children.indexOf(t);if(0===n.startOffset&&s.children[i+1]){const n=t.cloneWithText(e),i=new F(t,n);return i.isFlushable=!0,s.apply(i),n}const r=new X(e);return r.isFlushable=!0,t.apply(r),t}}at.register({"rte-special-characters":{icon:'<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 448 512">\x3c!--! Font Awesome Pro 6.3.0 by @fontawesome - https://fontawesome.com License - https://fontawesome.com/license (Commercial License) Copyright 2023 Fonticons, Inc. --\x3e<path fill="currentColor" d="M224 80C126.8 80 48 158.8 48 256c0 63.7 33.8 119.5 84.6 150.4c11.4 7 19.4 19.6 19.4 34.2c0 21.8-17.6 39.4-39.4 39.4H24c-13.3 0-24-10.7-24-24s10.7-24 24-24H85.4C33.4 391 0 327.4 0 256C0 132.3 100.3 32 224 32s224 100.3 224 224c0 71.4-33.4 135-85.4 176H424c13.3 0 24 10.7 24 24s-10.7 24-24 24H335.4c-21.8 0-39.4-17.6-39.4-39.4c0-14.6 8-27.2 19.4-34.2C366.2 375.5 400 319.7 400 256c0-97.2-78.8-176-176-176z"/></svg>'}});class wi extends v{constructor(t){super(),this.categories=this.buildCategories(t)}prepareBeforeLoad(t){this.registerToolbarButtonRenderer(wi.TOOLBAR_BUTTON_KEY,new fi(this.categories),t)}buildCategories(t){const e=!1!==(null==t?void 0:t.includeDefaults)?pi:[];return(null==t?void 0:t.categories)?[...e,...t.categories]:e}}wi.TOOLBAR_BUTTON_KEY="special-characters";class gi{}class bi extends gi{canHandle(t){return t instanceof tt}collect(t){return[t]}}class vi extends gi{canHandle(t){return t instanceof A}collect(t,e){const n=t,s=[n];if(n.nestList&&n.nestList.length>0)for(const t of n.nestList)s.push(...e(t.children));return s}}class mi extends gi{canHandle(t){return t instanceof M}collect(t){return[t]}}class xi extends gi{canHandle(t){return null!=t.children&&t.children.length>0&&!(t.children[0]instanceof N)}collect(t,e){return e(t.children)}}class yi{constructor(){this.matches=[],this.currentIndex=-1,this.flatCache=new WeakMap,this.cachedContent=null,this.matchCase=!1,this.wholeWords=!1,this.blockSearchStrategies=[new bi,new vi,new mi,new xi]}search(t,e){if(this.invalidateCacheIfNeeded(t),!e)return this.matches=[],void(this.currentIndex=-1);const n=this.buildRegExp(e,this.getFindOptions()),s=this.collectSearchableBlocks(t.children),i=[];for(const t of s){let e=this.flatCache.get(t);e||(e=t instanceof tt?this.buildCodeBlockFlat(t):this.buildTextBlockFlat(t),this.flatCache.set(t,e));const{flatText:s,segments:r}=e;if(!s)continue;let a;for(n.lastIndex=0;null!==(a=n.exec(s));){const e=a.index+a[0].length,n=this.flatOffsetToNodePositions(r,e-a[1].length,e);n.length>0&&i.push({block:t,nodes:n,matchText:a[1]})}}this.matches=i,this.currentIndex=i.length>0?0:-1}next(){0!==this.matches.length&&(this.currentIndex=(this.currentIndex+1)%this.matches.length)}prev(){0!==this.matches.length&&(this.currentIndex=(this.currentIndex-1+this.matches.length)%this.matches.length)}setCurrentIndex(t){this.currentIndex=0!==this.matches.length?Math.max(0,Math.min(t,this.matches.length-1)):-1}getCurrentMatch(){var t;return null!==(t=this.matches[this.currentIndex])&&void 0!==t?t:null}getMatches(){return this.matches}getTotal(){return this.matches.length}getCurrentIndex(){return this.currentIndex}clearResults(){this.matches=[],this.currentIndex=-1}clear(){this.matches=[],this.currentIndex=-1,this.flatCache=new WeakMap,this.cachedContent=null}setMatchCase(t){this.matchCase=t}setWholeWords(t){this.wholeWords=t}invalidateCacheIfNeeded(t){t!==this.cachedContent&&(this.flatCache=new WeakMap,this.cachedContent=t)}buildRegExp(t,e){const n=this.escapeRegExp(t);let s="gu";if(e.matchCase||(s+="i"),e.wholeWords){const e="[^a-zA-ZÀ-ɏḀ-ỿ]",i=new RegExp(`^${e}`).test(t)?"":`(?:^|${e})`,r=new RegExp(`${e}$`).test(t)?"":`(?=${e}|$)`;return new RegExp(`${i}(${n})${r}`,s)}return new RegExp(`(${n})`,s)}escapeRegExp(t){return t.replace(/[.*+?^${}()|[\]\\]/g,"\\$&")}collectSearchableBlocks(t){const e=[],n=this.collectSearchableBlocks.bind(this);for(const s of t){const t=this.blockSearchStrategies.find((t=>t.canHandle(s)));t&&e.push(...t.collect(s,n))}return e}buildTextBlockFlat(t){const e=[],n=[];let s=0;for(const i of t.children){if(!i.isContentEditable()){n.push("\0"),s+="\0".length;continue}const t=i.text.length;e.push({node:i,start:s,end:s+t}),n.push(i.text),s+=t}return{flatText:n.join(""),segments:e}}buildCodeBlockFlat(t){const e=t.children[0];if(!e)return{flatText:"",segments:[]};const n=e.text;return{flatText:n,segments:[{node:e,start:0,end:n.length}]}}flatOffsetToNodePositions(t,e,n){const s=[];for(const i of t){if(i.end<=e)continue;if(i.start>=n)break;const t=Math.max(0,e-i.start),r=Math.min(i.end,n)-i.start;s.push({node:i.node,startOffset:t,endOffset:r})}return s}getFindOptions(){return{matchCase:this.matchCase,wholeWords:this.wholeWords}}}class Ci{constructor(){this.overlayContainer=null,be.registerCustomDarkModeColor({"rte-find-highlight-bg":"255, 235, 0, 0.55","rte-find-highlight-active-bg":"255, 190, 0, 0.7","rte-find-highlight-blend":"lighten"})}apply(t,e,n,s=!0){if(this.clear(),0===t.length)return;const i=this.getOrCreateOverlay(n);if(i){const n=i.getBoundingClientRect();let r=null;t.forEach(((t,s)=>{const a=s===e,o=a?"rgba(var(--v-rte-find-highlight-active-bg, 255, 150, 0, 0.5))":"rgba(var(--v-rte-find-highlight-bg, 255, 220, 0, 0.35))";t.nodes.forEach((t=>{const e=this.createHighlightRectangles(i,n,t,o);a&&!r&&e&&(r=e)}))})),s&&r&&r.scrollIntoView({block:"center",inline:"nearest"})}}clear(){this.overlayContainer&&(this.overlayContainer.innerHTML="")}getOrCreateOverlay(t){if(this.overlayContainer&&this.overlayContainer.isConnected)return this.overlayContainer;const e=ve();if(e){const n=this.resolveOverlayMountTarget(t);if(n){const t=e.createElement("div");return t.style.position="absolute",t.style.top="0",t.style.left="0",t.style.width="100%",t.style.height="100%",t.style.pointerEvents="none",t.style.overflow="visible",t.style.setProperty("mix-blend-mode","var(--v-rte-find-highlight-blend, multiply)"),n.appendChild(t),this.overlayContainer=t,t}}return null}resolveOverlayMountTarget(t){var e,n,s,i;return null!==(i=null===(s=null===(n=null===(e=t.shadowRoot)||void 0===e?void 0:e.querySelector("vega-rich-text-content"))||void 0===n?void 0:n.shadowRoot)||void 0===s?void 0:s.querySelector(".rich-text-content"))&&void 0!==i?i:null}createHighlightRectangles(t,e,n,s){const i=P.getDOMByEntity(n.node);if(!i)return null;const r=this.buildRange(i,n);if(!r)return null;const a=r.getClientRects(),o=ve();let l=null;if(o)for(let n=0;n<a.length;n++){const i=a[n];if(0===i.width||0===i.height)continue;const r=o.createElement("div");r.style.position="absolute",r.style.top=i.top-e.top+"px",r.style.left=i.left-e.left+"px",r.style.width=`${i.width}px`,r.style.height=`${i.height}px`,r.style.backgroundColor=s,r.style.pointerEvents="none",r.style.borderRadius="2px",t.appendChild(r),l||(l=r)}return l}buildRange(t,e){if(e.node instanceof et)return this.buildCodeBlockRange(t,e);const n=t.firstChild;if(!n)return null;const s=ve();if(s){const t=s.createRange();try{return t.setStart(n,e.startOffset),t.setEnd(n,e.endOffset),t}catch(t){return null}}return null}buildCodeBlockRange(t,e){const n=t.shadowRoot.querySelector("code");if(!n)return null;const s=ve();if(s){const t=s.createTreeWalker(n,NodeFilter.SHOW_TEXT);let i=0,r=null,a=0,o=null,l=0,c=t.nextNode();for(;c;){const n=c.textContent.length;if(!r&&i+n>e.startOffset&&(r=c,a=e.startOffset-i),i+n>=e.endOffset){o=c,l=e.endOffset-i;break}i+=n,c=t.nextNode()}if(r&&o){const t=s.createRange();try{return t.setStart(r,a),t.setEnd(o,l),t}catch(t){return null}}}return null}}class Li{constructor(t){this.context=t}setHost(t){this.context.hostRef=t}setKeyword(t){return this.context.keyword=t,this.context.state.clearResults(),this.context.hostRef&&this.context.highlightManager.clear(),{current:0,total:0}}applyAndGetResult(t=!0){const e=this.context.state.getTotal(),n=e>0?this.context.state.getCurrentIndex()+1:0;return this.context.hostRef&&this.context.highlightManager.apply(this.context.state.getMatches(),this.context.state.getCurrentIndex(),this.context.hostRef,t),{current:n,total:e}}}class ki extends Li{constructor(t){super(t)}find(){return this.context.hostRef?(this.context.state.search(this.context.hostRef.value,this.context.keyword),this.applyAndGetResult()):{current:0,total:0}}next(){return this.context.state.next(),this.applyAndGetResult()}prev(){return this.context.state.prev(),this.applyAndGetResult()}clear(){this.context.state.clear(),this.context.hostRef&&this.context.highlightManager.clear()}refresh(t=!0){if(!this.context.keyword||!this.context.hostRef)return null;const e=this.context.state.getCurrentIndex();return this.context.state.search(this.context.hostRef.value,this.context.keyword),this.context.state.setCurrentIndex(e),this.applyAndGetResult(t)}setMatchCase(t){return this.context.state.setMatchCase(t),this.updateFindResults()}setWholeWords(t){return this.context.state.setWholeWords(t),this.updateFindResults()}updateFindResults(){return this.context.state.clearResults(),this.context.keyword&&this.context.hostRef?(this.context.state.search(this.context.hostRef.value,this.context.keyword),this.applyAndGetResult()):{current:0,total:0}}}class Si extends Li{constructor(t){super(t),this.replacement="",this.flushFn=null}setFlushValue(t){this.flushFn=t}setReplacement(t){this.replacement=t}replace(){const t=this.context.state.getCurrentMatch();if(t&&this.context.hostRef&&this.flushFn){const e=this.context.state.getCurrentIndex();this.applyMatchReplacement(t),this.flushFn(this.context.hostRef.value),this.context.state.clear(),this.context.state.search(this.context.hostRef.value,this.context.keyword),this.context.state.setCurrentIndex(e)}return this.applyAndGetResult()}replaceAll(){if(this.context.state.getTotal()>0&&this.flushFn&&this.context.hostRef){const t=this.context.state.getMatches();for(let e=t.length-1;e>=0;e-=1)this.applyMatchReplacement(t[e]);this.flushFn(this.context.hostRef.value),this.context.state.clear(),this.context.state.search(this.context.hostRef.value,this.context.keyword)}return this.applyAndGetResult()}applyMatchReplacement(t){t.nodes.forEach(((t,e)=>{const n=0===e?this.replacement:"";t.node.text=t.node.text.slice(0,t.startOffset)+n+t.node.text.slice(t.endOffset)}))}}class Ti extends Ze{constructor(){super(...arguments),this.sharedContext={state:new yi,highlightManager:new Ci,hostRef:null,keyword:""},this.findController=new ki(this.sharedContext),this.replaceController=new Si(this.sharedContext),this.panelRef=null,this.popoverRef=null,this.isPopoverOpen=!1,this.scrollOnNextRefresh=!1,this.debouncedRefresh=ye(this.onContentChanged,100,this),this.panelActionHandlers={find:()=>this.findController.find(),prev:()=>this.findController.prev(),next:()=>this.findController.next(),replace:()=>(this.scrollOnNextRefresh=!0,this.replaceController.replace()),"replace-all":()=>(this.scrollOnNextRefresh=!0,this.replaceController.replaceAll()),"match-case":t=>this.findController.setMatchCase(t),"whole-words":t=>this.findController.setWholeWords(t),close:()=>this.closePanel()}}render(t,e){return this.syncEditorState(e),t("vega-popover",{trigger:"none",alignment:"start",placement:"bottom",showArrow:!1,isScreenPosition:!0,ref:t=>{t&&(this.popoverRef=t,lt.addUniqueObserverToNode(t,ut,(()=>{this.isPopoverOpen=!1,this.findController.clear(),this.updatePanel({current:0,total:0})})),lt.addUniqueObserverToNode(t,pt,(()=>{this.isPopoverOpen=!0})))}},[t("div",{slot:"popover"},[t("vega-rich-text-find-replace-panel",{ref:t=>{t&&(this.panelRef=t,lt.addUniqueObserverToNode(t,ft,(t=>{"keyword"===t.detail.type?this.updatePanel(this.findController.setKeyword(t.detail.value)):"replace"===t.detail.type&&this.replaceController.setReplacement(t.detail.value)})),lt.addUniqueObserverToNode(t,dt,(t=>{this.handlePanelAction(t.detail)})))}})]),t("div",{slot:"popover-content"},this.renderButton(t,e,{icon:"rte-find-replace",tooltip:{text:f.t("Find and replace")}}))])}handleButtonClick(){this.popoverRef&&(this.isPopoverOpen?this.popoverRef.hide():this.popoverRef.show())}handleDropdownClick(){}syncEditorState(t){this.findController.setHost(t.host);const e=this.getExtensionContext(t.host);e&&this.replaceController.setFlushValue(e.flushValue),lt.addUniqueObserverToNode(t.host,ft,this.debouncedRefresh),this.isHidden(t)&&this.isPopoverOpen&&this.popoverRef?this.popoverRef.hide():this.isPopoverOpen&&this.popoverRef&&this.popoverRef.show(!0)}handlePanelAction(t){const{action:e,data:n}=t,s=this.panelActionHandlers[e];if(s){const t=s(n);t&&this.updatePanel(t)}}updatePanel(t){this.panelRef&&this.panelRef.updateResult(t.current,t.total)}onContentChanged(){if(!this.isPopoverOpen)return;const t=this.scrollOnNextRefresh;this.scrollOnNextRefresh=!1;const e=this.findController.refresh(t);e&&this.updatePanel(e)}closePanel(){this.popoverRef&&this.popoverRef.hide()}}at.register({"rte-find-replace":{icon:'<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 512 512">\x3c!--! Font Awesome Pro 7.2.0 by @fontawesome - https://fontawesome.com License - https://fontawesome.com/license (Commercial License) Copyright 2026 Fonticons, Inc. --\x3e<path fill="currentColor" d="M208 48c39.6 0 75.9 14.4 103.8 38.2L279 119c-6.9 6.9-8.9 17.2-5.2 26.2S286.3 160 296 160l96 0c13.3 0 24-10.7 24-24l0-96c0-9.7-5.8-18.5-14.8-22.2S381.9 16.2 375 23L345.8 52.2c-36.7-32.5-85-52.2-137.8-52.2-99.4 0-182.4 69.7-203.1 162.8-2.9 12.9 5.3 25.8 18.2 28.6 1.4 .3 2.7 .5 4.1 .5l2.3 0C40.1 191.5 49.4 184 51.8 173.2 67.7 101.6 131.6 48 208 48zM386 224c-10.4 .7-19.4 8.1-21.8 18.8-15.9 71.7-79.8 125.2-156.2 125.2-39.6 0-75.9-14.4-103.8-38.2L137 297c6.9-6.9 8.9-17.2 5.2-26.2S129.7 256 120 256l-96 0c-13.3 0-24 10.7-24 24l0 96c0 9.7 5.8 18.5 14.8 22.2S34.1 399.8 41 393l29.2-29.2c36.7 32.5 85 52.2 137.8 52.2 48.8 0 93.7-16.8 129.1-44.9L471 505c9.4 9.4 24.6 9.4 33.9 0s9.4-24.6 0-33.9L371.1 337.1c19.2-24.2 33.1-52.8 40-84 2.9-12.9-5.3-25.8-18.2-28.6-1.2-.3-2.4-.4-3.6-.5l-3.2 0z"/></svg>'}});class Ei extends v{prepareBeforeLoad(t){this.registerToolbarButtonRenderer(Ei.TOOLBAR_BUTTON_KEY,new Ti,t)}}Ei.TOOLBAR_BUTTON_KEY="findReplace";const Oi=[{title:"0.5",value:"0.5"},{title:"1",value:"1"},{title:"1.5",value:"1.5"},{title:"2",value:"2"},{title:"2.5",value:"2.5"}];var Ai;!function(t){t.LINE_HEIGHT="LINE_HEIGHT"}(Ai||(Ai={}));class Ii extends K{constructor(t){super(),this.type=Ai.LINE_HEIGHT,this.lineHeight=t}static from(t){return[Ai.LINE_HEIGHT,new Ii(t)]}static getDefaultStyles(t){return{lineHeight:t}}toJSON(){return{lineHeight:this.lineHeight}}renderClass(){return null}clone(){return new Ii(this.lineHeight)}renderStyle(){return Ii.getDefaultStyles(this.lineHeight)}}class Ri extends q{constructor(t){super(),this.isFlushable=!0,this.lineHeight=t}toAnnotation(){return new Ii(this.lineHeight)}}class Ni extends D{handleAction(t,e){this.updateCustomStyleAnnotation(e,["lineHeight"])}}class Bi extends Ze{constructor(t){super(),this.options=t}render(t,e){const n=this.options.map((t=>{var e;return{key:t.value,label:null!==(e=t.title)&&void 0!==e?e:t.value}}));return this.renderDropdown(t,e,{selectType:"single",selectedSourceKey:this.getSelectedSourceValue(e)},[this.renderButton(t,e,{icon:"line-height",showArrowIcon:!0,tooltip:{text:f.t("Line Height")}}),this.renderDropdownListTemplate(t,n,e)])}isSelected(){return!1}isDisabled(t){var e;if(t.host.disabled)return!0;const n=this.getExtensionContext(t.host);return!!(null!==(e=null==n?void 0:n.getSelectedNodes())&&void 0!==e?e:[]).some((t=>{var e;return(null===(e=t.getAnnotationByType(nt.CODE))||void 0===e?void 0:e.code)||t.parent instanceof tt}))||this.getSelectedBlocks(t).some((t=>t instanceof tt||t instanceof S||!R.canHandle(Ri.name,t)))}handleDropdownClick(t,e){const n=t;this.getSelectedBlocks(e).forEach((t=>{t.apply(new Ri(n))}))}handleButtonClick(){}getSelectedSourceValue(t){const e=this.getSelectedBlocks(t);if(0===e.length)return"";const n=e[0].getAnnotationByType(Ai.LINE_HEIGHT);return e.every((t=>{const e=t.getAnnotationByType(Ai.LINE_HEIGHT);return(null==e?void 0:e.lineHeight)===(null==n?void 0:n.lineHeight)}))&&n?n.lineHeight:""}getSelectedBlocks(t){var e,n;const s=this.getExtensionContext(t.host),i=null!==(e=null==s?void 0:s.getSelectedNodes())&&void 0!==e?e:[],r=[];return i.forEach((t=>{t.parent instanceof B&&!r.includes(t.parent)&&r.push(t.parent)})),0===r.length&&(null===(n=t.rteRange.startNode)||void 0===n?void 0:n.parent)instanceof B&&r.push(t.rteRange.startNode.parent),r}}at.register({"line-height":{icon:'<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 576 512">\x3c!--! Font Awesome Pro 6.3.0 by @fontawesome - https://fontawesome.com License - https://fontawesome.com/license (Commercial License) Copyright 2023 Fonticons, Inc. --\x3e<path fill="currentColor" d="M113.8 39.9c-4.6-5.1-11-7.9-17.8-7.9s-13.3 2.9-17.8 7.9l-72 80c-8.9 9.9-8.1 25 1.8 33.9s25 8.1 33.9-1.8L72 118.5V393.5L41.8 359.9c-8.9-9.9-24-10.7-33.9-1.8s-10.7 24-1.8 33.9l72 80c4.6 5.1 11 7.9 17.8 7.9s13.3-2.9 17.8-7.9l72-80c8.9-9.9 8.1-25-1.8-33.9s-25-8.1-33.9 1.8L120 393.5V118.5l30.2 33.5c8.9 9.9 24 10.7 33.9 1.8s10.7-24 1.8-33.9l-72-80zM248 72c-13.3 0-24 10.7-24 24s10.7 24 24 24H552c13.3 0 24-10.7 24-24s-10.7-24-24-24H248zm0 160c-13.3 0-24 10.7-24 24s10.7 24 24 24H552c13.3 0 24-10.7 24-24s-10.7-24-24-24H248zM224 416c0 13.3 10.7 24 24 24H552c13.3 0 24-10.7 24-24s-10.7-24-24-24H248c-13.3 0-24 10.7-24 24z"/></svg>'}});const Mi=new Set([M.name,A.name]);class ji extends O{constructor(t=Oi){super(),this.allowedLineHeights=new Set(t.map((t=>t.value)))}canHandle(t){return Mi.has(t.name)}handle(t){var e,n;const s=null!==(n=null===(e=null==t?void 0:t.style.lineHeight)||void 0===e?void 0:e.trim())&&void 0!==n?n:"";return s&&this.allowedLineHeights.has(s)?{lineHeight:s}:{}}}class Di extends Q{constructor(){super(...arguments),this.stylesToBeFiltered={}}get alwaysFilter(){return!0}filterAnnotations(t){const e=t,n=e.lineHeight,s=e.customStyle;return n&&s&&s.lineHeight===n&&delete s.lineHeight,s&&0===Object.keys(s).length&&delete e.customStyle,t}}const _i=new WeakMap,Hi=new WeakSet;class Vi extends v{constructor(t=Oi){super(),this.options=t,this.toolbarButtonRenderer=null,this.registerAnnotationHandler(new ji(this.options)),[M,A].forEach((t=>{!function(t,e){_i.set(t,new Set(e.map((t=>t.value))))}(t,this.options)}))}prepareBeforeLoad(t){this.toolbarButtonRenderer=new Bi(this.options),this.registerToolbarButtonRenderer(Vi.TOOLBAR_BUTTON_KEY,this.toolbarButtonRenderer,t)}}[M,A].forEach((t=>{v.registerActionHandleStrategy(t.name,Ri.name,new Ni),it.register(t.name,new Di),function(t){Hi.has(t)||(Hi.add(t),v.attachAnnotationFromJson(t,"lineHeight",((e,n)=>{if("string"!=typeof n||""===n)return;e.annotationMap.set(...Ii.from(n));const s=_i.get(t);s&&s.size>0&&function(t,e){const n=t.annotationMap.get(Ai.LINE_HEIGHT);if(!n||e.has(n.lineHeight))return;const s=n.lineHeight;t.annotationMap.delete(Ai.LINE_HEIGHT);const i=t.annotationMap.get(U.CUSTOM_STYLE);i?i.customStyle=Object.assign(Object.assign({},i.customStyle),{lineHeight:s}):t.annotationMap.set(...st.from({lineHeight:s}))}(e,s)})))}(t)})),Vi.TOOLBAR_BUTTON_KEY="lineHeight";class Pi extends Ze{constructor(t){super(),this.controller=t}isHidden(){return!1}render(t,e){const n=this.isSelected();return this.renderButton(t,e,{icon:n?"rte-fullscreen-exit":"rte-fullscreen-enter",tooltip:{text:f.t(n?"Exit fullscreen mode":"Enter fullscreen mode")}})}isSelected(){return this.controller.isActive()}handleButtonClick(t){this.controller.toggleFullscreen();const e=this.getExtensionContext(t.host);e&&e.forceUpdate(t.host)}handleDropdownClick(){}}at.register({"rte-fullscreen-enter":{icon:'<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 512 512">\x3c!--! Font Awesome Pro 6.3.0 by @fontawesome - https://fontawesome.com License - https://fontawesome.com/license (Commercial License) Copyright 2023 Fonticons, Inc. --\x3e<path fill="currentColor" d="M295 183c-9.4 9.4-9.4 24.6 0 33.9s24.6 9.4 33.9 0l135-135V168c0 13.3 10.7 24 24 24s24-10.7 24-24V24c0-13.3-10.7-24-24-24H344c-13.3 0-24 10.7-24 24s10.7 24 24 24h86.1L295 183zM217 329c9.4-9.4 9.4-24.6 0-33.9s-24.6-9.4-33.9 0L48 430.1V344c0-13.3-10.7-24-24-24s-24 10.7-24 24V488c0 13.3 10.7 24 24 24H168c13.3 0 24-10.7 24-24s-10.7-24-24-24H81.9L217 329z"/></svg>'},"rte-fullscreen-exit":{icon:'<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 512 512">\x3c!--! Font Awesome Pro 6.3.0 by @fontawesome - https://fontawesome.com License - https://fontawesome.com/license (Commercial License) Copyright 2023 Fonticons, Inc. --\x3e<path fill="currentColor" d="M473 57c9.4-9.4 9.4-24.6 0-33.9s-24.6-9.4-33.9 0l-135 135V72c0-13.3-10.7-24-24-24s-24 10.7-24 24V216c0 13.3 10.7 24 24 24H424c13.3 0 24-10.7 24-24s-10.7-24-24-24H337.9L473 57zM7 455c-9.4 9.4-9.4 24.6 0 33.9s24.6 9.4 33.9 0l135-135V440c0 13.3 10.7 24 24 24s24-10.7 24-24V296c0-13.3-10.7-24-24-24H56c-13.3 0-24 10.7-24 24s10.7 24 24 24h86.1L7 455z"/></svg>'}});class Fi{constructor(t){this.active=!1,this.hostStyle=null,this.scrollX=0,this.scrollY=0,this.host=t}isActive(){return this.active}enterFullscreen(){var t,e,n,s;const i=this.host;if(this.active||!i.shadowRoot||!i.ownerDocument)return;this.hostStyle=i.getAttribute("style"),this.scrollX=null!==(e=null===(t=i.ownerDocument.defaultView)||void 0===t?void 0:t.scrollX)&&void 0!==e?e:0,this.scrollY=null!==(s=null===(n=i.ownerDocument.defaultView)||void 0===n?void 0:n.scrollY)&&void 0!==s?s:0,this.lockDocumentScroll(i.ownerDocument);const r=this.hostStyle?/;\s*$/.test(this.hostStyle)?this.hostStyle:`${this.hostStyle};`:"";i.setAttribute("style",`${r}${Fi.HOST_FULLSCREEN_STYLE}`),i instanceof HTMLElement&&h.setZIndex(i,"base");const a=i.ownerDocument.createElement("style");a.id=Fi.STYLE_TAG_ID,ot.nonce&&a.setAttribute("nonce",ot.nonce),a.textContent=Fi.INNER_FULLSCREEN_CSS,i.shadowRoot.appendChild(a),this.active=!0}exitFullscreen(){var t,e,n,s;const i=this.host;this.active&&(i.ownerDocument&&this.unlockDocumentScroll(i.ownerDocument),i instanceof HTMLElement&&h.removeZIndex(i,"base"),null===this.hostStyle?i.removeAttribute("style"):i.setAttribute("style",this.hostStyle),null===(e=null===(t=i.shadowRoot)||void 0===t?void 0:t.querySelector(`#${Fi.STYLE_TAG_ID}`))||void 0===e||e.remove(),null===(s=null===(n=i.ownerDocument)||void 0===n?void 0:n.defaultView)||void 0===s||s.scrollTo(this.scrollX,this.scrollY),this.active=!1)}toggleFullscreen(){this.active?this.exitFullscreen():this.enterFullscreen()}lockDocumentScroll(t){const e=Fi.documentScrollLockStates.get(t);e?Fi.documentScrollLockStates.set(t,Object.assign(Object.assign({},e),{lockCount:e.lockCount+1})):(Fi.documentScrollLockStates.set(t,{lockCount:1,bodyOverflow:t.body.style.overflow,documentOverflow:t.documentElement.style.overflow}),t.body.style.overflow="hidden",t.documentElement.style.overflow="hidden")}unlockDocumentScroll(t){const e=Fi.documentScrollLockStates.get(t);e&&(e.lockCount>1?Fi.documentScrollLockStates.set(t,Object.assign(Object.assign({},e),{lockCount:e.lockCount-1})):(t.body.style.overflow=e.bodyOverflow,t.documentElement.style.overflow=e.documentOverflow,Fi.documentScrollLockStates.delete(t)))}}Fi.STYLE_TAG_ID="v-rte-fullscreen-styles",Fi.HOST_FULLSCREEN_STYLE="position:fixed;inset:0;background-color:rgba(var(--v-bg-primary, 252, 252, 252, 1));",Fi.INNER_FULLSCREEN_CSS=":host > vega-flex { height: 100%; padding: 5px; box-sizing: border-box; } .rich-text-editor-container { flex: 1 !important; height: auto !important; min-height: 0 !important; resize: none !important; overflow: auto !important; } .source-view-container:not(.vega-hidden) { display: flex !important; flex: 1 !important; min-height: 0 !important; overflow: auto !important; flex-direction: column; }",Fi.documentScrollLockStates=new WeakMap;class zi extends v{prepareBeforeLoad(t){const e=new Fi(t);zi.controllerStore.set(t,e),this.registerToolbarButtonRenderer(zi.TOOLBAR_BUTTON_KEY,new Pi(e),t)}destroyExtension(){var t,e;if(null===(t=this.extensionContext)||void 0===t?void 0:t.host){const t=this.extensionContext.host;null===(e=zi.controllerStore.get(t))||void 0===e||e.exitFullscreen(),zi.controllerStore.delete(t)}}}zi.TOOLBAR_BUTTON_KEY="fullscreen",zi.controllerStore=zi.createStateStore();class $i{constructor(t,e){this.hostRoot=t,this.callbacks=e,this.chooserEl=null,this.dropdownEl=null,this.triggerButtonEl=null}open(t){this.destroy();const e=this.hostRoot.ownerDocument,n=e.createElement("div");n.setAttribute($i.CHOOSER_ATTR,"true"),n.style.position="fixed",n.style.zIndex="1000",n.style.left=`${t.left}px`,n.style.top=`${t.top}px`;const s=this.createPasteChooserDropdown(e,t.placement);s.placement=t.placement,n.append(s),this.hostRoot.appendChild(n),this.chooserEl=n,this.dropdownEl=s,s.addEventListener("vegaShow",(()=>{this.triggerButtonEl&&(this.triggerButtonEl.selected=!0)})),s.addEventListener("vegaHide",(()=>{this.triggerButtonEl&&(this.triggerButtonEl.selected=!1)}))}destroy(){var t;this.dropdownEl&&"function"==typeof this.dropdownEl.hide&&this.dropdownEl.hide(),(null===(t=this.chooserEl)||void 0===t?void 0:t.parentNode)&&this.chooserEl.parentNode.removeChild(this.chooserEl),this.triggerButtonEl&&(this.triggerButtonEl.selected=!1),this.dropdownEl=null,this.chooserEl=null,this.triggerButtonEl=null}includesEventPath(t){if(!this.chooserEl)return!1;const e=t.some((t=>"tagName"in t&&"VEGA-DROPDOWN-CONTENT-BOX"===t.tagName));return t.includes(this.chooserEl)||e}createPasteChooserDropdown(t,e){const n=t.createElement("vega-dropdown");n.trigger="click",n.selectType="single",n.selectedSourceKey="rich",n.maxWidth=220,n.alignment="start",n.itemDisplayRule="ellipsis",n.isScreenPosition=!0;const s=t.createElement("vega-rich-text-editor-toolbar-button"),i="top"===e[0]?"chevron-up":"chevron-down";s.setAttribute($i.CHOOSER_TRIGGER_ATTR,"true"),s.setAttribute("aria-label",f.t("Paste options")),s.setAttribute("arrow-icon",i),s.icon="rte-paste",s.showArrowIcon=!0,s.selected=!1,this.triggerButtonEl=s;const r=t.createElement("vega-tooltip");r.text=f.t("Paste options"),r.placement=["bottom","top"],r.append(s),n.append(r);const a=t.createElement("div");return a.setAttribute("slot","items"),a.append(this.createDropdownItem(t,"rich",f.t("Use rich text"),$i.CHOOSER_RICH_ATTR)),n.append(a),n.addEventListener("vegaDropdownClick",(t=>{const e=t.detail;"rich"===e&&this.callbacks.onModeSelect(e)})),n}createDropdownItem(t,e,n,s){const i=t.createElement("vega-dropdown-item");return i.itemKey=e,i.label=n,i.setAttribute(s,"true"),i}}at.register({"rte-paste":{icon:'<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 512 512">\x3c!--! Font Awesome Pro 6.3.0 by @fontawesome - https://fontawesome.com License - https://fontawesome.com/license (Commercial License) Copyright 2023 Fonticons, Inc. --\x3e<path fill="currentColor" d="M80 96v16c0 17.7 14.3 32 32 32h60.8c16.6-28.7 47.6-48 83.2-48h62c-7.1-27.6-32.2-48-62-48H215.4C211.6 20.9 188.2 0 160 0s-51.6 20.9-55.4 48H64C28.7 48 0 76.7 0 112V384c0 35.3 28.7 64 64 64h96V400H64c-8.8 0-16-7.2-16-16V112c0-8.8 7.2-16 16-16H80zm64-40a16 16 0 1 1 32 0 16 16 0 1 1 -32 0zM256 464c-8.8 0-16-7.2-16-16V192c0-8.8 7.2-16 16-16H384v48c0 17.7 14.3 32 32 32h48V448c0 8.8-7.2 16-16 16H256zm192 48c35.3 0 64-28.7 64-64V227.9c0-12.7-5.1-24.9-14.1-33.9l-51.9-51.9c-9-9-21.2-14.1-33.9-14.1H256c-35.3 0-64 28.7-64 64V448c0 35.3 28.7 64 64 64H448z"/></svg>'}}),$i.CHOOSER_ATTR="data-rte-paste-chooser",$i.CHOOSER_RICH_ATTR="data-rte-paste-type-rich",$i.CHOOSER_TRIGGER_ATTR="data-rte-paste-trigger";class Ki extends v{constructor(){super(...arguments),this.editableEl=null,this.contentHostEl=null,this.chooserUI=null,this.pendingPastePayload=null,this.listenerDocument=null,this.listenerWindow=null,this.handlePasteEvent=t=>{var e,n;const s=t.clipboardData;if(!s)return;const i=s.getData("text/html")||"",r=s.getData("text/plain")||"";if(!i&&!r)return t.preventDefault(),void t.stopPropagation();t.preventDefault(),t.stopPropagation();const a=this.cloneCurrentSelectionRange(),o=(null===(n=null===(e=this.extensionContext)||void 0===e?void 0:e.getSelectedNodes)||void 0===n?void 0:n.call(e))||[];this.pendingPastePayload={html:i,text:r,range:a,selectedNodes:[...o]},this.renderPasteChooser(t)},this.handleOutsidePointerDown=t=>{if(!this.chooserUI)return;const e="function"==typeof t.composedPath?t.composedPath():[];this.chooserUI.includesEventPath(e)||this.clearPasteChooser()},this.handleOutsideKeyDown=t=>{"Escape"===t.key&&this.clearPasteChooser()},this.handleOutsideScroll=()=>{this.clearPasteChooser()}}initialExtensionAfterLoad(t){super.initialExtensionAfterLoad(t),this.hostEl=t.host,this.attachPasteListener()}destroyExtension(){this.detachPasteListener(),this.clearPasteChooser()}attachPasteListener(){const{editableEl:t,contentHostEl:e}=this.getEditorElements();this.editableEl=t,this.contentHostEl=e,this.editableEl&&this.editableEl.addEventListener("paste",this.handlePasteEvent)}detachPasteListener(){this.editableEl&&this.editableEl.removeEventListener("paste",this.handlePasteEvent),this.editableEl=null,this.contentHostEl=null}getEditorElements(){var t,e,n,s,i;const r=null!==(n=null===(e=null===(t=this.hostEl)||void 0===t?void 0:t.shadowRoot)||void 0===e?void 0:e.querySelector("vega-rich-text-content"))&&void 0!==n?n:null;return{editableEl:null!==(i=null===(s=null==r?void 0:r.shadowRoot)||void 0===s?void 0:s.querySelector(".rich-text-content"))&&void 0!==i?i:null,contentHostEl:r}}getEditableElement(){const{editableEl:t}=this.getEditorElements();return t}cloneCurrentSelectionRange(){var t;const e=null===(t=this.extensionContext)||void 0===t?void 0:t.getSelection();return e&&e.rangeCount>0?e.getRangeAt(0).cloneRange():null}renderPasteChooser(t){var e,n;const s=null!==(n=null===(e=this.hostEl)||void 0===e?void 0:e.shadowRoot)&&void 0!==n?n:null;if(!s)return;this.clearPasteChooser(!1);const i=this.computeChooserPosition(t);this.chooserUI=new $i(s,{onModeSelect:t=>{this.applyPasteMode(t)}}),this.chooserUI.open(i),this.listenerDocument=this.hostEl.ownerDocument,this.listenerWindow=this.listenerDocument.defaultView,this.listenerDocument.addEventListener("mousedown",this.handleOutsidePointerDown,!0),this.listenerDocument.addEventListener("keydown",this.handleOutsideKeyDown,!0),this.listenerDocument.addEventListener("scroll",this.handleOutsideScroll,!0),this.listenerWindow&&this.listenerWindow.addEventListener("scroll",this.handleOutsideScroll,!0),this.contentHostEl&&this.contentHostEl.addEventListener("scroll",this.handleOutsideScroll)}computeChooserPosition(t){var e,n,s;const i=this.hostEl.getBoundingClientRect(),r=null!==(n=null===(e=this.hostEl.ownerDocument.defaultView)||void 0===e?void 0:e.innerHeight)&&void 0!==n?n:window.innerHeight,a=t,o="number"==typeof a.clientX&&a.clientX>0&&"number"==typeof a.clientY&&a.clientY>0,l=o?null:this.getCaretRect(),c=12,h=o?a.clientX:null!==(s=null==l?void 0:l.left)&&void 0!==s?s:i.left+c,d=o?a.clientY:l?l.bottom:i.top+40,u=Math.max(i.left+c,i.right-220),p=Math.min(Math.max(h,i.left+c),u),f=Math.max(d+8,i.top+c),w=r-f-c;return{left:p,top:f,placement:w>=88||w>=f-c?["bottom","top"]:["top","bottom"]}}getCaretRect(){var t,e;const n=null!==(e=null===(t=this.pendingPastePayload)||void 0===t?void 0:t.range)&&void 0!==e?e:this.cloneCurrentSelectionRange();if(!n)return null;const s=n.getBoundingClientRect();if(this.isUnavailableRect(s)){const t=n.getClientRects();return t.length>0?t[0]:this.getRangeContainerRect(n)}return s}isUnavailableRect(t){return 0===t.width&&0===t.height&&0===t.left&&0===t.top}getRangeContainerRect(t){var e,n,s,i,r,a;const o=null!==(e=t.startContainer)&&void 0!==e?e:null;if(!o)return null;if(o.nodeType===Node.ELEMENT_NODE){const e=o,a=null!==(n=e.childNodes[t.startOffset-1])&&void 0!==n?n:null,l=null!==(s=e.childNodes[t.startOffset])&&void 0!==s?s:null;return null!==(r=null!==(i=this.getNodeRect(a))&&void 0!==i?i:this.getNodeRect(l))&&void 0!==r?r:this.getNodeRect(e)}return null!==(a=this.getNodeRect(o))&&void 0!==a?a:this.getNodeRect(o.parentNode)}getNodeRect(t){var e,n;if(!t)return null;if(t.nodeType===Node.TEXT_NODE)return null!==(n=null===(e=t.parentElement)||void 0===e?void 0:e.getBoundingClientRect())&&void 0!==n?n:null;if(t.nodeType===Node.ELEMENT_NODE){const e=t.getBoundingClientRect();return this.isUnavailableRect(e)?null:e}return null}applyPasteMode(t){var e;if(!this.pendingPastePayload)return void this.clearPasteChooser();const n=null!==(e=this.editableEl)&&void 0!==e?e:this.getEditableElement();if(!n)return void this.clearPasteChooser();n.focus(),this.restoreSelectionRange(this.pendingPastePayload.range),this.restoreSelectionControllerState(this.pendingPastePayload);const s=this.createDataTransfer(this.pendingPastePayload.html,this.pendingPastePayload.text,t);this.dispatchBeforeInputPaste(n,s),this.clearPasteChooser()}restoreSelectionControllerState(t){t.range&&this.extensionContext&&this.extensionContext.setSelectedNodes(t.selectedNodes||[],{startNode:t.range.startContainer,endNode:t.range.endContainer,startOffset:t.range.startOffset,endOffset:t.range.endOffset})}restoreSelectionRange(t){var e;if(!t)return;const n=null===(e=this.extensionContext)||void 0===e?void 0:e.getSelection();n&&(n.removeAllRanges(),n.addRange(t))}dispatchBeforeInputPaste(t,e){const n=new CustomEvent("beforeinput",{bubbles:!0,cancelable:!0});try{Object.defineProperties(n,{inputType:{value:"insertFromPaste",configurable:!0},dataTransfer:{value:e,configurable:!0}})}catch(t){Object.assign(n,{inputType:"insertFromPaste",dataTransfer:e})}t.dispatchEvent(n)}createDataTransfer(t,e,n){if("undefined"!=typeof DataTransfer){const s=new DataTransfer;return t&&s.setData("text/html",t),e&&s.setData("text/plain",e),n&&s.setData("application/x-vega-rte-paste-mode",n),s}return{getData:s=>"text/html"===s?t:"text/plain"===s?e:"application/x-vega-rte-paste-mode"===s&&null!=n?n:""}}clearPasteChooser(t=!0){this.contentHostEl&&this.contentHostEl.removeEventListener("scroll",this.handleOutsideScroll),this.listenerWindow&&(this.listenerWindow.removeEventListener("scroll",this.handleOutsideScroll,!0),this.listenerWindow=null),this.listenerDocument&&(this.listenerDocument.removeEventListener("mousedown",this.handleOutsidePointerDown,!0),this.listenerDocument.removeEventListener("keydown",this.handleOutsideKeyDown,!0),this.listenerDocument.removeEventListener("scroll",this.handleOutsideScroll,!0),this.listenerDocument=null),this.chooserUI&&this.chooserUI.destroy(),this.chooserUI=null,t&&(this.pendingPastePayload=null)}}class qi extends I{constructor(t,e){super(),this.type="COPY_SELECTED_CONTENT_ACTION",this.selection=null,this.selectedNodes=[],this.copyResult=null,this.selection=t,this.selectedNodes=e}}class Wi extends Ze{render(t,e){return this.renderButton(t,e,{icon:"rte-copy",tooltip:{text:"Copy"}})}isDisabled(t){const e=this.getExtensionContext(t.host);return!e||e.host.disabled||!e.getSelection()||e.getSelection().isCollapsed}handleButtonClick(t){const e=this.getExtensionContext(t.host);e&&e.host&&e.host.value.apply(new qi(e.getSelection(),e.getSelectedNodes()))}handleDropdownClick(){}}at.register({"rte-copy":ke});class Ui extends v{prepareBeforeLoad(t){this.registerToolbarButtonRenderer(Ui.TOOLBAR_BUTTON_KEY,new Wi,t)}}R.register("COPY_SELECTED_CONTENT_ACTION",x.name,new class extends D{handleAction(t){const e=this.getParentBlocks(t.selectedNodes),{html:n,text:s}=this.getSelectedContent(t.selection,e);(s||n)&&(t.copyResult=this.copyToClipboard(n,s))}getSelectedContent(t,e){const n={html:"",text:""};if(!t||0===t.rangeCount||t.isCollapsed)return n;const s=t.getRangeAt(0),i=ve();if(!i)return n;const r=s.cloneContents(),a=i.createElement("div"),o=s.commonAncestorContainer;if(1===e.length){const t=this.getDOMByEntity(e[0]);if(t&&t.contains(o)){const e=this.wrapWithAncestorChain(r,o,t);return a.appendChild(e),n.html=a.innerHTML,n.text=a.textContent,n}}else if(e.length>1&&e.every((t=>"list-item"===t.type))){const t=e[0].parent;if(t&&e.every((e=>e.parent===t))){const e=this.getDOMByEntity(t);if(e&&e.contains(o)){const t=e.cloneNode(!1);return t.appendChild(r),a.appendChild(t),n.html=a.innerHTML,n.text=a.textContent,n}}}return a.appendChild(r),n.html=a.innerHTML,n.text=a.textContent,n}wrapWithAncestorChain(t,e,n){const s=n.cloneNode(!1),i=e.nodeType===Node.TEXT_NODE?e.parentElement:e;if(i===n)return s.appendChild(t),s;const r=i.cloneNode(!1);r.appendChild(t);let a=r,o=i.parentElement;for(;o&&o!==n;){const t=o.cloneNode(!1);t.appendChild(a),a=t,o=o.parentElement}if(s.appendChild(a),"LI"===s.tagName&&o&&o.parentElement&&"OL"===o.parentElement.tagName){const t=o.parentElement.cloneNode(!1);return t.appendChild(s),t}return s}getParentBlocks(t){const e=[];for(const n of t){const t=n.parent;t&&!e.includes(t)&&e.push(t)}return e}async copyToClipboard(t,e){let n=!1;try{const s=new Blob([t],{type:"text/html"}),i=new Blob([e],{type:"text/plain"}),r=new ClipboardItem({"text/html":s,"text/plain":i});await navigator.clipboard.write([r]),n=!0}catch(s){n=this.copyWithExecCommand(t,e),n||a.warn("Failed to copy the selected content to the clipboard. Use keyboard shortcuts instead.")}return n}copyWithExecCommand(t,e){const n=ve();if(!n)return!1;const s=n=>{n.clipboardData&&(n.clipboardData.setData("text/html",t),n.clipboardData.setData("text/plain",e)),n.preventDefault()};n.addEventListener("copy",s);try{return n.execCommand("copy")}finally{n.removeEventListener("copy",s)}}}),Ui.TOOLBAR_BUTTON_KEY="copy";class Gi extends I{constructor(t,e,n=!1){super(),this.type=$.DELETE_SELECTED_CONTENT,this.mergeFlag=!1,this.host=t,this.mergeFlag=e,this.isFlushable=n}}class Zi extends Wi{render(t,e){return this.renderButton(t,e,{icon:"rte-cut",tooltip:{text:"Cut"}})}async handleButtonClick(t){const e=this.getExtensionContext(t.host);if(e&&e.host){const{host:t}=e,n=new qi(e.getSelection(),e.getSelectedNodes());t.value.apply(n),await n.copyResult&&t.value.apply(new Gi(t,!0,!0))}}}at.register({"rte-cut":{icon:'<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 512 512">\x3c!--! Font Awesome Pro 7.2.0 by @fontawesome - https://fontawesome.com License - https://fontawesome.com/license (Commercial License) Copyright 2026 Fonticons, Inc. --\x3e<path fill="currentColor" d="M48 112a64 64 0 1 1 128 0 64 64 0 1 1 -128 0zm176 0C224 50.1 173.9 0 112 0S0 50.1 0 112 50.1 224 112 224c24 0 46.3-7.6 64.5-20.4l57.3 52.4-57.3 52.4C158.3 295.6 136 288 112 288 50.1 288 0 338.1 0 400s50.1 112 112 112 112-50.1 112-112c0-20.5-5.5-39.6-15.1-56.2L504.2 73.7c9.8-8.9 10.5-24.1 1.5-33.9s-24.1-10.5-33.9-1.5l-202.4 185.2-60.5-55.3c9.6-16.5 15.1-35.7 15.1-56.2zM471.8 473.7c9.8 8.9 25 8.3 33.9-1.5s8.3-25-1.5-33.9L338.6 286.8 302.7 319 471.8 473.7zM48 400a64 64 0 1 1 128 0 64 64 0 1 1 -128 0z"/></svg>'}});class Qi extends v{prepareBeforeLoad(t){this.registerToolbarButtonRenderer(Qi.TOOLBAR_BUTTON_KEY,new Zi,t)}}Qi.TOOLBAR_BUTTON_KEY="cut";class Ji extends I{constructor(t,e){super(),this.type=$.INSERT_NODE_TO_NEAREST_ROOT,this.rteRange=t,this.nodeToBeInserted=e}}class Yi extends D{handleAction(e,n){const{rteRange:s,token:i}=e;if(s&&s.startNode){const{key:r,label:a,customAttrs:o={wrapped:"true"}}=i,l=new Ye(t(),r,a,n);l.annotationMap.set("CUSTOM_ATTRIBUTE",new G(o)),n.apply(new Ji(s,l)),e.actionHandleResult=!0}}}const Xi=new class extends C{canHandle(t,e){const n=t[e];return"SPAN"===n.nodeName&&n.classList.contains("token")&&n.hasAttribute("token-key")?1:0}handle(e){const n=e[0],s=n.getAttribute("token-key"),i=n.textContent,r=L.generate(N,n),{customAttribute:a}=r,o=function(t,e){var n={};for(var s in t)Object.prototype.hasOwnProperty.call(t,s)&&e.indexOf(s)<0&&(n[s]=t[s]);if(null!=t&&"function"==typeof Object.getOwnPropertySymbols){var i=0;for(s=Object.getOwnPropertySymbols(t);i<s.length;i++)e.indexOf(s[i])<0&&Object.prototype.propertyIsEnumerable.call(t,s[i])&&(n[s[i]]=t[s[i]])}return n}(r,["customAttribute","customClass"]);return{id:t(),type:"token",token:s,text:i,annotations:Object.assign(Object.assign({},o),{customAttribute:this.createCustomAttrs(a)})}}appendChildBlocks(){}shouldProceedToElementChildren(){return!1}createCustomAttrs(t){const e=Object.assign(Object.assign({},t),{contenteditable:null,"template-token-key":null,"token-key":null,wrapped:"false"===t.wrapped?"false":"true"});return xe(e)}};class tr extends v{constructor(t=[]){super(),this.tokenRenderer=new Xe,this.tokenList=t,this.registerNode("token",Ye),this.registerRenderer("token",this.tokenRenderer),this.registerElementToNodeDTOClassStrategy(Xi)}prepareBeforeLoad(t){this.registerToolbarButtonRenderer(tr.TOOLBAR_BUTTON_KEY,new Je(this.tokenList),t)}}(()=>{const t=new Yi;v.registerActionHandleStrategy(M.name,"INSERT_TOKEN_NODE",t),v.registerActionHandleStrategy(A.name,"INSERT_TOKEN_NODE",t)})(),tr.TOOLBAR_BUTTON_KEY="token";export{Ge as A,Ze as B,Ye as C,Xe as D,tn as E,Js as F,Gi as G,un as H,Ji as I,Je as R,Ee as V,Re as a,Me as b,_e as c,Ke as d,Ue as e,tr as f,en as g,Oi as h,yn as i,js as j,Us as k,oi as l,wi as m,Ei as n,pi as o,li as p,ci as q,hi as r,di as s,ui as t,Vi as u,Ki as v,Fe as w,zi as x,Ui as y,Qi as z}