@wordpress/block-editor 15.20.0 → 15.21.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (430) hide show
  1. package/CHANGELOG.md +18 -0
  2. package/build/components/block-compare/index.cjs +2 -2
  3. package/build/components/block-compare/index.cjs.map +2 -2
  4. package/build/components/block-list/use-block-props/index.cjs +1 -1
  5. package/build/components/block-list/use-block-props/index.cjs.map +2 -2
  6. package/build/components/block-patterns-list/index.cjs +1 -1
  7. package/build/components/block-patterns-list/index.cjs.map +2 -2
  8. package/build/components/block-switcher/block-transformations-menu.cjs +16 -15
  9. package/build/components/block-switcher/block-transformations-menu.cjs.map +2 -2
  10. package/build/components/block-switcher/index.cjs +4 -4
  11. package/build/components/block-switcher/index.cjs.map +2 -2
  12. package/build/components/child-layout-control/index.cjs +10 -5
  13. package/build/components/child-layout-control/index.cjs.map +2 -2
  14. package/build/components/global-styles/advanced-panel.cjs +23 -15
  15. package/build/components/global-styles/advanced-panel.cjs.map +2 -2
  16. package/build/components/global-styles/background-panel.cjs +2 -2
  17. package/build/components/global-styles/background-panel.cjs.map +2 -2
  18. package/build/components/global-styles/border-panel.cjs +2 -0
  19. package/build/components/global-styles/border-panel.cjs.map +2 -2
  20. package/build/components/global-styles/dimensions-panel.cjs +5 -4
  21. package/build/components/global-styles/dimensions-panel.cjs.map +2 -2
  22. package/build/components/iframe/index.cjs +3 -0
  23. package/build/components/iframe/index.cjs.map +2 -2
  24. package/build/components/inner-blocks/use-inner-block-template-sync.cjs +3 -1
  25. package/build/components/inner-blocks/use-inner-block-template-sync.cjs.map +2 -2
  26. package/build/components/inserter/hooks/use-patterns-state.cjs +1 -1
  27. package/build/components/inserter/hooks/use-patterns-state.cjs.map +2 -2
  28. package/build/components/inserter/index.cjs +179 -220
  29. package/build/components/inserter/index.cjs.map +3 -3
  30. package/build/components/inserter/media-tab/utils.cjs +1 -1
  31. package/build/components/inserter/media-tab/utils.cjs.map +2 -2
  32. package/build/components/inserter/search-results.cjs +1 -1
  33. package/build/components/inserter/search-results.cjs.map +2 -2
  34. package/build/components/list-view/block-select-button.cjs +10 -12
  35. package/build/components/list-view/block-select-button.cjs.map +2 -2
  36. package/build/components/list-view/block.cjs +2 -1
  37. package/build/components/list-view/block.cjs.map +2 -2
  38. package/build/components/provider/use-block-sync.cjs +11 -2
  39. package/build/components/provider/use-block-sync.cjs.map +2 -2
  40. package/build/components/rich-text/event-listeners/before-input-rules.cjs +4 -4
  41. package/build/components/rich-text/event-listeners/before-input-rules.cjs.map +3 -3
  42. package/build/components/rich-text/event-listeners/delete.cjs +4 -4
  43. package/build/components/rich-text/event-listeners/delete.cjs.map +3 -3
  44. package/build/components/rich-text/event-listeners/enter.cjs +7 -2
  45. package/build/components/rich-text/event-listeners/enter.cjs.map +2 -2
  46. package/build/components/rich-text/event-listeners/input-events.cjs +4 -4
  47. package/build/components/rich-text/event-listeners/input-events.cjs.map +3 -3
  48. package/build/components/rich-text/event-listeners/input-rules.cjs +17 -4
  49. package/build/components/rich-text/event-listeners/input-rules.cjs.map +3 -3
  50. package/build/components/rich-text/event-listeners/insert-replacement-text.cjs +4 -4
  51. package/build/components/rich-text/event-listeners/insert-replacement-text.cjs.map +3 -3
  52. package/build/components/rich-text/event-listeners/remove-browser-shortcuts.cjs +4 -4
  53. package/build/components/rich-text/event-listeners/remove-browser-shortcuts.cjs.map +3 -3
  54. package/build/components/rich-text/event-listeners/shortcuts.cjs +4 -4
  55. package/build/components/rich-text/event-listeners/shortcuts.cjs.map +3 -3
  56. package/build/components/rich-text/event-listeners/undo-automatic-change.cjs +4 -4
  57. package/build/components/rich-text/event-listeners/undo-automatic-change.cjs.map +3 -3
  58. package/build/components/rich-text/index.cjs +1 -23
  59. package/build/components/rich-text/index.cjs.map +2 -2
  60. package/build/components/use-block-commands/index.cjs +5 -5
  61. package/build/components/use-block-commands/index.cjs.map +2 -2
  62. package/build/hooks/anchor.cjs +11 -15
  63. package/build/hooks/anchor.cjs.map +2 -2
  64. package/build/hooks/border.cjs +0 -3
  65. package/build/hooks/border.cjs.map +2 -2
  66. package/build/hooks/color.cjs +1 -4
  67. package/build/hooks/color.cjs.map +2 -2
  68. package/build/hooks/dimensions.cjs +0 -3
  69. package/build/hooks/dimensions.cjs.map +2 -2
  70. package/build/hooks/fit-text.cjs +11 -0
  71. package/build/hooks/fit-text.cjs.map +2 -2
  72. package/build/hooks/position.cjs +19 -22
  73. package/build/hooks/position.cjs.map +2 -2
  74. package/build/hooks/supports.cjs +0 -7
  75. package/build/hooks/supports.cjs.map +2 -2
  76. package/build/store/actions.cjs +7 -3
  77. package/build/store/actions.cjs.map +2 -2
  78. package/build/store/private-actions.cjs +1 -2
  79. package/build/store/private-actions.cjs.map +2 -2
  80. package/build/store/private-selectors.cjs +29 -0
  81. package/build/store/private-selectors.cjs.map +2 -2
  82. package/build/store/reducer.cjs +14 -6
  83. package/build/store/reducer.cjs.map +2 -2
  84. package/build/store/selectors.cjs +60 -41
  85. package/build/store/selectors.cjs.map +2 -2
  86. package/build-module/components/block-compare/index.mjs +1 -1
  87. package/build-module/components/block-compare/index.mjs.map +2 -2
  88. package/build-module/components/block-list/use-block-props/index.mjs +1 -1
  89. package/build-module/components/block-list/use-block-props/index.mjs.map +2 -2
  90. package/build-module/components/block-patterns-list/index.mjs +1 -1
  91. package/build-module/components/block-patterns-list/index.mjs.map +2 -2
  92. package/build-module/components/block-switcher/block-transformations-menu.mjs +16 -15
  93. package/build-module/components/block-switcher/block-transformations-menu.mjs.map +2 -2
  94. package/build-module/components/block-switcher/index.mjs +4 -4
  95. package/build-module/components/block-switcher/index.mjs.map +2 -2
  96. package/build-module/components/child-layout-control/index.mjs +10 -5
  97. package/build-module/components/child-layout-control/index.mjs.map +2 -2
  98. package/build-module/components/global-styles/advanced-panel.mjs +23 -15
  99. package/build-module/components/global-styles/advanced-panel.mjs.map +2 -2
  100. package/build-module/components/global-styles/background-panel.mjs +3 -3
  101. package/build-module/components/global-styles/background-panel.mjs.map +2 -2
  102. package/build-module/components/global-styles/border-panel.mjs +2 -0
  103. package/build-module/components/global-styles/border-panel.mjs.map +2 -2
  104. package/build-module/components/global-styles/dimensions-panel.mjs +9 -6
  105. package/build-module/components/global-styles/dimensions-panel.mjs.map +2 -2
  106. package/build-module/components/iframe/index.mjs +3 -0
  107. package/build-module/components/iframe/index.mjs.map +2 -2
  108. package/build-module/components/inner-blocks/use-inner-block-template-sync.mjs +3 -1
  109. package/build-module/components/inner-blocks/use-inner-block-template-sync.mjs.map +2 -2
  110. package/build-module/components/inserter/hooks/use-patterns-state.mjs +1 -1
  111. package/build-module/components/inserter/hooks/use-patterns-state.mjs.map +2 -2
  112. package/build-module/components/inserter/index.mjs +185 -222
  113. package/build-module/components/inserter/index.mjs.map +3 -3
  114. package/build-module/components/inserter/media-tab/utils.mjs +1 -1
  115. package/build-module/components/inserter/media-tab/utils.mjs.map +2 -2
  116. package/build-module/components/inserter/search-results.mjs +1 -1
  117. package/build-module/components/inserter/search-results.mjs.map +2 -2
  118. package/build-module/components/list-view/block-select-button.mjs +10 -12
  119. package/build-module/components/list-view/block-select-button.mjs.map +2 -2
  120. package/build-module/components/list-view/block.mjs +2 -1
  121. package/build-module/components/list-view/block.mjs.map +2 -2
  122. package/build-module/components/provider/use-block-sync.mjs +11 -2
  123. package/build-module/components/provider/use-block-sync.mjs.map +2 -2
  124. package/build-module/components/rich-text/event-listeners/before-input-rules.mjs +4 -4
  125. package/build-module/components/rich-text/event-listeners/before-input-rules.mjs.map +2 -2
  126. package/build-module/components/rich-text/event-listeners/delete.mjs +4 -4
  127. package/build-module/components/rich-text/event-listeners/delete.mjs.map +2 -2
  128. package/build-module/components/rich-text/event-listeners/enter.mjs +7 -2
  129. package/build-module/components/rich-text/event-listeners/enter.mjs.map +2 -2
  130. package/build-module/components/rich-text/event-listeners/input-events.mjs +4 -4
  131. package/build-module/components/rich-text/event-listeners/input-events.mjs.map +2 -2
  132. package/build-module/components/rich-text/event-listeners/input-rules.mjs +17 -4
  133. package/build-module/components/rich-text/event-listeners/input-rules.mjs.map +2 -2
  134. package/build-module/components/rich-text/event-listeners/insert-replacement-text.mjs +4 -4
  135. package/build-module/components/rich-text/event-listeners/insert-replacement-text.mjs.map +2 -2
  136. package/build-module/components/rich-text/event-listeners/remove-browser-shortcuts.mjs +4 -4
  137. package/build-module/components/rich-text/event-listeners/remove-browser-shortcuts.mjs.map +2 -2
  138. package/build-module/components/rich-text/event-listeners/shortcuts.mjs +4 -4
  139. package/build-module/components/rich-text/event-listeners/shortcuts.mjs.map +2 -2
  140. package/build-module/components/rich-text/event-listeners/undo-automatic-change.mjs +4 -4
  141. package/build-module/components/rich-text/event-listeners/undo-automatic-change.mjs.map +2 -2
  142. package/build-module/components/rich-text/index.mjs +1 -23
  143. package/build-module/components/rich-text/index.mjs.map +2 -2
  144. package/build-module/components/use-block-commands/index.mjs +5 -5
  145. package/build-module/components/use-block-commands/index.mjs.map +2 -2
  146. package/build-module/hooks/anchor.mjs +11 -15
  147. package/build-module/hooks/anchor.mjs.map +2 -2
  148. package/build-module/hooks/border.mjs +1 -4
  149. package/build-module/hooks/border.mjs.map +2 -2
  150. package/build-module/hooks/color.mjs +2 -5
  151. package/build-module/hooks/color.mjs.map +2 -2
  152. package/build-module/hooks/dimensions.mjs +1 -4
  153. package/build-module/hooks/dimensions.mjs.map +2 -2
  154. package/build-module/hooks/fit-text.mjs +11 -0
  155. package/build-module/hooks/fit-text.mjs.map +2 -2
  156. package/build-module/hooks/position.mjs +20 -23
  157. package/build-module/hooks/position.mjs.map +2 -2
  158. package/build-module/hooks/supports.mjs +0 -7
  159. package/build-module/hooks/supports.mjs.map +2 -2
  160. package/build-module/store/actions.mjs +7 -3
  161. package/build-module/store/actions.mjs.map +2 -2
  162. package/build-module/store/private-actions.mjs +1 -2
  163. package/build-module/store/private-actions.mjs.map +2 -2
  164. package/build-module/store/private-selectors.mjs +26 -0
  165. package/build-module/store/private-selectors.mjs.map +2 -2
  166. package/build-module/store/reducer.mjs +14 -6
  167. package/build-module/store/reducer.mjs.map +2 -2
  168. package/build-module/store/selectors.mjs +62 -42
  169. package/build-module/store/selectors.mjs.map +2 -2
  170. package/build-style/content-rtl.css +12 -0
  171. package/build-style/content.css +12 -0
  172. package/build-style/style-rtl.css +26 -8
  173. package/build-style/style.css +26 -8
  174. package/package.json +51 -48
  175. package/src/components/block-breadcrumb/README.md +2 -2
  176. package/src/components/block-compare/README.md +6 -6
  177. package/src/components/block-compare/index.js +1 -3
  178. package/src/components/block-list/use-block-props/index.js +1 -1
  179. package/src/components/block-patterns-list/index.js +1 -1
  180. package/src/components/block-preview/README.md +1 -1
  181. package/src/components/block-switcher/block-transformations-menu.js +16 -18
  182. package/src/components/block-switcher/index.js +4 -4
  183. package/src/components/block-types-list/README.md +0 -19
  184. package/src/components/child-layout-control/index.js +15 -8
  185. package/src/components/child-layout-control/test/index.js +126 -0
  186. package/src/components/colors/test/with-colors.js +1 -1
  187. package/src/components/global-styles/advanced-panel.js +5 -1
  188. package/src/components/global-styles/background-panel.js +3 -3
  189. package/src/components/global-styles/border-panel.js +2 -0
  190. package/src/components/global-styles/dimensions-panel.js +23 -16
  191. package/src/components/iframe/index.js +3 -0
  192. package/src/components/inner-blocks/use-inner-block-template-sync.js +3 -1
  193. package/src/components/inserter/hooks/use-patterns-state.js +1 -1
  194. package/src/components/inserter/index.js +257 -288
  195. package/src/components/inserter/media-tab/utils.js +1 -1
  196. package/src/components/inserter/search-results.js +1 -3
  197. package/src/components/justify-content-control/README.md +1 -1
  198. package/src/components/list-view/block-select-button.js +9 -13
  199. package/src/components/list-view/block.js +1 -0
  200. package/src/components/media-placeholder/README.md +1 -29
  201. package/src/components/media-upload/README.md +0 -19
  202. package/src/components/provider/test/use-block-sync.js +40 -0
  203. package/src/components/provider/use-block-sync.js +12 -2
  204. package/src/components/rich-text/event-listeners/before-input-rules.js +5 -4
  205. package/src/components/rich-text/event-listeners/delete.js +9 -4
  206. package/src/components/rich-text/event-listeners/enter.js +9 -2
  207. package/src/components/rich-text/event-listeners/input-events.js +13 -4
  208. package/src/components/rich-text/event-listeners/input-rules.js +20 -4
  209. package/src/components/rich-text/event-listeners/insert-replacement-text.js +9 -4
  210. package/src/components/rich-text/event-listeners/remove-browser-shortcuts.js +9 -4
  211. package/src/components/rich-text/event-listeners/shortcuts.js +13 -4
  212. package/src/components/rich-text/event-listeners/undo-automatic-change.js +5 -4
  213. package/src/components/rich-text/index.js +1 -33
  214. package/src/components/unit-control/README.md +1 -1
  215. package/src/components/url-popover/README.md +1 -1
  216. package/src/components/use-block-commands/index.js +5 -5
  217. package/src/hooks/anchor.js +9 -17
  218. package/src/hooks/border.js +1 -5
  219. package/src/hooks/color.js +1 -6
  220. package/src/hooks/dimensions.js +1 -5
  221. package/src/hooks/fit-text.js +16 -0
  222. package/src/hooks/position.js +23 -27
  223. package/src/hooks/supports.js +0 -9
  224. package/src/store/actions.js +13 -3
  225. package/src/store/private-actions.js +1 -4
  226. package/src/store/private-selectors.js +59 -0
  227. package/src/store/reducer.js +19 -7
  228. package/src/store/selectors.js +91 -53
  229. package/src/store/test/actions.js +21 -0
  230. package/src/store/test/private-selectors.js +53 -0
  231. package/src/store/test/reducer.js +46 -0
  232. package/src/store/test/selectors.js +77 -0
  233. package/build/components/media-upload-progress/constants.cjs +0 -46
  234. package/build/components/media-upload-progress/constants.cjs.map +0 -7
  235. package/build/components/rich-text/native/format-edit.cjs +0 -60
  236. package/build/components/rich-text/native/format-edit.cjs.map +0 -7
  237. package/build/components/rich-text/native/index.cjs +0 -28
  238. package/build/components/rich-text/native/index.cjs.map +0 -7
  239. package/build/components/rich-text/native/use-format-types.cjs +0 -139
  240. package/build/components/rich-text/native/use-format-types.cjs.map +0 -7
  241. package/build-module/components/media-upload-progress/constants.mjs +0 -16
  242. package/build-module/components/media-upload-progress/constants.mjs.map +0 -7
  243. package/build-module/components/rich-text/native/format-edit.mjs +0 -39
  244. package/build-module/components/rich-text/native/format-edit.mjs.map +0 -7
  245. package/build-module/components/rich-text/native/index.mjs +0 -7
  246. package/build-module/components/rich-text/native/index.mjs.map +0 -7
  247. package/build-module/components/rich-text/native/use-format-types.mjs +0 -114
  248. package/build-module/components/rich-text/native/use-format-types.mjs.map +0 -7
  249. package/src/components/audio-player/audio-url-parser.native.js +0 -20
  250. package/src/components/audio-player/index.native.js +0 -225
  251. package/src/components/audio-player/styles.native.scss +0 -114
  252. package/src/components/audio-player/test/audio-url-parser.native.js +0 -53
  253. package/src/components/block-alignment-control/test/index.native.js +0 -37
  254. package/src/components/block-alignment-control/ui.native.js +0 -86
  255. package/src/components/block-caption/README.md +0 -104
  256. package/src/components/block-caption/index.native.js +0 -89
  257. package/src/components/block-caption/styles.native.scss +0 -7
  258. package/src/components/block-controls/slot.native.js +0 -33
  259. package/src/components/block-draggable/draggable-chip.native.js +0 -49
  260. package/src/components/block-draggable/dropping-insertion-point.native.js +0 -181
  261. package/src/components/block-draggable/dropping-insertion-point.native.scss +0 -8
  262. package/src/components/block-draggable/index.native.js +0 -467
  263. package/src/components/block-draggable/style.native.scss +0 -19
  264. package/src/components/block-draggable/test/__snapshots__/index.native.js.snap +0 -73
  265. package/src/components/block-draggable/test/helpers.native.js +0 -182
  266. package/src/components/block-draggable/test/index.native.js +0 -419
  267. package/src/components/block-draggable/use-scroll-when-dragging.native.js +0 -135
  268. package/src/components/block-edit/edit.native.js +0 -49
  269. package/src/components/block-edit/test/edit.native.js +0 -65
  270. package/src/components/block-heading-level-dropdown/index.native.js +0 -68
  271. package/src/components/block-icon/index.native.js +0 -47
  272. package/src/components/block-icon/style.native.scss +0 -7
  273. package/src/components/block-list/block-crash-boundary.native.js +0 -43
  274. package/src/components/block-list/block-crash-warning.native.js +0 -21
  275. package/src/components/block-list/block-invalid-warning.native.js +0 -70
  276. package/src/components/block-list/block-list-context.native.js +0 -172
  277. package/src/components/block-list/block-list-item-cell.native.js +0 -62
  278. package/src/components/block-list/block-list-item.native.js +0 -209
  279. package/src/components/block-list/block-list-item.native.scss +0 -16
  280. package/src/components/block-list/block-outline.native.js +0 -77
  281. package/src/components/block-list/block-selection-button.native.js +0 -100
  282. package/src/components/block-list/block-selection-button.native.scss +0 -34
  283. package/src/components/block-list/block.native.js +0 -716
  284. package/src/components/block-list/block.native.scss +0 -62
  285. package/src/components/block-list/grid-item.native.js +0 -58
  286. package/src/components/block-list/index.native.js +0 -437
  287. package/src/components/block-list/insertion-point.native.js +0 -36
  288. package/src/components/block-list/style.native.scss +0 -117
  289. package/src/components/block-list/test/block-invalid-warning.native.js +0 -62
  290. package/src/components/block-list/test/block-list-context.native.js +0 -243
  291. package/src/components/block-list/test/block-outline.native.js +0 -255
  292. package/src/components/block-list/test/fixtures/block-list-context.native.js +0 -79
  293. package/src/components/block-list/test/index.native.js +0 -205
  294. package/src/components/block-list/use-block-props/index.native.js +0 -10
  295. package/src/components/block-list/use-scroll-upon-insertion.native.js +0 -52
  296. package/src/components/block-list-appender/index.native.js +0 -70
  297. package/src/components/block-list-appender/style.native.scss +0 -8
  298. package/src/components/block-media-update-progress/README.md +0 -100
  299. package/src/components/block-media-update-progress/index.native.js +0 -299
  300. package/src/components/block-media-update-progress/styles.native.scss +0 -9
  301. package/src/components/block-media-update-progress/test/index.native.js +0 -543
  302. package/src/components/block-mover/index.native.js +0 -193
  303. package/src/components/block-mover/mover-description.native.js +0 -155
  304. package/src/components/block-mover/test/__snapshots__/index.native.js.snap +0 -218
  305. package/src/components/block-mover/test/index.native.js +0 -186
  306. package/src/components/block-settings/button.native.js +0 -41
  307. package/src/components/block-settings/container.native.js +0 -91
  308. package/src/components/block-settings/container.native.scss +0 -4
  309. package/src/components/block-settings/index.native.js +0 -5
  310. package/src/components/block-styles/index.native.js +0 -94
  311. package/src/components/block-styles/preview.native.js +0 -109
  312. package/src/components/block-styles/style.native.scss +0 -64
  313. package/src/components/block-switcher/block-transformations-menu.native.js +0 -91
  314. package/src/components/block-toolbar/block-toolbar-menu.native.js +0 -477
  315. package/src/components/block-toolbar/index.native.js +0 -126
  316. package/src/components/block-toolbar/test/__snapshots__/block-toolbar-menu.native.js.snap +0 -125
  317. package/src/components/block-toolbar/test/block-toolbar-menu.native.js +0 -405
  318. package/src/components/block-toolbar/test/index.native.js +0 -36
  319. package/src/components/block-types-list/index.native.js +0 -175
  320. package/src/components/block-types-list/style.native.scss +0 -25
  321. package/src/components/block-variation-picker/index.native.js +0 -107
  322. package/src/components/block-variation-picker/style.native.scss +0 -32
  323. package/src/components/button-block-appender/index.native.js +0 -92
  324. package/src/components/button-block-appender/styles.native.scss +0 -43
  325. package/src/components/caption/README.md +0 -44
  326. package/src/components/caption/index.native.js +0 -61
  327. package/src/components/colors-gradients/panel-color-gradient-settings.native.js +0 -59
  328. package/src/components/contrast-checker/index.native.js +0 -113
  329. package/src/components/contrast-checker/style.native.scss +0 -26
  330. package/src/components/convert-to-group-buttons/index.native.js +0 -79
  331. package/src/components/default-block-appender/index.native.js +0 -113
  332. package/src/components/default-block-appender/style.native.scss +0 -18
  333. package/src/components/floating-toolbar/floatingToolbar.android.scss +0 -4
  334. package/src/components/floating-toolbar/floatingToolbar.ios.scss +0 -3
  335. package/src/components/floating-toolbar/index.native.js +0 -141
  336. package/src/components/floating-toolbar/styles.native.scss +0 -43
  337. package/src/components/font-sizes/index.native.js +0 -7
  338. package/src/components/global-styles/color-panel.native.js +0 -207
  339. package/src/components/global-styles/test/use-global-styles-context.native.js +0 -435
  340. package/src/components/global-styles/use-global-styles-context.native.js +0 -592
  341. package/src/components/gradients/index.native.js +0 -2
  342. package/src/components/image-link-destinations/index.native.js +0 -152
  343. package/src/components/image-link-destinations/style.native.scss +0 -16
  344. package/src/components/index.native.js +0 -108
  345. package/src/components/inner-blocks/constants.native.js +0 -5
  346. package/src/components/inner-blocks/index.native.js +0 -221
  347. package/src/components/inner-blocks/warning-max-depth-exceeded.native.js +0 -124
  348. package/src/components/inserter/block-types-tab.native.js +0 -76
  349. package/src/components/inserter/hooks/use-block-type-impressions.native.js +0 -47
  350. package/src/components/inserter/hooks/use-clipboard-block.native.js +0 -40
  351. package/src/components/inserter/index.native.js +0 -424
  352. package/src/components/inserter/menu.native.js +0 -237
  353. package/src/components/inserter/no-results.native.js +0 -49
  354. package/src/components/inserter/reusable-blocks-tab.native.js +0 -45
  355. package/src/components/inserter/search-results.native.js +0 -67
  356. package/src/components/inserter/style.native.scss +0 -83
  357. package/src/components/inserter/tabs.native.js +0 -152
  358. package/src/components/inserter/test/__snapshots__/index.native.js.snap +0 -117
  359. package/src/components/inserter/test/fixtures/index.native.js +0 -12
  360. package/src/components/inserter/test/index.native.js +0 -273
  361. package/src/components/inserter/test/reusable-blocks-tab.native.js +0 -62
  362. package/src/components/inserter/test/utils.native.js +0 -37
  363. package/src/components/inserter/utils.native.js +0 -46
  364. package/src/components/inserter-button/index.native.js +0 -108
  365. package/src/components/inserter-button/style.native.scss +0 -72
  366. package/src/components/inspector-controls/fill.native.js +0 -62
  367. package/src/components/inspector-controls/slot.native.js +0 -35
  368. package/src/components/inspector-controls-tabs/advanced-controls-panel.native.js +0 -31
  369. package/src/components/line-height-control/index.native.js +0 -28
  370. package/src/components/media-placeholder/index.native.js +0 -258
  371. package/src/components/media-placeholder/styles.native.scss +0 -108
  372. package/src/components/media-replace-flow/index.native.js +0 -12
  373. package/src/components/media-upload/constants.native.js +0 -14
  374. package/src/components/media-upload/index.native.js +0 -356
  375. package/src/components/media-upload/style.native.scss +0 -4
  376. package/src/components/media-upload/test/index.native.js +0 -172
  377. package/src/components/media-upload-progress/README.md +0 -100
  378. package/src/components/media-upload-progress/constants.js +0 -6
  379. package/src/components/media-upload-progress/index.native.js +0 -233
  380. package/src/components/media-upload-progress/styles.native.scss +0 -15
  381. package/src/components/media-upload-progress/test/index.native.js +0 -220
  382. package/src/components/plain-text/index.native.js +0 -164
  383. package/src/components/plain-text/style.native.scss +0 -10
  384. package/src/components/provider/index.native.js +0 -32
  385. package/src/components/rich-text/embed-handler-picker.native.js +0 -65
  386. package/src/components/rich-text/file-paste-handler.native.js +0 -3
  387. package/src/components/rich-text/format-toolbar/index.native.js +0 -21
  388. package/src/components/rich-text/format-toolbar-container.native.js +0 -16
  389. package/src/components/rich-text/index.native.js +0 -701
  390. package/src/components/rich-text/input-event.native.js +0 -10
  391. package/src/components/rich-text/native/format-edit.js +0 -44
  392. package/src/components/rich-text/native/get-format-colors.native.js +0 -47
  393. package/src/components/rich-text/native/index.js +0 -1
  394. package/src/components/rich-text/native/index.native.js +0 -1389
  395. package/src/components/rich-text/native/style.native.scss +0 -28
  396. package/src/components/rich-text/native/test/__snapshots__/index.native.js.snap +0 -79
  397. package/src/components/rich-text/native/test/index.native.js +0 -345
  398. package/src/components/rich-text/native/test/performance/rich-text.native.js +0 -44
  399. package/src/components/rich-text/native/toolbar-button-with-options.native.js +0 -61
  400. package/src/components/rich-text/native/use-format-types.js +0 -146
  401. package/src/components/rich-text/remove-browser-shortcuts.native.js +0 -1
  402. package/src/components/rich-text/shortcut.native.js +0 -10
  403. package/src/components/ungroup-button/README.md +0 -23
  404. package/src/components/ungroup-button/index.native.js +0 -77
  405. package/src/components/unsupported-block-details/index.native.js +0 -187
  406. package/src/components/unsupported-block-details/style.native.scss +0 -56
  407. package/src/components/url-input/index.native.js +0 -33
  408. package/src/components/use-block-drop-zone/index.native.js +0 -207
  409. package/src/components/use-on-block-drop/index.native.js +0 -115
  410. package/src/components/use-unsupported-block-editor/index.native.js +0 -59
  411. package/src/components/video-player/gridicon-play.native.js +0 -13
  412. package/src/components/video-player/index.native.js +0 -133
  413. package/src/components/video-player/styles.native.scss +0 -29
  414. package/src/components/warning/index.native.js +0 -64
  415. package/src/components/warning/style.native.scss +0 -47
  416. package/src/hooks/align.native.js +0 -49
  417. package/src/hooks/custom-class-name.native.js +0 -70
  418. package/src/hooks/index.native.js +0 -36
  419. package/src/hooks/layout.native.js +0 -23
  420. package/src/hooks/test/__snapshots__/align.native.js.snap +0 -73
  421. package/src/hooks/test/__snapshots__/anchor.native.js.snap +0 -7
  422. package/src/hooks/test/align.native.js +0 -134
  423. package/src/hooks/test/anchor.native.js +0 -32
  424. package/src/hooks/test/use-editor-wrapper-styles.native.js +0 -282
  425. package/src/hooks/typography.native.js +0 -60
  426. package/src/hooks/use-editor-wrapper-styles.native.js +0 -250
  427. package/src/hooks/use-editor-wrapper-styles.native.scss +0 -12
  428. package/src/index.native.js +0 -6
  429. package/src/private-apis.native.js +0 -21
  430. package/src/store/defaults.native.js +0 -23
@@ -1,356 +0,0 @@
1
- /**
2
- * External dependencies
3
- */
4
- import { Platform } from 'react-native';
5
-
6
- /**
7
- * WordPress dependencies
8
- */
9
- import { Component, React } from '@wordpress/element';
10
- import { __ } from '@wordpress/i18n';
11
- import {
12
- BottomSheet,
13
- PanelBody,
14
- Picker,
15
- TextControl,
16
- } from '@wordpress/components';
17
- import {
18
- getOtherMediaOptions,
19
- requestMediaPicker,
20
- mediaSources,
21
- } from '@wordpress/react-native-bridge';
22
- import {
23
- capturePhoto,
24
- captureVideo,
25
- image,
26
- wordpress,
27
- mobile,
28
- globe,
29
- } from '@wordpress/icons';
30
- import { store as blockEditorStore } from '@wordpress/block-editor';
31
- import { compose } from '@wordpress/compose';
32
- import { withSelect } from '@wordpress/data';
33
-
34
- /**
35
- * Internal dependencies
36
- */
37
- import {
38
- MEDIA_TYPE_IMAGE,
39
- MEDIA_TYPE_VIDEO,
40
- MEDIA_TYPE_AUDIO,
41
- MEDIA_TYPE_ANY,
42
- OPTION_TAKE_VIDEO,
43
- OPTION_TAKE_PHOTO,
44
- OPTION_INSERT_FROM_URL,
45
- OPTION_WORDPRESS_MEDIA_LIBRARY,
46
- } from './constants';
47
- import styles from './style.scss';
48
-
49
- const URL_MEDIA_SOURCE = 'URL';
50
-
51
- const PICKER_OPENING_DELAY = 200;
52
-
53
- export class MediaUpload extends Component {
54
- pickerTimeout;
55
-
56
- constructor( props ) {
57
- super( props );
58
- this.onPickerPresent = this.onPickerPresent.bind( this );
59
- this.onPickerSelect = this.onPickerSelect.bind( this );
60
- this.getAllSources = this.getAllSources.bind( this );
61
- this.state = {
62
- url: '',
63
- showURLInput: false,
64
- otherMediaOptions: [],
65
- };
66
- }
67
-
68
- componentDidMount() {
69
- const { allowedTypes = [], autoOpen } = this.props;
70
- getOtherMediaOptions( allowedTypes, ( otherMediaOptions ) => {
71
- const otherMediaOptionsWithIcons = otherMediaOptions.map(
72
- ( option ) => {
73
- return {
74
- ...option,
75
- requiresModal: true,
76
- types: allowedTypes,
77
- id: option.value,
78
- };
79
- }
80
- );
81
-
82
- this.setState( { otherMediaOptions: otherMediaOptionsWithIcons } );
83
- } );
84
-
85
- if ( autoOpen ) {
86
- this.onPickerPresent();
87
- }
88
- }
89
-
90
- componentWillUnmount() {
91
- clearTimeout( this.pickerTimeout );
92
- }
93
-
94
- getAllSources() {
95
- const { onSelectURL } = this.props;
96
-
97
- const cameraImageSource = {
98
- id: mediaSources.deviceCamera, // ID is the value sent to native.
99
- value: mediaSources.deviceCamera + '-IMAGE', // This is needed to diferenciate image-camera from video-camera sources.
100
- label: OPTION_TAKE_PHOTO,
101
- requiresModal: true,
102
- types: [ MEDIA_TYPE_IMAGE ],
103
- icon: capturePhoto,
104
- };
105
-
106
- const cameraVideoSource = {
107
- id: mediaSources.deviceCamera,
108
- value: mediaSources.deviceCamera,
109
- label: OPTION_TAKE_VIDEO,
110
- requiresModal: true,
111
- types: [ MEDIA_TYPE_VIDEO ],
112
- icon: captureVideo,
113
- };
114
-
115
- const deviceLibrarySource = {
116
- id: mediaSources.deviceLibrary,
117
- value: mediaSources.deviceLibrary,
118
- label: __( 'Choose from device' ),
119
- requiresModal: true,
120
- types: [ MEDIA_TYPE_IMAGE, MEDIA_TYPE_VIDEO ],
121
- icon: image,
122
- };
123
-
124
- const siteLibrarySource = {
125
- id: mediaSources.siteMediaLibrary,
126
- value: mediaSources.siteMediaLibrary,
127
- label: OPTION_WORDPRESS_MEDIA_LIBRARY,
128
- requiresModal: true,
129
- types: [
130
- MEDIA_TYPE_IMAGE,
131
- MEDIA_TYPE_VIDEO,
132
- MEDIA_TYPE_AUDIO,
133
- MEDIA_TYPE_ANY,
134
- ],
135
- icon: wordpress,
136
- mediaLibrary: true,
137
- };
138
-
139
- const urlSource = {
140
- id: URL_MEDIA_SOURCE,
141
- value: URL_MEDIA_SOURCE,
142
- label: OPTION_INSERT_FROM_URL,
143
- types: [ MEDIA_TYPE_AUDIO, MEDIA_TYPE_IMAGE, MEDIA_TYPE_VIDEO ],
144
- icon: globe,
145
- };
146
-
147
- // Only include `urlSource` option if `onSelectURL` prop is present, in order to match the web behavior.
148
- const internalSources = [
149
- deviceLibrarySource,
150
- cameraImageSource,
151
- cameraVideoSource,
152
- siteLibrarySource,
153
- ...( onSelectURL ? [ urlSource ] : [] ),
154
- ];
155
-
156
- return internalSources.concat( this.state.otherMediaOptions );
157
- }
158
-
159
- getMediaOptionsItems() {
160
- const {
161
- allowedTypes = [],
162
- __experimentalOnlyMediaLibrary,
163
- isAudioBlockMediaUploadEnabled,
164
- } = this.props;
165
-
166
- return this.getAllSources()
167
- .filter( ( source ) => {
168
- if ( __experimentalOnlyMediaLibrary ) {
169
- return source.mediaLibrary;
170
- } else if (
171
- allowedTypes.every(
172
- ( allowedType ) =>
173
- allowedType === MEDIA_TYPE_AUDIO &&
174
- source.types.includes( allowedType )
175
- ) &&
176
- source.id !== URL_MEDIA_SOURCE
177
- ) {
178
- return isAudioBlockMediaUploadEnabled === true;
179
- }
180
-
181
- return allowedTypes.some( ( allowedType ) =>
182
- source.types.includes( allowedType )
183
- );
184
- } )
185
- .map( ( source ) => {
186
- return {
187
- ...source,
188
- icon: source.icon || this.getChooseFromDeviceIcon(),
189
- };
190
- } );
191
- }
192
-
193
- getChooseFromDeviceIcon() {
194
- return mobile;
195
- }
196
-
197
- onPickerPresent() {
198
- const { autoOpen } = this.props;
199
- const isIOS = Platform.OS === 'ios';
200
-
201
- if ( this.picker ) {
202
- // the delay below is required because on iOS this action sheet gets dismissed by the close event of the Inserter
203
- // so this delay allows the Inserter to be closed fully before presenting action sheet.
204
- if ( autoOpen && isIOS ) {
205
- this.pickerTimeout = setTimeout(
206
- () => this.picker.presentPicker(),
207
- PICKER_OPENING_DELAY
208
- );
209
- } else {
210
- this.picker.presentPicker();
211
- }
212
- }
213
- }
214
-
215
- onPickerSelect( value ) {
216
- const { allowedTypes = [], onSelect, multiple = false } = this.props;
217
-
218
- if ( value === URL_MEDIA_SOURCE ) {
219
- this.setState( { showURLInput: true } );
220
- return;
221
- }
222
-
223
- const mediaSource = this.getAllSources()
224
- .filter( ( source ) => source.value === value )
225
- .shift();
226
- const types = allowedTypes.filter( ( type ) =>
227
- mediaSource.types.includes( type )
228
- );
229
-
230
- requestMediaPicker( mediaSource.id, types, multiple, ( media ) => {
231
- if ( ( multiple && media ) || ( media && media.id ) ) {
232
- onSelect( media );
233
- }
234
- } );
235
- }
236
-
237
- render() {
238
- const { allowedTypes = [], isReplacingMedia, multiple } = this.props;
239
- const isOneType = allowedTypes.length === 1;
240
- const isImage = isOneType && allowedTypes.includes( MEDIA_TYPE_IMAGE );
241
- const isVideo = isOneType && allowedTypes.includes( MEDIA_TYPE_VIDEO );
242
- const isAudio = isOneType && allowedTypes.includes( MEDIA_TYPE_AUDIO );
243
- const isAnyType = isOneType && allowedTypes.includes( MEDIA_TYPE_ANY );
244
-
245
- const isImageOrVideo =
246
- allowedTypes.length === 2 &&
247
- allowedTypes.includes( MEDIA_TYPE_IMAGE ) &&
248
- allowedTypes.includes( MEDIA_TYPE_VIDEO );
249
-
250
- let pickerTitle;
251
- if ( isImage ) {
252
- if ( isReplacingMedia ) {
253
- pickerTitle = __( 'Replace image' );
254
- } else {
255
- pickerTitle = multiple
256
- ? __( 'Choose images' )
257
- : __( 'Choose image' );
258
- }
259
- } else if ( isVideo ) {
260
- if ( isReplacingMedia ) {
261
- pickerTitle = __( 'Replace video' );
262
- } else {
263
- pickerTitle = __( 'Choose video' );
264
- }
265
- } else if ( isImageOrVideo ) {
266
- if ( isReplacingMedia ) {
267
- pickerTitle = __( 'Replace image or video' );
268
- } else {
269
- pickerTitle = __( 'Choose image or video' );
270
- }
271
- } else if ( isAudio ) {
272
- if ( isReplacingMedia ) {
273
- pickerTitle = __( 'Replace audio' );
274
- } else {
275
- pickerTitle = __( 'Choose audio' );
276
- }
277
- } else if ( isAnyType ) {
278
- pickerTitle = __( 'Choose file' );
279
- if ( isReplacingMedia ) {
280
- pickerTitle = __( 'Replace file' );
281
- } else {
282
- pickerTitle = __( 'Choose file' );
283
- }
284
- }
285
-
286
- const getMediaOptions = () => (
287
- <Picker
288
- title={ pickerTitle }
289
- hideCancelButton
290
- ref={ ( instance ) => ( this.picker = instance ) }
291
- options={ this.getMediaOptionsItems() }
292
- onChange={ this.onPickerSelect }
293
- testID="media-options-picker"
294
- />
295
- );
296
-
297
- return (
298
- <>
299
- <URLInput
300
- isVisible={ this.state.showURLInput }
301
- onClose={ () => {
302
- if ( this.state.url !== '' ) {
303
- this.props.onSelectURL( this.state.url );
304
- }
305
- this.setState( { showURLInput: false, url: '' } );
306
- } }
307
- onChange={ ( url ) => {
308
- this.setState( { url } );
309
- } }
310
- value={ this.state.url }
311
- />
312
- { this.props.render( {
313
- open: this.onPickerPresent,
314
- getMediaOptions,
315
- } ) }
316
- </>
317
- );
318
- }
319
- }
320
-
321
- function URLInput( props ) {
322
- return (
323
- <BottomSheet
324
- hideHeader
325
- isVisible={ props.isVisible }
326
- onClose={ props.onClose }
327
- >
328
- <PanelBody style={ styles[ 'media-upload__link-input' ] }>
329
- <TextControl
330
- // TODO: Switch to `true` (40px size) if possible
331
- __next40pxDefaultSize={ false }
332
- // eslint-disable-next-line jsx-a11y/no-autofocus
333
- autoFocus
334
- autoCapitalize="none"
335
- autoCorrect={ false }
336
- autoComplete={ Platform.isIOS ? 'url' : 'off' }
337
- keyboardType="url"
338
- label={ OPTION_INSERT_FROM_URL }
339
- onChange={ props.onChange }
340
- placeholder={ __( 'Type a URL' ) }
341
- value={ props.value }
342
- />
343
- </PanelBody>
344
- </BottomSheet>
345
- );
346
- }
347
-
348
- export default compose( [
349
- withSelect( ( select ) => {
350
- const { capabilities } = select( blockEditorStore ).getSettings();
351
- return {
352
- isAudioBlockMediaUploadEnabled:
353
- capabilities?.isAudioBlockMediaUploadEnabled === true,
354
- };
355
- } ),
356
- ] )( MediaUpload );
@@ -1,4 +0,0 @@
1
- .media-upload__link-input {
2
- padding-left: 0;
3
- padding-right: 0;
4
- }
@@ -1,172 +0,0 @@
1
- /* eslint jest/expect-expect: ["warn", { "assertFunctionNames": ["expect", "expect*"] }] */
2
-
3
- /**
4
- * External dependencies
5
- */
6
- import { render, fireEvent } from 'test/helpers';
7
- import { Text, TouchableWithoutFeedback } from 'react-native';
8
-
9
- /**
10
- * WordPress dependencies
11
- */
12
- import { requestMediaPicker } from '@wordpress/react-native-bridge';
13
-
14
- /**
15
- * Internal dependencies
16
- */
17
- import { MediaUpload } from '../index';
18
- import {
19
- MEDIA_TYPE_IMAGE,
20
- MEDIA_TYPE_VIDEO,
21
- MEDIA_TYPE_AUDIO,
22
- OPTION_TAKE_VIDEO,
23
- OPTION_TAKE_PHOTO,
24
- OPTION_INSERT_FROM_URL,
25
- OPTION_WORDPRESS_MEDIA_LIBRARY,
26
- } from '../constants';
27
-
28
- const MEDIA_URL = 'http://host.media.type';
29
- const MEDIA_ID = 123;
30
-
31
- describe( 'MediaUpload component', () => {
32
- it( 'renders without crashing', () => {
33
- const wrapper = render(
34
- <MediaUpload allowedTypes={ [] } render={ () => null } />
35
- );
36
- expect( wrapper ).toBeTruthy();
37
- } );
38
-
39
- describe( 'Media capture options for different media block types', () => {
40
- const expectOptionForMediaType = async (
41
- mediaType,
42
- expectedOptions
43
- ) => {
44
- const wrapper = render(
45
- <MediaUpload
46
- allowedTypes={ [ mediaType ] }
47
- onSelectURL={ jest.fn() }
48
- render={ ( { open, getMediaOptions } ) => {
49
- return (
50
- <>
51
- <TouchableWithoutFeedback onPress={ open }>
52
- <Text>Open Picker</Text>
53
- </TouchableWithoutFeedback>
54
- { getMediaOptions() }
55
- </>
56
- );
57
- } }
58
- />
59
- );
60
- fireEvent.press( wrapper.getByText( 'Open Picker' ) );
61
-
62
- expectedOptions.forEach( ( item ) => {
63
- const option = wrapper.getByText( item );
64
- expect( option ).toBeVisible();
65
- } );
66
- };
67
-
68
- it( 'shows the correct media capture options for the Image block', () => {
69
- expectOptionForMediaType( MEDIA_TYPE_IMAGE, [
70
- OPTION_TAKE_PHOTO,
71
- OPTION_WORDPRESS_MEDIA_LIBRARY,
72
- OPTION_INSERT_FROM_URL,
73
- ] );
74
- } );
75
-
76
- it( 'shows the correct media capture options for the Video block', () => {
77
- expectOptionForMediaType( MEDIA_TYPE_VIDEO, [
78
- OPTION_TAKE_VIDEO,
79
- OPTION_WORDPRESS_MEDIA_LIBRARY,
80
- ] );
81
- } );
82
-
83
- it( 'shows the correct media capture options for the Audio block', () => {
84
- expectOptionForMediaType( MEDIA_TYPE_AUDIO, [
85
- OPTION_INSERT_FROM_URL,
86
- ] );
87
- } );
88
- } );
89
-
90
- const expectMediaPickerForOption = (
91
- option,
92
- allowMultiple,
93
- requestFunction
94
- ) => {
95
- requestFunction.mockImplementation(
96
- ( source, mediaTypes, multiple, callback ) => {
97
- expect( mediaTypes[ 0 ] ).toEqual( MEDIA_TYPE_VIDEO );
98
- if ( multiple ) {
99
- callback( [ { id: MEDIA_ID, url: MEDIA_URL } ] );
100
- } else {
101
- callback( { id: MEDIA_ID, url: MEDIA_URL } );
102
- }
103
- }
104
- );
105
-
106
- const onSelect = jest.fn();
107
-
108
- const wrapper = render(
109
- <MediaUpload
110
- allowedTypes={ [ MEDIA_TYPE_VIDEO ] }
111
- onSelect={ onSelect }
112
- multiple={ allowMultiple }
113
- render={ ( { open, getMediaOptions } ) => {
114
- return (
115
- <>
116
- <TouchableWithoutFeedback onPress={ open }>
117
- <Text>Open Picker</Text>
118
- </TouchableWithoutFeedback>
119
- { getMediaOptions() }
120
- </>
121
- );
122
- } }
123
- />
124
- );
125
- fireEvent.press( wrapper.getByText( 'Open Picker' ) );
126
- fireEvent.press( wrapper.getByText( option ) );
127
- const media = { id: MEDIA_ID, url: MEDIA_URL };
128
-
129
- expect( requestFunction ).toHaveBeenCalledTimes( 1 );
130
-
131
- expect( onSelect ).toHaveBeenCalledTimes( 1 );
132
- expect( onSelect ).toHaveBeenCalledWith(
133
- allowMultiple ? [ media ] : media
134
- );
135
- };
136
-
137
- it( 'can select media from device library', () => {
138
- expectMediaPickerForOption(
139
- 'Choose from device',
140
- false,
141
- requestMediaPicker
142
- );
143
- } );
144
-
145
- it( 'can select media from WP media library', () => {
146
- expectMediaPickerForOption(
147
- 'WordPress Media Library',
148
- false,
149
- requestMediaPicker
150
- );
151
- } );
152
-
153
- it( 'can select media by capturing', () => {
154
- expectMediaPickerForOption( 'Take a Video', false, requestMediaPicker );
155
- } );
156
-
157
- it( 'can select multiple media from device library', () => {
158
- expectMediaPickerForOption(
159
- 'Choose from device',
160
- true,
161
- requestMediaPicker
162
- );
163
- } );
164
-
165
- it( 'can select multiple media from WP media library', () => {
166
- expectMediaPickerForOption(
167
- 'WordPress Media Library',
168
- true,
169
- requestMediaPicker
170
- );
171
- } );
172
- } );
@@ -1,100 +0,0 @@
1
- # MediaUploadProgress
2
-
3
- `MediaUploadProgress` shows a progress bar while a media file associated with a block is being uploaded.
4
-
5
- ## Usage
6
-
7
- Usage example
8
-
9
- ```jsx
10
- import { ImageBackground, Text, View } from 'react-native';
11
- import { MediaUploadProgress } from '@wordpress/block-editor';
12
-
13
- function MediaProgress( { url, id } ) {
14
- return (
15
- <MediaUploadProgress
16
- mediaId={ id }
17
- renderContent={ ( { isUploadFailed, retryMessage } ) => {
18
- return (
19
- <ImageBackground
20
- resizeMethod="scale"
21
- source={ { uri: url } }
22
- >
23
- { isUploadFailed && (
24
- <View>
25
- <Text>{ retryMessage }</Text>
26
- </View>
27
- ) }
28
- </ImageBackground>
29
- );
30
- } }
31
- />
32
- );
33
- }
34
- ```
35
-
36
- ## Props
37
-
38
- ### mediaId
39
-
40
- A media ID that identifies the current upload.
41
-
42
- - Type: `Number`
43
- - Required: Yes
44
- - Platform: Mobile
45
-
46
- ### renderContent
47
-
48
- Content to be rendered along with the progress bar, usually the thumbnail of the media being uploaded.
49
-
50
- - Type: `React components`
51
- - Required: Yes
52
- - Platform: Mobile
53
-
54
- It passes an object containing the following properties:
55
-
56
- `{ isUploadInProgress, isUploadFailed, retryMessage }`
57
-
58
- ### onUpdateMediaProgress
59
-
60
- Callback called when the progress of the upload is updated.
61
-
62
- - Type: `Function`
63
- - Required: No
64
- - Platform: Mobile
65
-
66
- The argument of the callback is an object containing the following properties:
67
-
68
- `{ mediaId, mediaUrl, progress, state }`
69
-
70
- ### onFinishMediaUploadWithSuccess
71
-
72
- Callback called when the media file has been uploaded successfully.
73
-
74
- - Type: `Function`
75
- - Required: No
76
- - Platform: Mobile
77
-
78
- The argument of the callback is an object containing the following properties:
79
-
80
- `{ mediaId, mediaServerId, mediaUrl, progress, state }`
81
-
82
- ### onFinishMediaUploadWithFailure
83
-
84
- Callback called when the media file couldn't be uploaded.
85
-
86
- - Type: `Function`
87
- - Required: No
88
- - Platform: Mobile
89
-
90
- The argument of the callback is an object containing the following properties:
91
-
92
- `{ mediaId, progress, state }`
93
-
94
- ### onMediaUploadStateReset
95
-
96
- Callback called when the media upload is reset
97
-
98
- - Type: `Function`
99
- - Required: No
100
- - Platform: Mobile
@@ -1,6 +0,0 @@
1
- export const MEDIA_UPLOAD_STATE_IDLE = 0;
2
- export const MEDIA_UPLOAD_STATE_UPLOADING = 1;
3
- export const MEDIA_UPLOAD_STATE_SUCCEEDED = 2;
4
- export const MEDIA_UPLOAD_STATE_FAILED = 3;
5
- export const MEDIA_UPLOAD_STATE_RESET = 4;
6
- export const MEDIA_UPLOAD_STATE_PAUSED = 11;