@wix/patterns-fields 1.65.0 → 1.67.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 (339) hide show
  1. package/dist/cjs/auto-field-types/validations.js +9 -13
  2. package/dist/cjs/auto-field-types/validations.js.map +1 -1
  3. package/dist/cjs/components/address/input/address-input.st.css.js +3 -3
  4. package/dist/cjs/components/address/input/address-input.st.css.js.map +1 -1
  5. package/dist/cjs/components/audio/actions/actions-menu/actions-menu.st.css.js +3 -3
  6. package/dist/cjs/components/audio/actions/actions-menu/actions-menu.st.css.js.map +1 -1
  7. package/dist/cjs/components/audio/audio-field/form-audio-field.st.css.js +4 -4
  8. package/dist/cjs/components/audio/audio-field/form-audio-field.st.css.js.map +1 -1
  9. package/dist/cjs/components/audio/audio-player/audio-player.st.css.js +2 -2
  10. package/dist/cjs/components/audio/audio-player/audio-player.st.css.js.map +1 -1
  11. package/dist/cjs/components/color-view/cell-color-view.st.css.js +3 -3
  12. package/dist/cjs/components/color-view/cell-color-view.st.css.js.map +1 -1
  13. package/dist/cjs/components/color-view/color-view.st.css.js +4 -4
  14. package/dist/cjs/components/color-view/color-view.st.css.js.map +1 -1
  15. package/dist/cjs/components/delete-dialog/delete-dialog.st.css.js +3 -3
  16. package/dist/cjs/components/delete-dialog/delete-dialog.st.css.js.map +1 -1
  17. package/dist/cjs/components/document/form-document-field.st.css.js +7 -7
  18. package/dist/cjs/components/document/form-document-field.st.css.js.map +1 -1
  19. package/dist/cjs/components/exclamation/exclamation.st.css.js +5 -5
  20. package/dist/cjs/components/exclamation/exclamation.st.css.js.map +1 -1
  21. package/dist/cjs/components/highlighted-text/highlighted-text.st.css.js +5 -5
  22. package/dist/cjs/components/highlighted-text/highlighted-text.st.css.js.map +1 -1
  23. package/dist/cjs/components/image/thumbnail-replace-overlay.st.css.js +3 -3
  24. package/dist/cjs/components/image/thumbnail-replace-overlay.st.css.js.map +1 -1
  25. package/dist/cjs/components/media-control/cell-media-edit-shell.st.css.js +2 -2
  26. package/dist/cjs/components/media-control/cell-media-edit-shell.st.css.js.map +1 -1
  27. package/dist/cjs/components/media-control/paste-url-button.st.css.js +4 -4
  28. package/dist/cjs/components/media-control/paste-url-button.st.css.js.map +1 -1
  29. package/dist/cjs/components/media-gallery/form-media-gallery-field.st.css.js +10 -10
  30. package/dist/cjs/components/media-gallery/form-media-gallery-field.st.css.js.map +1 -1
  31. package/dist/cjs/components/media-image/media-image.st.css.js +4 -4
  32. package/dist/cjs/components/media-image/media-image.st.css.js.map +1 -1
  33. package/dist/cjs/components/media-image/overlays/overlay.st.css.js +3 -3
  34. package/dist/cjs/components/media-image/overlays/overlay.st.css.js.map +1 -1
  35. package/dist/cjs/components/media-loader/media-loader.st.css.js +3 -3
  36. package/dist/cjs/components/media-loader/media-loader.st.css.js.map +1 -1
  37. package/dist/cjs/components/media-tag/web-media-tag/media-tag.st.css.js +2 -2
  38. package/dist/cjs/components/media-tag/web-media-tag/media-tag.st.css.js.map +1 -1
  39. package/dist/cjs/components/multi-document/cell-multi-document-edit.st.css.js +3 -3
  40. package/dist/cjs/components/multi-document/cell-multi-document-edit.st.css.js.map +1 -1
  41. package/dist/cjs/components/multi-document/multi-document-input/form-multi-document.st.css.js +5 -5
  42. package/dist/cjs/components/multi-document/multi-document-input/form-multi-document.st.css.js.map +1 -1
  43. package/dist/cjs/components/reference/cell-multi-reference-input.st.css.js +2 -2
  44. package/dist/cjs/components/reference/cell-multi-reference-input.st.css.js.map +1 -1
  45. package/dist/cjs/components/reference/cell-reference-input.st.css.js +3 -3
  46. package/dist/cjs/components/reference/cell-reference-input.st.css.js.map +1 -1
  47. package/dist/cjs/components/rich-content/cdn/load-ricos.js +135 -0
  48. package/dist/cjs/components/rich-content/cdn/load-ricos.js.map +1 -0
  49. package/dist/cjs/components/rich-content/cdn/types.js +4 -0
  50. package/dist/cjs/components/rich-content/cdn/types.js.map +1 -0
  51. package/dist/cjs/components/rich-content/cell-rich-content-input.js +3 -3
  52. package/dist/cjs/components/rich-content/cell-rich-content-input.js.map +1 -1
  53. package/dist/cjs/components/rich-content/cell-rich-content-view.js +2 -2
  54. package/dist/cjs/components/rich-content/cell-rich-content-view.js.map +1 -1
  55. package/dist/cjs/components/rich-content/editor.js.map +1 -1
  56. package/dist/cjs/components/rich-content/form-rich-content.js +2 -2
  57. package/dist/cjs/components/rich-content/form-rich-content.js.map +1 -1
  58. package/dist/cjs/components/rich-content/hooks/use-plain-text-rich-content.js +5 -3
  59. package/dist/cjs/components/rich-content/hooks/use-plain-text-rich-content.js.map +1 -1
  60. package/dist/cjs/components/rich-content/rich-content-input/default-value-input/rich-content-default-value-input.js.map +1 -1
  61. package/dist/cjs/components/rich-content/rich-content-input/default-value-input/rich-content-default-value-input.st.css.js +4 -4
  62. package/dist/cjs/components/rich-content/rich-content-input/default-value-input/rich-content-default-value-input.st.css.js.map +1 -1
  63. package/dist/cjs/components/rich-content/rich-content-input/default-value-read-only-input/rich-content-form-read-only-input.js.map +1 -1
  64. package/dist/cjs/components/rich-content/rich-content-input/form-input/rich-content-form-input.js.map +1 -1
  65. package/dist/cjs/components/rich-content/rich-content-input/form-input/rich-content-form-input.st.css.js +3 -3
  66. package/dist/cjs/components/rich-content/rich-content-input/form-input/rich-content-form-input.st.css.js.map +1 -1
  67. package/dist/cjs/components/rich-content/rich-content-input/form-input/use-rich-content-form-input.js.map +1 -1
  68. package/dist/cjs/components/rich-content/rich-content-input/form-read-only-input/rich-content-form-read-only-input.js.map +1 -1
  69. package/dist/cjs/components/rich-content/rich-content-input/form-read-only-input/rich-content-form-read-only-input.st.css.js +2 -2
  70. package/dist/cjs/components/rich-content/rich-content-input/form-read-only-input/rich-content-form-read-only-input.st.css.js.map +1 -1
  71. package/dist/cjs/components/rich-content/rich-content-input/hooks.js +7 -8
  72. package/dist/cjs/components/rich-content/rich-content-input/hooks.js.map +1 -1
  73. package/dist/cjs/components/rich-content/rich-content-input/rich-content-common/fullscreen-modal/fullscreen-modal.st.css.js +3 -3
  74. package/dist/cjs/components/rich-content/rich-content-input/rich-content-common/fullscreen-modal/fullscreen-modal.st.css.js.map +1 -1
  75. package/dist/cjs/components/rich-content/rich-content-input/rich-content-common/hooks.js +15 -3
  76. package/dist/cjs/components/rich-content/rich-content-input/rich-content-common/hooks.js.map +1 -1
  77. package/dist/cjs/components/rich-content/rich-content-input/rich-content-common/publish-loader/publish-loader.st.css.js +3 -3
  78. package/dist/cjs/components/rich-content/rich-content-input/rich-content-common/publish-loader/publish-loader.st.css.js.map +1 -1
  79. package/dist/cjs/components/rich-content/rich-content-input/rich-content-common/toggle-fullscreen-button/toggle-fullscreen-button.st.css.js +2 -2
  80. package/dist/cjs/components/rich-content/rich-content-input/rich-content-common/toggle-fullscreen-button/toggle-fullscreen-button.st.css.js.map +1 -1
  81. package/dist/cjs/components/rich-content/rich-content-input/rich-content-common/types.js.map +1 -1
  82. package/dist/cjs/components/rich-content/rich-content-input/rich-content-editor/plugins.js +38 -31
  83. package/dist/cjs/components/rich-content/rich-content-input/rich-content-editor/plugins.js.map +1 -1
  84. package/dist/cjs/components/rich-content/rich-content-input/rich-content-editor/rich-content-editor.js +27 -22
  85. package/dist/cjs/components/rich-content/rich-content-input/rich-content-editor/rich-content-editor.js.map +1 -1
  86. package/dist/cjs/components/rich-content/rich-content-input/rich-content-editor/rich-content-editor.st.css.js +7 -7
  87. package/dist/cjs/components/rich-content/rich-content-input/rich-content-editor/rich-content-editor.st.css.js.map +1 -1
  88. package/dist/cjs/components/rich-content/rich-content-input/rich-content-editor/rich-content-toolbar.js +10 -9
  89. package/dist/cjs/components/rich-content/rich-content-input/rich-content-editor/rich-content-toolbar.js.map +1 -1
  90. package/dist/cjs/components/rich-content/rich-content-input/rich-content-editor/rich-content-toolbar.st.css.js +5 -5
  91. package/dist/cjs/components/rich-content/rich-content-input/rich-content-editor/rich-content-toolbar.st.css.js.map +1 -1
  92. package/dist/cjs/components/rich-content/rich-content-input/rich-content-viewer/plugins.js +11 -17
  93. package/dist/cjs/components/rich-content/rich-content-input/rich-content-viewer/plugins.js.map +1 -1
  94. package/dist/cjs/components/rich-content/rich-content-input/rich-content-viewer/rich-content-viewer.js +47 -15
  95. package/dist/cjs/components/rich-content/rich-content-input/rich-content-viewer/rich-content-viewer.js.map +1 -1
  96. package/dist/cjs/components/rich-content/rich-content-input/rich-content-viewer/rich-content-viewer.st.css.js +4 -4
  97. package/dist/cjs/components/rich-content/rich-content-input/rich-content-viewer/rich-content-viewer.st.css.js.map +1 -1
  98. package/dist/cjs/components/rich-content/rich-content-input/services/rich-content-document-http-service.js.map +1 -1
  99. package/dist/cjs/components/rich-content/rich-content-input/services/types.js.map +1 -1
  100. package/dist/cjs/components/rich-text/rich-text-input/rich-text-editor/rich-editor.st.css.js +18 -18
  101. package/dist/cjs/components/rich-text/rich-text-input/rich-text-editor/rich-editor.st.css.js.map +1 -1
  102. package/dist/cjs/components/rich-text/rich-text-input/rich-text-editor/rich-text-editor.st.css.js +4 -4
  103. package/dist/cjs/components/rich-text/rich-text-input/rich-text-editor/rich-text-editor.st.css.js.map +1 -1
  104. package/dist/cjs/components/rich-text/rich-text-input/rich-text-editor/toolbar/toolbar.st.css.js +18 -18
  105. package/dist/cjs/components/rich-text/rich-text-input/rich-text-editor/toolbar/toolbar.st.css.js.map +1 -1
  106. package/dist/cjs/components/text/text-view.st.css.js +3 -3
  107. package/dist/cjs/components/text/text-view.st.css.js.map +1 -1
  108. package/dist/cjs/exports/ricos-statics-legacy.js +10 -0
  109. package/dist/cjs/exports/ricos-statics-legacy.js.map +1 -0
  110. package/dist/cjs/exports/ricos-statics.js +10 -0
  111. package/dist/cjs/exports/ricos-statics.js.map +1 -0
  112. package/dist/cjs/styles.global.css +1 -1
  113. package/dist/cjs/validations/rich-content.js +26 -6
  114. package/dist/cjs/validations/rich-content.js.map +1 -1
  115. package/dist/esm/auto-field-types/validations.js +10 -13
  116. package/dist/esm/auto-field-types/validations.js.map +1 -1
  117. package/dist/esm/components/address/input/address-input.st.css.js +2 -2
  118. package/dist/esm/components/address/input/address-input.st.css.js.map +1 -1
  119. package/dist/esm/components/audio/actions/actions-menu/actions-menu.st.css.js +2 -2
  120. package/dist/esm/components/audio/actions/actions-menu/actions-menu.st.css.js.map +1 -1
  121. package/dist/esm/components/audio/audio-field/form-audio-field.st.css.js +2 -2
  122. package/dist/esm/components/audio/audio-player/audio-player.st.css.js +2 -2
  123. package/dist/esm/components/audio/audio-player/audio-player.st.css.js.map +1 -1
  124. package/dist/esm/components/color-view/cell-color-view.st.css.js +2 -2
  125. package/dist/esm/components/color-view/color-view.st.css.js +2 -2
  126. package/dist/esm/components/color-view/color-view.st.css.js.map +1 -1
  127. package/dist/esm/components/delete-dialog/delete-dialog.st.css.js +2 -2
  128. package/dist/esm/components/document/form-document-field.st.css.js +2 -2
  129. package/dist/esm/components/exclamation/exclamation.st.css.js +2 -2
  130. package/dist/esm/components/exclamation/exclamation.st.css.js.map +1 -1
  131. package/dist/esm/components/highlighted-text/highlighted-text.st.css.js +3 -3
  132. package/dist/esm/components/image/thumbnail-replace-overlay.st.css.js +2 -2
  133. package/dist/esm/components/image/thumbnail-replace-overlay.st.css.js.map +1 -1
  134. package/dist/esm/components/media-control/cell-media-edit-shell.st.css.js +2 -2
  135. package/dist/esm/components/media-control/paste-url-button.st.css.js +2 -2
  136. package/dist/esm/components/media-gallery/form-media-gallery-field.st.css.js +2 -2
  137. package/dist/esm/components/media-image/media-image.st.css.js +3 -3
  138. package/dist/esm/components/media-image/media-image.st.css.js.map +1 -1
  139. package/dist/esm/components/media-image/overlays/overlay.st.css.js +2 -2
  140. package/dist/esm/components/media-loader/media-loader.st.css.js +2 -2
  141. package/dist/esm/components/media-loader/media-loader.st.css.js.map +1 -1
  142. package/dist/esm/components/media-tag/web-media-tag/media-tag.st.css.js +2 -2
  143. package/dist/esm/components/media-tag/web-media-tag/media-tag.st.css.js.map +1 -1
  144. package/dist/esm/components/multi-document/cell-multi-document-edit.st.css.js +2 -2
  145. package/dist/esm/components/multi-document/cell-multi-document-edit.st.css.js.map +1 -1
  146. package/dist/esm/components/multi-document/multi-document-input/form-multi-document.st.css.js +2 -2
  147. package/dist/esm/components/multi-document/multi-document-input/form-multi-document.st.css.js.map +1 -1
  148. package/dist/esm/components/reference/cell-multi-reference-input.st.css.js +2 -2
  149. package/dist/esm/components/reference/cell-reference-input.st.css.js +2 -2
  150. package/dist/esm/components/reference/cell-reference-input.st.css.js.map +1 -1
  151. package/dist/esm/components/rich-content/cdn/load-ricos.js +126 -0
  152. package/dist/esm/components/rich-content/cdn/load-ricos.js.map +1 -0
  153. package/dist/esm/components/rich-content/cdn/types.js +2 -0
  154. package/dist/esm/components/rich-content/cdn/types.js.map +1 -0
  155. package/dist/esm/components/rich-content/cell-rich-content-input.js +1 -1
  156. package/dist/esm/components/rich-content/cell-rich-content-input.js.map +1 -1
  157. package/dist/esm/components/rich-content/cell-rich-content-view.js +1 -1
  158. package/dist/esm/components/rich-content/cell-rich-content-view.js.map +1 -1
  159. package/dist/esm/components/rich-content/editor.js +1 -1
  160. package/dist/esm/components/rich-content/editor.js.map +1 -1
  161. package/dist/esm/components/rich-content/form-rich-content.js +1 -1
  162. package/dist/esm/components/rich-content/form-rich-content.js.map +1 -1
  163. package/dist/esm/components/rich-content/hooks/use-plain-text-rich-content.js +3 -2
  164. package/dist/esm/components/rich-content/hooks/use-plain-text-rich-content.js.map +1 -1
  165. package/dist/esm/components/rich-content/rich-content-input/default-value-input/rich-content-default-value-input.st.css.js +2 -2
  166. package/dist/esm/components/rich-content/rich-content-input/form-input/rich-content-form-input.st.css.js +2 -2
  167. package/dist/esm/components/rich-content/rich-content-input/form-input/rich-content-form-input.st.css.js.map +1 -1
  168. package/dist/esm/components/rich-content/rich-content-input/form-read-only-input/rich-content-form-read-only-input.st.css.js +2 -2
  169. package/dist/esm/components/rich-content/rich-content-input/hooks.js +4 -7
  170. package/dist/esm/components/rich-content/rich-content-input/hooks.js.map +1 -1
  171. package/dist/esm/components/rich-content/rich-content-input/rich-content-common/fullscreen-modal/fullscreen-modal.st.css.js +2 -2
  172. package/dist/esm/components/rich-content/rich-content-input/rich-content-common/fullscreen-modal/fullscreen-modal.st.css.js.map +1 -1
  173. package/dist/esm/components/rich-content/rich-content-input/rich-content-common/hooks.js +14 -2
  174. package/dist/esm/components/rich-content/rich-content-input/rich-content-common/hooks.js.map +1 -1
  175. package/dist/esm/components/rich-content/rich-content-input/rich-content-common/publish-loader/publish-loader.st.css.js +2 -2
  176. package/dist/esm/components/rich-content/rich-content-input/rich-content-common/toggle-fullscreen-button/toggle-fullscreen-button.st.css.js +2 -2
  177. package/dist/esm/components/rich-content/rich-content-input/rich-content-common/toggle-fullscreen-button/toggle-fullscreen-button.st.css.js.map +1 -1
  178. package/dist/esm/components/rich-content/rich-content-input/rich-content-editor/plugins.js +49 -41
  179. package/dist/esm/components/rich-content/rich-content-input/rich-content-editor/plugins.js.map +1 -1
  180. package/dist/esm/components/rich-content/rich-content-input/rich-content-editor/rich-content-editor.js +10 -5
  181. package/dist/esm/components/rich-content/rich-content-input/rich-content-editor/rich-content-editor.js.map +1 -1
  182. package/dist/esm/components/rich-content/rich-content-input/rich-content-editor/rich-content-editor.st.css.js +2 -2
  183. package/dist/esm/components/rich-content/rich-content-input/rich-content-editor/rich-content-toolbar.js +3 -1
  184. package/dist/esm/components/rich-content/rich-content-input/rich-content-editor/rich-content-toolbar.js.map +1 -1
  185. package/dist/esm/components/rich-content/rich-content-input/rich-content-editor/rich-content-toolbar.st.css.js +2 -2
  186. package/dist/esm/components/rich-content/rich-content-input/rich-content-editor/rich-content-toolbar.st.css.js.map +1 -1
  187. package/dist/esm/components/rich-content/rich-content-input/rich-content-viewer/plugins.js +31 -37
  188. package/dist/esm/components/rich-content/rich-content-input/rich-content-viewer/plugins.js.map +1 -1
  189. package/dist/esm/components/rich-content/rich-content-input/rich-content-viewer/rich-content-viewer.js +11 -5
  190. package/dist/esm/components/rich-content/rich-content-input/rich-content-viewer/rich-content-viewer.js.map +1 -1
  191. package/dist/esm/components/rich-content/rich-content-input/rich-content-viewer/rich-content-viewer.st.css.js +2 -2
  192. package/dist/esm/components/rich-content/rich-content-input/rich-content-viewer/rich-content-viewer.st.css.js.map +1 -1
  193. package/dist/esm/components/rich-text/rich-text-input/rich-text-editor/rich-editor.st.css.js +2 -2
  194. package/dist/esm/components/rich-text/rich-text-input/rich-text-editor/rich-text-editor.st.css.js +2 -2
  195. package/dist/esm/components/rich-text/rich-text-input/rich-text-editor/toolbar/toolbar.st.css.js +2 -2
  196. package/dist/esm/components/rich-text/rich-text-input/rich-text-editor/toolbar/toolbar.st.css.js.map +1 -1
  197. package/dist/esm/components/text/text-view.st.css.js +2 -2
  198. package/dist/esm/components/text/text-view.st.css.js.map +1 -1
  199. package/dist/esm/exports/ricos-statics-legacy.js +6 -0
  200. package/dist/esm/exports/ricos-statics-legacy.js.map +1 -0
  201. package/dist/esm/exports/ricos-statics.js +10 -0
  202. package/dist/esm/exports/ricos-statics.js.map +1 -0
  203. package/dist/esm/styles.global.css +1 -1
  204. package/dist/esm/validations/rich-content.js +18 -1
  205. package/dist/esm/validations/rich-content.js.map +1 -1
  206. package/dist/types/auto-field-types/validations.d.ts +8 -0
  207. package/dist/types/auto-field-types/validations.d.ts.map +1 -1
  208. package/dist/types/components/address/input/address-input.st.css.d.ts.map +1 -1
  209. package/dist/types/components/audio/actions/actions-menu/actions-menu.st.css.d.ts.map +1 -1
  210. package/dist/types/components/audio/audio-player/audio-player.st.css.d.ts.map +1 -1
  211. package/dist/types/components/color-view/color-view.st.css.d.ts.map +1 -1
  212. package/dist/types/components/exclamation/exclamation.st.css.d.ts.map +1 -1
  213. package/dist/types/components/image/thumbnail-replace-overlay.st.css.d.ts.map +1 -1
  214. package/dist/types/components/media-image/media-image.st.css.d.ts.map +1 -1
  215. package/dist/types/components/media-loader/media-loader.st.css.d.ts.map +1 -1
  216. package/dist/types/components/media-tag/web-media-tag/media-tag.st.css.d.ts.map +1 -1
  217. package/dist/types/components/multi-document/cell-multi-document-edit.st.css.d.ts.map +1 -1
  218. package/dist/types/components/multi-document/multi-document-input/form-multi-document.st.css.d.ts.map +1 -1
  219. package/dist/types/components/reference/cell-reference-input.st.css.d.ts.map +1 -1
  220. package/dist/types/components/rich-content/cdn/load-ricos.d.ts +11 -0
  221. package/dist/types/components/rich-content/cdn/load-ricos.d.ts.map +1 -0
  222. package/dist/types/components/rich-content/cdn/types.d.ts +20 -0
  223. package/dist/types/components/rich-content/cdn/types.d.ts.map +1 -0
  224. package/dist/types/components/rich-content/cell-rich-content-input.d.ts +1 -1
  225. package/dist/types/components/rich-content/cell-rich-content-input.d.ts.map +1 -1
  226. package/dist/types/components/rich-content/form-rich-content.d.ts +1 -1
  227. package/dist/types/components/rich-content/form-rich-content.d.ts.map +1 -1
  228. package/dist/types/components/rich-content/hooks/use-plain-text-rich-content.d.ts +1 -1
  229. package/dist/types/components/rich-content/hooks/use-plain-text-rich-content.d.ts.map +1 -1
  230. package/dist/types/components/rich-content/rich-content-input/default-value-input/rich-content-default-value-input.d.ts +1 -1
  231. package/dist/types/components/rich-content/rich-content-input/default-value-input/rich-content-default-value-input.d.ts.map +1 -1
  232. package/dist/types/components/rich-content/rich-content-input/default-value-read-only-input/rich-content-form-read-only-input.d.ts +1 -1
  233. package/dist/types/components/rich-content/rich-content-input/default-value-read-only-input/rich-content-form-read-only-input.d.ts.map +1 -1
  234. package/dist/types/components/rich-content/rich-content-input/form-input/rich-content-form-input.d.ts +1 -1
  235. package/dist/types/components/rich-content/rich-content-input/form-input/rich-content-form-input.d.ts.map +1 -1
  236. package/dist/types/components/rich-content/rich-content-input/form-input/rich-content-form-input.st.css.d.ts.map +1 -1
  237. package/dist/types/components/rich-content/rich-content-input/form-input/use-rich-content-form-input.d.ts +3 -3
  238. package/dist/types/components/rich-content/rich-content-input/form-input/use-rich-content-form-input.d.ts.map +1 -1
  239. package/dist/types/components/rich-content/rich-content-input/form-read-only-input/rich-content-form-read-only-input.d.ts +1 -1
  240. package/dist/types/components/rich-content/rich-content-input/form-read-only-input/rich-content-form-read-only-input.d.ts.map +1 -1
  241. package/dist/types/components/rich-content/rich-content-input/hooks.d.ts +2 -2
  242. package/dist/types/components/rich-content/rich-content-input/hooks.d.ts.map +1 -1
  243. package/dist/types/components/rich-content/rich-content-input/rich-content-common/fullscreen-modal/fullscreen-modal.st.css.d.ts.map +1 -1
  244. package/dist/types/components/rich-content/rich-content-input/rich-content-common/hooks.d.ts +11 -1
  245. package/dist/types/components/rich-content/rich-content-input/rich-content-common/hooks.d.ts.map +1 -1
  246. package/dist/types/components/rich-content/rich-content-input/rich-content-common/toggle-fullscreen-button/toggle-fullscreen-button.st.css.d.ts.map +1 -1
  247. package/dist/types/components/rich-content/rich-content-input/rich-content-common/types.d.ts +1 -1
  248. package/dist/types/components/rich-content/rich-content-input/rich-content-common/types.d.ts.map +1 -1
  249. package/dist/types/components/rich-content/rich-content-input/rich-content-editor/plugins.d.ts +7 -2
  250. package/dist/types/components/rich-content/rich-content-input/rich-content-editor/plugins.d.ts.map +1 -1
  251. package/dist/types/components/rich-content/rich-content-input/rich-content-editor/rich-content-editor.d.ts +2 -1
  252. package/dist/types/components/rich-content/rich-content-input/rich-content-editor/rich-content-editor.d.ts.map +1 -1
  253. package/dist/types/components/rich-content/rich-content-input/rich-content-editor/rich-content-toolbar.d.ts +1 -1
  254. package/dist/types/components/rich-content/rich-content-input/rich-content-editor/rich-content-toolbar.d.ts.map +1 -1
  255. package/dist/types/components/rich-content/rich-content-input/rich-content-editor/rich-content-toolbar.st.css.d.ts.map +1 -1
  256. package/dist/types/components/rich-content/rich-content-input/rich-content-viewer/plugins.d.ts +6 -15
  257. package/dist/types/components/rich-content/rich-content-input/rich-content-viewer/plugins.d.ts.map +1 -1
  258. package/dist/types/components/rich-content/rich-content-input/rich-content-viewer/rich-content-viewer.d.ts +2 -2
  259. package/dist/types/components/rich-content/rich-content-input/rich-content-viewer/rich-content-viewer.d.ts.map +1 -1
  260. package/dist/types/components/rich-content/rich-content-input/rich-content-viewer/rich-content-viewer.st.css.d.ts.map +1 -1
  261. package/dist/types/components/rich-content/rich-content-input/services/types.d.ts +1 -1
  262. package/dist/types/components/rich-content/rich-content-input/services/types.d.ts.map +1 -1
  263. package/dist/types/components/rich-text/rich-text-input/rich-text-editor/toolbar/toolbar.st.css.d.ts.map +1 -1
  264. package/dist/types/components/text/text-view.st.css.d.ts.map +1 -1
  265. package/dist/types/exports/ricos-statics-legacy.d.ts +6 -0
  266. package/dist/types/exports/ricos-statics-legacy.d.ts.map +1 -0
  267. package/dist/types/exports/ricos-statics.d.ts +10 -0
  268. package/dist/types/exports/ricos-statics.d.ts.map +1 -0
  269. package/dist/types/validations/rich-content.d.ts +9 -1
  270. package/dist/types/validations/rich-content.d.ts.map +1 -1
  271. package/package.json +24 -7
  272. package/src/__tests__/components/rich-content/form-rich-content.spec.tsx +1 -1
  273. package/src/__tests__/components/rich-content/load-ricos.spec.ts +17 -0
  274. package/src/__tests__/components/rich-content-editor.spec.tsx +40 -32
  275. package/src/__tests__/validations/rich-content.spec.ts +1 -1
  276. package/src/auto-field-types/validations.ts +25 -13
  277. package/src/components/address/input/address-input.st.css.ts +2 -2
  278. package/src/components/audio/actions/actions-menu/actions-menu.st.css.ts +2 -2
  279. package/src/components/audio/audio-field/form-audio-field.st.css.ts +2 -2
  280. package/src/components/audio/audio-player/audio-player.st.css.ts +2 -2
  281. package/src/components/color-view/cell-color-view.st.css.ts +2 -2
  282. package/src/components/color-view/color-view.st.css.ts +2 -2
  283. package/src/components/delete-dialog/delete-dialog.st.css.ts +2 -2
  284. package/src/components/document/form-document-field.st.css.ts +2 -2
  285. package/src/components/exclamation/exclamation.st.css.ts +2 -2
  286. package/src/components/highlighted-text/highlighted-text.st.css.ts +3 -3
  287. package/src/components/image/thumbnail-replace-overlay.st.css.ts +2 -2
  288. package/src/components/media-control/cell-media-edit-shell.st.css.ts +2 -2
  289. package/src/components/media-control/paste-url-button.st.css.ts +2 -2
  290. package/src/components/media-gallery/form-media-gallery-field.st.css.ts +2 -2
  291. package/src/components/media-image/media-image.st.css.ts +3 -3
  292. package/src/components/media-image/overlays/overlay.st.css.ts +2 -2
  293. package/src/components/media-loader/media-loader.st.css.ts +2 -2
  294. package/src/components/media-tag/web-media-tag/media-tag.st.css.ts +2 -2
  295. package/src/components/multi-document/cell-multi-document-edit.st.css.ts +2 -2
  296. package/src/components/multi-document/multi-document-input/form-multi-document.st.css.ts +2 -2
  297. package/src/components/reference/cell-multi-reference-input.st.css.ts +2 -2
  298. package/src/components/reference/cell-reference-input.st.css.ts +2 -2
  299. package/src/components/rich-content/cdn/load-ricos.ts +184 -0
  300. package/src/components/rich-content/cdn/types.ts +21 -0
  301. package/src/components/rich-content/cell-rich-content-input.tsx +2 -2
  302. package/src/components/rich-content/cell-rich-content-view.tsx +1 -1
  303. package/src/components/rich-content/editor.ts +1 -1
  304. package/src/components/rich-content/form-rich-content.tsx +2 -2
  305. package/src/components/rich-content/hooks/use-plain-text-rich-content.ts +4 -3
  306. package/src/components/rich-content/rich-content-input/default-value-input/rich-content-default-value-input.st.css.ts +2 -2
  307. package/src/components/rich-content/rich-content-input/default-value-input/rich-content-default-value-input.tsx +1 -1
  308. package/src/components/rich-content/rich-content-input/default-value-read-only-input/rich-content-form-read-only-input.tsx +1 -1
  309. package/src/components/rich-content/rich-content-input/form-input/rich-content-form-input.st.css.ts +2 -2
  310. package/src/components/rich-content/rich-content-input/form-input/rich-content-form-input.tsx +1 -1
  311. package/src/components/rich-content/rich-content-input/form-input/use-rich-content-form-input.ts +1 -1
  312. package/src/components/rich-content/rich-content-input/form-read-only-input/rich-content-form-read-only-input.st.css.ts +2 -2
  313. package/src/components/rich-content/rich-content-input/form-read-only-input/rich-content-form-read-only-input.tsx +1 -1
  314. package/src/components/rich-content/rich-content-input/hooks.ts +5 -8
  315. package/src/components/rich-content/rich-content-input/rich-content-common/fullscreen-modal/fullscreen-modal.st.css.ts +2 -2
  316. package/src/components/rich-content/rich-content-input/rich-content-common/hooks.ts +15 -3
  317. package/src/components/rich-content/rich-content-input/rich-content-common/publish-loader/publish-loader.st.css.ts +2 -2
  318. package/src/components/rich-content/rich-content-input/rich-content-common/toggle-fullscreen-button/toggle-fullscreen-button.st.css.ts +2 -2
  319. package/src/components/rich-content/rich-content-input/rich-content-common/types.ts +1 -1
  320. package/src/components/rich-content/rich-content-input/rich-content-editor/plugins.ts +59 -72
  321. package/src/components/rich-content/rich-content-input/rich-content-editor/rich-content-editor.st.css.ts +2 -2
  322. package/src/components/rich-content/rich-content-input/rich-content-editor/rich-content-editor.tsx +11 -7
  323. package/src/components/rich-content/rich-content-input/rich-content-editor/rich-content-toolbar.st.css.ts +2 -2
  324. package/src/components/rich-content/rich-content-input/rich-content-editor/rich-content-toolbar.tsx +4 -2
  325. package/src/components/rich-content/rich-content-input/rich-content-viewer/plugins.ts +33 -63
  326. package/src/components/rich-content/rich-content-input/rich-content-viewer/rich-content-viewer.st.css.ts +2 -2
  327. package/src/components/rich-content/rich-content-input/rich-content-viewer/rich-content-viewer.tsx +26 -10
  328. package/src/components/rich-content/rich-content-input/services/rich-content-document-http-service.ts +1 -1
  329. package/src/components/rich-content/rich-content-input/services/types.ts +1 -1
  330. package/src/components/rich-text/rich-text-input/rich-text-editor/rich-editor.st.css.ts +2 -2
  331. package/src/components/rich-text/rich-text-input/rich-text-editor/rich-text-editor.st.css.ts +2 -2
  332. package/src/components/rich-text/rich-text-input/rich-text-editor/toolbar/toolbar.st.css.ts +2 -2
  333. package/src/components/text/text-view.st.css.ts +2 -2
  334. package/src/exports/ricos-statics-legacy.ts +5 -0
  335. package/src/exports/ricos-statics.ts +9 -0
  336. package/src/styles.global.css +1 -1
  337. package/src/validations/rich-content.ts +20 -2
  338. package/utils/@wix/patterns-fields-ricos-statics/legacy/package.json +5 -0
  339. package/utils/@wix/patterns-fields-ricos-statics/package.json +5 -0
@@ -3,44 +3,51 @@
3
3
  exports.__esModule = true;
4
4
  exports.usePlugins = void 0;
5
5
  var _react = require("react");
6
- var _ricos = require("@wix/ricos");
7
6
  var _utils = require("../../../../utils");
8
7
  var _consts = require("../consts");
9
- const {
10
- Instagram,
11
- Twitter,
12
- TikTok
13
- } = _ricos.LinkPreviewProviders;
14
- const {
15
- event,
16
- booking,
17
- product
18
- } = _ricos.verticalEmbedProviders;
19
8
  const layoutPlugin = {
20
9
  type: 'LAYOUT',
21
10
  showInQuickActions: true,
22
11
  showInToolbars: true
23
12
  };
24
- const usePlugins = colorScheme => {
25
- return (0, _react.useMemo)(() => [(0, _ricos.pluginHeadings)({
26
- inlinePopups: true
27
- }), (0, _ricos.pluginTextColor)({
28
- inlinePopups: true,
29
- colorScheme
30
- }), (0, _ricos.pluginTextHighlight)({
31
- inlinePopups: true,
32
- colorScheme
33
- }), (0, _ricos.pluginLineSpacing)({
34
- inlinePopups: true
35
- }), (0, _ricos.pluginIndent)(), (0, _ricos.pluginLink)(), (0, _ricos.pluginImage)(), (0, _ricos.pluginVideo)(), (0, _ricos.pluginGallery)(), (0, _ricos.pluginDivider)(), (0, _ricos.pluginTable)({
36
- toolbar: {}
37
- }), (0, _ricos.pluginAi)({
38
- appDefId: _consts.CMS_RICOS_APP_ID
39
- }), (0, _ricos.pluginFileUpload)(), (0, _ricos.pluginHtml)(), (0, _ricos.pluginLinkPreview)({
40
- exposeEmbedButtons: [Instagram, Twitter, TikTok]
41
- }), (0, _ricos.pluginVerticalEmbed)({
42
- exposeEmbedButtons: [event, booking, product]
43
- }), (0, _ricos.pluginCodeBlock)(), (0, _ricos.pluginEmoji)(), (0, _ricos.pluginSpoiler)(), (0, _ricos.pluginGiphy)(), (0, _ricos.pluginCollapsibleList)(), (0, _ricos.pluginLinkButton)(), layoutPlugin].filter(_utils.isTruthy), [colorScheme]);
13
+
14
+ /**
15
+ * Plugin creators come from the CDN module, so this returns an empty list until
16
+ * it has loaded. The editor is not rendered before then, so nothing sees it.
17
+ */
18
+ const usePlugins = (ricos, colorScheme) => {
19
+ return (0, _react.useMemo)(() => {
20
+ if (!ricos) {
21
+ return [];
22
+ }
23
+ const {
24
+ Instagram,
25
+ Twitter,
26
+ TikTok
27
+ } = ricos.LinkPreviewProviders;
28
+ const {
29
+ event,
30
+ booking,
31
+ product
32
+ } = ricos.verticalEmbedProviders;
33
+ return [ricos.pluginHeadings(), ricos.pluginTextColor({
34
+ inlinePopups: true,
35
+ colorScheme
36
+ }), ricos.pluginTextHighlight({
37
+ inlinePopups: true,
38
+ colorScheme
39
+ }), ricos.pluginLineSpacing({
40
+ inlinePopups: true
41
+ }), ricos.pluginIndent(), ricos.pluginLink(), ricos.pluginImage(), ricos.pluginVideo(), ricos.pluginGallery(), ricos.pluginDivider(), ricos.pluginTable({
42
+ toolbar: {}
43
+ }), ricos.pluginAi({
44
+ appDefId: _consts.CMS_RICOS_APP_ID
45
+ }), ricos.pluginFileUpload(), ricos.pluginHtml(), ricos.pluginLinkPreview({
46
+ exposeEmbedButtons: [Instagram, Twitter, TikTok]
47
+ }), ricos.pluginVerticalEmbed({
48
+ exposeEmbedButtons: [event, booking, product]
49
+ }), ricos.pluginCodeBlock(), ricos.pluginEmoji(), ricos.pluginSpoiler(), ricos.pluginGiphy(), ricos.pluginCollapsibleList(), ricos.pluginLinkButton(), layoutPlugin].filter(_utils.isTruthy);
50
+ }, [ricos, colorScheme]);
44
51
  };
45
52
  exports.usePlugins = usePlugins;
46
53
  //# sourceMappingURL=plugins.js.map
@@ -1 +1 @@
1
- {"version":3,"names":["_react","require","_ricos","_utils","_consts","Instagram","Twitter","TikTok","LinkPreviewProviders","event","booking","product","verticalEmbedProviders","layoutPlugin","type","showInQuickActions","showInToolbars","usePlugins","colorScheme","useMemo","pluginHeadings","inlinePopups","pluginTextColor","pluginTextHighlight","pluginLineSpacing","pluginIndent","pluginLink","pluginImage","pluginVideo","pluginGallery","pluginDivider","pluginTable","toolbar","pluginAi","appDefId","CMS_RICOS_APP_ID","pluginFileUpload","pluginHtml","pluginLinkPreview","exposeEmbedButtons","pluginVerticalEmbed","pluginCodeBlock","pluginEmoji","pluginSpoiler","pluginGiphy","pluginCollapsibleList","pluginLinkButton","filter","isTruthy","exports"],"sources":["../../../../../../src/components/rich-content/rich-content-input/rich-content-editor/plugins.ts"],"sourcesContent":["import { useMemo } from 'react';\n\nimport type { EditorPlugin, EditorPluginOptions } from '@wix/ricos';\nimport {\n pluginTextColor,\n pluginTextHighlight,\n pluginHeadings,\n pluginLink,\n pluginLineSpacing,\n pluginImage,\n pluginVideo,\n pluginDivider,\n pluginFileUpload,\n pluginHtml,\n pluginLinkPreview,\n LinkPreviewProviders,\n pluginVerticalEmbed,\n verticalEmbedProviders,\n pluginEmoji,\n pluginSpoiler,\n pluginGiphy,\n pluginCodeBlock,\n pluginGallery,\n pluginCollapsibleList,\n pluginIndent,\n pluginTable,\n pluginLinkButton,\n pluginAi,\n} from '@wix/ricos';\n\nimport { isTruthy } from '../../../../utils';\nimport type { ColorScheme } from '../../types';\nimport { CMS_RICOS_APP_ID } from '../consts';\n\nconst { Instagram, Twitter, TikTok } = LinkPreviewProviders;\nconst { event, booking, product } = verticalEmbedProviders;\n\nconst layoutPlugin: EditorPluginOptions = {\n type: 'LAYOUT',\n showInQuickActions: true,\n showInToolbars: true,\n};\n\nexport const usePlugins = (colorScheme?: ColorScheme) => {\n return useMemo<(EditorPlugin | EditorPluginOptions)[]>(\n () =>\n [\n pluginHeadings({ inlinePopups: true }),\n pluginTextColor({\n inlinePopups: true,\n colorScheme,\n }),\n pluginTextHighlight({\n inlinePopups: true,\n colorScheme,\n }),\n pluginLineSpacing({ inlinePopups: true }),\n pluginIndent(),\n pluginLink(),\n pluginImage(),\n pluginVideo(),\n pluginGallery(),\n pluginDivider(),\n pluginTable({ toolbar: {} }),\n pluginAi({\n appDefId: CMS_RICOS_APP_ID,\n }) as unknown as EditorPlugin,\n pluginFileUpload(),\n pluginHtml(),\n pluginLinkPreview({\n exposeEmbedButtons: [Instagram, Twitter, TikTok],\n }),\n pluginVerticalEmbed({\n exposeEmbedButtons: [event, booking, product],\n }),\n pluginCodeBlock(),\n pluginEmoji(),\n pluginSpoiler(),\n pluginGiphy(),\n pluginCollapsibleList(),\n pluginLinkButton(),\n layoutPlugin,\n ].filter(isTruthy),\n [colorScheme],\n );\n};\n"],"mappings":";;;;AAAA,IAAAA,MAAA,GAAAC,OAAA;AAGA,IAAAC,MAAA,GAAAD,OAAA;AA2BA,IAAAE,MAAA,GAAAF,OAAA;AAEA,IAAAG,OAAA,GAAAH,OAAA;AAEA,MAAM;EAAEI,SAAS;EAAEC,OAAO;EAAEC;AAAO,CAAC,GAAGC,2BAAoB;AAC3D,MAAM;EAAEC,KAAK;EAAEC,OAAO;EAAEC;AAAQ,CAAC,GAAGC,6BAAsB;AAE1D,MAAMC,YAAiC,GAAG;EACxCC,IAAI,EAAE,QAAQ;EACdC,kBAAkB,EAAE,IAAI;EACxBC,cAAc,EAAE;AAClB,CAAC;AAEM,MAAMC,UAAU,GAAIC,WAAyB,IAAK;EACvD,OAAO,IAAAC,cAAO,EACZ,MACE,CACE,IAAAC,qBAAc,EAAC;IAAEC,YAAY,EAAE;EAAK,CAAC,CAAC,EACtC,IAAAC,sBAAe,EAAC;IACdD,YAAY,EAAE,IAAI;IAClBH;EACF,CAAC,CAAC,EACF,IAAAK,0BAAmB,EAAC;IAClBF,YAAY,EAAE,IAAI;IAClBH;EACF,CAAC,CAAC,EACF,IAAAM,wBAAiB,EAAC;IAAEH,YAAY,EAAE;EAAK,CAAC,CAAC,EACzC,IAAAI,mBAAY,EAAC,CAAC,EACd,IAAAC,iBAAU,EAAC,CAAC,EACZ,IAAAC,kBAAW,EAAC,CAAC,EACb,IAAAC,kBAAW,EAAC,CAAC,EACb,IAAAC,oBAAa,EAAC,CAAC,EACf,IAAAC,oBAAa,EAAC,CAAC,EACf,IAAAC,kBAAW,EAAC;IAAEC,OAAO,EAAE,CAAC;EAAE,CAAC,CAAC,EAC5B,IAAAC,eAAQ,EAAC;IACPC,QAAQ,EAAEC;EACZ,CAAC,CAAC,EACF,IAAAC,uBAAgB,EAAC,CAAC,EAClB,IAAAC,iBAAU,EAAC,CAAC,EACZ,IAAAC,wBAAiB,EAAC;IAChBC,kBAAkB,EAAE,CAAClC,SAAS,EAAEC,OAAO,EAAEC,MAAM;EACjD,CAAC,CAAC,EACF,IAAAiC,0BAAmB,EAAC;IAClBD,kBAAkB,EAAE,CAAC9B,KAAK,EAAEC,OAAO,EAAEC,OAAO;EAC9C,CAAC,CAAC,EACF,IAAA8B,sBAAe,EAAC,CAAC,EACjB,IAAAC,kBAAW,EAAC,CAAC,EACb,IAAAC,oBAAa,EAAC,CAAC,EACf,IAAAC,kBAAW,EAAC,CAAC,EACb,IAAAC,4BAAqB,EAAC,CAAC,EACvB,IAAAC,uBAAgB,EAAC,CAAC,EAClBjC,YAAY,CACb,CAACkC,MAAM,CAACC,eAAQ,CAAC,EACpB,CAAC9B,WAAW,CACd,CAAC;AACH,CAAC;AAAC+B,OAAA,CAAAhC,UAAA,GAAAA,UAAA","ignoreList":[]}
1
+ {"version":3,"names":["_react","require","_utils","_consts","layoutPlugin","type","showInQuickActions","showInToolbars","usePlugins","ricos","colorScheme","useMemo","Instagram","Twitter","TikTok","LinkPreviewProviders","event","booking","product","verticalEmbedProviders","pluginHeadings","pluginTextColor","inlinePopups","pluginTextHighlight","pluginLineSpacing","pluginIndent","pluginLink","pluginImage","pluginVideo","pluginGallery","pluginDivider","pluginTable","toolbar","pluginAi","appDefId","CMS_RICOS_APP_ID","pluginFileUpload","pluginHtml","pluginLinkPreview","exposeEmbedButtons","pluginVerticalEmbed","pluginCodeBlock","pluginEmoji","pluginSpoiler","pluginGiphy","pluginCollapsibleList","pluginLinkButton","filter","isTruthy","exports"],"sources":["../../../../../../src/components/rich-content/rich-content-input/rich-content-editor/plugins.ts"],"sourcesContent":["import { useMemo } from 'react';\n\nimport type {\n EditorPlugin,\n EditorPluginOptions,\n} from '@wix/patterns-fields-utils/@wix/patterns-fields-ricos-statics';\n\nimport type { RicosCdnModule } from '../../cdn/types';\nimport { isTruthy } from '../../../../utils';\nimport type { ColorScheme } from '../../types';\nimport { CMS_RICOS_APP_ID } from '../consts';\n\nconst layoutPlugin: EditorPluginOptions = {\n type: 'LAYOUT',\n showInQuickActions: true,\n showInToolbars: true,\n};\n\n/**\n * Plugin creators come from the CDN module, so this returns an empty list until\n * it has loaded. The editor is not rendered before then, so nothing sees it.\n */\nexport const usePlugins = (\n ricos: RicosCdnModule | undefined,\n colorScheme?: ColorScheme,\n) => {\n return useMemo<(EditorPlugin | EditorPluginOptions)[]>(() => {\n if (!ricos) {\n return [];\n }\n\n const { Instagram, Twitter, TikTok } = ricos.LinkPreviewProviders;\n const { event, booking, product } = ricos.verticalEmbedProviders;\n\n return [\n ricos.pluginHeadings(),\n ricos.pluginTextColor({\n inlinePopups: true,\n colorScheme,\n }),\n ricos.pluginTextHighlight({\n inlinePopups: true,\n colorScheme,\n }),\n ricos.pluginLineSpacing({ inlinePopups: true }),\n ricos.pluginIndent(),\n ricos.pluginLink(),\n ricos.pluginImage(),\n ricos.pluginVideo(),\n ricos.pluginGallery(),\n ricos.pluginDivider(),\n ricos.pluginTable({ toolbar: {} }),\n ricos.pluginAi({\n appDefId: CMS_RICOS_APP_ID,\n }) as unknown as EditorPlugin,\n ricos.pluginFileUpload(),\n ricos.pluginHtml(),\n ricos.pluginLinkPreview({\n exposeEmbedButtons: [Instagram, Twitter, TikTok],\n }),\n ricos.pluginVerticalEmbed({\n exposeEmbedButtons: [event, booking, product],\n }),\n ricos.pluginCodeBlock(),\n ricos.pluginEmoji(),\n ricos.pluginSpoiler(),\n ricos.pluginGiphy(),\n ricos.pluginCollapsibleList(),\n ricos.pluginLinkButton(),\n layoutPlugin,\n ].filter(isTruthy);\n }, [ricos, colorScheme]);\n};\n"],"mappings":";;;;AAAA,IAAAA,MAAA,GAAAC,OAAA;AAQA,IAAAC,MAAA,GAAAD,OAAA;AAEA,IAAAE,OAAA,GAAAF,OAAA;AAEA,MAAMG,YAAiC,GAAG;EACxCC,IAAI,EAAE,QAAQ;EACdC,kBAAkB,EAAE,IAAI;EACxBC,cAAc,EAAE;AAClB,CAAC;;AAED;AACA;AACA;AACA;AACO,MAAMC,UAAU,GAAGA,CACxBC,KAAiC,EACjCC,WAAyB,KACtB;EACH,OAAO,IAAAC,cAAO,EAAyC,MAAM;IAC3D,IAAI,CAACF,KAAK,EAAE;MACV,OAAO,EAAE;IACX;IAEA,MAAM;MAAEG,SAAS;MAAEC,OAAO;MAAEC;IAAO,CAAC,GAAGL,KAAK,CAACM,oBAAoB;IACjE,MAAM;MAAEC,KAAK;MAAEC,OAAO;MAAEC;IAAQ,CAAC,GAAGT,KAAK,CAACU,sBAAsB;IAEhE,OAAO,CACLV,KAAK,CAACW,cAAc,CAAC,CAAC,EACtBX,KAAK,CAACY,eAAe,CAAC;MACpBC,YAAY,EAAE,IAAI;MAClBZ;IACF,CAAC,CAAC,EACFD,KAAK,CAACc,mBAAmB,CAAC;MACxBD,YAAY,EAAE,IAAI;MAClBZ;IACF,CAAC,CAAC,EACFD,KAAK,CAACe,iBAAiB,CAAC;MAAEF,YAAY,EAAE;IAAK,CAAC,CAAC,EAC/Cb,KAAK,CAACgB,YAAY,CAAC,CAAC,EACpBhB,KAAK,CAACiB,UAAU,CAAC,CAAC,EAClBjB,KAAK,CAACkB,WAAW,CAAC,CAAC,EACnBlB,KAAK,CAACmB,WAAW,CAAC,CAAC,EACnBnB,KAAK,CAACoB,aAAa,CAAC,CAAC,EACrBpB,KAAK,CAACqB,aAAa,CAAC,CAAC,EACrBrB,KAAK,CAACsB,WAAW,CAAC;MAAEC,OAAO,EAAE,CAAC;IAAE,CAAC,CAAC,EAClCvB,KAAK,CAACwB,QAAQ,CAAC;MACbC,QAAQ,EAAEC;IACZ,CAAC,CAAC,EACF1B,KAAK,CAAC2B,gBAAgB,CAAC,CAAC,EACxB3B,KAAK,CAAC4B,UAAU,CAAC,CAAC,EAClB5B,KAAK,CAAC6B,iBAAiB,CAAC;MACtBC,kBAAkB,EAAE,CAAC3B,SAAS,EAAEC,OAAO,EAAEC,MAAM;IACjD,CAAC,CAAC,EACFL,KAAK,CAAC+B,mBAAmB,CAAC;MACxBD,kBAAkB,EAAE,CAACvB,KAAK,EAAEC,OAAO,EAAEC,OAAO;IAC9C,CAAC,CAAC,EACFT,KAAK,CAACgC,eAAe,CAAC,CAAC,EACvBhC,KAAK,CAACiC,WAAW,CAAC,CAAC,EACnBjC,KAAK,CAACkC,aAAa,CAAC,CAAC,EACrBlC,KAAK,CAACmC,WAAW,CAAC,CAAC,EACnBnC,KAAK,CAACoC,qBAAqB,CAAC,CAAC,EAC7BpC,KAAK,CAACqC,gBAAgB,CAAC,CAAC,EACxB1C,YAAY,CACb,CAAC2C,MAAM,CAACC,eAAQ,CAAC;EACpB,CAAC,EAAE,CAACvC,KAAK,EAAEC,WAAW,CAAC,CAAC;AAC1B,CAAC;AAACuC,OAAA,CAAAzC,UAAA,GAAAA,UAAA","ignoreList":[]}
@@ -9,7 +9,7 @@ var _cloneDeep = _interopRequireDefault(require("lodash/cloneDeep"));
9
9
  var _defaultsDeep = _interopRequireDefault(require("lodash/defaultsDeep"));
10
10
  var _react = _interopRequireWildcard(require("react"));
11
11
  var _designSystem = require("@wix/design-system");
12
- var _ricos = require("@wix/ricos");
12
+ var _loadRicos = require("../../cdn/load-ricos");
13
13
  var _hooks = require("../../../../hooks");
14
14
  var _utils = require("../../../../utils");
15
15
  var _userSiteFonts = require("../../../user-site-fonts");
@@ -32,7 +32,7 @@ const InsertToolbarSync = ({
32
32
  // Ricos 11's next-runtime proxy is supposed to convert the legacy
33
33
  // `Record<string, ToolbarButtonProps>` into a v2 `ExternalToolbarButton[]`,
34
34
  // but some consumer bundles end up calling through to the inner adapter
35
- // (duplicate `@wix/ricos` copies / unwrapped ref) and we receive the
35
+ // (duplicate ricos copies / unwrapped ref) and we receive the
36
36
  // record shape. Normalize to an array so `.map` is safe, and treat the
37
37
  // non-array (record) shape as ready — otherwise the absolute-positioned
38
38
  // RCELoader overlay stays mounted and the editor row becomes unclickable.
@@ -48,7 +48,10 @@ const InsertToolbarSync = ({
48
48
  return null;
49
49
  };
50
50
  InsertToolbarSync.displayName = 'InsertToolbarSync';
51
- const filterStaticToolbarButtons = button => button !== _ricos.FORMATTING_BUTTONS.CODE_BLOCK;
51
+ const filterStaticToolbarButtons = button =>
52
+ // Inlined rather than read off the CDN module's `FORMATTING_BUTTONS`: this is
53
+ // a plain string constant and the filter runs before the module has loaded.
54
+ button !== 'CODE_BLOCK';
52
55
  const RCE = /*#__PURE__*/(0, _react.forwardRef)(({
53
56
  content,
54
57
  injectedContent,
@@ -197,7 +200,9 @@ const RCE = /*#__PURE__*/(0, _react.forwardRef)(({
197
200
  }
198
201
  }, [triggerBlur, requestEditorBlur]);
199
202
  const wixRicosProps = (0, _richContentCommon.useWixRicosProps)();
200
- const plugins = (0, _plugins.usePlugins)(colorScheme);
203
+ const ricos = (0, _loadRicos.useRicosFromCdn)();
204
+ const plugins = (0, _plugins.usePlugins)(ricos, colorScheme);
205
+ const RicosEditor = ricos == null ? void 0 : ricos.RicosEditor;
201
206
  return /*#__PURE__*/_react.default.createElement("div", {
202
207
  ref: containerRef,
203
208
  "data-hook": "rich-content.editor",
@@ -211,7 +216,7 @@ const RCE = /*#__PURE__*/(0, _react.forwardRef)(({
211
216
  __self: void 0,
212
217
  __source: {
213
218
  fileName: _jsxFileName,
214
- lineNumber: 304,
219
+ lineNumber: 308,
215
220
  columnNumber: 7
216
221
  }
217
222
  }, /*#__PURE__*/_react.default.createElement("div", {
@@ -219,7 +224,7 @@ const RCE = /*#__PURE__*/(0, _react.forwardRef)(({
219
224
  __self: void 0,
220
225
  __source: {
221
226
  fileName: _jsxFileName,
222
- lineNumber: 315,
227
+ lineNumber: 319,
223
228
  columnNumber: 9
224
229
  }
225
230
  }, /*#__PURE__*/_react.default.createElement("div", {
@@ -228,7 +233,7 @@ const RCE = /*#__PURE__*/(0, _react.forwardRef)(({
228
233
  __self: void 0,
229
234
  __source: {
230
235
  fileName: _jsxFileName,
231
- lineNumber: 316,
236
+ lineNumber: 320,
232
237
  columnNumber: 11
233
238
  }
234
239
  }), !hidden && isToolbarReady && /*#__PURE__*/_react.default.createElement(_richContentCommon.ToggleFullscreenButton, {
@@ -237,7 +242,7 @@ const RCE = /*#__PURE__*/(0, _react.forwardRef)(({
237
242
  __self: void 0,
238
243
  __source: {
239
244
  fileName: _jsxFileName,
240
- lineNumber: 318,
245
+ lineNumber: 322,
241
246
  columnNumber: 13
242
247
  }
243
248
  })), editor && /*#__PURE__*/_react.default.createElement(InsertToolbarSync, {
@@ -247,19 +252,19 @@ const RCE = /*#__PURE__*/(0, _react.forwardRef)(({
247
252
  __self: void 0,
248
253
  __source: {
249
254
  fileName: _jsxFileName,
250
- lineNumber: 326,
255
+ lineNumber: 330,
251
256
  columnNumber: 11
252
257
  }
253
- }), !hidden ? /*#__PURE__*/_react.default.createElement("div", {
258
+ }), !hidden && RicosEditor ? /*#__PURE__*/_react.default.createElement("div", {
254
259
  "data-hook": dataHook,
255
260
  className: _richContentEditorStCss.classes.editor,
256
261
  __self: void 0,
257
262
  __source: {
258
263
  fileName: _jsxFileName,
259
- lineNumber: 334,
264
+ lineNumber: 338,
260
265
  columnNumber: 11
261
266
  }
262
- }, /*#__PURE__*/_react.default.createElement(_ricos.RicosEditor, (0, _extends2.default)({
267
+ }, /*#__PURE__*/_react.default.createElement(RicosEditor, (0, _extends2.default)({
263
268
  ref: setEditorInstance,
264
269
  plugins: plugins,
265
270
  initialContent: content,
@@ -272,14 +277,14 @@ const RCE = /*#__PURE__*/(0, _react.forwardRef)(({
272
277
  __self: void 0,
273
278
  __source: {
274
279
  fileName: _jsxFileName,
275
- lineNumber: 335,
280
+ lineNumber: 339,
276
281
  columnNumber: 13
277
282
  }
278
283
  }))) : null, !isToolbarReady && /*#__PURE__*/_react.default.createElement(RCELoader, {
279
284
  __self: void 0,
280
285
  __source: {
281
286
  fileName: _jsxFileName,
282
- lineNumber: 350,
287
+ lineNumber: 354,
283
288
  columnNumber: 29
284
289
  }
285
290
  }), !hidden && isToolbarReady && /*#__PURE__*/_react.default.createElement("div", {
@@ -288,7 +293,7 @@ const RCE = /*#__PURE__*/(0, _react.forwardRef)(({
288
293
  __self: void 0,
289
294
  __source: {
290
295
  fileName: _jsxFileName,
291
- lineNumber: 352,
296
+ lineNumber: 356,
292
297
  columnNumber: 11
293
298
  }
294
299
  }, /*#__PURE__*/_react.default.createElement(_richContentToolbar.ExternalToolbar, {
@@ -296,7 +301,7 @@ const RCE = /*#__PURE__*/(0, _react.forwardRef)(({
296
301
  __self: void 0,
297
302
  __source: {
298
303
  fileName: _jsxFileName,
299
- lineNumber: 356,
304
+ lineNumber: 360,
300
305
  columnNumber: 13
301
306
  }
302
307
  })));
@@ -312,7 +317,7 @@ const RCELoader = () => /*#__PURE__*/_react.default.createElement(_designSystem.
312
317
  __self: void 0,
313
318
  __source: {
314
319
  fileName: _jsxFileName,
315
- lineNumber: 366,
320
+ lineNumber: 370,
316
321
  columnNumber: 3
317
322
  }
318
323
  }, /*#__PURE__*/_react.default.createElement(_designSystem.Loader, {
@@ -320,7 +325,7 @@ const RCELoader = () => /*#__PURE__*/_react.default.createElement(_designSystem.
320
325
  __self: void 0,
321
326
  __source: {
322
327
  fileName: _jsxFileName,
323
- lineNumber: 374,
328
+ lineNumber: 378,
324
329
  columnNumber: 5
325
330
  }
326
331
  }));
@@ -448,7 +453,7 @@ const RichContentEditor = ({
448
453
  __self: void 0,
449
454
  __source: {
450
455
  fileName: _jsxFileName,
451
- lineNumber: 570,
456
+ lineNumber: 574,
452
457
  columnNumber: 7
453
458
  }
454
459
  }), !fullScreenOnly && /*#__PURE__*/_react.default.createElement(RCE, (0, _extends2.default)({}, props, rceProps, {
@@ -463,7 +468,7 @@ const RichContentEditor = ({
463
468
  __self: void 0,
464
469
  __source: {
465
470
  fileName: _jsxFileName,
466
- lineNumber: 572,
471
+ lineNumber: 576,
467
472
  columnNumber: 9
468
473
  }
469
474
  })), /*#__PURE__*/_react.default.createElement(_richContentCommon.FullscreenModal, {
@@ -472,7 +477,7 @@ const RichContentEditor = ({
472
477
  __self: void 0,
473
478
  __source: {
474
479
  fileName: _jsxFileName,
475
- lineNumber: 585,
480
+ lineNumber: 589,
476
481
  columnNumber: 7
477
482
  }
478
483
  }, /*#__PURE__*/_react.default.createElement(RCE, (0, _extends2.default)({}, props, rceProps, {
@@ -486,7 +491,7 @@ const RichContentEditor = ({
486
491
  __self: void 0,
487
492
  __source: {
488
493
  fileName: _jsxFileName,
489
- lineNumber: 586,
494
+ lineNumber: 590,
490
495
  columnNumber: 9
491
496
  }
492
497
  }))));
@@ -1 +1 @@
1
- {"version":3,"names":["_isEqual","_interopRequireDefault","require","_cloneDeep","_defaultsDeep","_react","_interopRequireWildcard","_designSystem","_ricos","_hooks","_utils","_userSiteFonts","_common","_richContentCommon","_plugins","_richContentToolbar","_richContentEditorStCss","_jsxFileName","e","t","WeakMap","r","n","__esModule","o","i","f","__proto__","default","has","get","set","hasOwnProperty","call","Object","defineProperty","getOwnPropertyDescriptor","InsertToolbarSync","editor","onButtonsChange","onReadyChange","buttons","useToolbarProps","isRecordShape","Array","isArray","safeButtons","signature","map","b","id","join","buttonsRef","useRef","current","useEffect","length","displayName","filterStaticToolbarButtons","button","FORMATTING_BUTTONS","CODE_BLOCK","RCE","forwardRef","content","injectedContent","onChange","autoFocus","onFocus","onBlur","className","dataHook","colorScheme","isFullScreen","onToggleFullScreen","hidden","ricosProps","ref","containerRef","containerHeightRef","getContainer","useCallback","onFullScreenChange","clientHeight","editorRef","setEditor","useState","isToolbarReady","setIsToolbarReady","toolbarButtons","setToolbarButtons","toolbarContainer","setToolbarContainer","setEditorInstance","nextEditor","setContent","nextContent","_editorRef$current","getEditorCommands","useImperativeHandle","isContentChanged","_editorRef$current2","Boolean","getContentTraits","prePublish","_editorRef$current3","INITIAL_INJECTED_RICH_CONTENT","appliedInjectedContentRef","isEqual","timerId","window","setTimeout","clearTimeout","frameId","requestAnimationFrame","_editorRef$current4","focus","cancelAnimationFrame","toolbars","useMemo","undefined","text","mode","container","alignment","defaultButtons","filter","insert","footer","disabled","isModalOpenRef","modalSettings","onModalOpen","onModalClose","isFocusedRef","isBlurringRef","triggerFocus","triggerBlur","requestBlurCallback","useRequestFrameCallback","requestEditorBlur","handleFocus","getActiveElement","_editorRef$current5","handleBlur","relatedTarget","_containerRef$current","contains","getAppRootElement","wixRicosProps","useWixRicosProps","plugins","usePlugins","createElement","st","classes","root","tabIndex","style","height","__self","__source","fileName","lineNumber","columnNumber","toolbarAndFullScreenButtonWrapper","ToggleFullscreenButton","RicosEditor","_extends2","initialContent","textWrap","RCELoader","footerToolbarContainer","ExternalToolbar","Box","align","verticalAlign","position","top","bottom","width","Loader","size","LOADER_DELAY","RichContentEditor","onEnterFullScreen","onExitFullScreen","fullScreenOnly","onPublish","theme","props","modalEditorRef","isRichContentChanged","_editorRef$current6","_modalEditorRef$curre","handleChange","richContent","loader","setLoader","timer","resetLoader","queueLoader","setIsFullScreen","fullScreenContent","setFullScreenContent","publishEditorContent","editorHandle","fallbackContent","onOpen","finalContent","isChanged","error","onClose","catch","handleKeyDown","key","stopPropagation","document","addEventListener","removeEventListener","rceProps","fullScreenTheme","defaultsDeep","cloneDeep","customStyles","maxHeight","settingsStyles","modals","dialogZIndex","Z_INDEX_MODAL_POPOVER","Fragment","UserSiteFonts","FullscreenModal","isOpen","isLoading","modalEditor","exports"],"sources":["../../../../../../src/components/rich-content/rich-content-input/rich-content-editor/rich-content-editor.tsx"],"sourcesContent":["import isEqual from 'lodash/isEqual';\nimport cloneDeep from 'lodash/cloneDeep';\nimport defaultsDeep from 'lodash/defaultsDeep';\n\nimport type { FC, FocusEventHandler } from 'react';\nimport React, {\n forwardRef,\n useRef,\n useMemo,\n useState,\n useEffect,\n useCallback,\n useImperativeHandle,\n} from 'react';\n\nimport { Box, Loader } from '@wix/design-system';\nimport type {\n ExternalToolbarButton as RicosExternalToolbarButton,\n RicosDocument,\n RicosEditorAPI,\n RicosEditorProps,\n ToolbarsConfig,\n} from '@wix/ricos';\nimport { RicosEditor, FORMATTING_BUTTONS } from '@wix/ricos';\n\nimport { useRequestFrameCallback } from '../../../../hooks';\nimport { getActiveElement, getAppRootElement } from '../../../../utils';\nimport { UserSiteFonts } from '../../../user-site-fonts';\nimport { Z_INDEX_MODAL_POPOVER } from '../../../common';\n\nimport type { ColorScheme } from '../../types';\n\nimport type { ToggleFullscreenButtonProps } from '../rich-content-common';\nimport {\n useWixRicosProps,\n FullscreenModal,\n ToggleFullscreenButton,\n INITIAL_INJECTED_RICH_CONTENT,\n} from '../rich-content-common';\n\nimport { usePlugins } from './plugins';\nimport { ExternalToolbar } from './rich-content-toolbar';\nimport { st, classes } from './rich-content-editor.st.css.js';\n\ntype RicosProps = Pick<RicosEditorProps, 'biSettings' | 'theme'> & {\n wixExperiments?: unknown;\n};\n\ninterface RCEHandle {\n isContentChanged: () => boolean;\n prePublish: () => Promise<RicosDocument>;\n setContent: (content: RicosDocument) => void;\n}\n\ninterface RCEProps extends RicosProps {\n content?: RicosDocument;\n injectedContent?: RicosDocument;\n onChange?: (content: RicosDocument) => void;\n autoFocus?: boolean;\n onFocus?: () => void;\n onBlur?: () => void;\n className?: string;\n colorScheme?: ColorScheme;\n hidden?: boolean;\n dataHook?: string;\n}\n\ntype ToolbarSyncProps = {\n editor: RicosEditorAPI;\n onButtonsChange: (buttons: readonly RicosExternalToolbarButton[]) => void;\n onReadyChange: (ready: boolean) => void;\n};\n\nconst InsertToolbarSync: FC<ToolbarSyncProps> = ({\n editor,\n onButtonsChange,\n onReadyChange,\n}) => {\n const { buttons } = editor.useToolbarProps('insert');\n\n // Ricos 11's next-runtime proxy is supposed to convert the legacy\n // `Record<string, ToolbarButtonProps>` into a v2 `ExternalToolbarButton[]`,\n // but some consumer bundles end up calling through to the inner adapter\n // (duplicate `@wix/ricos` copies / unwrapped ref) and we receive the\n // record shape. Normalize to an array so `.map` is safe, and treat the\n // non-array (record) shape as ready — otherwise the absolute-positioned\n // RCELoader overlay stays mounted and the editor row becomes unclickable.\n const isRecordShape = !Array.isArray(buttons);\n const safeButtons: readonly RicosExternalToolbarButton[] = isRecordShape\n ? []\n : buttons;\n const signature = safeButtons.map((b) => b.id).join('|');\n const buttonsRef = useRef(safeButtons);\n buttonsRef.current = safeButtons;\n\n useEffect(() => {\n onButtonsChange(buttonsRef.current);\n onReadyChange(buttonsRef.current.length > 0 || isRecordShape);\n }, [signature, isRecordShape, onButtonsChange, onReadyChange]);\n\n return null;\n};\n\nInsertToolbarSync.displayName = 'InsertToolbarSync';\n\nconst filterStaticToolbarButtons = (button: string) =>\n button !== FORMATTING_BUTTONS.CODE_BLOCK;\n\nconst RCE = forwardRef<RCEHandle, RCEProps & ToggleFullscreenButtonProps>(\n (\n {\n content,\n injectedContent,\n onChange,\n autoFocus,\n onFocus,\n onBlur,\n className,\n dataHook,\n colorScheme,\n isFullScreen,\n onToggleFullScreen,\n hidden,\n ...ricosProps\n },\n ref,\n ) => {\n const containerRef = useRef<HTMLDivElement>(null);\n const containerHeightRef = useRef<number | undefined>();\n\n // Stable identity so RicosEditor doesn't see a new `container` prop each render.\n const getContainer = useCallback(() => containerRef.current, []);\n\n const onFullScreenChange = useCallback(() => {\n onToggleFullScreen?.();\n\n if (containerRef.current) {\n containerHeightRef.current = containerRef.current.clientHeight;\n }\n }, [onToggleFullScreen]);\n\n const editorRef = useRef<RicosEditorAPI | null>(null);\n const [editor, setEditor] = useState<RicosEditorAPI | null>(null);\n const [isToolbarReady, setIsToolbarReady] = useState(false);\n const [toolbarButtons, setToolbarButtons] = useState<\n readonly RicosExternalToolbarButton[]\n >([]);\n const [toolbarContainer, setToolbarContainer] =\n useState<HTMLDivElement | null>(null);\n\n const setEditorInstance = useCallback(\n (nextEditor: RicosEditorAPI | null) => {\n editorRef.current = nextEditor;\n setEditor(nextEditor);\n },\n [],\n );\n\n const setContent = useCallback((nextContent: RicosDocument) => {\n editorRef.current?.getEditorCommands().setContent(nextContent);\n }, []);\n\n useImperativeHandle(\n ref,\n () => ({\n isContentChanged: () =>\n Boolean(editorRef.current?.getContentTraits().isContentChanged),\n prePublish: async () =>\n (await editorRef.current?.prePublish()) ??\n INITIAL_INJECTED_RICH_CONTENT,\n setContent,\n }),\n [setContent],\n );\n\n const appliedInjectedContentRef = useRef<RicosDocument | undefined>();\n useEffect(() => {\n if (\n !injectedContent ||\n isEqual(INITIAL_INJECTED_RICH_CONTENT, injectedContent) ||\n isEqual(appliedInjectedContentRef.current, injectedContent)\n ) {\n return;\n }\n\n appliedInjectedContentRef.current = injectedContent;\n const timerId = window.setTimeout(() => {\n setContent(injectedContent);\n }, 0);\n\n return () => window.clearTimeout(timerId);\n }, [injectedContent, setContent]);\n\n useEffect(() => {\n if (!autoFocus || !editorRef.current) {\n return;\n }\n\n const frameId = requestAnimationFrame(() => {\n editorRef.current?.focus();\n });\n\n return () => cancelAnimationFrame(frameId);\n }, [autoFocus, editor]);\n\n const toolbars = useMemo<ToolbarsConfig | undefined>(() => {\n if (!toolbarContainer) {\n return undefined;\n }\n\n return {\n text: {\n mode: 'static',\n container: toolbarContainer,\n alignment: 'left',\n buttons: ({ defaultButtons }) =>\n defaultButtons.filter(filterStaticToolbarButtons),\n },\n insert: {\n footer: {\n disabled: true,\n },\n },\n };\n }, [toolbarContainer]);\n\n const isModalOpenRef = useRef(false);\n const modalSettings = useMemo<RicosEditorProps['modalSettings']>(\n () => ({\n onModalOpen() {\n isModalOpenRef.current = true;\n },\n onModalClose() {\n isModalOpenRef.current = false;\n },\n }),\n [],\n );\n\n const isFocusedRef = useRef(false);\n const isBlurringRef = useRef(false);\n\n const triggerFocus = useCallback(() => {\n isBlurringRef.current = false;\n\n if (isFocusedRef.current) {\n return;\n }\n\n isFocusedRef.current = true;\n onFocus?.();\n }, [onFocus]);\n const triggerBlur = useCallback(() => {\n isBlurringRef.current = false;\n\n if (!isFocusedRef.current) {\n return;\n }\n\n isFocusedRef.current = false;\n onBlur?.();\n }, [onBlur]);\n\n const requestBlurCallback = useRequestFrameCallback();\n const requestEditorBlur = useCallback(() => {\n isBlurringRef.current = true;\n requestBlurCallback(() => isBlurringRef.current && triggerBlur());\n }, [triggerBlur, requestBlurCallback]);\n\n const handleFocus = useCallback<FocusEventHandler>(() => {\n if (containerRef.current === getActiveElement()) {\n editorRef.current?.focus();\n }\n\n triggerFocus();\n }, [triggerFocus]);\n const handleBlur = useCallback<FocusEventHandler>(\n ({ relatedTarget }) => {\n if (!relatedTarget) {\n requestEditorBlur();\n return;\n }\n\n if (\n isModalOpenRef.current ||\n containerRef.current?.contains(relatedTarget)\n ) {\n return;\n }\n\n if (!getAppRootElement().contains(relatedTarget)) {\n requestEditorBlur();\n } else {\n triggerBlur();\n }\n },\n [triggerBlur, requestEditorBlur],\n );\n\n const wixRicosProps = useWixRicosProps();\n const plugins = usePlugins(colorScheme);\n\n return (\n <div\n ref={containerRef}\n data-hook=\"rich-content.editor\"\n className={st(classes.root, className)}\n tabIndex={onFocus || onBlur ? 0 : undefined}\n onFocus={handleFocus}\n onBlur={handleBlur}\n style={{\n height: hidden ? containerHeightRef.current : undefined,\n }}\n >\n <div className={classes.toolbarAndFullScreenButtonWrapper}>\n <div className={classes.toolbarContainer} ref={setToolbarContainer} />\n {!hidden && isToolbarReady && (\n <ToggleFullscreenButton\n isFullScreen={isFullScreen}\n onToggleFullScreen={onFullScreenChange}\n />\n )}\n </div>\n\n {editor && (\n <InsertToolbarSync\n editor={editor}\n onButtonsChange={setToolbarButtons}\n onReadyChange={setIsToolbarReady}\n />\n )}\n\n {!hidden ? (\n <div data-hook={dataHook} className={classes.editor}>\n <RicosEditor\n ref={setEditorInstance}\n plugins={plugins}\n initialContent={content}\n toolbars={toolbars}\n modalSettings={modalSettings}\n textWrap={false}\n onChange={onChange}\n container={getContainer}\n {...ricosProps}\n {...wixRicosProps}\n />\n </div>\n ) : null}\n\n {!isToolbarReady && <RCELoader />}\n {!hidden && isToolbarReady && (\n <div\n data-hook=\"rich-content.footerToolbar\"\n className={classes.footerToolbarContainer}\n >\n <ExternalToolbar buttons={toolbarButtons} />\n </div>\n )}\n </div>\n );\n },\n);\nRCE.displayName = 'RCE';\n\nconst RCELoader: React.FC = () => (\n <Box\n align=\"center\"\n verticalAlign=\"middle\"\n position=\"absolute\"\n top=\"0\"\n bottom=\"0\"\n width=\"100%\"\n >\n <Loader size=\"small\" />\n </Box>\n);\nRCELoader.displayName = 'RCELoader';\n\nconst LOADER_DELAY = 100;\n\nexport type RichContentEditorProps = Omit<RCEProps, 'onChange'> & {\n onEnterFullScreen?: (\n content?: RicosDocument,\n isContentChanged?: boolean,\n ) => void;\n onExitFullScreen?: (\n content?: RicosDocument,\n isContentChanged?: boolean,\n ) => void;\n onChange?: (content: RicosDocument, isContentChanged?: boolean) => void;\n onPublish?: (promise: Promise<RicosDocument>) => void;\n fullScreenOnly?: boolean;\n};\n\nexport const RichContentEditor: FC<RichContentEditorProps> = ({\n onFocus,\n onBlur,\n onEnterFullScreen,\n onExitFullScreen,\n fullScreenOnly,\n onPublish,\n onChange,\n theme,\n content,\n ...props\n}) => {\n const editorRef = useRef<RCEHandle>(null);\n const modalEditorRef = useRef<RCEHandle>(null);\n\n const isRichContentChanged = useCallback(\n () =>\n Boolean(\n editorRef.current?.isContentChanged() ||\n modalEditorRef.current?.isContentChanged(),\n ),\n [],\n );\n const handleChange = useCallback(\n (richContent: RicosDocument) => {\n onChange?.(richContent, isRichContentChanged());\n },\n [onChange, isRichContentChanged],\n );\n\n const [loader, setLoader] = useState(false);\n const timer = useRef<number>(0);\n const resetLoader = useCallback(() => {\n window.clearTimeout(timer.current);\n setLoader(false);\n }, []);\n const queueLoader = useCallback(() => {\n timer.current = window.setTimeout(() => {\n setLoader(true);\n }, LOADER_DELAY);\n }, []);\n\n const [isFullScreen, setIsFullScreen] = useState(!!fullScreenOnly);\n const [fullScreenContent, setFullScreenContent] = useState(content);\n\n useEffect(() => {\n if (!isFullScreen) {\n setFullScreenContent(content);\n }\n }, [content, isFullScreen]);\n\n const publishEditorContent = useCallback(\n async (\n editorHandle: RCEHandle | null,\n fallbackContent?: RicosDocument,\n ): Promise<RicosDocument> => {\n if (!editorHandle) {\n return fallbackContent ?? INITIAL_INJECTED_RICH_CONTENT;\n }\n\n return (\n (await editorHandle.prePublish()) ??\n fallbackContent ??\n INITIAL_INJECTED_RICH_CONTENT\n );\n },\n [],\n );\n\n const onOpen = useCallback(async () => {\n let finalContent = content;\n const isChanged = isRichContentChanged();\n\n try {\n finalContent = await publishEditorContent(editorRef.current, content);\n onEnterFullScreen?.(finalContent, isChanged);\n } catch (error) {\n finalContent = content;\n onEnterFullScreen?.(content, isChanged);\n } finally {\n setFullScreenContent(finalContent);\n setIsFullScreen(true);\n\n if (isChanged && finalContent) {\n handleChange(finalContent);\n }\n }\n }, [\n content,\n handleChange,\n isRichContentChanged,\n onEnterFullScreen,\n publishEditorContent,\n ]);\n const onClose = useCallback(async () => {\n queueLoader();\n let finalContent = content;\n const isChanged = isRichContentChanged();\n\n try {\n finalContent = await publishEditorContent(\n modalEditorRef.current,\n content,\n );\n onExitFullScreen?.(finalContent, isChanged);\n } catch (error) {\n finalContent = content;\n onExitFullScreen?.(content, isChanged);\n } finally {\n resetLoader();\n setIsFullScreen(false);\n\n if (isChanged && finalContent) {\n handleChange(finalContent);\n }\n }\n }, [\n content,\n handleChange,\n isRichContentChanged,\n onExitFullScreen,\n publishEditorContent,\n queueLoader,\n resetLoader,\n ]);\n\n const handleBlur = useCallback(() => {\n if (isRichContentChanged()) {\n onPublish?.(\n publishEditorContent(editorRef.current, content).catch(\n () => content ?? INITIAL_INJECTED_RICH_CONTENT,\n ),\n );\n }\n onBlur?.();\n }, [content, isRichContentChanged, onBlur, onPublish, publishEditorContent]);\n\n useEffect(() => {\n if (!isFullScreen) {\n return;\n }\n\n const handleKeyDown = (e: KeyboardEvent) => {\n if (e.key === 'Escape') {\n e.stopPropagation();\n void onClose();\n }\n };\n\n document.addEventListener('keydown', handleKeyDown, true);\n return () => document.removeEventListener('keydown', handleKeyDown, true);\n }, [isFullScreen, onClose]);\n\n const rceProps = {\n onChange: handleChange,\n };\n\n // Must be memoized: Ricos re-processes `theme` whenever its identity changes,\n // so passing a freshly cloned object every render drives an infinite\n // re-render loop (freezes the tab) once the fullscreen editor mounts.\n const fullScreenTheme = useMemo(\n () =>\n defaultsDeep(cloneDeep(theme), {\n customStyles: { editor: { maxHeight: '100%' } },\n settingsStyles: {\n modals: {\n dialogZIndex: Z_INDEX_MODAL_POPOVER,\n },\n },\n }),\n [theme],\n );\n\n return (\n <>\n <UserSiteFonts />\n {!fullScreenOnly && (\n <RCE\n {...props}\n {...rceProps}\n content={content}\n theme={theme}\n onFocus={onFocus}\n onBlur={handleBlur}\n hidden={isFullScreen}\n ref={editorRef}\n isFullScreen={false}\n onToggleFullScreen={onOpen}\n />\n )}\n <FullscreenModal isOpen={isFullScreen} isLoading={loader}>\n <RCE\n {...props}\n {...rceProps}\n content={fullScreenContent}\n theme={fullScreenTheme}\n autoFocus\n className={classes.modalEditor}\n ref={modalEditorRef}\n isFullScreen\n onToggleFullScreen={onClose}\n />\n </FullscreenModal>\n </>\n );\n};\nRichContentEditor.displayName = 'RichContentEditor';\n"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["_isEqual","_interopRequireDefault","require","_cloneDeep","_defaultsDeep","_react","_interopRequireWildcard","_designSystem","_loadRicos","_hooks","_utils","_userSiteFonts","_common","_richContentCommon","_plugins","_richContentToolbar","_richContentEditorStCss","_jsxFileName","e","t","WeakMap","r","n","__esModule","o","i","f","__proto__","default","has","get","set","hasOwnProperty","call","Object","defineProperty","getOwnPropertyDescriptor","InsertToolbarSync","editor","onButtonsChange","onReadyChange","buttons","useToolbarProps","isRecordShape","Array","isArray","safeButtons","signature","map","b","id","join","buttonsRef","useRef","current","useEffect","length","displayName","filterStaticToolbarButtons","button","RCE","forwardRef","content","injectedContent","onChange","autoFocus","onFocus","onBlur","className","dataHook","colorScheme","isFullScreen","onToggleFullScreen","hidden","ricosProps","ref","containerRef","containerHeightRef","getContainer","useCallback","onFullScreenChange","clientHeight","editorRef","setEditor","useState","isToolbarReady","setIsToolbarReady","toolbarButtons","setToolbarButtons","toolbarContainer","setToolbarContainer","setEditorInstance","nextEditor","setContent","nextContent","_editorRef$current","getEditorCommands","useImperativeHandle","isContentChanged","_editorRef$current2","Boolean","getContentTraits","prePublish","_editorRef$current3","INITIAL_INJECTED_RICH_CONTENT","appliedInjectedContentRef","isEqual","timerId","window","setTimeout","clearTimeout","frameId","requestAnimationFrame","_editorRef$current4","focus","cancelAnimationFrame","toolbars","useMemo","undefined","text","mode","container","alignment","defaultButtons","filter","insert","footer","disabled","isModalOpenRef","modalSettings","onModalOpen","onModalClose","isFocusedRef","isBlurringRef","triggerFocus","triggerBlur","requestBlurCallback","useRequestFrameCallback","requestEditorBlur","handleFocus","getActiveElement","_editorRef$current5","handleBlur","relatedTarget","_containerRef$current","contains","getAppRootElement","wixRicosProps","useWixRicosProps","ricos","useRicosFromCdn","plugins","usePlugins","RicosEditor","createElement","st","classes","root","tabIndex","style","height","__self","__source","fileName","lineNumber","columnNumber","toolbarAndFullScreenButtonWrapper","ToggleFullscreenButton","_extends2","initialContent","textWrap","RCELoader","footerToolbarContainer","ExternalToolbar","Box","align","verticalAlign","position","top","bottom","width","Loader","size","LOADER_DELAY","RichContentEditor","onEnterFullScreen","onExitFullScreen","fullScreenOnly","onPublish","theme","props","modalEditorRef","isRichContentChanged","_editorRef$current6","_modalEditorRef$curre","handleChange","richContent","loader","setLoader","timer","resetLoader","queueLoader","setIsFullScreen","fullScreenContent","setFullScreenContent","publishEditorContent","editorHandle","fallbackContent","onOpen","finalContent","isChanged","error","onClose","catch","handleKeyDown","key","stopPropagation","document","addEventListener","removeEventListener","rceProps","fullScreenTheme","defaultsDeep","cloneDeep","customStyles","maxHeight","settingsStyles","modals","dialogZIndex","Z_INDEX_MODAL_POPOVER","Fragment","UserSiteFonts","FullscreenModal","isOpen","isLoading","modalEditor","exports"],"sources":["../../../../../../src/components/rich-content/rich-content-input/rich-content-editor/rich-content-editor.tsx"],"sourcesContent":["import isEqual from 'lodash/isEqual';\nimport cloneDeep from 'lodash/cloneDeep';\nimport defaultsDeep from 'lodash/defaultsDeep';\n\nimport type { FC, FocusEventHandler } from 'react';\nimport React, {\n forwardRef,\n useRef,\n useMemo,\n useState,\n useEffect,\n useCallback,\n useImperativeHandle,\n} from 'react';\n\nimport { Box, Loader } from '@wix/design-system';\nimport type { RicosDocument } from '@wix/patterns-fields-utils/@wix/patterns-fields-bundled-ricos';\nimport type {\n ExternalToolbarButton as RicosExternalToolbarButton,\n RicosEditorAPI,\n RicosEditorProps,\n ToolbarsConfig,\n} from '@wix/patterns-fields-utils/@wix/patterns-fields-ricos-statics';\n\nimport { useRicosFromCdn } from '../../cdn/load-ricos';\nimport { useRequestFrameCallback } from '../../../../hooks';\nimport { getActiveElement, getAppRootElement } from '../../../../utils';\nimport { UserSiteFonts } from '../../../user-site-fonts';\nimport { Z_INDEX_MODAL_POPOVER } from '../../../common';\n\nimport type { ColorScheme } from '../../types';\n\nimport type { ToggleFullscreenButtonProps } from '../rich-content-common';\nimport {\n useWixRicosProps,\n FullscreenModal,\n ToggleFullscreenButton,\n INITIAL_INJECTED_RICH_CONTENT,\n} from '../rich-content-common';\n\nimport { usePlugins } from './plugins';\nimport { ExternalToolbar } from './rich-content-toolbar';\nimport { st, classes } from './rich-content-editor.st.css.js';\n\ntype RicosProps = Pick<RicosEditorProps, 'biSettings' | 'theme'> & {\n wixExperiments?: unknown;\n};\n\ninterface RCEHandle {\n isContentChanged: () => boolean;\n prePublish: () => Promise<RicosDocument>;\n setContent: (content: RicosDocument) => void;\n}\n\ninterface RCEProps extends RicosProps {\n content?: RicosDocument;\n injectedContent?: RicosDocument;\n onChange?: (content: RicosDocument) => void;\n autoFocus?: boolean;\n onFocus?: () => void;\n onBlur?: () => void;\n className?: string;\n colorScheme?: ColorScheme;\n hidden?: boolean;\n dataHook?: string;\n}\n\ntype ToolbarSyncProps = {\n editor: RicosEditorAPI;\n onButtonsChange: (buttons: readonly RicosExternalToolbarButton[]) => void;\n onReadyChange: (ready: boolean) => void;\n};\n\nconst InsertToolbarSync: FC<ToolbarSyncProps> = ({\n editor,\n onButtonsChange,\n onReadyChange,\n}) => {\n const { buttons } = editor.useToolbarProps('insert');\n\n // Ricos 11's next-runtime proxy is supposed to convert the legacy\n // `Record<string, ToolbarButtonProps>` into a v2 `ExternalToolbarButton[]`,\n // but some consumer bundles end up calling through to the inner adapter\n // (duplicate ricos copies / unwrapped ref) and we receive the\n // record shape. Normalize to an array so `.map` is safe, and treat the\n // non-array (record) shape as ready — otherwise the absolute-positioned\n // RCELoader overlay stays mounted and the editor row becomes unclickable.\n const isRecordShape = !Array.isArray(buttons);\n const safeButtons: readonly RicosExternalToolbarButton[] = isRecordShape\n ? []\n : buttons;\n const signature = safeButtons.map((b) => b.id).join('|');\n const buttonsRef = useRef(safeButtons);\n buttonsRef.current = safeButtons;\n\n useEffect(() => {\n onButtonsChange(buttonsRef.current);\n onReadyChange(buttonsRef.current.length > 0 || isRecordShape);\n }, [signature, isRecordShape, onButtonsChange, onReadyChange]);\n\n return null;\n};\n\nInsertToolbarSync.displayName = 'InsertToolbarSync';\n\nconst filterStaticToolbarButtons = (button: string) =>\n // Inlined rather than read off the CDN module's `FORMATTING_BUTTONS`: this is\n // a plain string constant and the filter runs before the module has loaded.\n button !== 'CODE_BLOCK';\n\nconst RCE = forwardRef<RCEHandle, RCEProps & ToggleFullscreenButtonProps>(\n (\n {\n content,\n injectedContent,\n onChange,\n autoFocus,\n onFocus,\n onBlur,\n className,\n dataHook,\n colorScheme,\n isFullScreen,\n onToggleFullScreen,\n hidden,\n ...ricosProps\n },\n ref,\n ) => {\n const containerRef = useRef<HTMLDivElement>(null);\n const containerHeightRef = useRef<number | undefined>();\n\n // Stable identity so RicosEditor doesn't see a new `container` prop each render.\n const getContainer = useCallback(() => containerRef.current, []);\n\n const onFullScreenChange = useCallback(() => {\n onToggleFullScreen?.();\n\n if (containerRef.current) {\n containerHeightRef.current = containerRef.current.clientHeight;\n }\n }, [onToggleFullScreen]);\n\n const editorRef = useRef<RicosEditorAPI | null>(null);\n const [editor, setEditor] = useState<RicosEditorAPI | null>(null);\n const [isToolbarReady, setIsToolbarReady] = useState(false);\n const [toolbarButtons, setToolbarButtons] = useState<\n readonly RicosExternalToolbarButton[]\n >([]);\n const [toolbarContainer, setToolbarContainer] =\n useState<HTMLDivElement | null>(null);\n\n const setEditorInstance = useCallback(\n (nextEditor: RicosEditorAPI | null) => {\n editorRef.current = nextEditor;\n setEditor(nextEditor);\n },\n [],\n );\n\n const setContent = useCallback((nextContent: RicosDocument) => {\n editorRef.current?.getEditorCommands().setContent(nextContent);\n }, []);\n\n useImperativeHandle(\n ref,\n () => ({\n isContentChanged: () =>\n Boolean(editorRef.current?.getContentTraits().isContentChanged),\n prePublish: async () =>\n (await editorRef.current?.prePublish()) ??\n INITIAL_INJECTED_RICH_CONTENT,\n setContent,\n }),\n [setContent],\n );\n\n const appliedInjectedContentRef = useRef<RicosDocument | undefined>();\n useEffect(() => {\n if (\n !injectedContent ||\n isEqual(INITIAL_INJECTED_RICH_CONTENT, injectedContent) ||\n isEqual(appliedInjectedContentRef.current, injectedContent)\n ) {\n return;\n }\n\n appliedInjectedContentRef.current = injectedContent;\n const timerId = window.setTimeout(() => {\n setContent(injectedContent);\n }, 0);\n\n return () => window.clearTimeout(timerId);\n }, [injectedContent, setContent]);\n\n useEffect(() => {\n if (!autoFocus || !editorRef.current) {\n return;\n }\n\n const frameId = requestAnimationFrame(() => {\n editorRef.current?.focus();\n });\n\n return () => cancelAnimationFrame(frameId);\n }, [autoFocus, editor]);\n\n const toolbars = useMemo<ToolbarsConfig | undefined>(() => {\n if (!toolbarContainer) {\n return undefined;\n }\n\n return {\n text: {\n mode: 'static',\n container: toolbarContainer,\n alignment: 'left',\n buttons: ({ defaultButtons }) =>\n defaultButtons.filter(filterStaticToolbarButtons),\n },\n insert: {\n footer: {\n disabled: true,\n },\n },\n };\n }, [toolbarContainer]);\n\n const isModalOpenRef = useRef(false);\n const modalSettings = useMemo<RicosEditorProps['modalSettings']>(\n () => ({\n onModalOpen() {\n isModalOpenRef.current = true;\n },\n onModalClose() {\n isModalOpenRef.current = false;\n },\n }),\n [],\n );\n\n const isFocusedRef = useRef(false);\n const isBlurringRef = useRef(false);\n\n const triggerFocus = useCallback(() => {\n isBlurringRef.current = false;\n\n if (isFocusedRef.current) {\n return;\n }\n\n isFocusedRef.current = true;\n onFocus?.();\n }, [onFocus]);\n const triggerBlur = useCallback(() => {\n isBlurringRef.current = false;\n\n if (!isFocusedRef.current) {\n return;\n }\n\n isFocusedRef.current = false;\n onBlur?.();\n }, [onBlur]);\n\n const requestBlurCallback = useRequestFrameCallback();\n const requestEditorBlur = useCallback(() => {\n isBlurringRef.current = true;\n requestBlurCallback(() => isBlurringRef.current && triggerBlur());\n }, [triggerBlur, requestBlurCallback]);\n\n const handleFocus = useCallback<FocusEventHandler>(() => {\n if (containerRef.current === getActiveElement()) {\n editorRef.current?.focus();\n }\n\n triggerFocus();\n }, [triggerFocus]);\n const handleBlur = useCallback<FocusEventHandler>(\n ({ relatedTarget }) => {\n if (!relatedTarget) {\n requestEditorBlur();\n return;\n }\n\n if (\n isModalOpenRef.current ||\n containerRef.current?.contains(relatedTarget)\n ) {\n return;\n }\n\n if (!getAppRootElement().contains(relatedTarget)) {\n requestEditorBlur();\n } else {\n triggerBlur();\n }\n },\n [triggerBlur, requestEditorBlur],\n );\n\n const wixRicosProps = useWixRicosProps();\n const ricos = useRicosFromCdn();\n const plugins = usePlugins(ricos, colorScheme);\n const RicosEditor = ricos?.RicosEditor;\n\n return (\n <div\n ref={containerRef}\n data-hook=\"rich-content.editor\"\n className={st(classes.root, className)}\n tabIndex={onFocus || onBlur ? 0 : undefined}\n onFocus={handleFocus}\n onBlur={handleBlur}\n style={{\n height: hidden ? containerHeightRef.current : undefined,\n }}\n >\n <div className={classes.toolbarAndFullScreenButtonWrapper}>\n <div className={classes.toolbarContainer} ref={setToolbarContainer} />\n {!hidden && isToolbarReady && (\n <ToggleFullscreenButton\n isFullScreen={isFullScreen}\n onToggleFullScreen={onFullScreenChange}\n />\n )}\n </div>\n\n {editor && (\n <InsertToolbarSync\n editor={editor}\n onButtonsChange={setToolbarButtons}\n onReadyChange={setIsToolbarReady}\n />\n )}\n\n {!hidden && RicosEditor ? (\n <div data-hook={dataHook} className={classes.editor}>\n <RicosEditor\n ref={setEditorInstance}\n plugins={plugins}\n initialContent={content}\n toolbars={toolbars}\n modalSettings={modalSettings}\n textWrap={false}\n onChange={onChange}\n container={getContainer}\n {...ricosProps}\n {...wixRicosProps}\n />\n </div>\n ) : null}\n\n {!isToolbarReady && <RCELoader />}\n {!hidden && isToolbarReady && (\n <div\n data-hook=\"rich-content.footerToolbar\"\n className={classes.footerToolbarContainer}\n >\n <ExternalToolbar buttons={toolbarButtons} />\n </div>\n )}\n </div>\n );\n },\n);\nRCE.displayName = 'RCE';\n\nconst RCELoader: React.FC = () => (\n <Box\n align=\"center\"\n verticalAlign=\"middle\"\n position=\"absolute\"\n top=\"0\"\n bottom=\"0\"\n width=\"100%\"\n >\n <Loader size=\"small\" />\n </Box>\n);\nRCELoader.displayName = 'RCELoader';\n\nconst LOADER_DELAY = 100;\n\nexport type RichContentEditorProps = Omit<RCEProps, 'onChange'> & {\n onEnterFullScreen?: (\n content?: RicosDocument,\n isContentChanged?: boolean,\n ) => void;\n onExitFullScreen?: (\n content?: RicosDocument,\n isContentChanged?: boolean,\n ) => void;\n onChange?: (content: RicosDocument, isContentChanged?: boolean) => void;\n onPublish?: (promise: Promise<RicosDocument>) => void;\n fullScreenOnly?: boolean;\n};\n\nexport const RichContentEditor: FC<RichContentEditorProps> = ({\n onFocus,\n onBlur,\n onEnterFullScreen,\n onExitFullScreen,\n fullScreenOnly,\n onPublish,\n onChange,\n theme,\n content,\n ...props\n}) => {\n const editorRef = useRef<RCEHandle>(null);\n const modalEditorRef = useRef<RCEHandle>(null);\n\n const isRichContentChanged = useCallback(\n () =>\n Boolean(\n editorRef.current?.isContentChanged() ||\n modalEditorRef.current?.isContentChanged(),\n ),\n [],\n );\n const handleChange = useCallback(\n (richContent: RicosDocument) => {\n onChange?.(richContent, isRichContentChanged());\n },\n [onChange, isRichContentChanged],\n );\n\n const [loader, setLoader] = useState(false);\n const timer = useRef<number>(0);\n const resetLoader = useCallback(() => {\n window.clearTimeout(timer.current);\n setLoader(false);\n }, []);\n const queueLoader = useCallback(() => {\n timer.current = window.setTimeout(() => {\n setLoader(true);\n }, LOADER_DELAY);\n }, []);\n\n const [isFullScreen, setIsFullScreen] = useState(!!fullScreenOnly);\n const [fullScreenContent, setFullScreenContent] = useState(content);\n\n useEffect(() => {\n if (!isFullScreen) {\n setFullScreenContent(content);\n }\n }, [content, isFullScreen]);\n\n const publishEditorContent = useCallback(\n async (\n editorHandle: RCEHandle | null,\n fallbackContent?: RicosDocument,\n ): Promise<RicosDocument> => {\n if (!editorHandle) {\n return fallbackContent ?? INITIAL_INJECTED_RICH_CONTENT;\n }\n\n return (\n (await editorHandle.prePublish()) ??\n fallbackContent ??\n INITIAL_INJECTED_RICH_CONTENT\n );\n },\n [],\n );\n\n const onOpen = useCallback(async () => {\n let finalContent = content;\n const isChanged = isRichContentChanged();\n\n try {\n finalContent = await publishEditorContent(editorRef.current, content);\n onEnterFullScreen?.(finalContent, isChanged);\n } catch (error) {\n finalContent = content;\n onEnterFullScreen?.(content, isChanged);\n } finally {\n setFullScreenContent(finalContent);\n setIsFullScreen(true);\n\n if (isChanged && finalContent) {\n handleChange(finalContent);\n }\n }\n }, [\n content,\n handleChange,\n isRichContentChanged,\n onEnterFullScreen,\n publishEditorContent,\n ]);\n const onClose = useCallback(async () => {\n queueLoader();\n let finalContent = content;\n const isChanged = isRichContentChanged();\n\n try {\n finalContent = await publishEditorContent(\n modalEditorRef.current,\n content,\n );\n onExitFullScreen?.(finalContent, isChanged);\n } catch (error) {\n finalContent = content;\n onExitFullScreen?.(content, isChanged);\n } finally {\n resetLoader();\n setIsFullScreen(false);\n\n if (isChanged && finalContent) {\n handleChange(finalContent);\n }\n }\n }, [\n content,\n handleChange,\n isRichContentChanged,\n onExitFullScreen,\n publishEditorContent,\n queueLoader,\n resetLoader,\n ]);\n\n const handleBlur = useCallback(() => {\n if (isRichContentChanged()) {\n onPublish?.(\n publishEditorContent(editorRef.current, content).catch(\n () => content ?? INITIAL_INJECTED_RICH_CONTENT,\n ),\n );\n }\n onBlur?.();\n }, [content, isRichContentChanged, onBlur, onPublish, publishEditorContent]);\n\n useEffect(() => {\n if (!isFullScreen) {\n return;\n }\n\n const handleKeyDown = (e: KeyboardEvent) => {\n if (e.key === 'Escape') {\n e.stopPropagation();\n void onClose();\n }\n };\n\n document.addEventListener('keydown', handleKeyDown, true);\n return () => document.removeEventListener('keydown', handleKeyDown, true);\n }, [isFullScreen, onClose]);\n\n const rceProps = {\n onChange: handleChange,\n };\n\n // Must be memoized: Ricos re-processes `theme` whenever its identity changes,\n // so passing a freshly cloned object every render drives an infinite\n // re-render loop (freezes the tab) once the fullscreen editor mounts.\n const fullScreenTheme = useMemo(\n () =>\n defaultsDeep(cloneDeep(theme), {\n customStyles: { editor: { maxHeight: '100%' } },\n settingsStyles: {\n modals: {\n dialogZIndex: Z_INDEX_MODAL_POPOVER,\n },\n },\n }),\n [theme],\n );\n\n return (\n <>\n <UserSiteFonts />\n {!fullScreenOnly && (\n <RCE\n {...props}\n {...rceProps}\n content={content}\n theme={theme}\n onFocus={onFocus}\n onBlur={handleBlur}\n hidden={isFullScreen}\n ref={editorRef}\n isFullScreen={false}\n onToggleFullScreen={onOpen}\n />\n )}\n <FullscreenModal isOpen={isFullScreen} isLoading={loader}>\n <RCE\n {...props}\n {...rceProps}\n content={fullScreenContent}\n theme={fullScreenTheme}\n autoFocus\n className={classes.modalEditor}\n ref={modalEditorRef}\n isFullScreen\n onToggleFullScreen={onClose}\n />\n </FullscreenModal>\n </>\n );\n};\nRichContentEditor.displayName = 'RichContentEditor';\n"],"mappings":"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","ignoreList":[]}
@@ -5,19 +5,19 @@ exports.vars = exports.style = exports.stVars = exports.st = exports.namespace =
5
5
  var _stylableEsmRuntime = require("../../../../stylable-esm-runtime.js");
6
6
  // @ts-nocheck
7
7
 
8
- var _namespace_ = "richcontenteditor2967905748";
8
+ var _namespace_ = "richcontenteditor2982314878";
9
9
  var _style_ = _stylableEsmRuntime.classesRuntime.bind(null, _namespace_);
10
10
  var cssStates = exports.cssStates = _stylableEsmRuntime.statesRuntime.bind(null, _namespace_);
11
11
  var style = exports.style = _style_;
12
12
  var st = exports.st = _style_;
13
13
  var namespace = exports.namespace = _namespace_;
14
14
  var classes = exports.classes = {
15
- "root": "richcontenteditor2967905748__root",
16
- "toolbarContainer": "richcontenteditor2967905748__toolbarContainer",
17
- "footerToolbarContainer": "richcontenteditor2967905748__footerToolbarContainer",
18
- "toolbarAndFullScreenButtonWrapper": "richcontenteditor2967905748__toolbarAndFullScreenButtonWrapper",
19
- "editor": "richcontenteditor2967905748__editor",
20
- "modalEditor": "richcontenteditor2967905748__modalEditor"
15
+ "root": "richcontenteditor2982314878__root",
16
+ "toolbarContainer": "richcontenteditor2982314878__toolbarContainer",
17
+ "footerToolbarContainer": "richcontenteditor2982314878__footerToolbarContainer",
18
+ "toolbarAndFullScreenButtonWrapper": "richcontenteditor2982314878__toolbarAndFullScreenButtonWrapper",
19
+ "editor": "richcontenteditor2982314878__editor",
20
+ "modalEditor": "richcontenteditor2982314878__modalEditor"
21
21
  };
22
22
  var keyframes = exports.keyframes = {};
23
23
  var layers = exports.layers = {};
@@ -1 +1 @@
1
- {"version":3,"names":["_stylableEsmRuntime","require","_namespace_","_style_","classesRuntime","bind","cssStates","exports","statesRuntime","style","st","namespace","classes","keyframes","layers","containers","stVars","vars"],"sources":["../../../../../../src/components/rich-content/rich-content-input/rich-content-editor/rich-content-editor.st.css.ts"],"sourcesContent":["// @ts-nocheck\n\n\nimport { classesRuntime, statesRuntime } from \"../../../../stylable-esm-runtime.js\";\n\n\n\nvar _namespace_ = \"richcontenteditor2967905748\";\nvar _style_ = classesRuntime.bind(null, _namespace_);\n\nexport var cssStates = statesRuntime.bind(null, _namespace_);\nexport var style: import(\"@stylable/runtime\").STFunction = _style_;\nexport var st: import(\"@stylable/runtime\").STFunction = _style_;\n\nexport var namespace = _namespace_;\nexport var classes = {\"root\":\"richcontenteditor2967905748__root\",\"toolbarContainer\":\"richcontenteditor2967905748__toolbarContainer\",\"footerToolbarContainer\":\"richcontenteditor2967905748__footerToolbarContainer\",\"toolbarAndFullScreenButtonWrapper\":\"richcontenteditor2967905748__toolbarAndFullScreenButtonWrapper\",\"editor\":\"richcontenteditor2967905748__editor\",\"modalEditor\":\"richcontenteditor2967905748__modalEditor\"};\nexport var keyframes = {}; \nexport var layers = {};\nexport var containers = {};\nexport var stVars = {}; \nexport var vars = {\"wds-font-family-default\":\"--wds-font-family-default\"}; \n\n\n\n\n"],"mappings":";;;;AAGA,IAAAA,mBAAA,GAAAC,OAAA;AAHA;;AAOA,IAAIC,WAAW,GAAG,6BAA6B;AAC/C,IAAIC,OAAO,GAAGC,kCAAc,CAACC,IAAI,CAAC,IAAI,EAAEH,WAAW,CAAC;AAE7C,IAAII,SAAS,GAAAC,OAAA,CAAAD,SAAA,GAAGE,iCAAa,CAACH,IAAI,CAAC,IAAI,EAAEH,WAAW,CAAC;AACrD,IAAIO,KAA6C,GAAAF,OAAA,CAAAE,KAAA,GAAGN,OAAO;AAC3D,IAAIO,EAA0C,GAAAH,OAAA,CAAAG,EAAA,GAAGP,OAAO;AAExD,IAAIQ,SAAS,GAAAJ,OAAA,CAAAI,SAAA,GAAGT,WAAW;AAC3B,IAAIU,OAAO,GAAAL,OAAA,CAAAK,OAAA,GAAG;EAAC,MAAM,EAAC,mCAAmC;EAAC,kBAAkB,EAAC,+CAA+C;EAAC,wBAAwB,EAAC,qDAAqD;EAAC,mCAAmC,EAAC,gEAAgE;EAAC,QAAQ,EAAC,qCAAqC;EAAC,aAAa,EAAC;AAA0C,CAAC;AACzZ,IAAIC,SAAS,GAAAN,OAAA,CAAAM,SAAA,GAAG,CAAC,CAAC;AAClB,IAAIC,MAAM,GAAAP,OAAA,CAAAO,MAAA,GAAG,CAAC,CAAC;AACf,IAAIC,UAAU,GAAAR,OAAA,CAAAQ,UAAA,GAAG,CAAC,CAAC;AACnB,IAAIC,MAAM,GAAAT,OAAA,CAAAS,MAAA,GAAG,CAAC,CAAC;AACf,IAAIC,IAAI,GAAAV,OAAA,CAAAU,IAAA,GAAG;EAAC,yBAAyB,EAAC;AAA2B,CAAC","ignoreList":[]}
1
+ {"version":3,"names":["_stylableEsmRuntime","require","_namespace_","_style_","classesRuntime","bind","cssStates","exports","statesRuntime","style","st","namespace","classes","keyframes","layers","containers","stVars","vars"],"sources":["../../../../../../src/components/rich-content/rich-content-input/rich-content-editor/rich-content-editor.st.css.ts"],"sourcesContent":["// @ts-nocheck\n\n\nimport { classesRuntime, statesRuntime } from \"../../../../stylable-esm-runtime.js\";\n\n\n\nvar _namespace_ = \"richcontenteditor2982314878\";\nvar _style_ = classesRuntime.bind(null, _namespace_);\n\nexport var cssStates = statesRuntime.bind(null, _namespace_);\nexport var style: import(\"@stylable/runtime\").STFunction = _style_;\nexport var st: import(\"@stylable/runtime\").STFunction = _style_;\n\nexport var namespace = _namespace_;\nexport var classes = {\"root\":\"richcontenteditor2982314878__root\",\"toolbarContainer\":\"richcontenteditor2982314878__toolbarContainer\",\"footerToolbarContainer\":\"richcontenteditor2982314878__footerToolbarContainer\",\"toolbarAndFullScreenButtonWrapper\":\"richcontenteditor2982314878__toolbarAndFullScreenButtonWrapper\",\"editor\":\"richcontenteditor2982314878__editor\",\"modalEditor\":\"richcontenteditor2982314878__modalEditor\"};\nexport var keyframes = {}; \nexport var layers = {};\nexport var containers = {};\nexport var stVars = {}; \nexport var vars = {\"wds-font-family-default\":\"--wds-font-family-default\"}; \n\n\n\n\n"],"mappings":";;;;AAGA,IAAAA,mBAAA,GAAAC,OAAA;AAHA;;AAOA,IAAIC,WAAW,GAAG,6BAA6B;AAC/C,IAAIC,OAAO,GAAGC,kCAAc,CAACC,IAAI,CAAC,IAAI,EAAEH,WAAW,CAAC;AAE7C,IAAII,SAAS,GAAAC,OAAA,CAAAD,SAAA,GAAGE,iCAAa,CAACH,IAAI,CAAC,IAAI,EAAEH,WAAW,CAAC;AACrD,IAAIO,KAA6C,GAAAF,OAAA,CAAAE,KAAA,GAAGN,OAAO;AAC3D,IAAIO,EAA0C,GAAAH,OAAA,CAAAG,EAAA,GAAGP,OAAO;AAExD,IAAIQ,SAAS,GAAAJ,OAAA,CAAAI,SAAA,GAAGT,WAAW;AAC3B,IAAIU,OAAO,GAAAL,OAAA,CAAAK,OAAA,GAAG;EAAC,MAAM,EAAC,mCAAmC;EAAC,kBAAkB,EAAC,+CAA+C;EAAC,wBAAwB,EAAC,qDAAqD;EAAC,mCAAmC,EAAC,gEAAgE;EAAC,QAAQ,EAAC,qCAAqC;EAAC,aAAa,EAAC;AAA0C,CAAC;AACzZ,IAAIC,SAAS,GAAAN,OAAA,CAAAM,SAAA,GAAG,CAAC,CAAC;AAClB,IAAIC,MAAM,GAAAP,OAAA,CAAAO,MAAA,GAAG,CAAC,CAAC;AACf,IAAIC,UAAU,GAAAR,OAAA,CAAAQ,UAAA,GAAG,CAAC,CAAC;AACnB,IAAIC,MAAM,GAAAT,OAAA,CAAAS,MAAA,GAAG,CAAC,CAAC;AACf,IAAIC,IAAI,GAAAV,OAAA,CAAAU,IAAA,GAAG;EAAC,yBAAyB,EAAC;AAA2B,CAAC","ignoreList":[]}
@@ -5,9 +5,10 @@ exports.__esModule = true;
5
5
  exports.ExternalToolbar = void 0;
6
6
  var _defineProperty2 = _interopRequireDefault(require("@babel/runtime/helpers/defineProperty"));
7
7
  var _react = _interopRequireWildcard(require("react"));
8
- var _ricos = require("@wix/ricos");
8
+ var _designSystem = require("@wix/design-system");
9
9
  var _richContentToolbarStCss = require("./rich-content-toolbar.st.css.js");
10
- var _jsxFileName = "/home/builduser/work/843658b9f44192f0/packages/fields/dist/cjs/components/rich-content/rich-content-input/rich-content-editor/rich-content-toolbar.tsx";
10
+ var _jsxFileName = "/home/builduser/work/843658b9f44192f0/packages/fields/dist/cjs/components/rich-content/rich-content-input/rich-content-editor/rich-content-toolbar.tsx"; // WDS rather than ricos's Tooltip: this toolbar renders from state the editor
11
+ // pushes out, so it must not depend on the CDN module being loaded.
11
12
  function _interopRequireWildcard(e, t) { if ("function" == typeof WeakMap) var r = new WeakMap(), n = new WeakMap(); return (_interopRequireWildcard = function (e, t) { if (!t && e && e.__esModule) return e; var o, i, f = { __proto__: null, default: e }; if (null === e || "object" != typeof e && "function" != typeof e) return f; if (o = t ? n : r) { if (o.has(e)) return o.get(e); o.set(e, f); } for (const t in e) "default" !== t && {}.hasOwnProperty.call(e, t) && ((i = (o = Object.defineProperty) && Object.getOwnPropertyDescriptor(e, t)) && (i.get || i.set) ? o(f, t, i) : f[t] = e[t]); return f; })(e, t); }
12
13
  class ExternalToolbar extends _react.Component {
13
14
  constructor(...args) {
@@ -21,7 +22,7 @@ class ExternalToolbar extends _react.Component {
21
22
  __self: this,
22
23
  __source: {
23
24
  fileName: _jsxFileName,
24
- lineNumber: 17,
25
+ lineNumber: 19,
25
26
  columnNumber: 14
26
27
  }
27
28
  });
@@ -33,7 +34,7 @@ class ExternalToolbar extends _react.Component {
33
34
  __self: this,
34
35
  __source: {
35
36
  fileName: _jsxFileName,
36
- lineNumber: 22,
37
+ lineNumber: 24,
37
38
  columnNumber: 14
38
39
  }
39
40
  });
@@ -54,13 +55,13 @@ class ExternalToolbar extends _react.Component {
54
55
  referenceElement: event.currentTarget
55
56
  });
56
57
  };
57
- return /*#__PURE__*/_react.default.createElement(_ricos.Tooltip, {
58
+ return /*#__PURE__*/_react.default.createElement(_designSystem.Tooltip, {
58
59
  content: button.tooltip,
59
60
  key: button.id,
60
61
  __self: this,
61
62
  __source: {
62
63
  fileName: _jsxFileName,
63
- lineNumber: 43,
64
+ lineNumber: 45,
64
65
  columnNumber: 7
65
66
  }
66
67
  }, /*#__PURE__*/_react.default.createElement("button", {
@@ -72,14 +73,14 @@ class ExternalToolbar extends _react.Component {
72
73
  __self: this,
73
74
  __source: {
74
75
  fileName: _jsxFileName,
75
- lineNumber: 44,
76
+ lineNumber: 46,
76
77
  columnNumber: 9
77
78
  }
78
79
  }, /*#__PURE__*/_react.default.createElement(Icon, {
79
80
  __self: this,
80
81
  __source: {
81
82
  fileName: _jsxFileName,
82
- lineNumber: 51,
83
+ lineNumber: 53,
83
84
  columnNumber: 11
84
85
  }
85
86
  })));
@@ -92,7 +93,7 @@ class ExternalToolbar extends _react.Component {
92
93
  __self: this,
93
94
  __source: {
94
95
  fileName: _jsxFileName,
95
- lineNumber: 59,
96
+ lineNumber: 61,
96
97
  columnNumber: 7
97
98
  }
98
99
  }, (_this$props$buttons = this.props.buttons) == null ? void 0 : _this$props$buttons.map(button => this.renderButton(button)));