@wordpress/editor 14.48.0 → 14.48.2-next.v.202606191442.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 (509) hide show
  1. package/CHANGELOG.md +25 -1
  2. package/build/bindings/pattern-overrides.cjs +1 -1
  3. package/build/bindings/pattern-overrides.cjs.map +2 -2
  4. package/build/components/block-removal-warnings/index.cjs +0 -3
  5. package/build/components/block-removal-warnings/index.cjs.map +2 -2
  6. package/build/components/collab-sidebar/note-byline.cjs +1 -1
  7. package/build/components/collab-sidebar/note-byline.cjs.map +2 -2
  8. package/build/components/collab-sidebar/note-indicator-toolbar.cjs +49 -43
  9. package/build/components/collab-sidebar/note-indicator-toolbar.cjs.map +3 -3
  10. package/build/components/collab-sidebar/note.cjs +49 -17
  11. package/build/components/collab-sidebar/note.cjs.map +3 -3
  12. package/build/components/collab-sidebar/notes.cjs.map +1 -1
  13. package/build/components/collab-sidebar/utils.cjs +1 -1
  14. package/build/components/collab-sidebar/utils.cjs.map +2 -2
  15. package/build/components/collaborators-overlay/avatar-iframe-styles.cjs.map +1 -1
  16. package/build/components/collaborators-overlay/collaborator-styles.cjs.map +1 -1
  17. package/build/components/collaborators-overlay/compute-selection.cjs.map +1 -1
  18. package/build/components/collaborators-overlay/overlay-iframe-styles.cjs +1 -1
  19. package/build/components/collaborators-overlay/overlay-iframe-styles.cjs.map +1 -1
  20. package/build/components/collaborators-overlay/use-block-highlighting.cjs +1 -8
  21. package/build/components/collaborators-overlay/use-block-highlighting.cjs.map +3 -3
  22. package/build/components/collaborators-overlay/use-render-cursors.cjs +1 -7
  23. package/build/components/collaborators-overlay/use-render-cursors.cjs.map +3 -3
  24. package/build/components/collaborators-presence/avatar/component.cjs.map +2 -2
  25. package/build/components/collaborators-presence/avatar/use-image-loading-status.cjs.map +1 -1
  26. package/build/components/document-bar/index.cjs +7 -5
  27. package/build/components/document-bar/index.cjs.map +2 -2
  28. package/build/components/global-keyboard-shortcuts/index.cjs +3 -2
  29. package/build/components/global-keyboard-shortcuts/index.cjs.map +2 -2
  30. package/build/components/global-styles-sidebar/welcome-guide.cjs +3 -3
  31. package/build/components/global-styles-sidebar/welcome-guide.cjs.map +1 -1
  32. package/build/components/local-autosave-monitor/index.cjs +14 -15
  33. package/build/components/local-autosave-monitor/index.cjs.map +2 -2
  34. package/build/components/more-menu/view-more-menu-group.cjs +1 -2
  35. package/build/components/more-menu/view-more-menu-group.cjs.map +2 -2
  36. package/build/components/page-attributes/parent.cjs +2 -1
  37. package/build/components/page-attributes/parent.cjs.map +2 -2
  38. package/build/components/post-card-panel/index.cjs +1 -1
  39. package/build/components/post-card-panel/index.cjs.map +2 -2
  40. package/build/components/post-excerpt/panel.cjs +1 -1
  41. package/build/components/post-excerpt/panel.cjs.map +2 -2
  42. package/build/components/post-locked-modal/index.cjs +3 -3
  43. package/build/components/post-locked-modal/index.cjs.map +1 -1
  44. package/build/components/post-preview-button/index.cjs +2 -2
  45. package/build/components/post-preview-button/index.cjs.map +2 -2
  46. package/build/components/post-publish-button/index.cjs +115 -157
  47. package/build/components/post-publish-button/index.cjs.map +3 -3
  48. package/build/components/post-publish-button/label.cjs +2 -2
  49. package/build/components/post-publish-button/label.cjs.map +2 -2
  50. package/build/components/post-publish-panel/index.cjs.map +1 -1
  51. package/build/components/post-publish-panel/postpublish.cjs +1 -1
  52. package/build/components/post-publish-panel/postpublish.cjs.map +2 -2
  53. package/build/components/post-revisions-preview/block-diff.cjs +21 -9
  54. package/build/components/post-revisions-preview/block-diff.cjs.map +2 -2
  55. package/build/components/post-revisions-preview/diff-markers.cjs.map +2 -2
  56. package/build/components/post-revisions-preview/preserve-client-ids.cjs +2 -2
  57. package/build/components/post-revisions-preview/preserve-client-ids.cjs.map +2 -2
  58. package/build/components/post-revisions-preview/revisions-slider.cjs +1 -1
  59. package/build/components/post-revisions-preview/revisions-slider.cjs.map +2 -2
  60. package/build/components/post-revisions-timeline/index.cjs +173 -0
  61. package/build/components/post-revisions-timeline/index.cjs.map +7 -0
  62. package/build/components/post-saved-state/index.cjs +17 -26
  63. package/build/components/post-saved-state/index.cjs.map +2 -2
  64. package/build/components/post-schedule/label.cjs +5 -5
  65. package/build/components/post-schedule/label.cjs.map +1 -1
  66. package/build/components/post-taxonomies/flat-term-selector.cjs +2 -1
  67. package/build/components/post-taxonomies/flat-term-selector.cjs.map +3 -3
  68. package/build/components/post-taxonomies/hierarchical-term-selector.cjs +1 -1
  69. package/build/components/post-taxonomies/hierarchical-term-selector.cjs.map +2 -2
  70. package/build/components/post-text-editor/index.cjs +51 -0
  71. package/build/components/post-text-editor/index.cjs.map +2 -2
  72. package/build/components/post-text-editor/utils.cjs +150 -0
  73. package/build/components/post-text-editor/utils.cjs.map +7 -0
  74. package/build/components/post-url/index.cjs +1 -1
  75. package/build/components/post-url/index.cjs.map +2 -2
  76. package/build/components/post-view-link/index.cjs +1 -1
  77. package/build/components/post-view-link/index.cjs.map +2 -2
  78. package/build/components/provider/disable-non-page-content-blocks.cjs.map +1 -1
  79. package/build/components/provider/index.cjs +3 -1
  80. package/build/components/provider/index.cjs.map +3 -3
  81. package/build/components/provider/use-network-reconnect.cjs +51 -0
  82. package/build/components/provider/use-network-reconnect.cjs.map +7 -0
  83. package/build/components/resizable-editor/resize-handle.cjs.map +2 -2
  84. package/build/components/revision-diff-panel/index.cjs +7 -2
  85. package/build/components/revision-diff-panel/index.cjs.map +2 -2
  86. package/build/components/revision-fields-diff/index.cjs +8 -4
  87. package/build/components/revision-fields-diff/index.cjs.map +2 -2
  88. package/build/components/sidebar/dataform-post-summary.cjs +125 -20
  89. package/build/components/sidebar/dataform-post-summary.cjs.map +3 -3
  90. package/build/components/sidebar/index.cjs +2 -15
  91. package/build/components/sidebar/index.cjs.map +3 -3
  92. package/build/components/sidebar/post-revision-summary.cjs +11 -17
  93. package/build/components/sidebar/post-revision-summary.cjs.map +3 -3
  94. package/build/components/sidebar/post-summary.cjs +1 -1
  95. package/build/components/sidebar/post-summary.cjs.map +2 -2
  96. package/build/components/style-book/examples.cjs +1 -1
  97. package/build/components/style-book/examples.cjs.map +1 -1
  98. package/build/components/style-book/index.cjs +1 -1
  99. package/build/components/style-book/index.cjs.map +2 -2
  100. package/build/components/sync-connection-error-modal/index.cjs +3 -3
  101. package/build/components/sync-connection-error-modal/index.cjs.map +1 -1
  102. package/build/components/template-actions-panel/block-theme-content.cjs +7 -1
  103. package/build/components/template-actions-panel/block-theme-content.cjs.map +2 -2
  104. package/build/components/template-actions-panel/index.cjs +0 -9
  105. package/build/components/template-actions-panel/index.cjs.map +3 -3
  106. package/build/components/template-validation-notice/index.cjs +1 -1
  107. package/build/components/template-validation-notice/index.cjs.map +1 -1
  108. package/build/components/upload-progress-snackbar/index.cjs +161 -0
  109. package/build/components/upload-progress-snackbar/index.cjs.map +7 -0
  110. package/build/components/upload-progress-snackbar/tracker.cjs +90 -0
  111. package/build/components/upload-progress-snackbar/tracker.cjs.map +7 -0
  112. package/build/components/visual-editor/edit-template-blocks-notification.cjs +1 -1
  113. package/build/components/visual-editor/edit-template-blocks-notification.cjs.map +1 -1
  114. package/build/{components/revision-author-panel → dataviews/fields/revisions}/index.cjs +18 -26
  115. package/build/dataviews/fields/revisions/index.cjs.map +7 -0
  116. package/build/dataviews/fields/revisions/revisions-view.cjs +74 -0
  117. package/build/dataviews/fields/revisions/revisions-view.cjs.map +7 -0
  118. package/build/dataviews/store/private-actions.cjs +14 -4
  119. package/build/dataviews/store/private-actions.cjs.map +3 -3
  120. package/build/hooks/push-changes-to-global-styles/index.cjs +1 -1
  121. package/build/hooks/push-changes-to-global-styles/index.cjs.map +1 -1
  122. package/build/private-apis.cjs +2 -0
  123. package/build/private-apis.cjs.map +3 -3
  124. package/build/store/actions.cjs +1 -1
  125. package/build/store/actions.cjs.map +2 -2
  126. package/build/store/private-selectors.cjs +6 -1
  127. package/build/store/private-selectors.cjs.map +2 -2
  128. package/build/store/selectors.cjs +1 -2
  129. package/build/store/selectors.cjs.map +2 -2
  130. package/build/utils/media-upload/index.cjs +16 -0
  131. package/build/utils/media-upload/index.cjs.map +3 -3
  132. package/build/utils/set-nested-value.cjs.map +1 -1
  133. package/build-module/bindings/pattern-overrides.mjs +1 -1
  134. package/build-module/bindings/pattern-overrides.mjs.map +2 -2
  135. package/build-module/components/block-removal-warnings/index.mjs +0 -3
  136. package/build-module/components/block-removal-warnings/index.mjs.map +2 -2
  137. package/build-module/components/collab-sidebar/note-byline.mjs +1 -1
  138. package/build-module/components/collab-sidebar/note-byline.mjs.map +2 -2
  139. package/build-module/components/collab-sidebar/note-indicator-toolbar.mjs +53 -44
  140. package/build-module/components/collab-sidebar/note-indicator-toolbar.mjs.map +2 -2
  141. package/build-module/components/collab-sidebar/note.mjs +50 -18
  142. package/build-module/components/collab-sidebar/note.mjs.map +2 -2
  143. package/build-module/components/collab-sidebar/notes.mjs.map +1 -1
  144. package/build-module/components/collab-sidebar/utils.mjs +1 -1
  145. package/build-module/components/collab-sidebar/utils.mjs.map +2 -2
  146. package/build-module/components/collaborators-overlay/avatar-iframe-styles.mjs.map +1 -1
  147. package/build-module/components/collaborators-overlay/collaborator-styles.mjs.map +1 -1
  148. package/build-module/components/collaborators-overlay/compute-selection.mjs.map +1 -1
  149. package/build-module/components/collaborators-overlay/overlay-iframe-styles.mjs +1 -1
  150. package/build-module/components/collaborators-overlay/overlay-iframe-styles.mjs.map +1 -1
  151. package/build-module/components/collaborators-overlay/use-block-highlighting.mjs +1 -8
  152. package/build-module/components/collaborators-overlay/use-block-highlighting.mjs.map +2 -2
  153. package/build-module/components/collaborators-overlay/use-render-cursors.mjs +1 -7
  154. package/build-module/components/collaborators-overlay/use-render-cursors.mjs.map +2 -2
  155. package/build-module/components/collaborators-presence/avatar/component.mjs.map +2 -2
  156. package/build-module/components/collaborators-presence/avatar/use-image-loading-status.mjs.map +1 -1
  157. package/build-module/components/document-bar/index.mjs +7 -5
  158. package/build-module/components/document-bar/index.mjs.map +2 -2
  159. package/build-module/components/global-keyboard-shortcuts/index.mjs +3 -2
  160. package/build-module/components/global-keyboard-shortcuts/index.mjs.map +2 -2
  161. package/build-module/components/global-styles-sidebar/welcome-guide.mjs +3 -3
  162. package/build-module/components/global-styles-sidebar/welcome-guide.mjs.map +1 -1
  163. package/build-module/components/local-autosave-monitor/index.mjs +15 -16
  164. package/build-module/components/local-autosave-monitor/index.mjs.map +2 -2
  165. package/build-module/components/more-menu/view-more-menu-group.mjs +1 -2
  166. package/build-module/components/more-menu/view-more-menu-group.mjs.map +2 -2
  167. package/build-module/components/page-attributes/parent.mjs +2 -1
  168. package/build-module/components/page-attributes/parent.mjs.map +2 -2
  169. package/build-module/components/post-card-panel/index.mjs +1 -1
  170. package/build-module/components/post-card-panel/index.mjs.map +2 -2
  171. package/build-module/components/post-excerpt/panel.mjs +1 -1
  172. package/build-module/components/post-excerpt/panel.mjs.map +2 -2
  173. package/build-module/components/post-locked-modal/index.mjs +3 -3
  174. package/build-module/components/post-locked-modal/index.mjs.map +1 -1
  175. package/build-module/components/post-preview-button/index.mjs +2 -2
  176. package/build-module/components/post-preview-button/index.mjs.map +2 -2
  177. package/build-module/components/post-publish-button/index.mjs +117 -159
  178. package/build-module/components/post-publish-button/index.mjs.map +2 -2
  179. package/build-module/components/post-publish-button/label.mjs +2 -2
  180. package/build-module/components/post-publish-button/label.mjs.map +2 -2
  181. package/build-module/components/post-publish-panel/index.mjs.map +1 -1
  182. package/build-module/components/post-publish-panel/postpublish.mjs +1 -1
  183. package/build-module/components/post-publish-panel/postpublish.mjs.map +2 -2
  184. package/build-module/components/post-revisions-preview/block-diff.mjs +20 -8
  185. package/build-module/components/post-revisions-preview/block-diff.mjs.map +2 -2
  186. package/build-module/components/post-revisions-preview/diff-markers.mjs.map +2 -2
  187. package/build-module/components/post-revisions-preview/preserve-client-ids.mjs +1 -1
  188. package/build-module/components/post-revisions-preview/preserve-client-ids.mjs.map +1 -1
  189. package/build-module/components/post-revisions-preview/revisions-slider.mjs +1 -1
  190. package/build-module/components/post-revisions-preview/revisions-slider.mjs.map +2 -2
  191. package/build-module/components/post-revisions-timeline/index.mjs +152 -0
  192. package/build-module/components/post-revisions-timeline/index.mjs.map +7 -0
  193. package/build-module/components/post-saved-state/index.mjs +17 -26
  194. package/build-module/components/post-saved-state/index.mjs.map +2 -2
  195. package/build-module/components/post-schedule/label.mjs +5 -5
  196. package/build-module/components/post-schedule/label.mjs.map +1 -1
  197. package/build-module/components/post-taxonomies/flat-term-selector.mjs +3 -6
  198. package/build-module/components/post-taxonomies/flat-term-selector.mjs.map +2 -2
  199. package/build-module/components/post-taxonomies/hierarchical-term-selector.mjs +1 -1
  200. package/build-module/components/post-taxonomies/hierarchical-term-selector.mjs.map +2 -2
  201. package/build-module/components/post-text-editor/index.mjs +51 -0
  202. package/build-module/components/post-text-editor/index.mjs.map +2 -2
  203. package/build-module/components/post-text-editor/utils.mjs +123 -0
  204. package/build-module/components/post-text-editor/utils.mjs.map +7 -0
  205. package/build-module/components/post-url/index.mjs +1 -1
  206. package/build-module/components/post-url/index.mjs.map +2 -2
  207. package/build-module/components/post-view-link/index.mjs +1 -1
  208. package/build-module/components/post-view-link/index.mjs.map +2 -2
  209. package/build-module/components/provider/disable-non-page-content-blocks.mjs.map +1 -1
  210. package/build-module/components/provider/index.mjs +3 -1
  211. package/build-module/components/provider/index.mjs.map +2 -2
  212. package/build-module/components/provider/use-network-reconnect.mjs +30 -0
  213. package/build-module/components/provider/use-network-reconnect.mjs.map +7 -0
  214. package/build-module/components/resizable-editor/resize-handle.mjs.map +2 -2
  215. package/build-module/components/revision-diff-panel/index.mjs +7 -2
  216. package/build-module/components/revision-diff-panel/index.mjs.map +2 -2
  217. package/build-module/components/revision-fields-diff/index.mjs +8 -4
  218. package/build-module/components/revision-fields-diff/index.mjs.map +2 -2
  219. package/build-module/components/sidebar/dataform-post-summary.mjs +125 -20
  220. package/build-module/components/sidebar/dataform-post-summary.mjs.map +2 -2
  221. package/build-module/components/sidebar/index.mjs +3 -22
  222. package/build-module/components/sidebar/index.mjs.map +2 -2
  223. package/build-module/components/sidebar/post-revision-summary.mjs +11 -17
  224. package/build-module/components/sidebar/post-revision-summary.mjs.map +2 -2
  225. package/build-module/components/sidebar/post-summary.mjs +1 -1
  226. package/build-module/components/sidebar/post-summary.mjs.map +2 -2
  227. package/build-module/components/style-book/examples.mjs +1 -1
  228. package/build-module/components/style-book/examples.mjs.map +1 -1
  229. package/build-module/components/style-book/index.mjs +1 -1
  230. package/build-module/components/style-book/index.mjs.map +2 -2
  231. package/build-module/components/sync-connection-error-modal/index.mjs +3 -3
  232. package/build-module/components/sync-connection-error-modal/index.mjs.map +1 -1
  233. package/build-module/components/template-actions-panel/block-theme-content.mjs +7 -1
  234. package/build-module/components/template-actions-panel/block-theme-content.mjs.map +2 -2
  235. package/build-module/components/template-actions-panel/index.mjs +0 -9
  236. package/build-module/components/template-actions-panel/index.mjs.map +2 -2
  237. package/build-module/components/template-validation-notice/index.mjs +1 -1
  238. package/build-module/components/template-validation-notice/index.mjs.map +1 -1
  239. package/build-module/components/upload-progress-snackbar/index.mjs +135 -0
  240. package/build-module/components/upload-progress-snackbar/index.mjs.map +7 -0
  241. package/build-module/components/upload-progress-snackbar/tracker.mjs +61 -0
  242. package/build-module/components/upload-progress-snackbar/tracker.mjs.map +7 -0
  243. package/build-module/components/visual-editor/edit-template-blocks-notification.mjs +1 -1
  244. package/build-module/components/visual-editor/edit-template-blocks-notification.mjs.map +1 -1
  245. package/build-module/dataviews/fields/revisions/index.mjs +20 -0
  246. package/build-module/dataviews/fields/revisions/index.mjs.map +7 -0
  247. package/build-module/dataviews/fields/revisions/revisions-view.mjs +53 -0
  248. package/build-module/dataviews/fields/revisions/revisions-view.mjs.map +7 -0
  249. package/build-module/dataviews/store/private-actions.mjs +23 -7
  250. package/build-module/dataviews/store/private-actions.mjs.map +2 -2
  251. package/build-module/hooks/push-changes-to-global-styles/index.mjs +1 -1
  252. package/build-module/hooks/push-changes-to-global-styles/index.mjs.map +1 -1
  253. package/build-module/private-apis.mjs +2 -0
  254. package/build-module/private-apis.mjs.map +2 -2
  255. package/build-module/store/actions.mjs +1 -1
  256. package/build-module/store/actions.mjs.map +2 -2
  257. package/build-module/store/private-selectors.mjs +7 -1
  258. package/build-module/store/private-selectors.mjs.map +2 -2
  259. package/build-module/store/selectors.mjs +1 -2
  260. package/build-module/store/selectors.mjs.map +2 -2
  261. package/build-module/utils/media-upload/index.mjs +19 -0
  262. package/build-module/utils/media-upload/index.mjs.map +2 -2
  263. package/build-module/utils/set-nested-value.mjs.map +1 -1
  264. package/build-style/style-rtl.css +707 -270
  265. package/build-style/style.css +707 -270
  266. package/build-types/components/block-removal-warnings/index.d.ts.map +1 -1
  267. package/build-types/components/collab-sidebar/note-byline.d.ts +0 -3
  268. package/build-types/components/collab-sidebar/note-byline.d.ts.map +1 -1
  269. package/build-types/components/collab-sidebar/note-indicator-toolbar.d.ts.map +1 -1
  270. package/build-types/components/collab-sidebar/note.d.ts.map +1 -1
  271. package/build-types/components/collaborators-overlay/use-block-highlighting.d.ts +0 -3
  272. package/build-types/components/collaborators-overlay/use-block-highlighting.d.ts.map +1 -1
  273. package/build-types/components/collaborators-overlay/use-render-cursors.d.ts.map +1 -1
  274. package/build-types/components/collaborators-presence/avatar/component.d.ts.map +1 -1
  275. package/build-types/components/document-bar/index.d.ts.map +1 -1
  276. package/build-types/components/global-keyboard-shortcuts/index.d.ts.map +1 -1
  277. package/build-types/components/local-autosave-monitor/index.d.ts.map +1 -1
  278. package/build-types/components/more-menu/view-more-menu-group.d.ts.map +1 -1
  279. package/build-types/components/page-attributes/parent.d.ts.map +1 -1
  280. package/build-types/components/post-publish-button/index.d.ts +9 -9
  281. package/build-types/components/post-publish-button/index.d.ts.map +1 -1
  282. package/build-types/components/post-revisions-preview/block-diff.d.ts +3 -0
  283. package/build-types/components/post-revisions-preview/block-diff.d.ts.map +1 -1
  284. package/build-types/components/post-revisions-preview/diff-markers.d.ts.map +1 -1
  285. package/build-types/components/post-revisions-timeline/index.d.ts +2 -0
  286. package/build-types/components/post-revisions-timeline/index.d.ts.map +1 -0
  287. package/build-types/components/post-saved-state/index.d.ts.map +1 -1
  288. package/build-types/components/post-taxonomies/flat-term-selector.d.ts.map +1 -1
  289. package/build-types/components/post-text-editor/index.d.ts.map +1 -1
  290. package/build-types/components/post-text-editor/utils.d.ts +29 -0
  291. package/build-types/components/post-text-editor/utils.d.ts.map +1 -0
  292. package/build-types/components/provider/index.d.ts.map +1 -1
  293. package/build-types/components/provider/use-network-reconnect.d.ts +8 -0
  294. package/build-types/components/provider/use-network-reconnect.d.ts.map +1 -0
  295. package/build-types/components/resizable-editor/resize-handle.d.ts.map +1 -1
  296. package/build-types/components/revision-diff-panel/index.d.ts +3 -1
  297. package/build-types/components/revision-diff-panel/index.d.ts.map +1 -1
  298. package/build-types/components/revision-fields-diff/index.d.ts +3 -0
  299. package/build-types/components/revision-fields-diff/index.d.ts.map +1 -1
  300. package/build-types/components/sidebar/dataform-post-summary.d.ts.map +1 -1
  301. package/build-types/components/sidebar/index.d.ts.map +1 -1
  302. package/build-types/components/sidebar/post-revision-summary.d.ts.map +1 -1
  303. package/build-types/components/template-actions-panel/block-theme-content.d.ts.map +1 -1
  304. package/build-types/components/template-actions-panel/index.d.ts.map +1 -1
  305. package/build-types/components/upload-progress-snackbar/index.d.ts +19 -0
  306. package/build-types/components/upload-progress-snackbar/index.d.ts.map +1 -0
  307. package/build-types/components/upload-progress-snackbar/stories/index.story.d.ts +28 -0
  308. package/build-types/components/upload-progress-snackbar/stories/index.story.d.ts.map +1 -0
  309. package/build-types/components/upload-progress-snackbar/tracker.d.ts +41 -0
  310. package/build-types/components/upload-progress-snackbar/tracker.d.ts.map +1 -0
  311. package/build-types/dataviews/fields/revisions/index.d.ts +8 -0
  312. package/build-types/dataviews/fields/revisions/index.d.ts.map +1 -0
  313. package/build-types/dataviews/fields/revisions/revisions-view.d.ts +2 -0
  314. package/build-types/dataviews/fields/revisions/revisions-view.d.ts.map +1 -0
  315. package/build-types/dataviews/store/private-actions.d.ts.map +1 -1
  316. package/build-types/private-apis.d.ts.map +1 -1
  317. package/build-types/store/private-selectors.d.ts +1 -1
  318. package/build-types/store/private-selectors.d.ts.map +1 -1
  319. package/build-types/store/selectors.d.ts +1 -1
  320. package/build-types/store/selectors.d.ts.map +1 -1
  321. package/build-types/utils/get-template-part-icon.d.ts.map +1 -1
  322. package/build-types/utils/media-upload/index.d.ts.map +1 -1
  323. package/package.json +59 -50
  324. package/src/bindings/pattern-overrides.js +1 -1
  325. package/src/bindings/test/pattern-overrides.js +65 -0
  326. package/src/components/README.md +1 -1
  327. package/src/components/block-removal-warnings/index.js +0 -7
  328. package/src/components/collab-sidebar/note-byline.js +0 -1
  329. package/src/components/collab-sidebar/note-indicator-toolbar.js +73 -60
  330. package/src/components/collab-sidebar/note.js +64 -29
  331. package/src/components/collab-sidebar/style.scss +20 -0
  332. package/src/components/collaborators-overlay/use-block-highlighting.ts +0 -9
  333. package/src/components/collaborators-overlay/use-render-cursors.ts +0 -8
  334. package/src/components/collaborators-presence/avatar/component.tsx +0 -1
  335. package/src/components/collaborators-presence/avatar/test/index.tsx +8 -4
  336. package/src/components/document-bar/index.js +8 -3
  337. package/src/components/document-bar/style.scss +4 -2
  338. package/src/components/global-keyboard-shortcuts/index.js +2 -1
  339. package/src/components/local-autosave-monitor/index.js +23 -21
  340. package/src/components/more-menu/view-more-menu-group.js +1 -2
  341. package/src/components/page-attributes/parent.js +1 -0
  342. package/src/components/post-card-panel/index.js +1 -1
  343. package/src/components/post-publish-button/index.js +146 -192
  344. package/src/components/post-publish-button/test/index.js +149 -113
  345. package/src/components/post-revisions-preview/block-diff.js +63 -19
  346. package/src/components/post-revisions-preview/diff-markers.js +0 -1
  347. package/src/components/post-revisions-preview/preserve-client-ids.js +1 -1
  348. package/src/components/post-revisions-preview/test/block-diff.js +109 -6
  349. package/src/components/post-revisions-timeline/index.js +186 -0
  350. package/src/components/post-revisions-timeline/style.scss +43 -0
  351. package/src/components/post-saved-state/index.js +23 -26
  352. package/src/components/post-saved-state/test/index.js +18 -0
  353. package/src/components/post-taxonomies/flat-term-selector.js +4 -7
  354. package/src/components/post-text-editor/index.js +65 -0
  355. package/src/components/post-text-editor/test/utils.js +210 -0
  356. package/src/components/post-text-editor/utils.js +204 -0
  357. package/src/components/post-type-support-check/test/index.js +11 -0
  358. package/src/components/post-url/index.js +1 -1
  359. package/src/components/post-view-link/index.js +1 -1
  360. package/src/components/post-view-link/test/index.js +71 -0
  361. package/src/components/provider/index.js +6 -1
  362. package/src/components/provider/test/use-network-reconnect.js +137 -0
  363. package/src/components/provider/use-network-reconnect.js +44 -0
  364. package/src/components/resizable-editor/resize-handle.js +0 -1
  365. package/src/components/revision-diff-panel/index.js +8 -2
  366. package/src/components/revision-fields-diff/index.js +19 -3
  367. package/src/components/sidebar/dataform-post-summary.js +196 -25
  368. package/src/components/sidebar/index.js +4 -23
  369. package/src/components/sidebar/post-revision-summary.js +8 -15
  370. package/src/components/sidebar/post-summary.js +1 -1
  371. package/src/components/style-book/index.js +1 -1
  372. package/src/components/template-actions-panel/block-theme-content.js +10 -2
  373. package/src/components/template-actions-panel/index.js +0 -15
  374. package/src/components/upload-progress-snackbar/README.md +26 -0
  375. package/src/components/upload-progress-snackbar/index.js +216 -0
  376. package/src/components/upload-progress-snackbar/stories/index.story.tsx +85 -0
  377. package/src/components/upload-progress-snackbar/style.scss +30 -0
  378. package/src/components/upload-progress-snackbar/test/index.js +199 -0
  379. package/src/components/upload-progress-snackbar/tracker.js +105 -0
  380. package/src/dataviews/fields/revisions/index.tsx +28 -0
  381. package/src/dataviews/fields/revisions/revisions-view.tsx +59 -0
  382. package/src/dataviews/store/private-actions.ts +27 -6
  383. package/src/private-apis.js +2 -0
  384. package/src/store/private-selectors.js +11 -1
  385. package/src/store/selectors.js +1 -3
  386. package/src/store/test/private-selectors.js +69 -0
  387. package/src/style.scss +2 -1
  388. package/src/utils/media-upload/index.js +27 -0
  389. package/build/components/post-revisions-panel/index.cjs +0 -173
  390. package/build/components/post-revisions-panel/index.cjs.map +0 -7
  391. package/build/components/revision-author-panel/index.cjs.map +0 -7
  392. package/build/components/revision-created-panel/index.cjs +0 -47
  393. package/build/components/revision-created-panel/index.cjs.map +0 -7
  394. package/build-module/components/post-revisions-panel/index.mjs +0 -148
  395. package/build-module/components/post-revisions-panel/index.mjs.map +0 -7
  396. package/build-module/components/revision-author-panel/index.mjs +0 -28
  397. package/build-module/components/revision-author-panel/index.mjs.map +0 -7
  398. package/build-module/components/revision-created-panel/index.mjs +0 -26
  399. package/build-module/components/revision-created-panel/index.mjs.map +0 -7
  400. package/build-types/components/post-revisions-panel/index.d.ts +0 -2
  401. package/build-types/components/post-revisions-panel/index.d.ts.map +0 -1
  402. package/build-types/components/revision-author-panel/index.d.ts +0 -2
  403. package/build-types/components/revision-author-panel/index.d.ts.map +0 -1
  404. package/build-types/components/revision-created-panel/index.d.ts +0 -2
  405. package/build-types/components/revision-created-panel/index.d.ts.map +0 -1
  406. package/src/components/commands/index.native.js +0 -2
  407. package/src/components/deprecated.native.js +0 -47
  408. package/src/components/editor-help/add-blocks.native.js +0 -40
  409. package/src/components/editor-help/customize-blocks.native.js +0 -40
  410. package/src/components/editor-help/help-detail-navigation-screen.native.js +0 -67
  411. package/src/components/editor-help/help-get-support-button.native.js +0 -38
  412. package/src/components/editor-help/help-section-title.native.js +0 -29
  413. package/src/components/editor-help/help-topic-row.native.js +0 -33
  414. package/src/components/editor-help/icon-move-blocks.native.js +0 -10
  415. package/src/components/editor-help/images/add-dark.png +0 -0
  416. package/src/components/editor-help/images/add-dark@2x.png +0 -0
  417. package/src/components/editor-help/images/add-dark@3x.png +0 -0
  418. package/src/components/editor-help/images/add-light.png +0 -0
  419. package/src/components/editor-help/images/add-light@2x.png +0 -0
  420. package/src/components/editor-help/images/add-light@3x.png +0 -0
  421. package/src/components/editor-help/images/block-layout-collage.png +0 -0
  422. package/src/components/editor-help/images/block-layout-collage@2x.png +0 -0
  423. package/src/components/editor-help/images/block-layout-collage@3x.png +0 -0
  424. package/src/components/editor-help/images/build-layouts-dark.png +0 -0
  425. package/src/components/editor-help/images/build-layouts-dark@2x.png +0 -0
  426. package/src/components/editor-help/images/build-layouts-dark@3x.png +0 -0
  427. package/src/components/editor-help/images/build-layouts-light.png +0 -0
  428. package/src/components/editor-help/images/build-layouts-light@2x.png +0 -0
  429. package/src/components/editor-help/images/build-layouts-light@3x.png +0 -0
  430. package/src/components/editor-help/images/drag-and-drop-dark.png +0 -0
  431. package/src/components/editor-help/images/drag-and-drop-dark@2x.png +0 -0
  432. package/src/components/editor-help/images/drag-and-drop-dark@3x.png +0 -0
  433. package/src/components/editor-help/images/drag-and-drop-light.png +0 -0
  434. package/src/components/editor-help/images/drag-and-drop-light@2x.png +0 -0
  435. package/src/components/editor-help/images/drag-and-drop-light@3x.png +0 -0
  436. package/src/components/editor-help/images/edit-media-dark.png +0 -0
  437. package/src/components/editor-help/images/edit-media-dark@2x.png +0 -0
  438. package/src/components/editor-help/images/edit-media-dark@3x.png +0 -0
  439. package/src/components/editor-help/images/edit-media-light.png +0 -0
  440. package/src/components/editor-help/images/edit-media-light@2x.png +0 -0
  441. package/src/components/editor-help/images/edit-media-light@3x.png +0 -0
  442. package/src/components/editor-help/images/embed-media-dark.png +0 -0
  443. package/src/components/editor-help/images/embed-media-dark@2x.png +0 -0
  444. package/src/components/editor-help/images/embed-media-dark@3x.png +0 -0
  445. package/src/components/editor-help/images/embed-media-light.png +0 -0
  446. package/src/components/editor-help/images/embed-media-light@2x.png +0 -0
  447. package/src/components/editor-help/images/embed-media-light@3x.png +0 -0
  448. package/src/components/editor-help/images/move-dark.png +0 -0
  449. package/src/components/editor-help/images/move-dark@2x.png +0 -0
  450. package/src/components/editor-help/images/move-dark@3x.png +0 -0
  451. package/src/components/editor-help/images/move-light.png +0 -0
  452. package/src/components/editor-help/images/move-light@2x.png +0 -0
  453. package/src/components/editor-help/images/move-light@3x.png +0 -0
  454. package/src/components/editor-help/images/options-dark.png +0 -0
  455. package/src/components/editor-help/images/options-dark@2x.png +0 -0
  456. package/src/components/editor-help/images/options-dark@3x.png +0 -0
  457. package/src/components/editor-help/images/options-light.png +0 -0
  458. package/src/components/editor-help/images/options-light@2x.png +0 -0
  459. package/src/components/editor-help/images/options-light@3x.png +0 -0
  460. package/src/components/editor-help/images/rich-text-dark.png +0 -0
  461. package/src/components/editor-help/images/rich-text-dark@2x.png +0 -0
  462. package/src/components/editor-help/images/rich-text-dark@3x.png +0 -0
  463. package/src/components/editor-help/images/rich-text-light.png +0 -0
  464. package/src/components/editor-help/images/rich-text-light@2x.png +0 -0
  465. package/src/components/editor-help/images/rich-text-light@3x.png +0 -0
  466. package/src/components/editor-help/images/settings-dark.png +0 -0
  467. package/src/components/editor-help/images/settings-dark@2x.png +0 -0
  468. package/src/components/editor-help/images/settings-dark@3x.png +0 -0
  469. package/src/components/editor-help/images/settings-light.png +0 -0
  470. package/src/components/editor-help/images/settings-light@2x.png +0 -0
  471. package/src/components/editor-help/images/settings-light@3x.png +0 -0
  472. package/src/components/editor-help/index.native.js +0 -208
  473. package/src/components/editor-help/intro-to-blocks.native.js +0 -91
  474. package/src/components/editor-help/move-blocks.native.js +0 -55
  475. package/src/components/editor-help/remove-blocks.native.js +0 -35
  476. package/src/components/editor-help/style.android.scss +0 -6
  477. package/src/components/editor-help/style.ios.scss +0 -6
  478. package/src/components/editor-help/style.scss +0 -123
  479. package/src/components/editor-help/test/index.native.js +0 -81
  480. package/src/components/editor-help/view-sections.native.js +0 -79
  481. package/src/components/error-boundary/index.native.js +0 -192
  482. package/src/components/error-boundary/style.native.scss +0 -116
  483. package/src/components/index.native.js +0 -15
  484. package/src/components/offline-status/index.native.js +0 -99
  485. package/src/components/offline-status/style.native.scss +0 -28
  486. package/src/components/offline-status/test/index.native.js +0 -108
  487. package/src/components/post-revisions-panel/index.js +0 -161
  488. package/src/components/post-revisions-panel/style.scss +0 -16
  489. package/src/components/post-title/index.native.js +0 -282
  490. package/src/components/post-title/style.native.scss +0 -13
  491. package/src/components/post-title/test/__snapshots__/index.native.js.snap +0 -25
  492. package/src/components/post-title/test/index.native.js +0 -78
  493. package/src/components/provider/index.native.js +0 -497
  494. package/src/components/provider/use-block-editor-settings.native.js +0 -48
  495. package/src/components/revision-author-panel/index.js +0 -36
  496. package/src/components/revision-created-panel/index.js +0 -36
  497. package/src/components/template-part-menu-items/index.native.js +0 -3
  498. package/src/hooks/index.native.js +0 -0
  499. package/src/index.native.js +0 -16
  500. package/src/private-apis.native.js +0 -33
  501. package/src/store/actions.native.js +0 -27
  502. package/src/store/reducer.native.js +0 -94
  503. package/src/store/selectors.native.js +0 -57
  504. package/src/store/test/actions.native.js +0 -16
  505. package/src/store/test/reducer.native.js +0 -36
  506. package/src/store/test/selectors.native.js +0 -28
  507. package/src/utils/index.native.js +0 -6
  508. package/src/utils/media-sideload/index.native.js +0 -1
  509. package/src/utils/media-upload/index.native.js +0 -1
@@ -1,497 +0,0 @@
1
- /**
2
- * External dependencies
3
- */
4
- import { BackHandler } from 'react-native';
5
- import memize from 'memize';
6
- import { SafeAreaProvider } from 'react-native-safe-area-context';
7
-
8
- /**
9
- * WordPress dependencies
10
- */
11
- import RNReactNativeGutenbergBridge, {
12
- requestBlockTypeImpressions,
13
- setBlockTypeImpressions,
14
- subscribeParentGetHtml,
15
- subscribeParentToggleHTMLMode,
16
- subscribeUpdateHtml,
17
- subscribeSetTitle,
18
- subscribeMediaAppend,
19
- subscribeReplaceBlock,
20
- subscribeUpdateEditorSettings,
21
- subscribeUpdateCapabilities,
22
- subscribeShowNotice,
23
- subscribeShowEditorHelp,
24
- subscribeToContentUpdate,
25
- } from '@wordpress/react-native-bridge';
26
- import { Component } from '@wordpress/element';
27
- import { count as wordCount } from '@wordpress/wordcount';
28
- import {
29
- parse,
30
- serialize,
31
- getUnregisteredTypeHandlerName,
32
- getBlockType,
33
- createBlock,
34
- pasteHandler,
35
- } from '@wordpress/blocks';
36
- import { withDispatch, withSelect } from '@wordpress/data';
37
- import { compose } from '@wordpress/compose';
38
- import { applyFilters } from '@wordpress/hooks';
39
- import {
40
- store as blockEditorStore,
41
- getGlobalStyles,
42
- getColorsAndGradients,
43
- } from '@wordpress/block-editor';
44
- import { NEW_BLOCK_TYPES } from '@wordpress/block-library';
45
- import { __ } from '@wordpress/i18n';
46
-
47
- const postTypeEntities = [
48
- { name: 'post', baseURL: '/wp/v2/posts' },
49
- { name: 'page', baseURL: '/wp/v2/pages' },
50
- {
51
- name: 'attachment',
52
- baseURL: '/wp/v2/media',
53
- baseURLParams: { context: 'edit' },
54
- },
55
- { name: 'wp_block', baseURL: '/wp/v2/blocks' },
56
- ].map( ( postTypeEntity ) => ( {
57
- kind: 'postType',
58
- ...postTypeEntity,
59
- transientEdits: {
60
- blocks: true,
61
- selection: true,
62
- },
63
- mergedEdits: {
64
- meta: true,
65
- },
66
- rawAttributes: [ 'title', 'excerpt', 'content' ],
67
- } ) );
68
- import { EditorHelpTopics, store as editorStore } from '@wordpress/editor';
69
- import { store as noticesStore } from '@wordpress/notices';
70
- import { store as coreStore } from '@wordpress/core-data';
71
-
72
- /**
73
- * Internal dependencies
74
- */
75
- import EditorProvider from './index.js';
76
- import { insertContentWithTitle } from '../post-title';
77
-
78
- class NativeEditorProvider extends Component {
79
- constructor() {
80
- super( ...arguments );
81
-
82
- // Keep a local reference to `post` to detect changes.
83
- this.post = this.props.post;
84
- this.props.addEntities( postTypeEntities );
85
- this.props.receiveEntityRecords(
86
- 'postType',
87
- this.post.type,
88
- this.post
89
- );
90
-
91
- this.onHardwareBackPress = this.onHardwareBackPress.bind( this );
92
- this.onContentUpdate = this.onContentUpdate.bind( this );
93
-
94
- this.getEditorSettings = memize(
95
- ( settings, capabilities ) => ( {
96
- ...settings,
97
- capabilities,
98
- } ),
99
- {
100
- maxSize: 1,
101
- }
102
- );
103
- this.state = {
104
- isHelpVisible: false,
105
- };
106
- }
107
-
108
- componentDidMount() {
109
- const {
110
- capabilities,
111
- createErrorNotice,
112
- locale,
113
- hostAppNamespace,
114
- updateEditorSettings,
115
- updateBlockEditorSettings,
116
- } = this.props;
117
-
118
- updateEditorSettings( {
119
- capabilities,
120
- ...this.getThemeColors( this.props ),
121
- locale,
122
- hostAppNamespace,
123
- } );
124
-
125
- this.subscriptionParentGetHtml = subscribeParentGetHtml( () => {
126
- this.serializeToNativeAction();
127
- } );
128
-
129
- this.subscriptionParentToggleHTMLMode = subscribeParentToggleHTMLMode(
130
- () => {
131
- this.toggleMode();
132
- }
133
- );
134
-
135
- this.subscriptionParentSetTitle = subscribeSetTitle( ( payload ) => {
136
- this.props.editTitle( payload.title );
137
- } );
138
-
139
- this.subscriptionParentUpdateHtml = subscribeUpdateHtml(
140
- ( payload ) => {
141
- this.updateHtmlAction( payload.html );
142
- }
143
- );
144
-
145
- this.subscriptionParentReplaceBlock = subscribeReplaceBlock(
146
- ( payload ) => {
147
- this.replaceBlockAction( payload.html, payload.clientId );
148
- }
149
- );
150
-
151
- this.subscriptionParentMediaAppend = subscribeMediaAppend(
152
- ( payload ) => {
153
- const blockName = 'core/' + payload.mediaType;
154
- const blockType = getBlockType( blockName );
155
-
156
- if ( blockType && blockType?.name ) {
157
- const newBlock = createBlock( blockType.name, {
158
- id: payload.mediaId,
159
- [ payload.mediaType === 'image' ? 'url' : 'src' ]:
160
- payload.mediaUrl,
161
- } );
162
-
163
- const indexAfterSelected =
164
- this.props.selectedBlockIndex + 1;
165
- const insertionIndex =
166
- indexAfterSelected || this.props.blockCount;
167
-
168
- this.props.insertBlock( newBlock, insertionIndex );
169
- } else {
170
- createErrorNotice(
171
- __( 'File type not supported as a media file.' )
172
- );
173
- }
174
- }
175
- );
176
-
177
- this.subscriptionParentUpdateEditorSettings =
178
- subscribeUpdateEditorSettings( ( { ...editorSettings } ) => {
179
- updateEditorSettings( this.getThemeColors( editorSettings ) );
180
- } );
181
-
182
- this.subscriptionParentUpdateCapabilities = subscribeUpdateCapabilities(
183
- ( payload ) => {
184
- this.updateCapabilitiesAction( payload );
185
- }
186
- );
187
-
188
- this.subscriptionParentShowNotice = subscribeShowNotice(
189
- ( payload ) => {
190
- this.props.createSuccessNotice( payload.message );
191
- }
192
- );
193
-
194
- this.subscriptionParentShowEditorHelp = subscribeShowEditorHelp( () => {
195
- this.setState( { isHelpVisible: true } );
196
- } );
197
-
198
- this.hardwareBackPressListener = BackHandler.addEventListener(
199
- 'hardwareBackPress',
200
- this.onHardwareBackPress
201
- );
202
-
203
- this.subscriptionOnContentUpdate = subscribeToContentUpdate(
204
- ( data ) => {
205
- this.onContentUpdate( data );
206
- }
207
- );
208
-
209
- // Request current block impressions from native app.
210
- requestBlockTypeImpressions( ( storedImpressions ) => {
211
- const impressions = { ...NEW_BLOCK_TYPES, ...storedImpressions };
212
-
213
- // Persist impressions to JavaScript store.
214
- updateBlockEditorSettings( { impressions } );
215
-
216
- // Persist impressions to native store if they do not include latest
217
- // `NEW_BLOCK_TYPES` configuration.
218
- const storedImpressionKeys = Object.keys( storedImpressions );
219
- const storedImpressionsCurrent = Object.keys(
220
- NEW_BLOCK_TYPES
221
- ).every( ( newKey ) => storedImpressionKeys.includes( newKey ) );
222
- if ( ! storedImpressionsCurrent ) {
223
- setBlockTypeImpressions( impressions );
224
- }
225
- } );
226
- }
227
-
228
- componentWillUnmount() {
229
- if ( this.subscriptionParentGetHtml ) {
230
- this.subscriptionParentGetHtml.remove();
231
- }
232
-
233
- if ( this.subscriptionParentToggleHTMLMode ) {
234
- this.subscriptionParentToggleHTMLMode.remove();
235
- }
236
-
237
- if ( this.subscriptionParentSetTitle ) {
238
- this.subscriptionParentSetTitle.remove();
239
- }
240
-
241
- if ( this.subscriptionParentUpdateHtml ) {
242
- this.subscriptionParentUpdateHtml.remove();
243
- }
244
-
245
- if ( this.subscriptionParentReplaceBlock ) {
246
- this.subscriptionParentReplaceBlock.remove();
247
- }
248
-
249
- if ( this.subscriptionParentMediaAppend ) {
250
- this.subscriptionParentMediaAppend.remove();
251
- }
252
-
253
- if ( this.subscriptionParentUpdateEditorSettings ) {
254
- this.subscriptionParentUpdateEditorSettings.remove();
255
- }
256
-
257
- if ( this.subscriptionParentUpdateCapabilities ) {
258
- this.subscriptionParentUpdateCapabilities.remove();
259
- }
260
-
261
- if ( this.subscriptionParentShowNotice ) {
262
- this.subscriptionParentShowNotice.remove();
263
- }
264
-
265
- if ( this.subscriptionParentShowEditorHelp ) {
266
- this.subscriptionParentShowEditorHelp.remove();
267
- }
268
-
269
- if ( this.hardwareBackPressListener ) {
270
- this.hardwareBackPressListener.remove();
271
- }
272
-
273
- if ( this.subscriptionOnContentUpdate ) {
274
- this.subscriptionOnContentUpdate.remove();
275
- }
276
- }
277
-
278
- getThemeColors( { rawStyles, rawFeatures } ) {
279
- const { defaultEditorColors, defaultEditorGradients } = this.props;
280
-
281
- if ( rawStyles && rawFeatures ) {
282
- return getGlobalStyles( rawStyles, rawFeatures );
283
- }
284
-
285
- return getColorsAndGradients(
286
- defaultEditorColors,
287
- defaultEditorGradients,
288
- rawFeatures
289
- );
290
- }
291
-
292
- componentDidUpdate( prevProps ) {
293
- if ( ! prevProps.isReady && this.props.isReady ) {
294
- const blocks = this.props.blocks;
295
- const isUnsupportedBlock = ( { name } ) =>
296
- name === getUnregisteredTypeHandlerName();
297
- const unsupportedBlockNames = blocks
298
- .filter( isUnsupportedBlock )
299
- .map( ( block ) => block.attributes.originalName );
300
- RNReactNativeGutenbergBridge.editorDidMount(
301
- unsupportedBlockNames
302
- );
303
- }
304
- }
305
-
306
- onHardwareBackPress() {
307
- const { clearSelectedBlock, selectedBlockIndex } = this.props;
308
-
309
- if ( selectedBlockIndex !== -1 ) {
310
- clearSelectedBlock();
311
- return true;
312
- }
313
- return false;
314
- }
315
-
316
- onContentUpdate( { content: rawContent } ) {
317
- const {
318
- editTitle,
319
- onClearPostTitleSelection,
320
- onInsertBlockAfter: onInsertBlocks,
321
- title,
322
- } = this.props;
323
- const content = pasteHandler( {
324
- plainText: rawContent,
325
- } );
326
-
327
- insertContentWithTitle( title, content, editTitle, onInsertBlocks );
328
- onClearPostTitleSelection();
329
- }
330
-
331
- serializeToNativeAction() {
332
- const title = this.props.title;
333
- let html;
334
-
335
- if ( this.props.mode === 'text' ) {
336
- // The HTMLTextInput component does not update the store when user is doing changes
337
- // Let's request the HTML from the component's state directly.
338
- html = applyFilters( 'native.persist-html' );
339
- } else {
340
- html = serialize( this.props.blocks );
341
- }
342
-
343
- const hasChanges =
344
- title !== this.post.title.raw || html !== this.post.content.raw;
345
-
346
- // Variable to store the content structure metrics.
347
- const contentInfo = {};
348
- contentInfo.characterCount = wordCount(
349
- html,
350
- 'characters_including_spaces'
351
- );
352
- contentInfo.wordCount = wordCount( html, 'words' );
353
- contentInfo.paragraphCount = this.props.paragraphCount;
354
- contentInfo.blockCount = this.props.blockCount;
355
- RNReactNativeGutenbergBridge.provideToNative_Html(
356
- html,
357
- title,
358
- hasChanges,
359
- contentInfo
360
- );
361
-
362
- if ( hasChanges ) {
363
- this.post.title.raw = title;
364
- this.post.content.raw = html;
365
- }
366
- }
367
-
368
- updateHtmlAction( html ) {
369
- const parsed = parse( html );
370
- this.props.resetEditorBlocksWithoutUndoLevel( parsed );
371
- }
372
-
373
- replaceBlockAction( html, blockClientId ) {
374
- const parsed = parse( html );
375
- this.props.replaceBlock( blockClientId, parsed );
376
- }
377
-
378
- toggleMode() {
379
- const { mode, switchMode } = this.props;
380
- // Refresh html content first.
381
- this.serializeToNativeAction();
382
- switchMode( mode === 'visual' ? 'text' : 'visual' );
383
- }
384
-
385
- updateCapabilitiesAction( capabilities ) {
386
- this.props.updateEditorSettings( { capabilities } );
387
- }
388
-
389
- render() {
390
- const { children, post, capabilities, settings, ...props } = this.props;
391
- const editorSettings = this.getEditorSettings( settings, capabilities );
392
-
393
- return (
394
- <>
395
- <EditorProvider
396
- post={ this.post }
397
- settings={ editorSettings }
398
- { ...props }
399
- >
400
- <SafeAreaProvider>{ children }</SafeAreaProvider>
401
- </EditorProvider>
402
- <EditorHelpTopics
403
- isVisible={ this.state.isHelpVisible }
404
- onClose={ () => this.setState( { isHelpVisible: false } ) }
405
- close={ () => this.setState( { isHelpVisible: false } ) }
406
- showSupport={ capabilities?.supportSection === true }
407
- />
408
- </>
409
- );
410
- }
411
- }
412
-
413
- const ComposedNativeProvider = compose( [
414
- withSelect( ( select ) => {
415
- const {
416
- __unstableIsEditorReady: isEditorReady,
417
- getEditorBlocks,
418
- getEditedPostAttribute,
419
- getEditedPostContent,
420
- getEditorSettings,
421
- getEditorMode,
422
- } = select( editorStore );
423
-
424
- const { getBlockIndex, getSelectedBlockClientId, getGlobalBlockCount } =
425
- select( blockEditorStore );
426
-
427
- const settings = getEditorSettings();
428
- const defaultEditorColors = settings?.colors ?? [];
429
- const defaultEditorGradients = settings?.gradients ?? [];
430
-
431
- const selectedBlockClientId = getSelectedBlockClientId();
432
- return {
433
- mode: getEditorMode(),
434
- isReady: isEditorReady(),
435
- blocks: getEditorBlocks(),
436
- title: getEditedPostAttribute( 'title' ),
437
- getEditedPostContent,
438
- defaultEditorColors,
439
- defaultEditorGradients,
440
- selectedBlockIndex: getBlockIndex( selectedBlockClientId ),
441
- blockCount: getGlobalBlockCount(),
442
- paragraphCount: getGlobalBlockCount( 'core/paragraph' ),
443
- };
444
- } ),
445
- withDispatch( ( dispatch ) => {
446
- const {
447
- editPost,
448
- resetEditorBlocks,
449
- updateEditorSettings,
450
- switchEditorMode,
451
- togglePostTitleSelection,
452
- } = dispatch( editorStore );
453
- const {
454
- clearSelectedBlock,
455
- updateSettings,
456
- insertBlock,
457
- insertBlocks,
458
- replaceBlock,
459
- } = dispatch( blockEditorStore );
460
- const { addEntities, receiveEntityRecords } = dispatch( coreStore );
461
- const { createSuccessNotice, createErrorNotice } =
462
- dispatch( noticesStore );
463
-
464
- return {
465
- updateBlockEditorSettings: updateSettings,
466
- updateEditorSettings,
467
- addEntities,
468
- insertBlock,
469
- insertBlocks,
470
- createSuccessNotice,
471
- createErrorNotice,
472
- clearSelectedBlock,
473
- editTitle( title ) {
474
- editPost( { title } );
475
- },
476
- receiveEntityRecords,
477
- resetEditorBlocksWithoutUndoLevel( blocks ) {
478
- resetEditorBlocks( blocks, {
479
- __unstableShouldCreateUndoLevel: false,
480
- } );
481
- },
482
- switchMode( mode ) {
483
- switchEditorMode( mode );
484
- },
485
- onInsertBlockAfter( blocks ) {
486
- insertBlocks( blocks, undefined, undefined, false );
487
- },
488
- onClearPostTitleSelection() {
489
- togglePostTitleSelection( false );
490
- },
491
- replaceBlock,
492
- };
493
- } ),
494
- ] )( NativeEditorProvider );
495
-
496
- export default ComposedNativeProvider;
497
- export { ComposedNativeProvider as ExperimentalEditorProvider };
@@ -1,48 +0,0 @@
1
- /**
2
- * WordPress dependencies
3
- */
4
- import { useMemo } from '@wordpress/element';
5
- import { useSelect } from '@wordpress/data';
6
- import { store as coreStore } from '@wordpress/core-data';
7
-
8
- /**
9
- * Internal dependencies
10
- */
11
- import useBlockEditorSettings from './use-block-editor-settings.js';
12
- import { store as editorStore } from '../../store';
13
-
14
- const EMPTY_BLOCKS_LIST = [];
15
-
16
- function useNativeBlockEditorSettings( settings, postType, postId ) {
17
- const editorSettings = useBlockEditorSettings( settings, postType, postId );
18
- const supportReusableBlock = settings.capabilities?.reusableBlock === true;
19
-
20
- const { reusableBlocks, isTitleSelected } = useSelect(
21
- ( select ) => {
22
- return {
23
- reusableBlocks: supportReusableBlock
24
- ? select( coreStore ).getEntityRecords(
25
- 'postType',
26
- 'wp_block',
27
- // Unbounded queries are not supported on native so as a workaround, we set per_page with the maximum value that native version can handle.
28
- // Related issue: https://github.com/wordpress-mobile/gutenberg-mobile/issues/2661
29
- { per_page: 100 }
30
- )
31
- : EMPTY_BLOCKS_LIST,
32
- isTitleSelected: select( editorStore ).isPostTitleSelected(),
33
- };
34
- },
35
- [ supportReusableBlock ]
36
- );
37
-
38
- return useMemo(
39
- () => ( {
40
- ...editorSettings,
41
- __experimentalReusableBlocks: reusableBlocks,
42
- __experimentalShouldInsertAtTheTop: isTitleSelected,
43
- } ),
44
- [ editorSettings, reusableBlocks, isTitleSelected ]
45
- );
46
- }
47
-
48
- export default useNativeBlockEditorSettings;
@@ -1,36 +0,0 @@
1
- /**
2
- * WordPress dependencies
3
- */
4
- import { useSelect } from '@wordpress/data';
5
- import { store as coreStore } from '@wordpress/core-data';
6
- import { decodeEntities } from '@wordpress/html-entities';
7
- import { __ } from '@wordpress/i18n';
8
-
9
- /**
10
- * Internal dependencies
11
- */
12
- import PostPanelRow from '../post-panel-row';
13
- import { store as editorStore } from '../../store';
14
- import { unlock } from '../../lock-unlock';
15
-
16
- export default function RevisionAuthorPanel() {
17
- const authorName = useSelect( ( select ) => {
18
- const { getCurrentRevision } = unlock( select( editorStore ) );
19
- const revision = getCurrentRevision();
20
- if ( ! revision?.author ) {
21
- return null;
22
- }
23
- const author = select( coreStore ).getUser( revision.author );
24
- return author?.name;
25
- }, [] );
26
-
27
- if ( ! authorName ) {
28
- return null;
29
- }
30
-
31
- return (
32
- <PostPanelRow label={ __( 'Author' ) }>
33
- { decodeEntities( authorName ) }
34
- </PostPanelRow>
35
- );
36
- }
@@ -1,36 +0,0 @@
1
- /**
2
- * WordPress dependencies
3
- */
4
- import { __experimentalText as WCText } from '@wordpress/components';
5
- import { useSelect } from '@wordpress/data';
6
- import { __, sprintf } from '@wordpress/i18n';
7
- import { humanTimeDiff } from '@wordpress/date';
8
-
9
- /**
10
- * Internal dependencies
11
- */
12
- import { store as editorStore } from '../../store';
13
- import { unlock } from '../../lock-unlock';
14
-
15
- export default function RevisionCreatedPanel() {
16
- const date = useSelect( ( select ) => {
17
- const { getCurrentRevision } = unlock( select( editorStore ) );
18
- return getCurrentRevision()?.date;
19
- }, [] );
20
-
21
- if ( ! date ) {
22
- return null;
23
- }
24
-
25
- return (
26
- <div className="editor-post-last-edited-panel">
27
- <WCText>
28
- { sprintf(
29
- // translators: %s: Human-readable time difference, e.g. "2 days ago".
30
- __( 'Created %s.' ),
31
- humanTimeDiff( date )
32
- ) }
33
- </WCText>
34
- </div>
35
- );
36
- }
@@ -1,3 +0,0 @@
1
- export default function TemplatePartMenuItems() {
2
- return null;
3
- }
File without changes
@@ -1,16 +0,0 @@
1
- /**
2
- * WordPress dependencies
3
- */
4
- import '@wordpress/block-editor';
5
- import '@wordpress/core-data';
6
- import '@wordpress/rich-text';
7
-
8
- /**
9
- * Internal dependencies
10
- */
11
- import './hooks';
12
-
13
- export { store } from './store';
14
- export * from './components';
15
- export * from './utils';
16
- export * from './private-apis';
@@ -1,33 +0,0 @@
1
- /**
2
- * WordPress dependencies
3
- */
4
- import * as interfaceApis from '@wordpress/interface';
5
-
6
- /**
7
- * Internal dependencies
8
- */
9
- import VisualEditor from './components/visual-editor';
10
- import { lock } from './lock-unlock';
11
- import { EntitiesSavedStatesExtensible } from './components/entities-saved-states';
12
- import useBlockEditorSettings from './components/provider/use-block-editor-settings';
13
- import PluginPostExcerpt from './components/post-excerpt/plugin';
14
- import PreferencesModal from './components/preferences-modal';
15
- import ToolsMoreMenuGroup from './components/more-menu/tools-more-menu-group';
16
- import ViewMoreMenuGroup from './components/more-menu/view-more-menu-group';
17
-
18
- const { store: interfaceStore, ...remainingInterfaceApis } = interfaceApis;
19
-
20
- export const privateApis = {};
21
- lock( privateApis, {
22
- VisualEditor,
23
- EntitiesSavedStatesExtensible,
24
- PluginPostExcerpt,
25
- PreferencesModal,
26
- ToolsMoreMenuGroup,
27
- ViewMoreMenuGroup,
28
-
29
- // This is a temporary private API while we're updating the site editor to use EditorProvider.
30
- useBlockEditorSettings,
31
- interfaceStore,
32
- ...remainingInterfaceApis,
33
- } );
@@ -1,27 +0,0 @@
1
- /**
2
- * WordPress dependencies
3
- */
4
- import RNReactNativeGutenbergBridge from '@wordpress/react-native-bridge';
5
-
6
- export * from './actions.js';
7
-
8
- /**
9
- * Returns an action object that enables or disables post title selection.
10
- *
11
- * @param {boolean} [isSelected=true] Whether post title is currently selected.
12
- *
13
- * @return {Object} Action object.
14
- */
15
- export function togglePostTitleSelection( isSelected = true ) {
16
- return {
17
- type: 'TOGGLE_POST_TITLE_SELECTION',
18
- isSelected,
19
- };
20
- }
21
-
22
- /**
23
- * Action that autosaves the post.
24
- */
25
- export const autosave = () => () => {
26
- RNReactNativeGutenbergBridge.editorDidAutosave();
27
- };