@wordpress/editor 14.44.0 → 14.45.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 (363) hide show
  1. package/CHANGELOG.md +2 -0
  2. package/build/components/collab-sidebar/{comment-menu-item.cjs → add-note-menu-item.cjs} +17 -14
  3. package/build/components/collab-sidebar/add-note-menu-item.cjs.map +7 -0
  4. package/build/components/collab-sidebar/add-note.cjs +100 -0
  5. package/build/components/collab-sidebar/add-note.cjs.map +7 -0
  6. package/build/components/collab-sidebar/board-store.cjs +106 -0
  7. package/build/components/collab-sidebar/board-store.cjs.map +7 -0
  8. package/build/components/collab-sidebar/floating-container.cjs +63 -0
  9. package/build/components/collab-sidebar/floating-container.cjs.map +7 -0
  10. package/build/components/collab-sidebar/hooks.cjs +105 -140
  11. package/build/components/collab-sidebar/hooks.cjs.map +3 -3
  12. package/build/components/collab-sidebar/index.cjs +28 -90
  13. package/build/components/collab-sidebar/index.cjs.map +3 -3
  14. package/build/components/collab-sidebar/{comment-author-info.cjs → note-byline.cjs} +13 -9
  15. package/build/components/collab-sidebar/note-byline.cjs.map +7 -0
  16. package/build/components/collab-sidebar/note-card.cjs +58 -0
  17. package/build/components/collab-sidebar/note-card.cjs.map +7 -0
  18. package/build/components/collab-sidebar/{comment-form.cjs → note-form.cjs} +46 -45
  19. package/build/components/collab-sidebar/note-form.cjs.map +7 -0
  20. package/build/components/collab-sidebar/{comment-indicator-toolbar.cjs → note-indicator-toolbar.cjs} +31 -27
  21. package/build/components/collab-sidebar/note-indicator-toolbar.cjs.map +7 -0
  22. package/build/components/collab-sidebar/note-thread.cjs +321 -0
  23. package/build/components/collab-sidebar/note-thread.cjs.map +7 -0
  24. package/build/components/collab-sidebar/note.cjs +207 -0
  25. package/build/components/collab-sidebar/note.cjs.map +7 -0
  26. package/build/components/collab-sidebar/notes.cjs +237 -0
  27. package/build/components/collab-sidebar/notes.cjs.map +7 -0
  28. package/build/components/collab-sidebar/utils.cjs +80 -14
  29. package/build/components/collab-sidebar/utils.cjs.map +2 -2
  30. package/build/components/collaborators-presence/avatar/component.cjs.map +1 -1
  31. package/build/components/collaborators-presence/index.cjs +3 -3
  32. package/build/components/collaborators-presence/index.cjs.map +2 -2
  33. package/build/components/collaborators-presence/list.cjs +3 -3
  34. package/build/components/collaborators-presence/list.cjs.map +2 -2
  35. package/build/components/document-bar/index.cjs.map +3 -3
  36. package/build/components/error-boundary/index.cjs.map +3 -3
  37. package/build/components/list-view-sidebar/list-view-outline.cjs.map +3 -3
  38. package/build/components/media/media-editor-modal.cjs +93 -0
  39. package/build/components/media/media-editor-modal.cjs.map +7 -0
  40. package/build/components/media-categories/index.cjs +1 -1
  41. package/build/components/media-categories/index.cjs.map +1 -1
  42. package/build/components/more-menu/index.cjs +4 -3
  43. package/build/components/more-menu/index.cjs.map +2 -2
  44. package/build/components/post-actions/set-as-homepage.cjs.map +3 -3
  45. package/build/components/post-actions/set-as-posts-page.cjs.map +3 -3
  46. package/build/components/post-card-panel/index.cjs +2 -2
  47. package/build/components/post-card-panel/index.cjs.map +3 -3
  48. package/build/components/post-content-information/index.cjs.map +3 -3
  49. package/build/components/post-excerpt/panel.cjs.map +3 -3
  50. package/build/components/post-last-edited-panel/index.cjs.map +3 -3
  51. package/build/components/post-preview-button/index.cjs +3 -2
  52. package/build/components/post-preview-button/index.cjs.map +2 -2
  53. package/build/components/post-publish-button/index.cjs +2 -2
  54. package/build/components/post-publish-button/index.cjs.map +2 -2
  55. package/build/components/post-publish-button/label.cjs +4 -2
  56. package/build/components/post-publish-button/label.cjs.map +2 -2
  57. package/build/components/post-publish-panel/maybe-upload-media.cjs +1 -1
  58. package/build/components/post-publish-panel/maybe-upload-media.cjs.map +1 -1
  59. package/build/components/post-publish-panel/postpublish.cjs +3 -2
  60. package/build/components/post-publish-panel/postpublish.cjs.map +2 -2
  61. package/build/components/post-revisions-panel/index.cjs +2 -2
  62. package/build/components/post-revisions-panel/index.cjs.map +2 -2
  63. package/build/components/post-revisions-preview/diff-markers.cjs +1 -1
  64. package/build/components/post-revisions-preview/diff-markers.cjs.map +2 -2
  65. package/build/components/post-revisions-preview/revisions-slider.cjs +1 -0
  66. package/build/components/post-revisions-preview/revisions-slider.cjs.map +2 -2
  67. package/build/components/post-saved-state/index.cjs +4 -1
  68. package/build/components/post-saved-state/index.cjs.map +2 -2
  69. package/build/components/post-text-editor/index.cjs +3 -4
  70. package/build/components/post-text-editor/index.cjs.map +2 -2
  71. package/build/components/preview-dropdown/index.cjs +3 -2
  72. package/build/components/preview-dropdown/index.cjs.map +2 -2
  73. package/build/components/provider/index.cjs +3 -1
  74. package/build/components/provider/index.cjs.map +3 -3
  75. package/build/components/provider/use-block-editor-settings.cjs +7 -1
  76. package/build/components/provider/use-block-editor-settings.cjs.map +3 -3
  77. package/build/components/provider/use-upload-save-lock.cjs +2 -12
  78. package/build/components/provider/use-upload-save-lock.cjs.map +2 -2
  79. package/build/components/resizable-editor/resize-handle.cjs +2 -1
  80. package/build/components/resizable-editor/resize-handle.cjs.map +2 -2
  81. package/build/components/revision-created-panel/index.cjs.map +3 -3
  82. package/build/components/site-discussion/index.cjs.map +2 -2
  83. package/build/components/style-book/constants.cjs +1 -1
  84. package/build/components/style-book/constants.cjs.map +1 -1
  85. package/build/components/style-book/index.cjs +1 -1
  86. package/build/components/style-book/index.cjs.map +1 -1
  87. package/build/components/template-actions-panel/classic-theme-content.cjs.map +2 -2
  88. package/build/components/template-part-menu-items/convert-to-regular.cjs +54 -11
  89. package/build/components/template-part-menu-items/convert-to-regular.cjs.map +3 -3
  90. package/build/components/visual-editor/index.cjs +5 -22
  91. package/build/components/visual-editor/index.cjs.map +2 -2
  92. package/build/store/private-actions.cjs +0 -8
  93. package/build/store/private-actions.cjs.map +2 -2
  94. package/build/store/private-selectors.cjs +0 -5
  95. package/build/store/private-selectors.cjs.map +2 -2
  96. package/build/store/reducer.cjs +0 -10
  97. package/build/store/reducer.cjs.map +2 -2
  98. package/build/utils/media-finalize/index.cjs +3 -2
  99. package/build/utils/media-finalize/index.cjs.map +2 -2
  100. package/build/utils/media-upload/index.cjs +14 -25
  101. package/build/utils/media-upload/index.cjs.map +2 -2
  102. package/build-module/components/collab-sidebar/{comment-menu-item.mjs → add-note-menu-item.mjs} +10 -11
  103. package/build-module/components/collab-sidebar/add-note-menu-item.mjs.map +7 -0
  104. package/build-module/components/collab-sidebar/add-note.mjs +78 -0
  105. package/build-module/components/collab-sidebar/add-note.mjs.map +7 -0
  106. package/build-module/components/collab-sidebar/board-store.mjs +81 -0
  107. package/build-module/components/collab-sidebar/board-store.mjs.map +7 -0
  108. package/build-module/components/collab-sidebar/floating-container.mjs +28 -0
  109. package/build-module/components/collab-sidebar/floating-container.mjs.map +7 -0
  110. package/build-module/components/collab-sidebar/hooks.mjs +105 -144
  111. package/build-module/components/collab-sidebar/hooks.mjs.map +2 -2
  112. package/build-module/components/collab-sidebar/index.mjs +29 -95
  113. package/build-module/components/collab-sidebar/index.mjs.map +2 -2
  114. package/build-module/components/collab-sidebar/{comment-author-info.mjs → note-byline.mjs} +7 -7
  115. package/build-module/components/collab-sidebar/note-byline.mjs.map +7 -0
  116. package/build-module/components/collab-sidebar/note-card.mjs +33 -0
  117. package/build-module/components/collab-sidebar/note-card.mjs.map +7 -0
  118. package/build-module/components/collab-sidebar/note-form.mjs +84 -0
  119. package/build-module/components/collab-sidebar/note-form.mjs.map +7 -0
  120. package/build-module/components/collab-sidebar/{comment-indicator-toolbar.mjs → note-indicator-toolbar.mjs} +25 -29
  121. package/build-module/components/collab-sidebar/note-indicator-toolbar.mjs.map +7 -0
  122. package/build-module/components/collab-sidebar/note-thread.mjs +289 -0
  123. package/build-module/components/collab-sidebar/note-thread.mjs.map +7 -0
  124. package/build-module/components/collab-sidebar/note.mjs +176 -0
  125. package/build-module/components/collab-sidebar/note.mjs.map +7 -0
  126. package/build-module/components/collab-sidebar/notes.mjs +215 -0
  127. package/build-module/components/collab-sidebar/notes.mjs.map +7 -0
  128. package/build-module/components/collab-sidebar/utils.mjs +76 -10
  129. package/build-module/components/collab-sidebar/utils.mjs.map +2 -2
  130. package/build-module/components/collaborators-presence/avatar/component.mjs.map +1 -1
  131. package/build-module/components/collaborators-presence/index.mjs +3 -3
  132. package/build-module/components/collaborators-presence/index.mjs.map +2 -2
  133. package/build-module/components/collaborators-presence/list.mjs +3 -3
  134. package/build-module/components/collaborators-presence/list.mjs.map +2 -2
  135. package/build-module/components/document-bar/index.mjs +3 -3
  136. package/build-module/components/document-bar/index.mjs.map +2 -2
  137. package/build-module/components/error-boundary/index.mjs +2 -2
  138. package/build-module/components/error-boundary/index.mjs.map +2 -2
  139. package/build-module/components/list-view-sidebar/list-view-outline.mjs +5 -5
  140. package/build-module/components/list-view-sidebar/list-view-outline.mjs.map +2 -2
  141. package/build-module/components/media/media-editor-modal.mjs +62 -0
  142. package/build-module/components/media/media-editor-modal.mjs.map +7 -0
  143. package/build-module/components/media-categories/index.mjs +1 -1
  144. package/build-module/components/media-categories/index.mjs.map +1 -1
  145. package/build-module/components/more-menu/index.mjs +4 -8
  146. package/build-module/components/more-menu/index.mjs.map +2 -2
  147. package/build-module/components/post-actions/set-as-homepage.mjs +2 -2
  148. package/build-module/components/post-actions/set-as-homepage.mjs.map +2 -2
  149. package/build-module/components/post-actions/set-as-posts-page.mjs +2 -2
  150. package/build-module/components/post-actions/set-as-posts-page.mjs.map +2 -2
  151. package/build-module/components/post-card-panel/index.mjs +5 -5
  152. package/build-module/components/post-card-panel/index.mjs.map +2 -2
  153. package/build-module/components/post-content-information/index.mjs +2 -2
  154. package/build-module/components/post-content-information/index.mjs.map +2 -2
  155. package/build-module/components/post-excerpt/panel.mjs +2 -2
  156. package/build-module/components/post-excerpt/panel.mjs.map +2 -2
  157. package/build-module/components/post-last-edited-panel/index.mjs +2 -2
  158. package/build-module/components/post-last-edited-panel/index.mjs.map +2 -2
  159. package/build-module/components/post-preview-button/index.mjs +3 -2
  160. package/build-module/components/post-preview-button/index.mjs.map +2 -2
  161. package/build-module/components/post-publish-button/index.mjs +2 -2
  162. package/build-module/components/post-publish-button/index.mjs.map +2 -2
  163. package/build-module/components/post-publish-button/label.mjs +4 -2
  164. package/build-module/components/post-publish-button/label.mjs.map +2 -2
  165. package/build-module/components/post-publish-panel/maybe-upload-media.mjs +1 -1
  166. package/build-module/components/post-publish-panel/maybe-upload-media.mjs.map +1 -1
  167. package/build-module/components/post-publish-panel/postpublish.mjs +3 -3
  168. package/build-module/components/post-publish-panel/postpublish.mjs.map +2 -2
  169. package/build-module/components/post-revisions-panel/index.mjs +2 -2
  170. package/build-module/components/post-revisions-panel/index.mjs.map +2 -2
  171. package/build-module/components/post-revisions-preview/diff-markers.mjs +1 -1
  172. package/build-module/components/post-revisions-preview/diff-markers.mjs.map +2 -2
  173. package/build-module/components/post-revisions-preview/revisions-slider.mjs +1 -0
  174. package/build-module/components/post-revisions-preview/revisions-slider.mjs.map +2 -2
  175. package/build-module/components/post-saved-state/index.mjs +4 -1
  176. package/build-module/components/post-saved-state/index.mjs.map +2 -2
  177. package/build-module/components/post-text-editor/index.mjs +2 -3
  178. package/build-module/components/post-text-editor/index.mjs.map +2 -2
  179. package/build-module/components/preview-dropdown/index.mjs +2 -2
  180. package/build-module/components/preview-dropdown/index.mjs.map +2 -2
  181. package/build-module/components/provider/index.mjs +3 -1
  182. package/build-module/components/provider/index.mjs.map +2 -2
  183. package/build-module/components/provider/use-block-editor-settings.mjs +7 -1
  184. package/build-module/components/provider/use-block-editor-settings.mjs.map +2 -2
  185. package/build-module/components/provider/use-upload-save-lock.mjs +2 -12
  186. package/build-module/components/provider/use-upload-save-lock.mjs.map +2 -2
  187. package/build-module/components/resizable-editor/resize-handle.mjs +2 -5
  188. package/build-module/components/resizable-editor/resize-handle.mjs.map +2 -2
  189. package/build-module/components/revision-created-panel/index.mjs +2 -2
  190. package/build-module/components/revision-created-panel/index.mjs.map +2 -2
  191. package/build-module/components/site-discussion/index.mjs +2 -2
  192. package/build-module/components/site-discussion/index.mjs.map +2 -2
  193. package/build-module/components/style-book/constants.mjs +1 -1
  194. package/build-module/components/style-book/constants.mjs.map +1 -1
  195. package/build-module/components/style-book/index.mjs +1 -1
  196. package/build-module/components/style-book/index.mjs.map +1 -1
  197. package/build-module/components/template-actions-panel/classic-theme-content.mjs +2 -2
  198. package/build-module/components/template-actions-panel/classic-theme-content.mjs.map +2 -2
  199. package/build-module/components/template-part-menu-items/convert-to-regular.mjs +60 -14
  200. package/build-module/components/template-part-menu-items/convert-to-regular.mjs.map +2 -2
  201. package/build-module/components/visual-editor/index.mjs +5 -22
  202. package/build-module/components/visual-editor/index.mjs.map +2 -2
  203. package/build-module/store/private-actions.mjs +0 -7
  204. package/build-module/store/private-actions.mjs.map +2 -2
  205. package/build-module/store/private-selectors.mjs +0 -4
  206. package/build-module/store/private-selectors.mjs.map +2 -2
  207. package/build-module/store/reducer.mjs +0 -9
  208. package/build-module/store/reducer.mjs.map +2 -2
  209. package/build-module/utils/media-finalize/index.mjs +3 -2
  210. package/build-module/utils/media-finalize/index.mjs.map +2 -2
  211. package/build-module/utils/media-upload/index.mjs +14 -25
  212. package/build-module/utils/media-upload/index.mjs.map +2 -2
  213. package/build-style/style-rtl.css +397 -171
  214. package/build-style/style.css +397 -171
  215. package/build-types/components/collab-sidebar/add-note-menu-item.d.ts +5 -0
  216. package/build-types/components/collab-sidebar/add-note-menu-item.d.ts.map +1 -0
  217. package/build-types/components/collab-sidebar/add-note.d.ts +6 -0
  218. package/build-types/components/collab-sidebar/add-note.d.ts.map +1 -0
  219. package/build-types/components/collab-sidebar/board-store.d.ts +9 -0
  220. package/build-types/components/collab-sidebar/board-store.d.ts.map +1 -0
  221. package/build-types/components/collab-sidebar/floating-container.d.ts +8 -0
  222. package/build-types/components/collab-sidebar/floating-container.d.ts.map +1 -0
  223. package/build-types/components/collab-sidebar/hooks.d.ts +13 -22
  224. package/build-types/components/collab-sidebar/hooks.d.ts.map +1 -1
  225. package/build-types/components/collab-sidebar/index.d.ts.map +1 -1
  226. package/build-types/components/collab-sidebar/note-byline.d.ts +7 -0
  227. package/build-types/components/collab-sidebar/note-byline.d.ts.map +1 -0
  228. package/build-types/components/collab-sidebar/note-card.d.ts +8 -0
  229. package/build-types/components/collab-sidebar/note-card.d.ts.map +1 -0
  230. package/build-types/components/collab-sidebar/note-form.d.ts +7 -0
  231. package/build-types/components/collab-sidebar/note-form.d.ts.map +1 -0
  232. package/build-types/components/collab-sidebar/note-indicator-toolbar.d.ts +5 -0
  233. package/build-types/components/collab-sidebar/note-indicator-toolbar.d.ts.map +1 -0
  234. package/build-types/components/collab-sidebar/note-thread.d.ts +11 -0
  235. package/build-types/components/collab-sidebar/note-thread.d.ts.map +1 -0
  236. package/build-types/components/collab-sidebar/note.d.ts +9 -0
  237. package/build-types/components/collab-sidebar/note.d.ts.map +1 -0
  238. package/build-types/components/collab-sidebar/notes.d.ts +7 -0
  239. package/build-types/components/collab-sidebar/notes.d.ts.map +1 -0
  240. package/build-types/components/collab-sidebar/utils.d.ts +41 -17
  241. package/build-types/components/collab-sidebar/utils.d.ts.map +1 -1
  242. package/build-types/components/media/media-editor-modal.d.ts +11 -0
  243. package/build-types/components/media/media-editor-modal.d.ts.map +1 -0
  244. package/build-types/components/more-menu/index.d.ts.map +1 -1
  245. package/build-types/components/post-preview-button/index.d.ts.map +1 -1
  246. package/build-types/components/post-publish-button/index.d.ts.map +1 -1
  247. package/build-types/components/post-publish-button/label.d.ts.map +1 -1
  248. package/build-types/components/post-revisions-preview/revisions-slider.d.ts.map +1 -1
  249. package/build-types/components/post-saved-state/index.d.ts.map +1 -1
  250. package/build-types/components/provider/index.d.ts.map +1 -1
  251. package/build-types/components/provider/use-block-editor-settings.d.ts.map +1 -1
  252. package/build-types/components/provider/use-upload-save-lock.d.ts +0 -2
  253. package/build-types/components/provider/use-upload-save-lock.d.ts.map +1 -1
  254. package/build-types/components/resizable-editor/resize-handle.d.ts.map +1 -1
  255. package/build-types/components/style-book/constants.d.ts +1 -1
  256. package/build-types/components/style-book/constants.d.ts.map +1 -1
  257. package/build-types/components/template-part-menu-items/convert-to-regular.d.ts.map +1 -1
  258. package/build-types/components/visual-editor/index.d.ts.map +1 -1
  259. package/build-types/store/private-actions.d.ts +0 -7
  260. package/build-types/store/private-actions.d.ts.map +1 -1
  261. package/build-types/store/private-selectors.d.ts +0 -7
  262. package/build-types/store/private-selectors.d.ts.map +1 -1
  263. package/build-types/store/reducer.d.ts +0 -10
  264. package/build-types/store/reducer.d.ts.map +1 -1
  265. package/build-types/utils/media-finalize/index.d.ts +1 -1
  266. package/build-types/utils/media-finalize/index.d.ts.map +1 -1
  267. package/build-types/utils/media-upload/index.d.ts.map +1 -1
  268. package/package.json +46 -46
  269. package/src/components/collab-sidebar/README.md +117 -0
  270. package/src/components/collab-sidebar/{comment-menu-item.js → add-note-menu-item.js} +8 -10
  271. package/src/components/collab-sidebar/{add-comment.js → add-note.js} +26 -49
  272. package/src/components/collab-sidebar/board-store.js +85 -0
  273. package/src/components/collab-sidebar/floating-container.js +30 -0
  274. package/src/components/collab-sidebar/hooks.js +130 -178
  275. package/src/components/collab-sidebar/index.js +35 -106
  276. package/src/components/collab-sidebar/{comment-author-info.js → note-byline.js} +5 -6
  277. package/src/components/collab-sidebar/note-card.js +36 -0
  278. package/src/components/collab-sidebar/{comment-form.js → note-form.js} +29 -40
  279. package/src/components/collab-sidebar/{comment-indicator-toolbar.js → note-indicator-toolbar.js} +29 -32
  280. package/src/components/collab-sidebar/note-thread.js +331 -0
  281. package/src/components/collab-sidebar/note.js +209 -0
  282. package/src/components/collab-sidebar/notes.js +276 -0
  283. package/src/components/collab-sidebar/style.scss +21 -11
  284. package/src/components/collab-sidebar/test/utils.js +155 -0
  285. package/src/components/collab-sidebar/utils.js +125 -19
  286. package/src/components/collaborators-presence/avatar/component.tsx +1 -1
  287. package/src/components/collaborators-presence/styles/collaborators-list.scss +1 -1
  288. package/src/components/collaborators-presence/styles/collaborators-presence.scss +1 -1
  289. package/src/components/document-bar/index.js +4 -4
  290. package/src/components/document-outline/style.scss +1 -1
  291. package/src/components/error-boundary/index.js +3 -3
  292. package/src/components/list-view-sidebar/list-view-outline.js +6 -6
  293. package/src/components/media/media-editor-modal.js +95 -0
  294. package/src/components/media-categories/index.js +1 -1
  295. package/src/components/more-menu/index.js +4 -8
  296. package/src/components/post-actions/set-as-homepage.js +2 -2
  297. package/src/components/post-actions/set-as-posts-page.js +2 -2
  298. package/src/components/post-card-panel/index.js +7 -7
  299. package/src/components/post-content-information/index.js +3 -3
  300. package/src/components/post-excerpt/panel.js +3 -3
  301. package/src/components/post-last-edited-panel/index.js +3 -3
  302. package/src/components/post-preview-button/index.js +3 -2
  303. package/src/components/post-publish-button/index.js +6 -5
  304. package/src/components/post-publish-button/label.js +3 -1
  305. package/src/components/post-publish-panel/maybe-upload-media.js +1 -1
  306. package/src/components/post-publish-panel/postpublish.js +2 -2
  307. package/src/components/post-publish-panel/test/__snapshots__/index.js.snap +10 -16
  308. package/src/components/post-revisions-panel/index.js +3 -3
  309. package/src/components/post-revisions-preview/diff-markers.js +1 -1
  310. package/src/components/post-revisions-preview/revisions-slider.js +1 -0
  311. package/src/components/post-revisions-preview/style.scss +1 -1
  312. package/src/components/post-saved-state/index.js +4 -1
  313. package/src/components/post-saved-state/test/__snapshots__/index.js.snap +0 -1
  314. package/src/components/post-text-editor/index.js +3 -3
  315. package/src/components/preview-dropdown/index.js +2 -2
  316. package/src/components/provider/index.js +4 -0
  317. package/src/components/provider/use-block-editor-settings.js +10 -0
  318. package/src/components/provider/use-upload-save-lock.js +2 -17
  319. package/src/components/resizable-editor/resize-handle.js +2 -5
  320. package/src/components/revision-created-panel/index.js +3 -3
  321. package/src/components/site-discussion/index.js +3 -3
  322. package/src/components/style-book/constants.ts +1 -1
  323. package/src/components/style-book/index.js +1 -1
  324. package/src/components/template-actions-panel/classic-theme-content.js +3 -3
  325. package/src/components/template-actions-panel/style.scss +1 -1
  326. package/src/components/template-part-menu-items/convert-to-regular.js +74 -12
  327. package/src/components/visual-editor/index.js +2 -29
  328. package/src/store/private-actions.js +0 -13
  329. package/src/store/private-selectors.js +0 -10
  330. package/src/store/reducer.js +0 -16
  331. package/src/utils/media-finalize/index.js +2 -1
  332. package/src/utils/media-finalize/test/index.js +25 -1
  333. package/src/utils/media-upload/index.js +26 -29
  334. package/build/components/collab-sidebar/add-comment.cjs +0 -129
  335. package/build/components/collab-sidebar/add-comment.cjs.map +0 -7
  336. package/build/components/collab-sidebar/comment-author-info.cjs.map +0 -7
  337. package/build/components/collab-sidebar/comment-form.cjs.map +0 -7
  338. package/build/components/collab-sidebar/comment-indicator-toolbar.cjs.map +0 -7
  339. package/build/components/collab-sidebar/comment-menu-item.cjs.map +0 -7
  340. package/build/components/collab-sidebar/comments.cjs +0 -816
  341. package/build/components/collab-sidebar/comments.cjs.map +0 -7
  342. package/build-module/components/collab-sidebar/add-comment.mjs +0 -100
  343. package/build-module/components/collab-sidebar/add-comment.mjs.map +0 -7
  344. package/build-module/components/collab-sidebar/comment-author-info.mjs.map +0 -7
  345. package/build-module/components/collab-sidebar/comment-form.mjs +0 -90
  346. package/build-module/components/collab-sidebar/comment-form.mjs.map +0 -7
  347. package/build-module/components/collab-sidebar/comment-indicator-toolbar.mjs.map +0 -7
  348. package/build-module/components/collab-sidebar/comment-menu-item.mjs.map +0 -7
  349. package/build-module/components/collab-sidebar/comments.mjs +0 -799
  350. package/build-module/components/collab-sidebar/comments.mjs.map +0 -7
  351. package/build-types/components/collab-sidebar/add-comment.d.ts +0 -10
  352. package/build-types/components/collab-sidebar/add-comment.d.ts.map +0 -1
  353. package/build-types/components/collab-sidebar/comment-author-info.d.ts +0 -8
  354. package/build-types/components/collab-sidebar/comment-author-info.d.ts.map +0 -1
  355. package/build-types/components/collab-sidebar/comment-form.d.ts +0 -11
  356. package/build-types/components/collab-sidebar/comment-form.d.ts.map +0 -1
  357. package/build-types/components/collab-sidebar/comment-indicator-toolbar.d.ts +0 -6
  358. package/build-types/components/collab-sidebar/comment-indicator-toolbar.d.ts.map +0 -1
  359. package/build-types/components/collab-sidebar/comment-menu-item.d.ts +0 -6
  360. package/build-types/components/collab-sidebar/comment-menu-item.d.ts.map +0 -1
  361. package/build-types/components/collab-sidebar/comments.d.ts +0 -12
  362. package/build-types/components/collab-sidebar/comments.d.ts.map +0 -1
  363. package/src/components/collab-sidebar/comments.js +0 -985
@@ -1,21 +1,12 @@
1
- /**
2
- * External dependencies
3
- */
4
- import {
5
- useFloating,
6
- offset as offsetMiddleware,
7
- autoUpdate,
8
- } from '@floating-ui/react-dom';
9
-
10
1
  /**
11
2
  * WordPress dependencies
12
3
  */
13
4
  import { __ } from '@wordpress/i18n';
14
5
  import {
6
+ useState,
15
7
  useEffect,
16
8
  useMemo,
17
- useCallback,
18
- useReducer,
9
+ useSyncExternalStore,
19
10
  } from '@wordpress/element';
20
11
  import { useEntityRecords, store as coreStore } from '@wordpress/core-data';
21
12
  import { useDispatch, useRegistry, useSelect } from '@wordpress/data';
@@ -24,6 +15,7 @@ import {
24
15
  privateApis as blockEditorPrivateApis,
25
16
  } from '@wordpress/block-editor';
26
17
  import { store as noticesStore } from '@wordpress/notices';
18
+ import { getScrollContainer } from '@wordpress/dom';
27
19
  import { decodeEntities } from '@wordpress/html-entities';
28
20
  import { store as interfaceStore } from '@wordpress/interface';
29
21
 
@@ -33,16 +25,12 @@ import { store as interfaceStore } from '@wordpress/interface';
33
25
  import { store as editorStore } from '../../store';
34
26
  import { FLOATING_NOTES_SIDEBAR } from './constants';
35
27
  import { unlock } from '../../lock-unlock';
36
- import { noop } from './utils';
28
+ import { createBoardStore } from './board-store';
29
+ import { calculateNotePositions } from './utils';
37
30
 
38
- const { useBlockElement, cleanEmptyObject } = unlock( blockEditorPrivateApis );
39
-
40
- export function useBlockComments( postId ) {
41
- const [ commentLastUpdated, reflowComments ] = useReducer(
42
- () => Date.now(),
43
- 0
44
- );
31
+ const { cleanEmptyObject } = unlock( blockEditorPrivateApis );
45
32
 
33
+ export function useNoteThreads( postId ) {
46
34
  const queryArgs = {
47
35
  post: postId,
48
36
  type: 'note',
@@ -65,112 +53,89 @@ export function useBlockComments( postId ) {
65
53
  };
66
54
  }, [] );
67
55
 
68
- // Process comments to build the tree structure.
69
- const { resultComments, unresolvedSortedThreads } = useMemo( () => {
56
+ // Process notes to build the tree structure.
57
+ const { notes, unresolvedNotes } = useMemo( () => {
70
58
  if ( ! threads || threads.length === 0 ) {
71
- return { resultComments: [], unresolvedSortedThreads: [] };
59
+ return { notes: [], unresolvedNotes: [] };
72
60
  }
73
61
 
74
- const blocksWithComments = clientIds.reduce( ( results, clientId ) => {
75
- const commentId = getBlockAttributes( clientId )?.metadata?.noteId;
76
- if ( commentId ) {
77
- results[ clientId ] = commentId;
62
+ // Single pass over clientIds: build clientId->noteId map AND reverse lookup.
63
+ const blocksWithNotes = {};
64
+ const clientIdByNoteId = new Map();
65
+ for ( const clientId of clientIds ) {
66
+ const noteId = getBlockAttributes( clientId )?.metadata?.noteId;
67
+ if ( noteId ) {
68
+ const key = String( noteId );
69
+ blocksWithNotes[ clientId ] = key;
70
+ clientIdByNoteId.set( key, clientId );
78
71
  }
79
- return results;
80
- }, {} );
81
-
82
- // Create a compare to store the references to all objects by id.
83
- const compare = {};
84
- const result = [];
85
-
86
- // Create a reverse map for faster lookup.
87
- const commentIdToBlockClientId = Object.keys(
88
- blocksWithComments
89
- ).reduce( ( mapping, clientId ) => {
90
- mapping[ blocksWithComments[ clientId ] ] = clientId;
91
- return mapping;
92
- }, {} );
93
-
94
- // Initialize each object with an empty `reply` array and map blockClientId.
95
- threads.forEach( ( item ) => {
96
- const itemBlock = commentIdToBlockClientId[ item.id ];
97
-
98
- compare[ item.id ] = {
72
+ }
73
+
74
+ // Materialize threads; collect roots; replies linked in a second pass
75
+ // via unshift to invert order (matches prior reverse semantics).
76
+ const threadsById = new Map();
77
+ const rootThreads = [];
78
+ for ( const item of threads ) {
79
+ const thread = {
99
80
  ...item,
100
81
  reply: [],
101
- blockClientId: item.parent === 0 ? itemBlock : null,
82
+ blockClientId:
83
+ item.parent === 0
84
+ ? clientIdByNoteId.get( String( item.id ) ) ?? null
85
+ : null,
102
86
  };
103
- } );
104
-
105
- // Iterate over the data to build the tree structure.
106
- threads.forEach( ( item ) => {
87
+ threadsById.set( item.id, thread );
107
88
  if ( item.parent === 0 ) {
108
- // If parent is 0, it's a root item, push it to the result array.
109
- result.push( compare[ item.id ] );
110
- } else if ( compare[ item.parent ] ) {
111
- // Otherwise, find its parent and push it to the parent's `reply` array.
112
- compare[ item.parent ].reply.push( compare[ item.id ] );
89
+ rootThreads.push( thread );
90
+ }
91
+ }
92
+ for ( const item of threads ) {
93
+ if ( item.parent !== 0 ) {
94
+ threadsById
95
+ .get( item.parent )
96
+ ?.reply.unshift( threadsById.get( item.id ) );
113
97
  }
114
- } );
115
-
116
- if ( 0 === result?.length ) {
117
- return { resultComments: [], unresolvedSortedThreads: [] };
118
98
  }
119
99
 
120
- const updatedResult = result.map( ( item ) => ( {
121
- ...item,
122
- reply: [ ...item.reply ].reverse(),
123
- } ) );
124
-
125
- const threadIdMap = new Map(
126
- updatedResult.map( ( thread ) => [ String( thread.id ), thread ] )
127
- );
128
-
129
- // Prepare sets to determine which threads are linked to existing blocks.
130
- const mappedIds = new Set(
131
- Object.values( blocksWithComments ).map( ( id ) => String( id ) )
132
- );
133
-
134
- // Get comments by block order, first unresolved, then resolved.
135
- const unresolvedSortedComments = Object.values( blocksWithComments )
136
- .map( ( commentId ) => threadIdMap.get( String( commentId ) ) )
137
- .filter(
138
- ( thread ) => thread !== undefined && thread.status === 'hold'
139
- );
100
+ if ( rootThreads.length === 0 ) {
101
+ return { notes: [], unresolvedNotes: [] };
102
+ }
140
103
 
141
- const resolvedSortedComments = Object.values( blocksWithComments )
142
- .map( ( commentId ) => threadIdMap.get( String( commentId ) ) )
143
- .filter(
144
- ( thread ) =>
145
- thread !== undefined && thread.status === 'approved'
146
- );
104
+ // Single partition over notes-in-block-order.
105
+ const unresolved = [];
106
+ const resolved = [];
107
+ for ( const noteId of Object.values( blocksWithNotes ) ) {
108
+ const thread =
109
+ threadsById.get( Number( noteId ) ) ??
110
+ threadsById.get( noteId );
111
+ if ( ! thread ) {
112
+ continue;
113
+ }
114
+ if ( thread.status === 'hold' ) {
115
+ unresolved.push( thread );
116
+ } else if ( thread.status === 'approved' ) {
117
+ resolved.push( thread );
118
+ }
119
+ }
147
120
 
148
- // Append orphaned notes (whose related block was deleted or missing).
149
- const orphanedComments = updatedResult.filter(
150
- ( thread ) => ! mappedIds.has( String( thread.id ) )
121
+ // Orphans: root threads without a linked block. They only need to come last.
122
+ const orphans = rootThreads.filter(
123
+ ( thread ) => ! thread.blockClientId
151
124
  );
152
125
 
153
- const allSortedComments = [
154
- ...unresolvedSortedComments,
155
- ...resolvedSortedComments,
156
- ...orphanedComments,
157
- ];
158
-
159
126
  return {
160
- resultComments: allSortedComments,
161
- unresolvedSortedThreads: unresolvedSortedComments,
127
+ notes: [ ...unresolved, ...resolved, ...orphans ],
128
+ unresolvedNotes: unresolved,
162
129
  };
163
130
  }, [ clientIds, threads, getBlockAttributes ] );
164
131
 
165
132
  return {
166
- resultComments,
167
- unresolvedSortedThreads,
168
- reflowComments,
169
- commentLastUpdated,
133
+ notes,
134
+ unresolvedNotes,
170
135
  };
171
136
  }
172
137
 
173
- export function useBlockCommentsActions( reflowComments = noop ) {
138
+ export function useNoteActions() {
174
139
  const { createNotice } = useDispatch( noticesStore );
175
140
  const { saveEntityRecord, deleteEntityRecord } = useDispatch( coreStore );
176
141
  const { getCurrentPostId } = useSelect( editorStore );
@@ -204,7 +169,7 @@ export function useBlockCommentsActions( reflowComments = noop ) {
204
169
  { throwOnError: true }
205
170
  );
206
171
 
207
- // If it's a main comment, update the block attributes with the comment id.
172
+ // If it's a top-level note, update the block attributes with the note id.
208
173
  if ( ! parent && savedRecord?.id ) {
209
174
  const clientId = getSelectedBlockClientId();
210
175
  const metadata = getBlockAttributes( clientId )?.metadata;
@@ -224,10 +189,8 @@ export function useBlockCommentsActions( reflowComments = noop ) {
224
189
  isDismissible: true,
225
190
  }
226
191
  );
227
- setTimeout( reflowComments, 300 );
228
192
  return savedRecord;
229
193
  } catch ( error ) {
230
- reflowComments();
231
194
  onError( error );
232
195
  }
233
196
  };
@@ -256,8 +219,8 @@ export function useBlockCommentsActions( reflowComments = noop ) {
256
219
  }
257
220
  );
258
221
 
259
- // Then create a new comment with the metadata.
260
- const newCommentData = {
222
+ // Then create a new note with the metadata.
223
+ const newNoteData = {
261
224
  post: getCurrentPostId(),
262
225
  content: content || '', // Empty content for resolve, content for reopen.
263
226
  type: 'note',
@@ -269,7 +232,7 @@ export function useBlockCommentsActions( reflowComments = noop ) {
269
232
  },
270
233
  };
271
234
 
272
- await saveEntityRecord( 'root', 'comment', newCommentData, {
235
+ await saveEntityRecord( 'root', 'comment', newNoteData, {
273
236
  throwOnError: true,
274
237
  } );
275
238
  } else {
@@ -292,26 +255,18 @@ export function useBlockCommentsActions( reflowComments = noop ) {
292
255
  isDismissible: true,
293
256
  }
294
257
  );
295
- reflowComments();
296
258
  } catch ( error ) {
297
- reflowComments();
298
259
  onError( error );
299
260
  }
300
261
  };
301
262
 
302
- const onDelete = async ( comment ) => {
263
+ const onDelete = async ( note ) => {
303
264
  try {
304
- await deleteEntityRecord(
305
- 'root',
306
- 'comment',
307
- comment.id,
308
- undefined,
309
- {
310
- throwOnError: true,
311
- }
312
- );
265
+ await deleteEntityRecord( 'root', 'comment', note.id, undefined, {
266
+ throwOnError: true,
267
+ } );
313
268
 
314
- if ( ! comment.parent ) {
269
+ if ( ! note.parent ) {
315
270
  const clientId = getSelectedBlockClientId();
316
271
  const metadata = getBlockAttributes( clientId )?.metadata;
317
272
  updateBlockAttributes( clientId, {
@@ -326,9 +281,7 @@ export function useBlockCommentsActions( reflowComments = noop ) {
326
281
  type: 'snackbar',
327
282
  isDismissible: true,
328
283
  } );
329
- reflowComments();
330
284
  } catch ( error ) {
331
- reflowComments();
332
285
  onError( error );
333
286
  }
334
287
  };
@@ -366,68 +319,67 @@ export function useEnableFloatingSidebar( enabled = false ) {
366
319
  }, [ enabled, registry ] );
367
320
  }
368
321
 
369
- export function useFloatingThread( {
370
- thread,
371
- calculatedOffset,
372
- setHeights,
373
- selectedThread,
374
- setBlockRef,
375
- commentLastUpdated,
322
+ export function useFloatingBoard( {
323
+ threads,
324
+ selectedNoteId,
325
+ isFloating,
326
+ sidebarRef,
376
327
  } ) {
377
- const blockElement = useBlockElement( thread.blockClientId );
378
- const updateHeight = useCallback(
379
- ( id, newHeight ) => {
380
- setHeights( ( prev ) => {
381
- if ( prev[ id ] !== newHeight ) {
382
- return { ...prev, [ id ]: newHeight };
383
- }
384
- return prev;
385
- } );
386
- },
387
- [ setHeights ]
388
- );
328
+ const [ notePositions, setNotePositions ] = useState( {} );
329
+ const [ store ] = useState( createBoardStore );
389
330
 
390
- // Use floating-ui to track the block element's position with the calculated offset.
391
- const { y, refs } = useFloating( {
392
- placement: 'right-start',
393
- middleware: [
394
- offsetMiddleware( {
395
- crossAxis: calculatedOffset || -16,
396
- } ),
397
- ],
398
- whileElementsMounted: autoUpdate,
399
- } );
400
-
401
- // Store the block reference for each thread.
402
- useEffect( () => {
403
- if ( blockElement ) {
404
- refs.setReference( blockElement );
405
- }
406
- }, [ blockElement, refs, commentLastUpdated ] );
331
+ const heights = useSyncExternalStore( store.subscribe, store.getSnapshot );
407
332
 
408
- // Track thread heights.
333
+ // Notes are positioned in canvas content-space; CSS inherits
334
+ // `--canvas-scroll` to translate each thread in sync with the canvas.
409
335
  useEffect( () => {
410
- if ( refs.floating?.current ) {
411
- setBlockRef( thread.id, blockElement );
336
+ if ( ! isFloating || ! sidebarRef?.current ) {
337
+ return;
412
338
  }
413
- }, [ blockElement, thread.id, refs.floating, setBlockRef ] );
414
339
 
415
- // When the selected thread changes, update heights, triggering offset recalculation.
416
- useEffect( () => {
417
- if ( refs.floating?.current ) {
418
- const newHeight = refs.floating.current.scrollHeight;
419
- updateHeight( thread.id, newHeight );
420
- }
421
- }, [
422
- thread.id,
423
- updateHeight,
424
- refs.floating,
425
- selectedThread,
426
- commentLastUpdated,
427
- ] );
340
+ const panel = sidebarRef.current;
341
+ const blockEl = store.getFirstBlockElement();
342
+ // Climb to the block-list root so nested scroll containers
343
+ // (e.g. a Group with overflow:auto) don't shadow the canvas.
344
+ const rootEl = blockEl?.closest( '.is-root-container' ) ?? blockEl;
345
+ const canvas = rootEl ? getScrollContainer( rootEl ) : null;
346
+
347
+ const applyScroll = () => {
348
+ panel.style.setProperty(
349
+ '--canvas-scroll',
350
+ `${ -( canvas?.scrollTop ?? 0 ) }px`
351
+ );
352
+ };
353
+
354
+ // Recalc is deferred to a rAF; back-to-back updates collapse into one paint.
355
+ const rafId = window.requestAnimationFrame( () => {
356
+ const result = calculateNotePositions( {
357
+ threads,
358
+ selectedNoteId,
359
+ blockRects: store.getBlockRects(),
360
+ heights,
361
+ scrollTop: canvas?.scrollTop ?? 0,
362
+ } );
363
+
364
+ setNotePositions( result.positions );
365
+ applyScroll();
366
+ } );
367
+
368
+ // Root scrolling elements (documentElement/body) don't fire scroll
369
+ // on themselves; capture on the window catches them in either canvas.
370
+ const view = canvas?.ownerDocument?.defaultView;
371
+ const listenerOptions = { passive: true, capture: true };
372
+ view?.addEventListener( 'scroll', applyScroll, listenerOptions );
373
+
374
+ return () => {
375
+ window.cancelAnimationFrame( rafId );
376
+ view?.removeEventListener( 'scroll', applyScroll, listenerOptions );
377
+ };
378
+ }, [ sidebarRef, heights, isFloating, selectedNoteId, store, threads ] );
428
379
 
429
380
  return {
430
- y,
431
- refs,
381
+ notePositions,
382
+ registerThread: store.registerThread,
383
+ unregisterThread: store.unregisterThread,
432
384
  };
433
385
  }
@@ -3,7 +3,6 @@
3
3
  */
4
4
  import { __ } from '@wordpress/i18n';
5
5
  import { useSelect, useDispatch } from '@wordpress/data';
6
- import { __experimentalVStack as VStack } from '@wordpress/components';
7
6
  import { useRef } from '@wordpress/element';
8
7
  import { useViewportMatch } from '@wordpress/compose';
9
8
  import { useShortcut } from '@wordpress/keyboard-shortcuts';
@@ -21,63 +20,15 @@ import {
21
20
  FLOATING_NOTES_SIDEBAR,
22
21
  SIDEBARS,
23
22
  } from './constants';
24
- import { Comments } from './comments';
23
+ import { Notes } from './notes';
25
24
  import { store as editorStore } from '../../store';
26
- import AddCommentMenuItem from './comment-menu-item';
27
- import CommentAvatarIndicator from './comment-indicator-toolbar';
25
+ import { AddNoteMenuItem } from './add-note-menu-item';
26
+ import { NoteAvatarIndicator } from './note-indicator-toolbar';
28
27
  import { useGlobalStylesContext } from '../global-styles-provider';
29
- import {
30
- useBlockComments,
31
- useBlockCommentsActions,
32
- useEnableFloatingSidebar,
33
- } from './hooks';
28
+ import { useNoteThreads, useEnableFloatingSidebar } from './hooks';
34
29
  import PostTypeSupportCheck from '../post-type-support-check';
35
30
  import { unlock } from '../../lock-unlock';
36
31
 
37
- function NotesSidebarContent( {
38
- styles,
39
- comments,
40
- commentSidebarRef,
41
- reflowComments,
42
- commentLastUpdated,
43
- isFloating = false,
44
- } ) {
45
- const { onCreate, onEdit, onDelete } =
46
- useBlockCommentsActions( reflowComments );
47
-
48
- return (
49
- <VStack
50
- className="editor-collab-sidebar-panel"
51
- style={ styles }
52
- role="tree"
53
- spacing="3"
54
- justify="flex-start"
55
- ref={ ( node ) => {
56
- // Sometimes previous sidebar unmounts after the new one mounts.
57
- // This ensures we always have the latest reference.
58
- if ( node ) {
59
- // eslint-disable-next-line react-compiler/react-compiler
60
- commentSidebarRef.current = node;
61
- }
62
- } }
63
- aria-label={
64
- isFloating ? __( 'Unresolved notes' ) : __( 'All notes' )
65
- }
66
- >
67
- <Comments
68
- threads={ comments }
69
- onEditComment={ onEdit }
70
- onAddReply={ onCreate }
71
- onCommentDelete={ onDelete }
72
- commentSidebarRef={ commentSidebarRef }
73
- reflowComments={ reflowComments }
74
- commentLastUpdated={ commentLastUpdated }
75
- isFloating={ isFloating }
76
- />
77
- </VStack>
78
- );
79
- }
80
-
81
32
  function NotesSidebar( { postId } ) {
82
33
  const { getActiveComplementaryArea } = useSelect( interfaceStore );
83
34
  const { enableComplementaryArea } = useDispatch( interfaceStore );
@@ -86,28 +37,22 @@ function NotesSidebar( { postId } ) {
86
37
  );
87
38
  const { selectNote } = unlock( useDispatch( editorStore ) );
88
39
  const isLargeViewport = useViewportMatch( 'medium' );
89
- const commentSidebarRef = useRef( null );
40
+ const sidebarRef = useRef( null );
90
41
 
91
- const { clientId, blockCommentId, isClassicBlock } = useSelect(
92
- ( select ) => {
93
- const {
94
- getBlockAttributes,
95
- getSelectedBlockClientId,
96
- getBlockName,
97
- } = select( blockEditorStore );
98
- const _clientId = getSelectedBlockClientId();
99
- return {
100
- clientId: _clientId,
101
- blockCommentId: _clientId
102
- ? getBlockAttributes( _clientId )?.metadata?.noteId
103
- : null,
104
- isClassicBlock: _clientId
105
- ? getBlockName( _clientId ) === 'core/freeform'
106
- : false,
107
- };
108
- },
109
- []
110
- );
42
+ const { clientId, noteId, isClassicBlock } = useSelect( ( select ) => {
43
+ const { getBlockAttributes, getSelectedBlockClientId, getBlockName } =
44
+ select( blockEditorStore );
45
+ const _clientId = getSelectedBlockClientId();
46
+ return {
47
+ clientId: _clientId,
48
+ noteId: _clientId
49
+ ? getBlockAttributes( _clientId )?.metadata?.noteId
50
+ : null,
51
+ isClassicBlock: _clientId
52
+ ? getBlockName( _clientId ) === 'core/freeform'
53
+ : false,
54
+ };
55
+ }, [] );
111
56
  const { isDistractionFree } = useSelect( ( select ) => {
112
57
  const { get } = select( preferencesStore );
113
58
  return {
@@ -119,21 +64,15 @@ function NotesSidebar( { postId } ) {
119
64
  []
120
65
  );
121
66
 
122
- const {
123
- resultComments,
124
- unresolvedSortedThreads,
125
- reflowComments,
126
- commentLastUpdated,
127
- } = useBlockComments( postId );
67
+ const { notes, unresolvedNotes } = useNoteThreads( postId );
128
68
 
129
69
  // Only enable the floating sidebar for large viewports.
130
70
  const showFloatingSidebar = isLargeViewport;
131
71
  // Fallback to "All notes" sidebar on smaller viewports.
132
- const showAllNotesSidebar =
133
- resultComments.length > 0 || ! showFloatingSidebar;
72
+ const showAllNotesSidebar = notes.length > 0 || ! showFloatingSidebar;
134
73
  useEnableFloatingSidebar(
135
74
  showFloatingSidebar &&
136
- ( unresolvedSortedThreads.length > 0 || selectedNote !== undefined )
75
+ ( unresolvedNotes.length > 0 || selectedNote !== undefined )
137
76
  );
138
77
 
139
78
  useShortcut(
@@ -146,10 +85,7 @@ function NotesSidebar( { postId } ) {
146
85
  // When multiple notes per block are supported. Remove note ID check.
147
86
  // See: https://github.com/WordPress/gutenberg/pull/75147.
148
87
  isDisabled:
149
- isDistractionFree ||
150
- isClassicBlock ||
151
- ! clientId ||
152
- !! blockCommentId,
88
+ isDistractionFree || isClassicBlock || ! clientId || !! noteId,
153
89
  }
154
90
  );
155
91
 
@@ -158,8 +94,8 @@ function NotesSidebar( { postId } ) {
158
94
  const backgroundColor = GlobalStyles?.styles?.color?.background;
159
95
 
160
96
  // Find the current thread for the selected block.
161
- const currentThread = blockCommentId
162
- ? resultComments.find( ( thread ) => thread.id === blockCommentId )
97
+ const currentThread = noteId
98
+ ? notes.find( ( thread ) => thread.id === noteId )
163
99
  : null;
164
100
 
165
101
  async function openTheSidebar( selectedClientId ) {
@@ -169,7 +105,7 @@ function NotesSidebar( { postId } ) {
169
105
  selectedClientId && selectedClientId !== clientId
170
106
  ? selectedClientId
171
107
  : clientId;
172
- const targetNote = resultComments.find(
108
+ const targetNote = notes.find(
173
109
  ( note ) => note.blockClientId === targetClientId
174
110
  );
175
111
 
@@ -196,18 +132,18 @@ function NotesSidebar( { postId } ) {
196
132
  }
197
133
 
198
134
  if ( isDistractionFree ) {
199
- return <AddCommentMenuItem isDistractionFree />;
135
+ return <AddNoteMenuItem isDistractionFree />;
200
136
  }
201
137
 
202
138
  return (
203
139
  <>
204
140
  { !! currentThread && (
205
- <CommentAvatarIndicator
206
- thread={ currentThread }
141
+ <NoteAvatarIndicator
142
+ note={ currentThread }
207
143
  onClick={ openTheSidebar }
208
144
  />
209
145
  ) }
210
- <AddCommentMenuItem onClick={ openTheSidebar } />
146
+ <AddNoteMenuItem onClick={ openTheSidebar } />
211
147
  { showAllNotesSidebar && (
212
148
  <PluginSidebar
213
149
  identifier={ ALL_NOTES_SIDEBAR }
@@ -221,10 +157,7 @@ function NotesSidebar( { postId } ) {
221
157
  icon={ commentIcon }
222
158
  closeLabel={ __( 'Close Notes' ) }
223
159
  >
224
- <NotesSidebarContent
225
- comments={ resultComments }
226
- commentSidebarRef={ commentSidebarRef }
227
- />
160
+ <Notes notes={ notes } sidebarRef={ sidebarRef } />
228
161
  </PluginSidebar>
229
162
  ) }
230
163
  { isLargeViewport && (
@@ -236,14 +169,10 @@ function NotesSidebar( { postId } ) {
236
169
  headerClassName="editor-collab-sidebar__header"
237
170
  backgroundColor={ backgroundColor }
238
171
  >
239
- <NotesSidebarContent
240
- comments={ unresolvedSortedThreads }
241
- commentSidebarRef={ commentSidebarRef }
242
- reflowComments={ reflowComments }
243
- commentLastUpdated={ commentLastUpdated }
244
- styles={ {
245
- backgroundColor,
246
- } }
172
+ <Notes
173
+ notes={ unresolvedNotes }
174
+ sidebarRef={ sidebarRef }
175
+ styles={ { backgroundColor } }
247
176
  isFloating
248
177
  />
249
178
  </PluginSidebar>