@wix/patterns-fields 1.37.0 → 1.39.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 (353) hide show
  1. package/dist/cjs/assets/locale/messages_ar.json +171 -3
  2. package/dist/cjs/assets/locale/messages_bg.json +171 -3
  3. package/dist/cjs/assets/locale/messages_ca.json +171 -3
  4. package/dist/cjs/assets/locale/messages_cs.json +171 -3
  5. package/dist/cjs/assets/locale/messages_da.json +171 -3
  6. package/dist/cjs/assets/locale/messages_de.json +171 -3
  7. package/dist/cjs/assets/locale/messages_el.json +171 -3
  8. package/dist/cjs/assets/locale/messages_en.json +151 -152
  9. package/dist/cjs/assets/locale/messages_es.json +171 -3
  10. package/dist/cjs/assets/locale/messages_fi.json +171 -3
  11. package/dist/cjs/assets/locale/messages_fr.json +171 -3
  12. package/dist/cjs/assets/locale/messages_he.json +171 -3
  13. package/dist/cjs/assets/locale/messages_hi.json +171 -3
  14. package/dist/cjs/assets/locale/messages_hu.json +171 -3
  15. package/dist/cjs/assets/locale/messages_id.json +171 -3
  16. package/dist/cjs/assets/locale/messages_it.json +171 -3
  17. package/dist/cjs/assets/locale/messages_ja.json +171 -3
  18. package/dist/cjs/assets/locale/messages_ko.json +171 -3
  19. package/dist/cjs/assets/locale/messages_lt.json +171 -3
  20. package/dist/cjs/assets/locale/messages_ms.json +171 -3
  21. package/dist/cjs/assets/locale/messages_nl.json +171 -3
  22. package/dist/cjs/assets/locale/messages_no.json +171 -3
  23. package/dist/cjs/assets/locale/messages_pl.json +171 -3
  24. package/dist/cjs/assets/locale/messages_pt.json +171 -3
  25. package/dist/cjs/assets/locale/messages_ro.json +171 -3
  26. package/dist/cjs/assets/locale/messages_ru.json +171 -3
  27. package/dist/cjs/assets/locale/messages_sk.json +171 -3
  28. package/dist/cjs/assets/locale/messages_sl.json +171 -3
  29. package/dist/cjs/assets/locale/messages_sv.json +171 -3
  30. package/dist/cjs/assets/locale/messages_th.json +171 -3
  31. package/dist/cjs/assets/locale/messages_tl.json +171 -3
  32. package/dist/cjs/assets/locale/messages_tr.json +171 -3
  33. package/dist/cjs/assets/locale/messages_uk.json +171 -3
  34. package/dist/cjs/assets/locale/messages_vi.json +171 -3
  35. package/dist/cjs/assets/locale/messages_zh.json +171 -3
  36. package/dist/cjs/assets/locale/version_file +1 -0
  37. package/dist/cjs/components/address/input/address-input.st.css.js +3 -3
  38. package/dist/cjs/components/address/input/address-input.st.css.js.map +1 -1
  39. package/dist/cjs/components/audio/actions/actions-menu/actions-menu.st.css.js +3 -3
  40. package/dist/cjs/components/audio/actions/actions-menu/actions-menu.st.css.js.map +1 -1
  41. package/dist/cjs/components/audio/actions/audio-actions.js +89 -0
  42. package/dist/cjs/components/audio/actions/audio-actions.js.map +1 -0
  43. package/dist/cjs/components/audio/audio-field/form-audio-field.js +47 -64
  44. package/dist/cjs/components/audio/audio-field/form-audio-field.js.map +1 -1
  45. package/dist/cjs/components/audio/audio-field/form-audio-field.st.css.js +4 -4
  46. package/dist/cjs/components/audio/audio-field/form-audio-field.st.css.js.map +1 -1
  47. package/dist/cjs/components/audio/audio-player/audio-player-store.js +75 -0
  48. package/dist/cjs/components/audio/audio-player/audio-player-store.js.map +1 -0
  49. package/dist/cjs/components/audio/audio-player/audio-player.js +10 -15
  50. package/dist/cjs/components/audio/audio-player/audio-player.js.map +1 -1
  51. package/dist/cjs/components/audio/audio-player/audio-player.st.css.js +2 -2
  52. package/dist/cjs/components/audio/audio-player/audio-player.st.css.js.map +1 -1
  53. package/dist/cjs/components/audio/audio-player/index.js +6 -0
  54. package/dist/cjs/components/audio/audio-player/index.js.map +1 -1
  55. package/dist/cjs/components/audio/cell-audio-edit.js +172 -0
  56. package/dist/cjs/components/audio/cell-audio-edit.js.map +1 -0
  57. package/dist/cjs/components/audio/cell-audio-view.js +56 -0
  58. package/dist/cjs/components/audio/cell-audio-view.js.map +1 -0
  59. package/dist/cjs/components/audio/index.js +12 -0
  60. package/dist/cjs/components/audio/index.js.map +1 -1
  61. package/dist/cjs/components/color-view/color-view.st.css.js +4 -4
  62. package/dist/cjs/components/color-view/color-view.st.css.js.map +1 -1
  63. package/dist/cjs/components/delete-dialog/delete-dialog.st.css.js +3 -3
  64. package/dist/cjs/components/delete-dialog/delete-dialog.st.css.js.map +1 -1
  65. package/dist/cjs/components/document/form-document-field.st.css.js +7 -7
  66. package/dist/cjs/components/document/form-document-field.st.css.js.map +1 -1
  67. package/dist/cjs/components/exclamation/exclamation.st.css.js +5 -5
  68. package/dist/cjs/components/exclamation/exclamation.st.css.js.map +1 -1
  69. package/dist/cjs/components/highlighted-text/highlighted-text.st.css.js +5 -5
  70. package/dist/cjs/components/highlighted-text/highlighted-text.st.css.js.map +1 -1
  71. package/dist/cjs/components/image/thumbnail-replace-overlay.st.css.js +3 -3
  72. package/dist/cjs/components/image/thumbnail-replace-overlay.st.css.js.map +1 -1
  73. package/dist/cjs/components/media-control/cell-media-edit-shell.st.css.js +2 -2
  74. package/dist/cjs/components/media-control/cell-media-edit-shell.st.css.js.map +1 -1
  75. package/dist/cjs/components/media-control/index.js +6 -0
  76. package/dist/cjs/components/media-control/index.js.map +1 -1
  77. package/dist/cjs/components/media-control/paste-url-button.st.css.js +4 -4
  78. package/dist/cjs/components/media-control/paste-url-button.st.css.js.map +1 -1
  79. package/dist/cjs/components/media-control/use-cell-media-edit.js +13 -11
  80. package/dist/cjs/components/media-control/use-cell-media-edit.js.map +1 -1
  81. package/dist/cjs/components/media-control/use-media-handlers.js +42 -0
  82. package/dist/cjs/components/media-control/use-media-handlers.js.map +1 -0
  83. package/dist/cjs/components/media-gallery/form-media-gallery-field.st.css.js +10 -10
  84. package/dist/cjs/components/media-gallery/form-media-gallery-field.st.css.js.map +1 -1
  85. package/dist/cjs/components/media-image/media-image.st.css.js +4 -4
  86. package/dist/cjs/components/media-image/media-image.st.css.js.map +1 -1
  87. package/dist/cjs/components/media-image/overlays/overlay.st.css.js +3 -3
  88. package/dist/cjs/components/media-image/overlays/overlay.st.css.js.map +1 -1
  89. package/dist/cjs/components/media-loader/media-loader.st.css.js +3 -3
  90. package/dist/cjs/components/media-loader/media-loader.st.css.js.map +1 -1
  91. package/dist/cjs/components/media-tag/web-media-tag/media-tag.st.css.js +2 -2
  92. package/dist/cjs/components/media-tag/web-media-tag/media-tag.st.css.js.map +1 -1
  93. package/dist/cjs/components/multi-document/multi-document-input/form-multi-document.st.css.js +5 -5
  94. package/dist/cjs/components/multi-document/multi-document-input/form-multi-document.st.css.js.map +1 -1
  95. package/dist/cjs/components/reference/cell-reference-input.st.css.js +3 -3
  96. package/dist/cjs/components/reference/cell-reference-input.st.css.js.map +1 -1
  97. package/dist/cjs/components/rich-content/rich-content-input/default-value-input/rich-content-default-value-input.st.css.js +4 -4
  98. package/dist/cjs/components/rich-content/rich-content-input/default-value-input/rich-content-default-value-input.st.css.js.map +1 -1
  99. package/dist/cjs/components/rich-content/rich-content-input/form-input/rich-content-form-input.st.css.js +3 -3
  100. package/dist/cjs/components/rich-content/rich-content-input/form-input/rich-content-form-input.st.css.js.map +1 -1
  101. package/dist/cjs/components/rich-content/rich-content-input/form-read-only-input/rich-content-form-read-only-input.st.css.js +2 -2
  102. 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
  103. package/dist/cjs/components/rich-content/rich-content-input/rich-content-common/fullscreen-modal/fullscreen-modal.st.css.js +3 -3
  104. package/dist/cjs/components/rich-content/rich-content-input/rich-content-common/fullscreen-modal/fullscreen-modal.st.css.js.map +1 -1
  105. package/dist/cjs/components/rich-content/rich-content-input/rich-content-common/publish-loader/publish-loader.st.css.js +3 -3
  106. package/dist/cjs/components/rich-content/rich-content-input/rich-content-common/publish-loader/publish-loader.st.css.js.map +1 -1
  107. package/dist/cjs/components/rich-content/rich-content-input/rich-content-common/toggle-fullscreen-button/toggle-fullscreen-button.st.css.js +2 -2
  108. package/dist/cjs/components/rich-content/rich-content-input/rich-content-common/toggle-fullscreen-button/toggle-fullscreen-button.st.css.js.map +1 -1
  109. package/dist/cjs/components/rich-content/rich-content-input/rich-content-editor/rich-content-editor.st.css.js +7 -7
  110. package/dist/cjs/components/rich-content/rich-content-input/rich-content-editor/rich-content-editor.st.css.js.map +1 -1
  111. package/dist/cjs/components/rich-content/rich-content-input/rich-content-editor/rich-content-toolbar.st.css.js +4 -4
  112. package/dist/cjs/components/rich-content/rich-content-input/rich-content-editor/rich-content-toolbar.st.css.js.map +1 -1
  113. package/dist/cjs/components/rich-content/rich-content-input/rich-content-viewer/rich-content-viewer.st.css.js +4 -4
  114. package/dist/cjs/components/rich-content/rich-content-input/rich-content-viewer/rich-content-viewer.st.css.js.map +1 -1
  115. package/dist/cjs/components/rich-text/rich-text-input/rich-text-editor/rich-editor.st.css.js +18 -18
  116. package/dist/cjs/components/rich-text/rich-text-input/rich-text-editor/rich-editor.st.css.js.map +1 -1
  117. package/dist/cjs/components/rich-text/rich-text-input/rich-text-editor/rich-text-editor.st.css.js +4 -4
  118. package/dist/cjs/components/rich-text/rich-text-input/rich-text-editor/rich-text-editor.st.css.js.map +1 -1
  119. package/dist/cjs/components/rich-text/rich-text-input/rich-text-editor/toolbar/toolbar.st.css.js +18 -18
  120. package/dist/cjs/components/rich-text/rich-text-input/rich-text-editor/toolbar/toolbar.st.css.js.map +1 -1
  121. package/dist/cjs/components/text/text-view.st.css.js +3 -3
  122. package/dist/cjs/components/text/text-view.st.css.js.map +1 -1
  123. package/dist/cjs/services/translations.js.map +1 -1
  124. package/dist/cjs/styles.global.css +1 -1
  125. package/dist/cjs/utils/media-utils.js +16 -1
  126. package/dist/cjs/utils/media-utils.js.map +1 -1
  127. package/dist/esm/assets/locale/messages_ar.json +171 -3
  128. package/dist/esm/assets/locale/messages_bg.json +171 -3
  129. package/dist/esm/assets/locale/messages_ca.json +171 -3
  130. package/dist/esm/assets/locale/messages_cs.json +171 -3
  131. package/dist/esm/assets/locale/messages_da.json +171 -3
  132. package/dist/esm/assets/locale/messages_de.json +171 -3
  133. package/dist/esm/assets/locale/messages_el.json +171 -3
  134. package/dist/esm/assets/locale/messages_en.json +151 -148
  135. package/dist/esm/assets/locale/messages_es.json +171 -3
  136. package/dist/esm/assets/locale/messages_fi.json +171 -3
  137. package/dist/esm/assets/locale/messages_fr.json +171 -3
  138. package/dist/esm/assets/locale/messages_he.json +171 -3
  139. package/dist/esm/assets/locale/messages_hi.json +171 -3
  140. package/dist/esm/assets/locale/messages_hu.json +171 -3
  141. package/dist/esm/assets/locale/messages_id.json +171 -3
  142. package/dist/esm/assets/locale/messages_it.json +171 -3
  143. package/dist/esm/assets/locale/messages_ja.json +171 -3
  144. package/dist/esm/assets/locale/messages_ko.json +171 -3
  145. package/dist/esm/assets/locale/messages_lt.json +171 -3
  146. package/dist/esm/assets/locale/messages_ms.json +171 -3
  147. package/dist/esm/assets/locale/messages_nl.json +171 -3
  148. package/dist/esm/assets/locale/messages_no.json +171 -3
  149. package/dist/esm/assets/locale/messages_pl.json +171 -3
  150. package/dist/esm/assets/locale/messages_pt.json +171 -3
  151. package/dist/esm/assets/locale/messages_ro.json +171 -3
  152. package/dist/esm/assets/locale/messages_ru.json +171 -3
  153. package/dist/esm/assets/locale/messages_sk.json +171 -3
  154. package/dist/esm/assets/locale/messages_sl.json +171 -3
  155. package/dist/esm/assets/locale/messages_sv.json +171 -3
  156. package/dist/esm/assets/locale/messages_th.json +171 -3
  157. package/dist/esm/assets/locale/messages_tl.json +171 -3
  158. package/dist/esm/assets/locale/messages_tr.json +171 -3
  159. package/dist/esm/assets/locale/messages_uk.json +171 -3
  160. package/dist/esm/assets/locale/messages_vi.json +171 -3
  161. package/dist/esm/assets/locale/messages_zh.json +171 -3
  162. package/dist/esm/assets/locale/version_file +1 -0
  163. package/dist/esm/components/address/input/address-input.st.css.js +2 -2
  164. package/dist/esm/components/audio/actions/actions-menu/actions-menu.st.css.js +2 -2
  165. package/dist/esm/components/audio/actions/audio-actions.js +53 -0
  166. package/dist/esm/components/audio/actions/audio-actions.js.map +1 -0
  167. package/dist/esm/components/audio/audio-field/form-audio-field.js +36 -40
  168. package/dist/esm/components/audio/audio-field/form-audio-field.js.map +1 -1
  169. package/dist/esm/components/audio/audio-field/form-audio-field.st.css.js +2 -2
  170. package/dist/esm/components/audio/audio-player/audio-player-store.js +45 -0
  171. package/dist/esm/components/audio/audio-player/audio-player-store.js.map +1 -0
  172. package/dist/esm/components/audio/audio-player/audio-player.js +4 -9
  173. package/dist/esm/components/audio/audio-player/audio-player.js.map +1 -1
  174. package/dist/esm/components/audio/audio-player/audio-player.st.css.js +2 -2
  175. package/dist/esm/components/audio/audio-player/audio-player.st.css.js.map +1 -1
  176. package/dist/esm/components/audio/audio-player/index.js +1 -0
  177. package/dist/esm/components/audio/audio-player/index.js.map +1 -1
  178. package/dist/esm/components/audio/cell-audio-edit.js +57 -0
  179. package/dist/esm/components/audio/cell-audio-edit.js.map +1 -0
  180. package/dist/esm/components/audio/cell-audio-view.js +13 -0
  181. package/dist/esm/components/audio/cell-audio-view.js.map +1 -0
  182. package/dist/esm/components/audio/index.js +2 -0
  183. package/dist/esm/components/audio/index.js.map +1 -1
  184. package/dist/esm/components/color-view/color-view.st.css.js +2 -2
  185. package/dist/esm/components/delete-dialog/delete-dialog.st.css.js +2 -2
  186. package/dist/esm/components/document/form-document-field.st.css.js +2 -2
  187. package/dist/esm/components/document/form-document-field.st.css.js.map +1 -1
  188. package/dist/esm/components/exclamation/exclamation.st.css.js +2 -2
  189. package/dist/esm/components/highlighted-text/highlighted-text.st.css.js +3 -3
  190. package/dist/esm/components/image/thumbnail-replace-overlay.st.css.js +2 -2
  191. package/dist/esm/components/image/thumbnail-replace-overlay.st.css.js.map +1 -1
  192. package/dist/esm/components/media-control/cell-media-edit-shell.st.css.js +2 -2
  193. package/dist/esm/components/media-control/cell-media-edit-shell.st.css.js.map +1 -1
  194. package/dist/esm/components/media-control/index.js +1 -0
  195. package/dist/esm/components/media-control/index.js.map +1 -1
  196. package/dist/esm/components/media-control/paste-url-button.st.css.js +2 -2
  197. package/dist/esm/components/media-control/use-cell-media-edit.js +10 -11
  198. package/dist/esm/components/media-control/use-cell-media-edit.js.map +1 -1
  199. package/dist/esm/components/media-control/use-media-handlers.js +26 -0
  200. package/dist/esm/components/media-control/use-media-handlers.js.map +1 -0
  201. package/dist/esm/components/media-gallery/form-media-gallery-field.st.css.js +2 -2
  202. package/dist/esm/components/media-image/media-image.st.css.js +3 -3
  203. package/dist/esm/components/media-image/media-image.st.css.js.map +1 -1
  204. package/dist/esm/components/media-image/overlays/overlay.st.css.js +2 -2
  205. package/dist/esm/components/media-image/overlays/overlay.st.css.js.map +1 -1
  206. package/dist/esm/components/media-loader/media-loader.st.css.js +2 -2
  207. package/dist/esm/components/media-tag/web-media-tag/media-tag.st.css.js +2 -2
  208. package/dist/esm/components/multi-document/multi-document-input/form-multi-document.st.css.js +2 -2
  209. package/dist/esm/components/multi-document/multi-document-input/form-multi-document.st.css.js.map +1 -1
  210. package/dist/esm/components/reference/cell-reference-input.st.css.js +2 -2
  211. package/dist/esm/components/rich-content/rich-content-input/default-value-input/rich-content-default-value-input.st.css.js +2 -2
  212. package/dist/esm/components/rich-content/rich-content-input/form-input/rich-content-form-input.st.css.js +2 -2
  213. package/dist/esm/components/rich-content/rich-content-input/form-input/rich-content-form-input.st.css.js.map +1 -1
  214. package/dist/esm/components/rich-content/rich-content-input/form-read-only-input/rich-content-form-read-only-input.st.css.js +2 -2
  215. package/dist/esm/components/rich-content/rich-content-input/form-read-only-input/rich-content-form-read-only-input.st.css.js.map +1 -1
  216. package/dist/esm/components/rich-content/rich-content-input/rich-content-common/fullscreen-modal/fullscreen-modal.st.css.js +2 -2
  217. package/dist/esm/components/rich-content/rich-content-input/rich-content-common/publish-loader/publish-loader.st.css.js +2 -2
  218. package/dist/esm/components/rich-content/rich-content-input/rich-content-common/publish-loader/publish-loader.st.css.js.map +1 -1
  219. package/dist/esm/components/rich-content/rich-content-input/rich-content-common/toggle-fullscreen-button/toggle-fullscreen-button.st.css.js +2 -2
  220. package/dist/esm/components/rich-content/rich-content-input/rich-content-common/toggle-fullscreen-button/toggle-fullscreen-button.st.css.js.map +1 -1
  221. package/dist/esm/components/rich-content/rich-content-input/rich-content-editor/rich-content-editor.st.css.js +2 -2
  222. package/dist/esm/components/rich-content/rich-content-input/rich-content-editor/rich-content-editor.st.css.js.map +1 -1
  223. package/dist/esm/components/rich-content/rich-content-input/rich-content-editor/rich-content-toolbar.st.css.js +2 -2
  224. package/dist/esm/components/rich-content/rich-content-input/rich-content-viewer/rich-content-viewer.st.css.js +2 -2
  225. package/dist/esm/components/rich-text/rich-text-input/rich-text-editor/rich-editor.st.css.js +2 -2
  226. package/dist/esm/components/rich-text/rich-text-input/rich-text-editor/rich-editor.st.css.js.map +1 -1
  227. package/dist/esm/components/rich-text/rich-text-input/rich-text-editor/rich-text-editor.st.css.js +2 -2
  228. package/dist/esm/components/rich-text/rich-text-input/rich-text-editor/toolbar/toolbar.st.css.js +2 -2
  229. package/dist/esm/components/text/text-view.st.css.js +2 -2
  230. package/dist/esm/components/text/text-view.st.css.js.map +1 -1
  231. package/dist/esm/styles.global.css +1 -1
  232. package/dist/esm/utils/media-utils.js +13 -1
  233. package/dist/esm/utils/media-utils.js.map +1 -1
  234. package/dist/types/components/audio/actions/audio-actions.d.ts +33 -0
  235. package/dist/types/components/audio/actions/audio-actions.d.ts.map +1 -0
  236. package/dist/types/components/audio/audio-field/form-audio-field.d.ts.map +1 -1
  237. package/dist/types/components/audio/audio-player/audio-player-store.d.ts +19 -0
  238. package/dist/types/components/audio/audio-player/audio-player-store.d.ts.map +1 -0
  239. package/dist/types/components/audio/audio-player/audio-player.d.ts +1 -2
  240. package/dist/types/components/audio/audio-player/audio-player.d.ts.map +1 -1
  241. package/dist/types/components/audio/audio-player/audio-player.st.css.d.ts.map +1 -1
  242. package/dist/types/components/audio/audio-player/index.d.ts +1 -0
  243. package/dist/types/components/audio/audio-player/index.d.ts.map +1 -1
  244. package/dist/types/components/audio/cell-audio-edit.d.ts +18 -0
  245. package/dist/types/components/audio/cell-audio-edit.d.ts.map +1 -0
  246. package/dist/types/components/audio/cell-audio-view.d.ts +7 -0
  247. package/dist/types/components/audio/cell-audio-view.d.ts.map +1 -0
  248. package/dist/types/components/audio/index.d.ts +2 -0
  249. package/dist/types/components/audio/index.d.ts.map +1 -1
  250. package/dist/types/components/document/form-document-field.st.css.d.ts.map +1 -1
  251. package/dist/types/components/image/thumbnail-replace-overlay.st.css.d.ts.map +1 -1
  252. package/dist/types/components/media-control/cell-media-edit-shell.st.css.d.ts.map +1 -1
  253. package/dist/types/components/media-control/index.d.ts +1 -0
  254. package/dist/types/components/media-control/index.d.ts.map +1 -1
  255. package/dist/types/components/media-control/use-cell-media-edit.d.ts.map +1 -1
  256. package/dist/types/components/media-control/use-media-handlers.d.ts +24 -0
  257. package/dist/types/components/media-control/use-media-handlers.d.ts.map +1 -0
  258. package/dist/types/components/media-image/media-image.st.css.d.ts.map +1 -1
  259. package/dist/types/components/media-image/overlays/overlay.st.css.d.ts.map +1 -1
  260. package/dist/types/components/multi-document/multi-document-input/form-multi-document.st.css.d.ts.map +1 -1
  261. package/dist/types/components/rich-content/rich-content-input/form-input/rich-content-form-input.st.css.d.ts.map +1 -1
  262. package/dist/types/components/rich-content/rich-content-input/form-read-only-input/rich-content-form-read-only-input.st.css.d.ts.map +1 -1
  263. package/dist/types/components/rich-content/rich-content-input/rich-content-common/publish-loader/publish-loader.st.css.d.ts.map +1 -1
  264. 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
  265. package/dist/types/components/rich-content/rich-content-input/rich-content-editor/rich-content-editor.st.css.d.ts.map +1 -1
  266. package/dist/types/components/rich-text/rich-text-input/rich-text-editor/rich-editor.st.css.d.ts.map +1 -1
  267. package/dist/types/components/text/text-view.st.css.d.ts.map +1 -1
  268. package/dist/types/services/translations.d.ts +6 -6
  269. package/dist/types/services/translations.d.ts.map +1 -1
  270. package/dist/types/utils/media-utils.d.ts.map +1 -1
  271. package/package.json +8 -6
  272. package/src/assets/locale/messages_ar.json +171 -3
  273. package/src/assets/locale/messages_bg.json +171 -3
  274. package/src/assets/locale/messages_ca.json +171 -3
  275. package/src/assets/locale/messages_cs.json +171 -3
  276. package/src/assets/locale/messages_da.json +171 -3
  277. package/src/assets/locale/messages_de.json +171 -3
  278. package/src/assets/locale/messages_el.json +171 -3
  279. package/src/assets/locale/messages_en.json +151 -152
  280. package/src/assets/locale/messages_es.json +171 -3
  281. package/src/assets/locale/messages_fi.json +171 -3
  282. package/src/assets/locale/messages_fr.json +171 -3
  283. package/src/assets/locale/messages_he.json +171 -3
  284. package/src/assets/locale/messages_hi.json +171 -3
  285. package/src/assets/locale/messages_hu.json +171 -3
  286. package/src/assets/locale/messages_id.json +171 -3
  287. package/src/assets/locale/messages_it.json +171 -3
  288. package/src/assets/locale/messages_ja.json +171 -3
  289. package/src/assets/locale/messages_ko.json +171 -3
  290. package/src/assets/locale/messages_lt.json +171 -3
  291. package/src/assets/locale/messages_ms.json +171 -3
  292. package/src/assets/locale/messages_nl.json +171 -3
  293. package/src/assets/locale/messages_no.json +171 -3
  294. package/src/assets/locale/messages_pl.json +171 -3
  295. package/src/assets/locale/messages_pt.json +171 -3
  296. package/src/assets/locale/messages_ro.json +171 -3
  297. package/src/assets/locale/messages_ru.json +171 -3
  298. package/src/assets/locale/messages_sk.json +171 -3
  299. package/src/assets/locale/messages_sl.json +171 -3
  300. package/src/assets/locale/messages_sv.json +171 -3
  301. package/src/assets/locale/messages_th.json +171 -3
  302. package/src/assets/locale/messages_tl.json +171 -3
  303. package/src/assets/locale/messages_tr.json +171 -3
  304. package/src/assets/locale/messages_uk.json +171 -3
  305. package/src/assets/locale/messages_vi.json +171 -3
  306. package/src/assets/locale/messages_zh.json +171 -3
  307. package/src/assets/locale/version_file +1 -0
  308. package/src/components/address/input/address-input.st.css.ts +2 -2
  309. package/src/components/audio/actions/actions-menu/actions-menu.st.css.ts +2 -2
  310. package/src/components/audio/actions/audio-actions.tsx +100 -0
  311. package/src/components/audio/audio-field/form-audio-field.st.css.ts +2 -2
  312. package/src/components/audio/audio-field/form-audio-field.tsx +36 -45
  313. package/src/components/audio/audio-player/audio-player-store.tsx +61 -0
  314. package/src/components/audio/audio-player/audio-player.st.css.ts +2 -2
  315. package/src/components/audio/audio-player/audio-player.tsx +6 -12
  316. package/src/components/audio/audio-player/index.ts +1 -0
  317. package/src/components/audio/cell-audio-edit.tsx +132 -0
  318. package/src/components/audio/cell-audio-view.tsx +43 -0
  319. package/src/components/audio/index.ts +2 -0
  320. package/src/components/color-view/color-view.st.css.ts +2 -2
  321. package/src/components/delete-dialog/delete-dialog.st.css.ts +2 -2
  322. package/src/components/document/form-document-field.st.css.ts +2 -2
  323. package/src/components/exclamation/exclamation.st.css.ts +2 -2
  324. package/src/components/highlighted-text/highlighted-text.st.css.ts +3 -3
  325. package/src/components/image/thumbnail-replace-overlay.st.css.ts +2 -2
  326. package/src/components/media-control/cell-media-edit-shell.st.css.ts +2 -2
  327. package/src/components/media-control/index.ts +1 -0
  328. package/src/components/media-control/paste-url-button.st.css.ts +2 -2
  329. package/src/components/media-control/use-cell-media-edit.ts +14 -17
  330. package/src/components/media-control/use-media-handlers.ts +56 -0
  331. package/src/components/media-gallery/form-media-gallery-field.st.css.ts +2 -2
  332. package/src/components/media-image/media-image.st.css.ts +3 -3
  333. package/src/components/media-image/overlays/overlay.st.css.ts +2 -2
  334. package/src/components/media-loader/media-loader.st.css.ts +2 -2
  335. package/src/components/media-tag/web-media-tag/media-tag.st.css.ts +2 -2
  336. package/src/components/multi-document/multi-document-input/form-multi-document.st.css.ts +2 -2
  337. package/src/components/reference/cell-reference-input.st.css.ts +2 -2
  338. package/src/components/rich-content/rich-content-input/default-value-input/rich-content-default-value-input.st.css.ts +2 -2
  339. package/src/components/rich-content/rich-content-input/form-input/rich-content-form-input.st.css.ts +2 -2
  340. package/src/components/rich-content/rich-content-input/form-read-only-input/rich-content-form-read-only-input.st.css.ts +2 -2
  341. package/src/components/rich-content/rich-content-input/rich-content-common/fullscreen-modal/fullscreen-modal.st.css.ts +2 -2
  342. package/src/components/rich-content/rich-content-input/rich-content-common/publish-loader/publish-loader.st.css.ts +2 -2
  343. package/src/components/rich-content/rich-content-input/rich-content-common/toggle-fullscreen-button/toggle-fullscreen-button.st.css.ts +2 -2
  344. package/src/components/rich-content/rich-content-input/rich-content-editor/rich-content-editor.st.css.ts +2 -2
  345. package/src/components/rich-content/rich-content-input/rich-content-editor/rich-content-toolbar.st.css.ts +2 -2
  346. package/src/components/rich-content/rich-content-input/rich-content-viewer/rich-content-viewer.st.css.ts +2 -2
  347. package/src/components/rich-text/rich-text-input/rich-text-editor/rich-editor.st.css.ts +2 -2
  348. package/src/components/rich-text/rich-text-input/rich-text-editor/rich-text-editor.st.css.ts +2 -2
  349. package/src/components/rich-text/rich-text-input/rich-text-editor/toolbar/toolbar.st.css.ts +2 -2
  350. package/src/components/text/text-view.st.css.ts +2 -2
  351. package/src/services/translations.ts +151 -148
  352. package/src/styles.global.css +1 -1
  353. package/src/utils/media-utils.ts +13 -1
@@ -0,0 +1,61 @@
1
+ import React, { Suspense, useEffect, useState } from 'react';
2
+
3
+ const FloatingAudioPlayer = React.lazy(() =>
4
+ import('./audio-player').then((m) => ({ default: m.FloatingAudioPlayer })),
5
+ );
6
+
7
+ type Listener = () => void;
8
+
9
+ let currentSrc: string | null = null;
10
+ const listeners = new Set<Listener>();
11
+
12
+ const subscribe = (listener: Listener) => {
13
+ listeners.add(listener);
14
+ return () => {
15
+ listeners.delete(listener);
16
+ };
17
+ };
18
+
19
+ const emit = () => {
20
+ listeners.forEach((l) => l());
21
+ };
22
+
23
+ /**
24
+ * Reads the current floating audio source. Subscribes the calling component
25
+ * to store updates so it re-renders when the source changes.
26
+ */
27
+ export const useAudioPlayerSrc = (): string | null => {
28
+ const [src, setSrc] = useState<string | null>(currentSrc);
29
+ useEffect(() => subscribe(() => setSrc(currentSrc)), []);
30
+ return src;
31
+ };
32
+
33
+ /**
34
+ * Sets (or clears) the global floating audio source. Cells call this with
35
+ * the wix:audio:// URI when the user hits "Play"; the mounted
36
+ * <GlobalAudioPlayer/> picks the change up and renders the floating card.
37
+ */
38
+ export const setAudioPlayerSrc = (src: string | null): void => {
39
+ currentSrc = src;
40
+ emit();
41
+ };
42
+
43
+ /**
44
+ * Subscribes to the audio-player store and renders the floating card. Mount
45
+ * once at a stable parent (e.g., once per EditableTable) so playback survives
46
+ * cell focus changes — matches CMS-web's pattern where the player is global.
47
+ */
48
+ export const GlobalAudioPlayer: React.FC = () => {
49
+ const src = useAudioPlayerSrc();
50
+ if (!src) {
51
+ return null;
52
+ }
53
+ return (
54
+ <Suspense fallback={null}>
55
+ <FloatingAudioPlayer
56
+ source={src}
57
+ onClose={() => setAudioPlayerSrc(null)}
58
+ />
59
+ </Suspense>
60
+ );
61
+ };
@@ -5,7 +5,7 @@ import { classesRuntime, statesRuntime } from "../../../stylable-esm-runtime.js"
5
5
 
6
6
 
7
7
 
8
- var _namespace_ = "audioplayer1060743309";
8
+ var _namespace_ = "audioplayer710309147";
9
9
  var _style_ = classesRuntime.bind(null, _namespace_);
10
10
 
11
11
  export var cssStates = statesRuntime.bind(null, _namespace_);
@@ -13,7 +13,7 @@ export var style: import("@stylable/runtime").STFunction = _style_;
13
13
  export var st: import("@stylable/runtime").STFunction = _style_;
14
14
 
15
15
  export var namespace = _namespace_;
16
- export var classes = {"root":"audioplayer1060743309__root"};
16
+ export var classes = {"root":"audioplayer710309147__root"};
17
17
  export var keyframes = {};
18
18
  export var layers = {};
19
19
  export var containers = {};
@@ -1,5 +1,5 @@
1
1
  import type { FC } from 'react';
2
- import React, { useEffect, useState } from 'react';
2
+ import React from 'react';
3
3
 
4
4
  import { getMediaURL } from '../../../auto-field-types';
5
5
  import { Box, AudioPlayer, Card, Text, CloseButton } from '@wix/design-system';
@@ -7,22 +7,16 @@ import { Box, AudioPlayer, Card, Text, CloseButton } from '@wix/design-system';
7
7
  import { getMediaTitle } from '../../../utils';
8
8
  import { classes } from './audio-player.st.css.js';
9
9
 
10
- interface FloatingAudioPlayerProps {
10
+ export interface FloatingAudioPlayerProps {
11
11
  source: string | null;
12
12
  onClose: () => void;
13
13
  }
14
+
14
15
  export const FloatingAudioPlayer: FC<FloatingAudioPlayerProps> = ({
15
16
  source,
16
17
  onClose,
17
18
  }) => {
18
- const [audioSrc, setAudioSrc] = useState(source);
19
-
20
- useEffect(() => {
21
- setAudioSrc(null);
22
- onClose?.();
23
- }, [onClose]);
24
-
25
- if (!audioSrc) {
19
+ if (!source) {
26
20
  return null;
27
21
  }
28
22
 
@@ -41,8 +35,8 @@ export const FloatingAudioPlayer: FC<FloatingAudioPlayerProps> = ({
41
35
  width="369px"
42
36
  gap="SP3"
43
37
  >
44
- <Text secondary>{getMediaTitle(audioSrc)}</Text>
45
- <AudioPlayer autoplay src={getMediaURL(audioSrc)} />
38
+ <Text secondary>{getMediaTitle(source)}</Text>
39
+ <AudioPlayer autoplay src={getMediaURL(source)} />
46
40
  </Box>
47
41
  </Card>
48
42
  );
@@ -1 +1,2 @@
1
1
  export * from './audio-player';
2
+ export * from './audio-player-store';
@@ -0,0 +1,132 @@
1
+ import React, { useCallback } from 'react';
2
+ import { Box, IconButton, Tag, Tooltip } from '@wix/design-system';
3
+ import { Add, MoreSmall, MusicSmall } from '@wix/wix-ui-icons-common';
4
+
5
+ import { MEDIA_TYPES, getMediaTitle } from '../../utils';
6
+ import { useTranslations } from '../../hooks';
7
+ import {
8
+ useCellMediaEdit,
9
+ CellMediaEditShell,
10
+ MediaFieldType,
11
+ } from '../media-control';
12
+ import { ActionsMenu } from './actions/actions-menu';
13
+ import { buildAudioActions } from './actions/audio-actions';
14
+ import { setAudioPlayerSrc } from './audio-player';
15
+
16
+ export interface CellAudioEditProps {
17
+ value: string | null;
18
+ onChange: (value: string | null) => void;
19
+ onCommit: () => void;
20
+ onCancel?: () => void;
21
+ /**
22
+ * Called before opening external UI (media manager) so the table can set
23
+ * isEditing=true and protect cell focus while the modal is open.
24
+ */
25
+ onStartEdit?: () => void;
26
+ inputRef?: React.MutableRefObject<{ focus: () => void } | null | undefined>;
27
+ dataHook?: string;
28
+ }
29
+
30
+ export const CellAudioEdit: React.FC<CellAudioEditProps> = ({
31
+ value,
32
+ onChange,
33
+ onCommit,
34
+ onCancel,
35
+ onStartEdit,
36
+ inputRef,
37
+ dataHook,
38
+ }) => {
39
+ const { t } = useTranslations();
40
+
41
+ const mediaEdit = useCellMediaEdit({
42
+ mediaType: MEDIA_TYPES.AUDIO,
43
+ value,
44
+ onChange,
45
+ onCommit,
46
+ onCancel,
47
+ onStartEdit,
48
+ inputRef,
49
+ });
50
+
51
+ const handlePlay = useCallback(() => {
52
+ if (value) {
53
+ setAudioPlayerSrc(value);
54
+ }
55
+ }, [value]);
56
+
57
+ const actions = buildAudioActions({
58
+ labels: {
59
+ replace: t('CMS.audio.button.replace'),
60
+ download: t('CMS.audio.button.download'),
61
+ delete: t('CMS.audio.button.delete'),
62
+ },
63
+ dataHooks: {
64
+ replace: 'audio-edit-action-replace',
65
+ download: 'audio-edit-action-download',
66
+ delete: 'audio-edit-action-delete',
67
+ },
68
+ onReplace: mediaEdit.handleCallMedia,
69
+ onDownload: () => value && mediaEdit.downloadMedia(value),
70
+ onDelete: mediaEdit.handleDelete,
71
+ play: {
72
+ label: t('CMS.audio.button.play'),
73
+ dataHook: 'audio-edit-action-play',
74
+ onClick: handlePlay,
75
+ },
76
+ });
77
+
78
+ return (
79
+ <CellMediaEditShell
80
+ dataHook={dataHook}
81
+ mediaEdit={mediaEdit}
82
+ value={value}
83
+ fieldType={MediaFieldType.document}
84
+ gap="SP1"
85
+ >
86
+ {value ? (
87
+ <Box minWidth="0" style={{ flex: '1 1 auto' }}>
88
+ <Tag
89
+ id="audio-edit-tag"
90
+ dataHook="audio-edit-tag"
91
+ removable={false}
92
+ thumb={<MusicSmall />}
93
+ size="small"
94
+ maxWidth="100%"
95
+ >
96
+ {getMediaTitle(value)}
97
+ </Tag>
98
+ </Box>
99
+ ) : (
100
+ <Tooltip content={t('CMS.audio.button.add')} appendTo="window">
101
+ <IconButton
102
+ size="tiny"
103
+ priority="secondary"
104
+ dataHook="audio-edit-add-button"
105
+ onClick={mediaEdit.handleCallMedia}
106
+ >
107
+ <Add />
108
+ </IconButton>
109
+ </Tooltip>
110
+ )}
111
+
112
+ {value ? (
113
+ <ActionsMenu actions={actions} appendTo="window" textSize="small">
114
+ <Tooltip
115
+ content={t('CMS.audio.more_actions_tooltip')}
116
+ appendTo="window"
117
+ >
118
+ <IconButton
119
+ size="tiny"
120
+ priority="tertiary"
121
+ dataHook="audio-edit-more-button"
122
+ >
123
+ <MoreSmall />
124
+ </IconButton>
125
+ </Tooltip>
126
+ </ActionsMenu>
127
+ ) : null}
128
+ </CellMediaEditShell>
129
+ );
130
+ };
131
+
132
+ CellAudioEdit.displayName = 'CellAudioEdit';
@@ -0,0 +1,43 @@
1
+ import React from 'react';
2
+ import { Box, Tag } from '@wix/design-system';
3
+ import { MusicSmall } from '@wix/wix-ui-icons-common';
4
+ import { getMediaTitle } from '../../utils';
5
+
6
+ export interface CellAudioViewProps {
7
+ value: string | null;
8
+ dataHook?: string;
9
+ }
10
+
11
+ export const CellAudioView: React.FC<CellAudioViewProps> = ({
12
+ value,
13
+ dataHook,
14
+ }) => {
15
+ if (!value) {
16
+ return null;
17
+ }
18
+
19
+ return (
20
+ <Box
21
+ dataHook={dataHook}
22
+ verticalAlign="middle"
23
+ width="100%"
24
+ height="100%"
25
+ padding="0 8px"
26
+ minWidth="0"
27
+ boxSizing="border-box"
28
+ >
29
+ <Tag
30
+ id="audio-cell-tag"
31
+ dataHook="audio-cell-tag"
32
+ removable={false}
33
+ thumb={<MusicSmall />}
34
+ size="small"
35
+ maxWidth="100%"
36
+ >
37
+ {getMediaTitle(value)}
38
+ </Tag>
39
+ </Box>
40
+ );
41
+ };
42
+
43
+ CellAudioView.displayName = 'CellAudioView';
@@ -1,2 +1,4 @@
1
1
  export * from './audio-player';
2
2
  export * from './audio-field';
3
+ export * from './cell-audio-view';
4
+ export * from './cell-audio-edit';
@@ -5,7 +5,7 @@ import { classesRuntime, statesRuntime } from "../../stylable-esm-runtime.js";
5
5
 
6
6
 
7
7
 
8
- var _namespace_ = "colorview4027323806";
8
+ var _namespace_ = "colorview2050727220";
9
9
  var _style_ = classesRuntime.bind(null, _namespace_);
10
10
 
11
11
  export var cssStates = statesRuntime.bind(null, _namespace_);
@@ -13,7 +13,7 @@ export var style: import("@stylable/runtime").STFunction = _style_;
13
13
  export var st: import("@stylable/runtime").STFunction = _style_;
14
14
 
15
15
  export var namespace = _namespace_;
16
- export var classes = {"root":"colorview4027323806__root","view":"colorview4027323806__view","fillPreview":"colorview4027323806__fillPreview"};
16
+ export var classes = {"root":"colorview2050727220__root","view":"colorview2050727220__view","fillPreview":"colorview2050727220__fillPreview"};
17
17
  export var keyframes = {};
18
18
  export var layers = {};
19
19
  export var containers = {};
@@ -5,7 +5,7 @@ import { classesRuntime, statesRuntime } from "../../stylable-esm-runtime.js";
5
5
 
6
6
 
7
7
 
8
- var _namespace_ = "deletedialog759595497";
8
+ var _namespace_ = "deletedialog455934700";
9
9
  var _style_ = classesRuntime.bind(null, _namespace_);
10
10
 
11
11
  export var cssStates = statesRuntime.bind(null, _namespace_);
@@ -13,7 +13,7 @@ export var style: import("@stylable/runtime").STFunction = _style_;
13
13
  export var st: import("@stylable/runtime").STFunction = _style_;
14
14
 
15
15
  export var namespace = _namespace_;
16
- export var classes = {"root":"deletedialog759595497__root","layout":"deletedialog759595497__layout"};
16
+ export var classes = {"root":"deletedialog455934700__root","layout":"deletedialog455934700__layout"};
17
17
  export var keyframes = {};
18
18
  export var layers = {};
19
19
  export var containers = {};
@@ -5,7 +5,7 @@ import { classesRuntime, statesRuntime } from "../../stylable-esm-runtime.js";
5
5
 
6
6
 
7
7
 
8
- var _namespace_ = "formdocumentfield347804993";
8
+ var _namespace_ = "formdocumentfield4091006645";
9
9
  var _style_ = classesRuntime.bind(null, _namespace_);
10
10
 
11
11
  export var cssStates = statesRuntime.bind(null, _namespace_);
@@ -13,7 +13,7 @@ export var style: import("@stylable/runtime").STFunction = _style_;
13
13
  export var st: import("@stylable/runtime").STFunction = _style_;
14
14
 
15
15
  export var namespace = _namespace_;
16
- export var classes = {"root":"formdocumentfield347804993__root","viewWrapper":"formdocumentfield347804993__viewWrapper","textWidth":"formdocumentfield347804993__textWidth","documentLoader":"formdocumentfield347804993__documentLoader","addDocument":"formdocumentfield347804993__addDocument","addItemWrapper":"formdocumentfield347804993__addItemWrapper"};
16
+ export var classes = {"root":"formdocumentfield4091006645__root","viewWrapper":"formdocumentfield4091006645__viewWrapper","textWidth":"formdocumentfield4091006645__textWidth","documentLoader":"formdocumentfield4091006645__documentLoader","addDocument":"formdocumentfield4091006645__addDocument","addItemWrapper":"formdocumentfield4091006645__addItemWrapper"};
17
17
  export var keyframes = {};
18
18
  export var layers = {};
19
19
  export var containers = {};
@@ -5,7 +5,7 @@ import { classesRuntime, statesRuntime } from "../../stylable-esm-runtime.js";
5
5
 
6
6
 
7
7
 
8
- var _namespace_ = "exclamation3170841142";
8
+ var _namespace_ = "exclamation1691525640";
9
9
  var _style_ = classesRuntime.bind(null, _namespace_);
10
10
 
11
11
  export var cssStates = statesRuntime.bind(null, _namespace_);
@@ -13,7 +13,7 @@ export var style: import("@stylable/runtime").STFunction = _style_;
13
13
  export var st: import("@stylable/runtime").STFunction = _style_;
14
14
 
15
15
  export var namespace = _namespace_;
16
- export var classes = {"root":"exclamation3170841142__root","exclamation":"exclamation3170841142__exclamation","actions":"exclamation3170841142__actions","action":"exclamation3170841142__action"};
16
+ export var classes = {"root":"exclamation1691525640__root","exclamation":"exclamation1691525640__exclamation","actions":"exclamation1691525640__actions","action":"exclamation1691525640__action"};
17
17
  export var keyframes = {};
18
18
  export var layers = {};
19
19
  export var containers = {};
@@ -5,7 +5,7 @@ import { classesRuntime, statesRuntime } from "../../stylable-esm-runtime.js";
5
5
 
6
6
 
7
7
 
8
- var _namespace_ = "highlightedtext1832354936";
8
+ var _namespace_ = "highlightedtext1920784841";
9
9
  var _style_ = classesRuntime.bind(null, _namespace_);
10
10
 
11
11
  export var cssStates = statesRuntime.bind(null, _namespace_);
@@ -13,8 +13,8 @@ export var style: import("@stylable/runtime").STFunction = _style_;
13
13
  export var st: import("@stylable/runtime").STFunction = _style_;
14
14
 
15
15
  export var namespace = _namespace_;
16
- export var classes = {"root":"highlightedtext1832354936__root","substring":"highlightedtext1832354936__substring"};
17
- export var keyframes = {"highlighted":"highlightedtext1832354936__highlighted","highlighted-match":"highlightedtext1832354936__highlighted-match"};
16
+ export var classes = {"root":"highlightedtext1920784841__root","substring":"highlightedtext1920784841__substring"};
17
+ export var keyframes = {"highlighted":"highlightedtext1920784841__highlighted","highlighted-match":"highlightedtext1920784841__highlighted-match"};
18
18
  export var layers = {};
19
19
  export var containers = {};
20
20
  export var stVars = {};
@@ -5,7 +5,7 @@ import { classesRuntime, statesRuntime } from "../../stylable-esm-runtime.js";
5
5
 
6
6
 
7
7
 
8
- var _namespace_ = "thumbnailreplaceoverlay583325301";
8
+ var _namespace_ = "thumbnailreplaceoverlay1049657370";
9
9
  var _style_ = classesRuntime.bind(null, _namespace_);
10
10
 
11
11
  export var cssStates = statesRuntime.bind(null, _namespace_);
@@ -13,7 +13,7 @@ export var style: import("@stylable/runtime").STFunction = _style_;
13
13
  export var st: import("@stylable/runtime").STFunction = _style_;
14
14
 
15
15
  export var namespace = _namespace_;
16
- export var classes = {"root":"thumbnailreplaceoverlay583325301__root","icon":"thumbnailreplaceoverlay583325301__icon"};
16
+ export var classes = {"root":"thumbnailreplaceoverlay1049657370__root","icon":"thumbnailreplaceoverlay1049657370__icon"};
17
17
  export var keyframes = {};
18
18
  export var layers = {};
19
19
  export var containers = {};
@@ -5,7 +5,7 @@ import { classesRuntime, statesRuntime } from "../../stylable-esm-runtime.js";
5
5
 
6
6
 
7
7
 
8
- var _namespace_ = "cellmediaeditshell2805430310";
8
+ var _namespace_ = "cellmediaeditshell298960076";
9
9
  var _style_ = classesRuntime.bind(null, _namespace_);
10
10
 
11
11
  export var cssStates = statesRuntime.bind(null, _namespace_);
@@ -13,7 +13,7 @@ export var style: import("@stylable/runtime").STFunction = _style_;
13
13
  export var st: import("@stylable/runtime").STFunction = _style_;
14
14
 
15
15
  export var namespace = _namespace_;
16
- export var classes = {"root":"cellmediaeditshell2805430310__root"};
16
+ export var classes = {"root":"cellmediaeditshell298960076__root"};
17
17
  export var keyframes = {};
18
18
  export var layers = {};
19
19
  export var containers = {};
@@ -5,4 +5,5 @@ export * from './use-document-delete';
5
5
  export * from './paste-url-button';
6
6
  export * from './paste-url-form';
7
7
  export * from './use-cell-media-edit';
8
+ export * from './use-media-handlers';
8
9
  export * from './cell-media-edit-shell';
@@ -5,7 +5,7 @@ import { classesRuntime, statesRuntime } from "../../stylable-esm-runtime.js";
5
5
 
6
6
 
7
7
 
8
- var _namespace_ = "pasteurlbutton1322793467";
8
+ var _namespace_ = "pasteurlbutton3527200609";
9
9
  var _style_ = classesRuntime.bind(null, _namespace_);
10
10
 
11
11
  export var cssStates = statesRuntime.bind(null, _namespace_);
@@ -13,7 +13,7 @@ export var style: import("@stylable/runtime").STFunction = _style_;
13
13
  export var st: import("@stylable/runtime").STFunction = _style_;
14
14
 
15
15
  export var namespace = _namespace_;
16
- export var classes = {"root":"pasteurlbutton1322793467__root","iconButtonTooltip":"pasteurlbutton1322793467__iconButtonTooltip","iconButton":"pasteurlbutton1322793467__iconButton"};
16
+ export var classes = {"root":"pasteurlbutton3527200609__root","iconButtonTooltip":"pasteurlbutton3527200609__iconButtonTooltip","iconButton":"pasteurlbutton3527200609__iconButton"};
17
17
  export var keyframes = {};
18
18
  export var layers = {};
19
19
  export var containers = {};
@@ -5,6 +5,7 @@ import { MEDIA_TYPES } from '../../utils/media-utils';
5
5
  import { useCellEditKeyboard } from '../../hooks';
6
6
 
7
7
  import { useMediaControl } from './use-media-control';
8
+ import { useMediaHandlers } from './use-media-handlers';
8
9
  import { usePasteURLForm } from './use-paste-url-form';
9
10
 
10
11
  export interface UseCellMediaEditParams {
@@ -82,13 +83,15 @@ export function useCellMediaEdit({
82
83
  onChange: onMediaChange,
83
84
  });
84
85
 
85
- const handleCallMedia = useCallback(async () => {
86
- onStartEdit?.();
87
- const committed = await callMedia();
88
- if (!committed) {
89
- onCancel?.();
90
- }
91
- }, [onStartEdit, callMedia, onCancel]);
86
+ const { handleReplace: handleCallMedia, handleDelete } = useMediaHandlers({
87
+ value,
88
+ callMedia,
89
+ downloadMedia,
90
+ onChange,
91
+ onCommit,
92
+ onStartEdit,
93
+ onCancel,
94
+ });
92
95
 
93
96
  const { isOpen, title, onOpen, onClose, onSave } = usePasteURLForm({
94
97
  onChange: onMediaChange,
@@ -100,19 +103,13 @@ export function useCellMediaEdit({
100
103
  }, [onClose, onCancel]);
101
104
 
102
105
  const startEditAndOpenPasteUrl = useCallback(
103
- (params: { title: string; value?: string }) =>
104
- () => {
105
- onStartEdit?.();
106
- onOpen(params)();
107
- },
106
+ (params: { title: string; value?: string }) => () => {
107
+ onStartEdit?.();
108
+ onOpen(params)();
109
+ },
108
110
  [onStartEdit, onOpen],
109
111
  );
110
112
 
111
- const handleDelete = useCallback(() => {
112
- onChange(null);
113
- onCommit();
114
- }, [onChange, onCommit]);
115
-
116
113
  const { handleContainerFocus, handleContainerBlur } = useCellEditKeyboard({
117
114
  containerRef,
118
115
  onCancel,
@@ -0,0 +1,56 @@
1
+ import { useCallback } from 'react';
2
+
3
+ export interface UseMediaHandlersOptions {
4
+ value: string | null;
5
+ callMedia: () => Promise<boolean>;
6
+ downloadMedia: (uri?: string) => void;
7
+ onChange: (value: string | null) => void;
8
+ /** Cell-only: commits the new value after onChange. */
9
+ onCommit?: () => void;
10
+ /** Cell-only: fires before the media manager opens so the table can lock focus. */
11
+ onStartEdit?: () => void;
12
+ /** Cell-only: fires when the media manager is dismissed without a pick. */
13
+ onCancel?: () => void;
14
+ }
15
+
16
+ export interface MediaHandlers {
17
+ handleReplace: () => Promise<void>;
18
+ handleDownload: () => void;
19
+ handleDelete: () => void;
20
+ }
21
+
22
+ /**
23
+ * Shared wrapping for the three audio/document/image/video actions so cell and
24
+ * form callers pass identical handler shapes when building their action menus.
25
+ * Optional cell-only callbacks no-op in the form path.
26
+ */
27
+ export function useMediaHandlers({
28
+ value,
29
+ callMedia,
30
+ downloadMedia,
31
+ onChange,
32
+ onCommit,
33
+ onStartEdit,
34
+ onCancel,
35
+ }: UseMediaHandlersOptions): MediaHandlers {
36
+ const handleReplace = useCallback(async () => {
37
+ onStartEdit?.();
38
+ const committed = await callMedia();
39
+ if (!committed) {
40
+ onCancel?.();
41
+ }
42
+ }, [onStartEdit, callMedia, onCancel]);
43
+
44
+ const handleDownload = useCallback(() => {
45
+ if (value) {
46
+ downloadMedia(value);
47
+ }
48
+ }, [value, downloadMedia]);
49
+
50
+ const handleDelete = useCallback(() => {
51
+ onChange(null);
52
+ onCommit?.();
53
+ }, [onChange, onCommit]);
54
+
55
+ return { handleReplace, handleDownload, handleDelete };
56
+ }
@@ -5,7 +5,7 @@ import { classesRuntime, statesRuntime } from "../../stylable-esm-runtime.js";
5
5
 
6
6
 
7
7
 
8
- var _namespace_ = "formmediagalleryfield1657353146";
8
+ var _namespace_ = "formmediagalleryfield3185835316";
9
9
  var _style_ = classesRuntime.bind(null, _namespace_);
10
10
 
11
11
  export var cssStates = statesRuntime.bind(null, _namespace_);
@@ -13,7 +13,7 @@ export var style: import("@stylable/runtime").STFunction = _style_;
13
13
  export var st: import("@stylable/runtime").STFunction = _style_;
14
14
 
15
15
  export var namespace = _namespace_;
16
- export var classes = {"root":"formmediagalleryfield1657353146__root","container":"formmediagalleryfield1657353146__container","viewBox":"formmediagalleryfield1657353146__viewBox","addItemWrapper":"formmediagalleryfield1657353146__addItemWrapper","addItem":"formmediagalleryfield1657353146__addItem","overlay":"formmediagalleryfield1657353146__overlay","image":"formmediagalleryfield1657353146__image","previewImage":"formmediagalleryfield1657353146__previewImage","previewVideo":"formmediagalleryfield1657353146__previewVideo"};
16
+ export var classes = {"root":"formmediagalleryfield3185835316__root","container":"formmediagalleryfield3185835316__container","viewBox":"formmediagalleryfield3185835316__viewBox","addItemWrapper":"formmediagalleryfield3185835316__addItemWrapper","addItem":"formmediagalleryfield3185835316__addItem","overlay":"formmediagalleryfield3185835316__overlay","image":"formmediagalleryfield3185835316__image","previewImage":"formmediagalleryfield3185835316__previewImage","previewVideo":"formmediagalleryfield3185835316__previewVideo"};
17
17
  export var keyframes = {};
18
18
  export var layers = {};
19
19
  export var containers = {};
@@ -5,7 +5,7 @@ import { classesRuntime, statesRuntime } from "../../stylable-esm-runtime.js";
5
5
 
6
6
 
7
7
 
8
- var _namespace_ = "mediaimage227427038";
8
+ var _namespace_ = "mediaimage1127028169";
9
9
  var _style_ = classesRuntime.bind(null, _namespace_);
10
10
 
11
11
  export var cssStates = statesRuntime.bind(null, _namespace_);
@@ -13,12 +13,12 @@ export var style: import("@stylable/runtime").STFunction = _style_;
13
13
  export var st: import("@stylable/runtime").STFunction = _style_;
14
14
 
15
15
  export var namespace = _namespace_;
16
- export var classes = {"root":"mediaimage227427038__root"};
16
+ export var classes = {"root":"mediaimage1127028169__root"};
17
17
  export var keyframes = {};
18
18
  export var layers = {};
19
19
  export var containers = {};
20
20
  export var stVars = {};
21
- export var vars = {"wds-color-red-200":"--wds-color-red-200","wsr-color-R20":"--wsr-color-R20","wds-color-black-550":"--wds-color-black-550","wsr-color-D55":"--wsr-color-D55","from":"--mediaimage227427038-from","to":"--mediaimage227427038-to"};
21
+ export var vars = {"wds-color-red-200":"--wds-color-red-200","wsr-color-R20":"--wsr-color-R20","wds-color-black-550":"--wds-color-black-550","wsr-color-D55":"--wsr-color-D55","from":"--mediaimage1127028169-from","to":"--mediaimage1127028169-to"};
22
22
 
23
23
 
24
24
 
@@ -5,7 +5,7 @@ import { classesRuntime, statesRuntime } from "../../../stylable-esm-runtime.js"
5
5
 
6
6
 
7
7
 
8
- var _namespace_ = "overlay523965683";
8
+ var _namespace_ = "overlay2544936598";
9
9
  var _style_ = classesRuntime.bind(null, _namespace_);
10
10
 
11
11
  export var cssStates = statesRuntime.bind(null, _namespace_);
@@ -13,7 +13,7 @@ export var style: import("@stylable/runtime").STFunction = _style_;
13
13
  export var st: import("@stylable/runtime").STFunction = _style_;
14
14
 
15
15
  export var namespace = _namespace_;
16
- export var classes = {"root":"overlay523965683__root","iconOverlay":"overlay523965683__iconOverlay"};
16
+ export var classes = {"root":"overlay2544936598__root","iconOverlay":"overlay2544936598__iconOverlay"};
17
17
  export var keyframes = {};
18
18
  export var layers = {};
19
19
  export var containers = {};
@@ -5,7 +5,7 @@ import { classesRuntime, statesRuntime } from "../../stylable-esm-runtime.js";
5
5
 
6
6
 
7
7
 
8
- var _namespace_ = "medialoader4060432554";
8
+ var _namespace_ = "medialoader3457330724";
9
9
  var _style_ = classesRuntime.bind(null, _namespace_);
10
10
 
11
11
  export var cssStates = statesRuntime.bind(null, _namespace_);
@@ -13,7 +13,7 @@ export var style: import("@stylable/runtime").STFunction = _style_;
13
13
  export var st: import("@stylable/runtime").STFunction = _style_;
14
14
 
15
15
  export var namespace = _namespace_;
16
- export var classes = {"root":"medialoader4060432554__root","loader":"medialoader4060432554__loader"};
16
+ export var classes = {"root":"medialoader3457330724__root","loader":"medialoader3457330724__loader"};
17
17
  export var keyframes = {};
18
18
  export var layers = {};
19
19
  export var containers = {};